1. Field of the Invention
The present invention relates to an apparatus for notifying a tunnel failure in an IP network for providing highly reliable services by applying traffic engineering, such as real time application and the like, including a mobile Internet protocol (IP) network and voice-over Internet protocol (VoIP), and by reserving line resources (band), and a method thereof.
2. Description of the Related Art
A tunnel technology is a technology for encapsulating a packet described by a specific protocol, using another protocol and communicating (for example, see Patent Reference 1). According to this technology, a plurality of tunnels can be built in one physical line. RFC3209 (Non-patent reference 1) discloses extensions to resource reservation protocol (hereinafter called “RSVP”) for label-switched paths (LSP) tunnels.
If a tunnel (band) reserved on a network has a line failure when transmission is conducted by RSVP, using the tunnel technology in order to transmit IP packets at high speed, RSVP transmits a disconnection message to an adjacent node for all tunnels which exist in the line. If a head end, which is a tunnel start node, receives the disconnection message, the head end disconnects the relevant tunnel, based on the received disconnection message. If tunnels comprise active ones and standby ones, an active tunnel is switched at the time of tunnel disconnection.
In this network configuration, if a line failure occurs between core #B and the tail end, as shown in
The head end disconnects failed tunnels, using the reception of the disconnection message for each tunnel as a trigger (steps 32-1 through 32-n). Since no failure occurs in the core #A which is the adjacent node of the head end, the head end re-establishes a definition of tunnel “by explicit”. “By explicit” means to explicitly designate the route of a tunnel. If the line failure is not recovered, setting NG occurs in the core #B. In this case, a tunnel is repeatedly re-established until setting OK is returned from the tail end.
If in this network configuration, fast reroute which is a high-speed failure switching for a tunnel is installed, an active tunnel and a standby tunnel are conventionally switched in the core #A, which is the node (point of local repair (PLR)) in which the start point of an active system coincides with that of a standby system.
The active tunnel passes through core #A, core #B, core #C and core #D, and the standby tunnel passes through core #A, core #E, core #F and core #D. For example, a failure occurs in core #B, which is the adjacent node of core #A, core #A can switch a tunnel to a standby system.
The hello function of RSVP is a function to transmit/receive a hello message to/from an adjacent node in a specific cycle and confirm each other that each other's RSVP protocol is in a normal state (service state). The hello message is exchanged for each line of each node. Its transmission/reception cycle is called “hello interval timer”, and if this timer clocks the interval time, a hello message (request) is transmitted.
For example, when a hello message (request) is exchanged between nodes A and B, as shown in
Upon receipt of the hello message (request) from node A, node B returns a hello message (Ack) for the received hello message (request). Therefore, there is no need to transmit a hello message (request) using time-out as a trigger. Therefore, the hello interval timer is reset (step 52). A hello life timer is also reset (step 53).
If the hello message (request) or hello message (Ack) is not received within the time-out time of the hello life timer, it is regarded that a failure has occurred in an adjacent node. Upon receipt of the hello message (Ack) from node B, node A resets the hello life timer (step 54).
However, the above-mentioned conventional line failure notification method has the following problems.
(1) Sometimes a lot of tunnels exist in one line depending on network topology. In that case, a lot of tunnel disconnections occur when a line failure occurs. In this case, since a lot of tunnel disconnection messages must be notified to an adjacent node and a lot of messages flow into the network, there is a possibility that the load of the network may increase. Since RSVP is user datagram protocol (UDP), their delivery cannot be confirmed. When there is a lot of tunnel disconnections, messages are lost due to packet loss or the like. Therefore, there is a possibility that tunnel disconnection may not be rapidly made.
(2) If it looks to the head end that no failure occurs in an adjacent node (core #A in
(3) Fast reroute can switch a tunnel only when a failure occurs in an adjacent node. If a failure occurs between the core #B and core #C or between the core #C and core #D in the network configuration shown in
It is an object of the present invention to improve the detection speed of a tunnel failure and to reduce the load of a network when a line failure occurs.
It is another object of the present invention to make fast reroute possible even when a failure occurs in a node other than the adjacent node of a node in which the respective start points of active and standby systems coincide with each other.
The first tunnel failure notification apparatus of the present invention comprises a detection device and a notification device. The first tunnel failure notification apparatus notifies an adjacent node of the occurrence of a tunnel failure in a communication network for transmitting packets using a tunnel. The detection device detects the occurrence of a failure in the line of the communication network, and notification device unifies a plurality of disconnection messages of the tunnels which pass through the failed line and notifies an adjacent node for each failed line.
The second tunnel failure notification apparatus of the present invention comprises a receiving device and a notification device. The second tunnel failure notification apparatus notifies an adjacent node of the occurrence of a tunnel failure in a communication network for transmitting packets using a tunnel. The receiving device receives a failure notice that represents a plurality of disconnection messages of the tunnels which pass through a failed line and notifies the occurrence of the failure for each failed line, from the first adjacent node when the failure occurs in the line of the communication network. The notification device notifies the second adjacent node of the occurrence of the failure for each line, based on the received failure notice.
The first tunnel failure processing apparatus of the present invention comprises a receiving device and a control device. The first tunnel failure processing apparatus disconnects tunnels when a tunnel failure occurs in a communication network for transmitting packets using a tunnel. The receiving device receives a failure notice that represents a plurality of disconnection messages of the tunnels which pass through a failed line and notifies the occurrence of the failure for each failed line from an adjacent node when the failure occurs in the line of a communication network. The control device disconnects a plurality of tunnels, based on the received failure notice and then refrains from re-establishing the plurality of tunnels until receiving a recovery notice for notifying the recovery of the failure.
The second tunnel failure processing apparatus of the present invention comprises a receiving device and a control device. The second tunnel failure processing apparatus switches tunnels when a tunnel failure occurs in a communication network for transmitting packets using a tunnel. The receiving device receives a failure notice that represents a plurality of disconnection messages of the tunnels which pass through a failed line and notifies the occurrence of the failure for each failed line from an adjacent node when the failure occurs in the line of a communication network. The control device switches active tunnels included the plurality of tunnels to standby tunnels which takes an alternative route, based on the received failure notice.
The preferred embodiments of the present invention are described below with reference to the drawings.
The tunnel failure notification apparatus in the first aspect of the present invention comprises a detection device 101 and a notification device 102. The tunnel failure notification apparatus notifies an adjacent node of the occurrence of a tunnel failure in a communication network for transmitting packets using a tunnel. The detection device 101 detects the occurrence of the failure in the line of the communication network. The notification device 102 unifies a plurality of disconnection messages of the tunnels which pass through the failed line and notifies an adjacent node for each failed line.
The tunnel failure notification apparatus in the second aspect of the present invention further comprises a storage device 103 in addition to the tunnel failure notification apparatus in the first aspect. The storage device 103 stores information about a failed line. The notification device 102 notifies an adjacent node of the occurrence of the failure when line information is abnormal.
According to the tunnel failure notification apparatus in the first or second aspect of the present invention, since the disconnection messages of a plurality of tunnels under the control of a failed line are unified together and are notified to an adjacent node, a tunnel failure can be notified at high speed, and accordingly, the load of a network can be reduced.
The tunnel failure notification apparatus in the third aspect comprises a receiving device 111 and a notification device 112. The tunnel failure notification apparatus notifies an adjacent node of the occurrence of a tunnel failure in a communication network for transmitting packets using a tunnel. The receiving device 111 receives the failure notice that represents the disconnection messages of a plurality of tunnels which pass through a failed line and notifies the occurrence of the failure for each failed line, from the first adjacent node when the failure occurs in the line of the communication network. The notification device 112 notifies the second adjacent node of the occurrence of the failure for each line, based on the received failure notice.
The tunnel failure notification apparatus in the fourth aspect of the present invention further comprises a storage device 113 in addition to the tunnel failure notification apparatus in the third aspect. The storage device 113 stores information about a failed line. The notification device 112 notifies the second adjacent node of the occurrence of the failure when line information is abnormal.
According to the tunnel failure notification apparatus in the third or fourth aspect of the present invention, since the disconnection messages of a plurality of tunnels under the control of a failed line are unified together and are notified to an adjacent node, as in the tunnel failure notification apparatus in the first or second aspect, a tunnel failure can be notified at high speed, and accordingly, the load of a network can be reduced.
The tunnel failure processing apparatus in the fifth aspect of the present invention comprises a receiving device 121 and a control device 122. The tunnel failure processing apparatus disconnects tunnels when a tunnel failure occurs in a communication network for transmitting packets using a tunnel. The receiving device 121 receives the failure notice that represents a plurality of disconnection messages of the tunnels which pass through a failed line and notifies the occurrence of the failure for each failed line, from an adjacent node when the failure occurs in the line of the communication network. The control device 122 disconnects a plurality of tunnels, based on the received failure notice and then refrains from re-establishing the plurality of tunnels until receiving a recovery notice for notifying the recovery of the failure.
The tunnel failure processing apparatus in the sixth aspect of the present invention further comprises a storage device 123 and a line management device 124 in addition to the tunnel failure processing apparatus in the fifth aspect. The storage device 123 stores information about a plurality of lines in a communication network. The line management device 124 modifies information about a failed line from normal to abnormal when receiving a failure notice. The control device 122 disconnects a plurality of tunnels when the information of the failed line is modified to abnormal.
According to the tunnel failure processing apparatus in the fifth or sixth aspect of the present invention, since tunnels under the control of a failed line are refrained from re-establishing until the failure is recovered, the unnecessary re-establishment of tunnels can be suppressed, and accordingly, the load of a network can be reduced.
The tunnel failure processing apparatus in the seventh aspect of the present invention comprises a receiving device 121 and a control device 122. The tunnel failure processing apparatus switches tunnels when a tunnel failure occurs in a communication network for transmitting packets using a tunnel. The receiving device 121 receives the failure notice that represents a plurality of disconnection messages of the tunnels which pass through a failed line and notifies the occurrence of the failure for each failed line, from an adjacent node when the failure occurs in the line of the communication network. The control device 122 switches an active tunnel included the plurality of tunnels to a standby tunnel which takes an alternative route, based on the received failure notice.
The tunnel failure processing apparatus in the eighth aspect of the present invention further comprises a storage device 123 and a line management device 124. The storage device 123 stores information about a plurality of lines in a communication network. The line management device 124 modifies information about a failed line from normal to abnormal when receiving a failure notice. The control device 122 switches an active tunnel to a standby tunnel when the information of the failed line is modified to abnormal.
According to the tunnel failure processing apparatus in the seventh or eighth aspect of the present invention, a line failure can be recognized by a failure notice for each line even when the failure occurs in a node other than the adjacent node of a node in which the respective start points of active and standby systems coincide with each other. Accordingly, a active tunnel which passes through a failed line can be switched to a standby tunnel which takes an alternate route.
The detection device 101, for example, corresponds to a routing control module 313 shown in
According to the present invention, when a line failure occurs, a tunnel failure can be detected at high speed without transmitting a lot of tunnel disconnection messages. Thus, highly reliable services can be provided.
Even if a failure occurs in a node other than the adjacent node of a node in which the respective start points of active and standby systems coincide with each other, fast reroute can be applied.
Major improvements in the present invention are as follows.
(1) Transmission of a Tunnel Disconnection Message for Each Line by a Hello Message
Conventionally, even when a line failure occurs, a disconnection message is transmitted for each tunnel under the control of the line. However, in the present invention, messages are unified so that a tunnel failure can be notified at high speed. Thus, the tunnel failure can be notified at high speed, and simultaneously, the flow of a lot of messages into a network can be suppressed, and accordingly, the load of the network can be reduced.
(2) Prevention of Unnecessary Tunnel Re-Establishment
Conventionally, even when a line failure occurs, the relevant tunnel is re-established after being disconnected. However, in the present invention, the re-establishment of tunnels under the control of the relevant line is suppressed until the head end recognizes a failed line and receives a recovery notice corresponding to the line. A recovery notice is issued for each line as the failure notice is. Thus, the unnecessary flow of messages into a network can be suppressed, and accordingly, the load of a network can be reduced.
(3) Application of Fast Reroute
Conventionally, only when a failure occurs in the adjacent node of a node in which the respective start points of an active system and a standby system coincide with each other, fast reroute can be applied. However, in the present invention, a node in which the respective start points of active and standby system coincide with each other can recognize a line failure by the failure notice in (1) and can apply fast reroute even when the failure occurs in a node other than the adjacent node.
Upon receipt of the hello message, the head end selects tunnels which pass through between core #B and the tail end where the failure occurs (step 202), and disconnects the tunnels (step 203-1 through 203-n). Then, the head end does not set the tunnels until the line failure is recovered (step 204).
Then, when the line failure between core #B and the tail end is recovered, core #B transmits a hello message for notifying the failure recovery to an upstream core #A for each line (step 205). Upon the receipt of the hello message from core #B, core #A transmits a hello message for recovery notification to an upstream head end.
Upon receipt of the hello message, the head end selects tunnels which pass between core #B and the tail end where the failure is recovered (step 206), and re-establishes the definition of tunnel by explicit.
According to such failure notification sequence, the number of processes for failure notification can be greatly reduced, compared with the failure notification sequence shown in
The session control module 311 of the RSVP management unit 302 performs the entire tunnel control, such as connection, disconnection, switching, refreshing and the like, and also receives/transmits an RSVP message. When receiving a hello message, the session control module 311 transfers the received message to the hello control module 316. The session control module 311 also has a function to refrain from connecting tunnels under the control of a failed line at the time of tunnel connection.
The message control module 213 analyzes, edits and compares an RSVP session control message object.
The routing control module 313 determines whether each tunnel address belongs to the relevant station and specifies its outgoing routes. The routing control module 313 determines whether route information is appropriate in the case of explicit and updates the information. Receiving a line failure notice, the routing control module 313 notifies the hello control module 316 of the line failure.
The line management module 314 manages line information and band information which are used in RSVP. The line management module 314 also issues a tunnel release request when a line failure occurs.
The timer control module 315 controls a session control timer (a path interval, a refresh interval and the like). The timer control module 315 also periodically starts the hello control module 316.
The hello control module 316 transmits/receives a hello message, makes an inquiry about whether a line failure occurs in the relevant node or whether a line failure is recovered, to the line management module 314 when transmitting a hello message, and transmits a message attaching failure/recovery information to the hello message.
If no line failure occurs in the relevant node and failure/recovery information is attached to a received hello message, the hello control module 316 updates line information managed by the line management module 314, and transmits a hello message attaching failure/recovery information by event driven.
If new failure information or new recovery information from an adjacent node is set in line information, the hello control module 316 stores the updated line information until receiving a recovery message or a failure message, respectively, and transmits a hello message in a specific cycle in accordance with the information. The hello control module 316 controls a hello timer (interval and life), and releases tunnels when detecting a hello error.
The respective functions of both the route management unit 301 and each module of the RSVP management unit 302 can be realized by hardware or software. If they are realized by software, both programs corresponding to the route management unit 301 and RSVP management unit 302, and data, such as line information and the like, are stored in the memory of a router, and the processes of both the route management unit 301 and RSVP management unit 302 are performed by the processor of the router executing the programs using the memory.
The program of the RSVP management unit 302 comprises the respective programs of the session control module 311, the message control module 312, the routing control module 313, the line management module 314, the timer control module 315 and the hello control module 316.
These programs and data are provided to a user via a communication network or a portable storage medium, and are loaded onto the memory of a router. In this case, the information processing device of a provider generates a carrier signal for carrying the programs and data, and transmits them to the information processing device of the user via a transmission medium in the communication network. For the portable storage medium, any computer-readable storage medium, such as a memory card, a flexible disk, an optical disk, a magneto-optical disk or the like, can be used.
Next, the operation in the case where a line failure occurs between core #B and core #C in the network configuration shown in
As shown in
Data in the head end which is managed as line information by the line management module 314 is different from that in each node other than the head end.
When recognizing a failure between core #B and core #C, the head end updates the state of a line between “B.B.B.B and C.C.C.C” from “normal” to “abnormal”.
However, the line information shown in
When a line failure is recovered, data stored in the head end is updated from “abnormal” to “normal”. All data stored in the nodes except the head node is deleted. Therefore, at normal time where no failure occurs, no node stores the data shown in
When a tunnel is established by the prior art, without using the line information shown in
Next, a hello message used for failure notification is described with reference to
In this preferred embodiment, normally a hello message is transmitted in the format shown in
If a line failure occurs between network addresses B.B.B.B (core #B) and C.C.C.C (core #C) in the network configuration shown in
As shown in
If a RECORD_ROUTE object is attached to a received path/resv message, each of core routers 12 and 13 transmits a path/resv message with a RECORD_ROUTE object attached. If a RECORD_ROUTE object is attached to a received path message, a tail router 14 transmits a resv message with a RECORD_ROUTE object attached.
In this preferred embodiment, as shown in
In this example, a hello message with a RECORD_ROUTE object in which network addresses “B.B.B.B” and “C.C.C.C” are written is transmitted.
A node that receives a hello message with a RECORD_ROUTE object attached for the first time similarly sets a RECORD_ROUTE object by event driven and transmits a hello message to an adjacent node. For the second time and after, the node periodically transmits a hello message with a RECORD_ROUTE object attached as usual. This operation continues until the failure is recovered.
Next, a process of the case that there is a node in a network, which is not provided with the failure notification function of the present invention, is described.
In this case, flags included in the common header of an RSVP-TE message are used in order to solve a problem that a failure is not recognized. Flags are defined to be unused in RFC3209. Therefore, a node to which the failure notification of the present invention is applied transmits a message setting a unique value (for example, “3”, etc.) in flags indicating that the present invention is always applied. Thus, a node to which the present invention is not applied transmits a message without setting a unique value in flags (usually “0” is set). Therefore, it can be determined whether the present invention is applied.
Next, the operations at the time of the occurrence of a failure and at the time of its recovery are described in more detail with reference to
The hello control module 316 generates the failure information data shown in
Then, the hello control module 316 makes an inquiry about whether there is failure information, for the line management module 314 (step 1503). If there is the failure information data shown in
If there is no failure information data, the hello control module 316 transmits a hello message to an adjacent node in the format shown in
After transmitting a hello message by event driven, the hello control module 316 is started in a specific cycle by the timer control module 315, and repeats the same process as in step 1503 (step 1503). As long as no failure in another line or no recovery of a failed line is detected, the hello control module 316 transmits a hello message with a RECORD_ROUTE object attached.
If a line failure is detected in the head end, in step 1502, the line management module 314 updates the line information shown in
If a RECORD_ROUTE object is attached, the hello control module 316 recognizes the occurrence of a failure, generates failure information data, based on the object and transfers the data to the line management module 314 (1602). The line management module 314 stores the transferred failure information data in memory as line information. In this case, if a receiving node is the head end, the line information shown in
Then, the hello control module 316 performs the same process as in steps 1503 and 1504 shown in
As described above, conventionally, even when a line failure occurs, the relevant tunnel is re-established after the tunnel is disconnected. For example, this is because as to a tunnel defined by explicit, if a line failure occurs between core #B and core #C in the network configuration shown in
The session control module 311 checks the received line state (step 1701). If the state is abnormal, the session control module 311 refrains from transmitting a tunnel establish request and repeats the inquiry of the line state. If the line state becomes normal, the session control module 311 recognizes the recovery of a failure, and transmits a tunnel establish request to a down stream node (step 1702).
Then, the hello control module 316 performs the same process as in steps 1503 and 1504 shown in
If recovery is detected in the head end, in step 1802 the line information shown in
If a RECORD_ROUTE object is not attached, the hello control module 316 recognizes the recovery of the failure and modifies line information via the line management module 314 (step 1902). In this case, if a receiving node is the head end, the line information shown in
Then, the hello control module 316 performs the same process as in steps 1503 and 1504 shown in
Such an operation at the time of the detection of a failure/recovery can be applied to fast reroute, which is a high-speed tunnel failure switching method. In that case, a node in which the respective start points of the active and standby systems of fast reroute performs all the processes performed by the above-mentioned head end. Therefore, in the network configuration shown in
Next, a process of the case that there is a node in a network, which is not provided with the failure notification function of the present invention, is described in more detail with reference to
It is assumed that in the network configuration shown in
Each router can specify a line position to which a cable is connected from the relevant router to an adjacent router by a publicly known art. For example, router #A recognizes a line position to which a cable 2101 is connected toward router #C and a line position to which a cable 2103 is connected toward router #B as (slot1, line2) and (slot3, line0), respectively. Routers #B and #C also recognize line positions similarly.
In this case, routers #A and #C store the management data shown in
If the value of the flags coincides with the prescribed value, the session control module 311 notifies the hello control module 316 that the operation of the present invention is possible. Thus, the hello control module 316 determines that an adjacent node is provided with the failure notification function of the present invention, and updates the state of the relevant line in the management data of memory from “OFF” to “ON” via the line management module 314 (step 2403). After that, as to the relevant line, the operations of the present invention shown in
If the value of the flags does not coincide with the prescribed value, the session control module 311 notifies the hello control module 316 of nothing. In this case, the state of the relevant line in the management date becomes “OFF”, and as to the line, the conventional operation is performed.
Number | Date | Country | Kind |
---|---|---|---|
2004-205595 | Jul 2004 | JP | national |