WO2016107424A1 - 一种链路状态检测方法、装置和系统 - Google Patents

一种链路状态检测方法、装置和系统 Download PDF

Info

Publication number
WO2016107424A1
WO2016107424A1 PCT/CN2015/097894 CN2015097894W WO2016107424A1 WO 2016107424 A1 WO2016107424 A1 WO 2016107424A1 CN 2015097894 W CN2015097894 W CN 2015097894W WO 2016107424 A1 WO2016107424 A1 WO 2016107424A1
Authority
WO
WIPO (PCT)
Prior art keywords
switch
flow table
link
controller
lldp
Prior art date
Application number
PCT/CN2015/097894
Other languages
English (en)
French (fr)
Inventor
朱旭琪
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2016107424A1 publication Critical patent/WO2016107424A1/zh

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks

Definitions

  • Embodiments of the present invention relate to communication technologies, and in particular, to a link state detection method, apparatus, and system.
  • the architecture of Software Defined Networking includes controllers and switches, which are the core of the SDN network.
  • the application configures and operates various settings and behaviors of the switch through the controller, thereby achieving the purpose of controlling the switch to implement various application logics; likewise, the switch also feeds back various information of the data plane to the application through the controller, so that the application can do The corresponding control logic.
  • the OpenFlow protocol is used to describe the criteria used for the interaction between the controller and the switch, as well as the interface standards for the controller and switch.
  • the core part of the protocol is a collection of information structures for the OpenFlow protocol.
  • a flow table is a table maintained locally by the OpenFLow switch for controlling the specific processing operations of the data packet.
  • the OpenFlow switch When the OpenFlow switch goes online, it establishes a connection with the controller and interacts with the necessary information through a series of messages. After the connection is established, the controller can send a general flow table of LLDP (Link Layer Discovery Protocol) packets to the OpenFlow switch.
  • the general flow table is used to indicate all LLDP reports received by the OpenFlow switch. The message is reported to the controller through the Packet-In message in the OpenFlow protocol.
  • the controller first constructs an analog switch 1 according to the information of any one of the switches 1 in the SDN network.
  • the LLDP packet is encapsulated into the Packet-Out message in the OpenFlow protocol and sent to Switch 1.
  • the action corresponding to the packet is Issued from an open port on switch 1.
  • Switch 1 After receiving the Packet-Out packet of LLDP, Switch 1 sends an action from an open port, for example, through port 1.
  • switch 2 after receiving the LLDP packet sent by the O switch 1, it first matches the local common flow table, and finds the common matching flow table of the LLDP packet sent by the controller before, according to the flow table action
  • the LLDP packet is sent to the controller through a Packet-In message.
  • the embodiment of the invention provides a link state detection method, device and system to solve the problem that the link state detection method of the prior art wastes network resources.
  • a link state detection method is applied to a software-defined network SDN according to an embodiment of the present invention, including:
  • the controller sends a first LLDP packet based on the link layer discovery protocol LLDP to the first switch, where the first LLDP packet indicates that the first switch forwards the first LLDP packet to the second switch to discover An available link from the first switch to the second switch;
  • the controller receives the first LLDP packet that is reported by the second switch, and determines an available link of the first switch to the second switch according to a transmission path of the first LLDP packet, and records Recording information about the available links;
  • the controller sends a link flow table to the second switch, where the link flow table is used to indicate that the second switch performs the second LLDP packet that is forwarded by the first switch by using the available link. Discarded, the second LLDP message is triggered by the controller and used to detect the status of the available link.
  • the link flow table includes: identifier information of the link and a drop indication, where the link identifier information includes information about the first switch and the The information of the second switch, the information of the first switch includes a media access control MAC address and a port address of the first switch, and the information of the second switch includes a media access control MAC address of the second switch And port address.
  • the second feasible implementation manner before the sending, by the controller, the first LLDP packet to the first switch, the method further includes:
  • the controller After determining that the connection with the second switch is established, the controller sends a general flow table to the second switch, where the universal flow table is used to instruct the second switch to report all the received LLDP packets to the second switch.
  • the controller
  • the link flow table further includes priority information, where the priority information is used to indicate that the link flow table has a higher priority than the universal flow table.
  • the controller triggers the second LLDP packet every interval time interval
  • the link flow table further includes a flow table aging time and a flow table aging behavior, where the flow table aging time is greater than the first time period, and the flow table aging behavior is used to indicate that the second switch is in the
  • the link flow table is deleted when the link flow table is aged, and the notification that the link flow table has been deleted is reported to the controller.
  • the fourth feasible implementation manner further includes:
  • the controller receives the notification that the link flow table sent by the second switch has been deleted, and determines that the status of the available link is abnormal according to the notification.
  • the second aspect provides a link state detection method, which is applied to a software defined network SDN, and includes:
  • the second switch receives the first LLDP packet that is forwarded by the first switch and is based on the LLDP protocol of the link layer discovery protocol.
  • the first LLDP packet is configured by the controller and sent to the first switch, where the first LLDP is sent.
  • the message is used to discover an available link of the first switch to the second switch;
  • the second switch reports the first LLDP packet to the controller, so that the controller determines the available link of the first switch to the second switch according to the transmission path of the first LLDP packet.
  • the second switch receives and stores a link flow table sent by the controller, where the link flow table is used to instruct the second switch to forward the first switch to the second LLDP through the available link.
  • the packet is discarded, and the second LLDP packet is triggered by the controller and used to detect the status of the available link.
  • the link flow table includes: identifier information of the link and a drop indication, where the link identifier information includes information about the first switch and the The information of the second switch, the information of the first switch includes a media access control MAC address and a port address of the first switch, and the information of the second switch includes a media access control MAC address of the second switch And port address.
  • the method before the receiving, by the second switch, the first LLDP packet that is forwarded by the first switch, the method further includes:
  • the second switch receives a universal flow table sent by the controller, where the universal flow table is used to indicate The second switch reports all the received LLDP messages to the controller;
  • the second switch After receiving the first LLDP packet, the second switch reports the first LLDP packet to the controller according to the universal flow table.
  • the link flow table further includes priority information, where the priority information is used to indicate that the link flow table has a higher priority than the universal flow table;
  • the second switch After receiving the second LLDP packet, the second switch matches the link flow table according to the priority information, and discards the second LLDP packet according to the matching result.
  • the second LLDP packet is triggered by the controller every interval of a first time period
  • the link flow table further includes a flow table aging time and a flow table aging behavior, where the flow table aging time is greater than the first time period, and the flow table aging behavior is used to indicate that the second switch is in the
  • the link flow table is deleted when the link flow table is aged, and the notification that the link flow table has been deleted is reported to the controller.
  • the fourth feasible implementation manner further includes:
  • the second switch starts a timer after saving the link flow table
  • the second switch discards the second LLDP packet according to the link flow table. And reset the timer.
  • the fifth feasible implementation manner further includes:
  • a software defined network SDN including a controller, a first switch, and a second switch;
  • the controller is configured to send, to the first switch, a first LLDP packet that is configured by using a link layer discovery protocol (LLDP) protocol, where the first LLDP packet indicates that the first switch forwards the packet to the second switch Decoding a first LLDP packet to discover an available link of the first switch to the second switch;
  • LLDP link layer discovery protocol
  • the first switch is configured to forward the first LLDP packet to the second switch;
  • the second switch is configured to receive the first LLDP packet that is forwarded by the first switch, and report the first LLDP packet to the controller;
  • the controller is further configured to receive the first LLDP packet that is reported by the second switch, and determine an available link of the first switch to the second switch according to a transmission path of the first LLDP packet, where Recording information of the available link, and transmitting a link flow table to the second switch, the link flow table being used to instruct the second switch to forward the first switch through the available link
  • the second LLDP packet is discarded, and the second LLDP packet is triggered by the controller and used to detect the status of the available link.
  • the second switch is further configured to receive and save a link flow table sent by the controller.
  • a controller for application to a software defined network SDN, including:
  • a link detection module configured to send a first LLDP packet based on the LLDP protocol to the first switch, where the first LLDP packet indicates that the first switch forwards the first switch to the second switch LLDP packet to discover an available link of the first switch to the second switch;
  • a link information management module configured to receive the first LLDP packet that is reported by the second switch, and determine an available link of the first switch to the second switch according to a transmission path of the first LLDP packet, where And recording information about the available links;
  • a flow table distribution module configured to send a link flow table to the second switch after the link information management module records the information of the available link, where the link flow table is used to indicate the second
  • the switch discards the second LLDP packet forwarded by the first switch by using the available link, where the second LLDP packet is triggered by the controller and used to detect the status of the available link.
  • the link flow table includes: identifier information of the link and a drop indication, where the link identifier information includes information about the first switch and the The information of the second switch, the information of the first switch includes a media access control MAC address and a port address of the first switch, and the information of the second switch includes a media access control MAC address of the second switch And port address.
  • the flow table distribution module is further configured to: after establishing a connection with the second switch, send a general to the second switch a flow table, the universal flow table is configured to instruct the second switch to report all received LLDP messages to the controller, and is further configured to carry priority information in the link flow table.
  • the priority information is used to indicate that the link flow table has a higher priority than the universal flow table.
  • the link detection module is configured to trigger the second LLDP packet in a first time period every interval
  • the flow table distribution module is further configured to: carry the flow table aging time and the flow table aging behavior in the link flow table, where the flow table aging time is greater than the first time period, and the flow table aging behavior is used by Refer to
  • the second switch is configured to delete the link flow table when the link flow table is aged and report the notification that the link flow table has been deleted to the controller.
  • the link information management module is further configured to receive, by the second switch, a notification that the link flow table has been deleted, and Determining that the state of the available link is abnormal according to the notification.
  • a switch for applying to a software-defined network SDN, including:
  • the link detection module is configured to receive a first LLDP packet that is forwarded by the first switch and is configured by the LLDP protocol, where the first LLDP packet is sent by the controller to the first switch and used to discover the first switch.
  • the first LLDP packet carries the information of the first switch to the available link of the second switch;
  • a link information reporting module configured to report the first LLDP packet to the controller, so that the controller determines, according to the transmission path of the first LLDP packet, the first switch to the second switch Available link
  • a flow table processing module configured to receive and save a link flow table sent by the controller, where the link flow table is used to indicate that the second switch forwards the first switch by using the available link
  • the second LLDP packet is discarded, and the second LLDP packet is triggered by the controller and used to detect the status of the available link.
  • the link flow table includes: identifier information of the link and a drop indication, where the link identifier information includes information about the first switch and the The information of the second switch, the information of the first switch includes a media access control MAC address and a port address of the first switch, and the information of the second switch includes a media access control MAC address of the second switch And port address.
  • the flow table processing module before the second switch receives the first LLDP packet forwarded by the first switch, the flow table processing module is further used to: Receiving a general flow table sent by the controller, where the universal flow table is used to instruct the second switch to report all received LLDP messages to the controller; and the flow table processing module specifically receives the
  • the link flow table further includes priority information, where the priority information is used to indicate that the link flow table has a higher priority than the universal flow table; and the flow table processing module is further configured to receive the After the first LLDP packet is sent, the first LLDP packet is reported to the controller according to the universal flow table, and after the second LLDP packet is received, the priority information is matched according to the priority information.
  • the link flow table discards the second LLDP packet according to the matching result.
  • the second LLDP packet is triggered by the controller every interval of a first time period
  • the link flow table further includes a flow table aging time and a flow table aging behavior, where the flow table aging time is greater than the first time period, and the flow table aging behavior is used to indicate that the second switch is in the
  • the link flow table is deleted when the link flow table is aged, and the notification that the link flow table has been deleted is reported to the controller.
  • the flow table processing module is further configured to start a timer after saving the link flow table, if the second switch is Determining that the second LLDP packet is received before the aging time of the timer exceeds the aging time of the flow table, discarding the second LLDP packet according to the link flow table, and resetting the timing Device.
  • the flow table processing module is further configured to: after determining that the timer time of the timer exceeds the aging time of the flow table, and still does not receive Determining, by the second LLDP packet, that the link flow table is aged, and according to the flow The aging behavior of the link is deleted, and the link information reporting module is notified to the controller to report that the link flow table has been deleted, to notify the controller that the status of the available link appears. abnormal.
  • an embodiment of the present invention provides a computer, including: a processor, a memory, a bus, and a communication interface;
  • the memory is configured to store computer execution instructions
  • the processor is coupled to the memory via the bus, and when the computer is running, the processor executes the computer-executed instructions stored by the memory to cause
  • the computer performs the link state detection method provided by the above first aspect, any of the first aspect, the second aspect, or any possible implementation of the second aspect.
  • an embodiment of the present invention provides a computer readable medium, including a computer executing instruction, when a processor of a computer executes the computer to execute an instruction, so that the computer performs the above first aspect, the first aspect A link state detection method provided by any possible implementation of the second aspect or the second aspect.
  • the controller actively sends the link flow table corresponding to the link to the switch, so that the switch does not receive the LLDP packet subsequently.
  • the matching of the common flow table is to match the link flow table, but the subsequent LLDP message is discarded according to the indication of the link flow table, instead of continuously reporting the message to the controller, thereby solving a large number of Packet- in the prior art.
  • the In message occupies a large amount of network resources in the secure channel between the controller and the OF switch, which reduces the number of useless Packet-In messages reported by the switch to the controller, saves network resources between the controller and the switch, and also avoids Some unnecessary processing and storage resources are wasted on the controller, which improves the efficiency of the entire network.
  • FIG. 1 is a schematic flowchart of link discovery according to an embodiment of the present invention.
  • FIG. 2 is another schematic flowchart of link discovery according to an embodiment of the present invention.
  • FIG. 3 is a schematic flowchart of link keep-alive according to an embodiment of the present invention.
  • Figure 5 is a diagram showing the composition of a controller according to an embodiment of the present invention.
  • FIG. 6 is a structural diagram of a switch according to an embodiment of the present invention.
  • FIG. 7 is still another schematic flowchart of link state detection according to an embodiment of the present invention.
  • FIG. 8 is a structural diagram of a computer according to an embodiment of the present invention.
  • the embodiment of the invention provides a link state detection method, device and system, which provide a link discovery or link fault detection mechanism that can be implemented without occupying too much system resources.
  • FIG. 1 is a schematic flowchart diagram of a method for link discovery in combination with a system architecture according to an embodiment of the present invention.
  • the OpenFlow switch is simply referred to as an OF switch.
  • an OFDM network includes three OF switches as an example. In an actual application scenario, more OF switches may be included.
  • Figure 2 another flow diagram for link discovery.
  • S10 When the OF switch 2 goes online, it establishes a connection with the controller through a series of messages and interacts with the necessary information. After the connection is established, the controller can send an LLDP (Link) to the OF switch 2.
  • LLDP Link Layer Discovery Protocol
  • a common flow table of the Layer Discovery Protocol (Link Layer Discovery Protocol) packet which is used to instruct the OF switch 2 to report all the received LLDP packets to the controller through the Packet-In message in the OpenFlow protocol.
  • the generic flow table is for example:
  • Table 1 LLDP general flows delivered by the controller after the OpenFlow switch establishes a connection with the controller.
  • step S10 is only an achievable example, and other implementation manners are possible.
  • another feasible method is to deliver a flow table with the lowest priority all_match, so that all the reports without the matching flow table are sent.
  • the message is reported to the controller (usually the OF switch will have such a flow table, not only for LLDP).
  • the value of i is less than or equal to the priority value of any other flow table.
  • the process of link discovery in the embodiment of the present invention includes:
  • the controller sends a first LLDP packet based on the link layer discovery protocol LLDP to the first switch, where the first LLDP packet indicates that the first switch forwards the first LLDP packet to the second switch. To discover the available links of the first switch to the second switch.
  • the link discovery process is triggered by the controller, and the controller constructs a first LLDP packet sent by the analog OF switch 1 according to the information of the OF switch 1.
  • An LLDP packet carrying the information of the OF switch 1 such as the MAC address and the port information, is encapsulated in the Packet-Out message of the OpenFlow protocol and sent to the OF switch 1 , and the action indication corresponding to the first LLDP packet indicates the The first LLDP packet needs to be sent from all open ports of the OF switch 1.
  • S12 The first switch forwards the first LLDP packet to the second switch according to the behavior indication corresponding to the first LLDP packet.
  • the OF switch 1 After receiving the Packet-Out packet of the first LLDP, the OF switch 1 sends out the open ports according to actions.
  • step 2 is sent to the OF switches 2 and 3
  • FIG. 2 is step b.
  • the controller receives the first LLDP packet that is reported by the second switch, and determines an available link of the first switch to the second switch according to a transmission path of the first LLDP packet.
  • the OF switch 2 is taken as an example. As shown in step 3 in FIG. 1 or step c in FIG. 2, after receiving the first LLDP packet sent by the OF switch 1, the LLDP general flow table is saved locally. The first LLDP packet is reported to the controller through the Packet-In message according to the action indicated in the LLDP general flow table.
  • the OF switch 3 is similar. The implementation of the OF switch 3 is described in the figure in the embodiment. The principle of the OF switch is the same as that of the OF switch 2, so the text is not described here.
  • the controller receives the reported Packet-In message (including the first LLDP packet), and firstly obtains the data path datapath and the ingress port in_port of the OF switch 2 that reports the Packet-In message, that is, the packet-in message is obtained. Information about the switch (MAC address and port information). Then, the content of the first LLDP packet is analyzed, and the MAC address of the source OF switch 1 that sends the first LLDP packet and the port information port_id encapsulated in the LLDP data unit are known. Thus, the controller discovers an available link from port 1 of OF switch 1 to port 1 of OF switch 2 through the transmission path of the first LLDP message.
  • S14 The controller records information of the available link.
  • the controller can locally record the related information of the available link from the port 1 of the OF switch 1 to the port 1 of the OF switch 2.
  • S15 The controller sends a link flow table to the second switch, where the link flow table is used to indicate that the second switch performs the second LLDP packet that is forwarded by the first switch by using the available link. Discarded, the second LLDP message is triggered by the controller and used to detect the status of the available link.
  • the second switch may save the link flow table.
  • the flow table corresponding to the link may be constructed, for example, named.
  • the link flow table as follows:
  • Table 2 Link flow table delivered by the controller to the OF switch 2
  • the configured link flow table includes the identifier of the link, so that the link flow table matching item can only uniquely determine the link, for example, the link identification information may include the information and the location of the first switch.
  • the information of the first switch includes a media access control MAC address and a port address of the first switch
  • the information of the second switch includes a media access control MAC of the second switch. Address and port address.
  • embodiments of the invention are not limited to the forms in the above examples.
  • the link flow table may further include a discarding indication.
  • the action in the link flow table is configured as a drop, and the second switch discards the second LLDP packet forwarded by the first switch by using the available link.
  • the link flow table may also include an aging time idle_timeout, where the aging time is an idle waiting time set in the OpenFlow protocol for the link flow table, that is, when the link flow table is in the idle waiting time. If there is any packet hit, the link flow table is deleted (that is, the link flow table is aged).
  • the aging time may be greater than the transmission period T of the LLDP packet (the controller may initiate the second LLDP packet for the link state detection every time interval T). If the second LLDP packet sent by the link is not received within the aging time, the link is considered to be disconnected or faulty. After receiving the second LLDP packet sent by the link in the aging time, the second LLDP packet is discarded according to the discarding indication.
  • the link flow table may further include a flow table aging behavior, where the flow table aging behavior is used to indicate that the second switch deletes the link flow table and performs the control when the link flow table is aged.
  • the device reports the notification that the link flow table has been deleted.
  • the link flow table may further include priority information priority, which is used to set the priority of the link flow table, and the priority of the link flow table is not lower than the priority of the LLDP general flow table uniformly delivered by the controller. .
  • the purpose is to allow the switch that has established the link to match the link flow table without matching the general LLDP flow table when performing flow table operations.
  • the controller actively sends the link flow table corresponding to the link to the switch, so that the switch does not receive the LLDP packet subsequently.
  • the common flow table is matched to match the link flow table, so that the subsequent LLDP message is discarded according to the indication of the link flow table, instead of continuously reporting the message to the controller, thereby solving a large number of Packet-In in the prior art.
  • the message occupies a large amount of network resources in the secure channel between the controller and the OF switch, which reduces the number of useless Packet-In messages reported by the switch to the controller, saves network resources between the controller and the switch, and avoids Some unnecessary processing and waste of storage resources on the controller improves the efficiency of the entire network.
  • FIG. 3 it is a schematic flowchart of a method for link keep-alive provided by an embodiment of the present invention.
  • S31 The controller triggers a second LLDP packet, and the second LLDP packet, in an interval T. Triggered by the controller and used to detect the status of the available link.
  • the link detection process is periodically triggered by the controller, and the controller constructs a second LLDP packet (the second LLDP packet) sent by the analog OF switch 1 according to the information of the OF switch 1.
  • the information carrying the OF switch 1 such as the MAC and the port information, is encapsulated in the Packet-Out message of the OpenFlow protocol and sent to the OF switch 1 , and the action indication corresponding to the second LLDP message indicates the second LLDP report.
  • the available link of the port 1 of the OF switch 1 to the port 1 of the OF switch 2 found in the above link discovery process is taken as an example.
  • S32 The first switch forwards the second LLDP packet to the second switch according to the behavior indication corresponding to the second LLDP packet.
  • the second switch After receiving the second LLDP packet, the second switch matches the link flow table according to the priority information, and discards the second LLDP packet according to the matching result.
  • step c in FIG. 3 after the controller processes the LLDP first packet (the first LLDP packet in the link discovery process), a plurality of link flow tables are added to each OF switch. . After the interval T of the LLDP packet is sent, the controller triggers the second LLDP packet for detecting the link state. However, when the port 1 of the OF switch 2 receives the second LLDP packet sent from the port 1 of the OF switch 1, the OF switch 2 matches the first packet processing flow because the link flow table is configured on the OF switch 2. The link flow table shown in Table 2 issued in the middle. According to the drop indication of the link flow table (actions are drop), the OF switch 2 discards the second LLDP packet, so that the packet-in message of the second LLDP packet is not reported to the controller.
  • the OF switch 2 receives the After the link flow table is configured, the timer can also be started to monitor the aging of the link flow table. The timeout period of the timer can be set to the aging time of the flow table. If the timer fails to time out, the OF switch 2 can receive the timer. The second LLDP packet discards the second LLDP packet and resets the timer. In the current monitoring, the link status is not abnormal. You need to monitor the aging of the link flow table for the next round.
  • the OF switch 2 discards the second LLDP packet according to the link flow table. And reset the timer. If the link of the port 1 of the OF switch 1 to the port 1 of the OF switch 2 is always smooth, the OF switch 2 will always receive the second LLDP packet from the link, and the link flow table of Table 2 on the OF switch 2 Will always be activated without aging. The OF switch 2 also discards the second LLDP packet and does not report the second LLDP packet to the controller. Thereby reducing the number of message interactions and improving the resource utilization of the system.
  • FIG. 4 is a schematic flowchart diagram of a method for link fault processing according to an embodiment of the present invention.
  • the second switch After receiving the link flow table, the second switch starts the timer. After receiving the second LLDP packet, the second switch discards the second LLDP packet and resets the timer.
  • the timer on the second switch starts to monitor whether the link flow table is aging.
  • S41 The controller triggers a second LLDP packet every time interval T, and the second LLDP packet is triggered by the controller and used to detect the status of the available link.
  • S42 The first switch forwards the second LLDP packet to the second switch according to the behavior indication corresponding to the second LLDP packet, but the sending fails.
  • step b in FIG. since the link from the port 1 of the OF switch 1 to the port 1 of the OF switch 2 is faulty or abnormal, the link is unavailable, so the first The second switch will not receive the second LLDP packet.
  • This cycle is repeated several times until the link aging time is reached, and the fault or abnormality is still not released.
  • the link aging time and the link flow table aging time can be the same.
  • the second switch determines that the second LLDP packet is not received by the timer, and determines that the link flow table is aged, and the second switch deletes the link flow table according to the aging behavior of the flow table, and Notifying the controller that the link flow table has been deleted.
  • the OF switch 2 When the link is disconnected or fails, the OF switch 2 will not receive the second LLDP packet from the link, and the link flow table of Table 2 on the OF switch 2 will not be hit. When the link flow table is not hit due to the aging time, the link flow table is deleted.
  • the OpenFlow protocol specifies that the flow table aging behavior is configured in the link flow table. When the link flow table ages, the OF switch 2 reports a Flow-Removed message to the controller to notify the controller that a link flow table is deleted.
  • the controller may determine that the status of the previously recorded available link is abnormal according to the link identifier corresponding to the link flow table.
  • the controller receives the Flow-Removed message, and obtains the corresponding link according to the matching information of the aging link flow table. At this point, the controller can know that the link is down or faulty.
  • the controller actively sends the link flow table corresponding to the link to the switch, so that the switch does not receive the LLDP packet subsequently.
  • the common flow table is matched to match the link flow table, so that the subsequent LLDP message is discarded according to the indication of the link flow table, instead of continuously reporting the message to the controller, thereby solving a large number of Packet-In in the prior art.
  • the message occupies a large amount of network resources in the secure channel between the controller and the OF switch, which reduces the number of useless Packet-In messages reported by the switch to the controller, saving the controller and the handover.
  • the network resources between the exchanges also avoid unnecessary waste of processing and storage resources on the controller, and improve the efficiency of the entire network.
  • the aging time of the flow table is greater than the period in which the LLDP packet is triggered by the controller, and the aging time set in each link flow table is used to continuously monitor the link status.
  • the link is kept open, and the link flow table does not age.
  • the switch receives the second LLDP packet and discards the second LLDP packet according to the link flow table. This prevents network resources between the controller and the switch. Waste, and unnecessary waste of processing resources of the controller. If the link is faulty or abnormal, the link flow table will be aged. After the link flow table is aged, the switch reports that the link flow table has been deleted. So that the controller can also grasp the fault or abnormal state of the link.
  • the link discovery process, the link keep-alive process, and the link processing process are all part of the link state monitoring method provided by the embodiments of the present invention. Embodiments of the invention are described below from the perspective of an SDN network.
  • the software-defined network SDN provided by the embodiment of the present invention includes a controller, a first switch, and a second switch;
  • the controller is configured to send, to the first switch, a first LLDP packet that is configured by using a link layer discovery protocol (LLDP) protocol, where the first LLDP packet indicates that the first switch forwards the packet to the second switch Decoding a first LLDP packet to discover an available link of the first switch to the second switch;
  • LLDP link layer discovery protocol
  • the first switch is configured to forward the first LLDP packet to the second switch;
  • the second switch is configured to receive the first LLDP packet that is forwarded by the first switch, and report the first LLDP packet to the controller;
  • the controller is further configured to receive the first LLDP packet that is reported by the second switch, where Determining, by the transmission path of the first LLDP packet, an available link of the first switch to the second switch, recording information of the available link, and sending a link flow table to the second switch, where The link flow table is configured to instruct the second switch to discard the second LLDP packet forwarded by the first switch by using the available link, where the second LLDP packet is triggered by the controller and used for detecting The status of the available link;
  • the second switch is further configured to receive and save a link flow table sent by the controller.
  • the controller is further configured to: after establishing a connection with the second switch, send a universal flow table to the second switch, where the universal flow table is used to indicate the second
  • the switch reports the received LLDP message to the controller, and the controller is further configured to carry priority information in the link flow table, where the priority information is used to indicate the link flow.
  • the priority of the table is higher than the universal flow table; the second switch is further configured to report the first LLDP report to the controller according to the universal flow table after receiving the first LLDP message After the second LLDP packet is received, the link flow table is matched according to the priority information, and the second LLDP packet is discarded according to the matching result.
  • the controller is further configured to send the second LLDP packet to the first switch every time interval, and carry the flow table in the link flow table.
  • the aging time and the flow table aging behavior, the flow table aging time is greater than the first time period, and the flow table aging behavior is used to indicate that the second switch deletes the link when the link flow table is aged.
  • the flow table reports to the controller that the link flow table has been deleted.
  • the second switch is further configured to start a timer after saving the link flow table, if the time of the timer exceeds the aging time of the flow table Receiving the second LLDP packet, discarding the second LLDP packet according to the link flow table, And reset the timer.
  • the second switch is further configured to determine that the link flow table is aged after the timeout period of the timer exceeds the aging time of the flow table, and the second LLDP packet is still not received.
  • the flow table aging behavior deletes the link flow table, and reports to the controller that the link flow table has been deleted; the controller is further configured to receive the link sent by the second switch The notification that the flow table has been deleted, and according to the notification, determines that the status of the available link is abnormal.
  • FIG. 5 it is a composition diagram of a controller 500 according to an embodiment of the present invention. Only the module components involved in the embodiments of the present invention are listed herein, and all components of the controller are not listed, and the controller implements link detection. Take the LLDP protocol implementation as an example.
  • the link detection module 51 is configured to send a first LLDP packet based on the LLDP protocol to the first switch, where the first LLDP packet indicates that the first switch forwards the first LLDP packet to the second switch The discovery of the available link of the first switch to the second switch;
  • the link information management module 52 is configured to receive the first LLDP packet that is reported by the second switch, and determine an available link of the first switch to the second switch according to the transmission path of the first LLDP packet. And recording information about the available links;
  • the flow table distribution module 53 is configured to send a link flow table to the second switch after the link information management module records the information of the available link, where the link flow table is used to indicate the
  • the second switch discards the second LLDP packet forwarded by the first switch by using the available link, and the second LLDP packet is triggered by the controller and used to detect the status of the available link.
  • the flow table distribution module 53 is further configured to: after determining to establish a connection with the second switch, send a universal flow table to the second switch, where the universal flow table is used Indication
  • the second switch reports the received LLDP message to the controller, and is further configured to carry priority information in the link flow table, where the priority information is used to indicate the chain
  • the flow table has a higher priority than the universal flow table.
  • the link detection module 51 is configured to trigger the second LLDP packet in the first time period.
  • the flow table distribution module 53 is further configured to carry the flow table aging time and the link flow table.
  • the flow table aging behavior, the flow table aging time is greater than the first time period, and the flow table aging behavior is used to indicate that the second switch deletes the link flow table when the link flow table is aged and Notifying the controller that the link flow table has been deleted.
  • the link information management module 52 is further configured to receive a notification that the link flow table sent by the second switch has been deleted, and determine, according to the notification, that an abnormality occurs in a state of the available link.
  • composition diagram of a switch 600 includes:
  • the link detection module 61 is configured to receive a first LLDP packet that is forwarded by the first switch and is configured by the LLDP protocol, where the first LLDP packet is sent by the controller to the first switch and used to discover the first The information of the first switch is carried in the first LLDP packet by the switch to the available link of the second switch;
  • the link information reporting module 62 is configured to report the first LLDP packet to the controller, so that the controller determines the first switch to the second switch according to the transmission path of the first LLDP packet. Available link;
  • a flow table processing module 63 configured to receive and save a link flow table sent by the controller, where the link flow table is used to instruct the second switch to forward the first switch by using the available link.
  • the second LLDP packet is discarded, and the second LLDP packet is triggered by the controller and used to detect the status of the available link.
  • the flow table handling module 63 is further configured to receive a universal flow table sent by the controller.
  • the general flow table is used to instruct the second switch to report all the received LLDP messages to the controller;
  • the link flow table specifically received by the flow table processing module 63 further includes priority Level information, the priority information is used to indicate that the link flow table has a higher priority than the universal flow table;
  • the flow table handling module 63 is further configured to: after receiving the first LLDP message, And reporting the first LLDP packet to the controller according to the universal flow table, and after receiving the second LLDP packet, matching the link flow table according to the priority information, according to the matching result. Discarding the second LLDP packet.
  • the second LLDP packet is triggered by the controller in a first time period; the link flow table further includes a flow table aging time and a flow table aging behavior.
  • the aging time of the flow table is greater than the first time period, and the aging behavior of the flow table is used to indicate that the second switch deletes the link flow table and reports to the controller when the link flow table is aged.
  • the link flow table has been deleted.
  • the flow table processing module 63 is further configured to: after saving the link flow table, start a timer, if the second switch determines that the timer time of the timer exceeds the flow table aging time Receiving the second LLDP packet, discarding the second LLDP packet according to the link flow table, and resetting the timer.
  • the flow table processing module 63 is further configured to determine the link flow table after determining that the timer time of the timer exceeds the aging time of the flow table and the second LLDP packet is still not received. Aging, and deleting the link flow table according to the aging behavior of the flow table, notifying the link information reporting module 62 to report the notification that the link flow table has been deleted to the controller, to notify the controller Said The status of the available link is abnormal.
  • the embodiment of the present invention further provides another link state detection method, which implements some differences from the manner of the foregoing embodiment, as described in detail below.
  • the method of the embodiment of the present invention is to extend the function of the controller to enable the controller to send the link flow table to prevent the OF switch from reporting the Packet-In message of the second LLDP to the controller. In this way, all control logic and intelligence in the SDN network are considered to be placed on the controller side, and the OF switch only supports the OpenFlow protocol.
  • the above implementation method can be implemented without modifying the switch of the OpenFlow protocol.
  • the controller still needs to trigger the LLDP Packet-Out message to each OF switch in each LLDP period. Therefore, it is further considered that if a limited number of basic protocols and control logic are placed on the OF switch (functional expansion of the OF switch), this can completely avoid the interaction of the periodic heartbeat message between the controller and the OF switch.
  • the LLDP protocol implementation is still taken as an example. As shown in Figure 7, the corresponding methods include:
  • S71 The OF switch 1 constructs an LLDP packet and sends it to its neighboring switch.
  • the controller does not trigger the link discovery or the link state detection packet, but is triggered by the switch itself.
  • the OF switch 2 discovers the available link of the OF switch 1 to itself, and records information about the available link.
  • the OF switch 2 receives the LLDP packet sent from the port 1 of the OF switch 1 and the LLDP protocol stack on the OF switch 2, and the port 1 of the OF switch 1 and the port 1 of the OF switch 2 are known to exist.
  • a link The OF switch 2 saves the link information in a standard MIB (Management Information Base) or other storage form. For the controller to query and determine the communication status of the link.
  • MIB Management Information Base
  • the link status report may be a link establishment report or a link deletion report.
  • the specific implementation can modify the content meaning of the existing OpenFlow message, and can also redefine a new message that is not available in OpenFlow. For example, modify the reason in the Flow-Removed message to specify link establishment or link deletion, and carry the link information such as the source/destination switch MAC and port in the match.
  • the custom OpenFlow message is a link setup or delete message.
  • the information carried by the custom message includes: link establishment or link deletion; basic information of the link.
  • step S73 The OF switch needs to periodically repeat step S71, but when there is no change in the link state, step S73 does not need to be repeated.
  • the OF switch 2 does not receive the LLDP packet from the port 1 of the OF switch 1 during the link aging time, the link is considered to be disconnected or faulty.
  • the link status is changed or deleted in the MIB.
  • the link deletes the customized OpenFlow message to the controller, and the controller deletes the link in the local link information management library.
  • the above embodiments can occupy less secure channels between the controller and the switch, and more completely reduce the link state detection message between the controller and the switch.
  • this embodiment needs to modify the OpenFlow protocol or reinterpret certain messages in the OpenFlow protocol framework, and needs to modify the OpenFlow protocol stack of the controller and the OF switch, and requires specific OF switches that support loading specific protocols and control logic.
  • FIG. 8 is a schematic structural diagram of a computer according to an embodiment of the present invention. Calculation of an embodiment of the present invention
  • the machine can include:
  • the CPU 801, the memory 802, and the communication interface 805 are connected by the system bus 804 and complete communication with each other.
  • Processor 801 may be a single core or multi-core central processing unit, or a particular set of circuits, or one or more integrated circuits configured to implement embodiments of the present invention.
  • the memory 802 may be a high speed RAM memory or a non-volatile memory such as at least one disk memory.
  • Memory 802 is used by computer to execute instructions 803. Specifically, the program code may be included in the computer execution instruction 803.
  • the processor 801 runs the computer execution instruction 803, and can perform the link state detection method provided by any one of the embodiments of the present invention.
  • aspects of the present invention, or possible implementations of various aspects may be embodied as a system, method, or computer program product.
  • aspects of the invention, or possible implementations of various aspects may be in the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, etc.), or a combination of software and hardware aspects, They are collectively referred to herein as "circuits," “modules,” or “systems.”
  • aspects of the invention, or possible implementations of various aspects may take the form of a computer program product, which is a computer readable program code stored in a computer readable medium.
  • the computer readable medium can be a computer readable signal medium or a computer readable storage medium.
  • the computer readable storage medium includes, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing, such as random access memory (RAM), read only memory (ROM), Erase programmable read-only memory (EPROM or flash memory), optical fiber, portable Read only memory (CD-ROM).
  • the processor in the computer reads the computer readable program code stored in the computer readable medium such that the processor is capable of performing the various functional steps specified in each step of the flowchart, or a combination of steps; A device that functions as specified in each block, or combination of blocks.
  • the computer readable program code can execute entirely on the user's computer, partly on the user's computer, as a separate software package, partly on the user's computer and partly on the remote computer, or entirely on the remote computer or server.
  • the functions noted in the various steps in the flowcharts or in the blocks in the block diagrams may not occur in the order noted. For example, two steps, or two blocks, shown in succession may be executed substantially concurrently or the blocks may be executed in the reverse order.

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供应用于软件定义网络SDN的链路状态检测方法、装置和系统,用于减少控制器与交换机之间的链路状态探测的报文。在控制器发现一条可用链路之后,控制器向交换机发送链路流表,该链路流表用于指示该交换机将其它交换机通过所述可用链路转发的用于探测所述可用链路的状态报文进行丢弃。

