CN101656664A - Ethernet ring network system and border node thereof and Ethernet ring network realization method - Google Patents

Ethernet ring network system and border node thereof and Ethernet ring network realization method Download PDF

Info

Publication number
CN101656664A
CN101656664A CN200910092823A CN200910092823A CN101656664A CN 101656664 A CN101656664 A CN 101656664A CN 200910092823 A CN200910092823 A CN 200910092823A CN 200910092823 A CN200910092823 A CN 200910092823A CN 101656664 A CN101656664 A CN 101656664A
Authority
CN
China
Prior art keywords
ring
sub
port
node
main
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200910092823A
Other languages
Chinese (zh)
Other versions
CN101656664B (en
Inventor
杨碧辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2009100928230A priority Critical patent/CN101656664B/en
Publication of CN101656664A publication Critical patent/CN101656664A/en
Application granted granted Critical
Publication of CN101656664B publication Critical patent/CN101656664B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)

Abstract

The invention discloses an Ethernet ring network system and a border node thereof and an Ethernet ring network realization method; in the invention, the concept of an auxiliary border node and an SRPTdetection mechanism is cancelled, and the concept of sub-ring priority is introduced. A HELLO message transmitted by a host node of a sub ring with low priority can be transmitted in a sub ring withhigh priority, and when the transmission is carried out in the sub ring with high priority, the HELLO message transmitted by the host node of the sub ring with low priority is regarded as data messageby the sub ring with high priority, and the HELLO message is blocked or transmitted according to the data message. The HELLO message transmitted by the host node of the sub ring with high priority can not be transmitted in the sub ring with low priority. By adopting the method, a plurality of the sub rings are supported to be accessed to the host node from different positions, thereby improving the networking flexibility and ensuring the maximum communication of the Ethernet ring network to the maximum extent.

Description

