Annexe A. Alternatives pour la livraison de trames dans un réseau maillé (Alternatives for Delivery of Frames in a Mesh)
Avant de déterminer le mécanisme de livraison en réseau maillé finalement adopté (section 11), plusieurs alternatives ont été envisagées. En plus des adresses de couche liaison source et de destination saut par saut, la livraison de paquets dans un réseau maillé LoWPAN nécessite des adresses d'émetteur d'origine et de destination de bout en bout. Celles-ci peuvent être représentées comme des adresses de couche 2 ou de couche 3 (c'est-à-dire IP). Dans ce dernier cas, aucun support d'en-tête supplémentaire n'est nécessaire dans ce document (c'est-à-dire, dans l'en-tête LoWPAN lui-même). L'adresse de destination de couche liaison pointerait vers l'adresse de destination du prochain saut, tandis que l'adresse de destination de l'en-tête IP pointerait vers l'adresse de destination finale (IP) (potentiellement à plusieurs sauts de la source), et de même pour l'adresse source. Par conséquent, lors du transfert de données, les adresses source et de destination à un seul saut changeraient à chaque saut (pointant toujours respectivement vers le nœud effectuant le transfert et le « meilleur » prochain saut de couche liaison), tandis que les adresses IP source et de destination resteraient inchangées.
Notez que si le paquet IP est fragmenté, les fragments individuels peuvent arriver dans n'importe quel ordre à n'importe quel nœud. Si le fragment initial (contenant l'en-tête IP) est retardé pour une raison quelconque, le nœud recevant les fragments suivants manquera des informations nécessaires. Il sera contraint d'attendre jusqu'à la réception de l'en-tête IP (dans le premier fragment) avant de pouvoir transférer davantage les fragments. Cela impose des exigences de mise en mémoire tampon supplémentaires aux nœuds intermédiaires. De plus, une telle spécification ne s'appliquerait qu'à un seul type de charge utile LoWPAN : IPv6. En général, elle devrait être adaptée pour toute autre charge utile, et nécessiterait que cette charge utile fournisse ses propres informations d'adressage de bout en bout.
D'autre part, l'approche finalement suivie (section 11) crée le réseau maillé au niveau de la couche LoWPAN (en dessous de la couche 3). Par conséquent, les adresses de couche liaison de l'émetteur d'origine et de la destination finale sont incluses dans l'en-tête LoWPAN. Cela permet de réaliser la livraison en réseau maillé pour tout protocole ou application au-dessus de la couche d'adaptation LoWPAN (section 5). Pour IPv6, pris en charge dans ce document, un autre avantage de représenter l'émetteur d'origine et la destination finale comme des adresses de couche 2 est que les adresses IPv6 peuvent être compressées selon la compression d'en-tête spécifiée à la section 10. De plus, étant donné que les adresses 802.15.4 (64 bits ou 16 bits) sont plus petites que les adresses IPv6 (128 bits), le nombre d'octets nécessaires pour maintenir les tables de routage est réduit. Un inconvénient est que les applications au-dessus d'IP n'adressent pas les paquets aux adresses de destination de couche liaison, mais aux adresses de destination IP (couche 3). Par conséquent, étant donné une adresse IP, l'adresse de couche liaison correspondante doit être résolue. Ainsi, la spécification du routage en réseau maillé doit clarifier les implications pour la découverte de voisins (Neighbor Discovery), bien que dans certains cas particuliers, il puisse être possible de dériver l'adresse de couche 2 d'un dispositif à partir de son adresse de couche 3 (et vice versa). Une telle spécification complète dépasse le cadre de ce document.
Adresses des auteurs (Authors' Addresses) :
Gabriel Montenegro
Microsoft Corporation
EMail : <[email protected]>
Nandakishore Kushalnagar
Intel Corp
EMail : <[email protected]>
Jonathan W. Hui
Arch Rock Corp
EMail : <[email protected]>
David E. Culler
Arch Rock Corp
EMail : <[email protected]>