Zum Hauptinhalt springen

3. IPv6-Header-Kompression

In diesem Abschnitt definieren wir das LOWPAN_IPHC-Codierungsformat zur Komprimierung des IPv6-Headers. Um eine effektive Kompression zu ermöglichen, stützt sich LOWPAN_IPHC auf Informationen, die das gesamte 6LoWPAN betreffen. LOWPAN_IPHC geht davon aus, dass Folgendes der häufigste Fall für die 6LoWPAN-Kommunikation sein wird: Version ist 6; Traffic Class und Flow Label sind beide Null; die Payload Length kann von den unteren Schichten entweder aus dem 6LoWPAN-Fragmentierungsheader oder dem IEEE 802.15.4-Header abgeleitet werden; das Hop Limit wird von der Quelle auf einen bekannten Wert gesetzt; Adressen, die 6LoWPAN-Schnittstellen zugewiesen sind, werden unter Verwendung des link-lokalen Präfixes oder einer kleinen Gruppe von routbaren Präfixen gebildet, die dem gesamten 6LoWPAN zugewiesen sind; Adressen, die 6LoWPAN-Schnittstellen zugewiesen sind, werden mit einer IID gebildet, die direkt von entweder den 64-Bit-erweiterten oder den 16-Bit-kurzen IEEE 802.15.4-Adressen abgeleitet ist.

 +-------------------------------------+----------------------------
| Dispatch + LOWPAN_IPHC (2-3 Oktette)| Inline IPv6-Header-Felder
+-------------------------------------+----------------------------

Abbildung 1: LOWPAN_IPHC-Header

Die LOWPAN_IPHC-Codierung verwendet 13 Bits, von denen 5 aus den rechtesten Bits des Dispatch-Typs entnommen werden. Die Codierung kann um ein weiteres Oktett erweitert werden, um zusätzliche Kontexte zu unterstützen. Alle Informationen aus den unkomprimierten IPv6-Header-Feldern, die inline transportiert werden, folgen der LOWPAN_IPHC-Codierung, wie in Abbildung 1 gezeigt. Im besten Fall kann LOWPAN_IPHC den IPv6-Header auf zwei Oktette (das Dispatch-Oktett und die LOWPAN_IPHC-Codierung) bei link-lokaler Kommunikation komprimieren.

Beim Routing über mehrere IP-Hops kann LOWPAN_IPHC den IPv6-Header auf 7 Oktette komprimieren (1-Oktett-Dispatch, 1-Oktett-LOWPAN_IPHC, 1-Oktett-Hop-Limit, 2-Oktett-Quelladresse und 2-Oktett-Zieladresse). Das Hop Limit kann möglicherweise nicht komprimiert werden, da es bei jedem Hop dekrementiert werden muss und jeden Wert annehmen kann. Zustandsbehaftete Adresskompression muss auf die IPv6-Quell- und Zieladressen angewendet werden, da sie nicht zustandslos mit den Link-Layer-Quell- und Zieladressen auf Zwischen-Hops übereinstimmen.