draft-ietf-mip4-generic-notification-message-11.txt | draft-ietf-mip4-generic-notification-message-14.txt | |||
---|---|---|---|---|
MIP4 Working Group H. Deng | MIP4 Working Group H. Deng | |||
Internet-Draft China Mobile | Internet-Draft China Mobile | |||
Intended status: Standards Track H. Levkowetz | Intended status: Standards Track H. Levkowetz | |||
Expires: March 12, 2010 Ericsson Research | Expires: September 9, 2010 Ericsson Research | |||
V. Devarapalli | V. Devarapalli | |||
WiChorus | WiChorus | |||
S. Gundavelli | S. Gundavelli | |||
Cisco Systems | Cisco Systems | |||
B. Haley | B. Haley | |||
Hewlett-Packard Company | Hewlett-Packard Company | |||
September 8, 2009 | March 8, 2010 | |||
Generic Notification Message for Mobile IPv4 | Generic Notification Message for Mobile IPv4 | |||
draft-ietf-mip4-generic-notification-message-11.txt | draft-ietf-mip4-generic-notification-message-14.txt | |||
Abstract | ||||
This document specifies protocol enhancements that allow Mobile IPv4 | ||||
entities to send and receive explicit notification messages using a | ||||
new Mobile IPv4 message type designed for this purpose. | ||||
Status of this Memo | Status of this Memo | |||
This Internet-Draft is submitted to IETF in full conformance with the | This Internet-Draft is submitted to IETF in full conformance with the | |||
provisions of BCP 78 and BCP 79. This document may contain material | provisions of BCP 78 and BCP 79. | |||
from IETF Documents or IETF Contributions published or made publicly | ||||
available before November 10, 2008. The person(s) controlling the | ||||
copyright in some of this material may not have granted the IETF | ||||
Trust the right to allow modifications of such material outside the | ||||
IETF Standards Process. Without obtaining an adequate license from | ||||
the person(s) controlling the copyright in such materials, this | ||||
document may not be modified outside the IETF Standards Process, and | ||||
derivative works of it may not be created outside the IETF Standards | ||||
Process, except to format it for publication as an RFC or to | ||||
translate it into languages other than English. | ||||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
other groups may also distribute working documents as Internet- | other groups may also distribute working documents as Internet- | |||
Drafts. | Drafts. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
The list of current Internet-Drafts can be accessed at | The list of current Internet-Drafts can be accessed at | |||
http://www.ietf.org/ietf/1id-abstracts.txt. | http://www.ietf.org/ietf/1id-abstracts.txt. | |||
The list of Internet-Draft Shadow Directories can be accessed at | The list of Internet-Draft Shadow Directories can be accessed at | |||
http://www.ietf.org/shadow.html. | http://www.ietf.org/shadow.html. | |||
This Internet-Draft will expire on March 12, 2010. | This Internet-Draft will expire on September 9, 2010. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2009 IETF Trust and the persons identified as the | Copyright (c) 2010 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents in effect on the date of | Provisions Relating to IETF Documents | |||
publication of this document (http://trustee.ietf.org/license-info). | (http://trustee.ietf.org/license-info) in effect on the date of | |||
Please review these documents carefully, as they describe your rights | publication of this document. Please review these documents | |||
and restrictions with respect to this document. | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | ||||
Abstract | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | ||||
This document specifies protocol enhancements that allow Mobile IPv4 | described in the BSD License. | |||
entities to send and receive explicit notification messages using a | ||||
new Mobile IPv4 message type designed for this purpose. | ||||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 6 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
3. Notification message - Usage Scenario's . . . . . . . . . . . 7 | 3. Notification message - Usage Scenario's . . . . . . . . . . . 6 | |||
3.1. Notification message between a Home Agent and a Mobile | 3.1. Notification message between a Home Agent and a Mobile | |||
Node . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 | Node . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
3.1.1. Mobile Registered using a Foreign Agent Care-of | 3.1.1. Mobile Registered using a Foreign Agent Care-of | |||
Address . . . . . . . . . . . . . . . . . . . . . . . 7 | Address . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
3.1.2. Mobile Registered using a Co-located Care-of | 3.1.2. Mobile Registered using a Co-located Care-of | |||
Address . . . . . . . . . . . . . . . . . . . . . . . 7 | Address . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
3.2. Notification message between a Foreign Agent and a | 3.2. Notification message between a Foreign Agent and a | |||
Mobile Node . . . . . . . . . . . . . . . . . . . . . . . 7 | Mobile Node . . . . . . . . . . . . . . . . . . . . . . . 6 | |||
3.3. Notification message between a Home Agent and a | 3.3. Notification message between a Home Agent and a | |||
Foreign Agent . . . . . . . . . . . . . . . . . . . . . . 8 | Foreign Agent . . . . . . . . . . . . . . . . . . . . . . 7 | |||
4. Generic Notification Message and Considerations . . . . . . . 9 | 4. Generic Notification Message and Considerations . . . . . . . 8 | |||
4.1. Generic Notification Message . . . . . . . . . . . . . . . 9 | 4.1. Generic Notification Message . . . . . . . . . . . . . . . 8 | |||
4.2. Generic Notification Acknowledgment Message . . . . . . . 12 | 4.2. Generic Notification Acknowledgment Message . . . . . . . 11 | |||
4.3. Notification Retransmision . . . . . . . . . . . . . . . . 16 | 4.3. Notification Retransmision . . . . . . . . . . . . . . . . 14 | |||
4.4. Mobile Node Consideration . . . . . . . . . . . . . . . . 16 | 4.4. Mobile Node Consideration . . . . . . . . . . . . . . . . 14 | |||
4.4.1. Receiving Generic Notification Messages . . . . . . . 16 | 4.4.1. Receiving Generic Notification Messages . . . . . . . 15 | |||
4.4.2. Sending Generic Notification Acknowledgement | 4.4.2. Sending Generic Notification Acknowledgement | |||
Message . . . . . . . . . . . . . . . . . . . . . . . 17 | Message . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
4.4.3. Sending Generic Notification Messages . . . . . . . . 18 | 4.4.3. Sending Generic Notification Messages . . . . . . . . 16 | |||
4.4.4. Receiving Generic Notification Acknowledgement | 4.4.4. Receiving Generic Notification Acknowledgement | |||
Messages . . . . . . . . . . . . . . . . . . . . . . . 19 | Messages . . . . . . . . . . . . . . . . . . . . . . . 17 | |||
4.5. Foreign Agent Consideration . . . . . . . . . . . . . . . 19 | 4.5. Foreign Agent Consideration . . . . . . . . . . . . . . . 18 | |||
4.5.1. Receiving Generic Notification Message . . . . . . . . 20 | 4.5.1. Receiving Generic Notification Message . . . . . . . . 18 | |||
4.5.2. Sending Generic Notification Acknowledgement | 4.5.2. Sending Generic Notification Acknowledgement | |||
Messages . . . . . . . . . . . . . . . . . . . . . . . 21 | Messages . . . . . . . . . . . . . . . . . . . . . . . 20 | |||
4.5.3. Sending Generic Notification Messages . . . . . . . . 22 | 4.5.3. Sending Generic Notification Messages . . . . . . . . 20 | |||
4.5.4. Receiving Generic Notification Acknowledgement | 4.5.4. Receiving Generic Notification Acknowledgement | |||
Messages . . . . . . . . . . . . . . . . . . . . . . . 23 | Messages . . . . . . . . . . . . . . . . . . . . . . . 21 | |||
4.6. Home Agent Consideration . . . . . . . . . . . . . . . . . 24 | 4.6. Home Agent Consideration . . . . . . . . . . . . . . . . . 22 | |||
4.6.1. Sending Generic Notification Messages . . . . . . . . 24 | 4.6.1. Sending Generic Notification Messages . . . . . . . . 22 | |||
4.6.2. Receiving Generic Notification Acknowledgement | 4.6.2. Receiving Generic Notification Acknowledgement | |||
Messages . . . . . . . . . . . . . . . . . . . . . . . 24 | Messages . . . . . . . . . . . . . . . . . . . . . . . 23 | |||
4.6.3. Receiving Generic Notification Messages . . . . . . . 25 | 4.6.3. Receiving Generic Notification Messages . . . . . . . 23 | |||
4.6.4. Sending Generic Notification Acknowledgement | 4.6.4. Sending Generic Notification Acknowledgement | |||
Messages . . . . . . . . . . . . . . . . . . . . . . . 26 | Messages . . . . . . . . . . . . . . . . . . . . . . . 24 | |||
5. Usage Example . . . . . . . . . . . . . . . . . . . . . . . . 28 | 5. Future Extensibility . . . . . . . . . . . . . . . . . . . . . 26 | |||
5.1. Generic String Extension . . . . . . . . . . . . . . . . . 28 | 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 27 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 29 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . 28 | |||
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 30 | 7.1. Replay Protection for GNM, GNAM messages . . . . . . . . . 28 | |||
8. Security Considerations . . . . . . . . . . . . . . . . . . . 31 | 7.1.1. Replay Protection using Timestamps . . . . . . . . . . 29 | |||
8.1. Replay Protection for GNM, GNAM messages . . . . . . . . . 31 | 7.1.2. Replay Protection using Nonces . . . . . . . . . . . . 30 | |||
8.1.1. Replay Protection using Timestamps . . . . . . . . . . 32 | 7.2. Non-authentication Extensions Handling in Foreign Agent . 30 | |||
8.1.2. Replay Protection using Nonces . . . . . . . . . . . . 33 | 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 31 | |||
8.2. Non-authentication Extensions Handling in Foreign Agent . 33 | 9. Normative References . . . . . . . . . . . . . . . . . . . . . 32 | |||
9. Normative References . . . . . . . . . . . . . . . . . . . . . 34 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 33 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 35 | ||||
1. Introduction | 1. Introduction | |||
In some situations, there is a need for Mobile IPv4 entities, such as | In some situations, there is a need for Mobile IPv4 entities, such as | |||
the home agent(HA), foreign agent(FA) and mobile node(MN) to send and | the home agent(HA), foreign agent(FA) and mobile node(MN) to send and | |||
receive asynchronous notification messages during a mobility session. | receive asynchronous notification messages during a mobility session. | |||
The base Mobile IP Specification [RFC3344] does not have a provision | The base Mobile IP Specification [RFC3344] does not have a provision | |||
for this. | for this. | |||
This document defines a generic message and a notification model that | This document defines a generic message and a notification model that | |||
can be used by Mobile IPv4 entities to send various notifications. | can be used by Mobile IPv4 entities to send various notifications. | |||
However, this specification does not define any specific notification | It also defines a corresponding acknowledgement message to allow for | |||
message or the actions that the receiving entity is required to | reliable delivery of notifications. The messages defined in this | |||
perform on receiving that message. Specific extensions and the | document are capable of carrying the same extensions that have been | |||
corresponding handler actions are outside the scope of this document. | defined for the existing Mobile IPv4 messages. However, this | |||
document requires for now that only the following extensions be | ||||
present in the new messages defined herein: | ||||
- MN-HA Authentication Extension | ||||
- MN-FA Authentication Extension | ||||
- FA-HA Authentication Extension | ||||
- Generic String Extension | ||||
For now, the semantics of receiving a generic notification message | ||||
are null; i.e., it has no effect on the state of a mobile node's | ||||
existing registration. See Section 5 for some prospective | ||||
application examples that motivate the new messages defined in this | ||||
document. Future documents may specify additional extension types | ||||
that may be used in a generic notification message and their | ||||
semantics. | ||||
2. Terminology | 2. Terminology | |||
It is assumed that the reader is familiar with the terminology used | It is assumed that the reader is familiar with the terminology used | |||
in [RFC4917], [RFC3344]. In addition, the following terms are | in [RFC4917], [RFC3344]. In addition, the following terms are | |||
defined: | defined: | |||
Notification Message | Notification Message | |||
A message from a mobility agent to a MN or other mobility agent to | A message from a mobility agent to a MN or other mobility agent to | |||
skipping to change at page 9, line 31 | skipping to change at page 9, line 31 | |||
- the UDP destination port of the Registration Request/Reply | - the UDP destination port of the Registration Request/Reply | |||
The sending node always sends the GNM message following the same | The sending node always sends the GNM message following the same | |||
procedure for sending Registration Request as in section 3.3 of | procedure for sending Registration Request as in section 3.3 of | |||
[RFC3344] and the receiving node follows the same procedure for | [RFC3344] and the receiving node follows the same procedure for | |||
Registration Reply as in section 3.4. of [RFC3344] when sending GNAM. | Registration Reply as in section 3.4. of [RFC3344] when sending GNAM. | |||
4.1. Generic Notification Message | 4.1. Generic Notification Message | |||
A GNM is sent by a mobility agent to inform another mobility agent, | A GNM is sent by a mobility agent to inform another mobility agent, | |||
or a MN, of MIP-related information such as vendor specific | or a MN, of MIP-related information such as generic string | |||
extensions[RFC3115] and generic string notification[RFC4917]. These | notification[RFC4917]. These messages MUST use the same IP and UDP | |||
messages MUST use the same IP and UDP headers as any previous | headers as any previous Registration Request(RRQ) or Reply (RRP) | |||
Registration Request(RRQ) or Reply (RRP) message to the same entity. | message to the same entity. This would support NAT traversal and | |||
This would support NAT traversal and ensure same security association | ensure same security association used for GNM/GNAM and RRQ/RRP. The | |||
used for GNM/GNAM and RRQ/RRP. The GNM is defined as follows: | GNM is defined as follows: | |||
IP Fields: | IP Fields: | |||
Source Address Copied from the source address field of the | Source Address Typically copied from the destination | |||
last Registration Reply/Request message | address of the last Registration Reply/ | |||
sent. | Request message that the agent received from | |||
the agent to which it is sending the GNM. | ||||
Destination Address Copied from the source address field of the | Destination Address Copied from the source address of the last | |||
last Registration Reply/Request message | Registration Reply/Request message that the | |||
sent. | agent received from the agent to which it is | |||
sending the GNM. | ||||
UDP Fields: | UDP Fields: | |||
Source Port Copied from the source address field of the | Source Port Typically copied from the destination port | |||
last Registration Reply/Request message | of the last Registration Reply/Request | |||
sent. | message that the agent received from the | |||
agent to which it is sending the GNM. | ||||
Destination Port Copied from the source address field of the | Destination Port Copied from the source port of the last | |||
last Registration Reply/Request message | Registration Reply/Request message that the | |||
sent. | agent received from the agent to which it is | |||
sending the GNM. | ||||
The UDP header is followed by the Mobile IP fields shown below: | The UDP header is followed by the Mobile IP fields shown below: | |||
0 1 2 3 | 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 | 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Type | Subtype | MD |A| Reserved | | | Type | MD |A| Reserved | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Home Address | | | Home Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Home Agent Address | | | Home Agent Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Care-of Address | | | Care-of Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | |||
+ Identification + | + Identification + | |||
| | | | | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Extensions... | | Extensions... | |||
+-+-+-+-+-+-+-+-+-+-+-+-+- | +-+-+-+-+-+-+-+-+-+-+-+-+- | |||
Type (To be assigned by IANA) | Type (To be assigned by IANA) | |||
Subtype | ||||
This field describes the particular type of notification which is | ||||
carried in the notification message. The following values are | ||||
reserved in this document. | ||||
0 Reserved | ||||
1 Information carried in Vendor specific extensions which is | ||||
specified in [RFC3115]. | ||||
2 Information carried in Generic String extensions which is | ||||
specified in [RFC4917]. | ||||
The value 0 is reserved and SHOULD NOT be used. The value 1 | ||||
indicates that the actual information is carried in vendor | ||||
specific extensions. Other values are reserved for future | ||||
extensions. | ||||
MD: Message Direction | MD: Message Direction | |||
This memo defines the semantics of the following MD field value: | This memo defines the semantics of the following MD field value: | |||
0 -- Message sent by the HA to the MN | 0 -- Message sent by the HA to the MN | |||
1 -- Message sent by the HA to the FA | 1 -- Message sent by the HA to the FA | |||
2 -- Message sent by the MN to the HA | 2 -- Message sent by the MN to the HA | |||
skipping to change at page 13, line 8 | skipping to change at page 12, line 37 | |||
corresponding GNM. | corresponding GNM. | |||
Destination Port Copied from the source port of the | Destination Port Copied from the source port of the | |||
corresponding GNM. | corresponding GNM. | |||
The UDP header is followed by the Mobile IP fields shown below: | The UDP header is followed by the Mobile IP fields shown below: | |||
0 1 2 3 | 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 | 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 | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Type | Subtype | MD | code | | | Type | MD | code | Reserved | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Home Address | | | Home Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Home Agent Address | | | Home Agent Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Care-of Address | | | Care-of Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | |||
+ Identification + | + Identification + | |||
| | | | | | |||
skipping to change at page 13, line 22 | skipping to change at page 13, line 4 | |||
| Home Agent Address | | | Home Agent Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Care-of Address | | | Care-of Address | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| | | | | | |||
+ Identification + | + Identification + | |||
| | | | | | |||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | |||
| Extensions... | | Extensions... | |||
+-+-+-+-+-+-+-+-+-+-+-+-+- | +-+-+-+-+-+-+-+-+-+-+-+-+- | |||
Type (To be assgined by IANA) | Type (To be assgined by IANA) | |||
Subtype | ||||
This field specifies the particular type of notification | ||||
acknowledgement message. The following values are reserved in | ||||
this document. | ||||
0 Reserved | ||||
1 Information carried in Vendor specific extensions which is | ||||
specified in [RFC3115]. | ||||
2 Information carried in Generic String extensions which is | ||||
specified in [RFC4917]. | ||||
The value 0 is reserved and SHOULD NOT be used. The value 1 | ||||
indicates that the actual information is carried in vendor | ||||
specific extensions. Other values are reserved for future | ||||
extensions. | ||||
MD: Message Direction | MD: Message Direction | |||
This memo defines the semantics of the following MD field value: | This memo defines the semantics of the following MD field value: | |||
0 -- Message sent by the HA to the MN | 0 -- Message sent by the HA to the MN | |||
1 -- Message sent by the HA to the FA | 1 -- Message sent by the HA to the FA | |||
2 -- Message sent by the MN to the HA | 2 -- Message sent by the MN to the HA | |||
3 -- Message sent by the MN to the FA | 3 -- Message sent by the MN to the FA | |||
4 -- Message sent by the FA to the MN | 4 -- Message sent by the FA to the MN | |||
5 -- Message sent by the FA to the HA | 5 -- Message sent by the FA to the HA | |||
code | code | |||
skipping to change at page 28, line 5 | skipping to change at page 27, line 5 | |||
If the GNM message came from the MN, and if the "A" flag is set in | If the GNM message came from the MN, and if the "A" flag is set in | |||
the GNM message, then the HA MUST send a GNAM message. The message | the GNM message, then the HA MUST send a GNAM message. The message | |||
is as follows: The source address is HA's address, the destination | is as follows: The source address is HA's address, the destination | |||
address is the FA's address, the "MD" value is set to 0. The | address is the FA's address, the "MD" value is set to 0. The | |||
ordering of the extension is: any non-authentication Extensions used | ordering of the extension is: any non-authentication Extensions used | |||
only by the MN, followed by the MN-HA AE defined in section 3.5.2. of | only by the MN, followed by the MN-HA AE defined in section 3.5.2. of | |||
[RFC3344], optionly followed by any non-authentication Extensions | [RFC3344], optionly followed by any non-authentication Extensions | |||
used only by the FA, optionly followed by The MN-FA AE defined in | used only by the FA, optionly followed by The MN-FA AE defined in | |||
section 3.5.3 of [RFC3344] | section 3.5.3 of [RFC3344] | |||
5. Usage Example | 5. Future Extensibility | |||
The HA, FA, and MN SHOULD expose a list of the supported | ||||
notifications to operators via some management interface, and there | ||||
SHOULD be switches to enable / disable individual types of | ||||
notifications and controllers to tune the retransmission timers for | ||||
each type. | ||||
There are several applications that could use this GNM. For example, | There are several applications that could use this GNM. For example, | |||
during handover between CDMA 2000 1x EV-DO and Wireless LAN, the PPP | during handover between CDMA 2000 1x EV-DO and Wireless LAN, the PPP | |||
resource of CDMA side have to be removed on the FA (PDSN) to avoid | resource on the CDMA side has to be removed on the FA (PDSN) to avoid | |||
over-charging subscribers. Other applications such as HA switch | over-charging subscribers, anyway existing Registration Revocation | |||
over, NEMO prefix changes, service or billing related events, load | RFC [RFC3543] is a one way to do this. Other applications such as HA | |||
balancing where the HA wants to move some of the registered mobile | switch over(before HA decide to go offline it would like to notify | |||
nodes to other HAs, service termination due to end of prepaid time, | the MNs to register with another candidate HA), NEMO prefix | |||
and service interruption due to system maintenance. | changes(MN is notified by HA about NEMO prefix changes and service or | |||
billing related events, which is an operational requirement), Load | ||||
balancing(HA wants to move some of the registered MNs to other HAs), | ||||
Service Termination(due to end of prepaid time), and Service | ||||
Interruption(due to system maintenance). | ||||
Here we describe some possible event which could use the generic | This document describes how to use Generic String Extension [RFC4917] | |||
string extension [RFC4917] based on this notification mechanism. | based on this notification mechanism. | |||
There is also the possibility that this notification message could | ||||
carry many extensions at once. A new VSE extension could be defined | ||||
to support this notification message. | ||||
5.1. Generic String Extension | In some case, the HA or FA needs to notify the MN about service | |||
termination due to the end of prepaid time, or service interruption | ||||
due to system maintenance. This information could be defined based | ||||
on a string [RFC4917] which is easily recognized by the MN. An | ||||
example would be "Maintenance Downtime", "Prepaid Expiration". On | ||||
the other hand, the MN may need to notify the network about events | ||||
related to a service such as a location change event, or a usage- | ||||
preference change event. This information could be defined based on | ||||
a string [RFC4917]. An example would be "Location Change" or | ||||
"Service Event". These strings MUST be strictly defined so they | ||||
could be easily understood by all of the network entities, and a | ||||
suitable GNM Subtype number would have to be allocated. All such | ||||
definitions are left for future specifications. | ||||
In some case, the HA or FA needs to notify the mobile node about | For now, none of these above future semantics are supported except | |||
service termination due to the end of prepaid time, or service | that the Generic String Extension is supported for informational | |||
interruption due to system maintenance. This information could be | purposes. There should be minimum requirements given here for adding | |||
defined based on a string [RFC4917] which is recognized by the MN | additional extension types to the allowed set and defining their | |||
easily. An example would be "Maintenance Downtime", "Prepaid | semantics. | |||
Expiration". These string MUST be strictly defined so they could be | ||||
easily understood by all of the network entities, and a suitable GNM | ||||
Subtype number would have to be allocated. All such definitions are | ||||
left for future specifications. | ||||
6. IANA Considerations | 6. IANA Considerations | |||
This document describes two new messages, the GNM in section 4.1 and | This document describes two new messages, the GNM in section 4.1 and | |||
the GNAM in section 4.2. These two messages SHOULD be allocated from | the GNAM in section 4.2. These two messages SHOULD be allocated from | |||
the same address space used by the Registration Request and | the same address space used by the Registration Request and | |||
Registration Reply messages in [RFC3344]. The subtype of these two | Registration Reply messages in [RFC3344]. The subtype of these two | |||
messages indicate what kind of information is carried and will be | messages indicate the information that GNM is carrying, and it will | |||
under assigned by IANA namespace. | be under assigned by IANA namespace. | |||
This document creates a new IANA registry for the Subtype field in | ||||
the GNM and GNAM. New values MUST be allocated by Standards Actions | ||||
or IETF Consensus. This document reserves three values for the | ||||
Subtype field | ||||
0 Reserved | ||||
1 Information carried in Vendor specific extensions | ||||
2 Information carried in Generic String Extension | ||||
This GNAM message, specified in section section 4.2, has a Code | This GNAM message, specified in section section 4.2, has a Code | |||
field. The number space for the Code field values is also specified | field. The number space for the Code field values is also specified | |||
in section 4.2. The Code number space is strucutred according to | in section 4.2. The Code number space is strucutred according to | |||
whether the notification was successful, or whether the HA denied the | whether the notification was successful, or whether the HA denied the | |||
notification, or whether FA denied the notification, or whether MN | notification, or whether FA denied the notification, or whether MN | |||
denied the notification, as follows | denied the notification, as follows | |||
0 Success Code | 0 Success Code | |||
64-69 Error Codes from the FA | 64-69 Error Codes from the FA | |||
128-133 Error Codes from the HA | 128-133 Error Codes from the HA | |||
192-197 Error Codes from the MN | 192-197 Error Codes from the MN | |||
Approval of new Code values require expert review. | Approval of new Code values require expert review. | |||
7. Acknowledgments | 7. Security Considerations | |||
The author appreciate the efforts of Ahmad Muhanna for his detail | ||||
reviewing of this document and his many contributions to the text of | ||||
this document. The author also wants to thank Kent Leung, Peng Yang | ||||
and Peter McCann et al. for their helping developing this document. | ||||
Thanks to Alexey Melnikov, Sean Turner, Charles E. Perkins, and | ||||
Joseph Salowey's discussion and comments. Thanks to Jari Arkko for | ||||
each step of this document. | ||||
8. Security Considerations | ||||
This specification operates in the security constraints and | This specification operates in the security constraints and | |||
requirements of [RFC3344]. It require that when these message is | requirements of [RFC3344]. It require that when these message is | |||
transmitted between the MN and the HA, MN-HA AE is mandatory, when | transmitted between the MN and the HA, MN-HA AE is mandatory, when | |||
this message is transmitted between the MN and the FA, MN-FA AE is | this message is transmitted between the MN and the FA, MN-FA AE is | |||
mandatory, when this message is transmitted between the FA and the | mandatory, when this message is transmitted between the FA and the | |||
HA, FA-HA AE is mandatory. It extends the operations of MN, HA and | HA, FA-HA AE is mandatory. It extends the operations of MN, HA and | |||
FA defined in [RFC3344] to notify each other about some events. The | FA defined in [RFC3344] to notify each other about some events. The | |||
GNM message defined in the specification could carry information that | GNM message defined in the specification could carry information that | |||
modifies the mobility bindings. Therefore the message MUST be | modifies the mobility bindings. Therefore the message MUST be | |||
integrity protected. Replay protection MUST also be guaranteed. | integrity protected. Replay protection MUST also be guaranteed. | |||
RFC 3344 provides replay protection only for registration requests | RFC 3344 provides replay protection only for registration requests | |||
sent by the MN. There is no mechanism for replay protection for | sent by the MN. There is no mechanism for replay protection for | |||
messages initiated by a FA or a HA. The 64-bit Identification field | messages initiated by a FA or a HA. The 64-bit Identification field | |||
specified in this document (Section 4.1 and 4.2) for the GNM message | specified in this document (Section 4.1 and 4.2) for the GNM message | |||
is used to provide replay protection for the notification messages | is used to provide replay protection for the notification messages | |||
initiated by the FA or HA. | initiated by the FA or HA. | |||
8.1. Replay Protection for GNM, GNAM messages | 7.1. Replay Protection for GNM, GNAM messages | |||
The Identification field is used to let the receiving node verify | The Identification field is used to let the receiving node verify | |||
that a GNM has been freshly generated by the sending node, not | that a GNM has been freshly generated by the sending node, not | |||
replayed by an attacker from some previous registration. Two methods | replayed by an attacker from some previous registration. Two methods | |||
are described in this section: timestamps (mandatory) and "nonces" | are described in this section: timestamps (mandatory) and "nonces" | |||
(optional). All senders and receivers MUST implement timestamp-based | (optional). All senders and receivers MUST implement timestamp-based | |||
replay protection. These nodes MAY also implement nonce-based replay | replay protection. These nodes MAY also implement nonce-based replay | |||
protection | protection | |||
The style of replay protection in effect between any two peer nodes | The style of replay protection in effect between any two peer nodes | |||
among MN, FA and HA. A sending node and its receiving node MUST | among MN, FA and HA is part of the mobile security association. A | |||
agree on which method of replay protection will be used. The | sending node and its receiving node MUST agree on which method of | |||
interpretation of the Identification field depends on the method of | replay protection will be used. The interpretation of the | |||
replay protection as described in the subsequent subsections. | Identification field depends on the method of replay protection as | |||
described in the subsequent subsections. | ||||
Whatever method is used, the low-order 32 bits of the Identification | Whatever method is used, the low-order 32 bits of the Identification | |||
MUST be copied unchanged from the GNM to the GNMA. The receiver uses | MUST be copied unchanged from the GNM to the GNMA. The receiver uses | |||
those bits (and the sender's source address) to match GNAM with | those bits (and the sender's source address) to match GNAM with | |||
corresponding replies. The receiver MUST verify that the low-order | corresponding replies. The receiver MUST verify that the low-order | |||
32 bits of any GNAM are identical to the bits it sent in the GNM. | 32 bits of any GNAM are identical to the bits it sent in the GNM. | |||
The Identification in a new GNM MUST NOT be the same as in an | The Identification in a new GNM MUST NOT be the same as in an | |||
immediately preceding GNM, and SHOULD NOT repeat while the same | immediately preceding GNM, and SHOULD NOT repeat while the same | |||
security context is being used between the MN and the HA. | security context is being used between the MN and the HA. | |||
8.1.1. Replay Protection using Timestamps | 7.1.1. Replay Protection using Timestamps | |||
The basic principle of timestamp replay protection is that the node | The basic principle of timestamp replay protection is that the node | |||
generating a message inserts the current time of day, and the node | generating a message inserts the current time of day, and the node | |||
receiving the message checks that this timestamp is sufficiently | receiving the message checks that this timestamp is sufficiently | |||
close to its own time of day. Unless specified differently in the | close to its own time of day. Unless specified differently in the | |||
security association between the nodes, a default value of 7 seconds | security association between the nodes, a default value of 7 seconds | |||
MAY be used to limit the time difference. This value SHOULD be | MAY be used to limit the time difference. This value SHOULD be | |||
greater than 3 seconds. Obviously the two nodes must have adequately | greater than 3 seconds. Obviously the two nodes must have adequately | |||
synchronized time-of-day clocks. As with any messages, time | synchronized time-of-day clocks. As with any messages, time | |||
synchronization messages may be protected against tampering by an | synchronization messages may be protected against tampering by an | |||
skipping to change at page 33, line 5 | skipping to change at page 31, line 5 | |||
low-order 32 bits into the GNAM, and supplies the high-order 32 bits | low-order 32 bits into the GNAM, and supplies the high-order 32 bits | |||
from its own time of day. In this latter case, the receiver MUST | from its own time of day. In this latter case, the receiver MUST | |||
reject the registration by returning Code 69/133/197 (identification | reject the registration by returning Code 69/133/197 (identification | |||
mismatch) in the GNAM message. | mismatch) in the GNAM message. | |||
Furthermore, the receiver MUST verify that the low-order 32 bits of | Furthermore, the receiver MUST verify that the low-order 32 bits of | |||
the Identification in the GNAM are identical to those in the rejected | the Identification in the GNAM are identical to those in the rejected | |||
GNM attempt, before using the high-order bits for clock | GNM attempt, before using the high-order bits for clock | |||
resynchronization. | resynchronization. | |||
8.1.2. Replay Protection using Nonces | 7.1.2. Replay Protection using Nonces | |||
The basic principle of nonce replay protection is that node A | The basic principle of nonce replay protection is that node A | |||
includes a new random number in every message to node B, and checks | includes a new random number in every message to node B, and checks | |||
that node B returns that same number in its next message to node A. | that node B returns that same number in its next message to node A. | |||
Both messages use an authentication code to protect against | Both messages use an authentication code to protect against | |||
alteration by an attacker. At the same time node B can send its own | alteration by an attacker. At the same time node B can send its own | |||
nonces in all messages to node A (to be echoed by node A), so that it | nonces in all messages to node A (to be echoed by node A), so that it | |||
too can verify that it is receiving fresh messages. | too can verify that it is receiving fresh messages. | |||
The receiver may be expected to have resources for computing pseudo- | The receiver may be expected to have resources for computing pseudo- | |||
skipping to change at page 33, line 40 | skipping to change at page 31, line 40 | |||
node that checks for valid values in the GNAM message. The high- | node that checks for valid values in the GNAM message. The high- | |||
order and low-order 32 bits of the identification chosen SHOULD both | order and low-order 32 bits of the identification chosen SHOULD both | |||
differ from their previous values. The receiver uses a new high- | differ from their previous values. The receiver uses a new high- | |||
order value and the sender uses a new low-order value for each | order value and the sender uses a new low-order value for each | |||
registration message. | registration message. | |||
If a GNM message is rejected because of an invalid nonce, the GNAM | If a GNM message is rejected because of an invalid nonce, the GNAM | |||
always provides the sender with a new nonce to be used in the next | always provides the sender with a new nonce to be used in the next | |||
registration. Thus the nonce protocol is self- synchronizing. | registration. Thus the nonce protocol is self- synchronizing. | |||
8.2. Non-authentication Extensions Handling in Foreign Agent | 7.2. Non-authentication Extensions Handling in Foreign Agent | |||
When the FA is relaying the GNM message between the MN and the HA, | When the FA is relaying the GNM message between the MN and the HA, | |||
and if the FA does not share a mobility security association with the | and if the FA does not share a mobility security association with the | |||
MN or HA, all non-authentication extensions between MN and FA, or FA | MN or HA, all non-authentication extensions between MN and FA, or FA | |||
and HA are not protected; In this case, all non-authentication | and HA are not protected; In this case, all non-authentication | |||
extensions should be silently discarded. | extensions should be silently discarded. | |||
8. Acknowledgments | ||||
The author appreciate the efforts of Ahmad Muhanna for his detail | ||||
reviewing of this document and his many contributions to the text of | ||||
this document. The author also wants to thank Kent Leung, Peng Yang | ||||
and Peter McCann et al. for their helping developing this document. | ||||
Thanks to Alexey Melnikov, Sean Turner, Ralph Droms, Charles E. | ||||
Perkins, Russ Housley, Magnus Westerlund, Lars Eggert, Dan Romascanu, | ||||
Tim Polk, Amanda Baber, Sebastian Thalanany, and Joseph Salowey's | ||||
discussion and comments. Thanks to Jari Arkko for each step of this | ||||
document. | ||||
9. Normative References | 9. Normative References | |||
[RFC1305] Mills, D., "Network Time Protocol (Version 3) | [RFC1305] Mills, D., "Network Time Protocol (Version 3) | |||
Specification, Implementation", RFC 1305, March 1992. | Specification, Implementation", RFC 1305, March 1992. | |||
[RFC1750] Eastlake, D., Crocker, S., and J. Schiller, "Randomness | [RFC1750] Eastlake, D., Crocker, S., and J. Schiller, "Randomness | |||
Recommendations for Security", RFC 1750, December 1994. | Recommendations for Security", RFC 1750, December 1994. | |||
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate | |||
Requirement Levels", BCP 14, RFC 2119, March 1997. | Requirement Levels", BCP 14, RFC 2119, March 1997. | |||
[RFC3115] Dommety, G. and K. Leung, "Mobile IP Vendor/ | [RFC3115] Dommety, G. and K. Leung, "Mobile IP Vendor/ | |||
Organization-Specific Extensions", RFC 3115, April 2001. | Organization-Specific Extensions", RFC 3115, April 2001. | |||
[RFC3344] Perkins, C., "IP Mobility Support for IPv4", RFC 3344, | [RFC3344] Perkins, C., "IP Mobility Support for IPv4", RFC 3344, | |||
August 2002. | August 2002. | |||
[RFC3543] Glass, S. and M. Chandra, "Registration Revocation in | ||||
Mobile IPv4", RFC 3543, August 2003. | ||||
[RFC4917] Sastry, V., Leung, K., and A. Patel, "Mobile IPv4 Message | [RFC4917] Sastry, V., Leung, K., and A. Patel, "Mobile IPv4 Message | |||
String Extension", RFC 4917, June 2007. | String Extension", RFC 4917, June 2007. | |||
Authors' Addresses | Authors' Addresses | |||
Hui Deng | Hui Deng | |||
China Mobile | China Mobile | |||
53A,Xibianmennei Ave., | 53A,Xibianmennei Ave., | |||
Xuanwu District, | Xuanwu District, | |||
Beijing 100053 | Beijing 100053 | |||
End of changes. 45 change blocks. | ||||
181 lines changed or deleted | 168 lines changed or added | |||
This html diff was produced by rfcdiff 1.32. The latest version is available from http://www.levkowetz.com/ietf/tools/rfcdiff/ |