IPv 6 Header Compression for Global Addresses Jonathan
IPv 6 Header Compression for Global Addresses Jonathan Hui David Culler draft-hui-6 lowpan-hc 1 g-00 – “Stateless IPv 6 Header Compression for Globally Routable Packets in 6 Lo. WPAN Subnetworks” 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 1
“IPv 6 Communication over IEEE 802. 15. 4” … • 6 Lo. WPAN supports IP communication using global (i. e. , routable) IPv 6 addresses – But it never compresses them! • HC 1 compression only applies to the special link local prefix. – Shared by all nodes in the PAN • So if you use IP over 802. 15. 4 for what IP is typically used for (internetworking) you lose much of the virtue of 6 Lo. WPAN. => Complement HC 1 with HC 1 g stateless compression for a shared global prefix 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 2
Motivation • Why global addresses? – End-to-end communication in networks with heterogeneous links • without a stateful (possibly application specific) translation gateway • data collection point may be multiple IP hops away – End-to-end communication across different PANs – IP connects different subnetworks • Zig. Bee does not • LOWPAN_HC 1 supports arbitrary addresses, but… – Only allows compression of the link-local (fe 80: : /64) prefix – Uncompressed addresses consume 32 bytes • 1/4 th the 802. 15. 4 MTU before link and 6 Lo. WPAN headers! • The Issue is compressing the origin / final IP addresses – Not the number of PAN hops between them 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 3
Why Global Addresses? • Monitoring and Control Applications – Collector OR controller generally not a 802. 15. 4 device – Conventional device on conventional link 802. 15. 4 802. 3 Collector/Controller 07/24/2007 hartcomm. org 69 th IETF Meeting - 6 Lo. WPAN WG 4
Why Global Addresses? • Monitoring and Control Applications – Collector/controller often connected using other links • Link-local requires a stateful translation gateway • What about multiple 802. 15. 4 egress points? – Good for redundancy – But requires a translation gateway at each – How is state managed across them? 802. 3 802. 15. 4 Translation Gateway 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG Collector/Controller 5
Why Global Addresses? • Route directly to the data collector • Possibly through different egress points 802. 15. 4 802. 3 Collector/Controller 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 6
Why Global Addresses? • Multiple PANs – May be different in PAN ID, channel, MAC, networkwide keys, etc. 802. 15. 4 07/24/2007 802. 15. 4 69 th IETF Meeting - 6 Lo. WPAN WG 802. 15. 4 7
Why Global Addresses? 802. 15. 4 • Assigned IP addresses within a PAN – IP addresses are useful for naming – If assigned IP address is used to name source or destination, no HC 1 compression • Assigned prefix or assigned interface identifier 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 8
HC 1 g - In a Nutshell • Shared context of the PAN includes its prefix • Define compression for prefix other than link-local – PAN has a compressible global prefix (CGP) • Compression of Interface IDs derived from short addrs • Similar to LOWPAN_HC 1 encoding – – Compresses to 2 octets in best case Allows arbitrary IPv 6 addresses if needed Same encoding octet Uses lower-layer information when possible • Support for compressed well-known multicast addresses – Neighbor discovery, DHCPv 6 – Uses 6 Lo. WPAN short address encoding 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 9
HC 1 g Compliments HC 1 • HC 1 and HC 1 g identified by different dispatch values • HC 1 is efficient for link-local communication • HC 1 g is efficient for off-link communication – Or on-link using non-default prefix Upper Layer Protocols Link-Local Communication LOWPAN_HC 1 Global Communication LOWPAN_HC 1 g 6 Lo. WPAN Mesh/Frag 802. 15. 4 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 10
LOWPAN_HC 1 g Addresses • PAN has a compressible global prefix (CGP) associated with it – Prefix is elided whenever it matches the CGP • Four HC 1 g address forms: – Full 128 bits for arbitrary IPv 6 addresses Arbitrary Prefix Arbitrary IID – 64 bits: prefix derived from CGP, IID carried inline Elided Arbitrary IID – 16 bits: prefix derived from CGP, 6 Lo. WPAN encoded short inline Elided SA – 0 bits: prefix derived from CGP, IID derived from lower layers (e. g. 802. 15. 4 src/dest or 6 Lo. WPAN orig/final) Elided 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 11
HC 1 g Encoding • • Source Compression Destination Compression Version, Traffic, Flow Next Header – in-line, UCP, ICMP, TCP 0 1 2 3 4 5 6 7 SC DC V NH L 4 07/24/2007 • L 4 Compression – HC 2 follows 69 th IETF Meeting - 6 Lo. WPAN WG 12
Lo. WPAN HC 1 g 16 -bit Addr • 16 -bit short address follows 6 Lo. WPAN encoding • Compression of IIDs derived from 802. 15. 4 short address – 802. 15. 4 short address when first bit is 0 – Upper 48 -bits of IID is assumed to be zero – U/L bit is also zero, indicating local scope • Well-known multicast addresses – 16 bits starts with ’ 101’ – Allocates another range in 6 Lo. WPAN short address encoding • Neither are supported in LOWPAN_HC 1 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 13
Multicast Address Compression • For commonly-used, well-known multicast addresses • Use 6 Lo. WPAN short address encoding – Prefix (8 -bits): Compressed to 3 -bit range – Flags (4 -bits): Assumed to be zero • permanent, not derived from prefix, doesn’t embed RP – Scope (4 -bits): Carried in-line – Group ID (112 -bits): Mapped to 9 -bits • Only all-nodes and all-routers currently defined • Can be used in LOWPAN_HC 1 g or Mesh Addressing 128 bits FF Flags Scope 0 1 Group ID 2 1 07/24/2007 3 4 5 Scope 6 7 8 9 1 0 1 2 3 4 5 Group ID 69 th IETF Meeting - 6 Lo. WPAN WG 14
Other Differences • Changes made based on lessons learned from LOWPAN_HC 1 implementations • Possible lack of octet alignment – – Can consume several hundred bytes of code Octet alignment broken in uncommon cases Saves at most one octet in best case (when used with HC_UDP) HC 1 g include 4 -bit version field with Traffic Class and Flow Label • HC_UDP not possible when using IP extension headers – HC 2 bit changed to specify layer 4 compression • Only UDP is currently valid, ICMP/TCP not yet defined 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 15
HC 1 g summary • Compression for prefixes other than link-local – PAN has a compressible global prefix (CGP) • Compression of Interface IDs derived from short addrs • Similar to LOWPAN_HC 1 encoding, but for CGP – – Compresses to 2 octets in best case Allows arbitrary IPv 6 addresses if needed Same encoding octet, same HC 2 Uses lower-layer information when possible • Support for compressed well-known multicast addresses – Neighbor discovery, DHCPv 6 – Uses 6 Lo. WPAN short address encoding 07/24/2007 69 th IETF Meeting - 6 Lo. WPAN WG 16
- Slides: 16