CN101405976A - Detecting loops between network devices by monitoring MAC moves - Google Patents

Detecting loops between network devices by monitoring MAC moves Download PDF

Info

Publication number
CN101405976A
CN101405976A CNA2006800522147A CN200680052214A CN101405976A CN 101405976 A CN101405976 A CN 101405976A CN A2006800522147 A CNA2006800522147 A CN A2006800522147A CN 200680052214 A CN200680052214 A CN 200680052214A CN 101405976 A CN101405976 A CN 101405976A
Authority
CN
China
Prior art keywords
mac
counting
port
mac address
moved
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.)
Pending
Application number
CNA2006800522147A
Other languages
Chinese (zh)
Inventor
V·贾因
S·斯里尼瓦桑
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.)
Nokia of America Corp
Original Assignee
Lucent Technologies Inc
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 Lucent Technologies Inc filed Critical Lucent Technologies Inc
Publication of CN101405976A publication Critical patent/CN101405976A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/18Loop-free operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Small-Scale Networks (AREA)

Abstract

A technique for detecting a loop between network devices such as customer and carrier edge devices involves counting the number of media access control (MAC) address moves that occur at a device and comparing the number of MAC address moves to a pre-established MAC move threshold. The technique includes artificially accelerating the MAC move count related to a MAC address when the MAC address is moving between a set of ports at which the MAC address was previously found. The MAC move count is artificially accelerated because movement of a MAC address between a set of ports at which the MAC address was previously found is a strong indication of loop. The MAC move count is artificially accelerated by weighting the MAC move count once it has been determined that a MAC is moving between a set of ports at which the MAC address was previously found.

Description

