Ad-Hoc Network Autoconfiguration T. Boot (Autoconf) Infinity Networks Internet-Draft A. Holtzer Expires: January 19, 2009 TNO ICT July 18, 2008 Border Router Discovery Protocol (BRDP) based Address Autoconfiguration draft-boot-autoconf-brdp-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 19, 2009. Abstract Mobile Ad hoc Networks may be attached to a fixed infrastructure network, like the Internet. This document specifies a mechanism for Border Router discovery and utilization in such a subordinate, possibly multi-homed, MANET. It provides facilities for choosing the best Border Router and configuring IP addresses needed for communication between MANET nodes and nodes in the fixed infrastructure via the selected Border Router. Boot & Holtzer Expires January 19, 2009 [Page 1] Internet-Draft BRDP July 2008 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Protocol overview and functioning . . . . . . . . . . . . . . 5 3.1. Border Router Discovery Protocol (BRDP) . . . . . . . . . 5 3.2. BRDP-based Autoconf . . . . . . . . . . . . . . . . . . . 6 3.3. Path setup and session continuity . . . . . . . . . . . . 6 4. Border Router Discovery Protocol . . . . . . . . . . . . . . . 7 4.1. Border Router Information Option (BRIO) . . . . . . . . . 7 4.1.1. BRIO Base option . . . . . . . . . . . . . . . . . . . 7 4.1.2. BRIO suboptions . . . . . . . . . . . . . . . . . . . 9 4.2. BRDP processing . . . . . . . . . . . . . . . . . . . . . 11 4.2.1. Generation and transmission of BRDP messages . . . . . 11 4.2.2. BRDP message reception . . . . . . . . . . . . . . . . 12 4.2.3. BRIO cache maintainance . . . . . . . . . . . . . . . 13 4.2.4. BRDP loop prevention . . . . . . . . . . . . . . . . . 15 4.3. Unified Path Metric (UPM) . . . . . . . . . . . . . . . . 16 5. BRDP-based Autoconf . . . . . . . . . . . . . . . . . . . . . 17 5.1. Border Router selection . . . . . . . . . . . . . . . . . 17 5.1.1. Border Router Selection based on UPM . . . . . . . . . 17 5.1.2. Border Router Selection based on BRIO flags and options . . . . . . . . . . . . . . . . . . . . . . . 17 5.2. MANET Address generation . . . . . . . . . . . . . . . . . 18 6. Path setup, routing and session continuity . . . . . . . . . . 20 7. Support for IPv4 . . . . . . . . . . . . . . . . . . . . . . . 21 8. IANA considerations . . . . . . . . . . . . . . . . . . . . . 22 9. Security Considerations . . . . . . . . . . . . . . . . . . . 22 10. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22 11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 23 11.1. Normative reference . . . . . . . . . . . . . . . . . . . 23 11.2. Informative Reference . . . . . . . . . . . . . . . . . . 23 Appendix A. Change Log From Previous Version . . . . . . . . . . 25 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 25 Intellectual Property and Copyright Statements . . . . . . . . . . 26 Boot & Holtzer Expires January 19, 2009 [Page 2] Internet-Draft BRDP July 2008 1. Introduction The Autoconf workgroup is chartered to standardize mechanisms to be used by ad hoc network nodes for configuring unique local and/or globally routable IPv6 addresses. Issues and requirements related to prefix and/or address providing entities shall be addressed. The reader is expected to be familiar with "Mobile Ad hoc Network Architecture" [I-D.ietf-autoconf-manetarch] and "Address Autoconfiguration for MANET: Terminology and Problem Statement" [I-D.ietf-autoconf-statement]. This document describes a complete solution for Autoconf in subordinate MANETs. The solution makes use of existing protocols to the maximum extent feasible. One new protocol is defined for Border Router discovery. All other mechanisms used are existing IETF protocols. The Autoconf solution for subordinate MANETs uses two phases: o Discovery of one or more Border Routers o Selection of a Border Router and autoconfiguration of globally routable IPv6 addresses to be used in conjunction with that Border Router Address uniqueness is assured by IPv6 address generation mechanisms used. After address configuration it has to be assured that traffic sent with the configured globally routable IPv6 address actually uses the selected Border Router. This and other issues related to routing are outside the scope of Autoconf and will be described in another document in more detail. Boot & Holtzer Expires January 19, 2009 [Page 3] Internet-Draft BRDP July 2008 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 RFC2119 [RFC2119]. Readers are expected to be familiar with all the terms defined "Mobility Related Terminology" [RFC3753], "Mobile Ad hoc Network Architecture" [I-D.ietf-autoconf-manetarch] and "Address Autoconfiguration for MANET: Terminology and Problem Statement" [I-D.ietf-autoconf-statement]. Autoconf Ad hoc Network Autoconfiguration BRDP Border Router Discovery Protocol BRIO Border Router Information Option UPM Uniform Path Metric MANET Generated Address Globally unique and topologically correct IPv6 address generated to enable connectivity between nodes in the MANET and Corresponding Nodes in the fixed infrastructure via a Border Router MANET A routing domain containing MANET routers [I-D.ietf-autoconf-manetarch]. Boot & Holtzer Expires January 19, 2009 [Page 4] Internet-Draft BRDP July 2008 3. Protocol overview and functioning In this section, the subcomponents of BRDP-based address autoconfiguration are briefly introduced. 3.1. Border Router Discovery Protocol (BRDP) BRDP is a simple distance vector protocol that distributes Border Router information, where each MANET Router selects one or more Border Routers and forwards the Border Router information in the MANET. It extends the IPv6 Neighbor Discovery Protocol (NDP) [RFC4861] to make it carry information and metrics which help a MANET Router to select a Border Router and to help to configure addresses for communication with the fixed infrastructure. BRDP is a derivative of Tree Discovery [I-D.thubert-tree-discovery], one of the candidate protocols for Routing Over Low power and Lossy networks (ROLL). This document describes a protocol that suits the Autoconf requirements and is particularly designed for address autoconfiguration in subordinate, possibly multi-homed, Mobile Ad hoc Networks. BRDP uses ICMP Router Advertisement (RA) messages in NDP to distribute Border Router information by extending it with the Border Router Information Option (BRIO). BRIO allows MANET Routers to advertise Border Router reachability, including information for selecting a preferred Border Router. A MANET Router selects at least one BRIO from its cache, see Section 4.2.3, for advertizing. BRIOs are distributed hop by hop from a Border Router downwards in the MANET using a tree structure. The presence of multiple Border Routers results in multiple, potentially overlapping logical trees, i.e. a Directed Acyclic Graph (DAG). Flood reduction mechanisms MAY be used. First of all, a MANET Router MAY filter BRIOs, based on a path metric. The path metric is the advertized bidirectional distance to the fixed infrastructure, via that Border Router. Secondly, a MANET flooding reduction mechanism MAY be used, if a MANET protocol running in the MANET provides this service. BRDP MAY carry detailed information of the Border Router, such as a provider name and AAA options. AAA enables providers to control access to the Border Routers. MANET Routers MAY select a Border Router based on preferences for a provider. BRDP MAY also be used to select an Access Router for Mobile IPv6, as the Border Router option provides information for paths to the fixed Boot & Holtzer Expires January 19, 2009 [Page 5] Internet-Draft BRDP July 2008 infrastructure. 3.2. BRDP-based Autoconf BRDP provides prefix information to configure MANET Generated Addresses. A MANET Generated Address is a globally unique and topologically correct IPv6 address generated to enable connectivity between nodes in the MANET and Corresponding Nodes in the fixed infrastructure via a Border Router. The nodes using BRDP-based Autoconf MUST implement a mechanism to generate a unique 64-bit Interface Identifier. A high probability of uniqueness can be achieved by using Modified EUI-64 format-based Interface Identifiers [RFC4291] or by generating these identifiers randomly [RFC4941] or by means of a well-distributed hash function [RFC3972]. The generated Interface Identifier is combined with a BRDP provided 64-bit prefix, thus forming a topologically correct address. In this document, it is assumed the fixed infrastructure is the Internet and globally unique addresses are used. Border Routers MUST have a globally unique and reachable 64-bit prefix. The mechanisms described in this document are compatible with unique local addresses [RFC4193]. An implementation MAY provide configuration options for Border Router selection based on offered global prefixes or unique local prefixes, in cases where both types are used in the same MANET. 3.3. Path setup and session continuity After obtaining an address and selecting a Border Router, some additional mechanism(s) have to be used to enforce the use of the correct Border Router and to enable session continuity. This document does not prescribe any solutions that should be used for this purpose. Protocols such as NEMO basic support [RFC3963] and Mobility Support in IPv6 [RFC3775] are possible solutions that MAY be used. Boot & Holtzer Expires January 19, 2009 [Page 6] Internet-Draft BRDP July 2008 4. Border Router Discovery Protocol This section explains the details of BRDP discussing the Border Router Information Option (BRIO), the generation, transmission, forwarding and reception of BRIOs and BRIO cache maintainance. 4.1. Border Router Information Option (BRIO) The Border Router Information Option carries information that allows a MANET Router to select and utilize a Border Router. 4.1.1. BRIO Base option The BRIO is a container option, which MAY contain a number of suboptions. The BRIO base option groups the minimum information set that is mandatory in all cases. 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 |A|F|E|L|S|rsvd | Hopcount | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + + | | + Border Router Address + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Uniform Path Metric | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | sub-option(s)... +-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: BRIO base option Fields: Boot & Holtzer Expires January 19, 2009 [Page 7] Internet-Draft BRDP July 2008 Type: 8-bit identifier of the Router Advertisement option type. The value of this option identifier is to be determined. Length: 8-bit unsigned integer. The length of the option (including the type and length fields) in units of 8 octets. The minimum BRIO option length is 4. AAA(A): Flag indicating whether the Border Router requires authentication and authorization. When set, a Service Selection suboption immediately follows the BRIO base option. This document does only describe BRIO forwarding rules considering the A-flag and Service Selection suboption. Details on performing AAA are out-of-scope for this document. Floating(F): When the F-flag is set, the Border Router has lost contact with the fixed infrastructure. MANET Routers SHOULD stop using Border Routers that indicate that they are floating. Emergency Response Services(E): When the E-flag is set, the Border Router provides support for emergency response services. Details on applications for emergency response services are out-of-scope for this document. The E-flag helps selecting BRIOs to be distributed in the MANET, BRIO distribution SHOULD enable access to emergency response services for all MANET nodes. Loop-prone(L): When the L-flag is set, an upstream MANET Router cannot guarantee a loop-free path to the Border Router advertized in this BRIO. Solicitation Response(S): When the S-flag is set, the Border Router requests forwarding of the BRIO downstream the BRIO forwarding tree as a response to a special Router Solicitation. This provides a mechanism to speed up convergence, requested by a downstream MANET Router. Boot & Holtzer Expires January 19, 2009 [Page 8] Internet-Draft BRDP July 2008 rsvd, reserved: Reserved bits. Set to 0. Hopcount: 8-bit field registering the number of hops from the advertizing MANET Router to the Border Router. Border Routers send a BRIO with its Hopcount set to zero. MANET Routers increment the Hopcount by one when forwarding a BRIO. Hopcount is used to facilitate loop-free BRIO forwarding. Border Router Address: 128-bit address of the Border Router. The Border Router is expected to add its own address as a /128 prefix in the MANET routing system. Uniform Path Metric (UPM): A measure for the quality of a path. Uniform Path Metric is set to some initial value by the Border Router and is incremented by each MANET Router forwarding the BRIO. Border Router selection is based on UPM and optionally on other information. UPM is used to facilitate loop-free BRIO forwarding. Sequence Number: 16-bit unsigned integer set by the Border Router and incremented with each new BRIO it sends on a link. It is propagated without change down the tree. 4.1.2. BRIO suboptions In addition to the BRIO Base option, a number of suboptions are defined. Suboptions MAY have alignment requirements. 4.1.2.1. Pad suboption The Pad suboption format is as follows: 0 0 1 2 3 4 5 6 7 +-+-+-+-+-+-+-+-+ | Type = 0 | +-+-+-+-+-+-+-+-+ Boot & Holtzer Expires January 19, 2009 [Page 9] Internet-Draft BRDP July 2008 Figure 2: Pad suboption Fields: Type = 0 8-bit identifier of the Pad suboption type. The option identifier is determined as 0. The format of the Pad suboption has neither an suboption length nor suboption data fields. The Pad suboption is used to insert one octet of padding in the BRIO to enable alignment, either between suboptions or for the whole suboption container. 4.1.2.2. Service Selection suboption Each BRIO MAY have a single Service Selection suboption, identifying the Service Provider and/or the provided service offered by the Border Router. The Service Selection suboption MUST be the first BRIO suboption. The Service Selection suboption is equivalent to the Service Selection Mobility Option defined in "Service Selection for Mobile IPv6" [RFC5149]. 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 = 1 | Length | Identifier... | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3: Service Selection suboption Fields: Type = 1 8-bit identifier of the Service Selection suboption type. The suboption identifier is determined as 1. Length: Boot & Holtzer Expires January 19, 2009 [Page 10] Internet-Draft BRDP July 2008 8-bit unsigned integer. The length represents the length of the Service Selection Identifier in octets, excluding the suboption type and length fields. Usage of the Length field is equivalent to [RFC5149]. Identifier: A variable length UTF-8 encoded Service Selection Identifier string used to identify the Border Router service provider and optionally the type of service. Valid examples are 'ims', 'voip' and 'voip.companyxyz.example.com'. A Border Router MAY offer multiple services using multiple BRIOs. However, each BRIO MUST use a unique Border Router address. 4.2. BRDP processing BRDP messages are initiated by Border Routers. MANET Routers forward these messages using ICMP ND Router Advertisements. The main BRDP processing functions of a MANET Router are generation, transmission and reception of BRDP messages and the maintainance a BRIO cache. 4.2.1. Generation and transmission of BRDP messages A BRDP message is a Router Advertisement that includes a set of BRIOs. BRIOs always originate from a Border Router. A Border Router stores the information on the interface it uses for connecting to the infrastructure in its BRIO cache. In BRDP, a Border Router is also a MANET Router. When a MANET Router sends a Router Advertisement, it SHOULD include a set of BRIOs by appending them to the message as described in Section 4.1. The maximum number of BRIOs in a single BRDP message is a MANET Router configuration parameter. BRIOs are selected from the BRIO cache. BRIO selection is done based on the information stored in the BRIO cache. Note that BRIO selection MAY be depending on the requirements of the implementation. As a minimum, the following rules apply to a MANET Router selecting BRIOs for sending or forwarding: o BRIOs with the L-flag set SHOULD NOT be selected. The BRIO selection algorithm MUST implement a loop avoidance mechanism, described in Section 4.2.4. o At a minimum, one BRIO with the E-flag set MUST be selected, when such an entry exists in the BRIO Cache. Boot & Holtzer Expires January 19, 2009 [Page 11] Internet-Draft BRDP July 2008 o BRIO selection SHOULD select a number of BRIOs with distinct Service Selection Identifiers, where the selection mechanism MAY use a preference scheme selecting and filtering Service Selection Identifiers. o The UPM and Hopcount fields of the BRIO to be sent are updated. The calculated UPM increment is added to the UPM and the Hopcount is incremented by 1. Incremention of UPM MAY be governed by a hysteresis and dampening mechanism. Also forecasting information MAY be used. Router Advertisements are sent in response to Router Solicitation messages or unsolicited with a uniformly-distributed random interval that falls between 30 milliseconds, specified in RFC3775 [RFC3775] and 1800 seconds, specified in RFC4861 [RFC4861]. BRDP assumes unsolicited multicast Router Advertisements have a somewhat stable interval. The RA Advertisement Interval Option MAY provide the maximum interval being used [RFC3775] or alternatively the interval can be measured during BRIO reception. In addition, the MANET Router MAY send a Router Advertisement when an important change in a to be sent BRIO would occur. The Border Router MAY request that the sent BRIO SHOULD be forwarded instantly downstream in the MANET, by setting the S-flag. These additional Router Advertisements are processed similar to responses on Router Solicitations. A BRDP flooding reduction mechanism MAY be used, in order to reduce redundant BRIO distribution. Some MANET protocols can provide information for the flooding reduction mechanism. No additional protocol is required. A MANET Router SHOULD inform downstream MANET Routers in case the path to a previous advertized Border Router is lost, by at least 3 times retransmitting the previously sent BRIO with a UPM value of 4294967295 or by selecting a BRIO that failed the loop prevention check, as indicated by the L-flag. The MANET Router SHOULD include an alternative BRIO for the same Service Selection Identifier in the to be sent BRDP message, if such a BRIO is available in the cache. 4.2.2. BRDP message reception When a MANET Router receives a BRDP message, it stores the Border Router information included in the message in a BRIO cache table. This information includes the BRIO itself and context information, such as the BRIO sender, a timestamp indicating when the most recent message was received and a measured or signaled RA interval. When a BRDP message is received, the Sequence Number fields of the contained BRIOs are checked; the Sequence Number of a received BRIO Boot & Holtzer Expires January 19, 2009 [Page 12] Internet-Draft BRDP July 2008 MUST be equal to or higher than the Sequence Number in the cache for an existing entry in the cache, with wrap-around checking. Otherwise, the BRIO will be discarded. BRIO messages do not need to be forwarded at fixed time intervals, because the RA intervals on different MANET Routers are not synchronized. Therefore, large gaps in Sequence Numbers may occur. Increment values between 0 and 65000 are accepted. Increment values between 65001 and 65535 are rejected. 4.2.3. BRIO cache maintainance Each MANET Router maintains a BRIO cache that stores all information on Border Routers. This information is obtained by receiving BRIOs or, in case of a Border Router, by getting information from the interface that connects to the fixed infrastructure. The cache also maintains context information for the BRIO such as the BRIO sender, history, statistics and status information. History information includes a timestamp indicating when the most recent message was received and a measured or signaled RA interval. Status information includes the BRIO selection outcome for BRIO forwarding as explained in Section 4.2.1 and the Border Router selected for own usage as explained in Section 5.1. Unique cache entries are maintained on (Border Router Address, address of the neighbor router that forwarded the BRIO) tuples. Status information is also maintained at Border Router Address and Service Selection Identifier aggregation level. Also information on neighbor MANET Routers is maintained. BRIO entries in the cache stay valid for a certain period of time. During this period, they can be used for Border Router selection by the MNR. The lifetime of a BRIO is determined by using the timing information sent along with the RA (RFC3775, section 7.3). Some values in the BRIO cache can be updated independent of incoming BRDP messages. A MANET Router MAY update the UPM based on link quality measurements performed in an environment with changing network topology. A MANET Router SHOULD indicate in its BRIO cache which BRIO entries are currently selected for forwarding and which BRIO entry contains the information about the Border Router that is currently selected for infrastructure connectivity. Border Router Selection MAY take place after the UPM of a BRIO entry has been updated. For each Border Router listed in the cache, the UPM-loop-prevention- threshold and the Hopcount-loop-prevention-threshold variables are maintained. These variables are used by the loop prevention mechanism described in Section 4.2.4. The thresholds are set or updated when sending BRDP messages. When sending a BRIO with a Boot & Holtzer Expires January 19, 2009 [Page 13] Internet-Draft BRDP July 2008 higher Sequence Number than the previously sent BRIO for that Border Router, the threshold variables are set to equal the UPM and Hopcount values in BRIO to be sent. When sending a BRIO with the same Sequence Number as the previously sent BRIO, the loop-prevention- thresholds are updated if either the UPM or Hopcount of the outgoing BRIO is lower than the threshold. In case the link to the MANET Router from which a BRIO has been received is broken, the UPM of the BRIO entry in the cache is set to the maximum value, i.e. 4294967295. A cache cleanup routine SHOULD run at regular intervals to get rid of stale entries. Stale entries are removed when the entry is not updated for 5400 seconds or all of the following conditions are met: o The stale entry is not used by the MANET Router itself. o The stale entry was not selected for forwarding in the last Router Advertisement. o The stale entry was not recently updated by a received BRIO. In this context, recently is defined as a) within its own unsolicited multicast Router Advertisements interval and b) shorter than 3 times the measured senders unsolicited multicast Router Advertisements interval. Cache entries MAY also be removed, under the condition that the BRIO cache has reached a configured maximum number of entries and a new, to be stored BRIO is received. A removal candidate is selected based on: o The candidate entry is not used by the MANET Router itself. o The candidate entry was not selected for forwarding in the last Router Advertisement. o The candidate entry is redundant; other information for the same Border Router is stored in the cache with a better UPM and / or was received more recently. o The candidate entry is redundant; other information for the same Service Selection Identifier is stored in the cache with a better UPM and / or was received more recently. o The candidate entry is less attractive; other Border Routers are stored in the cache with better UPM and / or were received more recently. Boot & Holtzer Expires January 19, 2009 [Page 14] Internet-Draft BRDP July 2008 4.2.4. BRDP loop prevention A MANET Router MUST check specific attributes of candidate BRIOs in order to ensure loop-free operation. Each BRIO sent out by and originating from a Border Router has an increased Sequence Number. This BRIO is forwarded in the MANET and each receiving MANET Router uses it to update the old outdated BRIO Sequence Number stored in the BRIO cache. Between these BRIO Sequence updates, MANET Routers MAY repeatedly send BRIOs with a constant Sequence Number and an updated UPM or Hopcount. UPM, Hopcount and their loop-prevention-threshold values are used in BRDP loop prevention. Loop-free operation is guaranteed as long as at least one of the following conditions is true: o The BRIO has a higher Sequence Number than a BRIO for this Border Router sent before. Using wrap-around logic, increments up to 32768 are acceptable. (wrap-around logic needs checking) o The BRIO has the same Sequence Number as a BRIO for this Border Router sent before and the UPM value is equal to or lower than the UPM-loop-prevention-threshold for this Border Router. o The BRIO has the same Sequence Number as a BRIO for this Border Router sent before and the Hopcount is equal to or lower than the Hopcount-loop-prevention-threshold for this Border Router. When no candidate BRIO for a Border Router is available, the MANET Router SHOULD select the previously sent BRIO. In such a case, the downstream branch for that BRIO is getting 'frozen', meaning it has to wait for up-to-date information if it wants to be sure to have a loop-free path. Downstream MANET Routers MAY jump to other branches of the BRIO forwarding tree, as long as their path to the Border Router is shortened by lower UPM or by lower Hopcount. A new BRIO sent by the Border Router, thus with a newer Sequence Number, 'thaws' a "loop-prone BRIO forwarding tree". In some circumstances, a MANET Router MAY select a BRIO for forwarding that fails the loop prevention check. For example, the link to the upstream neighbor is lost and an alternative path is available, with a higher UPM and a higher Hopcount or with a lower Sequence Number. The MANET Router cannot assure selecting this candidate BRIO provides a loop-free topology, but it could be better than sending nothing or repeatedly sending a BRIO with a maximum UPM value. When a MANET Router forwards a BRIO that failed the loop prevention check, the L-flag MUST be set. When a MANET Router selected a BRIO that failed the loop prevention Boot & Holtzer Expires January 19, 2009 [Page 15] Internet-Draft BRDP July 2008 check, a duplicate packet detection mechanism MUST be implemented. MANET Routers that select a BRIO with the L-flag set SHOULD have a duplicate packet detection mechanism implemented. Details on duplicate packet detection are out-of-scope for this document. A MANET Router that detects an attractive candidate BRIO but is prohibited from using it, because of the loop prevention check, MAY send a special Router Solicitation message to the Border Router. The Border Router responds to such a Router Solicitation message with a BRIO with the S-flag set. Sending Router Solicitations MUST be rate limited to at most twice the reception rate of the attractive candidate BRIO. A next version of this document will include a specification for the special Router Solicitation message. 4.3. Unified Path Metric (UPM) Unified Path Metric (UPM) is a measure for the quality of the path between nodes. It is a common metric for both the inbound and the outbound path. Every entry in the BRIO cache has an associated UPM value. UPM MAY be depending on information obtained from lower layers. In BRDP, bidirectional UPM is used for optimizing Border Router selection for both inbound and outbound traffic. In some cases it is far more important to select the best path from the Border Router to the MANET Router than the reverse path. Before composing a set of BRIOs, the UPM increment is calculated for each MANET Router from which a BRIO has been received. UPM increments have a minimum value of 1 and SHOULD incorporate bidirectional MANET link metrics for that neighbor. Since the UPM uses 32 bits, the maximum value is 4294967295. Using a 32-bit UPM and a maximum hop count of 255 the UPM increment value per hop MUST be between 1 and 16777215. The UPM increment therefore is a 24-bit value. Further discussion on metrics and how the UPM value is determined is outside the scope of this document. Boot & Holtzer Expires January 19, 2009 [Page 16] Internet-Draft BRDP July 2008 5. BRDP-based Autoconf 5.1. Border Router selection When a MANET Router needs to communicate to the fixed infrastructure, it MUST select a set of Border Routers. Information concerning available Border Routers is kept in the BRIO cache. The Border Router selection mechanism MAY also be triggered by received BRDP messages, changes in metrics on links to neighbors advertising BRDP messages, changes in MANET metrics to Border Routers used or on a time-driven basis. The Border Router selection algorithm SHOULD be based on Service Selection Identifiers (if available) and UPM. UPM indicates the best Border Router. However, such a Border Router MAY require authorization. The A-flag and the Service Selection Identifier provide the prime information for selecting a preferred provider or preferred service. The Border Router selection algorithm MAY be extended with any other information. Future defined BRIO suboptions could provide additional information. Border Router selection MAY be based on the type of the Border Router Address, e.g. a globally unique address or a unique local address. Border Router selection does not select a routing path to the Border Router. 5.1.1. Border Router Selection based on UPM Assuming authentication requirements (if any) are satisfied, the MANET Router uses the UPM for Border Router selection preferring the best bi-directional path between the MANET Router and Border Router. Note that the BRIO UPM includes the initial metric set by the Border Router and is not solely a metric between the MANET Router and the Border Router. The initial metric set by Border Routers can be used for Border Router preference and for load balancing. In order to use an up-to-date UPM in the selection procedure the UPM increment is calculated by the MANET Router before selecting a Border Router. UPM is discussed in Section 4.3. 5.1.2. Border Router Selection based on BRIO flags and options Some BRIO flags MUST and some flags MAY assist in Border Router selection. o The A-flag and the Service Selection Identifier provide the prime information for selecting a preferred provider or preferred Boot & Holtzer Expires January 19, 2009 [Page 17] Internet-Draft BRDP July 2008 service. Details on authentication and authorization to the Border Router are out-of-scope of this document. o A Border Router could indicate that it is not connected to the fixed infrastructure, signaled with the F-flag. Usage of this Border Router SHOULD be avoided, since it is not a Border Router anymore. o For emergency response applications, a Border Router providing such services, indicated by the E-flag, SHOULD be selected. o The guarantee for a loop-free path to a Border Router can temporary be withdrawn, indicated by the L-flag set. Usage of this Border Router SHOULD be avoided. The Border Router selection algorithm MAY be extended with any other information. Future defined BRIO suboptions could provide additional information. Border Router selection MAY be based on the type of the Border Router Address, e.g. a globally unique address or a unique local address. The Border Router selection algorithm MAY incorporate a hysteresis and dampening mechanism to prevent 'flip-flopping' between Border Routers. It MAY also take into account other information, such as history / statistics and status information tracked in the BRIO cache. A MANET Router MAY select multiple Border Routers for smooth handover implementing make-before-break. It MAY also use multiple Border Routers concurrently. A description how Border Routers can be used concurrently or how traffic is distributed over the Border Routers is out-of-scope for this document. 5.2. MANET Address generation The MANET Router MUST use a topologically correct address when communicating with corresponding nodes via the fixed infrastructure. Topologically correct addresses SHOULD be generated for each Border Router used. Only when it is known that for all Border Routers with a shared Service Selection Identifier or set of Service Selection Identifiers a commonly used address is accepted, a previously generated acceptable address can be re-used. A MANET Generated Address is used as a /128 prefix. It is constructed from a 64-bits Interface Identifier and a 64-bits prefix from the Border Router Address. This generated /128 address SHOULD be advertised in the MANET routing system. The MANET Generated Address MAY also be used for other traffic, either inside the MANET Boot & Holtzer Expires January 19, 2009 [Page 18] Internet-Draft BRDP July 2008 or towards the fixed infrastructure. For communication towards the fixed infrastructure, this address SHOULD only be used if the MANET Router is sure that the traffic is sent via the Border Router that was used for address generation. For the Interface Identifier used, the BRDP-based MANET Address Generation MUST implement a mechanism for generating a unique Interface Identifier. Known mechanisms are: o Modified EUI-64 format-based Interface Identifier, RFC4291 [RFC4291], based on IEEE 802 48-bit MAC address or IEEE EUI-64 identifier. However, this method does not guarantee identifiers are unique as duplicate MAC addresses can occur. o Generation of randomized Interface Identifiers, [RFC4941]. o Well-distributed hash function, RFC3972 [RFC3972]. After MANET Address Generation, RFC4429 Optimistic Duplicate Address Detection [RFC4429] SHOULD be used. Still, uniqueness is not fully guaranteed. Main reasons for non-uniqueness are merging of MANET segments, node movement, node misbehavior or address spoofing attacks. Details on handling this condition are out-of-scope for this document. Address generation for globally unique addresses and RFC4193 unique local addresses [RFC4193] is similar. Nodes MUST NOT use unique local addresses to communicate with a Border Router with a globally unique address. Nodes MUST NOT use globally unique addresses to communicate with a Border Router with a unique local address. In case a MANET Generated Addresses is needed, but no BRIO information is available, a MANET Router MAY generate an address using a unique local addresses [RFC4193] /64 prefix. A MANET Generated Addresses clean-up routine SHOULD run at regular intervals to get rid of stale addresses. Boot & Holtzer Expires January 19, 2009 [Page 19] Internet-Draft BRDP July 2008 6. Path setup, routing and session continuity Border Router selection and BRDP-based Autoconf is a MANET Router local mechanism. Without an additional mechanism, other MANET Routers are not notified of Border Router selections. As a consequence, it is not enforced that the Border Router chosen will actually be used for packets sent to a corresponding node via the fixed infrastructure. To ensure the use of the correct Border Routers other solutions are necessary. These solutions MAY be found in the direction of NEMO or a Routing Header. In addition to path setup, routing and session continuity are necessary for providing and maintaining connectivity between nodes in a MANET and nodes in the fixed infrastructure. Since this document focuses on autoconfiguration, mechanisms for path setup, routing and session continuity are outside its scope. These issues are to be discussed in future documents. Boot & Holtzer Expires January 19, 2009 [Page 20] Internet-Draft BRDP July 2008 7. Support for IPv4 BRDP-based Address Autoconfiguration is designed for IP version 6. The used mechanism for address generation extends the functionality specified in "IPv6 Stateless Address Autoconfiguration" (RFC4862, [RFC4862]). Therefore it does not support IPv4. Boot & Holtzer Expires January 19, 2009 [Page 21] Internet-Draft BRDP July 2008 8. IANA considerations The IANA is requested to define a new IPv6 Neighbor Discovery option for the Border Router Information Option, defined in this document. +------+----------------------------------+-----------+ | Type | Description | Reference | +------+----------------------------------+-----------+ | TBA | Border Router Information Option | [RFCXXXX] | +------+----------------------------------+-----------+ Figure 4: IANA BRIO assignment The registry for these options can be found at: http://www.iana.org/assignments/icmpv6-parameters The IANA is requested to create a new registration for BRIO suboptions. 9. Security Considerations BRDP-based address autoconfiguration inherits security considerations from MANET technology. Since it is a new mechanism based on ND it inherits security considerations from ND. Traffic anonimity and traffic flow confidentiality are important issues in MANET communications. Considerations related to traffic flows should be discussed in context with the mechanisms that are chosen to perform path setup, routing and session continuity and are therefore not covered by this document. A more detailed description on autoconfiguration security considerations is to be included in a next version of this document. 10. Acknowledgments The authors want to thank anyone involved in IETF on MANET and NEMO technology for their efforts on mobile network infrastructures. Special thanks to Pascal Thubert, Thomas Clausen and Ryuji Wakikawa for their efforts in defining MANEMO technology, which inspired the authors to compose this document. Also special thanks to Benny Tops and Ronald in 't Velt for reviewing. Boot & Holtzer Expires January 19, 2009 [Page 22] Internet-Draft BRDP July 2008 11. References 11.1. Normative reference [I-D.ietf-autoconf-statement] Baccelli, E., Mase, K., Ruffino, S., and S. Singh, "Address Autoconfiguration for MANET: Terminology and Problem Statement", draft-ietf-autoconf-statement-04 (work in progress), February 2008. [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, September 2007. [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless Address Autoconfiguration", RFC 4862, September 2007. [RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing Architecture", RFC 4291, February 2006. [RFC4941] Narten, T., Draves, R., and S. Krishnan, "Privacy Extensions for Stateless Address Autoconfiguration in IPv6", RFC 4941, September 2007. [RFC3972] Aura, T., "Cryptographically Generated Addresses (CGA)", RFC 3972, March 2005. [RFC4429] Moore, N., "Optimistic Duplicate Address Detection (DAD) for IPv6", RFC 4429, April 2006. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3775] Johnson, D., Perkins, C., and J. Arkko, "Mobility Support in IPv6", RFC 3775, June 2004. [RFC3963] Devarapalli, V., Wakikawa, R., Petrescu, A., and P. Thubert, "Network Mobility (NEMO) Basic Support Protocol", RFC 3963, January 2005. 11.2. Informative Reference [I-D.ietf-autoconf-manetarch] Chakeres, I., Macker, J., and T. Clausen, "Mobile Ad hoc Network Architecture", draft-ietf-autoconf-manetarch-07 (work in progress), November 2007. [RFC3753] Manner, J. and M. Kojo, "Mobility Related Terminology", Boot & Holtzer Expires January 19, 2009 [Page 23] Internet-Draft BRDP July 2008 RFC 3753, June 2004. [RFC5149] Korhonen, J., Nilsson, U., and V. Devarapalli, "Service Selection for Mobile IPv6", RFC 5149, February 2008. [RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast Addresses", RFC 4193, October 2005. [I-D.thubert-tree-discovery] Thubert, P., "Nested Nemo Tree Discovery", draft-thubert-tree-discovery-06 (work in progress), July 2007. Boot & Holtzer Expires January 19, 2009 [Page 24] Internet-Draft BRDP July 2008 Appendix A. Change Log From Previous Version o 00: Initial Document. Authors' Addresses Teco Boot Infinity Networks B.V. Elperstraat 4 Schoonloo 9443TL The Netherlands Email: teco@inf-net.nl Arjen Holtzer TNO Information and Communication Technology Brassersplein 2 Delft 2612CT The Netherlands Email: arjen.holtzer@tno.nl Boot & Holtzer Expires January 19, 2009 [Page 25] Internet-Draft BRDP July 2008 Full Copyright Statement Copyright (C) The IETF Trust (2008). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property 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. Boot & Holtzer Expires January 19, 2009 [Page 26]