The present invention relates broadly to packet-switched networks. Specifically, the present invention relates to automatically configuring a router to send a received packet along a communication path to a logical topology identified within the packet.
Multi-topology Routing (MTR) involves mechanisms that build multiple independent logical topologies on top of a physical topology, and classify and forward packets belonging to different topologies. Two processes are key to MTR. The first is an extension to Routing Protocol used to build multiple independent topologies. The other key process is the marking and classification of the packet as belonging to a given topology.
Extension to routing protocols have already been defined in order to create multiple logical topologies. Marking the packet is required in order to be able to classify the packet as belonging to which topology so that the correct RIB could be used to forward the packet. There are not many choices in IP headers for marking a packet. Typically, a differentiated services code point (DSCP) is used in order to mark a packet. However, this approach suffers a significant shortcoming in that each node in the network has to consistently be configured in order to map the DSCP to the corresponding topology identified by multi-topology identifier (MT-ID). The problem with this approach is that not only does it require consistent mapping in all routers and is prone to misconfiguration, but DCSP values are limited and may be used for other purposes within a topology.
The present invention carries the topology that a packet belongs to as a MT-ID, as indicated in an embedded field within an IPv6 address. This allows the originator of the packet to set the MT-ID in the packet; all other routers automatically associate the packet to its corresponding topology, thereby reducing manual configuration and the possibility of any erroneous configuration. It is to be understood that routers used in embodiments of the present invention are multi-topology routing (MTR) aware, and IPv6 packets generated by an end host router are marked to indicate such a marking.
In one aspect, the present invention provides a method of routing packets that belong to a logical network topology associated with a physical topology, by generating a packet having an IPv6 format with a multi-topology identifier (MT-ID) uniquely identifying a logical topology that is carried as an embedded field in the Interface ID part of the IPv6 address. IPv6 unicast addresses include a 64-bit interface identifier field in modified EUI-64 format, based on the IEEE EUI-64 (referred to herein as EUI64) specification. The modified EUI-64 format inverts the sense of the ‘u/l’ bit from its specification in EUI64, i.e., ‘u/i’=0 indicates local use. The Intra-site Automatic Tunnel Addressing Protocol (ISATAP) already specifies an EUI64-format address construction for the Organizationally-Unique Identifier (OUI) assigned by the Internet Assigned Numbers Authority (IANA). This format is used to construct both native EUI64 addresses for general use and modified EUI-64 format interface identifiers for use in IPv6.
In another aspect, the present invention provides a method for routing packets that belong to a logical network topology, by receiving a packet having an IPv6 format with a MT-ID contained in its interface identifier field. Upon receipt by a router in accordance with the present invention, the MT-ID is read, and the router associates the received packet with the topology identified by the MT-ID by inspecting a local table that maps MT-IDs with logical topologies, and reading a routing table that determines where to send the received packet so that it reaches its logical topology.
Other features and advantages of the present invention will be realized upon reading the following detailed description, when considered in conjunction with the drawings, in which:
Direction attention to
Directing attention to
Routers 12 are configured to handle IPv6 packets modified in accordance with the present invention. Directing attention to
The Organizational Unique Identifier (OUI) is found in the first 24 bits of a MAC address for a network-connected device, which indicate the specific vendor for that device. The IEEE assigns OUIs to vendors. (The last 24 bits of the MAC address are the device's unique serial number, assigned to the device by the manufacturer.) The OUI sometimes is referred to as the Vendor ID.
Below is an example of an Interface ID that uses the IANA OUI Assignment:
Bits “c” are the company-specific bits of the OUI, “u” is the universal/local bit, “g” is the individual/group bit and ‘m’ are the extension identifier bits. In an embodiment, the “u” bit is inverted from its normal sense in the IEEE context; therefore u=l indicates global scope and u=0 indicates local scope.
The OUI field uses the format of IANA's OUI: 00-00-5E with ‘u’ and ‘g’ bits and three octets in length. The Type field specifies interpretation of type-specific extension field (TSE) and type-specific data (TSD). The type field is one octet in length. The type-specific extension field (TSE) is one octet in length. The type-specific data field is three octets in length.
The following interpretations are specified based on the value of the TYPE field:
The present invention provides a new TYPE that indicates that destination address 46 carries an embedded MT-ID as shown below:
Type-specific data (TSD) is a random value generated in order to have a unique Interface-ID within the link. Directing attention to
While the preferred embodiment of the present invention has been described and illustrated in detail, numerous modifications can be made to embodiments of the present invention without departing from the spirit thereof.