The present invention relates to a method and system for the recovery of a network from any occurrence of faults, and particularly to a network recovery method and system suitable for Multi-Protocol Label Switching (MPLS).
MPLS is a basic technique supporting the INTRANET and the Internet-Backbone, which technique is in the process of standardization by an MPLS working group of the Internet Engineering Task Force (IETF). MPLS uses a label switching technique having such characteristics as high-speed data transfer, scalability, and easy traffic control. In label switching, the forwarding of a label base and the routing of a network layer are combined, and the forwarding is performed with a label affixed to a packet.
In MPLS, a group of layer 3 packets, which are transmitted by the same method or handling (for example, transmitted on the same path and at the same service class), is defined as a forwarding equivalent class (FEC) and the same label is affixed to packet groups corresponding to FEC.
As to a labeled packet, forwarding of layer 2 can be done by reference to only the label (determining parameters necessary for the layer 2 forwarding, such as path and service class for transmission by FEC corresponding to the label).
A label switching router as a packet relaying system implements label switching. It is important how a label is to be allocated in a packet.
In the Internet Protocol (IP) network which is popular today, connectability is important such that and only one service class (best effort type) has been provided. On the other hand, in MPLS, the transmission of data becomes flexible by combining label-base forwarding and network layer routing. This is very effective in improving Quality of Service (QoS), Traffic Engineering (TE), and Virtual Private Network (VPN).
However, in providing these services, a highly reliable and efficient data transmission becomes very important. The existing routing algorithm is strong and highly reliable but time-consuming (in the order of several seconds to several minutes) in recovery from a fault. To offer a highly reliable service, it is required that the recovery from a fault be done in several ten milliseconds like SONET. MPLS is expected to achieve a protection restoration effect which satisfies such a speed in a IP network.
In an MPLS network, the route is connection-oriented and can be handled as a path. Particularly, packet paths are classified as a working path and a recovery path before fault occurrence. All that is required in the event of fault occurrence is a mere switching from one to another path in accordance with predetermined working and recovery paths so as to avoid the fault promptly. At this time, recovery is effected using a technique called label stack. According to the label stack technique, after rewriting a label, one stage of label is added thereto, and a single packet is transmitted in a two-label multiplexed state. The packet transmission is made by reference to only the last-added label, whereby a virtual tunneling is implemented.
Referring to
Now, with reference to
For example, if a fault occurs between LSR20 and LSR30, LSR10 detects the fault and with the table (in faulty condition) in
In a relay node on the path, the data which has been bypassed to the recovery path is determined for a packet destination with reference only to the recovery label, followed by rewriting of the recovery label affixed to the received packet into a recovery label corresponding to the destination such that the subsequent transmission of the packet has the thus-rewritten recovery label. For example, using the table shown in
By implementing the above method, if LSR30 possesses only information for transmitting packets having labels α2 and β2 to the network N3, it is possible to process the packets regardless of whether the working condition is normal or faulty. It is thus possible to decrease the amount of information to be held within the system.
The above is a 1:1 configuration.
In
For example, if a fault occurs between LSR20 and LSR30, LSR10 detects the fault and thereafter adds working labels (α2 for LSPα, β2 for LSPβ) which should be added upon arrival at LSR30. LSR10 further adds a recovery label (P1) with the recovery path as an outgoing path and transmits the thus-labeled packets in a label-stacked form. Likewise, in the event of occurrence of a fault between LRR50 and LSR30, LSR10 detects the fault and thereafter adds working labels (γ3 for LSPγ, δ3 for LSPδ) and further adds a recovery label (P1), then transmits the thus-labeled packets in a label stack form. These packet formats are as shown in
According to this method, if LSR30 possesses only information for transmitting the packets with labels α2, β2, γ3, and δ3 to the network N3, it can process the packets irrespective of whether the working condition is normal or faulty.
According to the conventional 1:N recovery method, when a fault in plural working paths is to be avoided by a single recovery path, the same specific or arbitrary recovery label is allocated. In the network of the configuration shown in
The problems are described with reference to
Consideration is given to the case where VPN1 is configured between networks N1 and N3 using LSPα, VPN2 is configured between networks N2 and N3 using LSPβ, VPN3 is configured between networks N1 and N3 using LSPγ, and VPN4 is configured between networks N2 and N3 using LSPδ, and packets flowing through VPN1 and VPN2 are given a higher priority than the priority given to packets flowing through VPN3 and VPN4. Also in this case there arises the same problem as above if faults occur in both working paths.
It is an object of the present invention to provide a recovery method which, upon occurrence of a fault, does not ignore an original priority class or VPN class determined for each working path while allowing traffics to bypass to a recovery path to avoid the fault.
According to one aspect of the present invention, when faults occur in a first line in which a first label switch path is set and also in a second line in which a second label switch path is set, packets which should flow through the first and second label switch paths are bypassed to a recovery path. At this time, different labels (including the original priority or VAN information) are affixed respectively to the packets which should flow through the first and second label switch paths, and then the thus-labeled packets are transferred to the recovery path.
Other aspects of the present invention will be made clear by way of embodiments of the present invention to be described below.
The foregoing and additional features and characteristics of the present invention will become more apparent from the following detailed description considered with reference to the accompanying drawings in which like reference numerals designate like elements and wherein:
In a normal condition, the packets inputted to LSR10 are labeled α1, β1, γ1, δ1 in accordance with the table (in a normal condition) shown in
When a fault occurs on a working path and the data flowing on that path is to be bypassed via the recovery path in LSR10, a recovery label, which is determined uniquely for each working path, is added to the packet in LSR10. If a fault occurs in the working path LSR10-LSR20-LSR30, LSR10 detects the fault and thereafter adds to the packet a working label (α2 for LSPα, β2 for LSPβ) which the packet should have at the time of arrival at LSR30. LSR10 further adds to the packet a recovery label (P1α for the working path LSR10-LSR20-LSR30) which is determined uniquely for each working path, with the recovery path as an outgoing path, and transmits the packet to the recovery path LSR10-LSR60-LSR70-LSR80-LSR30 in a label stacked form. Likewise, in the event of occurrence of a fault on the working path LSR10-LSR40-LSR50-LSR30, LSR10 detects the fault and thereafter adds a working label (γ3 for LSPγ, δ3 for LSPδ), then adds to the packet a recovery label (P1β for the working path LSR10-LSR40-LSR50-LSR30) which is determined uniquely for each working path, with the recovery path as an outgoing path, and transmits the packet to the recovery path LSR10-LSR60-LSR70-LSR30 in a label stacked form. The packet formats concerned are shown in
The packets which should flow through the working path LSR10-LSR20-LSR30 and the packets which should flow through the working path LSR10-LSR40-LSR50-LSR30 are given different space labels respectively. For example, LSR60 transmits the packets with recovery label P1α affixed thereto in preference to the packets with recovery label P1β affixed thereto in terms of transmission priority.
In LSR60, the packets transmitted from LSR60 are rewritten (only their recovery labels) P1α->P2α and P1β->P2β as shown in
The packets which have arrived at LSR80 are subjected to PHP processing and then reach LSR30.
When bypassing the packets from the faulty working path to the recovery path, a different recovery label is affixed to the packets which should flow through LSPγ and LSPδ of a low priority. That is, since the packets which should flow through LSPα and LSPβ and the packets which should flow through LSPγ and LSPδ belong to different service classes, it is possible to control such that the packets which should flow through LSPα and LSPβ are transmitted in preference to the packets which should flow through LSPγ and LSPδ on the recovery path.
It is here assumed that VPN1 is configured between networks N1 and N3 using LSPα, VPN2 is configured between networks N2 and N3 using LSPβ, VPN3 is configured between networks N1 and N3 using LSPγ, and VPN4 is configured between networks N2 and N3 using LSPδ. Also in this case, by affixing different recovery labels to the packets which should flow through VPN 1 and VPN 2 and the packets which should flow through VPN 3 and VPN 4, it becomes possible control such that the packets flowing through VPN 1 and VPN 2 are transmitted in preference to the packets which should flow through VPN 3 and VPN 4 on the recovery path.
According to this embodiment, the data transmission can be done while retaining different priority classes or VPNs for different working paths.
The 32-bit label format comprises a 20-bit label portion, a 3-bit experimental (indicating a priority class) portion, a 1-bit stack (indicating whether a stack is present or not, with “0” indicating that there is a working label stacked behind and “1” indicating that there is no working label stacked behind) portion, and an 8-bit TTL portion. In a faulty condition, a packet is label-stacked and the stack portion of the working label indicates “0,” while the stack portion of the recovery label indicates “1.”
Upon the input of a packet from an input line 210-i in the router 200, the respective packet receiver 220i transmits the packet to the packet transfer processor 230. The packet transfer processor 230, upon receipt of the packet, extracts header information (including label) and transmits it to the routing processor 240. At this time, the packet is stored temporarily. The routing processor 240, which holds the table shown in
Lastly, a packet flow transmission performed by LSR10 in
As set forth above, in the packet relaying system according to the present invention, double faults occur in working paths based on a 1:N redundancy configuration, and packets flowing thereon are bypassed from the working paths to a recovery path, it is possible to avoid the faults without ignoring the packets' priority classes or VPNs.
The principles, preferred embodiments and modes of operation of the present invention have been described in the foregoing specification. However, the invention which is intended to be protected is not limited to the particular embodiments disclosed. The embodiments described herein are illustrative rather than restrictive. Variations and changes may be made by others, and equivalents employed, without departing from the spirit of the present invention. Accordingly, it is expressly intended that all such variations, changes and equivalents which fall within the spirit and scope of the present invention as defined in the claims, be embraced thereby.
Number | Date | Country | Kind |
---|---|---|---|
2001-262657 | Aug 2001 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
5818816 | Chikazawa et al. | Oct 1998 | A |
6408001 | Chuah et al. | Jun 2002 | B1 |
6530032 | Shew et al. | Mar 2003 | B1 |
6741533 | Hiratsuka et al. | May 2004 | B1 |
6859842 | Nakamichi et al. | Feb 2005 | B1 |
6895441 | Shabtay et al. | May 2005 | B1 |
6904018 | Lee et al. | Jun 2005 | B2 |
6925054 | Atterton et al. | Aug 2005 | B1 |
6944156 | Suzuki | Sep 2005 | B2 |
7082101 | Kim et al. | Jul 2006 | B2 |
20020172148 | Kim et al. | Nov 2002 | A1 |
20020191247 | Lu et al. | Dec 2002 | A1 |
Number | Date | Country | |
---|---|---|---|
20030043735 A1 | Mar 2003 | US |