home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Info 1997 December
/
Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso
/
drafts
/
draft_ietf_i
/
draft-ietf-ion-r2r-nhrp-00.txt
< prev
next >
Wrap
Text File
|
1997-02-03
|
30KB
|
779 lines
Network Working Group Yakov Rekhter
Internet Draft Cisco Systems
Expiration Date: August 1997 February 1997
NHRP for Destinations off the NBMA Subnetwork
draft-ietf-ion-r2r-nhrp-00.txt
1. Status of this Memo
This document is an Internet-Draft. 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.''
To learn the current status of any Internet-Draft, please check the
``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe),
munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or
ftp.isi.edu (US West Coast).
2. Abstract
The NBMA Next Hop Resolution Protocol (NHRP) [NHRP] specifies a
mechanism that allows a source station (e.g., a host or a router) on
an NBMA subnetwork to find the NBMA subnetwork address address of a
destination station when the destination station is connected to the
NBMA subnetwork. For the case where the destination station is off
the NBMA subnetwork the mechanism described in [NHRP] allows to
determine the NBMA subnetwork address of an egress router from the
NBMA subnetwork that is ``nearest'' to the destination station.
However, the ability of determining the egress router is constrained
to the destinations that are directly connected to the egress router.
This document describes extensions to the NBMA Next Hop Resolution
Protocol (NHRP) [NHRP] that allow to acquire and maintain the
information about the egress router without constraining the
destination(s) to be directly connected to the egress router.
Yakov Rekhter [Page 1]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
3. NHRP Target Information
The mechanism described in this document allows to find an egress
router for either a single destination, or a set of destinations
(where the set is expressed as a single address prefix). Since a
single destination is just a special case of a set of destinations,
for the rest of the document we will always talk about a set of
destinations, and will refer to this set as an ``NHRP target''.
The NHRP target is carried in the NHRP Request, Reply, and Purge
messages as an address prefix (using the Destination Prefix Length
extension). This document requires that the NHRP target shall not be
modified by the routers that forward the messages.
In general a router may maintain in its Forwarding Information Bas
(FIB) routes whose Network Layer Reachability Information (NLRI) that
exhibits a subset relation. Such routes are called overlapping
routes. To provide correct forwarding in the presence of overlapping
routes this document constrains an NHRP target by requiring that all
the destinations covered by the target must form a subset of the NLRI
of at least one route in the Forwarding Information Base (FIB) of the
router that either originates, or propagates an NHRP Request. For the
rest of the document we'll refer to this as the ``first NHRP target
constraint''. A station can originate an NHRP Request, and a router
can propagate an NHRP Request only if the NHRP target of the Request
does not violate the first NHRP target constraint.
A route (from a local FIB) whose NLRI forms a minimal superset of all
the destinations covered by the NHRP target is called an ``NHRP
forwarding route''. Observe, that by definition the set of
destinations covered by an NHRP target always exhibits a subset
relation to the set of destinations covered by the NHRP forwarding
route associated with the target.
This document further constrains origination/propagation of NHRP
Requests by prohibiting the NHRP target (carried by a Request) to
form a superset of the destinations covered by any of the routes in
the local FIB. The constraint applies both to the station that
originates an NHRP Request and to the routers that propagate the
Request. For the rest of the document we'll refer to this constraint
as the ``second NHRP target constraint''. A station can originate an
NHRP Request, and a router can propagate an NHRP Request only if the
NHRP target of the Request does not violate the second NHRP target
constraint. The second NHRP target constraint guarantees that
forwarding to all the destinations covered by the NHRP target would
be accomplished via a single (common) route, and this route would be
nothing, but the NHRP forwarding route for the target.
Yakov Rekhter [Page 2]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
4. NHRP Route Information
To allow routers along a path to unambiguously determine routing
domain boundaries, and to provide correct next hop information, the
NHRP Request carries the NHRP route information. The NHRP route
information is generated by the router that originates an NHRP
Request, but could be modified by the routers that forward the
Request.
The NHRP route information consists of two components, protocol
independent and protocol specific. The protocol independent
component consists of NLRI and the protocol type of the NHRP
forwarding route associated with the NHRP target. For RIP, OSPF, and
Dual IS-IS the protocol specific component is empty. For RIP-2 the
protocol specific component contains the Route Tag of the route.
Definition of the protocol specific component for other routing
protocols is outside the scope of this document.
[Discussion: it is not clear how much value is in carrying (and
updating) the NLRI information (as part of the NHRP route
information) for such protocols as RIP, OSPF, and Dual IS-IS.]
5. Processing NHRP Request
Processing of an NHRP Request is covered by two sets of rules: the
first set is independent of a particular routing domain, the second
set is specific to a particular routing domains.
5.1. Domain-independent rules
When a router receives a Request, the router uses the NHRP target
and the NHRP route information to check whether (a) the first and
the second NHRP target constraints are satisfied, (b) the router it
is in the same routing domain as the originator of the Request, and
if yes, then whether (c) it is a border router for that domain.
If the first NHRP target constraint is violated, the router reports
an error to the originator of the Request and terminates the query.
If the second NHRP target constraint is violated, then the router
sends back an NHRP Reply and terminates the query. The Reply should
indicate that the second NHRP target constraint was violated. The
Reply contains IP and NBMA addresses of the router.
If the NHRP forwarding route indicates next hop that is not on the
Yakov Rekhter [Page 3]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
same NBMA as the interface on which the Request was received, the
router sends back an NHRP Reply and terminates the query.
If a router receives a Request that is not annotated with the border
router information, then the router is either within the routing
domain that the originator of the Request is in, or is a border
router for that domain. In this case the router uses domain-specific
rules (see below) to determine whether it is a border router for the
routing domain that the originator of the request is in, or whether
it is just an internal router within the domain.
If the router is a border router for the routing domain that the
originator of the Request is in, then the router can either (a)
annotate the request with the IP and NBMA addresses associated with
the NHRP forwarding route for the NHRP target carried by the Request
and forward the Request (outside the domain), or (b) send back an
NHRP Reply (and thus terminate the query). The Reply contains the IP
and NBMA addresses associated with the NHRP forwarding route for the
NHRP target carried by the Request. The choice between (a) and (b)
is a local to the router matter.
If a router receives a Request that is annotated with the border
router information, then the originator of the Request and the router
are in different routing domains. In this case the router uses only
the NHRP target information to handle the Request.
5.2. Domain-specific rules
The following sections describes rules specific to particular routing
domains (e.g., RIP domain, OSPF domain).
5.2.1. RIP Domain
When a router receives a Request, such that (a) the NHRP route
information indicates RIP, (b) the router determines (using the
domain-independent rules) that it is in the same domain as the
originator of the Request, and (c) the domain-independent rules do
not require the router to terminate the query, the router checks if
the NHRP forwarding route is a RIP-learned route.
If it is a RIP-learned route, then the router replaces NLRI in the
NHRP route information of the Request with the NLRI of the NHRP
forwarding route, and forwards the Request to the next hop specified
by the route. Otherwise, the router and the originator of the
Request are in the same routing domain, and the router is a border
router for that domain.
Yakov Rekhter [Page 4]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
[Discussion: it is not clear what is the value of updating NLRI in
the NHRP route information.]
5.2.2. RIP-2 Domain
When a router receives a Request, such that (a) the NHRP route
information indicates RIP-2, (b) the router determines (using the
domain-independent rules) that it is in the same domain as the
originator of the Request, and (c) the domain-independent rules do
not require the router to terminate the query, the router checks if
the NHRP forwarding route is a RIP-2-learned route.
If it is a RIP-2-learned route, and the Route Tag of the route is the
same as the one carried in the NHRP route information of the Request,
then the router replaces the NLRI information in the NHRP route
information of the Request with NLRI of the NHRP forwarding route,
and forwards the Request to the next hop specified by the route.
Otherwise, the router and the originator of the Request are in the
same routing domain, and the router is a border router for that
domain.
[Discussion: it is not clear what is the value of updating NLRI in
the NHRP route information.]
5.2.3. OSPF Domain
When a router receives a Request, such that (a) the NHRP route
information indicates OSPF, (b) the router determines (using the
domain-independent rules) that it is in the same domain as the
originator of the Request, and (c) the domain-independent rules do
not require the router to terminate the query, the router checks if
the NHRP forwarding route is an OSPF-learned route.
If the route is an OSPF-learned route, but the router is neither an
Area Border Router (ABR), nor AS Boundary Router (ASBR), the router
forwards the Request to the next hop specified by the NHRP forwarding
route.
If the route is an OSPF-learned route, and the router is an ABR, then
the router replaces NLRI in the NHRP route information of the Request
with NLRI of the NHRP forwarding route, and forwards the Request to
the next hop specified by the route.
[Discussion: it is not clear what is the value of updating NLRI in
the NHRP route information.]
Yakov Rekhter [Page 5]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
If the route is not an OSPF-learned route, and the router is an ASBR,
then the router and the originator of the Request are in the same
routing domain, and the router is a border router for that domain.
If the route is not an OSPF-learned route, and the router is not an
ASBR, then the router indicates an error.
5.2.4. Dual IS-IS Domain
When a router receives a Request, such that (a) the NHRP route
information indicates Dual IS-IS, (b) the router determines (using
the domain-independent rules) that it is in the same domain as the
originator of the Request, and (c) the domain-independent rules do
not require the router to terminate the query, the router checks if
the NHRP forwarding route is a Dual IS-IS-learned route.
If the route is a Dual IS-IS-learned route, and the router is not a
L2 router, the router forwards the Request to the next hop specified
by the route.
If the route is not a Dual IS-IS-learned route, and the router is a
L2 router, then the router and the originator of the Request are in
the same routing domain, and the router is a border router for that
domain.
If the route is a Dual IS-IS-learned route, and the router is a L2
router, then the router replaces the NLRI information in the NHRP
route information of the Request with the NLRI of the NHRP forwarding
route, and forwards the Request to the next hop specified by the
route.
[Discussion: it is not clear what is the value of updating NLRI in
the NHRP route information.]
Yakov Rekhter [Page 6]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
6. Maintaining correct shortcut information
Once a router that originates an NHRP Request acquires the shortcut
next hop information, it is essential for the router to be able to
detect any changes that would affect the correctness of this
information. The following measures are intended to provide the
correctness.
Both ends of a shortcut have to monitor the status of the route that
was associated with the shortcut (the NHRP forwarding route). If the
status changes at the router that generate the NHRP Reply, this
router should send a Purge message, so that the NHRP Requester would
issue another NHRP. If the status changes at the Requester, the
Requester must issue another NHRP. This allows to ensure that when
both end of a shortcut are up, any changes in routing that impact
forwarding to any of the destination in the NHRP target would result
in a revalidation (via NHRP) of the shortcut.
Once a shortcut is established, the Requester needs to have some
mechanism(s) to ensure that the other end of the shortcut is alive.
Among the possible mechanisms are: (a) indications from the Data Link
layer, (b) presence of traffic in the reverse direction that comes
with the Link Layer address of the other end, (c) keepalives sent by
the other end. This is intended to suppress black holes, when the
next hop router in the shortcut (the router that generated Reply)
goes down.
A requester should establish a shortcut only after the requester
determines that the information provided by NHRP is fairly stable.
This is necessary in order to avoid initiating shortcuts that are
based on transients routing information, and thus would need to be
revalidated almost immediately anyway.
[Discussion: Should a router forward an NHRP Request based on a route
that is in a transient (e.g., holddown) state, or should the Request
be discarded ?]
[Discussion: what are the criteria to determine whether the
information provided by NHRP is "fairly stable" ?]
Yakov Rekhter [Page 7]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
7. Extensions to multi-domains shortcuts
While the NHRP mechanism described above is mostly constrained to the
routers within a single routing domain, in certain situations the
information provided by this mechanism could be sufficient to
establish shortcuts that would span multiple domains.
Consider an example where an NHRP Request was originated within a
particular routing domain A, and the NHRP target of the Request is in
some other routing domain B. Further assume that the border routers
in both A and B participate in a single common instance of BGP. Since
BGP preserves the next hop information across an NBMA network, the
routing information available at the border routers in A would
contain the next hop IP information that may be in some other routing
domain along the path to B, perhaps even in B itself. Therefore, when
a border router in A receives the Request, the router would annotate
the Request with the next hop information that is associated with a
router in some other routing domain, thus providing the information
needed to establish a shortcut that spans multiple routing domains.
[Discussion: BGP preserves the next hop IP information, but does not
carry NBMA address information. The NBMA address information could be
either added to BGP (as another attribute), or NHRP could be used to
resolve IP address to NBMA address mapping.]
[The following could be viewed as controversial. More discussion is
needed.]
While the ability of BGP to preserve the next hop information could
reduce the number of IP hops along a path, the information, by
itself, may not be sufficient to form a single IP hop across an NBMA
network. However, we could observe that once a router (e.g., a
border router) acquires a shortcut information, then as long as the
router has sufficient assurances that the information is correct, the
router could pass this information to other routers in response to
NHRP Requests. Since a border router (by definition) belongs to
multiple routing domains, passing the information through the border
router from one domain to another would be sufficient for
establishing shortcuts that span multiple routing domains.
For example, assume that a border router X within a given domain A
acquired the information needed to form a shortcut within A for a
given NHRP target (the target may be either within A or outside of
A). Further assume that X is also in some other routing domain B,
and there is a router Y in B that would like to acquire the shortcut
information for exactly the same NHRP target. If the NHRP Request
originated by Y would reach X, then when X receives the Request
rather than indicating itself as the next hop, X would use the
Yakov Rekhter [Page 8]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
shortcut information it already has to specify the next hop in the
Reply. Thus Y would have the information to construct a shortcut that
crosses domain's boundary.
If X would detect any changes in the information associated with the
shortcut (either due to local changes, or as a result of receiving a
Purge message), then X would reissue the NHRP Request, and also would
send a Purge message to Y. When Y would receive the Purge message
from X, Y would reissue the NHRP Request as well.
Additional complexity in handling multi-domains shortcuts arise if
routing information gets aggregated at the border routers (which
certainly happens in practice). Since BGP is the major protocol that
is used to exchange routing information across multiple routing
domains, we'll restrict our proposal to the case where the routing
information exchange across domains' boundaries is controlled by BGP.
If both the source and the destination domains are on a common NBMA
network, and the path between these two domains is also fully within
the same NBMA network, then we have only three routing domains to
deal with: source routing domain, BGP routing domain, and destination
routing domain. If the destination domain is not on the same NBMA as
the source domain, then we need to deal only with two domains - the
source and the BGP. Note that we treat all routers that participate
in a single (common) instance of BGP as a single BGP routing domain,
even if these routers participate in different intra-domain routing
protocols, or in different instances of the same intra-domain routing
protocol.
To simplify the presentation we decompose the problem into the
following three subproblems:
(a) how a border router in the domain that the originator of
the Request is in handles the Request (crossing IGP/BGP
boundary),
(b) how the Request is handled across the BGP domain, and
finally
(c) how a border router in the domain where the NHRP target is
in handles the Request (crossing BGP/IGP boundary).
Yakov Rekhter [Page 9]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
7.1. Handling NHRP Request at the source domain border router
When a border router receives an NHRP Request originated from within
its own (IGP) routing domain, the border router determines the NHRP
forwarding route for the NHRP target carried by the Request. If the
router already has the shortcut information for the forwarding route,
then the router uses this information to construct a Reply to the
source of the NHRP Request. Otherwise, the router originates its own
NHRP Request. The Request contains exactly the same NHRP target, as
was carried by the original Request; the NHRP route information
contains NLRI and the protocol (BGP) of the NHRP forwarding route.
The newly originated Request is sent to the next hop of the NHRP
forwarding route. Once the border router receives a Reply to its own
Request, the border router uses the next hop information from the
Reply to construct its own Reply to the source of the original NHRP
Request.
If the border router later on receives a Purge message for the NHRP
forwarding route, the border router treats this event as if there was
a local change in the NHRP forwarding route (even if the there was no
changes in the route).
7.2. Handling NHRP Request within the BGP domain
When a BGP router (e.g., a border router at the source domain)
originates an NHRP Request, this Request would be sent to a router
that is either
(a) an egress router from an NBMA network (since in the absence
of aggregation BGP preserves the next hop information),
or
(b) a border router within the domain that contains all the
destinations carried by the NHRP target, or
(c) a router that aggregates NLRI carried by the NHRP route
information of the Request.
With case (a) when the router receives the Request the router sends
back an NHRP Reply and terminates the query. Case (b) is handled as
described in the next section.
With case (c) when the router receives the Request, the router
determines the NHRP forwarding route for the NHRP target carried by
the Request and originates its own NHRP Request. The Request
contains exactly the same NHRP target, as was carried by the original
Yakov Rekhter [Page 10]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
request; the NHRP route information contains NLRI and the protocol
(BGP) of the NHRP forwarding route. The newly originated Request is
sent to the next hop of the NHRP forwarding route. Once the router
receives a Reply to its own Request, the router uses the next hop
information from the Reply to construct its own Reply to the source
of the original NHRP Request.
If the router later on receives a Purge message for the NHRP
forwarding route, the router treats this event as if there was a
change in the NHRP forwarding route (even if the there was no changes
in the route).
7.3. Handling NHRP Request at the destination domain border router
When a border router receives an NHRP Request from a BGP speaker, and
the border router determines that all the destinations covered by the
NHRP target of the Request are within the (IGP) domain of that border
router, the border router determines the NHRP forwarding route for
the NHRP target carried by the Request. The newly formed Request
contains exactly the same NHRP target as the received Request; the
NHRP route information contains NLRI and the protocol of the NHRP
forwarding route. The newly originated Request is sent to the next
hop of the NHRP forwarding route. Once the border router receives a
Reply to its own Request, the border router uses the next hop
information from the Reply to construct its own Reply to the source
of the original NHRP Request.
If the border router later on receives a Purge message for the NHRP
forwarding route, the border router treats this event as if there was
a change in the NHRP forwarding route (even if the there was no
changes in the route).
[Discussion: it is not clear what are the merits of carrying and
updating NLRI in the NHRP route information.]
Yakov Rekhter [Page 11]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
8. More state, less messages
It should be possible to reduce the number of Purge messages and
subsequent NHRP messages (caused by the Purge messages) by
maintaining more state on the border routers at the source and
destination domains, and the BGP routers that perform aggregation
along the path from the source to the destination.
Specifically, on these routers it would be necessary to keep the
information about all the NHRP targets for which the routers maintain
the shortcut information. This way when such a router determines
that the NHRP forwarding route (for which the router maintains the
shortcut information) changes due to some local routing changes, the
router could check whether these local changes impact forwarding to
the destinations covered by the NHRP targets. Only for the targets
that are impacted by the changes the router would send Purge
messages.
Note that this mechanism (maintaining NHRP targets) precludes the use
of Address Prefix Extension - the shortcut will be determined only
for the destinations covered by the NHRP target (so, if the target is
a single IP address, then the shortcut would be determined only for
this address).
9. Open issues
During routing transients it is quite possible that neither the
router that originates an NHRP Request for a particular NHRP target,
nor the router that terminates this Request (and sends back an NHRP
Reply) would experience any changes in the NHRP forwarding route
associated with the NHRP target. However, this may not be true for
the routers along the path that the NHRP Request would traverse. It
is not clear whether this could lead to a formation of a persistent
forwarding loop, even in the presence of the mechanisms described
above. Further study of this issue is needed before advancing the use
of NHRP for establishing shortcuts among routers.
The mechanisms described in this document assume that certain routers
along a path taken by an NHRP Request would be required to maintain
state associated with the NHRP forwarding route associated with the
NHRP target carried by the Request. However, it is quite clear that
the router(s) may also lose this state. Further study of the impact
of losing the state is needed before advancing the use of NHRP for
establishing shortcuts among routers.
The mechanisms described in this document may result in a situation
where a router would be required to maintain NHRP peering with
Yakov Rekhter [Page 12]
Internet Draft draft-ietf-ion-r2r-nhrp-00.txt February 1997
potentially a fairly large number of other routers. Further study is
needed to understand the implications of this on the scalability of
the approach where NHRP is used to establish shortcuts among routers.
10. Security Considerations
To be supplied
11. References
To be supplied.
12. Acknowledgements
To be supplied.
13. Author Information
Yakov Rekhter
cisco Systems, Inc.
170 Tasman Dr.
San Jose, CA 95134
Phone: (914) 528-0090
email: yakov@cisco.com
Yakov Rekhter [Page 13]