Internet DRAFT - draft-morioka-nemo-mrcoop

draft-morioka-nemo-mrcoop









NEMO Working Group                                            H. Morioka
Internet-Draft                                                 ROOT Inc.
Expires : January 9, 2006                                      July 2005


                   Mobile Router Cooperation Protocol
                    draft-morioka-nemo-mrcoop-00.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 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."

   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 January 9, 2006.


Copyright Notice

   Copyright (C) The Internet Society (2005).


Abstract

   This protocol intended to provide cooperation between mobile routers
   in a mobile network.  A mobile network is usually connected to the
   Internet through mobile routers with wireless interfaces.  Link
   quality of the wireless interface changes frequently and rapidly.  In
   case of several mobile routers in a mobile network, MNN should use
   the MR that has the best link quality.  This protocol makes all MRs
   in a mobile network share link quality of MRs each other. Propagation
   of routing information in a mobile network is not out of sight of



Morioka                  Expires January 9, 2006                [Page 1]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


   this draft.


1. Introduction

   This protocol intended to provide cooperation between mobile routers
   in a mobile network.  A mobile network is usually connected to the
   Internet through mobile routers with wireless interfaces.  Link
   quality of the wireless interface changes frequently and rapidly.  In
   case of several mobile routers in a mobile network, MNN should use
   the MR that has the best link quality.  This protocol makes all MRs
   in a mobile network share link quality of MRs each other.
   Propagation of routings in a mobile network is outside of scope of
   this draft.

   MR sends a packet, which is called "Link Metric Message",
   periodically to all other MRs in the same mobile network.  The packet
   consists of link metrics with the interface identifier, the
   timestamp, prefixes belonging to the MR and the hash value of the
   packet.  The link metric is decided from the link quality and the
   pre-configured preference value.  All MRs have a link metric table
   which maintains link metrics of all interfaces of all MRs in the same
   mobile network.  When a MR receives a Link Metric Message, the MR
   updates the link metric table and compare link metrics of all
   interfaces.  The MR selects a interface which has the largest metric.
   The MR that has this interface sends binding update to the home agent
   with all prefixes of the mobile network.  And all routers should work
   as this MR is the gateway by some routing protocols.


2. Terminology

   The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in BCP 14, RFC 2119 [1].

   Network Mobility - related terminology is defined in [2] and [3].
   This document in addition defines the following terms.

      Mobile Network Prefix

         An IPv6 prefix delegated to a Mobile Router and advertised in
         the Mobile Network.  More than one Mobile Network Prefix could
         be advertised in a Mobile Network.


3. Overview of the protocol




Morioka                  Expires January 9, 2006                [Page 2]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


   The MR has a list of MRs which may be connected to the same mobile
   network.  The MR sends the link metric message that includes the link
   quality of interfaces of the MR to other MRs periodically.  All MRs
   in the mobile network share the link metrics by the link metric
   messages and maintain the link metric table by each MR.  The MRs in
   the same mobile network selects the MR that has the largest link
   metric and make it as the gateway.  Propagation of the routing in the
   mobile network is not considered in this draft.  But the routing can
   change rapidly, so some routing protocols which work fast enough
   should be used.

   The MRs also exchange the prefixes of the mobile networks.  So the
   protocol supports connection and split of multiple mobile networks
   autonomously which will occur in reassemble of train, for example.


4. Transport protocol

   This protocol uses UDP.


5. Behavior of MR

5.1. Link Metric Table

   Each MR maintains a link metric table.  The link metric table
   contains the link metrics, the interface identifiers, the IP
   addresses of the ingress interface of MRs, the mobile network
   prefixes and the last updated time.  Each item in the table expires
   in 300ms.  For example, the link metric table will be as shown below.


      +------------------+--------+------------+--------+---------+
      | IP address of MR | Prefix | Interface  |  Link  | Updated |
      |                  |        | Identifier | Metric |  Time   |
      +==================+========+============+========+---------+
      |                  |        |            |        |         |
      |                  |        |            |        |         |


