The Resv Message THE RESOURCE RESERVATION PROTOCOL RSVP

THE RESOURCE RESERVATION PROTOCOL – TRAFFIC ENGINEERING 177 • Maximum DLCI : This 23-bit field give the upper bound on the block of the supported DLCI values. In order to establish an LSP, the sender creates a Path message with a LABEL REQUEST object. This object indicates that a label binding for this path is requested and it provides an indication of the network protocol layer that is to be carried over the path. This permits packets form non-IP network layer protocols to be sent down an LSP. This information is also useful in label allocation, because some reserved labels are protocol specific. A receiver that cannot support the protocol indicated in the L3PID field, sends a PathErr message back to the sender. The EXPLICIT ROUTE object ERO This object is used to specify the hops in the requested explicit route. Each hop could be a single node or a group of nodes, referred to as an abstract node. For simplicity, RSVP-TE refers to all of the hops as abstract nodes, with the understanding that an abstract node could consist of a single node. The EXPLICIT ROUTE object class is 20, and only one object type C-Type 1 has been defined. The object contents consists of a series of variable-length sub-objects, each of which contains an abstract node. The format of the sub-object is shown in Figure 7.24. The following fields have been defined: • L : A 1-bit field used to indicate whether the route through an abstract node is loose or strict. • Type : This 7-bit field is populated with a value that indicates the type of contents of the sub-object. The following values have been defined: 0 if the sub-object contains an IPv4 prefix, 1 if it contains an IPv6 prefix, and 32 if it contains an autonomous system number. • Length : This 8-bit field is populated with the length in bytes of the sub-object including the L, type, and length fields. The format of the sub-objects for the IPv4 and IPv6 is shown in Figure 7.25. The field IPv4 address respectively IPv6 address in the IPv4 IPv6 sub-object contains an IPv4 IPv6 prefix whose length is given in the prefix length field. The abstract node represented by this sub-object is the set of all nodes whose IPv4 IPv6 address has the prefix given in the IPv4 IPv6 address field. Note that a prefix length of 128 indicates a single node. The sub-object format for the autonomous system is the same as the one shown in Figure 7.24, with the sub-object contents consisting of a two-byte field populated with the autonomous system number. The abstract node represented by this sub-object is the set of all nodes belonging to the autonomous system. 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 Length L Type Sub-object contents Figure 7.24 The format of a sub-object. 178 LABEL DISTRIBUTION PROTOCOLS 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 1 Prefix length IPv6 address L Type Length IPv4 address L Type Length IPv4 address Reserved 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 1 Prefix length Reserved IPv6 address IPv6 address IPv6 address IPv6 address Figure 7.25 The format of the sub-object for IPv4 and IPv6 prefixes. The RECORD ROUTE object RRO The existence of loose routes through an abstract node means that it is possible that loops can be formed particularly during periods when the underlying routing protocol is in a transient state. Loops can be detected through the RECORD ROUTE object. In this object the IP address of each node along the path can be recorded. Also, the labels used along the path can be recorded. The RECORD ROUTE object can be present in both Path and Rev messages. The RECORD ROUTE object class is 21 and there is one object type, C-Type 1. The object contents consists of a series of variable-length sub-objects organized in a last-in- first-out stack. Three different sub-objects have been defined: the IPv4 sub-object, the IPv6 sub-object, and the label sub-object. The first two sub-objects are the same as the IPv4 and the IPv6 sub-objects defined above in the EXPLICIT ROUTE object and shown in Figure 7.22 with the exception that the reserved field has been replaced by a flags field. The label sub-object has the structure shown in Figure 7.24, and it contains the entire contents of the LABEL object. The SESSION ATTRIBUTE object This object contains setup holding priorities for an LSP, plus various flags. The setup priority is the priority used for allocating resources. The holding priority is the priority used for holding onto resources.

7.4.3 The RSVP-TE Path and Resv Messages

The RSVP-TE Path and Resv message are similar to those in RSVP. The RSVP-TE Path message consists of the common header shown in Figure 7.20 followed by the objects: • INTEGRITY optional • SESSION