One document matched: draft-martinbeckman-ietf-ipv6-amp-ipv6hcamp-01.txt

Differences from draft-martinbeckman-ietf-ipv6-amp-ipv6hcamp-00.txt


Network Working Group                                             M. Beckman
Internet Draft: 01                                U.S. Department of Defense
Category: Standards Track                                    6 November 2006



IPv6 Header Compression via Addressing Mitigation Protocol (IPv6 AMP)
         draft-martinbeckman-ietf-ipv6-amp-ipv6hcamp-01.txt


Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsolete by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on March 18, 2007.

Copyright Notice

Copyright (C) The IETF Trust (2007).


Table of Contents

  1.  Introduction and Abstract   . . . . . . . . . . . . . . . . . . 2
  2.  Definitions   . . . . . . . . . . . . . . . . . . . . . . . . . 2
  3.  Compression Mapping Methodology . . . . . . . . . . . . . . . . 2
  4.  Flow Label Map Table Construct, Use, and Management . . . . . . 5
  5.  Intellectual Property Statement  . . . . . . . . . . .. . . . . 7
  6.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 7
  7.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 7
  8.  Author's Address  . . . . . . . . . . . . . . . . . . . . . . . 7





Beckman                       Standards Track                     [Page 1]

Internet Draft: 01  IPv6 Header Compression AM Protocol (IPv6 AMP) November 2006

1.  Introduction and Abstract

This document outlines a methodology for IPv6 Header Compression via mapping 
the source and destination addresses into a flow label value per address 
pair sessions with a specific traffic class field value to identify the 
packet as “address-less” compressed header. The resultant headers, sans 
addresses shrink from 320 bits to 64 bits. This mapping is locally specific 
to the router port and the connecting hosts/router ports. Specifically 
written for use on low bandwidth links (less than T1 or 1.544Mbps), IPv6 
AMP’s applicability goes to integration of cellular/WiFi appliances and will 
be critical for tactical uses for military and first responder applications.

Comments are solicited and should be addressed to martin.beckman@disa.mil

2.  Definitions

Home Router (HR) – The router connected to the enterprise network that acts 
as the default gateway router for a set of hosts or sub-routers connecting 
via low bandwidth links. The home router controls the assignment of flow 
label value for the sessions to the Remote Routers and Remote Hosts 
connecting to it.

Local Router (RR) – A router connecting to a home router via a low bandwidth 
link.

Local Host – RH) - A host connecting to a home router via a low bandwidth 
link.

Flow Value Map Table – The table storing the mapping information that 
relates the address pairs to a specific flow label and router port.

3. Methodology of Mapping Addresses to Flow Label and Session Establishment

3.a. Host Connection to the Network: At the outset, a host joins the network 
via Autoconfiguration or DHCP for IPv6. At the time the host is assigned a 
local flow value of 00001 through 7FFFD (1-524,285). This is used for 
host-to-host header compression within the network as bounded by the 
router’s /64 assignment. Note: The /64 network mask must be used. As will be 
seen, the flow value for host-to-host local sessions will be a value equal 
to the sum of the two local host values.

The initialization for compressed session is accomplished in two steps. 
First the Home Router HR to the Local Host/Local Router sends a packet with 
a traffic class bits setting of 0111 0011 with the local host’s label 
setting of 1 through 524,285 in the flow label field along with the link 
local Address on the local host/router. The local host/router caches this 
value as it’s local flow label value and sends an acknowledgement with a 
traffic class bit setting of 0111 0100 with the same local value in the flow 
label. The Home Router stores this value in the Flow Value Map Table. The 
Home Router has a local value of all zeroes in the flow label field.



Beckman                       Standards Track                     [Page 2]

Internet Draft: 01  IPv6 Header Compression AM Protocol (IPv6 AMP) November 2006

3.b. Local Host to Remote Host Session: When a local hosts requires a 
session that requires routing by the home router, the steps are as follows:

The initial packet is sent to the host destination with full header and the 
following settings within the traffic class and flow label fields:

Traffic Class: 0111 0001 (Binary)
Flow Label: 1111 1111 1111 1111 1111 (Hex: FFFFF)

The Local Host sends the packet as a normally routed packet, and sets the 
Destination and Source Addresses with an available flow label value of 4096 
to 1048574 (Hex: 1000 to FFFFE) in the Local Flow Value Map Table and marks 
the entry “requested”.