Description

一种链路状态检测方法、装置和系统 技术领域
本发明实施例涉及通信技术,特别是一种链路状态检测方法、装置和系统。
背景技术
在软件定义网络(Software Defined Networking,SDN)的体系架构包括控制器和交换机,控制器是SDN网络的核心。应用通过控制器来配置和操作交换机的各种设置和行为,从而达到控制交换机实现各种应用逻辑的目的;同样,交换机也通过控制器将数据平面的各种信息反馈到应用中,以便应用做出相应的控制逻辑。OpenFlow协议用来描述控制器和交换机之间交互所用信息的标准,以及控制器和交换机的接口标准。协议的核心部分是用于OpenFlow协议信息结构的集合。流表(Flow Table)是OpenFLow交换机本地维护的用于控制数据包具体处理操作的表项。
当OpenFlow交换机上线后,它会通过一系列消息与控制器建立连接并交互必要的信息。建立连接成功后,控制器可以向OpenFlow交换机下发一条LLDP(Link Layer Discovery Protocol,链路层发现协议)报文的通用流表,该通用流表用于指示OpenFlow交换机将收到的所有LLDP报文都通过OpenFlow协议中的Packet-In消息上报给控制器。
由于网络的控制都集中在控制器,所以链路状态的(例如链路发现或链路故障)检测都需要控制器来完成。为了使控制器快速发现链路或发现链路故障,需要控制器以一定周期T发起链路的状态的探测,控制器首先会根据SDN网络中的任意一个交换机1的信息构造一个模拟交换机1发出的LLDP报文,封装到OpenFlow协议中Packet-Out消息中发送给交换机1,该报文对应的actions是 从交换机1的某个开启的端口发出。交换机1收到LLDP的Packet-Out报文后,按照actions从某个开启的端口发出,例如通过端口1发出。以交换机2为例,它收到O交换机1发来的LLDP报文后,首先在本地通用流表里匹配,找到了控制器之前下发的LLDP报文的通用匹配流表,按照流表actions将该LLDP报文通过Packet-In消息发送给控制器。
由于SDN网络中存在大量的交换机,如果在链路发现阶段,每个交换机都发送Packet-In消息给控制器,将使得控制器收到大量的Packet-In消息。当网络规模增大时,这个消息量还是相当大,会占用控制器和交换机之间安全通道的大量网络资源,影响控制消息的及时准确传输,也浪费了控制器的处理和存储资源的。
综上所述,现有技术方案中存在大量的Packet-In消息,降低了控制器网络和计算资源的利用率,影响整个网络的使用效率。
发明内容
本发明实施例提出了一种链路状态检测方法、装置和系统,以解决现有技术链路状态检测方法浪费网络资源的问题。
第一方面,本发明实施例一种链路状态检测方法,应用于软件定义网络SDN,包括:
控制器向第一交换机下发基于链路层发现协议LLDP构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
所述控制器接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记 录所述可用链路的信息;
所述控制器向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
根据第一方面,第一种可行的实现方式中,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
根据第一方面的上述可行的实现方式,第二种可行的实现方式中,在所述控制器向第一交换机下发所述第一LLDP报文之前,还包括:
所述控制器在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;
则所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表。
根据第一方面的上述可行的实现方式,第三种可行的实现方式中,所述控制器每间隔第一时间周期触发所述第二LLDP报文;
则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
根据第一方面的上述可行的实现方式,第四种可行的实现方式中,,还包括:
所述控制器接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。
第二方面,提供一种链路状态检测方法,应用于软件定义网络SDN,包括:
第二交换机接收第一交换机转发的基于链路层发现协议LLDP协议的第一LLDP报文,所述第一LLDP报文由控制器构造并下发给所述第一交换机,所述第一LLDP报文用于发现所述第一交换机到所述第二交换机的可用链路;
所述第二交换机向所述控制器上报所述第一LLDP报文,以使得所述控制器根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路;
所述第二交换机接收并保存所述控制器发送的链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
根据第二方面,第一种可行的实现方式中,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
根据第二方面的上述可行的实现方式,第二种可行的实现方式中,在所述第二交换机接收第一交换机转发的所述第一LLDP报文之前,还包括:
所述第二交换机接收所述控制器发送的通用流表,所述通用流表用于指示 所述第二交换机将接收到的所有LLDP报文上报给所述控制器;
相应地,
所述第二交换机在接收到所述第一LLDP报文后,根据所述通用流表向所述控制器上报所述第一LLDP报文;
所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表;
所述第二交换机在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
根据第二方面的上述可行的实现方式,第三种可行的实现方式中,所述第二LLDP报文由所述控制器每间隔第一时间周期触发;
则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
根据第二方面的上述可行的实现方式,第四种可行的实现方式中,还包括:
所述第二交换机在保存所述链路流表之后,启动计时器;
若在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,所述所述第二交换机根据所述链路流表将所述第二LLDP报文丢弃,并重置所述计时器。
根据第二方面的上述可行的实现方式,第五种可行的实现方式中,还包括:
所述第二交换机确定在所述计时器的计时时间超出所述流表老化时间之后,仍未接收到所述第二LLDP报文,则确定所述链路流表老化;
所述第二交换机根据所述流表老化行为删除所述链路流表,并向所述控制器上报所述链路流表已删除的通知,以通知所述控制器所述可用链路的状态出现异常。
第三方面,提供一种软件定义网络SDN,包括控制器、第一交换机和第二交换机;
所述控制器,用于向所述第一交换机下发基于链路层发现协议LLDP协议构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
所述第一交换机,用于向所述第二交换机转发所述第一LLDP报文;
所述第二交换机,用于接收所述第一交换机转发的所述第一LLDP报文,以及向所述控制器上报所述第一LLDP报文;
所述控制器,还用于接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,记录所述可用链路的信息,以及向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态;
所述第二交换机,还用于接收并保存所述控制器发送的链路流表。
第四方面,提供一种控制器,应用于软件定义网络SDN,包括:
链路检测模块,用于向第一交换机下发基于LLDP协议构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一 LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
链路信息管理模块,用于接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记录所述可用链路的信息;
流表分发模块,用于在所述链路信息管理模块记录所述可用链路的信息之后,向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
根据第四方面,第一种可行的实现方式中,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
根据第四方面的上述可行的实现方式,第二种可行的实现方式中,所述流表分发模块,还用于在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器,以及还用于在所述所述链路流表中携带优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表。
根据第四方面的上述可行的实现方式,第三种可行的实现方式中,所述链路检测模块具体用于每间隔第一时间周期触发所述第二LLDP报文;
则所述流表分发模块还用于在所述链路流表中携带流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指 示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
根据第四方面的上述可行的实现方式,第四种可行的实现方式中,所述链路信息管理模块还用于接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。
第五方面,提供一种交换机,应用于软件定义网络SDN,包括:
链路检测模块,用于接收第一交换机转发的基于LLDP协议构造的第一LLDP报文,所述第一LLDP报文由控制器下发给所述第一交换机并用于发现所述第一交换机到所述第二交换机的可用链路,所述第一LLDP报文中携带所述第一交换机的信息;
链路信息上报模块,用于向所述控制器上报所述第一LLDP报文,以使得所述控制器根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路;
流表处置模块,用于接收并保存所述控制器发送的链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
根据第五方面,第一种可行的实现方式中,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
根据第五方面的上述可行的实现方式,第二种可行的实现方式中,在所述第二交换机接收第一交换机转发的所述第一LLDP报文之前,所述流表处置模块还用于接收所述控制器发送的通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;所述流表处置模块具体接收到的所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表;所述流表处置模块还用于在接收到所述第一LLDP报文后,根据所述通用流表向所述控制器上报所述第一LLDP报文,以及在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
根据第五方面的上述可行的实现方式,第三种可行的实现方式中,所述第二LLDP报文由所述控制器每间隔第一时间周期触发;
则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
根据第五方面的上述可行的实现方式,第四种可行的实现方式中,所述流表处置模块还用于在保存所述链路流表之后,启动计时器,若在所述第二交换机确定在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,根据所述链路流表将所述第二LLDP报文丢弃,并重置所述计时器。
根据第五方面的上述可行的实现方式,第五种可行的实现方式中,所述流表处置模块还用于在确定所述计时器的计时时间超出所述流表老化时间之后且仍未接收到所述第二LLDP报文时,确定所述链路流表老化,以及根据所述流 表老化行为删除所述链路流表,通知所述链路信息上报模块向所述控制器上报所述链路流表已删除的通知,以通知所述控制器所述可用链路的状态出现异常。
第六方面,本发明实施例提供一种计算机,包括:处理器、存储器、总线和通信接口;
所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述总线连接,当所述计算机运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述计算机执行以上第一方面、第一方面任一可能、第二方面或第二方面的任意可能的实现方式所提供的链路状态探测方法。
第七方面,本发明实施例提供一种计算机可读介质,包括计算机执行指令,以供计算机的处理器执行所述计算机执行指令时,以使所述计算机执行以上第一方面、第一方面任一可能、第二方面或第二方面的任意可能的实现方式所提供的链路状态探测方法。
本发明实施例,不同于现有技术,控制器在发现链路或检测链路激活后,主动下发该链路对应的链路流表到交换机,使得交换机后续接收到LLDP报文之后,不再匹配通用流表而是匹配链路流表,而是根据链路流表的指示丢弃后续LLDP报文,而不是不断向控制器上报报文,从而,解决了现有技术中大量的Packet-In消息占用控制器和OF交换机之间安全通道的大量网络资源的问题,降低了交换机上报给控制器的无用的Packet-In消息的数量,节约了控制器和交换机之间的网络资源,也避免了控制器上的一些不必要的处理和存储资源的浪费,提高了整个网络的使用效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的链路发现的流程示意图;
图2是本发明实施例的链路发现的又一流程示意图;
图3是本发明实施例的链路保活的流程示意图;
图4是本发明实施例的链路故障处理的流程示意图;
图5是本发明实施例的控制器的组成图;
图6是本发明实施例的交换机的组成图;
图7是本发明实施例的链路状态探测的又一流程示意图;
图8是根据本发明实施例提供的一种计算机的组成图。
具体实施方式
本发明实施例提出了一种链路状态检测方法、装置和系统,以提供一种不占用太多系统资源即可实现的链路发现或者链路故障探测机制。
如图1所示,为本发明实施例提供的结合系统架构的链路发现的方法流程示意图。本发明实施例中将OpenFlow交换机简称为OF交换机。本实施例中,以SDN网络中包含3个OF交换机为例,在实际的应用场景中,还可能包含更多的OF交换机。如图2所示,为链路发现的另一流程示意图。
首先,在链路发现流程之前,需要执行控制器与交换机之间的LLDP报文的通用处理机制。
S10:当OF交换机2上线后,它会通过一系列消息与控制器建立连接并交互必要的信息。建立连接成功后,控制器可以向OF交换机2下发一条LLDP(Link  Layer Discovery Protocol,链路层发现协议)报文的通用流表,该通用流表用于指示OF交换机2将收到的所有LLDP报文都通过OpenFlow协议中的Packet-In消息上报给控制器。该通用的流表例如:
表1:OpenFlow交换机与控制器建立连接后,控制器下发的LLDP通用流
Figure PCTCN2015097894-appb-000001
上述步骤S10的方法只是一种可实现的例子,还可以有其他的实现方式,例如:另一种可行的方法是下发一个优先级最低的all_match的流表,使所有没有匹配流表的报文上报控制器(通常OF交换机会有一条这样的流表,不单是为LLDP准备)。如:priority=i,actions=controller。这里i的值小于或等于其他任意流表的priority值。
再结合图1和图2所示的流程,本发明实施例中链路发现的过程包括:
S11:控制器向第一交换机下发基于链路层发现协议LLDP构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路。
具体地,如图1中步骤①或图2中步骤a,链路发现流程由控制器来触发,控制器会根据OF交换机1的信息构造一个模拟OF交换机1发出的第一LLDP报文(第一LLDP报文中携带OF交换机1的信息,例如MAC和端口信息),封装到OpenFlow协议的Packet-Out消息中发送给OF交换机1,该第一LLDP报文对应的行为指示(actions)表示该第一LLDP报文需要从OF交换机1的所有开启的端口发出。
S12:第一交换机根据该第一LLDP报文对应的行为指示,将该第一LLDP报文转发给第二交换机。
具体地,OF交换机1收到第一LLDP的Packet-Out报文后,按照actions从所有开启的端口发出,图1中就是步骤②发给OF交换机2和3,图2中就是步骤b。
S13:控制器接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路。
具体地,以OF交换机2为例,如图1中步骤③或图2中步骤c所示,它收到OF交换机1发来的第一LLDP报文后,首先在本地保存的LLDP通用流表里匹配,按照LLDP通用流表中指示的actions将该第一LLDP报文通过Packet-In消息上报给控制器。OF交换机3同理(本实施例中图示中描述了OF交换机3的实现方法,因OF交换机的原理与OF交换机2一致,因此文字部分不再赘述)。控制器收到上报的Packet-In消息(包含第一LLDP报文),首先可以得到上报该Packet-In消息的OF交换机2的数据路径datapath和入端口in_port,即获得了上报该Packet-In消息的交换机的信息(MAC地址和端口信息)。然后分析该第一LLDP报文内容,可以得知发出此第一LLDP报文的源OF交换机1的MAC地址和封装在LLDP数据单元中的端口信息port_id。这样,控制器就通过该第一LLDP报文的传输路径发现了从OF交换机1的端口1到OF交换机2的端口1的一条可用链路。
S14:控制器记录所述可用链路的信息。
具体地,如图2中步骤d所示,控制器可以在本地记录发现的从OF交换机1的端口1到OF交换机2的端口1的这条可用链路的相关信息。
S15:控制器向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
第二交换机接收到该链路流表之后,可以保存该链路流表。
具体地,如图1中步骤④或图2中步骤e所示,控制器记录了OF交换机端口1到OF交换机端口2的链路后,可以构造一条与该链路对应的流表,例如命名为链路流表,如下:
表2:控制器为OF交换机2下发的链路流表
Figure PCTCN2015097894-appb-000002
构造的这条链路流表包含链路的标识,使得链路流表的匹配项只要能唯一确定这条链路即可,例如,链路标识信息可以包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。当然,本发明实施例不限于上述例子中的形式。
链路流表还可以包括丢弃指示,例如链路流表中的actions配置为drop,表示第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃。
链路流表还可以包括老化时间idle_timeout,老化时间是OpenFlow协议中为该链路流表设置的空闲等待时间,也就是说当该链路流表在空闲等待时间内没 有被任何包命中过,则删除该链路流表(即链路流表老化)。这个老化时间在本发明实施例中可以大于LLDP报文的发送周期T(控制器每间隔时间周期T会发起用于链路状态探测的第二LLDP报文)。在老化时间内没有收到该链路发来的第二LLDP包,则认为该链路断开或故障。在老化时间内收到该链路发来的第二LLDP包,则根据丢弃指示丢弃该第二LLDP报文。具体地,链路流表还可以包括流表老化行为,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
链路流表还可以包括优先级信息priority,用于设定了链路流表的优先级,该链路流表的优先级应该不低于控制器统一下发的LLDP通用流表的优先级。其目的就是让已经建立链路的交换机在执行流表操作时,匹配链路流表而不要匹配通用LLDP流表。
本发明实施例,不同于现有技术,控制器在发现链路或检测链路激活后,主动下发该链路对应的链路流表到交换机,使得交换机后续接收到LLDP报文之后,不再匹配通用流表而是匹配链路流表,从而根据链路流表的指示丢弃后续LLDP报文,而不是不断向控制器上报报文,从而,解决了现有技术中大量的Packet-In消息占用控制器和OF交换机之间安全通道的大量网络资源的问题,降低了交换机上报给控制器的无用的Packet-In消息的数量,节约了控制器和交换机之间的网络资源,也避免了控制器上的一些不必要的处理和存储资源的浪费,提高了整个网络的使用效率。
如图3所示,为本发明实施例提供的链路保活的方法流程示意图。
S31:控制器每间隔时间周期T触发第二LLDP报文,所述第二LLDP报文 由所述控制器触发并用于探测所述可用链路的状态。
具体地,如图3中的步骤a,链路探测流程由控制器周期性触发,控制器会根据OF交换机1的信息构造一个模拟OF交换机1发出的第二LLDP报文(第二LLDP报文中携带OF交换机1的信息,例如MAC和端口信息),封装到OpenFlow协议的Packet-Out消息中发送给OF交换机1,该第二LLDP报文对应的行为指示(actions)表示该第二LLDP报文需要指定的链路发出(本实施例中以上述链路发现流程中发现的从OF交换机1的端口1到OF交换机2的端口1的可用链路为例)。
S32:第一交换机根据该第二LLDP报文对应的行为指示,将该第二LLDP报文转发给第二交换机。
具体地,如图3中的步骤b所示。
S33:第二交换机在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
具体地,如图3中的步骤c所示,当控制器处理完LLDP首包(链路发现过程中的第一LLDP报文)后,每个OF交换机上就多了若干条链路流表。间隔LLDP报文的发送周期T后,控制器再次触发用于探测链路状态的第二LLDP报文。但是,当OF交换机2的端口1收到从OF交换机1的端口1发来的第二LLDP报文时,由于OF交换机2上配置了链路流表,因此OF交换机2将匹配首包处理流程中下发的表2所示的链路流表。按照链路流表的丢弃指示(actions为drop),OF交换机2丢弃该第二LLDP报文,这样就不会有冗余的第二LLDP报文的Packet-In消息上报给控制器了。
另外,由于表2的链路流表中携带流表老化时间,在OF交换机2接收到该 链路流表后,还可以启动计时器来对链路流表是否老化进行监控,计时器的超时时间可以设置为流表老化的时间,若在计时器未超时之前,OF交换机2能够接收到第二LLDP报文,则丢弃第二LLDP报文且重置计时器。确定本轮监控中,链路状态未出现异常,需要对链路流表的老化进行下一轮监控。因此,若在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,所述OF交换机2根据所述链路流表将所述第二LLDP报文丢弃,并重置计时器。如果OF交换机1的端口1到OF交换机2的端口1的链路一直通畅,则OF交换机2一直会收到该链路来的第二LLDP报文,OF交换机2上表2的链路流表将一直被激活不会老化。OF交换机2也会一直将第二LLDP报文进行丢弃,不会将该第二LLDP报文上报到控制器。从而减低消息交互的次数,提高系统的资源利用率。
如图4所示,为本发明实施例提供的链路故障处理的方法流程示意图。
S40:第二交换机接收到链路流表后,启动计时器;或者,第二交换机接收到第二LLDP报文后,丢弃第二LLDP报文并重置计时器。
在链路出现故障或者异常之前,按照前述链路发现流程或者链路保活流程,第二交换机上的计时器启动对链路流表是否老化进行监控。
S41:控制器每间隔时间周期T触发第二LLDP报文,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
具体地,如图4中的步骤a所示。
S42:第一交换机根据该第二LLDP报文对应的行为指示,将该第二LLDP报文转发给第二交换机,但是发送失败。
具体地,如图4中的步骤b所示。此步骤中,由于从OF交换机1的端口1到OF交换机2的端口1的链路出现故障或者异常,导致该链路不可用,因此第 二交换机将接收不到该第二LLDP报文。如此循环若干次,直到达到链路老化时间,故障或者异常仍未解除。链路老化时间与链路流表老化时间可以一致。
S43:第二交换机确定计时器超时仍未接收到第二LLDP报文,则确定所述链路流表老化,所述第二交换机根据所述流表老化行为删除所述链路流表,并向所述控制器上报所述链路流表已删除的通知。
具体地,具体地,如图4中的步骤c和d所示。当该链路断开或故障时,OF交换机2将收不到该链路来的第二LLDP报文,OF交换机2上表2的链路流表将不会被命中。当该链路流表超过老化时间没有被命中,则该链路流表被删除。OpenFlow协议规定,通过链路流表中配置的流表老化行为,当链路流表老化时,OF交换机2会上报Flow-Removed消息给控制器通知控制器某条链路流表被删除。
S44:控制器接收到链路流表已删除的通知后,根据所述链路流表所对应的链路标识,可以确定之前记录的所述可用链路的状态出现异常。
具体地,如图4中的步骤e所示。控制器收到Flow-Removed消息,可以根据老化的链路流表的匹配项信息,得到对应的链路。此时,控制器就能得知该链路断开或故障。
本发明实施例,不同于现有技术,控制器在发现链路或检测链路激活后,主动下发该链路对应的链路流表到交换机,使得交换机后续接收到LLDP报文之后,不再匹配通用流表而是匹配链路流表,从而根据链路流表的指示丢弃后续LLDP报文,而不是不断向控制器上报报文,从而,解决了现有技术中大量的Packet-In消息占用控制器和OF交换机之间安全通道的大量网络资源的问题,降低了交换机上报给控制器的无用的Packet-In消息的数量,节约了控制器和交 换机之间的网络资源,也避免了控制器上的一些不必要的处理和存储资源的浪费,提高了整个网络的使用效率。
进一步,由于链路流表中设置了流表老化时间,流表老化时间大于控制器触发LLDP报文的周期,每个链路流表设置的老化时间有利于对链路状态进行持续监控,若链路一直保持通畅,链路流表不会出现老化,交换机受到第二LLDP报文将按照链路流表的指示丢弃第二LLDP报文,从而避免克控制器和交换机之间的网络资源的浪费,以及控制器不必要的处理资源的浪费,若链路出现故障或者异常,链路流表会出现老化,交换机在链路流表老化后,会上报链路流表已经删除的通知给控制器,从而使得控制器也能够掌握链路的故障或者异常状态。
上述链路发现流程、链路保活流程和链路处理流程各为本发明实施例提供的链路状态监测方法中的一部分。下面从SDN网络的角度来描述本发明实施例。
本发明实施例提供的软件定义网络SDN,包括控制器、第一交换机和第二交换机;
所述控制器,用于向所述第一交换机下发基于链路层发现协议LLDP协议构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
所述第一交换机,用于向所述第二交换机转发所述第一LLDP报文;
所述第二交换机,用于接收所述第一交换机转发的所述第一LLDP报文,以及向所述控制器上报所述第一LLDP报文;
所述控制器,还用于接收所述第二交换机上报的所述第一LLDP报文,根 据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,记录所述可用链路的信息,以及向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态;
所述第二交换机,还用于接收并保存所述控制器发送的链路流表。
一种具体实现的方式中,所述控制器还用于在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器,以及所述控制器还用于在所述链路流表中携带优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表;所述第二交换机还用于在接收到所述第一LLDP报文后,根据所述通用流表向所述控制器上报所述第一LLDP报文,以及在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
又一种具体实现的方式中,所述控制器还用于每间隔第一时间周期向所述第一交换机下发所述第二LLDP报文,以及在所述链路流表中携带流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
又一种具体实现的方式中,所述第二交换机,还用于在保存所述链路流表之后,启动计时器,若在在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,则根据所述链路流表将所述第二LLDP报文丢弃, 并重置所述计时器。
所述第二交换机,还用于在所述计时器的计时时间超出所述流表老化时间之后且仍未接收到所述第二LLDP报文时,确定所述链路流表老化,根据所述流表老化行为删除所述链路流表,并向所述控制器上报所述链路流表已删除的通知;所述控制器还用于接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。
本发明实施例需要通过修改SDN网络中的控制器对链路发现和链路故障检测等类似功能的处理逻辑。如图5所示,为本发明实施例提供的控制器500的组成图,这里仅列出本发明实施例涉及的模块组件,并未列出控制器的全部组件,控制器实现链路检测仍以采用LLDP协议实现为例。
链路检测模块51,用于向第一交换机下发基于LLDP协议构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
链路信息管理模块52,用于接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记录所述可用链路的信息;
流表分发模块53,用于在所述链路信息管理模块记录所述可用链路的信息之后,向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
所述流表分发模块53,在一种扩展的实施例中,还用于在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示 所述第二交换机将接收到的所有LLDP报文上报给所述控制器,以及还用于在所述所述链路流表中携带优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表。
所述链路检测模块51具体用于每间隔第一时间周期触发所述第二LLDP报文;则所述流表分发模块53还用于在所述链路流表中携带流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
所述链路信息管理模块52还用于接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。
如图6所示,为本发明实施例提供的交换机600的组成图,包括:
链路检测模块61,用于接收第一交换机转发的基于LLDP协议构造的第一LLDP报文,所述第一LLDP报文由控制器下发给所述第一交换机并用于发现所述第一交换机到所述第二交换机的可用链路,所述第一LLDP报文中携带所述第一交换机的信息;
链路信息上报模块62,用于向所述控制器上报所述第一LLDP报文,以使得所述控制器根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路;
流表处置模块63,用于接收并保存所述控制器发送的链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
在一种扩展的实施例中,在所述第二交换机接收第一交换机转发的所述第一LLDP报文之前,所述流表处置模块63还用于接收所述控制器发送的通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;所述流表处置模块63具体接收到的所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表;所述流表处置模块63还用于在接收到所述第一LLDP报文后,根据所述通用流表向所述控制器上报所述第一LLDP报文,以及在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
在一种优选的实施例中,所述第二LLDP报文由所述控制器每间隔第一时间周期触发;则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
进一步,所述流表处置模块63还用于在保存所述链路流表之后,启动计时器,若在所述第二交换机确定在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,根据所述链路流表将所述第二LLDP报文丢弃,并重置所述计时器。
进一步,所述流表处置模块63还用于在确定所述计时器的计时时间超出所述流表老化时间之后且仍未接收到所述第二LLDP报文时,确定所述链路流表老化,以及根据所述流表老化行为删除所述链路流表,通知所述链路信息上报模块62向所述控制器上报所述链路流表已删除的通知,以通知所述控制器所述 可用链路的状态出现异常。
除了上述本发明实施例提供的链路状态检测方法之外,本发明实施例还提供另外一种链路状态检测方法,其实现与上述实施例的方式存在一些区别,如下详述。
上述本发明实施例的方法是通过扩展控制器的功能以使得控制器能够下发链路流表来免除OF交换机上报第二LLDP的Packet-In消息到控制器。此方式是考虑SDN网络中所有控制逻辑和智能都放在控制器端,OF交换机仅仅支持OpenFlow协议,上述实现方法不需要修改OpenFlow协议的交换机即可实现。
然而,上述方法在每个LLDP周期里控制器还是需要触发LLDP的Packet-Out消息到各个OF交换机。因此,进一步考虑如果将有限的一些基本协议和控制逻辑放在OF交换机上(对OF交换机进行功能扩展),这样就能彻底避免控制器和OF交换机之间交互这种周期性心跳报文消息。依然以LLDP协议实现为例,如图7所示,相应的方法包括:
S71:OF交换机1自己构造LLDP报文并向其相邻交换机发送。
具体地,本发明实施例中,控制器将不再触发链路发现或者链路状态探测报文,而由交换机自己触发。
S72:OF交换机2发现OF交换机1到自身的可用链路,并记录所述可用链路的信息。
例如OF交换机2收到了OF交换机1从端口1发来的LLDP报文,通过OF交换机2上的LLDP协议栈解析后,可以得知OF交换机1的端口1和OF交换机2的端口1之间存在一条链路。OF交换机2将该链路信息以标准MIB(Management Information Base,管理信息库)或者其他的存储形式保存起来, 以供控制器查询及判断链路的通信状况。
S73:OF交换机2向控制器上报链路的状态报告,以使得控制器在本地的链路信息管理库中保存链路的信息。
所述的链路状态报告可以是链路建立报告,也可以是链路删除报告。具体实现可以修改OpenFlow现有消息的内容含义,也可以重新定义一个OpenFlow没有的新消息。例如修改Flow-Removed消息中的reason来指定是链路建立或者链路删除,并且在match中携带链路的信息,如源/目的交换机MAC、端口等。
例如,OF交换机2上新发现了一条可用链路,则会用自定义的OpenFlow消息将该链路的信息上报给控制器。控制器在本地的链路信息管理库中添加该链路。该自定义OpenFlow消息是链路建立或删除消息。总之,该自定义消息携带的信息包括:链路建立或者链路删除;链路的基本信息等。
OF交换机需要周期性重复步骤S71,但当链路状态无变化时,步骤S73则不需要再重复。当OF交换机2在链路老化时间内没有收到OF交换机1从端口1发来的LLDP报文时,则认为该链路断开或故障,在MIB中将链路状态改变或删除,同时上报链路删除的自定义的OpenFlow消息给控制器,控制器在本地链路信息管理库中删除该链路。
上述实施例能够占用更少的控制器和交换机之间的安全通道,更彻底的减少控制器与交换机之间的链路状态探测消息。然而,本实施例需要修改OpenFlow协议或者重新解释OpenFlow协议框架下某些消息,需要修改控制器和OF交换机的OpenFlow协议栈,并且需要特定的支持加载特定协议和控制逻辑的OF交换机。
如图8,为本发明实施例的计算机的结构组成示意图。本发明实施例的计算 机可包括:
处理器801、存储器802、系统总线804和通信接口805。CPU801、存储器802和通信接口805之间通过系统总线804连接并完成相互间的通信。
处理器801可能为单核或多核中央处理单元,或者为特定集合成电路,或者为被配置成实施本发明实施例的一个或多个集合成电路。
存储器802可以为高速RAM存储器,也可以为非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
存储器802用于计算机执行指令803。具体的,计算机执行指令803中可以包括程序代码。
当计算机运行时,处理器801运行计算机执行指令803,可以执行本发明实施例中任意一个实施例所提供的链路状态检测的方法。
本领域普通技术人员将会理解,本发明的各个方面、或各个方面的可能实现方式可以被具体实施为系统、方法或者计算机程序产品。因此,本发明的各方面、或各个方面的可能实现方式可以采用完全硬件实施例、完全软件实施例(包括固件、驻留软件等等),或者组合软件和硬件方面的实施例的形式,在这里都统称为“电路”、“模块”或者“系统”。此外,本发明的各方面、或各个方面的可能实现方式可以采用计算机程序产品的形式,计算机程序产品是指存储在计算机可读介质中的计算机可读程序代码。
计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质包含但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或者装置,或者前述的任意适当组合,如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或者快闪存储器)、光纤、便携 式只读存储器(CD-ROM)。
计算机中的处理器读取存储在计算机可读介质中的计算机可读程序代码,使得处理器能够执行在流程图中每个步骤、或各步骤的组合中规定的功能动作;生成实施在框图的每一块、或各块的组合中规定的功能动作的装置。
计算机可读程序代码可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为单独的软件包、部分在用户的计算机上并且部分在远程计算机上,或者完全在远程计算机或者服务器上执行。也应该注意,在某些替代实施方案中,在流程图中各步骤、或框图中各块所注明的功能可能不按图中注明的顺序发生。例如,依赖于所涉及的功能,接连示出的两个步骤、或两个块实际上可能被大致同时执行,或者这些块有时候可能被以相反顺序执行。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