Ethernet ring network system, edge node thereof and Ethernet ring network implementation method
Technical Field
The present invention relates to an ethernet ring network technology, and in particular, to an ethernet ring network system, an edge node applied to the ethernet ring network system, and a method for implementing the ethernet ring network.
Background
Fig. 1 is a schematic diagram of a typical ethernet ring network. The Ethernet ring network comprises a main ring and a sub ring, and the sub ring can be one or more. Data loops may occur when the ethernet ring is complete, causing a broadcast storm. To avoid this, various companies have introduced protocols for avoiding ethernet ring data loops. Such as the fast Ring protection protocol (RRPP).
When the device in the ethernet ring network shown in fig. 1 starts the RRPP protocol, fig. 1 is an RRPP ring network system, which includes two intersecting rings, the devices from S1 to S4 form a main ring, and the devices from S3 to S6 form a sub-ring. Each ring has to have one master node, and only one master node is needed, and the master node is an initiator of an active detection mechanism of a ring network state and is also a decision maker for executing operation after ring failure is detected. All other nodes on the ring except the master node are transfer nodes. One of two ports of the main node and the transmission node access ring is a main port, and the other port is an auxiliary port. As shown in fig. 1, the master node of the main ring is S1, the master node of the sub ring is S6, S2, S3 and S4 are all transmission nodes of the main ring, and S5 is a transmission node of the sub ring.
Two intersections where the main ring and the sub-ring intersect are called an edge node and an auxiliary edge node, respectively, and the edge node and the auxiliary edge node need to be configured in pairs in the prior art. As shown in FIG. 1, S4 is an edge node, and S3 is an auxiliary edge node. The ports of the edge node and the auxiliary edge node accessing the sub-ring are called edge ports, the two ports accessing the main ring are called common ports, and the link between the common port on the edge node and the common port on the auxiliary edge node is called a common link. As shown in fig. 1, port 1 and port 2 on S3 are common ports, port 3 is an edge port, and the link between S3 and S4 is a common link.
And the main node in the ring actively detects the ring network state. Specifically, the primary node periodically sends a Handshake (HELLO) message from its primary port, the HELLO message sequentially propagates through the transmission nodes on the primary ring, and when the secondary port of the primary node receives the HELLO message sent by the primary node itself within a predetermined time (defined by a Fail timer), the primary node is considered to be in a complete state (complete state), that is, the ring network state is complete. In order to prevent the data packets on the ring from forming a broadcast loop, the secondary port of the primary node blocks the secondary port when receiving the HELLO packet sent by the primary node within a specified time, wherein the blocking refers to blocking of the data packets. As shown in FIG. 1, the symbols on the device ports in the figure "
Figure G2009100928230D00021
"indicates that the port is Blocked (BLOCK). After the master node blocks the secondary port, the network topology changes, and in order to avoid packet direction errors, the master node also needs to notify all transmission nodes on the ring to refresh the MAC table entries and the ARP/ND table entries.
If the secondary port of the main node does not receive the Hello message within the specified time, the link on the ring network is considered to be in a fault state, and at the moment, the main node releases the blocking of the secondary port to the data message so as to ensure that the communication on the ring network is not interrupted. And after the link failure is recovered, the main node receives the HELLO message from the secondary port again, the ring network is considered to be recovered to a complete state, and the secondary port is blocked again at the moment, so that a data loop is prevented from being formed. FIG. 1 shows a schematic diagram of a primary ring master node and a sub-ring master node blocking their secondary ports when neither the primary ring nor the sub-ring has failed.
The node in the main ring always monitors the port LINK state of itself, and once the port DOWN is found, measures are immediately taken, and the mechanism for monitoring the port LINK state is called a fast LINK DOWN notification mechanism. Specifically, after the primary port of the primary node in the primary ring detects the DOWN of the port, the primary node directly senses the link failure and immediately releases the secondary port. When a LINK DOWN occurs at a primary port or a secondary port on a transmission node in a primary ring, the transmission node sends a LINK-DOWN message to the primary node from the secondary port or the primary port, which is paired with a failed port and is in an UP state. And after receiving the LINK-DOWN message, the main node releases the auxiliary port. Compared with a mechanism for detecting the ring network state by adopting a HELLO message, the LINKDOWN notification mechanism can quickly sense the link failure. The mechanism for detecting the ring network state by adopting the HELLO message is applied to the main ring and the sub ring, and the LINK DOWN notification mechanism is only applied to the main ring.
For the case of multiple main rings, the prior art also introduces a sub-ring protocol message channel (SRPT) checking mechanism. SRPT is a path of a subring protocol packet in the main ring. The RRPP protocol theoretically regards the main ring as a logical node of the sub-ring, and the protocol packet of the sub-ring is transmitted through the main ring, that is, the protocol packet of the sub-ring is broadcasted to the main ring by the edge node and the auxiliary edge node, as shown in fig. 1, the edge node S3 receives the protocol packet of the sub-ring sent from S6, and broadcasts it through port 1 and port 2. Except for EDGE-HELLO described below, the main ring treats the sub-ring protocol packets as data packets, and the sub-ring protocol packets cannot pass through the blocked port.
Each sub-ring has 2 SPRTs, S3-S4 and S3-S2-S1-S2 in FIG. 1, respectively. When the primary ring is complete, the secondary port of the primary node is blocked, and only S3-S4 are on. Upon failure of the primary ring, S3-S4 are on if the failure occurs on S3-S2-S1-S2, and S3-S2-S1-S2 are on if the failure occurs on S3-S4. Thus, at any one time, only one of the 2 SRPTs of the sub-ring is on, the sub-ring master node S6 will keep the secondary port blocked, thus avoiding the formation of a data loop. If 2 SRPTs of the sub-ring are completely interrupted, the main node of the sub-ring cannot receive the HELLO message sent by the main node of the sub-ring, then the Fail timer is overtime, the main node of the sub-ring releases the auxiliary port, and S4, S5 and S6 in the sub-ring can still communicate, so that the sub-ring can obtain the maximum communication path and cannot cause a loop.
However, for the dual-homed ethernet ring network shown in fig. 2, which is used in practice, two sub-rings of dual-homed, i.e. sub-ring 1 and sub-ring 2, are connected to each other by the edge node and the auxiliary edge node, and form a loop. When 2 SRPTs of the subring on the main ring are all interrupted, the main node secondary ports of the 2 subrings are all opened, and a data loop is formed between the subrings (the data message is moving as shown by the double arrow, forming an 8-shaped data loop).
In order to eliminate the defect, the SRPT state checking mechanism is introduced and is completed by matching the edge node and the auxiliary edge node, and the method aims to block the edge ports of the edge nodes of the two sub-rings before the secondary ports of the main nodes of the two sub-rings are completely released after the edge node detects the SRPT interruption, so that a data loop is prevented from being formed between the sub-rings.
Specifically, the edge node is an initiator and a decider of the SRPT state check mechanism, assists a listener of the channel state of the edge node, and is responsible for notifying the edge node in time when the channel state changes. The EDGE node periodically sends EDGE handshake (EDGE-HELLO) messages to the main ring through two ports connected with the SRPT, and the EDGE-HELLO messages sequentially pass through each node on the main ring and are sent to the auxiliary EDGE node. If the auxiliary EDGE node can receive the EDGE-HELLO message within the specified time, the auxiliary EDGE node indicates that at least 1 SRPT is normal, the sub-ring message can normally pass, otherwise, the auxiliary EDGE node cannot receive the EDGE-HELLO message, and indicates that 2 SRPTs are completely interrupted and the sub-ring message cannot pass. When detecting that 2 SRPTs are completely interrupted, the auxiliary edge node immediately sends a main ring FAULT (MAJOR-FAULT) message to the edge node from the edge port through the sub-ring link. And after receiving the MAJOR-FAULT, the edge node blocks the edge port of the edge node.
Taking the dual-homing networking shown in fig. 2 as an example, when two links shown in fig. 2 fail, the secondary ports of S5 and S6 are released, and the auxiliary EDGE node S3 cannot receive the EDGE-HELLO packet sent by the EDGE node S4, then S3 sends a MAJOR-FAULT packet through its EDGE ports, i.e., port 3 and port 4, because S5 and S6 both release the secondary ports, the MAJOR-FAULT packet sent from port 3 of S3 reaches port 4 of the EDGE node through S6, the MAJOR-FAULT packet sent from port 4 of S3 reaches port 3 of the EDGE node through S5, at this time, the EDGE node S3 blocks port 3 and port 4, and the blocking result is shown in fig. 3. As can be seen from fig. 3, after the port is blocked, S5 and S6 can still communicate with S3, but cannot communicate with S4, and the maximum connectivity of the ring network cannot be guaranteed.
Similarly, for the networking structure shown in fig. 1, when two links S3-S4 and S1-S2 fail, S6 releases the secondary port, and the auxiliary EDGE node S3 cannot receive the EDGE-HELLO packet sent by the EDGE node S4, then S3 sends the MAJOR-FAULT packet through its EDGE port, i.e., port 3, since S6 releases the secondary port, S4 can receive the MAJOR-FAULT packet, at this time, the EDGE node S3 blocks its port 3, and the blocking result is as shown in fig. 4. As can be seen from fig. 4, after the port is blocked, S6 can communicate with S5 and S4, but cannot communicate with S3, and cannot guarantee the maximum connectivity of the ring network.
Therefore, the existing SRPT state checking mechanism cannot guarantee the maximum connectivity of the ring network.
In addition, the SRPT state check mechanism is implemented by sending messages to and from the edge node and the auxiliary edge node, so the concepts of the edge node and the auxiliary edge node must be introduced, and only one edge node and one auxiliary edge node are on the ring, otherwise, the sending of the messages is disordered, and the SRPT state check mechanism cannot be implemented. Therefore, the existing ethernet ring structure only supports the sub-ring to access the main ring from the same edge node and auxiliary edge node, in which case the networking as shown in fig. 5 would not be available.
Disclosure of Invention
In view of this, the present invention provides an ethernet ring network system, which can support a plurality of sub-rings to access a main ring from different positions, so as to improve the networking flexibility without causing a data loop.
The system comprises a main ring consisting of nodes and one or more sub-rings; the main ring and each sub-ring comprise a main node; each main node is used for sending a handshake HELLO message from a main port of the main node, and blocking an auxiliary port after receiving the HELLO message sent by the main node from the auxiliary port of the main node; when each node in the main ring receives the HELLO message from the sub-ring, the received HELLO message is regarded as a data message, and the received HELLO message is determined to be forwarded or blocked according to the port state of the node;
different subrings are accessed into the main ring from the same or different nodes, and all nodes where the subrings are intersected with the main ring are called edge nodes; different sub-rings are configured to have different priorities;
the edge node is used for forwarding the received HELLO message to the main ring and the sub-ring with the priority not lower than that of the sub-ring x when the HELLO message from the sub-ring x is received;
when the main node of each sub-ring in the system receives HELLO messages from other sub-rings, the main node regards the received HELLO messages as data messages, and the received HELLO messages are determined to be forwarded or blocked according to the port state of the main node.
Preferably, the master node in each sub-ring is further configured to, when a HELLO packet sent by the master node is not received within a predetermined time t1, first release the blocking of the slave port to the non-native sub-ring protocol packet, and after waiting for a set time t2, release the blocking of the slave port to the data packet.
Preferably, the master node in each subring includes a control unit, a control domain fault timer and a data domain fault timer;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message;
the control unit is used for controlling the control domain fault timer and the data domain fault timer to start timing after the sub-ring main node sends an HELLO message; when the control domain fault timer is overtime, the secondary port of the subring main node is released to block the non-native subring protocol message; when the data domain fault timer is overtime, releasing the blocking of the secondary port of the subring main node to the data message; and when the subring master node receives the HELLO message sent by the subring master node, canceling the timing of the control domain fault timer and the data domain fault timer.
Preferably, the master node of the master ring includes a control unit, a data domain failure timer and a control domain failure timer;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message;
the control unit is used for controlling the control domain fault timer and the data domain fault timer to start timing when the main ring main node sends an HELLO message; when the control domain fault timer is overtime, releasing the secondary port of the main node of the main ring to block the protocol message of the subring; when the data domain fault timer is overtime, releasing the blocking of the secondary port of the main node of the main ring to the data message; and when the main ring main node receives the HELLO message sent by the main ring main node, timing of the control domain fault timer and the data domain fault timer is cancelled.
Preferably, each node of the main ring is further configured to, when the temporary blocking state is maintained for a predetermined time t1, first unblock the temporary blocking port from blocking the sub-ring protocol packet, and after waiting for a set time t2, unblock the temporary blocking port from blocking the data packet.
Preferably, the nodes in the main ring comprise a control unit, a control domain fault timer and a data domain fault timer;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the control domain fault timer and the timing time of the data domain fault timer are both longer than the sending period of the HELLO message;
the control unit is used for controlling the control domain fault timer and the data domain fault timer to start timing when the self state is transferred to the temporary blocking state; when the control domain fault timer is overtime, the temporary blocking port of the node is released to block the sub-ring protocol message; and when the data domain fault timer is overtime, releasing the temporary blocking port of the node to block the data message.
Preferably, the timing time of the data domain fault timer is 4 times of the sending period of the HELLO message; the timing time of the control domain fault timer is 2 times of the transmission period of the HELLO message.
The invention also provides the edge node equipment applied to the Ethernet ring network system, which can support a plurality of sub-rings to be connected into the main ring from different positions so as to improve the networking flexibility and avoid causing data loops.
The edge node comprises a message receiving unit and a message forwarding unit;
the message receiving unit is used for sending the HELLO message received from the outside of the node to the message forwarding unit;
and the message forwarding unit is used for forwarding the received HELLO message to a main ring of a system where the HELLO message is located and a sub-ring with the priority not lower than that of the sub-ring x when the HELLO message from the sub-ring x is received.
Preferably, the message forwarding unit includes a corresponding module and a forwarding module;
the corresponding module is used for storing the corresponding relation between the set source ring information and the output port; if the source ring information is a main ring, the corresponding output port is a public port connected with the main ring; if the source ring is a subring, the corresponding output port comprises a public port connected with the main ring and a specific edge port, and the specific edge port is an edge port connected with the subring with the priority not lower than that of the source ring;
and the forwarding module is used for matching the source ring information determined according to the received HELLO message in the corresponding module after receiving the HELLO message, finding out an output port of the received HELLO message and forwarding the received HELLO message from the found output port.
The invention also provides a method for realizing the Ethernet ring network system, which can support a plurality of sub-rings to access the main ring from different positions so as to improve the networking flexibility and avoid causing data loops.
The method is applied to an Ethernet ring network system comprising a main ring and one or more sub-rings; the method is characterized in that different subrings are accessed into a main ring from the same or different nodes, and all nodes intersected with the main ring by the subrings are called edge nodes;
the method further comprises the following steps: configuring different priorities for different subrings;
the main nodes in the main ring and each subring send HELLO messages from the main port, and the secondary port is blocked after receiving the handshake messages sent by the secondary port;
when each node in the main ring receives the HELLO message from the sub-ring, the received HELLO message is regarded as a data message, and the received HELLO message is determined to be forwarded or blocked according to the port state of the node;
when receiving a HELLO message from a sub-ring x, the edge node forwards the received HELLO message to a main ring and a sub-ring with the priority not lower than that of the sub-ring x;
when the main node of each subring in the system receives HELLO messages from other subrings, the main node determines to forward or block the received HELLO messages according to the port state of the main node of the subring.
Preferably, the method further comprises: presetting a corresponding relation between source ring information and an output port; if the source ring information is a main ring, the corresponding output port is a public port connected with the main ring; if the source ring is a subring, the corresponding output port comprises a public port connected with the main ring and a specific edge port, and the specific edge port is an edge port connected with the subring with the priority not lower than that of the source ring;
the forwarding the received HELLO packet to the main ring and the sub-ring with the priority not lower than the sub-ring x comprises: after receiving the HELLO message, the edge node matches the source ring information determined according to the received HELLO message in the corresponding relation, finds an output port of the received HELLO message, and forwards the received HELLO message from the found output port.
Preferably, the method further comprises: when the master node in each subring does not receive the HELLO message sent by the master node in the preset time t1, the master node firstly releases the blockage of the slave port to the non-native subring protocol message, and releases the blockage of the slave port to the data message after waiting for a set time t 2.
Preferably, the releasing the blocking of the slave port to the non-native sub-ring protocol packet, after waiting for a set time t2, and then releasing the blocking of the slave port to the data packet includes:
master node Sx of ring when son1After the HELLO message is sent out, controlling a control domain fault timer and a data domain fault timer to start timing;
when the control domain fault timer is overtime, the master node Sx is released1The secondary port of the network element blocks the non-native sub-ring protocol message; when the data field fault timer is overtime, the master node Sx is released1The secondary port of the network side blocks the data message;
when the master node Sx1When a self-sent HELLO message is received, timing of the control domain fault timer and the data domain fault timer is cancelled;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message.
Preferably, the method further comprises:
master node Sx as master ring2When the HELLO message is sent out, controlling a control domain fault timer and a data domain fault timer to start timing;
when the control domain fault timer is overtime, the master node Sx is released2The secondary port of the sub-ring protocol message is blocked; when the data field fault timer is overtime, the master node Sx is released2The secondary port of the network side blocks the data message;
when the master node Sx2When a self-sent HELLO message is received, timing of the control domain fault timer and the data domain fault timer is cancelled;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message.
Preferably, the method further comprises: when each node of the main ring maintains the temporary blocking state for a preset time t1, the temporary blocking port is firstly released to block the sub-ring protocol message, and after a set time t2, the temporary blocking port is released to block the data message.
Preferably, the method further comprises: the first releasing the blocking of the temporary blocking port to the sub-ring protocol message, and after waiting for a set time t2, releasing the blocking of the temporary blocking port to the data message includes:
node Sx of the main ring3When the self state is transferred to the temporary blocking state, controlling a control domain fault timer and a data domain fault timer to start timing;
when the fault timer of the control domain is overtime, the node Sx is released3The temporary blocking port blocks the sub-ring protocol message; when the data field fault timer is overtime, the node Sx is released3The temporary blocking port blocks the data message;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the control domain fault timer and the timing time of the data domain fault timer are both longer than the sending period of the HELLO message.
Preferably, the timing time of the data domain fault timer is 4 times of the sending period of the HELLO message; the timing time of the control domain fault timer is 2 times of the transmission period of the HELLO message.
According to the above technical solutions, it can be seen that, according to the present invention, since the concept of the auxiliary edge node is cancelled, when multiple sub-ring access is required, an access node can be flexibly selected, instead of having to be fixedly accessed from a unique edge node and the auxiliary edge node, so that a multiple sub-ring structure as shown in fig. 5 can be implemented.
In addition, the invention sets the priority of the subring and allows the HELLO message in the subring with low priority to be forwarded in the subring with high priority, thereby increasing the forwarding path of the HELLO message of the subring which does not need to pass through the main ring, while the forwarding path of the HELLO message of the subring in the prior art must pass through the main ring. When a link failure occurs in the main ring, especially a double link failure occurs (i.e. a common link failure and a non-common link failure on the main ring), the sub-ring HELLO message forwarding paths passing through the main ring are blocked, but the added sub-ring HELLO message forwarding paths not passing through the main ring are not affected, and the completeness of the HELLO message forwarding paths enables the main nodes of the corresponding sub-rings to block the auxiliary ports, so that a data loop does not occur, and the normal operation of the ring network is ensured.
Secondly, the invention distinguishes the protocol message and the data message of the non-local subring on the subring main node, when the HELLO message sent by the subring main node is not received in the preset time, the blocking of the non-local subring protocol message by the auxiliary port is firstly released, and after a set time t2, the blocking of the data message by the auxiliary port is released, thereby avoiding the instant data loop when the double link of the main ring is in failure.
In addition, the invention distinguishes the protocol message and the data message of the subring on each node of the main ring, when the temporary blocking state of the node is maintained for a preset time, the temporary blocking port is firstly released to block the protocol message of the subring, and after a set time, the temporary blocking port is released to block the data message, thereby avoiding the instant data loop when the double link failure of the main ring is recovered.
Drawings
Fig. 1 is a schematic diagram of a typical ethernet ring network in the prior art.
Fig. 2 is a schematic networking diagram of a dual-homed ethernet ring in the prior art.
Fig. 3 is a schematic diagram of port blocking after an SRPT state check mechanism is executed after a dual-homed ethernet ring network fails in the prior art.
Fig. 4 is a schematic diagram of port blocking after an SRPT state check mechanism is executed after a dual link of a single ring ethernet ring network fails in the prior art.
Fig. 5 is a schematic diagram of an ethernet ring network in which a plurality of sub-rings access a main ring through different nodes.
Fig. 6 is a schematic diagram of an ethernet ring network according to an embodiment of the present invention.
Fig. 7 is a schematic diagram of an edge node in an embodiment of the invention.
Fig. 8 is a schematic diagram of a HELLO packet forwarding path of a main ring in the first embodiment of the present invention.
Fig. 9 is a schematic diagram of a HELLO packet forwarding path of the child ring 1 according to an embodiment of the present invention.
Fig. 10 is a schematic diagram of a HELLO packet forwarding path of the subring 2 according to an embodiment of the present invention.
Fig. 11 is a schematic diagram of a HELLO packet forwarding path with a double link failure according to an embodiment of the present invention.
Fig. 12 is a schematic diagram of a HELLO packet forwarding path of the subring 1 according to the second embodiment of the present invention.
Fig. 13 is a schematic diagram of a HELLO packet forwarding path of the subring 2 in the second embodiment of the present invention.
FIG. 14 is a diagram illustrating a failure of the common links S1-S2 according to a second embodiment of the present invention.
FIG. 15 is a diagram illustrating a failure of the common links S3-S4 according to a second embodiment of the present invention.
FIG. 16 is a diagram illustrating a second embodiment of the present invention after failures of the common links S1-S2 and S3-S4.
Fig. 17 is a schematic diagram of a non-common link S1-S4 after a failure in the second embodiment of the present invention.
Fig. 18 is a schematic diagram of a double link after failure according to a second embodiment of the present invention.
Detailed Description
The invention is described in detail below by way of example with reference to the accompanying drawings.
The present invention is an implementation scheme of an ethernet ring network, as shown in fig. 6, the scheme cancels the concept of an auxiliary edge node, and because the auxiliary edge node does not exist in the system, the SRPT detection mechanism in the prior art is also cancelled. Specifically, the Ethernet ring network system of the invention comprises a main ring and one or more sub-rings; a plurality of subrings are accessed into the main ring from the same or different nodes, and all nodes intersected with the main ring by the subrings are called edge nodes; the port of the edge node accessing the sub-ring is an edge port, and the two ports accessing the main ring are public ports.
The invention also introduces the concept of sub-ring priority. The purpose of the subring priority is that the HELLO message sent by the main node of the subring with low priority can be forwarded in the subring with high priority, and when the HELLO message is forwarded in the subring with high priority, the HELLO message sent by the main node of the subring with low priority is regarded as a data message by the subring with high priority, and the blocking or forwarding is performed according to the data message. And the HELLO message sent by the main node of the sub-ring with high priority can not be forwarded in the sub-ring with low priority. In addition, as in the prior art, the HELLO packet sent by the master node of the sub-ring is also forwarded in the master ring.
Under the condition of introducing the priority of the sub-ring, the edge node in the Ethernet ring network system of the invention forwards the received HELLO message to the main ring and the sub-ring with the priority not lower than the sub-ring x when receiving the HELLO message from the sub-ring x. Wherein the subring not lower than the subring x includes the subring x itself.
When the main node in the subring receives the HELLO messages from other subrings, the main node regards the received HELLO messages as data messages, and determines to forward or block the received HELLO messages according to the port state of the main node of the subring.
The main nodes in the main ring and the sub-ring also execute the action of actively detecting the ring network state, that is, each main node sends a handshake HELLO message from the main port of itself, and blocks the sub-port after receiving the HELLO message sent by itself from the sub-port of itself, thereby cutting off the data loop. And each node on the main ring regards the HELLO message from the sub-ring as a data message, and determines to forward or block the received HELLO message according to the port state of the node.
In the present invention, the protocol message can be represented by setting a priority field in the protocol message, from which sub-ring the protocol message originates. For example, for the RRPP protocol, the fields of the RRPP protocol message have reserved fields, and optionally one of the reserved fields may be defined as a priority field. Preferably, to avoid adding fields, the Ring identification (Ring ID) field in the existing RRPP protocol message may also be used to identify the sub-Ring priority. For example, if Ring ID of sub-Ring 1 is 1, the priority is 1, and if Ring ID of sub-Ring 2 is 2, the priority is 2. The smaller the number is, the larger the priority is, or the larger the number is, the larger the priority is, and the specific correspondence relationship between the number and the priority may be set.
It can be seen from the above solutions that, since the concept of the auxiliary edge node is cancelled, when multiple sub-ring access is required, the access node can be flexibly selected, instead of having to be fixedly accessed from a unique edge node and the auxiliary edge node, so that the multiple sub-ring structure shown in fig. 5 can be implemented.
In addition, the invention sets the priority of the subring and allows the HELLO message in the subring with low priority to be forwarded in the subring with high priority, thereby increasing the forwarding path of the HELLO message of the subring which does not need to pass through the main ring, while the forwarding path of the HELLO message of the subring in the prior art must pass through the main ring. When a link failure occurs in the main ring, especially a double link failure occurs (i.e. a common link failure and a non-common link failure on the main ring), the sub-ring HELLO message forwarding paths passing through the main ring are blocked, but the added sub-ring HELLO message forwarding paths not passing through the main ring are not affected, and the completeness of the HELLO message forwarding paths enables the main nodes of the corresponding sub-rings to block the auxiliary ports, so that a data loop does not occur, and the normal operation of the ring network is ensured. Moreover, as can be seen from the embodiments listed below, the RRPP ring network of the present invention can also ensure the maximum connectivity of the ring network.
The invention also provides an edge node applied to the Ethernet ring network system. Fig. 7 is a schematic diagram of an edge node in an embodiment of the invention. As shown in fig. 7, the edge node includes a message receiving unit and a message forwarding unit, wherein,
the message receiving unit is used for sending the HELLO message received from the outside of the node to the message forwarding unit;
and the message forwarding unit is used for forwarding the received HELLO message to the main ring of the Ethernet ring network system and the sub-ring with the priority not lower than that of the sub-ring x when the HELLO message from the sub-ring x is received.
In practice, when receiving the HELLO packet, the packet forwarding unit may determine which sub-ring the HELLO packet originates from according to information in the HELLO packet, and then determine to which sub-ring the received HELLO packet is forwarded according to a priority relationship between the sub-rings. However, such operations are too complex to carry a large computational burden on the edge node devices.
Therefore, preferably, the present invention stores the corresponding relationship between the set source ring information and the egress port on the edge device in advance according to the priority relationship between the sub-rings, and then finds the corresponding egress port and forwards it by matching the corresponding relationship after receiving the HELLO packet. Specifically, the message forwarding unit comprises a corresponding module and a forwarding module; wherein,
and the corresponding module is used for storing the corresponding relation between the source ring information and the output port set according to the priority relation of each subring. The corresponding relation can be realized by ACL, or the corresponding relation between the message multicast MAC address and the output port is set. In practice, the specific content of the correspondence relationship stored in the corresponding module needs to be configured in advance according to the network structure.
Wherein, the corresponding relationship may include: if the source ring information is a main ring, the corresponding output port is a public port connected with the main ring; and if the source ring is a subring, the corresponding output port comprises a common port connected with the main ring and a specific edge port, and the specific edge port is an edge port connected with a subring with the priority not lower than that of the source ring.
And the forwarding module is used for matching the source ring information determined according to the received HELLO message in the corresponding relation stored in the corresponding module after receiving the HELLO message, finding the output port of the received HELLO message and forwarding the received HELLO message from the found output port.
The method for determining the source ring information according to the received HELLO packet may be: and determining the source ring information according to the MAC address carried by the message, or determining the source ring information according to the RingID field in the message.
The following describes the setting of the corresponding relationship of the edge node and the forwarding of the packet according to the corresponding relationship, by taking the dual-homing ethernet ring network system shown in fig. 6 as an example. As shown in fig. 6, devices S1 through S4 constitute a main ring, devices S3, S4, and S5 constitute sub-ring 1 and S5 is a main node, devices S3, S4, and S6 constitute sub-ring 2 and S6 is a main node. The port 2 of each master node is defined as a slave port. S4 and S3 are edge nodes. Assume that sub-ring 1 has a higher priority than sub-ring 2.
Then, the correspondence set on the device S4 may be: when the source ring information is subring 1, the corresponding output ports are port 1, port 2 and port 3; if the source ring information is subring 2, the corresponding egress ports are port 1, port 2, port 3 and port 4. When the source ring information is the main ring, the corresponding output ports are port 1 and port 2. It should be noted that the port receiving the HELLO packet does not forward the received HELLO packet any more.
When S4 receives the HELLO message from the main ring from port 1/port 2, the HELLO message is forwarded from port 2/port 1; when S4 receives the HELLO message from sub-ring 1 from port 3, forwarding from port 1 and port 2 according to the corresponding relationship; when S4 receives the HELLO packet from sub-ring 2 from port 4, it is forwarded from port 1, port 2, and port 3 according to the correspondence.
Although the edge node copies multiple received HELLO messages and forwards the HELLO messages through different ports, under the condition that a link is normal, only one HELLO message returns to the source sub-ring main node, other HELLO messages are blocked by a certain node on a forwarding path, and only one HELLO forwarding path is complete at any time. The following examples will illustrate this in detail.
The invention can be applied to starting the Ethernet ring network of RRPP protocol, and also can be applied to starting the Ethernet ring network of other ring network protocols, and is within the protection scope of the invention as long as each node in the Ethernet ring network executes corresponding operation according to the scheme.
The following takes the ethernet ring network for starting the RRPP protocol as an example, and details the implementation and effect of the present invention are described with reference to a plurality of embodiments. And in the following embodiments, port 1 of the node is defined as a primary port and port 2 is defined as a secondary port.
Example one
This embodiment takes the dual-homing networking structure shown in fig. 6 as an example. First, the HELLO packet forwarding path of the main ring and each sub-ring is explained.
Fig. 8 shows a HELLO packet forwarding path of the primary ring in the first embodiment. As shown in fig. 8, when the primary ring is complete, the HELLO packet sent by port 1 of the primary ring master node S1 passes through each transmission node and is received by the secondary port of the master node, and port 2 of S1 is blocked, which is the same as the prior art.
Fig. 9 shows a forwarding path of a HELLO packet of the subring 1 in the first embodiment. As shown in fig. 9, when the main ring and sub-ring are complete, the secondary port of main ring master node S1, port 2, is blocked. The HELLO packet sent by the port 1 of the master node S5 of sub ring 1 reaches the edge node S4, and since the HELLO packet comes from the sub ring 1 and the priority of the sub ring 1 is higher than that of the sub ring 2, S4 forwards the HELLO packet to the master ring, that is, forwards the HELLO packet through the port 1 and the port 2. Because the port 2 of the S1 is blocked and the HELLO packet of the sub ring is regarded as a data packet in the main ring, the HELLO packet of the sub ring 1 stops forwarding after reaching the S1, and the HELLO packet of the other path reaches the other edge device S3 through the common links S3-S4, and is forwarded by the ports 1, 2 and 4 of the S3, and the HELLO packet forwarded through the port 4 returns to the S5, so that a HELLO packet forwarding path, i.e., the path (ii) in fig. 9 is formed, and at this time, the secondary port is blocked by the S5 to avoid forming a data loop. While messages sent out through ports 1 and 2 at S3 are blocked at S1.
It can be seen that when the main ring and the sub-ring are complete, path (r) in fig. 9 is not through, and only path (r) is through. When the public link S3-S4 fails, S1 releases the secondary port, then path (II) is disconnected and path (II) is connected.
Fig. 10 shows a forwarding path of a HELLO packet of the subring 2 in the first embodiment. As shown in fig. 10, when the main ring and sub-ring are complete, the secondary port of main ring master node S1, port 2, is blocked. The HELLO packet sent by the port 1 of the master node S6 of the sub ring 2 arrives at the edge node S4, and since the HELLO packet comes from the sub ring 2 and the priority of the sub ring 2 is lower than that of the sub ring 1, S4 forwards the HELLO packet to the main ring and the sub ring 1, that is, forwards the HELLO packet through the ports 1, 2 and 3. The HELLO packets are forwarded in the main ring and the sub ring 1, and can only reach the other edge node S3 through the common links S3-S4 because the secondary ports of S1 and S5 are blocked. S3 forwards the HELLO packet through its ports 1 to 4, and only the packet forwarded through port 3 returns to S6, so that a HELLO packet forwarding path formed is the path ii in fig. 10, and at this time, S6 blocks its secondary port to avoid forming a data loop.
It can be seen that when the main ring and the sub-ring are complete, the path (r) and the path (c) in fig. 10 are not communicated, and only the path (c) is communicated. When the common link S3-S4 fails, S1 releases the secondary port and S5 remains blocked, so sub-ring 2 has only path (r) through; when the common link and any other link on the primary ring fail, S5 releases its secondary port, so that sub-ring 2 has only path three.
With reference to the HELLO packet forwarding paths of the main ring and each sub ring shown in fig. 8 to fig. 10, it can be known that, when the main ring and all the sub rings are complete, both the sub ring 1 and the sub ring 2 have a complete HELLO packet forwarding path, so that the secondary ports of the main nodes in the sub ring 1 and the sub ring 2 are blocked, a data packet loop cannot be formed, and communication can be maintained between the nodes.
When a common link on the main ring fails, the secondary port of S1 is unblocked to ensure the connection of the nodes on the main ring. The sub-ring 1 and the sub-ring 2 still have a complete HELLO message forwarding path, i.e. the path (i) in fig. 9 and the path (i) in fig. 10, so that the secondary ports of the main nodes in the sub-ring 1 and the sub-ring 2 are still blocked, a data message loop cannot be formed, and communication can be maintained between the nodes.
When one non-public link on the main ring fails, such as the failure of the links S1-S4, the secondary port of S1 is unblocked to ensure the communication of the nodes of the main ring. The sub-ring 1 and the ring 2 still have a complete HELLO packet forwarding path, i.e. the path (ii) in fig. 9 and the path (ii) in fig. 10, respectively, so that the secondary ports of the master nodes in the sub-ring 1 and the sub-ring 2 are still blocked, a data packet loop cannot be formed, and communication can be maintained between the nodes.
When there is a failure of a common link and a non-common link on the main ring, such as the failure of the links S3-S4 and S1-S4 shown in fig. 11, at this time, the secondary port of the main ring main node S1 is released, and at the same time, the HELLO packet forwarding path of the sub-ring 1 is completely interrupted, so the secondary port of the sub-ring 1 main node S5 is also released. And the sub-ring 2 still has a route shown as HELLO message forwarding route, so that the secondary port of the main node in the sub-ring 2 is still blocked, and the occurrence of a loop is prevented. Moreover, as can be seen from fig. 11, although there are two link failures in the main ring, there can be paths between six devices S1 to S6 in the system, thereby ensuring the maximum connectivity of the ring network.
Example two
In this embodiment, the sub-ring 1 and the sub-ring 2 access the main ring through different edge nodes as an example. Referring to fig. 12, devices S1 to S4 constitute a main ring, S7, S8, S1 and S2 constitute a sub-ring 1, and are connected to the main ring through edge nodes S1 and S2, and S5, S6, S3 and S4 constitute a sub-ring 2, and are connected to the main ring through edge nodes S3 and S4. Sub-ring 1 has a higher priority than sub-ring 2.
First, the HELLO packet forwarding path of the main ring and each sub-ring is explained.
In this embodiment, the HELLO packet forwarding path of the main ring is also in the main ring. This is the same as in the prior art. When the main ring is complete, port 2 of S1 is blocked.
Fig. 12 also shows a forwarding path of the HELLO packet of the subring 1 in the second embodiment. As shown in fig. 12, when the main ring and sub-ring are complete, the secondary port of main ring master node S1, port 2, is blocked. The HELLO packet sent by the port 1 of the master node S7 of the sub ring 1 reaches the edge node S2, and since the HELLO packet comes from the sub ring 1 and the priority of the sub ring 1 is higher than that of the sub ring 2, S2 forwards the HELLO packet to the master ring, that is, forwards the HELLO packet through the port 1 and the port 2. Because port 2 of S1 is blocked, the forwarding is stopped when the HELLO packet of sub ring 1 reaches port 2 of S1 through S3 and S4. After the HELLO packet of the other path reaches S1 through the common link S1-S2, the HELLO packet is forwarded to S7 through the port 3 of S1, so that a HELLO packet forwarding path, i.e., the path (r) in fig. 12 is formed, and at this time, the secondary port of S7 is blocked to avoid forming a data loop.
It can be seen that when the main ring and the sub-ring are complete, path (ii) in fig. 12 is not through, and only path (ii) is through. When the public link S1-S2 fails, S1 releases the secondary port, the path (i) is disconnected and the path (ii) is connected.
Fig. 13 shows a forwarding path of a HELLO packet of the subring 2 in the second embodiment. As shown in fig. 13, when the main ring and the sub ring are complete, the secondary port of S1 is blocked. When the HELLO packet sent by the port 1 of the master node S6 of sub ring 2 reaches the edge node S4, since the HELLO packet is from the sub ring 2 and the priority of the sub ring 2 is lower than that of the sub ring 1, S4 forwards the HELLO packet to the master ring (since S4 is not connected to the sub ring 1), that is, forwards the HELLO packet through the ports 1 and 2. Because the S1 secondary port is blocked, the HELLO packet can only reach the other edge node S3 via the common links S3-S4. S3 forwards the HELLO packet through its ports 2 and 3, and only the packet forwarded through port 3 returns to S6, so that a HELLO packet forwarding path formed is the path (i) in fig. 12, and at this time, S6 blocks its secondary port. And the HELLO packet forwarded through port 2 of S3 will stop forwarding due to the blocking of S1 and S7.
It can be seen that when the main ring and the sub-ring are complete, the path (ii) and the path (iii) in fig. 13 are not communicated, and only the path (i) is communicated. When the common link S3-S4 fails, S1 releases the secondary port and S7 remains blocked, at which point path # in fig. 13 goes through, path # and path # go out. When two public links fail, or one public link fails and one main ring non-public link fails, the path (c) in fig. 13 is through, and the path (c) are not through.
With reference to the HELLO packet forwarding paths of the sub-rings shown in fig. 12 to 13, it can be known that, when the main ring and all the sub-rings are complete, both the sub-ring 1 and the sub-ring 2 have a complete HELLO packet forwarding path, so that the secondary ports of the main nodes in the sub-ring 1 and the sub-ring 2 are blocked, thereby preventing the data packet loops, and each node can maintain communication.
When the common link S1-S2 on the primary ring fails, the secondary port of S1, see fig. 14, releases the block and the nodes within the primary ring can communicate normally. For sub-ring 1, path 1 is disconnected, but path 1 is opened due to the release of the sub-port of S1, so sub-ring 1 has a complete HELLO packet forwarding path, and the sub-port of S7 is still blocked. For sub-ring 2, the failure of links S1-S2 has no effect on sub-ring 2, and path (r) of sub-ring 2 remains connected. Therefore, the sub-ring 1 and the sub-ring 2 respectively have a complete HELLO message forwarding path, and the secondary ports of the main nodes in the sub-ring 1 and the sub-ring 2 are still blocked, so that a data loop cannot be formed. And eight devices from S1 to S8 in the system can keep communication, thereby ensuring the maximum connectivity of the ring network.
When the common link on the main ring S3-S4 fails, the secondary port of S1, see fig. 15, releases the block and the nodes in the main ring can communicate normally. For sub-ring 1, the failure of links S3-S4 has no effect on sub-ring 1, and path (r) of sub-ring 1 remains connected. For sub-ring 2, path (r) of sub-ring 2 is not opened, but path (r) of sub-ring 2 is opened due to the release of the sub-port of S1. Therefore, the sub-ring 1 and the sub-ring 2 respectively have a complete HELLO message forwarding path, and the secondary ports of the main nodes in the sub-ring 1 and the sub-ring 2 are still blocked, so that a data loop cannot be formed. And eight devices from S1 to S8 in the system can keep communication, thereby ensuring the maximum connectivity of the ring network.
When both common links S3-S4 and S3-S4 on the primary ring fail, see FIG. 16, primary node S1 in the primary ring releases its secondary port; the two HELLO packet forwarding paths in the sub-ring 1 are not communicated, so the master node S7 also releases its secondary port, at this time, the path in the sub-ring 2 is communicated, and the secondary port of the master node in the sub-ring 2 is still blocked. As can be seen from FIG. 16, there are paths between the eight devices S1-S8 in the system, thereby ensuring the maximum connectivity of the ring network.
When one of the non-common links on the primary ring fails S1-S4, see FIG. 17, the primary node S1 in the primary ring releases its secondary port; the path (r) in the subring 1 is available, and the path (r) in the subring 2 is available, so that the subring 1 and the subring 2 respectively have a complete HELLO message forwarding path, secondary ports of the main nodes in the subring 1 and the subring 2 are still blocked, and a data message loop cannot be formed. Moreover, six devices from S1 to S6 in the system can keep communication, and the maximum connectivity of the ring network is ensured. The HELLO packet forwarding path after the failure of the non-public links S2-S3 is similar to that in fig. 17 and will not be described in detail here.
When one common link S3-S4 and one-pass non-common link S1-S4 on the primary ring fail, see FIG. 18, the primary node S1 in the primary ring releases its secondary port; path 1 in sub-ring 1 is available; the sub-ring 2 master node S6 lets go of its secondary port. At this time, as shown in fig. 18, there is no data message loop in the main ring, the sub-ring 1 and the sub-ring 2, and the eight devices S1 to S8 in the system can all maintain communication, thereby ensuring the maximum connectivity of the ring network.
In practice, transient loops may occur when a primary loop double link fails or when a primary loop recovers from a double link failure. The invention avoids the generation of an instantaneous loop by setting a data domain timer and a control domain timer.
First, avoidance of the transient loop when a double link fails will be described in detail.
In the prior art, the master node does not receive the HELLO packet within a specified time, and then releases the secondary port. The specified time is determined by a Fail timer, and the timing time of the Fail timer is usually set to be a multiple of the HELLO message transmission cycle, usually 3 times. The timing time of the Fail timer of each node in the system is the same.
Then, when the main ring dual link failure occurs as shown in fig. 11, the secondary port of the main node S5 in sub ring 1 and the secondary port of the main node S6 in sub ring 2 are not released, and the HELLO packet in sub ring 2 is regarded as a data packet in sub ring 1, so that the path (c) in sub ring 2 is still not passed at this time. When the Fail timers of S5 and S6 time out, S5 and S6 simultaneously release the secondary port, and at this time, the path (c) of the sub-ring 2 is connected, and the connection of the path (c) makes it possible for the HELLO packet and the data packet of the sub-ring 2 to simultaneously reach the secondary port of the main node S6 of the sub-ring 2, and because S6 has not yet come to block the secondary port, an instant data loop is formed.
In order to avoid the generation of the instant loop when the double link fails, the invention distinguishes the data message (including the data message of the main ring and the subring) and the protocol message of the non-local subring on the subring main node, and does not look at the same thing any more. When the HELLO message sent by the self is not received within the specified time, the blocking of the non-native sub-ring protocol message is released first, and the blocking of the data message is released after waiting for a period of time.
The scheme for distinguishing the data message from the protocol message of the non-local subring can be realized by setting two Fail timers. Specifically, two timers are arranged on each sub-ring main node, one is a data domain Fail timer, the other is a control domain Fail timer, the timing time of the data domain Fail timer is longer than that of the control domain Fail timer, and the timing time of the two timers is longer than the transmission period of the HELLO message. Preferably, the timing time of the Fail timer in the control domain may be set to be 2 times of the HELLO message transmission period, and the timing time of the Fail timer in the data domain may be set to be 4 times of the HELLO message transmission period.
Then, the control unit in the sub-ring main node controls the control domain Fail timer and the data domain Fail timer to start timing when the HELLO message sent by the sub-ring main node is sent; when the Fail timer of the control domain is overtime, the secondary port of the subring main node is released to block the non-native subring protocol message; when the data domain Fail timer is overtime, the secondary port of the subring main node where the data domain Fail timer is located is released to block the data message; and when the sub-ring main node receives the HELLO message sent by the sub-ring main node, canceling the timing of the Fail timer in the control domain and the Fail timer in the data domain.
Referring to fig. 11, with the scheme of two Fail timers, after the dual-link failure of the main ring occurs, S5 and S6 release the blocking of the HELLO packet when the Fail timer of the control domain is out of time, at this time, the HELLO packet of the sub-ring 2 reaches S6 along the path (c), so that S6 blocks its secondary port to avoid the data loop, and S6 cancels the timing of the two Fail timers, thereby canceling the timer out state. When the Fail timer of the data field of S5 times out, S5 releases the blocking state, so that the data packet can flow.
Since the master ring has a fast LINK-DOWN notification mechanism, the mechanism of setting two Fail timers may not introduce a master node. Of course, in order to avoid the loss of the LINK-DOWN notification packet, two Fail timers may be set on the main ring master node.
Similar to the sub-ring main node, when two Fail timers are arranged on the main ring main node, the control unit in the sub-ring main node controls the Fail timer in the control domain and the Fail timer in the data domain to start timing when the control unit is in an HELLO message sent by the main ring main node; when the control domain Fail timer is overtime, the secondary port of the main node of the main ring where the control domain Fail timer is positioned is released to block the protocol message of the subring; when the data domain Fail timer is overtime, releasing the blocking of the secondary port of the main node of the main ring to the data message; and when the main ring main node receives the HELLO message sent by the main ring main node, canceling the timing of the Fail timer in the control domain and the Fail timer in the data domain.
Next, the instantaneous loop avoidance when the primary loop recovers from the double link failure is described in detail.
In the prior art, in order to avoid an instantaneous loop, when a Link recovers from a failure, ports at two ends of the Link are set to be in a temporary blocking (Pre-forwarding) state, and then when a COMPLETE-recovery packet (COMPLETE-FLUSH-FDB) of a host node is received or the Pre-forwarding state is maintained for a specified time, the Pre-forwarding state is switched to be in a connected (Link-Up) state. The specified time is determined by a Fail timer, and the timing time of the Fail timer is usually set to be multiple times of the HELLO message sending period, often 3 times. When the port is in the Pre-forwarding state, neither the data packet nor the protocol packet of the non-local ring can pass through.
Then, when the dual-link failure of the main ring is recovered as shown in fig. 11, S1, S3, and S4 on the main ring are still in the Pre-forwarding state, and the protocol packets and data packets of the sub ring cannot pass through the main ring. When the Pre-forwarding state of S1, S3, and S4 is maintained for a predetermined time, the connection state is switched to the connection (Link-Up) state, so as to release the respective secondary ports, and at this time, the protocol packet and the data packet of the subring 1 enter the subring 1 at the same time, and at this time, the secondary port of the master node S5 of the subring 1 is still in the release state, so that an instant data loop is formed.
In order to avoid the generation of the instant loop when the double-link fault is recovered, the invention distinguishes the data message and the sub-loop protocol message on each node of the main loop and does not look at the same thing. When the maintenance time of the Pre-forwarding state of the main ring node reaches the specified time, the block of the sub-ring protocol message is released first, and after waiting for a period of time, the block of the data message is released again.
The scheme for distinguishing the data message from the subring protocol message can be realized by setting two Fail timers. Specifically, two timers are arranged on each node of the main ring, one is a data domain Fail timer, the other is a control domain Fail timer, the timing time of the data domain Fail timer is longer than that of the control domain Fail timer, and the timing time of the two timers is longer than the transmission period of the HELLO message. Preferably, the timing time of the Fail timer in the control domain may be set to be 2 times of the HELLO message transmission period, and the timing time of the Fail timer in the data domain may be set to be 4 times of the HELLO message transmission period.
Then, when the state of the control unit in each node of the main ring is transferred to a pre-forwarding state, the control unit controls a control domain Fail timer and a data domain Fail timer to start timing; when the control domain Fail timer is overtime, the temporary blocking port is released to block the subring protocol message; and when the data field Fail timer is overtime, the temporary blocking port is released to block the data message.
It can be seen from the above that, the RRPP ring network system of the present invention can provide a flexible subnet access manner, and when the main ring link fails, it can ensure that no data loop occurs, and can ensure the maximum connectivity of the ring network to the maximum extent. Moreover, since the present invention cancels the SRPT state checking mechanism, if the ring network structure and failure as shown in fig. 4 occur, S3 will not block its port 3, thereby ensuring the maximum connectivity of the ring network.
Based on the Ethernet ring network system, the invention also provides a realization method of the Ethernet ring network, which is applied to the Ethernet ring network system comprising a main ring and one or more sub-rings; a plurality of sub-rings are accessed to the main ring from the same or different nodes, and the nodes where the sub-rings intersect with the main ring are called edge nodes. The method comprises the following steps:
A. different priorities are configured for different sub-rings.
B. The main node in the main ring and each sub-ring sends HELLO message from the main port, and blocks the auxiliary port after the auxiliary port receives the handshake message sent by the main node and each sub-ring.
C. When each node in the main ring receives the HELLO message from the sub-ring, the received HELLO message is regarded as a data message, and the received HELLO message is determined to be forwarded or blocked according to the port state of the node.
D. When receiving a HELLO message from the sub-ring x, the edge node forwards the received HELLO message to the main ring and the sub-ring with the priority not lower than that of the sub-ring x. As in the prior art, the edge node only forwards the HELLO packet to the primary ring when receiving the HELLO packet from the primary ring.
E. When the main node of each sub-ring receives the HELLO message from other sub-rings, the received HELLO message is regarded as a data message, and the received HELLO message is determined to be forwarded or blocked according to the port state of the main node.
The sequence numbers of the above steps are not used to limit the execution sequence of the steps.
The configuration step of step a may be: the RingID field in the prior art is used as the sub-ring priority identification of the present invention.
The step B may be implemented by matching a pre-configured correspondence between the source ring information and the egress port. This correspondence has been described in detail above and will not be described here. In this case, the step B is: each edge node forwards the received HELLO message to the main ring and the sub-ring with the priority not lower than the sub-ring x, wherein the steps of: after receiving the HELLO message, the edge node matches the source ring information determined according to the received HELLO message in the corresponding relation, finds an output port of the received HELLO message, and forwards the received HELLO message from the found output port.
In order to avoid a transient data loop that may occur when a primary loop dual link fails, the method further comprises the steps of: when the master node in each subring does not receive the HELLO message sent by the master node in the preset time t1, the master node firstly releases the blockage of the slave port to the non-native subring protocol message, and releases the blockage of the slave port to the data message after waiting for a set time t 2.
This step can be implemented by setting two Fail timers. Specifically, the master node Sx of the current subring1After the HELLO message is sent out, controlling a control domain Fail timer and a data domain Fail timer to start timing; when the control domain Fail timer is overtime, the master node Sx is released1The secondary port of the network element blocks the non-native sub-ring protocol message; when the data field Fail is specifiedWhen the timer is overtime, the secondary port of the main node Sx is released to block the data message; when the master node Sx1And when receiving the HELLO message sent by the controller, canceling the timing of the Fail timer in the control domain and the Fail timer in the data domain.
The setting of the data field Fail timer and the control field Fail timer is the same as the above, and is omitted here.
The mechanism of the double Fail timers can also introduce a main ring main node to avoid an instant data loop which may be caused when the LINK-DOWN message is lost. In this case, the method further comprises the steps of:
master node Sx as master ring2When an HELLO message is sent out, controlling a control domain Fail timer and a data domain Fail timer to start timing;
when the control domain Fail timer is overtime, the master node Sx is released2The secondary port of the sub-ring protocol message is blocked; when the data field Fail timer is overtime, the master node Sx is released2The secondary port of the network side blocks the data message;
when the master node Sx2And when the HELLO message sent by the self is received, timing of a Fail timer in a control domain and a Fail timer in a data domain is cancelled.
In order to avoid the transient data loop which may occur when the dual link failure of the main loop is recovered, the method further comprises the following steps: when each node of the main ring maintains the temporary blocking state for a preset time t1, the temporary blocking port is firstly released to block the sub-ring protocol message, and after a set time t2, the temporary blocking port is released to block the data message.
This step may also be implemented by setting the two Fail timers described above. Specifically, when each node Sx of the main ring3When the self state is transferred to a pre-forwarding state, controlling a control domain Fail timer and a data domain Fail timer to start timing;
when the control field Fail timer times outWhen it is time to let go of the node Sx3The temporary blocking port blocks the sub-ring protocol message; when the data field Fail timer is overtime, the node Sx is opened3The temporary blocking port blocks the data message.
In summary, the above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (17)

