[Docs] [txt|pdf] [Tracker] [Email] [Diff1] [Diff2] [Nits]

Versions: 00 01

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]


Html markup produced by rfcmarkup 1.129d, available from https://tools.ietf.org/tools/rfcmarkup/