Claims (28)

  1. 一种链路状态检测方法,其特征在于,应用于软件定义网络SDN,包括:
    控制器向第一交换机下发基于链路层发现协议LLDP构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
    所述控制器接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记录所述可用链路的信息;
    所述控制器向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
  2. 根据权利要求1所述的方法,其特征在于,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
  3. 根据权利要求1或2所述的方法,其特征在于,在所述控制器向第一交换机下发所述第一LLDP报文之前,还包括:
    所述控制器在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;
    则所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路 流表的优先级高于所述通用流表。
  4. 根据权利要求3所述的方法,其特征在于,所述控制器每间隔第一时间周期触发所述第二LLDP报文;
    则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
  5. 根据权利要求4所述的方法,其特征在于,还包括:
    所述控制器接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。
  6. 一种链路状态检测方法,其特征在于,应用于软件定义网络SDN,包括:
    第二交换机接收第一交换机转发的基于链路层发现协议LLDP协议的第一LLDP报文,所述第一LLDP报文由控制器构造并下发给所述第一交换机,所述第一LLDP报文用于发现所述第一交换机到所述第二交换机的可用链路;
    所述第二交换机向所述控制器上报所述第一LLDP报文,以使得所述控制器根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路;
    所述第二交换机接收并保存所述控制器发送的链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
  7. 根据权利要求6所述的方法,其特征在于,所述链路流表包括:所述链 路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
  8. 根据权利要求6或7所述的方法,其特征在于,在所述第二交换机接收第一交换机转发的所述第一LLDP报文之前,还包括:
    所述第二交换机接收所述控制器发送的通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;
    相应地,
    所述第二交换机在接收到所述第一LLDP报文后,根据所述通用流表向所述控制器上报所述第一LLDP报文;
    所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表;
    所述第二交换机在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
  9. 根据权利要求6-8任一项所述的方法,其特征在于,所述第二LLDP报文由所述控制器每间隔第一时间周期触发;
    则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
  10. 根据权利要求9所述的方法,其特征在于,还包括:
    所述第二交换机在保存所述链路流表之后,启动计时器;
    若在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,所述所述第二交换机根据所述链路流表将所述第二LLDP报文丢弃,并重置所述计时器。
  11. 根据权利要求10所述的方法,其特征在于,还包括:
    所述第二交换机确定在所述计时器的计时时间超出所述流表老化时间之后,仍未接收到所述第二LLDP报文,则确定所述链路流表老化;
    所述第二交换机根据所述流表老化行为删除所述链路流表,并向所述控制器上报所述链路流表已删除的通知,以通知所述控制器所述可用链路的状态出现异常。
  12. 一种软件定义网络SDN,其特征在于,包括控制器、第一交换机和第二交换机;
    所述控制器,用于向所述第一交换机下发基于链路层发现协议LLDP协议构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
    所述第一交换机,用于向所述第二交换机转发所述第一LLDP报文;
    所述第二交换机,用于接收所述第一交换机转发的所述第一LLDP报文,以及向所述控制器上报所述第一LLDP报文;
    所述控制器,还用于接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,记录所述可用链路的信息,以及向所述第二交换机发送链路流表,所述链 路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态;
    所述第二交换机,还用于接收并保存所述控制器发送的链路流表。
  13. 根据权利要求12所述的软件定义网络,其特征在于,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
  14. 根据权利要求12或13所述的软件定义网络,其特征在于,
    所述控制器还用于在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器,以及所述控制器还用于在所述链路流表中携带优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表;
    所述第二交换机还用于在接收到所述第一LLDP报文后,根据所述通用流表向所述控制器上报所述第一LLDP报文,以及在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
  15. 根据权利要求14所述的软件定义网络,其特征在于,
    所述控制器还用于每间隔第一时间周期向所述第一交换机下发所述第二LLDP报文,以及在所述链路流表中携带流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换 机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
  16. 根据权利要求15所述的软件定义网络,其特征在于,
    所述第二交换机,还用于在保存所述链路流表之后,启动计时器,若在在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,则根据所述链路流表将所述第二LLDP报文丢弃,并重置所述计时器。
  17. 根据权利要求16所述的软件定义网络,其特征在于,
    所述第二交换机,还用于在所述计时器的计时时间超出所述流表老化时间之后且仍未接收到所述第二LLDP报文时,确定所述链路流表老化,根据所述流表老化行为删除所述链路流表,并向所述控制器上报所述链路流表已删除的通知;
    所述控制器还用于接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。
  18. 一种控制器,其特征在于,应用于软件定义网络SDN,包括:
    链路检测模块,用于向第一交换机下发基于LLDP协议构造的第一LLDP报文,所述第一LLDP报文指示所述第一交换机向第二交换机转发所述第一LLDP报文以发现所述第一交换机到所述第二交换机的可用链路;
    链路信息管理模块,用于接收所述第二交换机上报的所述第一LLDP报文,根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路,并记录所述可用链路的信息;
    流表分发模块,用于在所述链路信息管理模块记录所述可用链路的信息之后,向所述第二交换机发送链路流表,所述链路流表用于指示所述第二交换机 将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
  19. 根据权利要求18所述的控制器,其特征在于,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
  20. 根据权利要求18或19所述的方法,其特征在于,
    所述流表分发模块,还用于在确定与所述第二交换机建立连接后,向所述第二交换机发送通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器,以及还用于在所述所述链路流表中携带优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表。
  21. 根据权利要求20所述的方法,其特征在于,所述链路检测模块具体用于每间隔第一时间周期触发所述第二LLDP报文;
    则所述流表分发模块还用于在所述链路流表中携带流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
  22. 根据权利要求21所述的方法,其特征在于,所述链路信息管理模块还用于接收所述第二交换机发送的所述链路流表已删除的通知,并根据所述通知确定所述可用链路的状态出现异常。
  23. 一种交换机,其特征在于,应用于软件定义网络SDN,包括:
    链路检测模块,用于接收第一交换机转发的基于LLDP协议构造的第一LLDP报文,所述第一LLDP报文由控制器下发给所述第一交换机并用于发现所述第一交换机到所述第二交换机的可用链路,所述第一LLDP报文中携带所述第一交换机的信息;
    链路信息上报模块,用于向所述控制器上报所述第一LLDP报文,以使得所述控制器根据所述第一LLDP报文的传输路径确定所述第一交换机到第二交换机的可用链路;
    流表处置模块,用于接收并保存所述控制器发送的链路流表,所述链路流表用于指示所述第二交换机将所述第一交换机通过所述可用链路转发的第二LLDP报文进行丢弃,所述第二LLDP报文由所述控制器触发并用于探测所述可用链路的状态。
  24. 根据权利要求6所述的交换机,其特征在于,所述链路流表包括:所述链路的标识信息和丢弃指示,所述链路标识信息包括所述第一交换机的信息和所述第二交换机的信息,所述第一交换机的信息包括所述第一交换机的媒体接入控制MAC地址和端口地址,所述第二交换机的信息包括所述第二交换机的媒体接入控制MAC地址和端口地址。
  25. 根据权利要求23或24所述的交换机,其特征在于,在所述第二交换机接收第一交换机转发的所述第一LLDP报文之前,所述流表处置模块还用于接收所述控制器发送的通用流表,所述通用流表用于指示所述第二交换机将接收到的所有LLDP报文上报给所述控制器;所述流表处置模块具体接收到的所述链路流表中还包括优先级信息,所述优先级信息用于指示所述链路流表的优先级高于所述通用流表;所述流表处置模块还用于在接收到所述第一LLDP报文 后,根据所述通用流表向所述控制器上报所述第一LLDP报文,以及在接收到所述第二LLDP报文后,根据所述优先级信息匹配所述链路流表,根据匹配结果将所述第二LLDP报文丢弃。
  26. 根据权利要求23-25任一项所述的交换机,其特征在于,所述第二LLDP报文由所述控制器每间隔第一时间周期触发;
    则所述链路流表中还包括流表老化时间和流表老化行为,所述流表老化时间大于所述第一时间周期,所述流表老化行为用于指示所述第二交换机在所述链路流表老化时删除所述链路流表且向所述控制器上报所述链路流表已删除的通知。
  27. 根据权利要求26所述的交换机,其特征在于,所述流表处置模块还用于在保存所述链路流表之后,启动计时器,若在所述第二交换机确定在所述计时器的计时时间超出所述流表老化时间之前接收到所述第二LLDP报文,根据所述链路流表将所述第二LLDP报文丢弃,并重置所述计时器。
  28. 根据权利要求27所述的交换机,其特征在于,所述流表处置模块还用于在确定所述计时器的计时时间超出所述流表老化时间之后且仍未接收到所述第二LLDP报文时,确定所述链路流表老化,以及根据所述流表老化行为删除所述链路流表,通知所述链路信息上报模块向所述控制器上报所述链路流表已删除的通知,以通知所述控制器所述可用链路的状态出现异常。