5.2. Sending Link Metric Message

   The Link Metric Message (LMM) is sent by the MR periodically.  The
   interval of messages MUST NOT be greater than 300ms and SHOULD be
   less than 100ms unless receiving ICMP Destination Unreachable
   Message[4].  If the MR receives ICMP Destination Unreachable Message,
   the MR MAY increase the interval of the messages up to 1 second.




Morioka                  Expires January 9, 2006                [Page 3]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


   Each LMM includes link metrics with the interface identifier, a
   timestamp, prefixes belonging to the MR and the hash value of the
   packet.

   LMM MUST include link metrics of all available egress interfaces of
   the MR.  An available interface means that it can communicate with
   the point of attachment to the Internet with IP.  Typically the
   interface link is up and at least one IP address are assigned.  Link
   metrics of unavailable interfaces, which cannot communicate by IP,
   MAY NOT be included in the LMM.  Detail of the link metric is
   described in later section.

   An interface identifier is 16-bit unsigned integer.  This is for
   identification of interfaces of the MR sending the LMM.  Each
   interface in the MR MUST have a different interface identifier.  The
   interface identifier SHOULD NOT be changed during operation.

   A timestamp is adjusted to the clock of the MR that receives the LMM.

   A LMM can include multiple prefixes which belongs to the MR.

   A hash value is calculated from the LMM itself.


5.3. Receiving Link Metric Message

   When the MR receives a LMM, the MR work as described in this section.

5.3.1. Checking Timestamp

   At first, the MR compare the timestamp of the LMM and it in the link
   metric table.  If the timestamp of the LMM is equal or smaller than
   the timestamp in the link metric table, the LMM is silently
   discarded.

   If the difference between timestamp of the LMM and the clock of the
   MR is greater than 5 seconds, the MR sends the Time Adjusting Message
   described in later section to the sender of the LMM and discards the
   LMM.

5.3.2. Checking Hash Value

   The MR compares the hash value according to the hash type.  If the
   hash value does not match, the message is silently discarded.

5.3.3. Updating the Link Metric Table

   When the MR receives a LMM, the MR MUST updates the link metric table



Morioka                  Expires January 9, 2006                [Page 4]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


   and selects the interface that has the largest metric, that is called
   primary interface, immediately.  If multiple interfaces have the
   largest metric, the primary interface is selected as following.
   Upper condition has higher priority.


   - The previous primary interface
   - The interface belongs to a MR which has shorter mobile network
     prefix length
   - The interface belongs to a MR which has larger IP address as
     128-bit unsigned integer
   - The interface which has smaller interface identifier


5.3.4. Changing Gateway

   If the primary interface is changed from the previous primary
   interface, the MR MUST work as following.

   The MR that has the primary interface MUST send the Binging Update to
   the home agent and announce to the mobile network by some routing
   protocols as the MR is the gateway.  The Binding Update contains all
   mobile network prefixes.

   All other MRs also announce to the mobile network by some routing
   protocols as the MR that has the primary interface is the gateway.

   The MR that has the previous primary interface MUST stop sending
   Binding Update.

5.4. Sending Time Adjusting Message

   If the difference between timestamp of the received LMM and the clock
   of the MR is greater than 5 seconds, the MR MUST send the Time
   Adjusting Message to the sender of the LMM.  The timestamp field of
   the Time Adjusting Message is set to the clock of the sender.


5.5. Receiving Time Adjusting Message

   If the MR receives Time Adjusting Message (described below) from the
   correspondent MR, the MR SHOULD adjusts the timestamp after checking
   the hash value.

   If the hash value does not match, the message is silently discarded.

6. Message Format




Morioka                  Expires January 9, 2006                [Page 5]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


