WO2015127600A1 - Procédé de dérivation et de rapport, commutateur, dispositif de commande et système - Google Patents
Procédé de dérivation et de rapport, commutateur, dispositif de commande et système Download PDFInfo
- Publication number
- WO2015127600A1 WO2015127600A1 PCT/CN2014/072560 CN2014072560W WO2015127600A1 WO 2015127600 A1 WO2015127600 A1 WO 2015127600A1 CN 2014072560 W CN2014072560 W CN 2014072560W WO 2015127600 A1 WO2015127600 A1 WO 2015127600A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- switch
- data packet
- new data
- reported
- initial
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
Definitions
- the present invention relates to the field of communications technologies, and in particular, to a method, a switch, a controller, and a system for offload reporting.
- Openflow is a protocol for implementing Software Defined Network (SDN).
- SDN Software Defined Network
- the basic idea of Openflow network is to realize the separation of data forwarding layer and control layer.
- the OpenFlow switch is responsible for forwarding the data layer, and the controller Controller implements the functions of the control layer.
- the entire Openflow network is divided into data channels and control channels.
- OpenFlow switches are primarily responsible for forwarding data. After receiving the data packet, the OpenFlow switch first matches the flow entry in the previously obtained flow table. The flow entry is used to indicate the processing method of the data packet by the switch. If the upstream entry is matched, the flow entry is forwarded according to the flow entry. If the data packet is not matched with the upstream entry, the data packet may be determined to be a new data packet, and the newly created data packet is sent to the controller, and the controller determines the new data packet according to the newly created data packet and the network topology information. Flow entry.
- the inventors of the present invention have found that in the prior art, when a switch receives a large amount of newly created data packets in a short time, each new data packet cannot be timely sent to the controller in time, resulting in a large number of newly created data packets being blocked. status.
- the embodiment of the present invention provides a method for offloading and reporting, which can report the newly reported data packet to the controller through the other switches directly connected to the initial switch that receives the newly created data packet, thereby speeding up the reporting of the newly created data packet. New packet blocking is prevented from blocking in the initial switch.
- Embodiments of the present invention also provide corresponding switches, controllers, and systems.
- a first aspect of the present invention provides a method for offloading reporting, including:
- the initial switch determines, when the unreported new data packet exceeds the upper limit of the reporting capability threshold, the at least one newly created data packet to be reported, where the newly created data packet is in the initial switch. a data packet that is not matched to the flow entry, where the flow entry is used to indicate a method for processing the newly created data packet by the initial switch;
- the method further includes:
- the method further includes:
- the method further includes:
- the temporary flow entry is deleted.
- the temporary flow entry is located in a last flow table of the initial switch. , and is the lowest priority.
- a second aspect of the present invention provides a method for offloading reporting, including:
- the flow table entry is not matched to the flow table entry, and the initial switch forwards the data packet to the traffic distribution switch for reporting, when the newly reported new data packet exceeds the upper limit of the reporting capability threshold, and the flow entry is used to indicate a method for processing the newly created data packet by the initial switch;
- the determining, according to the newly created data packet, the initial switch includes:
- the method further includes:
- the rule determining information includes a medium access control, a MAC address, an IP address, and a port number. One or several.
- a third aspect of the present invention provides a switch, including:
- a determining unit configured to determine, when the unreported new data packet exceeds the upper limit of the reporting capability threshold, the at least one newly created data packet to be reported, wherein the newly created data packet is not matched to the flow entry in the initial switch Data packet, the flow entry is used to indicate a method for processing the newly created data packet by the initial switch;
- a selecting unit configured to select, according to the information of the other switches that are directly connected to the initial switch, the branching switch that is used for the offloading report, for the at least one newly created data packet to be reported and reported by the determining unit;
- a creating unit configured to establish, on the initial switch, a temporary flow entry corresponding to the at least one newly created data packet to be reported, where an output port of the temporary flow entry is set to a location selected by the selecting unit Port of the branching switch;
- a sending unit configured to send, according to the temporary flow entry created by the creating unit, the at least one new data packet to be reported and reported to the power distribution switch, so that the traffic distribution switch reports the to-be-distributed At least one new data packet is reported to the controller.
- the switch further includes:
- the encapsulating unit is configured to encapsulate the identifier information of the initial switch in the at least one newly created data packet to be sent and sent by the sending unit to the offloading switch, so that the offloading switch reports the identifier to the
- the controller is configured to determine, according to the identifier information, the initial switch, and determine, according to the initial switch, the flow entry corresponding to the at least one newly created data packet to be reported.
- the switch further includes:
- a receiving unit configured to receive information sent by the controller and other switches directly connected to the initial switch.
- the switch further includes:
- a deleting unit configured to delete the temporary flow entry when the determining unit determines that the unreported new data packet is lower than the lower threshold of the reporting capability.
- a fourth aspect of the present invention provides a controller, including:
- a receiving unit configured to receive a new data packet reported by the switch, wherein the newly created data packet is not matched to the flow entry in the initial switch, and the newly created data packet that is not reported by the initial switch exceeds the reporting capability. And the flow table entry is used to instruct the initial switch to process the newly created data packet;
- a first determining unit configured to determine the initial switch according to the newly created data packet received by the receiving unit
- a second determining unit configured to determine, according to the rule determination information in the initial switch and the newly created data packet that is determined by the first determining unit, a flow entry of the newly created data packet.
- the first determining unit includes: a parsing subunit, configured to parse identifier information of a switch encapsulated in the newly created data packet; Determining a subunit, configured to determine the initial switch according to the identifier information of the switch parsed by the parsing subunit.
- the controller further includes:
- a sending unit configured to send information of the other switches directly connected to the initial switch to the initial switch, so that the initial switch determines the branching switch that forwards the newly created data packet.
- the rule determining information includes a media access control in a Mac address, an IP address, and a port number. One or several.
- a fifth aspect of the present invention provides a switch, including: an input device, an output device, a processor, and a memory;
- the processor is configured to perform the following steps:
- the at least one newly created data packet to be reported is determined, where the newly created data packet is a data packet that does not match the flow entry in the initial switch.
- the flow entry is used to instruct the initial switch to process the newly created data packet.
- a sixth aspect of the present invention provides a controller, including: an input device, an output device, a processor, and a memory;
- the input device is configured to receive a newly created data packet that is reported by the switch, where the newly created data packet is not matched to the flow entry in the initial switch, and is not reported by the initial switch.
- the data packet exceeds the upper limit of the reporting capability threshold, the data packet is forwarded to the traffic distribution switch, and the flow entry is used to indicate the processing method of the new data packet by the initial switch;
- the newly created data packet is determined by the initial switch, and the flow entry of the newly created data packet is determined according to the rule determination information in the initial switch and the newly created data packet.
- the rule determining information includes one or more of a media access control MAC address, an IP address, and a port number.
- a seventh aspect of the present invention provides an information interaction system, including: a controller, at least one switch, and at least one host,
- the initial switch determines, when the unreported new data packet exceeds the upper limit of the reporting capability threshold, the at least one newly created data packet to be reported, where the newly created data packet is not matched to the flow entry in the initial switch. a data packet, where the flow entry is used to indicate a method for processing, by the initial switch, the newly created data packet;
- the initial switch selects a branching switch for offloading reporting for at least one new data packet to be reported and reported according to information of other switches directly connected to the initial switch; the initial switch is on the initial switch. And establishing, by the temporary flow entry corresponding to the at least one newly created data packet, the output port of the temporary flow entry is set to a port of the distribution switch;
- the controller receives the newly created data packet that is reported by the switch, wherein the newly created data packet is not matched to the flow entry in the initial switch, and the newly created data packet that is not reported by the initial switch exceeds the reporting capability threshold.
- the upper limit is forwarded to the data packet that is reported by the switch, and the flow entry is used to indicate a method for processing the newly created data packet by the initial switch.
- the controller determines, according to the newly created data packet, the initial switch, and determines a flow entry of the newly created data packet according to rule determination information in the initial switch and the newly created data packet.
- the rule determining information includes one or more of a media access control MAC address, an IP address, and a port number.
- the task of reporting the newly created data packet is forwarded to other switches directly connected to the initial switch, thereby speeding up the reporting speed of the newly created data packet, and avoiding the The new packet is blocked in the initial switch.
- FIG. 1 is a schematic diagram of an embodiment of a method for offloading reporting according to an embodiment of the present invention
- FIG. 2A and FIG. 2B are schematic diagrams of another embodiment of a method for offloading reporting according to an embodiment of the present invention
- FIG. 3 is a schematic diagram of another embodiment of a method for offloading reporting according to an embodiment of the present invention.
- FIG. 4 is a schematic diagram of another embodiment of a method for offloading reporting according to an embodiment of the present invention.
- FIG. 5 is a schematic diagram of an embodiment of a switch according to an embodiment of the present invention.
- FIG. 6 is a schematic diagram of another embodiment of a switch in an embodiment of the present invention.
- FIG. 7 is a schematic diagram of another embodiment of a switch in an embodiment of the present invention.
- FIG. 8 is a schematic diagram of another embodiment of a switch in an embodiment of the present invention.
- FIG. 9 is a schematic diagram of an embodiment of a controller in an embodiment of the present invention.
- FIG. 10 is a schematic diagram of another embodiment of a controller in an embodiment of the present invention.
- FIG. 11 is a schematic diagram of another embodiment of a controller in an embodiment of the present invention.
- FIG. 12 is a schematic diagram of another embodiment of a switch according to an embodiment of the present invention.
- FIG. 13 is a schematic diagram of another embodiment of a controller in an embodiment of the present invention.
- FIG. 14 is a schematic diagram of an embodiment of an information interaction system in an embodiment of the present invention.
- the embodiment of the invention provides a method for offloading reporting, which can be received and received by a newly created data packet.
- the other switches directly connected to the initial switch report the newly reported data packets to the controller, which speeds up the reporting of new packets and prevents new packets from being blocked in the initial switch.
- Embodiments of the present invention also provide corresponding switches, controllers, and systems. The details are described below separately.
- an embodiment of a method for offload reporting includes: a controller, a switch 1, a switch 2, a switch 3, a switch 4, a host A, and a host B, respectively, and a controller 1 and a switch 2 Switch 3 and switch 4 are connected.
- a software-defined network SDN
- Figure 1 only uses these as an example.
- the switch 1 receives 10 new data packets in an instant
- the switch 1 in the embodiment of the present invention is an initial switch
- the 10 new data packets can be from different hosts
- the number of 10 new data packets is 1-10.
- the switch 1 caches the newly created data packets, and then determines whether the unreported new data packet exceeds the upper limit of the reporting capability threshold. If the reporting capability threshold is exceeded, it is determined that the newly created data packet is to be reported, and it is assumed that the switch 1 can report the capability within the capability range. If you create a new packet with the number 1-3, you can determine that the new packet with the number 4-10 is reported.
- the reporting capability threshold can be that the switch creates a new packet buffer by determining its own CPU utilization.
- the number of Buffers is determined by the ratio of the total number of Buffers, etc., and may be determined by other means, which is not limited by the present invention.
- the new packet contains the source host information for sending the new packet and the destination host information to be reached.
- the controller may first send the information of the directly connected switches to the switch 1, the switch 2, the switch 3, and the switch 4, but not necessarily send the information of all the directly connected switches, and the information of the directly connected switch that is sent may be controlled.
- the controller determines that the controller can determine whether the switches directly connected to each switch are idle in a variety of ways, so as to reasonably arrange the number and priority of the delivered switches.
- the controller sends the information of the directly connected switch to the switch, it can be implemented by an extended openflow message.
- the number of switches directly connected to the switch, the identifier of the switch, and the port connected to the switch can be carried in the openflow message. number.
- the information of the directly connected switch sent to the switch 1 is the switch 2
- the information of the directly connected switch sent to the switch 2 is the switch 1 and the switch 3
- the information of the directly connected switch sent to the switch 3 is the switch. 2.
- the switch After the switch 1 determines that the 7 new data packets are to be reported, the switch can be determined to be the switch 2 according to the information of the switch directly connected to the switch. Moreover, the switch 1 also adds new data for each report to be reported.
- the packet is set up as a temporary flow entry, and the output port of the temporary flow entry is set to the port of the distribution switch, that is, the output port of the temporary flow entry corresponding to the newly created data packet to be reported and reported is set as a switch. 2 ports.
- the switch 1 can transfer the 7 newly created data packets numbered 4 to 10 to the switch 2 for reporting, and when sending 7 new data packets numbered 4-10 to the switch 2, each new data packet is to be newly created.
- the identifier of the switch 1 is encapsulated in the data packet.
- the identifier information may be the identifier of the switch, or the identifier of the switch and the port number of the switch.
- switch 2 After switch 2 receives the 7 newly created data packets numbered 4-10, it is assumed that switch 2 can only report four new data packets numbered 4-7 within the capability range. Then switch 2 is based on the switch directly connected to switch 2. The information is determined to transfer the remaining new data packets that cannot be reported to the switch 3, that is, the switch 2 transfers the three newly created data packets numbered 8-10 to the switch 3, and assumes that the switch 3 can report the capability within the capability range. If a new packet is created, switch 3 will not transfer the reported information to other switches. When the switch 2 sends three new data packets numbered 8-10 to the switch 3, the switch 2 encapsulates the identification information of the switch 2 in the new flow.
- the 10 newly created data packets are reported by the switch 1, the switch 2, and the switch 3, respectively, and the switch 1 reports three new data packets numbered 1-3, and the switch 2 reports four new data packets numbered 4-7.
- Switch 3 reports three new data packets numbered 8-10.
- the switch can report the new data packet to the controller through the openflow message 7.
- the format of the three newly created data packets numbered 1-3 reported by switch 1 can be tagl(portl)+net.
- the format of the four newly created data packets of the number 4-7 reported by the switch 2 may be tag2(portl)tagl(portl)+ payload, and the format of the three newly created data packets of the number 8-10 reported by the switch 3 may be Tag3(portl)tag2(portl)tagl(portl)+ payload.
- the tag is the identifier of the switch, and port is the port number of the switch, that is, the port number of the switch receiving the newly created data packet.
- the controller can parse the number according to the format of the report information.
- the new data packet of 1-3 originates from switch 1, and the new data packet of number 4-7 goes through switch 2 and switch 1.
- the initial data source is from switch 1, and the new data packet numbered 8-10 goes through switch 3, switch 2 and Switch 1, originally derived from switch 1.
- the controller can determine the flow entries of the 10 newly created data packets according to the network topology information and the information of the source host and the destination host carried in each report information, and take the newly created data packet 1 as an example.
- the source host of packet 1 is host A
- the destination host is host B.
- the controller can determine that the forwarding path of the newly created packet 1 is switch 1-switch 4 host B.
- the controller determines, according to the forwarding path, the flow entry sent to the switch 1 and the flow entry sent to the switch 4, and the flow entry sent to the switch 1 is a new data packet 1: the switch 1_switch 4 is sent to the switch 4
- the flow entry is New Packet 1: Switch 4 - Host B.
- the switch 1 and the switch 4 in the foregoing flow entry may be specifically configured to send a newly created data packet to the port of the switch 1 to the switch 4, and the switch 4 to the host B may specifically send the newly created data packet to the switch 4 to the host B. Port.
- switch 1 After the switch 1 receives the flow entry entry new packet 1: switch 1_switch 4, it will send the new packet 1 to the switch 4, and the switch 4 receives the flow entry for the new packet 1: Switch 4 - Host B, and the new packet 1 sent by the switch 1, the new packet 1 is sent to the master.
- switch 1 receives the packet with the number 11 and the information contained in the new packet with the number 1 is the same, The packet numbered 11 can be matched with the flow entry created by the new packet numbered 1.
- the switch 1 determines that the unreported new data packet is lower than the lower threshold of the reporting capability, the temporary flow entry is deleted. For example, when the upper limit of the reporting capability is 80% of the CPU's reporting capability, if the unreported new packet exceeds 80% of the CPU's reporting capability, the above-mentioned split-flow reporting process is performed. 50% of the CPU's reporting capability, then create new data When the packet is reduced to less than 50% of the CPU's reporting capability, Switch 1 deletes the previously created temporary flow entry, and does not perform the above-mentioned split report, but completes the work of all newly created packets by Switch 1.
- the initial switch establishes a temporary flow entry.
- the specific format of the flow entry is as shown in FIG. 2B.
- the matching domain and the action action include but are not limited to those described in FIG. 2B:
- the automatically generated temporary flow entry is located in the last flow table of the initial switch.
- the In_port matching domain in the matching domain can be a specific port of the node, or a wildcard (*) can be used to indicate a newly created packet that fails to match from a port or all ports of the switch.
- match fields in the matching domain indicate other matching fields in the flow table, which can also be specific values or wildcards (*).
- the priority of the flow entry is 0, which indicates the lowest priority, that is, the last match to the flow entry. That is, only new traffic that cannot match other flow entries will match this flow entry and be sent to other switches for offloading.
- the instruction corresponding to the flow entry, Instr is write actions , indicating that it is a write action.
- the action action corresponding to the flow entry includes adding a tag 1&8 header (push tag) to the packet of the newly created flow, modifying the tag value (including the switch identifier and the port number in the in_port), and outputting to a certain port (output Port ), This port is the port number of the initial switch and the directly connected switch.
- the port that is added to the switch directly connected to the newly added flow entry action is not the focus of this solution. There are many methods, such as the busyness of each newly created inflow port, and the priority according to the neighbor node.
- the data packet transferred to the directly connected switch carries the identification information of the switch, and mainly carries the ingress port information of the newly created data packet in the switch. This is implemented by the push tag and write tag value actions in the flow entry. The specific format of these two actions is shown in the Openflow protocol.
- Such tags can be implemented by some currently known tunnel headers, including but not limited to the following tag headers, such as MPLS Tag, GRE Tag, VLAN Tag, Vxlan Tag, and the like.
- tag headers such as MPLS Tag, GRE Tag, VLAN Tag, Vxlan Tag, and the like.
- these known tunnel heads are preferably capable of supporting multiple levels of nesting.
- the task of reporting the newly created data packet to the controller is transferred to the other switch directly connected to the initial switch to assist, thereby speeding up the reporting of the newly created data packet. Speed, avoiding new packet blocking in the initial switch.
- another embodiment of the method for offload reporting provided by the embodiment of the present invention includes:
- the initial switch determines, when the unreported new data packet exceeds the upper limit of the reporting capability threshold, the at least one newly created data packet to be reported.
- the new data packet is a data packet that is not matched to the flow entry in the initial switch, and the flow entry is used to indicate a method for processing the newly created data packet by the initial switch.
- the switch After receiving the data packet, the switch first queries the flow entry stored on the switch. If the flow entry is queried, the switch processes the data packet according to the flow entry. If no flow entry is queried, the switch determines The data packet is a newly created data packet, and the flow table entry corresponding to the newly created data packet needs to be requested from the controller.
- the forwarding rule of the data packet stored on the switch 1 may be the switch 1_switch 2, and the forwarding rule of the data packet stored on the switch 2 may be the switch 2 - the switch 3, and the forwarding rule stored on the switch 3 may be the switch 3_host D .
- the offloading switch that is used for the offloading reporting for the at least one newly created data packet to be reported and reported.
- a switch can have several directly connected switches. When selecting a split switch, you can select one or several switches with the lightest load as the split switch.
- the temporary flow entry corresponding to the at least one newly created data packet to be reported is set up on the initial switch, and an output port of the temporary flow entry is set to a port of the distribution switch.
- the temporary flow entry is used to indicate which switch the new packet is offloaded to. Reporting, in this way, the newly created data packet is offloaded to the distribution switch according to the temporary flow entry, and the split switch is not required to be determined for each newly created data packet.
- the task of reporting the newly created data packet to the controller is transferred to the other switch directly connected to the initial switch to assist, thereby speeding up the reporting speed of the newly created data packet.
- New packet blocking is prevented from blocking in the initial switch.
- the method may further include:
- the foregoing is further configured according to the first switch directly connected to the initial switch. And the information of the switch, before the at least one newly created data packet to be reported is selected, and the method further includes:
- the method may further include:
- the temporary flow entry is deleted.
- the temporary flow entry is located in the initial switch. In the last flow table, and the lowest priority.
- FIG. 4 from the perspective of the controller, another embodiment of the method for offload reporting provided by the embodiment of the present invention includes:
- the newly created data packet is data that is not matched to the flow entry in the initial switch, and is forwarded to the switch by the initial switch when the newly-created data packet that is not reported exceeds the upper limit of the reporting capability threshold.
- the rule determination information here is some information used in the newly created data packet to determine the flow entry, which may be one or more of a Mac address, an IP address, a port number, etc., for example: according to the media in the newly created data packet.
- the Media Access Control (Mac) address and IP address can be used to determine the flow table entry for which the new IP packet with the Mac address and IP address is processed.
- the controller can receive the newly created data packet cached on the initial switch from multiple switchover switches, so that the controller can determine the flow entry of each newly created data packet according to the newly created data packet, thereby avoiding new construction.
- the packet is blocked in the initial switch.
- the determining, according to the newly created data packet, the initial switch may include :
- the method may further include:
- an embodiment of the switch 30 provided by the embodiment of the present invention includes:
- the determining unit 301 is configured to determine, when the unreported new data packet exceeds the upper limit of the reporting capability threshold, the at least one newly created data packet to be reported, wherein the newly created data packet is not matched to the flow table in the initial switch. a data packet, where the flow entry is used to indicate a method for processing, by the initial switch, the newly created data packet;
- the selecting unit 302 is configured to select, according to the information of the other switches that are directly connected to the initial switch, the branching switch that is used for the offloading reporting, for the at least one newly created data packet that is to be reported and reported by the determining unit 301;
- a creating unit 303 configured to establish, on the initial switch, a temporary flow entry corresponding to the at least one newly created data packet to be reported, where an output port of the temporary flow entry is set to be selected by the selecting unit 302 The port of the offloading switch;
- the sending unit 304 is configured to send, according to the temporary flow entry created by the creating unit 303, the at least one new data packet to be reported and reported to the power distribution switch, so that the traffic distribution switch divides the At least one newly created data packet that is reported is reported to the controller.
- the determining unit 301 determines, when the unreported new data packet exceeds the upper limit of the reporting capability threshold, that at least one newly created data packet is to be reported, wherein the newly created data packet is not matched in the initial switch. a data packet to the flow entry, where the flow entry is used to indicate a method for processing the newly created data packet by the initial switch, and the selecting unit 302 is configured according to information of other switches directly connected to the initial switch.
- the at least one newly created data packet to be separated and determined by the determining unit 301 is selected to be used for the offloading of the offloading switch, and the creating unit 303 establishes, on the initial switch, the at least one new data packet to be reported and reported.
- the output port of the temporary flow entry is set to the port of the distribution switch selected by the selection unit 302, and the sending unit 304 is configured according to the temporary flow entry created by the creating unit 303.
- the offloading switch sends the at least one new data packet to be reported and reported, so that the traffic distribution switch will Reported the separation of at least one new data packet is reported to the controller.
- the task of reporting the newly created data packet is forwarded to other switches directly connected thereto, thereby speeding up the reporting speed of the newly created data packet and avoiding new data creation.
- the packet is blocked in the initial switch.
- the switch further includes:
- the encapsulating unit 305 is configured to encapsulate the identifier information of the initial switch in the at least one newly created data packet to be sent and reported by the sending unit 304 to the offloading switch, so that the offloading switch will identify the identifier
- the offloading is reported to the controller, and the controller is configured to determine the initial switch according to the identifier information, and determine, according to the initial switch, the flow entry corresponding to the at least one newly created data packet to be reported.
- the switch further includes: in another embodiment of the switch provided by the embodiment of the present invention, the switch further includes:
- the receiving unit 306 is configured to receive information about other switches directly connected to the initial switch that are sent by the controller.
- the switch further includes: in another embodiment of the switch provided by the embodiment of the present invention, the switch further includes:
- the deleting unit 307 is configured to delete the temporary flow entry when the determining unit 301 determines that the unreported new data packet is lower than the lower reporting capability threshold.
- an embodiment of a controller provided by an embodiment of the present invention includes:
- the receiving unit 401 is configured to receive a newly created data packet that is reported by the switch, wherein the newly created data packet is not matched to the flow entry in the initial switch, and the newly created data packet that is not reported by the initial switch exceeds the report And the flow table entry is used to indicate a method for processing the newly created data packet by the initial switch, where the upper limit of the capability threshold is forwarded to the data packet that is reported by the switch.
- the first determining unit 402 is configured to determine, according to the newly created data packet received by the receiving unit 401, the initial switch;
- the second determining unit 403 is configured to determine, according to the rule determination information in the initial switch and the newly created data packet determined by the first determining unit 402, a flow entry of the newly created data packet.
- the rule determination information here is some information used in the newly created data packet to determine the flow entry, which may be one or more of a Mac address, an IP address, a port number, etc., for example: according to the media in the newly created data packet.
- the Media Access Control (Mac) address and IP address can be used to determine the flow table entry for which the new IP packet with the Mac address and IP address is processed.
- the receiving unit 401 receives the newly created data packet that is reported by the branching switch, where the newly created data packet is a new data packet that is not matched to the flow entry in the initial switch and is not reported by the initial switch.
- the data packet is forwarded to the traffic distribution switch, and the flow entry is used to indicate the processing method of the new data packet by the initial switch, and the first determining unit 402 is configured according to the The new data packet received by the receiving unit 401 determines the initial switch, and the second determining unit 403 determines, according to the rule information determined by the initial switch and the newly created data packet determined by the first determining unit 402. A flow entry for a newly created packet.
- the controller may receive the newly created data packet cached on the initial switch from the multiple switch switches, so that the controller can determine the flow entry of each newly created data packet according to the received new data packet, thereby avoiding The new packet is blocked in the initial switch.
- the first determining unit 402 includes:
- the parsing subunit 4021 is configured to parse the identifier information of the switch encapsulated in the newly created data packet, and the determining subunit 4022 is configured to determine the initial switch according to the identifier information of the switch parsed by the parsing subunit 4021. .
- the controller 40 further includes:
- the sending unit 404 is configured to send, to the initial switch, information about other switches directly connected to the initial switch, so that the initial switch determines the branching switch that forwards the newly created data packet.
- the sending unit 404 is further configured to send the flow entry to the switch included in the flow entry determined by the second determining unit 403.
- FIG. 12 is a schematic structural diagram of a switch 30 according to an embodiment of the present invention.
- Switch 30 can include input device 310, output device 320, processor 330, and memory 340.
- Memory 340 can include read only memory and random access memory and provides instructions and data to processor 330. A portion of memory 340 may also include non-volatile random access memory (NVRAM).
- NVRAM non-volatile random access memory
- the memory 340 stores the following elements, executable modules or data structures, or their children. Set, or their extension set:
- Operation instructions Includes various operation instructions for implementing various operations.
- Operating System Includes a variety of system programs for implementing basic services and handling hardware-based tasks.
- the processor 330 performs the following operations by calling an operation instruction stored in the memory 340 (the operation instruction can be stored in the operating system):
- the at least one newly created data packet to be reported is determined, where the newly created data packet is a data packet that does not match the flow entry in the initial switch.
- the flow entry is used to instruct the initial switch to process the newly created data packet.
- the temporary flow entry corresponding to the at least one newly created data packet to be reported, the output port of the temporary flow entry being set to a port of the distribution switch; according to the temporary flow The entry, the output device 320 sends the at least one newly created data packet to be reported and sent to the distribution switch.
- the task of reporting the newly created data packet is forwarded to other switches directly connected to the initial switch, thereby speeding up the newly created data packet.
- the reporting speed prevents new packets from being blocked in the initial switch.
- the processor 330 controls the operation of the switch 30, which may also be referred to as a CPU (Central Processing Unit).
- Memory 340 can include read only memory and random access memory and provides instructions and data to processor 330. A portion of memory 340 may also include non-volatile random access memory (NVRAM).
- NVRAM non-volatile random access memory
- the components of the switch 30 are coupled together by a bus system 350.
- the bus system 350 may include a power bus, a control bus, and a status signal bus in addition to the data bus. However, for clarity of description, various buses are labeled as bus system 350 in the figure.
- Processor 330 may be an integrated circuit chip with signal processing capabilities.
- the instruction in the form of the implementation is completed.
- the processor 330 described above may be a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware. Component.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA off-the-shelf programmable gate array
- the methods, steps, and logical block diagrams disclosed in the embodiments of the present invention may be implemented or executed.
- the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present invention may be directly implemented by the hardware decoding processor, or may be performed by a combination of hardware and software modules in the decoding processor.
- the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
- the storage medium is located in the memory 340, and the processor 330 reads the information in the memory 340 and performs the steps of the above method in combination with the hardware thereof.
- the processor 330 is further configured to encapsulate the identifier information of the initial switch in the at least one newly created data packet to be sent and sent to the offloading switch, so that the traffic distribution switch
- the identifier is reported to the controller, and the controller is configured to determine the initial switch according to the identifier information, and determine, according to the initial switch, the flow entry corresponding to the at least one newly created data packet to be reported. .
- the input device 310 is configured to receive information sent by the controller and other switches directly connected to the initial switch.
- the processor 330 is further configured to: when the unreported new data packet is lower than the lower threshold of the reporting capability, delete the temporary flow entry.
- the temporary flow entry is located in the last flow table of the initial switch and is the lowest priority.
- FIG. 13 is a schematic structural diagram of a controller 40 according to an embodiment of the present invention.
- Controller 40 can include an input device
- Memory 440 can include read only memory and random access memory and provides instructions and data to processor 430. A portion of the memory 440 may also include a non-volatile random access memory (NVRAM).
- NVRAM non-volatile random access memory
- Memory 440 stores the following elements, executable modules or data structures, or a subset thereof, or their extended set:
- Operation instructions Includes various operation instructions for implementing various operations.
- Operating System Includes a variety of system programs for implementing basic services and handling hardware-based tasks.
- the processor 430 performs the following operations by calling an operation instruction stored in the memory 440 (the operation instruction can be stored in the operating system):
- the data packet is forwarded to the offloading switch for reporting, and the flow entry is used to indicate a method for processing the newly created data packet by the initial switch.
- the rule determination information here is some information used in the newly created data packet to determine the flow entry, which may be one or more of a Mac address, an IP address, a port number, etc., for example: according to the media in the newly created data packet.
- the Media Access Control (Mac) address and IP address can be used to determine the flow table entry for which the new IP packet with the Mac address and IP address is processed.
- the controller can receive the newly created data packet cached on the initial switch from multiple switchover switches, so that the controller can determine the flow entry of each newly created data packet according to the newly created data packet, thereby avoiding new construction.
- the packet is blocked in the initial switch.
- the processor 430 controls the operation of the controller 40, which may also be referred to as a CPU (Central Processing Unit).
- Memory 440 can include read only memory and random access memory and provides instructions and data to processor 430. A portion of memory 440 may also include non-volatile random access memory (NVRAM).
- NVRAM non-volatile random access memory
- the various components of the controller 40 are coupled together by a bus system 450.
- the bus system 450 may include a power bus, a control bus, a status signal bus, and the like in addition to the data bus. But for the sake of clarity, in the picture
- the buses are all labeled as bus system 450.
- Processor 430 may be an integrated circuit chip with signal processing capabilities.
- the instruction in the form of implementation is completed.
- the processor 430 described above may be a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), an off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware. Component.
- the methods, steps, and logic blocks disclosed in the embodiments of the present invention may be implemented or carried out.
- the general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present invention may be directly implemented as a hardware decoding processor, or may be performed by a combination of hardware and software modules in a decoding processor.
- the software modules can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
- the storage medium is located in the memory 440.
- the processor 430 reads the information in the memory 440 and performs the steps of the above method in combination with the hardware.
- the processor 430 may specifically analyze the identifier information of the switch encapsulated in the newly created data packet, and determine the initial switch according to the identifier information of the switch.
- the output device 420 is configured to send, to the initial switch, information about other switches directly connected to the initial switch, so that the initial switch determines the branching switch that forwards the newly created data packet.
- an embodiment of an information interaction system provided by an embodiment of the present invention includes:
- the switch 30A, the switch 30B, the switch 30C, the switch 30D, the controller 40, and the host 50A and the host 50B are merely exemplified in the embodiment of the present invention. In fact, there may be more switches and more hosts and hosts, as shown in FIG. - Draw.
- the controller 40 transmits information of the switch directly connected to the switch 30 to the switch 30A, the switch 30B, the switch 30C, and the switch 30D, respectively;
- the switch 30A receives the newly created data packet from the host 50A, and only the host 50A is shown in the figure. Actually, the switch 30 A can also receive the newly created data packet sent by other hosts;
- the switch 30A determines that at least one newly created data packet to be reported is to be sent out when the newly reported new data packet exceeds the upper limit of the reporting capability threshold, where the newly created data packet is not matched to the flow table in the initial switch. a data packet, where the flow entry is used to indicate a method for processing, by the initial switch, the newly created data packet;
- the switch 30A selects a branching switch for offloading reporting for at least one new data packet to be reported and reported according to information of other switches directly connected to the initial switch;
- the switch 30A establishes, on the initial switch, the temporary flow entry corresponding to the at least one new data packet to be reported, and the output port of the temporary flow entry is set to the port of the split switch;
- the switch 30A sends the at least one new data packet to be reported and reported to the distribution switch according to the temporary flow entry.
- the controller 40 receives the newly created data packet reported by the switch, wherein the newly created data packet is not matched to the flow entry in the initial switch, and the newly created data packet that is not reported by the initial switch exceeds the reporting capability. And the flow table entry is used to instruct the initial switch to process the newly created data packet when the upper limit is reached;
- the controller 40 determines, according to the newly created data packet, the initial switch, and determines a flow entry of the newly created data packet according to the rule determination information in the initial switch and the newly created data packet.
- the forwarding path described by the flow entry may be the switch 30A-switch 30D-host 50B; the controller 40 sends the flow entry of the newly created data packet to the switch 30A and the switch 30D; The flow entry forwards the new data packet to switch 30D, and switch 30D forwards the new data packet to host B.
- the rule determination information here is some information used in the newly created data packet to determine the flow entry, which may be one or more of a Mac address, an IP address, a port number, etc., for example: according to the media in the newly created data packet.
- the Media Access Control (Mac) address and IP address can be used to determine the flow table entry for which the new IP packet with the Mac address and IP address is processed.
- the program may be stored in a computer readable storage medium, and the storage medium may include: ROM, RAM, disk or CD, etc.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
La présente invention concerne un procédé de dérivation et de rapport qui comprend les opérations suivantes : lorsque de nouveaux paquets de données non rapportés dépassent un seuil supérieur de capacité de rapport, la détermination, par un commutateur initial, d'au moins un nouveau paquet de données à dériver et à rapporter; sur la base des informations d'autres commutateurs directement connectés au commutateur initial, la sélection, pour le ou les nouveaux paquets de données à dériver et à rapporter, d'un commutateur de dérivation utilisé pour dériver et rapporter; l'envoi du ou des nouveaux paquets de données à dériver et à rapporter au commutateur de dérivation de telle sorte que le commutateur de dérivation rapporte au dispositif de commande le ou les nouveaux paquets de données à dériver et à rapporter. Les modes de réalisation de la présente invention concernent également un dispositif et un système correspondants. Selon la solution technique de la présente invention, la tâche de rapport de nouveaux paquets de données est passée à d'autres commutateurs directement connectés au commutateur initial si le commutateur initial reçoit un assez grand nombre de nouveaux paquets de données, par conséquent, la vitesse de rapport de nouveaux paquets de données est augmentée et il est possible d'empêcher le blocage des paquets de données dans le commutateur initial.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2014/072560 WO2015127600A1 (fr) | 2014-02-26 | 2014-02-26 | Procédé de dérivation et de rapport, commutateur, dispositif de commande et système |
| CN201480000182.0A CN105122740B (zh) | 2014-02-26 | 2014-02-26 | 一种分流上报的方法、交换机、控制器及系统 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2014/072560 WO2015127600A1 (fr) | 2014-02-26 | 2014-02-26 | Procédé de dérivation et de rapport, commutateur, dispositif de commande et système |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2015127600A1 true WO2015127600A1 (fr) | 2015-09-03 |
Family
ID=54008122
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2014/072560 Ceased WO2015127600A1 (fr) | 2014-02-26 | 2014-02-26 | Procédé de dérivation et de rapport, commutateur, dispositif de commande et système |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN105122740B (fr) |
| WO (1) | WO2015127600A1 (fr) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108111436A (zh) * | 2017-11-30 | 2018-06-01 | 浙江宇视科技有限公司 | 一种网络设备缓存调度方法及系统 |
| CN112039773A (zh) * | 2020-09-23 | 2020-12-04 | 迈普通信技术股份有限公司 | 分流方法、装置、系统、网络设备及计算机可读存储介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101106528A (zh) * | 2007-07-31 | 2008-01-16 | 杭州华三通信技术有限公司 | 基于安全设备的报文转发系统和方法以及安全设备 |
| CN102685006A (zh) * | 2012-05-03 | 2012-09-19 | 中兴通讯股份有限公司 | 一种转发数据报文的方法及装置 |
| CN103179046A (zh) * | 2013-04-15 | 2013-06-26 | 昆山天元昌电子有限公司 | 基于openflow的数据中心流量控制方法及系统 |
| WO2013099080A1 (fr) * | 2011-12-27 | 2013-07-04 | Nec Corporation | Système de communication, contrôleur, procédé de communication et programme |
| CN103379039A (zh) * | 2012-04-23 | 2013-10-30 | 华为技术有限公司 | 一种用于流统计的方法、装置及系统 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002252640A (ja) * | 2001-02-23 | 2002-09-06 | Fujitsu Ltd | ネットワーク中継装置及び方法並びにシステム |
| US6704372B2 (en) * | 2001-09-18 | 2004-03-09 | Broadlogic Network Technologies Inc. | Digital implementation of multi-channel demodulators |
| US20070104096A1 (en) * | 2005-05-25 | 2007-05-10 | Lga Partnership | Next generation network for providing diverse data types |
| US9219686B2 (en) * | 2006-03-31 | 2015-12-22 | Alcatel Lucent | Network load balancing and overload control |
| CN101106518B (zh) * | 2006-07-10 | 2011-10-26 | 中兴通讯股份有限公司 | 为中央处理器提供负载保护的拒绝服务方法 |
| EP2615782A4 (fr) * | 2010-09-09 | 2016-11-30 | Nec Corp | Système informatique et procédé de communication dans le système informatique |
| CN103414637B (zh) * | 2013-07-29 | 2016-03-30 | 北京华为数字技术有限公司 | 一种流量转发的方法及相关装置 |
-
2014
- 2014-02-26 WO PCT/CN2014/072560 patent/WO2015127600A1/fr not_active Ceased
- 2014-02-26 CN CN201480000182.0A patent/CN105122740B/zh active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101106528A (zh) * | 2007-07-31 | 2008-01-16 | 杭州华三通信技术有限公司 | 基于安全设备的报文转发系统和方法以及安全设备 |
| WO2013099080A1 (fr) * | 2011-12-27 | 2013-07-04 | Nec Corporation | Système de communication, contrôleur, procédé de communication et programme |
| CN103379039A (zh) * | 2012-04-23 | 2013-10-30 | 华为技术有限公司 | 一种用于流统计的方法、装置及系统 |
| CN102685006A (zh) * | 2012-05-03 | 2012-09-19 | 中兴通讯股份有限公司 | 一种转发数据报文的方法及装置 |
| CN103179046A (zh) * | 2013-04-15 | 2013-06-26 | 昆山天元昌电子有限公司 | 基于openflow的数据中心流量控制方法及系统 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108111436A (zh) * | 2017-11-30 | 2018-06-01 | 浙江宇视科技有限公司 | 一种网络设备缓存调度方法及系统 |
| CN112039773A (zh) * | 2020-09-23 | 2020-12-04 | 迈普通信技术股份有限公司 | 分流方法、装置、系统、网络设备及计算机可读存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN105122740A (zh) | 2015-12-02 |
| CN105122740B (zh) | 2018-07-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11646967B2 (en) | Packet control method and network apparatus | |
| US10911355B2 (en) | Multi-site telemetry tracking for fabric traffic using in-band telemetry | |
| CN111385206B (zh) | 报文转发的方法、网络系统、相关设备及计算机存储介质 | |
| CN108259333B (zh) | 一种bum流量控制方法、相关装置以及系统 | |
| CN110022264B (zh) | 控制网络拥塞的方法、接入设备和计算机可读存储介质 | |
| CN104618194B (zh) | 软件定义网络报文监控方法和sdn控制器、交换设备 | |
| CN106713137B (zh) | 基于分段路由和sdn技术的vpn方法、装置及系统 | |
| US11882021B2 (en) | Packet forwarding method, apparatus and system, network device and storage medium | |
| CN105634942B (zh) | 转发报文的方法和交换机 | |
| KR102025680B1 (ko) | Sdn 기반의 arp 구현 방법 및 장치 | |
| CN104982013A (zh) | 一种业务路由的方法、设备及系统 | |
| WO2018149338A1 (fr) | Procédé de commande de duplication de flux à distance basé sdn, procédé de mise en œuvre, et dispositif associé | |
| US10178017B2 (en) | Method and control node for handling data packets | |
| CN111801911B (zh) | 业务功能链拥塞跟踪 | |
| WO2018090210A1 (fr) | Procédé de transmission de paquet de service, et appareil de nœud | |
| WO2022057810A1 (fr) | Procédé de transfert de paquet de services, procédé d'envoi de politique sr, dispositif et système | |
| US11489768B2 (en) | Method for creating inter-domain bidirectional tunnel, communication method and device, and storage medium | |
| CN107294856B (zh) | 确定拓扑变化的方法、设备及系统 | |
| CN106209554B (zh) | 跨虚拟可扩展局域网的报文转发方法和设备 | |
| WO2023078031A1 (fr) | Procédé et appareil d'envoi de messages | |
| WO2015127600A1 (fr) | Procédé de dérivation et de rapport, commutateur, dispositif de commande et système | |
| US20190036827A1 (en) | Traffic control method and device in software defined network | |
| WO2019179161A1 (fr) | Procédé, dispositif et système de traitement de trafic de données | |
| CN105100013B (zh) | 一种感知网络安全设备的方法、网络安全设备及控制器 | |
| WO2024140374A1 (fr) | Procédé de traitement d'informations, dispositif et support de stockage |
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: 14883582 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: 14883582 Country of ref document: EP Kind code of ref document: A1 |