Internet Engineering Task Force C-Y Lee INTERNET DRAFT S Ganti A Srinivasan November 2000 Path Request and Path Reply Message Status of this memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet- Drafts as reference material or to cite them other than as "work in progress." To view the list Internet-Draft Shadow Directories, see http://www.ietf.org/shadow.html. Abstract This memo specifies the interface between an entity requesting an explicit route between two end-points (Path Query Entity) and another entity computing the explicit route (Path Computation Entity) 1. Overview This memo specifies the interface between an entity requesting an explicit route between two end-points (Path Query Entity) and another entity providing the explicit route (Path Computation Entity) These entities may reside on the same node or on different nodes in a network. The end-points may be the source or destination in the path or the intermediate points (eg the end-points of a segment of the path) in the path. Expires June 2001 [Page 1] Internet Draft Path Request and Reply Message November 2000 ==================== Request an explicit route ============== | Path Computation | <------------------------- | Path Query | | Entity | | Entity | | | --------------------------> | | =================== Return an explicit route ============== object This interface is required by a node e.g a Label Edge Router (LER) which does not have all the constraint information required to compute an explicit path to the destination. For instance to establish a route across different areas or network boundaries, an LER may query the transit border router (which has the constraint information to the destination or for at least part of the way to the destination). The transit border router computes and return the explicit routes satisfying the set of specified constraints. If the constraint aggregated routes from another area or network is not available the transit border router for the shortest path to the destination, is queried. If the constraint aggregated routes from another network area is available, the transit border router for the constraint path may be queried. The transit border router may recurse this query for the constraint explicit path to the next transit border router to the destination. If a border router recurses this query, it should concatenate the explicit routes returned by the next transit border router to the explicit routes that it computed, before sending the explicit path to the querier. [Note: A border router (eg inter-domain) may choose to return a loose segment instead and may cache the explicit route in its domain to facilitate the subsequent path setup or it may expand the loose segment during path setup. This is FFS] 2. Path Request and Reply Message A one time client query and server response message is used here. The Path Request message is encapsulated in TCP, the destination address is set to the path computing entity IP address and the port number is set to a value that is being reserved for this purpose. The messages are: Path Request Message and Path Reply Message. Existing TLVs already defined in various drafts are used here. The new TLV added is : Discrete Bandwidth Required TLV 2.1 Path Request Message A Path Query Entity sends a Path Request Message, encapsulated in a TCP header to the Path Computation Entity. Expires June 2001 [Page 2] Internet Draft Path Request and Reply Message November 2000 The Path Request Message contains the following mandatory fields: The encoding for the Path Request message is: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0| Path Request (0x0420) | Message Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Message ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source - ER-Hop TLV | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination - ER-Hop TLV | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Discrete Bandwidth TLV | | or Traffic Parameters TLV | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Optional TLVs | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Message ID - 32-bit value used to identify this message. Source Address - the source end of the path or the segment specified by the ER-Hop TLV defined in [CR-LDP] [Note: source, destination may refer to intermediate points in a path, eg the end-points of a loose segment of a path] Destination address - the destination end of the path or the segment specified by the ER-Hop TLV Discrete bandwidth required TLV - specified in next section or Traffic Parameters TLV, as specified in [CR-LDP] The Path Request Message may contain the following optional fields: Resource Class (4 octets) TLV - as defined in [OSPF-TE-EXT] Encoding Type (2 octets) TLV - defined as LSP Encoding Type in [GEN- MPLS] 2.2 Path Reply Message The Route Response Message returns a set of explicit route. The explicit route returned is as defined in [CR-LDP] - the Explicit Route TLV (ER-TLV) and consists of Explicit Hop TLV (ER-Hop TLV) 0 1 2 3 Expires June 2001 [Page 3] Internet Draft Path Request and Reply Message November 2000 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0| Path Request (0x0421) | Message Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Message ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ER-TLV | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Optional TLVs | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 3. Discrete Bandwidth TLV The Discrete Bandwidth TLV is used to specify the discrete bandwidth required by a Path Query Entity, if the Encoding Type is not of Packet Type. For e.g. if the Encoding Type is SONET, then n bandwidth means OC-n The format for the Discrete Bandwidth TLV is: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0|0| Discrete Bandwidth TLV | Length | | | | (0x0850) | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Discrete Bandwidth | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 4.0 Acknowledgment The authors would like to thank Neil Gammage for his helpful comments and suggestions. Expires June 2001 [Page 4] Internet Draft Path Request and Reply Message November 2000 References [TE-X] http://search.ietf.org/internet-drafts/draft-lee-mpls-te-exchange-00.txt [OSPF-TE] http://search.ietf.org/internet-drafts/draft-katz-yeung-ospf-traffic-03.txt [CR-LDP] http://search.ietf.org/internet-drafts/draft-ietf-mpls-cr-ldp-0404.txt [GEN-MPLS] http://search.ietf.org/internet-drafts/draft-ashwood-generalized-mpls-signaling-00.txt [OMPLS] http://search.ietf.org/internet-drafts/draft-kompella-ospf-ompls-extensions-00.txt Authors' Information leecy@nortelnetworks.com sganti@nortelnetworks.com anandsr@nortelnetworks.com Expires June 2001 [Page 5]