1. An Ethernet ring network system comprises a main ring consisting of nodes and one or more sub-rings; the main ring and each sub-ring comprise a main node; each main node is used for sending a handshake HELLO message from a main port of the main node, and blocking an auxiliary port after receiving the HELLO message sent by the main node from the auxiliary port of the main node; when each node in the main ring receives the HELLO message from the sub-ring, the received HELLO message is regarded as a data message, and the received HELLO message is determined to be forwarded or blocked according to the port state of the node;
it is characterized in that the preparation method is characterized in that,
different subrings are accessed into the main ring from the same or different nodes, and all nodes where the subrings are intersected with the main ring are called edge nodes; different sub-rings are configured to have different priorities;
the edge node is used for forwarding the received HELLO message to the main ring and the sub-ring with the priority not lower than that of the sub-ring x when the HELLO message from the sub-ring x is received;
when the main node of each sub-ring in the system receives HELLO messages from other sub-rings, the main node regards the received HELLO messages as data messages, and the received HELLO messages are determined to be forwarded or blocked according to the port state of the main node.
2. The system of claim 1, wherein the master node in each sub-ring is further configured to, when no self-sent HELLO packet is received within a predetermined time t1, unblock the slave port for a non-native sub-ring protocol packet, and wait for a set time t2 before unblocking the slave port for a data packet.
3. The system of claim 2, wherein the master node in each sub-ring comprises a control unit, a control domain failure timer, and a data domain failure timer;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message;
the control unit is used for controlling the control domain fault timer and the data domain fault timer to start timing after the sub-ring main node sends an HELLO message; when the control domain fault timer is overtime, the secondary port of the subring main node is released to block the non-native subring protocol message; when the data domain fault timer is overtime, releasing the blocking of the secondary port of the subring main node to the data message; and when the subring master node receives the HELLO message sent by the subring master node, canceling the timing of the control domain fault timer and the data domain fault timer.
4. The system of claim 1, wherein the master node of the master ring comprises a control unit, a data domain failure timer, and a control domain failure timer;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message;
the control unit is used for controlling the control domain fault timer and the data domain fault timer to start timing when the main ring main node sends an HELLO message; when the control domain fault timer is overtime, releasing the secondary port of the main node of the main ring to block the protocol message of the subring; when the data domain fault timer is overtime, releasing the blocking of the secondary port of the main node of the main ring to the data message; and when the main ring main node receives the HELLO message sent by the main ring main node, timing of the control domain fault timer and the data domain fault timer is cancelled.
5. The system of claim 1, wherein each node of the main ring is further configured to unblock the temporary blocking port from the sub-ring protocol packet when the temporary blocking status is maintained for a predetermined time t1, and to unblock the temporary blocking port from the data packet after waiting a set time t 2.
6. The system of claim 5, wherein the nodes in the primary ring include a control unit, a control domain failure timer, and a data domain failure timer;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the control domain fault timer and the timing time of the data domain fault timer are both longer than the sending period of the HELLO message;
the control unit is used for controlling the control domain fault timer and the data domain fault timer to start timing when the self state is transferred to the temporary blocking state; when the control domain fault timer is overtime, the temporary blocking port of the node is released to block the sub-ring protocol message; and when the data domain fault timer is overtime, releasing the temporary blocking port of the node to block the data message.
7. The system according to claim 3, 4 or 6, wherein the timing time of the data domain failure timer is 4 times of a HELLO message transmission period; the timing time of the control domain fault timer is 2 times of the transmission period of the HELLO message.
8. An edge node, characterized in that the edge node comprises a message receiving unit and a message forwarding unit;
the message receiving unit is used for sending the HELLO message received from the outside of the node to the message forwarding unit;
and the message forwarding unit is used for forwarding the received HELLO message to a main ring of a system where the HELLO message is located and a sub-ring with the priority not lower than that of the sub-ring x when the HELLO message from the sub-ring x is received.
9. The edge node of claim 8, wherein the packet forwarding unit includes a corresponding module and a forwarding module;
the corresponding module is used for storing the corresponding relation between the set source ring information and the output port; if the source ring information is a main ring, the corresponding output port is a public port connected with the main ring; if the source ring is a subring, the corresponding output port comprises a public port connected with the main ring and a specific edge port, and the specific edge port is an edge port connected with the subring with the priority not lower than that of the source ring;
and the forwarding module is used for matching the source ring information determined according to the received HELLO message in the corresponding module after receiving the HELLO message, finding out an output port of the received HELLO message and forwarding the received HELLO message from the found output port.
10. A method for realizing Ethernet ring network is applied in Ethernet ring network system including main ring and one or more subrings; the method is characterized in that different subrings are accessed into a main ring from the same or different nodes, and all nodes intersected with the main ring by the subrings are called edge nodes;
the method comprises the following steps:
configuring different priorities for different subrings;
the main nodes in the main ring and each subring send HELLO messages from the main port, and the secondary port is blocked after receiving the handshake messages sent by the secondary port;
when each node in the main ring receives the HELLO message from the sub-ring, the received HELLO message is regarded as a data message, and the received HELLO message is determined to be forwarded or blocked according to the port state of the node;
when receiving a HELLO message from a sub-ring x, the edge node forwards the received HELLO message to a main ring and a sub-ring with the priority not lower than that of the sub-ring x;
when the main node of each subring in the system receives HELLO messages from other subrings, the main node determines to forward or block the received HELLO messages according to the port state of the main node of the subring.
11. The method of claim 10, further comprising: presetting a corresponding relation between source ring information and an output port; if the source ring information is a main ring, the corresponding output port is a public port connected with the main ring; if the source ring is a subring, the corresponding output port comprises a public port connected with the main ring and a specific edge port, and the specific edge port is an edge port connected with the subring with the priority not lower than that of the source ring;
the forwarding the received HELLO packet to the main ring and the sub-ring with the priority not lower than the sub-ring x comprises: after receiving the HELLO message, the edge node matches the source ring information determined according to the received HELLO message in the corresponding relation, finds an output port of the received HELLO message, and forwards the received HELLO message from the found output port.
12. The method of claim 10, further comprising: when the master node in each subring does not receive the HELLO message sent by the master node in the preset time t1, the master node firstly releases the blockage of the slave port to the non-native subring protocol message, and releases the blockage of the slave port to the data message after waiting for a set time t 2.
13. The method of claim 12, wherein the unblocking of the slave port for the non-native sub-ring protocol packet before waiting a set time t2 comprises:
master node Sx of ring when son1After the HELLO message is sent out, controlling a control domain fault timer and a data domain fault timer to start timing;
when the control domain fault timer is overtime, the master node Sx is released1The secondary port of the network element blocks the non-native sub-ring protocol message; when the data field fault timer is overtime, the master node Sx is released1The secondary port of the network side blocks the data message;
when the master node Sx1When a self-sent HELLO message is received, timing of the control domain fault timer and the data domain fault timer is cancelled;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message.
14. The method of claim 10, further comprising:
master node Sx as master ring2When the HELLO message is sent out, controlling a control domain fault timer and a data domain fault timer to start timing;
when the control domain failsWhen the device is overtime, the master node Sx is released2The secondary port of the sub-ring protocol message is blocked; when the data field fault timer is overtime, the master node Sx is released2The secondary port of the network side blocks the data message;
when the master node Sx2When a self-sent HELLO message is received, timing of the control domain fault timer and the data domain fault timer is cancelled;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the data domain fault timer and the timing time of the control domain fault timer are both longer than the sending period of the HELLO message.
15. The method of claim 10, further comprising: when each node of the main ring maintains the temporary blocking state for a preset time t1, the temporary blocking port is firstly released to block the sub-ring protocol message, and after a set time t2, the temporary blocking port is released to block the data message.
16. The method of claim 15, further comprising: the first releasing the blocking of the temporary blocking port to the sub-ring protocol message, and after waiting for a set time t2, releasing the blocking of the temporary blocking port to the data message includes:
node Sx of the main ring3When the self state is transferred to the temporary blocking state, controlling a control domain fault timer and a data domain fault timer to start timing;
when the fault timer of the control domain is overtime, the node Sx is released3The temporary blocking port blocks the sub-ring protocol message; when the data field fault timer is overtime, the node Sx is released3The temporary blocking port blocks the data message;
the timing time of the data domain fault timer is longer than that of the control domain fault timer, and the timing time of the control domain fault timer and the timing time of the data domain fault timer are both longer than the sending period of the HELLO message.
17. The method according to claim 13, 14 or 16, wherein the timing time of the data domain failure timer is 4 times of a HELLO message transmission period; the timing time of the control domain fault timer is 2 times of the transmission period of the HELLO message.
CN2009100928230A 2009-09-09 2009-09-09 Ethernet ring network system and border node thereof and Ethernet ring network realization method Active CN101656664B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100928230A CN101656664B (en) 2009-09-09 2009-09-09 Ethernet ring network system and border node thereof and Ethernet ring network realization method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100928230A CN101656664B (en) 2009-09-09 2009-09-09 Ethernet ring network system and border node thereof and Ethernet ring network realization method

