ENet supports channels for sending packets. A channels has its own sequence number, so for example a reliable-ordered (ENET_PACKET_FLAG_RELIABLE) packet that is lost and needs to be resent on channel 1 won't stop a reliable-ordered packet on channel 2 from being received. (Better described at http://enet.bespin.org/Features.html#Channels)
This feature could be used to seperate parts of the protocol that need to be delivered reliably and in order, but not in sync, eg. chat messages and entities:
A lost chat message packet shouldn't prevent all receiving of entity packets because it can cause hitches in the entity updates and effect the gameplay experience. (Just an example)
ENet supports channels for sending packets. A channels has its own sequence number, so for example a reliable-ordered (
ENET_PACKET_FLAG_RELIABLE) packet that is lost and needs to be resent on channel 1 won't stop a reliable-ordered packet on channel 2 from being received. (Better described at http://enet.bespin.org/Features.html#Channels)This feature could be used to seperate parts of the protocol that need to be delivered reliably and in order, but not in sync, eg. chat messages and entities:
A lost chat message packet shouldn't prevent all receiving of entity packets because it can cause hitches in the entity updates and effect the gameplay experience. (Just an example)