Move the loop that detects between the network equipment by monitoring MAC
The cross reference of related application
The application is the part continuation application of the co-pending patent application serial number 10/809,028 before submitted on March 25th, 2004.In addition, the application enjoys in the rights and interests of the temporary patent application sequence number of submitting on December 7th, 2,005 60/748,133.
Invention field
The present invention relates generally to network management, relates in particular to the loop (loop) between detection and the managing network device.
Background of invention
In the global commerce environment, the mission critical network is playing more and more important effect, and is connected with the carrier network that is used to provide support (carrier network) inevitably and depends on carrier network.In a lot of situations, the supplier (supplier) of carrier network service does not manage client's preset device (customer premiseequipment CPE) of its customer network, and can not control the customer network configuration error (configuration error) of the diverse network fault that may cause comprising traffic loops.Such configuration error at customer network place may force business to enter never the circulating path that finishes, and described circulating path will be crossed over the edge device of client and carrier network, resistance to overturning that thus will the appreciable impact carrier network.Because operator does not control CPE, so operator can't fundamentally solve loop.The loop that solution is derived from customer network needs operator manually to carry out the fault eliminating usually.And the cost that artificial fault is got rid of is very high and very consuming time.
In view of the relation between operator and the customer network, needed is a kind ofly to be used to detect and managing network device-technology of the loop between the edge device of client and carrier network especially.
Summary of the invention
The technology of the loop between a kind of network equipment that is used to detect such as client and provider edge equipment, this technology comprises: the number of times that media interviews control (MAC) address that occurs at the equipment place is moved (for example source MAC moves) is counted, and number of times and the predefined MAC that MAC Address moves moved threshold.This technology comprises: when MAC Address between one group of port (wherein before finding this MAC Address) when mobile in described port, (artificially) quickens the MAC relevant with this MAC Address and moves counting artificially.Because MAC Address is formerly found mobile between one group of port of this MAC Address at its place be the strong proof of loop, so MAC moves counting and is quickened artificially.Just formerly find between one group of port of this MAC Address when mobile in case determined MAC Address, just quicken MAC artificially and move counting by MAC being moved count to be weighted at its place.
If move the result of counting and detect loop, can start the Loop Protection action so as MAC.Usually, the Loop Protection action that is activated in response to detected loop comprises: block the stream of packets that (block) constitutes loop at the relevant device place.
According to below in conjunction with the given detailed description of accompanying drawing, other aspects of the present invention and advantage will become clearly, and wherein these accompanying drawings adopt way of example that principle of the present invention is described.
The accompanying drawing summary
Fig. 1 has described first network that is connected with second network, and for instance, first network is a customer network, and second network is a carrier network.
Fig. 2 illustrates study and diffusion (flooding) process at the situation of the client's grouping that is sent to provider edge equipment B from customer edge devices A.
Fig. 3 illustrates the loop of creating in the grouping that will have the identical sources MAC Address between customer network and carrier network when two ports of customer edge devices A are forwarded to carrier network.
Fig. 4 is the process flow diagram according to the method that is used for the loop between the managing network device of the embodiment of the invention.
Fig. 5 illustrates the illustrative embodiments of method depicted in figure 4 at the provider edge equipment A among Fig. 3.
Fig. 6 illustrates the port that is in blocked state and is the existence of how cancellation loop at provider edge equipment place blockage source MAC stream.
Fig. 7 illustrates provider edge equipment B and started the situation of blocking before provider edge equipment A.
Fig. 8 illustrates the embodiment of the network node that can implement the embodiment of the invention.
Fig. 9 describes according to the function of loop management engine of the present invention.
Figure 10 has described the enhancing at the process flow diagram of Fig. 4.
Figure 11 A illustrates MAC Address moving between two different ports of network node.
Figure 11 B illustrates MAC and moves counting how according to finding at its place formerly whether port of this MAC Address is found this MAC Address and changed according to being applied to the weighting scheme that the MAC shown in Figure 11 A moves.
Figure 11 C illustrates at time t 5The actual MAC of Figure 11 B moves counting and moves counting from the weighting MAC of row 2 and move counting with respect to the MAC that MAC moves threshold value.
Figure 12 has described to comprise the exemplary MAC that is used for following the trail of the field that (track) MAC moves and has moved table.
Figure 13 has described to comprise the element of the loop management engine among Fig. 9 and the loop management engine that MAC moves weighting block.
Figure 14 is the process flow diagram that is used to detect the method for the loop between the network equipment.
In whole specification, similar Reference numeral can be used to identify similar element.
Describe in detail
Fig. 1 has described first network 102 that is connected with second network 104, and for instance, first network is a customer network, and second network is a carrier network.Customer network comprises two customer edge devices (customer edge devices A and B 106 and 108), and carrier network comprises two provider edge equipments (provider edge equipment A and B110 and 112).In the example of Fig. 1, client and provider edge equipment use by the 2nd layer Ethernet in the open system interconnection (osi) model of International Standards Organization (ISO) definition.As known in the art, Ethernet media interviews control (MAC) address and " source " and " destination " MAC Address of being assigned to the network equipment will be used to definite how the grouping by forwarded.
The customer edge devices 106 that Fig. 1 described and 108 and provider edge equipment 110 and 112 be connected to each other in a kind of redundant configuration mode, wherein each customer edge devices all is connected with each provider edge equipment.By providing redundant configuration, each link between customer network and the carrier network all has secondary link (secondary link), if primary link breaks down, then can use secondary link.Though redundant configuration provides improved reliability under the situation of link failure, redundant configuration might cause crossing over the traffic loops between the edge device of operator and customer network.
Except redundant configuration, Fig. 1 also illustrates the example of the MAC address learning that carries out on provider edge equipment 110 and 112.In the example of Fig. 1, described study is the basis that is grouped into source MAC (being referred to as " source MAC " or " source MAC X " here) transmission that utilizes X from customer edge devices A 106 at port P1.In packet-based networking (networking)-especially Ethernet field known, when grouping arrives provider edge equipment A, provider edge equipment can be associated the source MAC of grouping with the port of grouping arrival, and the pairing (pair) that is associated can be stored in and transmit.Shown in the frame of broken lines among Fig. 1 114, provider edge equipment A is associated source MAC X by learning process with port P1.Then, this pairing that is associated will be used to transmit follow-up reception, have with MAC Address that is associated and port-pairing in the grouping of the destination MAC Address that is complementary of MAC Address.
Except source MAC study, if provider edge equipment A110 does not know how to arrive destination MAC Address entrained in the packet header (for example next jumping), provider edge equipment will be grouping " diffusion " to its all of the port (except the port that receives grouping) so, and waits for and check that complementation divides into groups to receive on which port.In the networking based on Ethernet, diffusion is a kind of technique known, and here it is not described in more detail.As the result of diffusion, provider edge equipment B112 receives the copy of the grouping with source MAC X at port P4.By above-mentioned learning process, provider edge equipment B is associated source MAC X with its port P4, and with this association be kept at transmit in (referring to frame of broken lines 116).
Send if same packets is the port P1 from the port P2 of customer edge devices A 106 rather than customer edge devices A, for provider edge equipment A and B, study and diffusion process will be reverse so.Fig. 2 illustrates the study and the diffusion process of situation of client grouping that is sent to the source MAC X of provider edge equipment B 212 at port P2 from customer edge devices A 206 at having.As shown in Figure 2, provider edge equipment B receives grouping, and learns source MAC X (referring to frame of broken lines 216) on port P1.Suppose that provider edge equipment B does not learn next jumping of the destination MAC Address of the grouping that is received as yet, this provider edge equipment B can be diffused into provider edge equipment A 210 with grouping via port P4 so.In response to the diffusion at provider edge equipment B place, provider edge equipment A learns source MAC X (referring to frame of broken lines 214) on its port P4.
Under the situation of the scheme that has provided Fig. 1 and 2, if customer edge devices A will divide into groups to be forwarded to carrier network from port P1 or P2, provider edge equipment will be carried out necessary study so, and carrier network (for example will rest on stable state, transmit stable, and study is confined to new stream).But, if customer network suffers from the configuration error of permission from these two forwarding same packets (or having the different grouping of identical source MAC) of port P1 and port P2 of customer edge devices A, between customer edge devices A and provider edge equipment A and B, will create one or more loops so.
Fig. 3 illustrates the loop of creating in the grouping that will have identical sources MAC between customer network 302 and carrier network 304 when two ports of customer edge devices A 306 are forwarded to carrier network.With reference to figure 3, customer edge devices A has the grouping of source MAC X from port P1 and these two forwarding of P2.Provider edge equipment A 310 receives one of them and has the grouping of source MAC X at port P1 place, and learns source MAC X as described above on port P1.The grouping that provider edge equipment A also will receive is diffused into provider edge equipment B 312.Provider edge equipment B receives the grouping that one of them has source MAC X at its port P1, and learns source MAC X on P1.The grouping that provider edge equipment B also will receive is diffused into provider edge equipment A.Provider edge equipment A receives from the grouping of provider edge equipment B diffusion at port P4, and responds (shown in dotted line 320) by this grouping being diffused into port P1.Equally, provider edge equipment B receives from the grouping of provider edge equipment A diffusion at port 4, and responds (shown in dotted line 322) by this grouping being diffused into port P1.Thus, described diffusion has been created (along clockwise direction) and has been advanced to provider edge equipment A from customer edge devices A, to provider edge equipment B and get back to the loop of customer edge devices A, and (along counterclockwise) advance to provider edge equipment B from customer edge devices A, to provider edge equipment A and get back to another loop of customer edge devices A.The business that constitutes loop can cause serious negative effect to the carrier network performance.
Owing to created loop between client and provider edge equipment, provider edge equipment A and B 310,312 are at two different port study source MAC X.For example, when provider edge equipment A received grouping on port P1, it learnt source MAC X on port P1, and when it received grouping on port 4, it learnt source MAC X (referring to frame of broken lines 314 and 316) on port P4.This can cause provider edge equipment to enter unsettled (unsettled) state, and in this state, source MAC and port association change all the time.Because source MAC can occur from occurring moving at another port at a port, therefore, the variation each time with source MAC and port association here is called " MAC moves ".Generally speaking, when having loop, affected provider edge equipment will meet with the remarkable increase that MAC moves generation rate.
According to embodiments of the invention; loop between the network equipment such as client and provider edge equipment is managed in the following way: monitor the existence of moving detection loop at the MAC of equipment place appearance; if and MAC moves and show and have loop, then start the Loop Protection action.The MAC that is used to indicate loop to exist moves number of times and can be planned by the user, and preestablishes in equipment disposition.MAC moves threshold value can be expressed as the number of times that MAC moves, and for example, this threshold value is to define according to the number of times that MAC rate travel or MAC move.Usually, the Loop Protection action that is activated in response to detected loop comprises: block the stream of packets that constitutes loop on relevant device.
Fig. 4 is the process flow diagram according to the method that is used for the loop between the managing network device of the embodiment of the invention.At piece 430, receive grouping information.At piece 432, study source MAC and port association.In decision point 434, whether definite source MAC of being acquired and port association trigger MAC is moved.At piece 436, if triggering MAC, source MAC that is acquired and port association do not move, then do not take the Loop Protection action.But if the source MAC of being acquired moves with the related MAC that do not trigger, then at piece 438, the number of times that MAC is moved monitors.At judgement frame 440, determine that MAC moves number of times and whether exceeds predefined MAC and move threshold value.Do not move threshold value if exceed predefined MAC,, do not take the Loop Protection action then at piece 436.But, move threshold value if exceeded predefined MAC, then at piece 442, conclude to have loop, and start the Loop Protection action.
Fig. 5 illustrates method that Fig. 4 the describes illustrative embodiments at the provider edge equipment A among Fig. 3.This illustrative embodiments illustrates the mac learning state table of provider edge equipment, and the cumulative frequency that moves of the MAC of time to time change.This form comprises from time t 0To time t 5Five MAC that take place move.MAC moves and moves threshold value with MAC and can and move number of times or MAC rate travel with MAC according to execution mode and define and/or represent.Usually, the MAC rate travel is following calculating:
MAC rate travel=MAC moves number of times/elapsed time
In the example of Fig. 5, the MAC rate travel is calculated as 5/ (t 5-t 0).In one embodiment, the MAC that the MAC rate travel is programmed to per second moves number of times, and utilizes with each MAC and move and the counter that increases comes monitoring MAC to move.
For the illustration purpose, suppose that in the example of Fig. 5 the MAC rate travel has exceeded predefined MAC and moved threshold value.Described such as mentioned with reference to figure 4, in case determine that the MAC rate travel exceeds predefined MAC and moves threshold value, just start the Loop Protection action.In one embodiment, Loop Protection action comprises and blocks and exceeded all relevant stream of packets of source MAC that MAC moves threshold value.In the example of Fig. 3,, so just has the respective streams of source MAC X at the port of these two provider edge equipments obstruction if all exceeded the MAC rate travel at provider edge equipment A and B 310,312 places.Fig. 6 illustrates the related port (concerning described stream, all of the port can be placed in blocked state) that is in blocked state, and is the existence of how cancellation loop at the blockage source MAC of the related port place of provider edge equipment stream.
In one embodiment, described obstruction is configured to continue the predefined time period, and after this, obstruction is automatically released.Ideally, during obstruction was ready, the configuration error at customer edge devices place obtained correcting.When these ports were released, if configuration error still exists, this loop may begin once more so, and finally caused starting once more obstruction.In another embodiment, till obstruction is configured to last till that it is by artificial release.In addition, the other technologies that are used to discharge obstruction also can be implemented.
In one embodiment, block specific to exceeding the stream that MAC moves threshold value.Just, when starting Loop Protection, can not get clogged from exceeding the grouping that MAC moves the stream of threshold value.For example,, and have only the grouping formation loop of VLAN 10 and cause exceeding MAC and move threshold value, will only block grouping so with source MAC X and VLAN 10 if source MAC X has used two different VLAN (for example VLAN 10 and VLAN 20).The obstruction that is somebody's turn to do " flowing specific " can be applied to any stream indication, classification, grade or the like.Described stream can be indicated by following any combination: for example source MAC, destination MAC, VLAN ID, MPLS label, mark or the like.By contrast, concerning other loop management system such as the Spanning-Tree Protocol (STP) of IEEE 802.1D definition, when port enters blocked state, all business that these systems will the port blocked place.
Eliminated loop problem though block respective streams,, if the business that the corresponding stream of obstruction will stop (interim at least) to get clogged on these two provider edge equipments as Fig. 6 describes arrives its destination.In another embodiment, one of provider edge equipment will exceed MAC and move threshold value, and exceeds MAC at another provider edge equipment and start to block before moving threshold value.Fig. 7 illustrates wherein, and provider edge equipment B 712 started obstruction before provider edge equipment A 710.Especially, as shown in Figure 7, provider edge equipment B blocks corresponding stream at port P1 and P4.In this case, because the obstruction at provider edge equipment B place, loop condition will be eliminated, and the grouping with source MAC X still can enter carrier network by provider edge equipment A from customer edge devices A706.In addition, owing to eliminated loop condition, therefore, provider edge equipment A might not can exceed MAC and moves threshold value, and can not start the obstruction of himself thus.In one embodiment, there is no need to stop loop to occur by the port P4 that blocks on the provider edge equipment B.In addition, keep port P4 not get clogged, will allow provider edge equipment to intercom mutually.
In one embodiment, the stream that is allowed to get clogged in response to loop detection is configurable.Just, each provider edge equipment can both be configured to allow only to block some stream.The indication of the stream that can block can comprise following any combination: for example port, virtual circuit, VLAN, MPLS label, tagged grouping, not tagged grouping or the like.In one embodiment, but but the indication of choked flow comprises the tabulation of port blocked, but and can be by the tabulation of the VLAN that blocks at port blocked.For instance, VLAN can be defined as specific VLAN (for example VLAN10), VLAN scope (for example 10-20,40-50 and 60), all WLAN or all VLAN except assigned vlan.
Loop management system can also be configured to indicate the message of blocking operation to charge to daily record with being used to.This message can be sent to syslog server.Can also produce and be used to indicate not the message of blocking, and send it to syslog server.
MAC moves threshold value and can adopt multitude of different ways to determine.According to a kind of technology, can on purpose between client and provider edge equipment, create one or more loops, and monitoring MAC moves number of times.Give an example, the MAC rate travel is to move number of times by the MAC to time per unit to count and measure.Then, determine that according to measured MAC rate travel MAC moves threshold value.
Term used herein " MAC moves " can comprise the variation of other features except that port, and this depends on one or more agreements of moving.Like this, constituting the content that MAC moves is that feature (agreement just) is specific.The example that can constitute the variation that MAC moves comprises:
1) described with reference to figure 3 in as mentioned, source MAC moves to another port from a port.
2) source MAC moves to another VLAN (for example from VLAN 10 to VLAN20) from a VLAN.
3) source MAC moves to another ATM VC (identical even relevant VLAN ID keeps) from an ATM(Asynchronous Transfer Mode) VC.
4) source MAC moves to another MPLS label from a multiprotocol label switching (mpls) label.
Fig. 8 has described to implement an embodiment of the network node 800 of the embodiment of the invention.This exemplary network node can be implemented as provider edge equipment, and this network node comprises master control module 856, assist control module 858, switching fabric 860 and three ply-yarn drills (linecard) 862A, 862B, 862C (ply-yarn drill A, B, C).This network node is managed business with discrete unit, is commonly called datagram.In one embodiment, network node is to use the second layer, the 3rd layer and/or the 4th layer of header message and transmits professional Ethernet switch/router in that network node is inner.Network node can comprise the ply-yarn drill of the procotol support such as Ethernet, ATM and the frame relay.Though the described switch/router that is based on Ethernet, disclosed loop management techniques also can be applied to the network node of other types.
Each ply-yarn drill all comprises at least one port 864, processor 866 and memory 868, and wherein forwarding decision and the function from the network node transport service are carried out such as receiving and professionally enter network node, buffer traffic, made to this ply-yarn drill.Processor in each ply-yarn drill can comprise multifunctional processor and/or application specific processor, and this processor operations ground (operationally) is connected to memory.This processor is carried out such as packet parsing, branch group categories and is made function the forwarding decision.Memory in each ply-yarn drill can comprise the circuit that is used for the storage operation sign indicating number, is used for buffer traffic, is used for the stored logic port information and is used to store other data structures.Usually, command code is stored in the nonvolatile memory, and for example in EEPROM (Electrically Erasable Programmable Read Only Memo) (EEPROM) or the flash rom, professional and data structure then is stored in the volatile memory usually, for example in the random-access memory (ram).The example data structure that is stored among the RAM comprises professional forwarding information (outlet (exit port) table just).Forwarding information can also be stored in the memory (CAM) or the combination of CAM and RAM of content addressing.Though here processor and memory being depicted as is independent functional unit, in some cases, processor and memory are integrated on the identical device.In addition, on ply-yarn drill, can have more than one discrete processor unit and more than one memory cell.
Switching fabric 860 provides data path between input port and output port, and switching fabric for example can comprise: shared storage, shared bus and crosspoint matrix.Though do not illustrate, network node 800 can be equipped with redundant switching fabric.
The assist control of advocating peace module 856 and 858 is supported various functions, for example Network Management Function and actualizing function.The example networks management function of being carried out by control module comprises: implement configuration order, timing controlled is provided, the hardware list of programming, system information is provided, supports user interface, hardware management change, bus management, management logic port, Management VLAN and protocol processes.The example protocol of being implemented by control module comprises: the second layer (L2) agreement, for example L2 study, STP and LACP, and the 3rd layer of (L3) agreement, for example OSPF, BGP and ISIS.These layers are defined in osi model by ISO.
In the control module 856 and 858 each all comprises processor 870 and the memory 872 that is used to carry out appointed function.Processor in each control module can comprise multi-functional microprocessor and/or application specific processor, and wherein said application specific processor is operatively coupled to memory.This memory can comprise EEPROM or the flash rom that is used for the storage operation sign indicating number, and the DRAM that is used for buffer traffic and store data structure (for example port information and vlan table).Though here processor and memory being depicted as is independent functional unit, in some cases, processor and memory are integrated on the identical device.In addition, on control module, can have more than one discrete processor unit with more than one memory cell.
In one embodiment, the loop management function of describing with reference to figure 1-7 is to implement under the support of loop management engine hereinbefore, and this loop management engine is present in control module and ply-yarn drill.Fig. 9 illustrates the function of the loop management engine 974 of the control module that is present in network node and ply-yarn drill and describes.This loop management engine can realize with the combining form of software and hardware.The function element of this loop management engine comprises, and: MAC moves that threshold module 980, MAC move counter module 982, MAC moves comparison module 984 and port block module 986.These modules are carried out above with reference to the described corresponding function of figure 1-7.
As mentioned above, mobile the be loop of MAC Address between the port of network node indicated.Especially, MAC Address is formerly found the strong proof that will be assert into loop that moves between one group of port of this MAC Address at its place.In order to detect the loop in the network, desirable be fast and reliable identify MAC Address and when formerly between its place finds one group of port of this MAC Address, move.According to embodiments of the invention, formerly find between one group of port of this MAC Address when mobile when MAC Address at its place, move to count by the artificial acceleration MAC relevant and realize rapid and reliable loop detection with MAC Address.Move counting by quickening MAC, allow that MAC is moved threshold value and be arranged on higher grade, it is very little to cause in the network that wherein normal activity that MAC Address moves exceeds the possibility of this threshold value.Formerly between its place finds one group of port of this MAC Address, move in case determined MAC Address, just quicken MAC artificially and move counting by MAC being moved count to be weighted.In the most basic situation, loop causes the MAC between only two ports of network node to move.But in more complicated network configuration, loop might cause the MAC between one group of bigger port to move.In order to adapt to this phenomenon, found at its place before that it was maximum port number greater than 2 that this group port of this MAC Address can be configured to.
The artificial acceleration that MAC moves counting can be implemented as at above with reference to the enhancing of figure 4 described methods.In one embodiment, the method for Fig. 4 as hereinafter with reference to Figure 10 described and be enhanced.Especially, Figure 10 has described the process implemented between the piece 438 and 440 in Fig. 4 method.According to the method for Fig. 4, at piece 438, monitoring MAC moves number of times.With reference to the decision point 439A among Figure 10, monitoring after MAC moves number of times, determine that MAC moves whether between before finding between one group of port of this MAC Address at its place.If moving not formerly, MAC (for example finds at its place between one group of port of this MAC Address, if source MAC all moves to new port) at every turn, this process will advance to decision point 440 (Fig. 4) so, wherein MAC is moved number of times and predefined MAC and moves threshold value and compare.On the other hand, be (for example, source MAC is swung between the port of finite aggregate) of before between one group of port of its this MAC Address of place's discovery, having taken place if MAC moves, this process will advance to piece 439B so.At piece 439B, the MAC that calculates weighting moves number of times.After the MAC that has calculated weighting moved number of times, this process will advance to decision point 440 (Fig. 4), wherein MAC was moved number of times (MAC that is weighting in this example moves number of times) and predefined MAC and moved threshold value and compare.If MAC moves number of times and exceeds MAC and move threshold value, conclude that then loop exists.Since when MAC move be formerly between one group of port of its this MAC Address of place discovery, take place the time can the number of times that MAC moves be weighted, therefore, move the situation of number of times with unweighted MAC and compare, MAC moves number of times and will exceed MAC sooner and move threshold value.In addition, the MAC of weighting moves number of times and unweighted MAC and moves difference between the number of times and make be more prone to determine that when MAC Address formerly moves around between its place finds one group of port of this MAC Address.In one embodiment, MAC moves threshold value and will rise to expectation and weighting MAC not and move counting and compare and only exceed the level that a weighting MAC moves counting.
In Figure 11 A-11C, illustrate above example with reference to figure 4 and 10 described processes.Figure 11 A illustrates MAC Address (for example source MAC X) moving between two different ports of network node.This network node comprises master control module 856, ply-yarn drill A 862A and ply-yarn drill B862B.Port P1 is positioned on the ply-yarn drill A, and port P4 is positioned on the ply-yarn drill B.Shown in Figure 11 A, at time t 0, found source MAC X at port P1 place.At time t 1, at the discovery source MAC X of port P4 place, this has constituted MAC and has moved, and starts MAC handle in network node.At time t 2, find source MAC X once more at port P1 place, this constitutes another MAC and moves, and starts MAC once more and move processing.The process that this MAC moves will last till time t 5
Figure 11 B illustrates MAC and moves counting how according to finding at its place formerly whether port of this MAC Address is found this MAC Address and changed according to being applied to the weighting scheme that the MAC shown in Figure 11 A moves.That first row identify is time t 0-t 5, the time t shown in itself and Figure 11 A 0-t 5Consistent.Current whether being in before at its port of locating the discovery MAC Address of secondary series indication finds in one group of port of this MAC Address that at its place the 3rd row identification sources had before been located this group port of this MAC Address of discovery at it.Reference time t 0, only find source MAC X at port P 1 place, therefore " first front port " field is " N ", so that indication " nothing ".Equally, at time t 1, at the discovery source MAC X of port P4 place, wherein this port is not before to find one of port of this MAC Address at its place.At time t 2, source MAC X turns back to the port of before finding this source MAC X at its place.From time t 2Forward, source MAC X can swing between port P1 and P4, and " first front port " field will be " Y " thus, so that the indication "Yes".
The 4th row have write down the MAC between port P1 and P4 that is discerned and have moved number of times.This MAC moves number of times can increase 1 when MAC moves each time, and will be called as actual MAC and move counting.
In Figure 11 B, for exemplary purposes,, MAC used three kinds of different weighting schemes for moving.These three kinds of MAC move weighting scheme and are:
1) the 5th row have linear weight and are 3 linear weighted function scheme, wherein:
The MAC of weighting moves counting (MMC)=MMC*3
2) the 6th row, the exponential weighting scheme, wherein:
The MMC=2^MMC of weighting
3) the 7th row, the exponential weighting scheme, wherein:
The MMC=MMC^MMC of weighting
Though several weighting scheme examples here only are provided, other weighting schemes are feasible equally.In addition, though above-mentioned weighting scheme is static weighting scheme, weighting scheme also can be dynamic.For example, weighting scheme can be configured to increase weight when MAC moves the counting increase.And other those move counting according to MAC weighting scheme also be feasible.In one embodiment, weighting scheme is selected according to source MAC.For example, different weighting schemes are used to different source MACs.This considers the efficient identification to specific source MAC, and for example some should not be in the control MAC Address that receives on the particular port.
Check Figure 11 B line by line, at time t 0And t 1, do not find this MAC owing to formerly find the port of MAC at its place, so moving counting, MAC is not weighted.At time t 2, found this MAC owing to formerly find the port of MAC at its place, move counting so will calculate the MAC of weighting here.Concerning size is that 2 actual MAC moves the counting, and by using this three kinds of methods of weighting, the MAC of weighting moves counting will be calculated as 6,4 and 4 respectively.It should be noted, described three kinds of different weighting schemes, all only implement a kind of weighting scheme probably at any time though in Figure 11 B, walk abreast.At time t 3, it is 3 that actual MAC moves counting, and the MAC of weighting moves counting and is calculated as 9,8 and 27 respectively.At time t 4, it is 4 that actual MAC moves counting, and the MAC of weighting moves counting and is calculated as 12,16 and 256 respectively.At time t 5, actual MAC move counting be 5 and the MAC of weighting move counting and be calculated as 15,32 and 3125 respectively.Shown in Figure 11 B, in each situation, the MAC of weighting moves counting and moves counting greater than actual or " not weighting " MAC.In addition, when MAC moved number of times and increases, actual MAC moved the difference that counting and weighting MAC move between the counting and will increase.According to applied weighting scheme, actual MAC moves counting and can increase with different speed with the difference that weighting MAC moves between the counting.Give an example, if use the 3rd row in weighting scheme, after five MAC moved, it had been 625 times that actual MAC moves counting that the MAC of weighting moves counting so.
Figure 11 C illustrates at time t 5Moving counting (that is to say the MMC=2^MMC of weighting) and actual MAC from the weighting MAC of Figure 11 B the 6th row moves counting and moves counting with respect to the MAC that MAC moves threshold value.In this example, MAC moves threshold value and is set at 20 MAC and moves, and as shown, at time t 5, size is that 32 weighting MAC moves counting and will exceed MAC and move threshold value.By contrast, at time t 5, actual MAC moves counting to be 5 and will can not to exceed MAC and move threshold value after 15 times other MAC move generation.
In an execution mode of loop detection technique, network node (for example service provider edge device) has kept MAC to move table moving to be used to following the trail of MAC.Figure 12 has described exemplary MAC and has moved table, and wherein this table has comprised and has been used to follow the trail of the field that MAC moves, and is such as described above.Provide field and corresponding field description that MAC moves table hereinafter:
1) MAC Address-source MAC;
2) to be used for be that the source MAC discerned is followed the trail of the broadcast domain that MAC moves to broadcast domain ID-thereon.This broadcast domain can comprise any discernible broadcast domain, including, but not limited to customer VLAN, supplier VLAN, supplier's backbone VLAN, provider service example or VPLS territory.
3) MAC moves the number of times that counting-MAC moves in pre-set time interval;
4) sets of ports-before in pre-set time interval with the interior record of finding the port of source MAC at its place; And
5) maximum number of the port of sets of ports size-port.
Though described the example that MAC moves table here, other embodiment that MAC moves table are feasible equally.
When use is above moved table with reference to the described MAC of Figure 12, at each MAC Address record MAC Address and broadcast domain to be followed the trail of.When the MAC that has discerned MAC Address moves, the short of port number that exceeds port, the port that moves to of MAC Address just is added to port so.In addition, check to determine that whether the current port of finding MAC Address at its place is complementary with a port of port.If when the port match of front port and port, so just show that MAC Address has turned back to the port of before finding this MAC Address at its place.Described like that as mentioned with reference to Figure 10, if the port of before finding this MAC Address at its place not with the port match of port, MAC moves counting so will normally increase (for example increasing a counting).On the other hand, if current in the port of its place's discovery MAC Address and the port match of port, the MAC that then uses weighting scheme to calculate weighting moves counting.In one embodiment, whenever detecting that MAC moves and this MAC Address when not being present in MAC as yet and moving in the table, move in the table at MAC and all can create new clauses and subclauses.In addition, to move the quantity of the MAC Address that comprises in the table be that execution mode is specific to MAC.
In one embodiment, to move the weighting of counting be to move weighting block by the MAC in the network node to finish to MAC.Figure 13 has described loop management engine, and this engine comprises that the element and the MAC of the loop management engine of Fig. 9 move weighting block.The function element of loop management engine comprises that MAC moves threshold module 980, MAC and moves that counter module 982, MAC move weighting block 983, MAC moves comparison module 984 and port block module 986.These modules are carried out above with reference to figure 1-7 and the described corresponding function of Figure 10-12.Especially, MAC moves weighting block and carries out following function: determine that whether MAC formerly moves between one group of port of this MAC of its place's discovery, and the MAC of calculating weighting moves counting.
MAC used herein moves counting can represent that MAC moves number of times, and the MAC in the known interval moves number of times, or the MAC rate travel.
Figure 14 is the process flow diagram that is used to detect the method for the loop between the network equipment.At piece 1402, determine that MAC moves threshold value.At piece 1404, wherein the number of times that MAC Address is moved between network equipment port is counted to obtain MAC and is moved counting.At piece 1406, determine whether MAC Address moves to the port of before finding this MAC Address at its place.At piece 1408,, then MAC is moved counting and be weighted if MAC Address has moved to the port of before finding this MAC Address at its place.At piece 1410, MAC is moved counting move threshold value and compare with MAC.At piece 1412, exceed MAC and move threshold value if MAC moves counting, then conclude to have loop.
Though describe and illustrate specific embodiment of the present invention here, the present invention is not limited to describe particular form or the arrangement with illustrated parts here.The present invention is only limited by claim.