Publications (2)

Publication Number Publication Date
CN101656664A true CN101656664A (en) 2010-02-24
CN101656664B CN101656664B (en) 2012-05-23

Family

ID=41710763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100928230A Active CN101656664B (en) 2009-09-09 2009-09-09 Ethernet ring network system and border node thereof and Ethernet ring network realization method

Country Status (1)

Country Link
CN (1) CN101656664B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108234200A (en) * 2017-12-21 2018-06-29 中国联合网络通信集团有限公司 Communication processing method and device based on access ring
CN104283758B (en) * 2014-08-04 2018-07-17 新华三技术有限公司 A kind of method and apparatus that boss's ring is associated with by data vlan
CN110336728A (en) * 2019-07-26 2019-10-15 新华三大数据技术有限公司 A kind of message processing method, node device, electronic equipment and readable storage medium storing program for executing
CN115695082A (en) * 2022-10-30 2023-02-03 重庆长安汽车股份有限公司 Vehicle-mounted Ethernet ring protection switching method and device, electronic equipment and storage medium

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499949B (en) * 2008-02-01 2011-07-06 杭州华三通信技术有限公司 Failure recovery processing method in intersected ring network, node and intersected ring network
CN101534232B (en) * 2008-03-10 2012-12-19 中兴通讯股份有限公司 Method for preventing internet storm occurring in Ether multi-ring network
CN101677267B (en) * 2008-09-17 2013-03-27 中兴通讯股份有限公司 Method for retransmitting protocol frames in transannular way and sharing nodes in multiple rings of Ethernet
CN101677281B (en) * 2008-09-19 2011-10-26 中兴通讯股份有限公司 Ether multiple ring control channel allocation and message transmission method thereof

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104283758B (en) * 2014-08-04 2018-07-17 新华三技术有限公司 A kind of method and apparatus that boss's ring is associated with by data vlan
CN108234200A (en) * 2017-12-21 2018-06-29 中国联合网络通信集团有限公司 Communication processing method and device based on access ring
CN108234200B (en) * 2017-12-21 2019-08-27 中国联合网络通信集团有限公司 Communication processing method and device based on access ring
CN110336728A (en) * 2019-07-26 2019-10-15 新华三大数据技术有限公司 A kind of message processing method, node device, electronic equipment and readable storage medium storing program for executing
CN110336728B (en) * 2019-07-26 2021-08-06 新华三大数据技术有限公司 Message processing method, node equipment, electronic equipment and readable storage medium
CN115695082A (en) * 2022-10-30 2023-02-03 重庆长安汽车股份有限公司 Vehicle-mounted Ethernet ring protection switching method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN101656664B (en) 2012-05-23

