One document matched: draft-soliman-siit-dstm-00.txt
NGTRANS Working Group Hesham Soliman,
INTERNET Draft Ericsson
Expires: January 2001 Erik Nordmark
Sun Microsystems
July 12
Extensions to SIIT and DSTM for enhanced routing of
inbound packets
<draft-soliman-siit-dstm-00.txt>
Status of this memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.
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 cite them other than as "work in progress".
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/lid-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This document is an individual submission to the IETF. Comments
should be directed to the authors.
Abstract
This document specifies a transition mechanism that combines both
[SIIT] and DSTM mechanisms by adding some extensions to allow fast
routing of inbound packets. This will result in a more decentralised
and flexible tool to allow V6 only hosts to communicate with V4 only
hosts.
The proposed extensions will provide a way that allows SIIT routers
to route packets addressed to a host running a single IPv6 stack with
minimum delay which is suited to real time services.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 1]
INTERNET-DRAFT July 13, 2000
TABLE OF CONTENTS
1. Introduction................................................ 3
2. Terminology................................................. 4
2.1. Addresses........................................... 4
2.2. Requirements........................................ 4
3. Operation overview.......................................... 5
3.1 Communication between AIIH and SIIT routers......... 6
3.2. Support for Mobility................................ 7
3.2.1 Connection intiated by the V4 MN.............. 7
3.2.2 Connection intiated by the V6 MN.............. 8
3.2.3 SIIT extensions for mobility support.......... 9
3.2.4 Considerations for MNs using MIPv6............ 9
4. Message formats for AIIH-SIIT router communication ......... 9
4.1. Discovering an AIIH server ......................... 9
4.2. Address-mapping cache entry ........................ 10
4.3. Address-mapping cache Request....................... 10
4.4. Address-mapping cache Reply......................... 11
4.5. DELTA updates....................................... 13
4.6. Address-mapping cache Acknowledgement............... 14
4.7. Keepalive message................................... 15
5. Acknowledgements............................................ 16
6. Authors addresses........................................... 16
7. References.................................................. 16
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 2]
INTERNET-DRAFT July 13, 2000
1. Introduction
The expected increase in use of real time services like voice and
video over IPv6 places some requirements on packet processing delay
within routers. Furthermore, currently voice services have very
strong requirements on network reliability and the frequency of
network failures. These requirements are expected to maintain the
same standard in future or even higher. For the transition between
IPv4 and IPv6 to be successful, migration tools need to meet the
requirements of real time services for processing speed and
reliability.
The translation mechanism specified in [SIIT] provides a flexible and
decentralised function to allow a host running an IPv6 stack to
communicate with a host running an IPv4 stack. The ability to
decentralise this function can be very powerful from a reliability
point of view. Such distribution allows current connections to
survive despite the failure of one SIIT router.
However, due to the stateless nature of [SIIT], there is no mechanism
defined to allow a router implementing SIIT to route IPv4 packets to
IPv6 hosts configured with an IPv4-translated address in a fast
manner.
In this document an IPv6 host is assumed to acquire an IPv4 address
by using the DSTM technology specified in [DSTM]. This document
introduces a mechanism that allows an SIIT-enabled router to forward
the received IPv4 packets to their final destination (being the IPv6
host) with minimum delay. As mentioned earlier, this is an important
requirement to real time services.
Packets sent from IPv6 node to IPv4-mapped address can be routed to
an SIIT router by it injecting a route for ::ffff:0:0/96. If a site
has multiple SIIT routers they can all inject the above route into
the site's IPv6 routing. This will cause IPv6 nodes, through regular
IPv6 routing, to send packets to the closest SIIT router (Note that
if there are multiple SIIT routers they can also inject longer IPv4-
mapped address prefix routes into the site such as
::ffff:0:0:129.146.0.0/112. The above /96 route is the equivalent of
an IPv4 default route).
Packets from the SIIT router to the IPv6 node need to be encapsulated
(as specified in RFC 2473 - IPv6 in IPv6) since their IPv4-
translatable IPv6 address does not contain enough toplogical
information to route the packets to the link/node. The goal of the
mechanisms in this document is for SIIT routers to be able to do this
encapsulation without any manual configuration but also without a
single SIIT router being a single point of failure. To accomplish
this the SIIT routers need to be able to dynamically determine, for
each IPv6-only node in the site, the mapping between the node's IPv4-
translatable address and the node's 'regular' (global or site-local)
IPv6 address.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 3]
INTERNET-DRAFT July 13, 2000
Some extensions are proposed to an AIIH server and [SIIT] to allow an
SIIT router to request information regarding the mapping of
temporarily allocated IPv4 addresses and a host's IPv6 address.
2. Terminology
This documents uses the terminology defined in [IPv6], [TRANS- MECH]
and [SIIT] with these clarifications:
SIIT router:
A router implementing IPv4->IPv6 translation function
as outlined in [SIIT]
2.1. Addresses
In addition to the forms of addresses defined in [ADDR-ARCH] this
document uses the IPv4-translated addresses defined in [SIIT]. The
address forms are:
IPv4-mapped:
An address of the form 0::ffff:a.b.c.d which refer to a
node that is not IPv6-capable. In addition to its use in
the API this protocol uses IPv4-mapped addresses in IPv6
packets to refer to an IPv4 node.
IPv4-compatible:
An address of the form 0::0:a.b.c.d which refers to
an IPv6/IPv4 node that supports automatic tunneling.
Such addresses are not used in this protocol.
IPv4-translated:
An address of the form 0::ffff:0:a.b.c.d which
Refers to an IPv6-enabled node. Note that the
prefix 0::ffff:0:0:0/96 is chosen to checksum to
zero to avoid any changes to the transport protocol's
pseudo header checksum.
2.2. Requirements
The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT,
SHOULD,SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when they appear
in this document, are to be interpreted as described in [KEYWORDS].
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 4]
INTERNET-DRAFT July 13, 2000
3. Operational overview
3.1 Communication betweem AIIH servers and SIIT routers
The AIIH server described in [DSTM] allows an IPv6 host to acquire an
IPv4 address for the duration of its communication with an IPv4 host.
Outbound packets (originating from the V6 host) containing an IPv4-
translated source and an IPv4-mapped destination address can then be
trnslated by an SIIT router and forwarded according to the
translation rules in [SIIT].
For inbound packets (addressed to a host's temporary IPv4 address) an
SIIT router needs to find out the final destination address (IPv6)
for the packets after the translation is performed. To have this
knowledge, an SIIT router requires a mapping between all the leased
IPv4 addresses and their corresponding hosts' IPv6 addresses. This is
achieved via communication with an AIIH server as illustrated below.
+--------+
| AIIH | Client-Server communication
| Server |
+--------+----+------------+------------+-------------+
| | | | |
| | | | |
| +--------+ +--------+ +--------+ +--------+
| | SIIT | | SIIT | | SIIT | | SIIT |
| | router | | router | | router | | router |
| +--------+ +--------+ +--------+ +--------+
|
| Client-server
+---------------------+--------+
| IPv6 |
| Node |
+--------+
Fig.1 Communication between an SIIT router and AIIH
In this memo, the AIIH server acts as a central database containing
the mapping information between all pooled IPv4 addresses and their
corresponding IPv6 addresses. In addition, the server is expected to
update all registered SIIT routers whenever the information in the
address-mapping cache changes.
The communication between the SIIT routers and AIIH server is
established over TCP connections. The mechanism described below
details the information exchanged between the SIIT router and the
AIIH server. In addition, a Keepalive message is introduced on
application level to ensure the availability of the connection and
avoid confusion between the client and server during connection re-
establishment.
After starting up, an SIIT router should discover an AIIH server
within the same domain. This information can be manually configured
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 5]
INTERNET-DRAFT July 13, 2000
in the router or can be found through other mechanisms. An SIIT
router can then request the Address-mapping cache in an AIIH server.
The address-mapping cache consists of a number of entries, each
related to one of the pooled IPv4 addresses. Hence the number of
entries must be equal to the number of pooled IPv4 addresses in the
AIIH server.
The request for address-mapping cache also acts as a registration
mechanism to inform the AIIH server that an SIIT router exists and
should be informed about further updates to the address-mapping
cache.
The AIIH server SHOULD reply to the SIIT router's request by sending
a message containing all the pooled IPv4 addresses and their
corresponding IPv6 address. Each entry in the address-mapping cache
should contain the leased IPv4 address, the corresponding IPv6
address and the lifetime for which this information is valid.
Furthermore, since the SIIT router will need to advertise the
appropriate IPv4 subnet masks for the pooled IPv4 addresses (within
the V4 domain), the AIIH server MUST send all subnet masks that are
reserved for this transition mechanism. This is done to avoid
advertising of IPv4 host routes from the SIIT router.
The AIIH server SHOULD send the entire cache to the SIIT router. This
includes entries corresponding to unallocated IPv4 addresses. Entries
corresponding to unallocated IPv4 addresses MUST have the IPv6
address field set to the Unspecified address.
The AIIH server MUST record the IP address of the SIIT router
requesting the information. This will be needed for future updates of
the address-mapping cache. It might be more appropriate to use Site-
local addresses for the communication between the SIIT router and the
AIIH server to avoid problems that could arise due to renumbering.
However, this is left to the network administrator's discretion.
Before allocating an IPv4 address to an IPv6 node, the AIIH server
MUST inform all registered SIIT routers by sending an update message
containing the new entry. The AIIH server SHOULD wait for the
Acknowledgement message from all registered SIIT routers before
configuring the information in the IPv6 node. This is to make sure
that inbound packets will be forwarded with minimum delay.
To avoid long delays for Acknowledgements coming from SIIT routers a
timeout period needs to be used by AIIH servers.
When a packet having an IPv6-translated source address and an IPv6-
mapped destination address reaches an SIIT router, the packet will be
translated and forwarded as explained in [SIIT]. Upon reception of an
inbound IPv4 packet, the SIIT router MUST search for the destination
address in its address-mapping cache that was requested from the AIIH
server. If the address is found and it points to a valid IPv6
address, the packet should be translated as specified in [SIIT] and
tunnelled to that IPv6 address.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 6]
INTERNET-DRAFT July 13, 2000
If a valid IPv6 address corresponding to the IPv6-translated address
was not found, an SIIT router MUST request that Address-mapping cache
entry from the AIIH server. An appropriate timeout period should be
applied after which an ICMP error (destination unreachable) should be
sent to the IPv4 sender.
When tunnelling inbound packets, the outer header MUST contain the
SIIT router's address as a source and the IPv6 node's address as a
destination. The inner header should contain the IPv6-mapped address
as a source address (formed from the source address in the original
v4 packet) and the IPv6-translated address in the destination field.
The encapsulation should follow the rules mentioned in RFC 2473.
3.2 Support for mobility
This chapter aims to explain how an IPv4 MN would interact with an
IPv6 MN using an IPv4-translated address. Two different scenarios are
considered:
a) V4 node intiating the connection and
b) V6 node intiating the connection
It should be noted that no impact on the MIPv6 or MIPv4 protocols is
introduced due to the extensions proposed in this memo.
3.2.1 Connection initiated by the V4 MN
A node running an IPv4 stack may start communication with a node
running IPv6. A DNS request is sent to the V6 domain. According to
[DSTM], the local V6 domain can assign a V4 address to the IPv6 host
and forward the DNS reply to the V4 node. The local AIIH server MUST
also update all SIIT routers within the domain. This is done by
sending an update message containing the IPv6 node's home address,
the assigned IPv4 address and the entry's lifetime in the address-
mapping cache. All packets destined to the IPv6 node will be
translated by the receiving SIIT router and encapsulated to the
node's home address.
If the MN is located in a foreign network, the packets should be
tunnelled by the HA to its COA according to [MIPv6]. Since the MN
will have the SIIT router's address received in the encapsulated
packet, this should result in the sending of a BU from the MN to the
SIIT router according to [MIPv6].
In this manner, route optimisation can be achieved within the V6
network, ie. between the MN and the SIIT router. On the other hand,
route optimisation can not be achieved within the MIPv4 domian. Since
MIPv4 messages are sent over UDP, an SIIT router will not be able to
understand any BU messages sent from the V4 node's HA. Hence all BU
messages will be silently discarded by the final destination (IPv6
node). This should not cause any problems for the MIPv4
implementation as route optimisation is not mandatory in MIPv4.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 7]
INTERNET-DRAFT July 13, 2000
It should be noted that the Address-mapping cache need not be tightly
coupled to the Binding Cache implementation. Hence an SIIT router may
contain the IPv6 MN's home address in its Address-mapping cache and
its COA in the Binding cache. In the case of an SIIT router's
failure, packets may be routed to another SIIT router that is not
updated with the MN's current location. This will result in
triangular routing within the v6 domain until the MN updates the new
SIIT router with its current location. This may result in some delays
that might be encountered due to the number of extra hops introduced
by triangular routing.
3.2.2 Connection intiated by the V6 MN
In this memo the actions required by an IPv6 MN to communicate with
an IPv4 MN depends on its location at the time the communication is
initiated and whether its current domain supports an AIIH server.
If the MN is located in its home domain, which supports AIIH, the MN
can request an IPv4 address as outlined in [DSTM]. The AIIH server
should allocate an IPv4 address to the MN and update all known SIIT
routers.
Upon successful allocation of the IPv4 address, the MN can start
communicating with the V4 node in the normal manner.
If the MN is located in a foreign domain, it may choose to request an
IPv4 address from the local AIIH server, provided one exists within
the domain and no local policy stops such request. Upon successful
allocation of the address, the AIIH server should update all
registered SIIT routers. The MN should then update its home DNS by
sending a DNS update message. This would require a pre-existing
security association with the Home DNS.
Alternatively, the MN may choose to tunnel a request for an IPv4
address to the Home AIIH server. The Home AIIH server would then
allocate an address and update all the SIIT routers within the Home
domain. All IPv4 packets from this point onward will be received
within the home network and forwarded to the MN's COA via the HA.
It should be noted that by requesting an address from the local AIIH
server less delays would be encountered for inbound packets, ie.
triangular routing will be achieved (compared to rectangular routing
when requesting an address from the Home AIIH server). On the other
hand, an IPv4 address from the Home domain would last even when the
MN moves to a new domain (another foreign domain) which may not be
possible when getting an address from the current domain.
For example, some domains with a limited IPv4 address pool may wish
to restrict the use of such addresses to nodes that are physically
located within their domain. The method of policing the use of IPv4
addresses is outside the scope of this memo.
Hence the decision as to which method should be used to get an IPv4
address (Home vs visited domain) is left to the MN and the local
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 8]
INTERNET-DRAFT July 13, 2000
policies within each domain.
3.2.3 SIIT extensions for mobility support
According to [MIPv6] a MN MUST include a Home Address option in all
outbound packets. Furthermore, every CN MUST be able to process the
Home Address option. When the ESP or the AH headers are used for
outbound packets, the Home Address option is added before the IPsec
header to enable the CN to process the IPsec header. Hence the Home
Address option will always be visible to intermediate nodes.
For an IPv6 MN to successfully communicate with an IPv4 node via
SIIT, the Home Address option MUST not be forwarded in the translated
IPv4 packets. Hence an SIIT router has to remove the Home option from
all outbound packets during the translation. One way of achieving
this is by replacing the source address with the Home address before
translating the header. When an inbound packet is received the packet
will be encapsulated to the Home address of the MN. If the SIIT
router includes a Binding to the MN's COA, the COA will be used as
the destination address as per [MIPv6].
To avoid triangular routing in the IPv6 domain, it is recommended
that SIIT routers process BU's and maintain a Binding Cache.
3.2.4 Considerations for Mobile Nodes using MIPv6
According to [MIPv6]a Binding Update option may be placed in the same
header as a Home Address option or in a different header. When using
an ESP header however, an MN MUST not place the Binding Update option
after the ESP header for all CNs that have an IPv4-mapped address.
This should be done to make sure that packets do not get discarded by
the IPv4 host due to the inclusion of the Binding Update option.
4. Message formats for communication between AIIH and SIIT routers
4.1. Discovering an AIIH Server
Ultimately it is advantageous that an SIIT router discovers an AIIH
server without the need for manual configuration. Although manual
configuration can also be allowed, the aim of this section is to
recommend other dynamic mechanisms.
Since AIIH servers are essentially combined DHCP and DNS servers,
DHCP server mechanisms can be used to discover the DHCP server's IP
address. The next step is to check whether the DHCP server located
implements the mechanism proposed in this memo. This can be achieved
by sending the address-mapping cache request message shown below. A
reception of the address-mapping cache will indicate the support for
this mechanism.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 9]
INTERNET-DRAFT July 13, 2000
4.2 Address-mapping cache entry
Figure 2 below shows the structure of a single entry in the address-
mapping cache. Each address-mapping cache reply message may include a
large number of entries. Each entry contains: an IPv6 address, an
IPv4 address and the corresponding lifetime. Entries received by SIIT
routers are stored in the address-mapping cache.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| IPv6 address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Fig. 2. Address-mapping cache entry
IPv4 address IPv4 address in an AIIH server's address pool
IPv6 address IPv6 node's address. If the IPv4 address is
Not allocated to any IPv6 nodes, this field
MUST be set to the Unspecified address.
Lifetime A 32-bit unsigned number indicating the
expiry time of this entry in seconds.
4.3. Address-mapping cache Request
The Address-mapping cache request message format is shown below. This
message is sent by SIIT routers to request the mapping between IPv4
and IPv6 addresses. The details of the message are explained below.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 10]
INTERNET-DRAFT July 13, 2000
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Msg-typ| Length |E| Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
.
.
.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Fig. 3. Address-mapping cache request
Msg-type = 1 Indicates address-mapping cache request
message.
Length The number of 32-bit words after the Reserved
field. Ie. the number of IPv4 addresses
included. MUST be Set to zero if the E flag is
set.
E If set, indicates a request for the entire
cache. If not set the message MUST include one
or more IPv4 addresses.
Reserved An 11-bit reserved field. MUST be set to zero.
The message can be sent to request mappings for certain IPv4
addresses or, alterntively, a client may request the mappings for the
entire cache.
If the E flag is set, it shows that the client requests a mapping for
the entire cache and the length field MUST be set to zero. Otherwise,
the client's request is only for certain IPv4 addresses and the
length field should be set to the number of IPv4 addresses included
in the message.
4.4 Address-mapping Cache reply
The address-mapping cache reply is sent by the AIIH server and
contains the mapping information requested by the client. If the
entire cache was requested, the AIIH server MUST return all mappings
in the cache.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 11]
INTERNET-DRAFT July 13, 2000
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Msg-typ| Length |M| netmasks | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Transaction ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Netmask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
.
.
.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Netmask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| IPv6 address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
.
.
.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| IPv6 address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Fig. 4. Address-mapping cache reply
Msg-type = 2 Indicates a message reply type.
Length The number of 32-bit words following the
Packet ID field.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 12]
INTERNET-DRAFT July 13, 2000
M If set indicates more messages will be
received. This indicates that the reply
couldn't be placed in one message.
Netmasks The number of IPv4 Netmasks included in this
message.
Transaction ID A 32-bit unsigned number identifying each
transaction (ie. client request).
Code Shows the status of the operation. Values of 5
and above provide reasons for operation
failure.
Reserved values :
0 Operation successful.
5 Operation failed. Reason unspecified.
6 Poorly formed message.
In the case where the client has requested the entire cache and the
length of the cache is larger than the maximum possible length
allowed in the packet, the AIIH server should send multiple reply
messages. Only the last message should have the M flag set to zero to
indicate that the entire cache was sent to the client.
The netmasks field is required to show how many IPv4 netmasks were
sent in the packet. SIIT routers can advertise the netmasks within
the IPv4 routing domain to allow reachability of IPv4-translated
addresses. Netmasks should only be sent by the AIIH server if the
client requested the entire.
The code field shows the result of the processing of the client's
request message. If the field includes a value corresponding to any
of the error values mentioned above, no more entries should exist in
the message. Hence the length field MUST be set to zero.
A transaction id field is used to uniquely identify each request.
This is needed for the client to be able to inform the server of
erroneous packets transferred in a transaction which may result in
the server restarting the transaction.
4.5 DELTA update messages
DELTA update messages are used to send unsolicited address-mapping
cache updates due to changes in one or more entries. For example, if
a an IPv4 address was allocated to a different IPv6 node, or for
invalidation of certain entries. An SIIT router SHOULD acknowledge
DELTA update messages.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 13]
INTERNET-DRAFT July 13, 2000
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Msg-typ| Length | Netmasks |M|Rsvd |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Transaction ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Netmask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
.
.
.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Netmask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IPv4 address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
| IPv6 address |
| |
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Lifetime |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Msg-type = 3 Indicates a message reply type.
Length The number of 32-bit words following the
Packet ID field.
M If set indicates more messages will be
received. This indicates that the reply
couldn't be placed in one message.
Netmasks The number of Netmaks included in this
message.
Transaction ID A 32-bit unsigned number identifying each
transaction (ie. client request).
4.6 Address-mapping cache Acknowledgement
Acknowldgement messages should be sent by the clients upon reception
of an Address-mapping cache reply message from an AIIH server. An
Acknowledgement message contains a code field that shows the result
of processing the server's last message. Clients may choose not to
send an acknowledgement for each received packet. However, an SIIT
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 14]
INTERNET-DRAFT July 13, 2000
router MUST send an acknowledgement with the appropriate code value
whenever it receives an erroneous message from an AIIH server.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Msg-typ| Code | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Transaction ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Msg-type = 4 Indicates acknowledgement type.
Reserved 24-bit reserved field. MUST be set to zero.
Transaction ID A 32-bit unsigned number identifying each
transaction (ie. client request).
Code Indicates the status of the operation, whether
it succeeded or not.
Reserved values :
0 Operation successful
5 Operation failed. Error unspecified
6 Poorly formed message.
The transaction id field identifies the transaction for which an
acknowledgement is being sent.
4.7 Keepalive message
Keepalive messages are introduced to ensure the availability of the
connection between the SIIT routers and AIIH servers. The messages
can be sent by either the clients or the server.
It is recommended that the message is sent once per minute by each
application. Each application should wait for a random length of time
after starting up before sending the first message.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Msg-type| Sequence no |R| Rsvd |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Msg-type = 5 Indicates a keepalive message type.
Sequence number A 16-bit unsigned word that is used to
identify the message.
R If the R flag is set it indicates that this
is a reply message.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 15]
INTERNET-DRAFT July 13, 2000
Rsvd A 12-bit reserved field. MUST be set to zero.
The sender of a Keepalive message should generate the sequence number
field by using a 16-bit rolling counter.
The receiver of a Keepalive message MUST echo that message with the
same sequence number and set the R flag in the reply.
5. Acknowledgements
The authors would like to thank Mattias Pettersson for his helpful
suggestions to this draft.
6. Author's Addresses
Hesham Soliman
Ericsson Australia
61 Rigall St., Broadmeadows
Melbourne, Victoria 3047
AUSTRALIA
Phone: +61 3 93012049
Fax: +61 3 93014280
E-mail: Hesham.Soliman@ericsson.com.au
Erik Nordmark
Sun Microsystems, Inc.
901 San Antonio Road
Palo Alto, CA 94303
USA
phone: +1 650 786 5166
fax: +1 650 786 5896
email: nordmark@sun.com
7. References
[ADDR-ARCH] Deering, S. and R. Hinden, Editors, "IP Version 6
Addressing Architecture", RFC 2373, July 1998.
[IPv6] Deering, S. and R. Hinden, Editors, "Internet Protocol,
Version 6 (IPv6) Specification", RFC 2460, December
1998.
[KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[MIPV6] D. Johnson and C. Perkins, "Mobility Support in IPv6",
draft-ietf-mobileip-ipv6-12.txt. Work in progress.
[SIIT] E. Nordmark, "Stateless IP/ICMP Translation Algorithm",
RFC 2765, February 2000.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 16]
INTERNET-DRAFT July 13, 2000
This Internet-Draft expires in January 2001.
H. Soliman and E. Nordmark SIIT-DSTM extensions [Page 17]
| PAFTECH AB 2003-2026 | 2026-04-24 01:40:47 |