6.1. Link Metric Message

   The format of Link Metric Message is described below.


    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
   +---------------+---------------+-------------------------------+
   |    Version    |    Reserved   |             Length            |
   +---------------+---------------+-------------------------------+
   |                                                               |
   +                         Timestamp                             +
   |                                                               |
   +---------------+---------------+-------------------------------+
   |   Hash Type   |  Hash Length  |        Hash Value...          |
   +---------------+---------------+                               +
   |                                                               |
   |                                                               |
   +---------------------------------------------------------------+
   |                                                               |
   |                            Options                            |
   |                                                               |
   +---------------------------------------------------------------+


      Version
         8-bit unsigned integer indicates the version of this protocol.
         Set to 1.

      Reserved
         This field is unused for now.  The value MUST be initialized to
         0 by the sender and MUST be ignored by the receiver.

      Length
         16-bit unsigned integer indicates the length in octets of the
         message, including the version, reserved and the length field.

      Timestamp
         64-bit unsigned integer indicates the time of generating the
         message.  The MR MUST set this field to a 64-bit value
         specified by the Network Time Protocol[5].  This value MUST be
         greater than the timestamp value of any messages previously
         sent to the receiver.

      Hash Type
         8-bit unsigned integer indicates the type of hash algorism.
         The values shown below are decimal values.
         1       keyed-MD5



Morioka                  Expires January 9, 2006                [Page 6]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


         keyed-MD5 MUST be supported by all MRs.

      Hash Length
         8-bit unsigned integer indicates the length of the hash value
         field in octets.

      Hash Value
         This field is hash value generated by the method indicated in
         the hash type field and the length is indicated in the hash
         length field.

      Options
         The options field follows the hash value field.

6.1.1. Link Metric Option

   The format of the link metric option is described below.  Multiple
   link metric options can be included in a LMM.


    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
   +---------------+---------------+-------------------------------+
   |     Type      |    Length     |     Interface Identifier      |
   +---------------+---------------+-------------------------------+
   |                         Link Metric                           |
   +---------------------------------------------------------------+


      Type
         Set to 1.

      Length
         8-bit unsigned integer indicates the length in octets of this
         option, including the type and the length field.  Set to 8.

      Interface Identifier
         16-bit unsigned integer indicates the interface of the MR.
         This value is specified by the sender MR.

      Link Metric
         32-bit unsigned integer indicates the metric of interface.
         This value is generated by the method described in later
         section.

6.1.2. Prefix Option

   The format of the prefix option is described below.  Multiple prefix



Morioka                  Expires January 9, 2006                [Page 7]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


   options can be included in a LMM.


    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
   +---------------+---------------+---------------+---------------+
   |     Type      |    Length     |    Reserved   | Prefix Length |
   +---------------+---------------+---------------+---------------+
   |                                                               |
   +                                                               +
   |                                                               |
   +                     Mobile Network Prefix                     +
   |                                                               |
   +                                                               +
   |                                                               |
   +---------------------------------------------------------------+


      Type
         Set to 6.

      Length
         8-bit unsigned integer indicates the length in octets of this
         option, including the type and the length field.  Set to 20 in
         decimal.

      Reserved
         This field is unused for now.  The value MUST be initialized to
         0 by the sender and MUST be ignored by the receiver.

      Prefix Length
         8-bit unsigned integer indicates the prefix length of the IPv6
         prefix contained in the option.

      Mobile Network Prefix
         A 128-bit field containing the Mobile Network Prefix

6.1.3. Padding Option

   The format of the padding option is described below.  Multiple
   padding options can be included in a LMM.










Morioka                  Expires January 9, 2006                [Page 8]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


    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
   +---------------+
   |     Type      |
   +---------------+


      Type
         Set to 0.


6.2. Time Adjusting Message

   The format of Time Adjusting Message is described below.


    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
   +---------------+---------------+-------------------------------+
   |    Version    |    Reserved   |             Length            |
   +---------------+---------------+-------------------------------+
   |                                                               |
   +                         Timestamp                             +
   |                                                               |
   +---------------+---------------+-------------------------------+
   |   Hash Type   |  Hash Length  |        Hash Value...          |
   +---------------+---------------+                               +
   |                                                               |
   |                                                               |
   +---------------------------------------------------------------+
   |                                                               |
   |                            Options                            |
   |                                                               |
   +---------------------------------------------------------------+


      Version
         8-bit unsigned integer indicates the version of this protocol.
         Set to 1.

      Reserved
         This field is unused for now.  The value MUST be initialized to
         0 by the sender and MUST be ignored by the receiver.

      Length
         16-bit unsigned integer indicates the length in octets of the
         message, including the version, reserved and the length field.