Similar Documents

Publication Publication Date Title
EP1994694B1 (en) System and method for preventing loops in the presence of control plane failures
EP2117176B1 (en) Method for implementing intersecting ring network with arbitrary topology, node and intersecting ring network
US7929427B2 (en) Ring rapid spanning tree protocol
CN100369436C (en) Looped network and its protecting method
US8699380B2 (en) Port table flushing in ethernet networks
JP4628945B2 (en) Layer 2 network
AU2009295116B2 (en) Control method for protecting failure recovery of Ethernet ring and Ethernet ring nodes
CN101677267B (en) Method for retransmitting protocol frames in transannular way and sharing nodes in multiple rings of Ethernet
US8264954B2 (en) Method and device for operating a network and communication system comprising such device
EP2477359B1 (en) Ethernet switch ring (esr) protection method and transit node
US20090147672A1 (en) Protection switching method and apparatus for use in ring network
CN101841450B (en) Method and system for realizing stable communication by forming multiple ring topologies into intersecting ring
WO2009039697A1 (en) Ethernet ring network systerm, transmission node of ethernet ring network and initialization method thereof
JP2008166990A (en) Ring node device
CN101714939A (en) Fault treatment method for Ethernet ring network host node and corresponding Ethernet ring network
EP1672847B1 (en) Ring rapid spanning tree protocol
WO2012142870A1 (en) Method, active device and standby device for automatic protection switching
WO2012162946A1 (en) Message processing method and system
JP2003258822A (en) Packet ring network and inter-packet ring network connection method used in the same
CN103873333A (en) Ring network three-layer convergence method and device
CN101656664B (en) Ethernet ring network system and border node thereof and Ethernet ring network realization method
WO2010031295A1 (en) Control method for ethernet failure recovery
CN102487348B (en) Method and system for realizing looped network uplink protection
CN110635940A (en) Main/standby switching method of EAPS Ethernet ring network
US20120269056A1 (en) Method, device, and system for protecting semi-ring network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.

CP03 Change of name, title or address