PCT/CN2015/097894 2014-12-31 2015-12-18 一种链路状态检测方法、装置和系统 WO2016107424A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410856633.2A CN105812201A (zh) 2014-12-31 2014-12-31 一种链路状态检测方法、装置和系统
CN201410856633.2 2014-12-31

Publications (1)

Publication Number Publication Date
WO2016107424A1 true WO2016107424A1 (zh) 2016-07-07

Family

ID=56284216

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/097894 WO2016107424A1 (zh) 2014-12-31 2015-12-18 一种链路状态检测方法、装置和系统

Country Status (2)

Country Link
CN (1) CN105812201A (zh)
WO (1) WO2016107424A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111371580A (zh) * 2018-12-26 2020-07-03 浙江宇视科技有限公司 一种数据交换设备上指令的链式漫游方法及装置
CN113411254A (zh) * 2021-05-13 2021-09-17 新华三大数据技术有限公司 一种链路处理方法及装置

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018049545A1 (zh) * 2016-09-13 2018-03-22 深圳前海达闼云端智能科技有限公司 Sdn中数据处理方法、装置、系统、电子设备和计算机程序产品
CN107222412B (zh) * 2017-06-08 2022-04-05 全球能源互联网研究院 一种基于网络拓扑判定的sdn混合模式流表下发方法及装置
CN109150646B (zh) * 2017-06-28 2022-05-06 华为云计算技术有限公司 链路状态检测系统、方法和装置
CN109245957B (zh) * 2017-07-10 2023-05-30 中兴通讯股份有限公司 网络健康度的检测方法及装置
CN107465610A (zh) * 2017-09-04 2017-12-12 长沙曙通信息科技有限公司 一种交换网络链路自动维护实现方法
CN110890994B (zh) 2018-09-11 2022-06-28 华为技术有限公司 一种报文转发路径的确定方法、设备和系统
CN113225210A (zh) * 2021-04-20 2021-08-06 深圳市信锐网科技术有限公司 链路确定方法、装置、控制器及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102821009A (zh) * 2012-08-08 2012-12-12 中兴通讯股份有限公司 基于链路层发现协议监控环形网络的方法和装置
CN103825825A (zh) * 2014-01-18 2014-05-28 浙江大学 一种灵活可扩展且安全的域间拓扑发现方法
CN103858388A (zh) * 2013-10-08 2014-06-11 华为技术有限公司 环路检测方法及装置
US20140215027A1 (en) * 2013-01-25 2014-07-31 Dell Products L.P. System and method for determining the configuration of switches in virtual link trunking environments

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4967664B2 (ja) * 2007-01-10 2012-07-04 日本電気株式会社 ネットワーク、ノード装置及びそれらに用いるlldpフレーム転送方法
US8576727B2 (en) * 2010-04-23 2013-11-05 Broadcom Corporation System and method for unique identifier exchange during auto-negotiation
CN103001887B (zh) * 2012-11-22 2018-01-05 中兴通讯股份有限公司 一种链路保活方法、控制器及交换机

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102821009A (zh) * 2012-08-08 2012-12-12 中兴通讯股份有限公司 基于链路层发现协议监控环形网络的方法和装置
US20140215027A1 (en) * 2013-01-25 2014-07-31 Dell Products L.P. System and method for determining the configuration of switches in virtual link trunking environments
CN103858388A (zh) * 2013-10-08 2014-06-11 华为技术有限公司 环路检测方法及装置
CN103825825A (zh) * 2014-01-18 2014-05-28 浙江大学 一种灵活可扩展且安全的域间拓扑发现方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111371580A (zh) * 2018-12-26 2020-07-03 浙江宇视科技有限公司 一种数据交换设备上指令的链式漫游方法及装置
CN113411254A (zh) * 2021-05-13 2021-09-17 新华三大数据技术有限公司 一种链路处理方法及装置