Morioka                  Expires January 9, 2006                [Page 9]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


      Timestamp
         64-bit unsigned integer indicates the time of generating the
         message.  The MR MUST set this field to a 64-bit value
         specified by the Network Time Protocol.

      Hash Type
         8-bit unsigned integer indicates the type of hash algorism.
         The values shown below are decimal values.
         1       keyed-MD5
         keyed-MD5 MUST be supported by all MRs.

      Hash Length
         8-bit unsigned integer indicates the length of the hash value
         field in octets.

      Hash Value
         This field is hash value generated by the method indicated in
         the hash type field and the length is indicated in the hash
         length field.

      Options
         The options field follows the hash value field.  No options are
         defined for now.

6.3. Hash Value

   The hash value is used for authentication of the message.  This pro-
   tocol supports the following hash types.

6.3.1. keyed-MD5

   In case of using keyed-MD5[6] for authentication, the hash value is
   generated from the following byte stream with "prefix+suffix" mode.

   - the shared secret defined between the MRs and by hash type,
     followed by
   - the message with hash value field filled by 0 excluding UDP
     and IP headers, followed by
   - the shared secret again

   Then the hash value field is filled with the computed value.

7. Link Metric

   The link metric is the sum of the link quality value of the interface
   and the pre-configured preference value, with a exception.  The
   exception is the case the link quality value is 0.  In this case the
   link metric MUST set to 0.



Morioka                  Expires January 9, 2006               [Page 10]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


   The link metric is 32-bit unsigned integer and the larger interface
   metric means the interface has higher priority.  If a metric is 0, it
   means the interface is unavailable or will be going to be
   unavailable, for example, the interface of multi-channel media will
   start channel scan.

   The link quality value is 16-bit unsigned integer.  This value
   changes dynamically according to the quality of the link.  The MR
   MUST set it to the value by the profile defined for the media by
   other document.

   The preference value is 32-bit unsigned integer and MUST NOT be
   greater than 0xffff0000.



8. Security Consideration

   The MR MUST filter the received messages by their source IP address
   and the hash value for avoiding the attack of fake messages.  Replay
   attack is avoidable by using the timestamp.


9. References

   [1]  Bradner, S., "Key words for use in RFCs to Indicate Requirement
        Levels", BCP 14, RFC 2119, March 1997.

   [2]  Manner, J. and M. Kojo, Eds., "Mobility Related Terminology",
        RFC 3753, June 2004.

   [3]  Ernst, T., and H.-Y. Lach, "Network Mobility Support
        Terminology", Work in Progress, October 2004.

   [4]  Conta, A., "Internet Control Message Protocol (ICMPv6) for the
        Internet Protocol Version 6 (IPv6) Specification", RFC 2463,
        December 1998.

   [5]  Mills, D., "Network Time Protocol (Version 3):
        Specification, Implementation and Analysis", RFC 1305, March
        1992.

   [6]  Rivest, R., "The MD5 Message-Digest Algorithm", RFC 1321,
        April 1992.


Authors' Addresses




Morioka                  Expires January 9, 2006               [Page 11]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


   Hitoshi Morioka
   ROOT INC.
   2-1-22-307 Momochihama,
   Sawara-ku, Fukuoka
   814-0001
   Japan

   EMail: hmorioka@root-hq.com











































Morioka                  Expires January 9, 2006               [Page 12]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005


Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.


Disclaimer of Validity

   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 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.


Copyright Statement

   Copyright (C) The Internet Society (2005).  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.


Acknowledgment

   Funding for the RFC Editor function is currently provided by the
   Internet Society.




Morioka                  Expires January 9, 2006               [Page 13]


Internet-Draft     Mobile Router Cooperation Protocol          July 2005





















































Morioka                  Expires January 9, 2006               [Page 14]