Claims (20)

1. method that is used to detect the loop between the network equipment comprises:
Determine media interviews control (MAC) mobile threshold value;
The mobile number of times of MAC Address between the port of the network equipment counted to obtain MAC move counting;
Determine whether MAC Address has moved to the port of before finding described MAC Address at its place;
If described MAC Address has moved to the port of before finding described MAC Address at its place, then MAC is moved counting and be weighted;
MAC is moved counting to be moved threshold value and compares with MAC; And
Exceed MAC and move threshold value if MAC moves counting, conclude that then loop exists.
2. the method for claim 1 is determined wherein whether MAC Address had moved to before to find that at its place port of described MAC Address comprises: the record that keeps before finding at its place the sets of ports of described MAC Address.
3. method as claimed in claim 2 further comprises: sets of ports is limited to maximum number.
4. the method for claim 1, wherein detection loop on the basis of each broadcast domain.
5. the method for claim 1 wherein moves counting to MAC and is weighted and comprises: MAC moved counting carry out exponential weighting.
6. the method for claim 1 wherein moves counting to MAC and is weighted and comprises: MAC moved counting carry out linear weighted function.
7. the method for claim 1 wherein moves counting according to MAC and MAC is moved counting is weighted.
8. the method for claim 1, wherein MAC is moved counting and be weighted and comprise: according to MAC Address MAC is moved counting and be weighted, wherein said MAC Address is a source MAC.
9. the method for claim 1, determine that wherein MAC moves threshold value and comprises: the MAC of identification time per unit moves number of times.
10. the method for claim 1 further comprises: exist if conclude loop, then start the Loop Protection action.
11. a method that is used to detect the loop between customer network and the carrier network comprises:
Determine media interviews control (MAC) mobile threshold value;
Moving of the MAC Address of between the port of operator's equipment, carrying out that supervision is caused by the client's business from customer network, so that determine that MAC moves counting, wherein said operator equipment is arranged in the carrier network of reception from the business of customer network;
Determine whether MAC Address has moved to the port of before finding described MAC Address at its place;
If described MAC Address has moved to the port of before finding described MAC Address at its place, then MAC is moved counting and be weighted;
At operator equipment place, MAC is moved counting move threshold value and compare with MAC; And
Exceed MAC and move threshold value if MAC moves counting, conclude that then loop exists.
12. method as claimed in claim 11, whether wherein definite MAC Address had moved to is before found that at its place port of described MAC Address comprises: keep the previous record of finding the sets of ports of described MAC Address at its place.
13. the method for claim 12 further comprises: sets of ports is limited to maximum number.
14. method as claimed in claim 11, wherein detection loop on the basis of each broadcast domain.
15. method as claimed in claim 11, wherein according to MAC move counting to MAC move the counting be weighted.
16. method as claimed in claim 11 wherein moves counting to MAC and is weighted and comprises: according to MAC Address MAC is moved counting and be weighted, wherein said MAC Address is a source MAC.
17. method as claimed in claim 11 further comprises: move threshold value if the MAC rate travel exceeds MAC, then start the Loop Protection action.
18. a system that is used to detect the loop between customer network and the carrier network comprises:
Loop management engine is configured to:
Determine media interviews control (MAC) mobile threshold value;
The mobile number of times of MAC Address between the port of the network equipment counted to obtain MAC move counting;
Determine whether described MAC Address has moved to the port of before finding described MAC Address at its place;
If described MAC Address has moved to the port of before finding described MAC Address at its place, then MAC is moved counting and be weighted;
MAC is moved counting to be moved threshold value and compares with MAC; And
Exceed MAC and move threshold value if MAC moves counting, conclude that then loop exists.
19. method as claimed in claim 18, wherein loop management engine is configured to keep before finding at its place the record of the sets of ports of described MAC Address.
20. method as claimed in claim 18, wherein said sets of ports is limited to maximum number.
CNA2006800522147A 2005-12-07 2006-12-07 Detecting loops between network devices by monitoring MAC moves Pending CN101405976A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US74813305P 2005-12-07 2005-12-07
US60/748,133 2005-12-07
US11/544,405 2006-10-06