The Home Router forwards the packet as a normally routed packet, and sets 
the Destination and Source Addresses with an available flow label value of 
4096 to 1048574 (Hex: 1000 to FFFFE) in the Flow Value Map Table and marks 
the entry “requested”. Once the remote host responds, the packet is received 
by the home router for forwarding to the local host. The home router sends a 
complete header with the following settings within the traffic class and 
flow label fields:

Traffic Class: 0111 0010 (Binary)
Flow Label:  All “0” through 1111 1111 1111 1111 1110 (Hex: 01000 through 
FFFFE)

The local host stores this flow value with the Destination Address. Both the 
local host and home router mark their entries as active. The local host 
continues to send; however, this time the Destination and Source Addresses 
are not includes and the following settings within the traffic class and 
flow label fields are used:

Traffic Class: 0111 0000 (Binary)
Flow Label:  Assigned Flow Label Value (Hex: 01000 through FFFFE)

When the Home Router receives this “address-less” packet it reads the 
Traffic Class and Flow Label Values first and “maps” the destination and 
source addresses from the map table into the header and sets the Traffic 
Class and Flow Label to all zeros. This cycle is repeated when the remote 
host sends a datagram with a full header to the router. The router 
recognizes that the compression is turned on at that router port and 
therefore looks for an entry in the map table. Once found, the addresses are 
stripped and sends the packet without addresses and the following settings 
within the traffic class and flow label fields are used:

Traffic Class: 0111 0000 (Binary)
Flow Label:  Assigned Flow Label Value (Hex: 01000 through FFFFE)






Beckman                       Standards Track                     [Page 3]

Internet Draft: 01  IPv6 Header Compression AM Protocol (IPv6 AMP) November 2006

3.c. Remote Host to Local Host Session: The initial packet is sent to the 
local host from the home router with full header and the following settings 
within the traffic class and flow label fields:

Traffic Class: 0111 0001 (Binary)
Flow Label:  All “0” through 1111 1111 1111 1111 1110 (Hex: 01000 through 
FFFFE)

The Home Router assigns the flow label value and sends the packet as a 
normally routed packet to the local host, and sets the Destination and 
Source Addresses with an available flow label value in the Local Flow Value 
Map Table and marks the entry “active”.

The local host stores this flow value with the Destination Address. Both the 
local host and home router mark their entries as active. The local host 
continues to send; however, this time the Destination and Source Addresses 
are not includes and the following settings within the traffic class and 
flow label fields are used:

Traffic Class: 0111 0000 (Binary)
Flow Label:  Assigned Flow Label Value (Hex: 01000 through FFFFE)

When the Home Router receives this “address-less” packet it reads the 
Traffic Class and Flow Label Values first and “maps” the destination and 
source addresses from the map table into the header and sets the Traffic 
Class and Flow Label to all zeros. This cycle is repeated throughout the 
session. The router recognizes that the compression is “turned on” at that 
router port and therefore looks for an entry in the map table. Once found, 
the addresses are stripped and sends the packet without addresses and the 
following settings within the traffic class and flow label fields are used:

Traffic Class: 0111 0000 (Binary)
Flow Label:  Assigned Flow Label Value (Hex: 01000 through FFFFE)


3.d. Local Router(s) to Home Router Session: A local router is handled the 
same as a local host connecting to a home router. In this instance, local 
hosts connecting to the local router view and act as if that router is their 
“home router” at that connecting port. There are two methods for 
coordinating flow labels between the “root” home router and the local home 
routers acting and home routers for hosts: 1- Free Running and 2- Allocated.

3.d.i. Free Running – In this case each compressed port has it’s own Flow 
Value Map Table. This is the easiest to establish; however, it is the most 
processor intensive.

3.d.ii. Allocated – Static Ranges are setup within each local router from 
complete range available to the home router. This allows for better 
processing since ranges coming into the area will have the flow label set 
only at the “root” home router and the flow label allows for expedited 
routing across the local router acting as a home router to a set of hosts.


Beckman                       Standards Track                     [Page 4]

Internet Draft: 01  IPv6 Header Compression AM Protocol (IPv6 AMP) November 2006

3.e. Local Host to Local Host Session: As IPv6 progresses in use, the need 
for host-to-host communications within a /64 network will increase for voice 
and data within the military and first responder areas of operation. 
Providing for local header compression is essential. The following are the 
steps involved in stetting up local host-to-host compressed sessions:

3.e.i. The initiating local host sends the first packet with a full header 
to the destination host within the same network boundary (/64) with the 
following settings within the traffic class and flow label fields:

Traffic Class: 0111 0011 (Binary) Local to Local Request
Flow Label:  The local host value assigned by the home router (1-524,285)

The initiating host adds the destination address to its Flow Value Map Table 
and marks the session as requested.

The Destination Host receives the packet with the full header and sends the 
next reply packet with the following settings within the traffic class and 
flow label fields:

Traffic Class: 0111 0100 (Binary) Local to Local Acknowledgement
Flow Label:  The local host value assigned by the home router (3- 1,048,570)

The Destination Host adds the values of the two local host flow values and 
uses the resultant as the Flow Value for the session. This method allows for 
uniqueness of value within a /64 network with up to 524,285 hosts. The 
Destination host then adds the initiating host address and the flow label 
value to its Flow Value Map Table and marks it as active.

The initiating host, upon receipt of the acknowledgement add the flow label 
value to its Flow Value Map Table to the host address and marks the entry as 
active.

The remaining transmission between the two hosts will use the following 
settings within the traffic class and flow label fields:

Traffic Class: 0111 0101 (Binary) Local to Local Traffic
Flow Label:  The local host values as added by the destination host (3- 
1,048,570)

4. Flow Label Map Table Construct, Use, and Management – As session start, 
so they also end.

4.a. The construct of the Flow Label Map Table has the following requisite 
information fields:

Type – Local or Remote	This allows for the same flow label to be used for 
either local host to host sessions or for local to remote host sessions. 
This field is required on hosts, but optional on the home router.

Flow Label Value – As assigned by the Home Router for remote sessions and by 
the Local Destination Host for local host-to-host sessions. Required on all 
local hosts/local routers and home routers.

Beckman                       Standards Track                     [Page 5]

Internet Draft: 01  IPv6 Header Compression AM Protocol (IPv6 AMP) November 2006

Local Address – The Global 128-bit address of the local host associated with 
the Flow Value. This field is required on home router, but optional on the 
hosts.

Local Port – The Router Port the Local Host is assigned to. Home Router only 
requirement.

Remote Address - The Global 128-bit address of the remote host associated 
with the Flow Value. Required on all local hosts/local routers and home 
routers.

Remote Port – The Router Port the Remote Host is assigned to. Home Router 
only requirement.

Age – Time in seconds that the entry was used. Required on all local 
hosts/local routers and home routers.

4.b. The Home router or Local Host when prompted by the traffic class field 
will look up the value of the flow label, reset the age filed to zero, 
manipulate the packet as needed, and send the packet.

4.c. The age field is critical since each session is a mapping of a pair of 
addresses. Multiple data sessions may occur within that session; however, at 
some point the traffic will stop. Depending upon the requirement, the 
assigned flow values need to be aged out. Remote Host to Local Hosts should 
age within 30 seconds to 60 minutes of the last use, while local-to-local 
sessions may require purging on a less frequent basis. Finally, if all Flow 
values are in use for remote hosts due to an excessive age requirement, the 
home router will drop the entry with the largest value in the age field if 
the value is great than a variable percentage of the maximum age time.

If no flows meet this criteria, the traffic will continue; however, the 
header will not compress. The requesting host will attempt compression at 
least eight times but not more than sixteen prior to waiting a period (30 
seconds to 15 minutes) prior to attempting compression again.

The Local Router may have sessions statically mapped to permit an entry to 
never age. An example would be for Web Proxy Servers remote to the local 
hosts.













Beckman                       Standards Track                     [Page 6]

Internet Draft: 01  IPv6 Header Compression AM Protocol (IPv6 AMP) November 2006

5.  References

   [RFC2460]   Deering, S. and R. Hinden, "Internet Protocol, Version 6
               (IPv6) Specification", RFC 2460, December 1998.

6.  Acknowledgments

7. Intellectual Property Statement

Copyright (C) The IETF Trust (2007).

This document is subject to the rights, licenses and restrictions contained in 
BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

Individual Property Rights

By submitting this Internet-Draft, each author represents that any applicable 
Patent or other IPR claims of which he or she is aware have been or will be 
disclosed, and any of which he or she becomes aware will be disclosed, in 
accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

8.  Author's Address

   Martin Beckman
   Defense Information Systems Agency
   5275 Leesburg Pike, 7 Skyline Place
   Falls Church, VA 22041
   United States of America
   Phone: 703-861-6865 // 703-882-0225
   Email: martin.beckman@disa.mil


Beckman                       Standards Track                     [Page 7]

PAFTECH AB 2003-20262026-04-23 06:17:30