Also Published As

Publication number Publication date
CN105812201A (zh) 2016-07-27

Similar Documents

Publication Publication Date Title
WO2016107424A1 (zh) 一种链路状态检测方法、装置和系统
US9742648B2 (en) Efficient topology failure detection in SDN networks
US9432255B1 (en) Systems and methods for controlling network device temporarily absent from control panel
WO2020020144A1 (zh) 链路切换方法、链路切换设备、网络通信系统以及计算机可读存储介质
WO2015188579A1 (zh) 分布式虚拟防火墙装置、方法及防火墙控制器
WO2016165463A1 (zh) 一种基于软件定义网络的链路故障上报方法和转发设备
CN106789638B (zh) 一种处理路由的方法及网络设备
WO2015106729A1 (zh) 一种负载均衡方法、装置和系统、计算机存储介质
US10944667B2 (en) Loop check packets
US11144423B2 (en) Dynamic management of monitoring tasks in a cloud environment
US10797986B2 (en) Link discovery method and apparatus
WO2018049545A1 (zh) Sdn中数据处理方法、装置、系统、电子设备和计算机程序产品
US10581669B2 (en) Restoring control-plane connectivity with a network management entity
WO2016074151A1 (zh) 一种sas系统及sas系统的遍历方法、装置
CN107241208B (zh) 一种报文转发方法、第一交换机及相关系统
US8908682B2 (en) Switch discovery protocol for a distributed fabric system
WO2015123853A1 (zh) 一种数据流处理方法及装置
WO2017036165A1 (zh) 链路故障检测方法及装置
CN106230658B (zh) 一种监控网络设备的方法和装置
US10057132B2 (en) Apparatus and method for detecting connection relationships among switches in a communication network
WO2016188081A1 (zh) 扩展端口的处理方法、装置及系统
WO2016082614A1 (zh) 一种组播路由表项处理方法、装置及计算机存储介质
US9407565B1 (en) Detection and repair of permanent pause on flow controlled fabric
WO2014113957A1 (zh) 一种链路管理方法、设备和通信系统
CN114070799B (zh) 优先级暂停帧的处理方法、处理装置及目标网络设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15875102

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15875102

Country of ref document: EP

Kind code of ref document: A1