Publications (1)

Publication Number Publication Date
CN101405976A true CN101405976A (en) 2009-04-08

Family

ID=39620082

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006800522147A Pending CN101405976A (en) 2005-12-07 2006-12-07 Detecting loops between network devices by monitoring MAC moves

Country Status (1)

Country Link
CN (1) CN101405976A (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102014062A (en) * 2010-12-01 2011-04-13 中兴通讯股份有限公司 Method and device for controlling drift of MAC (media access control) addresses
CN102123064A (en) * 2010-01-12 2011-07-13 华为技术有限公司 Method and device for processing loop
CN102347865A (en) * 2011-11-04 2012-02-08 华为技术有限公司 Ethernet ring path locating method as well as switching equipment and system
WO2012171216A1 (en) * 2011-06-17 2012-12-20 华为技术有限公司 Method and ethernet switching device for detecting loop position in ethernet
CN103125100A (en) * 2011-12-09 2013-05-29 华为技术有限公司 Layer 2 network loop processing method, device and network device
WO2013082907A1 (en) * 2011-12-09 2013-06-13 华为技术有限公司 Layer 2 network loop processing method, device and network device
CN104980526A (en) * 2014-04-04 2015-10-14 中兴通讯股份有限公司 Control method of media access control (MAC) address drift, control device of MAC address drift and network device
CN110460620A (en) * 2019-09-05 2019-11-15 武汉极意网络科技有限公司 Website defence method, device, equipment and storage medium
US10764085B2 (en) 2016-12-06 2020-09-01 Huawei Technologies Co., Ltd. Loop failure handling method and switch
CN112953756A (en) * 2021-01-22 2021-06-11 武汉武钢绿色城市技术发展有限公司 Network loop elimination method based on python
CN114666200A (en) * 2022-02-14 2022-06-24 国电南瑞科技股份有限公司 Loop detection method and device for intelligent substation network and storage medium
CN118101440A (en) * 2024-04-26 2024-05-28 成都秦川物联网科技股份有限公司 Industrial Internet of things data analysis method based on cloud computing, internet of things system and equipment

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102123064A (en) * 2010-01-12 2011-07-13 华为技术有限公司 Method and device for processing loop
CN102123064B (en) * 2010-01-12 2013-11-06 华为技术有限公司 Method and device for processing loop
CN102014062B (en) * 2010-12-01 2015-08-12 中兴通讯股份有限公司 The control method of MAC Address drift and device
CN102014062A (en) * 2010-12-01 2011-04-13 中兴通讯股份有限公司 Method and device for controlling drift of MAC (media access control) addresses
WO2012171216A1 (en) * 2011-06-17 2012-12-20 华为技术有限公司 Method and ethernet switching device for detecting loop position in ethernet
US9178795B2 (en) 2011-06-17 2015-11-03 Huawei Technologies Co., Ltd. Method and ethernet switching device for detecting loop position in ethernet
CN102347865A (en) * 2011-11-04 2012-02-08 华为技术有限公司 Ethernet ring path locating method as well as switching equipment and system
CN102347865B (en) * 2011-11-04 2015-02-25 华为技术有限公司 Ethernet ring path locating method as well as switching equipment and system
CN103125100A (en) * 2011-12-09 2013-05-29 华为技术有限公司 Layer 2 network loop processing method, device and network device
WO2013082907A1 (en) * 2011-12-09 2013-06-13 华为技术有限公司 Layer 2 network loop processing method, device and network device
CN104980526A (en) * 2014-04-04 2015-10-14 中兴通讯股份有限公司 Control method of media access control (MAC) address drift, control device of MAC address drift and network device
US10764085B2 (en) 2016-12-06 2020-09-01 Huawei Technologies Co., Ltd. Loop failure handling method and switch
CN110460620A (en) * 2019-09-05 2019-11-15 武汉极意网络科技有限公司 Website defence method, device, equipment and storage medium
CN110460620B (en) * 2019-09-05 2021-11-19 武汉极意网络科技有限公司 Website defense method, device, equipment and storage medium
CN112953756A (en) * 2021-01-22 2021-06-11 武汉武钢绿色城市技术发展有限公司 Network loop elimination method based on python
CN114666200A (en) * 2022-02-14 2022-06-24 国电南瑞科技股份有限公司 Loop detection method and device for intelligent substation network and storage medium
CN118101440A (en) * 2024-04-26 2024-05-28 成都秦川物联网科技股份有限公司 Industrial Internet of things data analysis method based on cloud computing, internet of things system and equipment

Similar Documents

Publication Publication Date Title
CN101405976A (en) Detecting loops between network devices by monitoring MAC moves
KR101341739B1 (en) Detecting loops between network devices by monitoring mac moves
CN101523812B (en) System and method for collecting network performance information
JP3123467B2 (en) bridge
US9729450B2 (en) Method of data delivery across a network
KR101474186B1 (en) Condensed core-energy-efficient architecture for wan ip backbones
CN1874314B (en) Network device and method for selecting fault transfer port in relay series
US8879381B2 (en) Ethernet ring system, transit node of Ethernet ring system and initialization method thereof
US8917741B2 (en) Method of data delivery across a network
US7496030B2 (en) Managing loops between network devices by monitoring MAC moves
CN100473054C (en) Network device and method for disposing grouping
US20040105384A1 (en) Event-driven flow control for a very high-speed switching node
CN101873306A (en) Spanning tree root selection in a hierarchical network
EP2274878A1 (en) Reducing traffic loss in an eaps system
CN101854284A (en) The Loop Protection of dynamic assignment and the reservation of the bandwidth in the recovery technology re-use
CN102119510A (en) A multi-path network
CN102027717A (en) A method of data delivery across a network
CN105900406A (en) Technique for network service availability
CN107171882A (en) Detect the method, apparatus and system of equal cost multipath routing function
CN102176703A (en) Policing device
US10505858B2 (en) Fabric back pressure timeout transmitting device
US7843829B1 (en) Detection and recovery from control plane congestion and faults
CN100531126C (en) Packet transfer method and transfer apparatus
US11784935B2 (en) Centralized aggregated elephant flow detection and management
Krishnan et al. Transient Congestion Problem

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20090408