CN108810183B - Method and device for processing conflicting MAC addresses and machine-readable storage medium - Google Patents

Method and device for processing conflicting MAC addresses and machine-readable storage medium Download PDF

Info

Publication number
CN108810183B
CN108810183B CN201810424372.5A CN201810424372A CN108810183B CN 108810183 B CN108810183 B CN 108810183B CN 201810424372 A CN201810424372 A CN 201810424372A CN 108810183 B CN108810183 B CN 108810183B
Authority
CN
China
Prior art keywords
host
mac address
message
address
arp
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.)
Active
Application number
CN201810424372.5A
Other languages
Chinese (zh)
Other versions
CN108810183A (en
Inventor
赵海峰
李光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201810424372.5A priority Critical patent/CN108810183B/en
Publication of CN108810183A publication Critical patent/CN108810183A/en
Application granted granted Critical
Publication of CN108810183B publication Critical patent/CN108810183B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5046Resolving address allocation conflicts; Testing of addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

The disclosure provides a method, a device and a machine readable storage medium for processing a conflicted MAC address, wherein the method comprises the following steps: sending a monitoring flow table item to each switch, receiving an OpenFlow message carrying a copied ARP protocol message, determining that an MAC address of a sending end and an MAC address of a found host table item are conflict MAC addresses according to a sending end MAC address host table item, taking hosts corresponding to the conflict MAC addresses as a first host and a second host, sending a first pipe supporting flow table item for supporting the ARP protocol message from the first host to a first switch connected with the first host, and sending a second pipe supporting flow table item for supporting the ARP protocol message from the second host to a second switch connected with the second host. By the mode, the conflict MAC address can be found in time, the ARP protocol message corresponding to the conflict MAC address is managed, and the communication reliability is improved.

Description

Method and device for processing conflicting MAC addresses and machine-readable storage medium
Technical Field
The present disclosure relates to the field of internet technologies, and in particular, to a method and an apparatus for processing a conflicting MAC address, and a machine-readable storage medium.
Background
With the development of large data concentration and the application of virtualization technology, the scale of the data center increases day by day, which not only has greater requirements on the regional scope of the two-layer network, but also presents new challenges on the level of demand and management.
As the Area size of the data center and the demand for service processing increase, more and more applications of cluster processing are required, and servers in a cluster need to be under a two-layer VLAN (Virtual Local Area Network) or VXLAN (Virtual Extensible LAN). Meanwhile, due to the application of virtualization technology, the migration problem of the virtual machine also becomes a problem which needs to be considered on the basis of convenience and flexibility of service deployment. In order to ensure the continuity of the virtual machine bearer service, the IP addresses before and after the virtual machine migration are not changed, so the migration range of the virtual machine needs to be under the same two-layer VLAN. Conversely, how large the two-tier network is, how far the virtual machine can migrate. Therefore, in order to solve the problem of network expansion inside the data center, a large two-layer network is developed to realize large-scale migration of the virtual machine inside the data center through large-scale two-layer network and VLAN extension.
However, in a large two-layer network used in the data center, because the number of virtual machines is huge, and MAC (Media Access Control, physical address) addresses on the virtual machines are generated by software of a virtual machine management platform, under the condition that different multiple virtualization platforms are used, MAC address conflicts inevitably occur in the network, and the MAC address conflicts may affect normal operation of communication.
Disclosure of Invention
In view of this, the present disclosure provides a method, an apparatus, and a network device for processing a conflicting MAC address, so as to improve reliability of communication.
In order to achieve the above purpose, the technical scheme adopted by the disclosure is as follows:
in a first aspect, the present disclosure provides a method for processing a conflicting MAC address, where the method is applied to an SDN controller, and the method includes: sending a monitoring flow table entry to each switch, wherein the monitoring flow table entry is used for indicating that the received ARP protocol message is copied, carrying the copied ARP protocol message in an OpenFlow message and sending the OpenFlow message to the SDN controller;
receiving an OpenFlow message carrying a duplicated ARP protocol message, performing searching according to a sending end MAC address, determining that the IP address of a searched host table entry is different from the sending end IP address of the duplicated ARP protocol message, and determining that the sending end MAC address of the duplicated ARP protocol message and the MAC address of the searched host table entry are conflict MAC addresses;
sending a first pipe-supporting flow table item to a first switch connected with the first host by taking the host indicated by the IP address of the sending end copying the ARP protocol message as the first host, wherein the first pipe-supporting flow table item is used for indicating that the ARP protocol message with the IP address of the sending end being the IP address of the first host is carried in an OpenFlow message and sent to the SDN controller so as to host all the ARP protocol messages from the first host;
sending a second hosting flow table item to a second switch connected with a second host by taking the IP address of the found host table item as the second host, wherein the second hosting flow table item is used for indicating that an ARP protocol message with the IP address of a sending end as the IP address of the second host is borne in an OpenFlow message and sent to the SDN controller so as to host all ARP protocol messages from the second host;
the priority of the first and second pipe flow table entries is higher than the priority of the monitored flow table entry.
In a second aspect, the present disclosure provides an apparatus for processing a conflicting MAC address, where the apparatus is applied to an SDN controller, and the apparatus includes: the system comprises a monitoring module, a SDN controller and a plurality of switches, wherein the monitoring module sends a monitoring flow table entry to each switch, and the monitoring flow table entry is used for indicating that a received ARP protocol message is copied and loading the copied ARP protocol message in an OpenFlow message and sending the copied ARP protocol message to the SDN controller;
the detection module is used for receiving the OpenFlow message carrying the duplicated ARP protocol message, searching according to the MAC address of the sending end, determining that the IP address of the searched host table entry is different from the IP address of the sending end of the duplicated ARP protocol message, and determining that the MAC address of the sending end of the duplicated ARP protocol message and the MAC address of the searched host table entry are conflict MAC addresses;
a hosting module, configured to send a first hosting flow entry to a first switch connected to the first host, by using a host indicated by a sending end IP address of the duplicated ARP protocol packet as a first host, to indicate that an ARP protocol packet whose sending end IP address is an IP address of the first host is carried in an OpenFlow packet and sent to the SDN controller, so as to host all ARP protocol packets from the first host; sending a second hosting flow table item to a second switch connected with a second host by taking the IP address of the found host table item as the second host, wherein the second hosting flow table item is used for indicating that an ARP protocol message with the IP address of a sending end as the IP address of the second host is borne in an OpenFlow message and sent to the SDN controller so as to host all ARP protocol messages from the second host;
the priority of the first and second pipe flow table entries is higher than the priority of the monitored flow table entry.
In a third aspect, the disclosed embodiments provide a machine-readable storage medium having stored thereon machine-executable instructions that, when invoked and executed by a processor, cause the processor to implement the method of the first aspect.
According to the method, the device and the machine-readable storage medium for processing the conflicting MAC addresses provided by the embodiments of the present disclosure, in a manner of sending a monitoring flow entry to each switch, the switch is instructed to copy and bear a received ARP protocol packet in an OpenFlow packet to an SDN controller, when receiving the OpenFlow packet, a host entry is searched according to a sending end MAC address, and when determining that the conflicting MAC address exists, a pipe flow entry is sent to a switch of a host (i.e., the first host and the second host, also referred to as a conflicting host) corresponding to the conflicting MAC address, so as to host the ARP protocol packet from the conflicting host, thereby ensuring normal sending of the ARP packet of the host, and improving reliability of communication.
Additional features and advantages of the disclosure will be set forth in the description which follows, or in part may be learned by the practice of the above-described techniques of the disclosure, or may be learned by practice of the disclosure.
In order to make the aforementioned objects, features and advantages of the present disclosure more comprehensible, preferred embodiments accompanied with figures are described in detail below.
Drawings
In order to more clearly illustrate the embodiments of the present disclosure or the technical solutions in the prior art, the drawings needed to be used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present disclosure, and other drawings can be obtained by those skilled in the art without creative efforts.
Fig. 1 is a schematic diagram of a large two-tier network environment provided by an embodiment of the present disclosure;
fig. 2 is a flowchart of a method for processing a conflicting MAC address according to an embodiment of the present disclosure;
fig. 3 is a flowchart of another method for processing a conflicting MAC address according to an embodiment of the present disclosure;
fig. 4 is a schematic structural diagram of a device for processing a conflicting MAC address according to an embodiment of the present disclosure;
fig. 5 is a schematic structural diagram of another apparatus for processing a conflicting MAC address according to an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of a network device according to an embodiment of the present disclosure.
Detailed Description
To make the objects, technical solutions and advantages of the embodiments of the present disclosure more apparent, the embodiments of the present disclosure will be described clearly and completely with reference to the accompanying drawings, and it is to be understood that the described embodiments are some, but not all embodiments of the present disclosure. All other embodiments, which can be derived by one of ordinary skill in the art from the embodiments disclosed herein without making any creative effort, shall fall within the protection scope of the present disclosure.
It should be noted that the above method embodiments are all described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments may be referred to each other.
In a large two-tier network, a physical server is virtualized into a plurality of logical servers called Virtual Machines (VMs), each VM can operate independently, and has its own independent MAC Address and IP (Internet Protocol Address) Address on a network layer. In the VM live migration process, the IP address of the VM is not changed, and the original running state, for example, a TCP (Transmission Control Protocol) session state, is maintained.
Fig. 1 shows a schematic diagram of a large two-layer Network environment, which includes an SDN Controller ((Software Defined Network Controller), physical switches (such as switch a and switch B in the figure), physical hosts PM1, PM2, and PM3, virtual switches OVS a, virtual hosts VM1, and vm2, where the SDN Controller can control the processing behavior of each switch on messages based on a Protocol such as OpenFlow, and ARP (Address Resolution Protocol) Protocol messages are carried between the SDN Controller and the switches through OpenFlow messages, including ARP request messages and ARP response messages, where the outermost layer of the ARP Protocol messages includes a Source MAC Address (Source MAC) and a Destination MAC Address (Destination MAC), the inner layer includes a Sender MAC Address (Sender MAC) and an IP Address (Destination MAC), and a Destination MAC Address (Target MAC) and a Destination IP Address (Target IP), where, the host corresponding to the source MAC address of the outer layer refers to a host initiating an ARP protocol message, and is also a host corresponding to the sending end MAC address and the sending end IP address of the inner layer, and the host corresponding to the target MAC address refers to a host which is to be reached finally in the ARP protocol message, and is also a host corresponding to the target end MAC address and the target end IP address of the inner layer.
Referring to a flowchart of a method for processing a conflicting MAC address shown in fig. 2, the method is applied to the SDN controller, and the method includes the following steps:
step S202, a monitoring flow entry is sent to each switch, and the monitoring flow entry is used for indicating that the received ARP protocol message is copied, carrying the copied ARP protocol message in an OpenFlow message and sending the OpenFlow message to an SDN controller.
Each switch here may include all switches to which the SDN controller is connected.
The priority of the flow table entries mentioned in the embodiment of the present disclosure is higher than that of the MAC table, when the switch receives the ARP protocol message, the switch looks up the flow table entries first, and if there is a matching entry in the flow table entry for the ARP protocol message, the switch processes the ARP message according to the indication in the matching entry. If the ARP protocol message has no matching item in the flow list item, the message is forwarded according to the MAC address of the ARP protocol message.
Step S204, receiving the OpenFlow message carrying the duplicated ARP protocol message, performing searching according to the MAC address of the sending end, determining that the IP address of the searched host table entry is different from the IP address of the sending end of the duplicated ARP protocol message, and determining that the MAC address of the sending end of the duplicated ARP protocol message and the MAC address of the searched host table entry are conflict MAC addresses.
If the sending end MAC address of the duplicated ARP protocol message is used for searching the host table entry, and the table entry corresponding to the sending end MAC address is searched in the host table entry, and the IP address in the searched table entry is different from the sending end IP address of the duplicated ARP protocol message, the sending end MAC address of the duplicated ARP protocol message and the searched MAC address of the host table entry can be determined to be the conflict MAC address.
Step S206, using the host indicated by the IP address of the sending end that copies the ARP protocol packet as a first host, sending a first pipe flow entry to a first switch connected to the first host, where the first pipe flow entry is used to indicate that an ARP protocol packet whose IP address of the sending end is the IP address of the first host is carried in an OpenFlow packet and sent to the SDN controller, so as to host all ARP protocol packets from the first host.
Step S208, the IP address of the host table entry is found as a second host, a second pipe supporting flow table entry is sent to a second switch connected with the second host, and the second pipe supporting flow table entry is used for indicating that an ARP protocol message with the IP address of the second host at the sending end is carried in an OpenFlow message and sent to the SDN controller so as to support all ARP protocol messages from the second host;
wherein the priority of the first and second pipe flow table entries is higher than the priority of the monitoring flow entry.
In the method for processing a conflicting MAC address provided in this embodiment, a switch is instructed to copy a received ARP protocol packet and send the copied ARP protocol packet to an SDN controller in an OpenFlow packet by sending a monitoring flow entry to each switch, when an OpenFlow packet is received, a host entry is searched according to a sending end MAC address, and when a conflicting MAC address is determined to exist, a host flow entry is sent to a switch of a host (i.e., the first host and the second host, also referred to as a conflicting host for short) corresponding to the conflicting MAC address, so as to host an ARP protocol packet from the conflicting host, thereby ensuring normal sending of an ARP packet of the host, and improving reliability of communication.
For simplicity of description, the first host is connected to the first port of the first switch, and the second host is connected to the second port of the second switch.
After receiving the OpenFlow message carrying the duplicated ARP protocol message, the SDN controller may record, in a host table entry, host information of a sending end host in the OpenFlow message, if a table entry corresponding to the sending end MAC address of the duplicated ARP protocol message is not found in the host table entry, so as to perform collision MAC address analysis on a subsequently received duplicated ARP protocol message. Based on this, the above method further comprises: and at least connecting a sending end MAC address, a sending end IP address, a broadcast domain, an identifier of a first switch and the first switch of the OpenFlow message carrying the copied ARP protocol message with a first port of the first host, and recording a host table entry.
In this way, if the IP address in the entry matching the sending end MAC address and the broadcast domain identifier is found in the host table entry to be different from the sending end IP address in the duplicated ARP protocol message, it is determined that the sending end MAC address in the duplicated ARP protocol message is a conflicting MAC address.
In order to eliminate interference of a conflicting MAC address on communication, after the step of determining, by the SDN controller, that a sending end MAC address of a duplicate ARP protocol packet and an MAC address of the found host table entry are conflicting MAC addresses, the method further includes: sending a first OpenFlow message carrying a first toll-free ARP message and a second OpenFlow message carrying a second toll-free ARP message to each switch;
the IP address of the sending end of the first free ARP message is the IP address of the first host, and the source MAC address and the MAC address of the sending end of the first free ARP message are the MAC addresses of the first port;
the IP address of the sending end of the second free ARP message is the IP address of the second host, and the source MAC address and the MAC address of the sending end of the second free ARP message are the MAC addresses of the second port;
the first OpenFlow packet includes: the identification of the first switch, the identification of the first port and the first port filtering and forwarding indication; the second OpenFlow packet includes: a second switch identification, an identification of a second port, and a second port filtering forwarding indication.
In this embodiment, the SDN controller pretends to be the collision host and sends the gratuitous ARP message, so that the MAC address of the collision host learned by the host receiving the ARP message is the port MAC address of the switch to which the collision host is connected. The first free ARP message is a message which is disguised by the SDN controller as a message corresponding to the identity of the first host, and the second free ARP message is a message which is disguised by the SDN controller as a message corresponding to the identity of the second host.
The first OpenFlow message and the second OpenFlow message include a switch identifier, a port identifier, and a port filtering and forwarding instruction, and are used to limit the switch connected to the conflicting host from sending a free ARP message through a port corresponding to the port identifier when forwarding the free ARP message, so as to prevent the conflicting host from receiving the free ARP message corresponding to its own IP address, thereby avoiding an erroneous learning process.
Assuming that PM1 and PM3 in fig. 1 collide, the SDN controller sends an OpenFlow message carrying gratuitous ARP messages to each switch, where one gratuitous ARP message includes a sender IP address of PM1 and a sender MAC address of port 1 of switch a, and the OpenFlow message further includes an identifier of switch a, an identifier of port 1, and an indication that port 1 filters and forwards. Thus, after receiving the OpenFlow message, the switch a sends a gratuitous ARP message to a port other than the connection PM1, and other switches may send the gratuitous ARP message to all ports. And the IP 1 in the ARP table entry of all the hosts receiving the gratuitous ARP message corresponds to the MAC address of the port 1 of the switch A. Even if the PM3 learns the MAC address of the PM1 in advance, the MAC address of the PM1 is modified to the MAC address of the port 1 of the switch a after receiving the gratuitous ARP message, thereby eliminating the MAC address conflict found in the PM 3. Similarly, in another gratuitous ARP message, the IP address of the sending end is the IP address of PM3, the MAC address of the sending end is the MAC address of port 1 of switch B, and the OpenFlow message further includes the identifier of switch B, the identifier of port 1, and the filtering and forwarding instruction of port 1. The subsequent processing of the switch is similar to the above, and is not described herein again.
The SDN controller can modify the ARP table maintained by each host according to the information (the IP address of the sending end, the MAC address of the sending end) carried in the received gratuitous ARP packet by sending the gratuitous ARP packet. By making the MAC address corresponding to the IP address of the conflict host be the port MAC address of the switch, the problem that the conflict MAC address exists in the ARP table and normal communication is interfered is avoided, and the reliability of communication is prompted.
In this embodiment, in addition to hosting all ARP protocol messages from the first host and the second host, the method may also host ARP response messages sent to the first host and the second host, where the method further includes: sending a third managed flow table and a fourth managed flow table to each switch; the third hosting flow entry indicates that an ARP response message with a target end IP address as the IP address of the first host is sent to the SDN controller so as to host the ARP response message sent to the first host; the fourth hosting flow entry indicates that an ARP response message with the target end IP address as the IP address of the second host is sent to the SDN controller so as to host the ARP response message sent to the first host; the priority of the third and fourth pipe flow entries is higher than the priority of the monitoring flow entry.
The SDN controller can only host the ARP protocol messages of the conflict host (including the ARP protocol messages sent to the conflict host and the ARP protocol messages from the conflict host) by issuing the pipe supporting flow table items (from the first pipe supporting flow table item to the fourth pipe supporting flow table item), and the ARP protocol messages of other hosts are forwarded by the switch as long as the ARP protocol messages of other hosts are not sent to the conflict host, so that the message hosting load of the SDN controller is effectively reduced, and the message forwarding performance is further guaranteed.
The flow entry may include a matching entry and an action entry, wherein the matching entry is used to indicate which field is used for matching, and the action entry is used to, for example: the matching item indicates which processes are performed on the packet matched with the matching item, taking the third pipe flow table item as an example, the matching item may be an ARP response packet whose target IP address is the IP address of the first host, and the action item may be sending the ARP response packet matched with the matching item to the SDN controller.
In the process that the SDN controller hosts all ARP protocol messages from the first host, the SDN controller may separately host an ARP request message and a hosted ARP response message and separately process the ARP request message and the hosted ARP response message, which specifically includes:
(1) if an OpenFlow message carrying a managed ARP request message from a first host is received, modifying a source MAC address and a sending end MAC address into the MAC address of the first port, carrying the modified managed ARP request message from the first host in the OpenFlow message and sending the modified managed ARP request message to each switch;
(2) and if an OpenFlow message carrying a hosting ARP response message from the first host is received, modifying the source MAC address and the sending end MAC address into the MAC address of the first port, carrying the modified hosting ARP response message from the first host in the OpenFlow message, and sending the modified hosting ARP response message from the first host to a switch connected with the host indicated by the target end IP address of the modified hosting ARP response message from the first host.
Similarly, in the process that the SDN controller hosts all ARP protocol messages from the second host, the SDN controller may separately host an ARP request message and a managed ARP response message and separately process the ARP request message and the managed ARP response message, which specifically includes:
(1) if an OpenFlow message carrying a managed ARP request message from a second host is received, modifying a source MAC address and a sending end MAC address into the MAC address of the second port, carrying the modified managed ARP request message from the second host in the OpenFlow message and sending the modified managed ARP request message to each switch;
(2) and if an OpenFlow message carrying a hosting ARP response message from the second host is received, modifying the source MAC address and the sending end MAC address into the MAC address of the second port, carrying the modified hosting ARP response message from the second host in the OpenFlow message, and sending the modified hosting ARP response message from the second host to the switch connected with the host indicated by the target end IP address of the modified hosting ARP response message from the second host.
In the process of hosting the ARP protocol message related to the conflict host, the ARP protocol message is further ensured to be sent to the target host through the address modification mode.
After the MAC address in the ARP protocol message is modified, the SDN controller encapsulates the ARP protocol message in an OpenFlow message, and when performing message encapsulation, the method performs according to the OpenFlow protocol, specifically including the following encapsulation methods:
(1) and if the ARP request message from the first host is received and the destination IP address of the ARP request message is not the IP address of the second host, encapsulating the ARP request message with the modified MAC address, the first switch identifier, the first port identifier and the first port filtering and forwarding indication in an OpenFlow message, and sending the OpenFlow message to each switch. The first switch broadcasts the ARP request message in the OpenFlow message through other ports except the first port, and other switches broadcast the ARP request message on all the ports. Similarly, the ARP request message received from the second host is processed similarly.
(2) If an ARP response message from the first host is received and the destination IP address of the ARP response message is not the IP address of the second host, the ARP response message after the MAC address modification and the switch identifier corresponding to the destination IP address are encapsulated in an OpenFlow message, and the switch sends the ARP response message to the destination host (i.e., the target host). Similarly, the ARP response message received from the second host is processed similarly.
(3) And if an ARP request message sent to the first host is received and the IP address of the sending end of the ARP request message is not the IP address of the second host, encapsulating the ARP request message after the MAC address is modified, the identifier of the host connected switch corresponding to the IP address of the sending end, the identifier of the ingress port and the filtering and forwarding indication of the ingress port in an OpenFlow message, and sending the OpenFlow message to each switch. The broadcast mode of the message received by each switch is similar to the above. Similarly, the process of receiving the ARP request message sent to the second host is similar.
(4) And if an ARP response message sent to the first host is received and the IP address of the sending end of the ARP response message is not the IP address of the second host, encapsulating the ARP response message with the modified MAC address, the first switch identification and the first port identification in an OpenFlow message, and sending the ARP response message to the first host by the first switch. Similarly, the processing of the ARP response message sent to the second host is received.
(5) If an ARP response message sent from the first host to the second host is received, modifying the MAC address of the sending end of the ARP response message as the first port MAC address of the first switch, and modifying the MAC address of the target end as the conflict MAC address, encapsulating the ARP response message after the MAC address is modified, the second switch identification and the second port identification in an OpenFlow message, and sending the ARP response message to the second host through the second port by the second switch. Similarly, the processing of the ARP response message sent by the second host to the first host is similar.
By hosting the ARP protocol message of the conflict host by the SDN controller and applying the modification and encapsulation mode of the MAC address to the ARP protocol message, the hardware requirement on the switch can be reduced, and the switch still ensures the normal sending of the ARP protocol message when the switch does not support the address modification function of the protocol message, so that the realization is simple and reasonable.
Considering that the switch may generally modify a header of the data packet, for processing the data packet, the SDN controller issues corresponding flow entries to the first switch and the second switch respectively, so as to instruct the first switch and the second switch to perform an MAC address modification operation on the data packet of the conflicting host. Based on this, the above method further comprises:
(1) sending a first source address conversion list item and a first destination address conversion list item to a first switch; the first source address conversion table entry is used for indicating that a data message of which the source MAC address is the conflict MAC address is modified into a data message of which the source MAC address is the MAC address of the first port; the first destination address conversion table entry is used for indicating that the data message of which the destination MAC address is the MAC address of the first port is modified into the data message of which the destination MAC address is the conflict MAC address;
(2) sending a second source address conversion list item and a second destination address conversion list item to a second switch; the second source address conversion table entry is used for indicating that the data message of which the source MAC address is the conflict MAC address is modified into the data message of which the source MAC address is the MAC address of the second port; the second destination address conversion table entry is configured to instruct to modify the data packet whose destination MAC address is the MAC address of the second port into the data packet whose destination MAC address is the conflicting MAC address.
By issuing the first source address conversion list item, the first destination address conversion list item, the second source address conversion list item and the second destination address conversion list item, after the first switch and the second switch receive the data message of the conflict host, MAC address modification operation can be carried out according to the flow list items, the data message is forwarded after the address modification is completed, forwarding processing of the data message does not need to be managed on an SDN controller, load of the SDN controller is reduced, and forwarding performance of the data message is further guaranteed.
Taking the large two-layer network environment shown in fig. 1 as an example, the present embodiment provides a flowchart of a method for processing a conflicting MAC address shown in fig. 3, in the method, assuming that a host table entry (which may be referred to as a host information table) already stored by an SDN controller is as shown in table 1:
TABLE 1
Figure BDA0001650420900000131
The host table entry usually records host information corresponding to each packet, for example, a sending-end MAC address, a sending-end IP address, a switch identifier and a port identifier of a switch connected to the host, and a broadcast domain identifier of the host in table 1, where the sending-end MAC address and the sending-end IP address are the MAC address and the IP address of the host, and the switch identifier can be usually represented by the IP address of the switch, and for convenience of description, the name of the switch is used in the embodiment of the present disclosure.
In the present embodiment, as shown in table 1, the host information of PM 1: the MAC address is 0001 + 0002 + 0001, the IP address is 10.0.0.2, the port 1 of the switch A is connected, and the broadcast domain identifier is 1. Host information of PM 2: the MAC address is 0001 + 0002, the IP address is 10.0.0.3, the port 2 of the switch A is connected, and the broadcast domain identifier is 2. Host information of VM 1: the MAC address is 0001 + 0002 + 0005, the IP address is 10.0.0.5, the port 1 of the OVS A is connected, and the broadcast domain identifier is 3.
In consideration of the situations of host migration or offline, the host table entry may be maintained in a manner of detecting the host in order to make the host information recorded in the host table entry reasonably effective. The method for detecting the host mainly detects whether the host in the host table entry is online, and specifically includes: the method comprises the steps that a SDN controller obtains a pre-stored host table entry, whether a host approaches an aging period is checked (namely, the aging time approaches 0 or a certain threshold value) or not is checked, if the host approaches the aging period, an ARP request message is sent to a switch port corresponding to the host through an OpenFlow protocol, after the host responds to the ARP request message, an ARP response message is replied, the switch forwards the response message to the SDN controller, and the SDN controller updates the aging time corresponding to the host according to the received response message. If the host does not respond, when the aging time is 0, deleting the table entry corresponding to the host from the host table entry. By the maintenance mode of the host table entry, the host table entry can be simplified, and the table lookup efficiency is improved.
Taking the case that PM1 sends data to PM3 and there is no ARP entry corresponding to PM3 in the ARP table of PM1 as an example, refer to the flowchart of the processing method for conflicting MAC addresses shown in fig. 3, where the method includes the following steps:
step S300, sending a monitoring flow entry to each switch (such as switch a, switch B, and OVS a in the figure), where the monitoring flow entry is used to indicate that a received ARP protocol packet is copied, and the copied ARP protocol packet is carried in an OpenFlow packet and sent to the SDN controller.
The switch a, the switch B and the OVSA store the monitoring flow entry, and are configured to copy an ARP protocol packet when receiving the ARP protocol packet, and load the ARP protocol packet in an OpenFlow packet and send the OpenFlow packet to the SDN controller.
In step S302, the PM1 checks the local ARP table according to the IP address of the PM3, finds no ARP table entry corresponding to the PM3, and sends an ARP request packet in a broadcast manner.
The IP address and MAC address of the sending end in the ARP request message are the IP address and MAC address of PM1, and the IP address and MAC address of the target end are the IP address of PM3 and the MAC address of full F.
Step S304, after receiving the ARP request message, the switch A sends the ARP message in a broadcasting mode, copies the ARP request message according to the monitoring flow table entry, loads the ARP request message in an OpenFlow message and sends the OpenFlow message to an SDN controller;
the OpenFlow message includes, in addition to the ARP request message, a switch a identifier, a port 1 connected to PM1, and a broadcast domain identifier 1 to which PM1 belongs.
Step S306, if the SDN controller receives the OpenFlow message, parsing the OpenFlow message to obtain host information of the PM1, and refreshing the host entry using the host information of the PM 1.
After receiving the OpenFlow message, the SDN controller refreshes the host table entry according to the sending end MAC address, the sending end IP address, the switch name and the port in the message, and the VLAN/VXLAN identifier, identifies whether the MAC address in the message conflicts, and can perform the main principle of judgment in the process of refreshing the table entry: taking the MAC + VLAN/VXLAN + IP as a basis for determining the collision, if the MAC + VLAN/VXLAN + IP in the message and the MAC + VLAN/VXLAN + IP in the table entry are the same through comparison (where "+" indicates a relationship where information before and after + is a sum), and the access information (switch identifier + port identifier) is different, the case of host migration is assumed, and if the MAC + VLAN/VXLAN is the same, the IP address is different (usually, the access information is also different), the MAC address collision exists. The process of refreshing the host table entry is as follows:
(1) if the MAC address of the sending end in the ARP request message and the VLAN/VXLAN identification do not exist in the host table entry, adding a new table entry.
(2) If the MAC address of the sending end and the VLAN/VXLAN identification already exist in the host table entry, whether the IP address in the host table entry is the same as the IP address of the sending end in the message or not needs to be checked, because the IP address of the sending end is unique in the same broadcast domain no matter a physical host or a virtual host, no conflict exists, and because the mapping relation exists between the IP address and the MAC address, different IP addresses also correspond to different MAC addresses under normal conditions. If the IP address in the host table entry is different from the IP address of the sending end, and the MAC address of the sending end and the VLAN/VXLAN identifier already exist in the host table entry, that is, different IP addresses correspond to the same MAC address, at this time, it may be determined that the MAC address of the sending end and the MAC address in the found host table entry are conflicting MAC addresses.
(3) If the MAC address and the VLAN/VXLAN identifier of the sending end are already present in the host table entry and the IP address in the host table entry is the same as the IP address of the sending end, it is necessary to check whether the access information (the switch identifier and the port identifier) in the host table entry is consistent with the access information of the packet, specifically, check whether the switch identifier and the port identifier are consistent, and if the consistency indicates that the host information of the host has already been stored, it is necessary to refresh the aging time. If the entry is inconsistent with the entry, the host corresponding to the entry is migrated, and the entry needs to be added again according to the message, that is, the access information in the entry is updated by using the access information in the message, and the aging time of the entry is refreshed.
In the present embodiment, the host information of the PM1 includes: the MAC address is 0001 + 0002 + 0001, the IP address is 10.0.0.2, the port 1 of the switch A is connected, and the broadcast domain identifier is 1. Checking that there is a matching entry in the host table entries shown in table 1 for the host information, and the corresponding information are all consistent, which indicates that the PM1 has not migrated and no conflicting MAC addresses are found. Therefore, the SDN controller only needs to update the aging time of the first entry in table 1 this time.
Step S308, if the PM3 receives the ARP request message, and checks that the target IP address in the ARP request message matches its own IP address, then the IP address and MAC address of the PM1 are mapped and added to the local ARP table.
Other hosts receive the ARP request message, check that the DIP address in the ARP request message is not matched with the IP address of the hosts, and discard the ARP request message.
At step S310, PM3 sends an ARP response message containing its MAC address directly back to PM 1. When the ARP reply message passes through the switch B, the switch B copies an ARP response message according to the monitoring flow entry, encapsulates the ARP response message in an OpenFlow message, and sends the OpenFlow message to the SDN controller. The encapsulation process is similar to the encapsulation process described above and will not be described further herein.
Step S312, if the PM1 receives the ARP reply message, the mapping relationship between the IP address and the MAC address of the PM3 is stored in the local ARP table, and the subsequent PM1 may send a data message to the PM3 according to the ARP table.
The mapping relation in the ARP table has a lifetime, and after the lifetime is over, the ARP request process can be repeated again.
Step S314, the SDN controller receives the OpenFlow packet carrying the ARP response packet sent by the switch B, performs lookup according to the sender MAC address (i.e., the MAC address of PM 3), determines that the IP address of the found host table entry is different from the sender IP address of the ARP response packet (i.e., the IP address of PM 3), determines that the sender MAC address of the ARP response packet and the MAC address of the found host table entry (the MAC address of PM 1) are conflicting MAC addresses, i.e., determines that the MAC addresses corresponding to PM1 and PM3 are conflicting MAC addresses.
In the refresh process, as described above, it is assumed that the PM1 and the PM3 belong to the same broadcast domain 1, and the MAC addresses of the PM1 and the PM3 are the same, and are both 0001 + 0002 + 0001, the IP address of the PM1 is 10.0.0.2, and the IP address of the PM3 is 10.0.0.3, so that the SDN controller finds that the sender MAC address and the VLAN/VXLAN identifier in the message already exist in the host table entry refresh process, and checks that the IP address in the host table entry is different from the sender IP address in the message, thereby determining that there is a conflicting MAC address. To illustrate the conflicting MAC addresses more clearly, the host table entries refreshed by the SDN controller are shown in table 2 without processing the conflicting MAC addresses provided by the embodiments of the present disclosure.
TABLE 2
Figure BDA0001650420900000181
As clearly determined from table 2, the sender MAC address 0001 + 0002 + 0001 is the conflicting MAC address.
Step S316, the SDN controller sends, to each switch, a first OpenFlow packet carrying a first toll-free ARP packet and a second OpenFlow packet carrying a second toll-free ARP packet. In the first gratuitous ARP packet, the IP address of the sending end is the IP address of PM1, the MAC address of the sending end is the MAC address of port 1 of switch a, and the OpenFlow packet further includes a switch a identifier, a port 1 identifier, and an indication that port 1 filters and forwards.
Thus, the switch a receives the OpenFlow message, sends the gratuitous ARP to a port other than the connection PM1, and sends the other switches to all ports. The IP address of PM1 in the ARP entry of all hosts will correspond to the MAC address of port 1 of switch a, thereby solving the problem of the MAC address of PM1 learned before in PM3 being a conflicting MAC address.
The second gratuitous ARP message is also carried in the OpenFlow message, where the IP address of the sending end is the IP address of PM3, the MAC address of the sending end is the MAC address of port 1 of switch B, and the OpenFlow message further includes the identifier of switch B, the identifier of port 1, and the filtering and forwarding instruction of port 1. The subsequent processing of the switch is similar to the above, and is not described herein again.
At step S318, the SDN controller sends a first tunnel flow table entry to switch a that hosts ARP protocol messages (including request and response messages) from PM 1. The matching item of the table entry indicates that the IP address of the sending end is an ARP protocol message of the IP address of PM1, and the action item is to encapsulate the ARP protocol message in an OpenFlow message and send the OpenFlow message to the SDN controller.
At step S320, the SDN controller sends a second tunnel flow table entry to switch B that hosts ARP protocol messages (including request and response messages) from PM 3. The matching item of the table entry indicates that the IP address of the sending end is an ARP protocol message of the IP address of PM3, and the action item is to encapsulate the ARP protocol message in an OpenFlow message and send the OpenFlow message to the SDN controller.
At step S322, the SDN controller sends a third hosting flow table entry and a fourth hosting flow table to each switch for hosting ARP response messages (including requests and responses) sent to PM1 and PM 3. And the matching item indicates that the target end IP address is an ARP response message of the IP address of the PM1, and the action item encapsulates the ARP response message in an OpenFlow message and sends the OpenFlow message to the SDN controller. And the matching item of the fourth managed flow table indicates that the target end IP address is an ARP response message of the IP address of the PM3, and the action item is to encapsulate the ARP response message in an OpenFlow message and send the OpenFlow message to the SDN controller.
Through the steps S318 to S322, the SDN controller may only host the ARP protocol packet of the conflict host, so that the processing pressure of the SDN controller is reduced.
After the flow table entry is issued, it is assumed that the PM3 replies an ARP response message to the PM1, the switch B sends the ARP response message to the SDN controller, the SDN controller finds that the IP address of the sending end of the ARP response message is the IP address of the PM3, the MAC address of the sending end is a collision MAC address, determines that there is an MAC address collision, modifies the source MAC address and the sending end MAC address in the ARP response message to the MAC address of the port 1 of the switch B, because the MAC address of the target end of the ARP response message is the MAC address of the port 1 of the switch a, the SDN controller modifies the MAC address of the target end to a collision MAC, encapsulates the modified ARP response message in an OpenFlow message, and sends the port 1 identifier of the on-band connected PM1 to the switch a. The switch A sends an ARP response message according to the port 1 identifier. Thus, at PM1, the IP address of PM3 maps to the MAC address of Port 1 of switch B.
If the VM1 sends an ARP response message to the PM1, the switch (OVS A) sends the ARP response message to the SDN controller, the SDN controller finds that no MAC address conflict exists, only the target end MAC is modified into a conflicting MAC, the modified ARP response message is packaged in an OpenFlow message, and the port 1 identifier connected with the PM1 on the belt is sent to the switch A. The switch A sends the ARP response message according to the port 1 identifier.
After the flow entries are issued, the PM1 and the PM3 send ARP request messages or ARP response messages again, and also send the flow entries to the SDN controller for processing according to the IP address of the sending end. For example: the PM1 sends an ARP request message to the VM1, the switch A packages the ARP request message in an OpenFlow message according to the IP address of the sending end and sends the OpenFlow message to the SDN controller, the SDN changes the source MAC address and the MAC address of the sending end into the MAC address of the port 1 of the switch A, and then the SDN controller sends the ARP request message, the switch A identification and the port entry information (namely the port 1 identification and the filtering and forwarding indication of the port 1) to the switch A, the OVS A and the switch B through the OpenFlow message. Switch a broadcasts through ports other than port 1, and OVS a and switch B broadcast on all ports.
If the VM1 sends an ARP response message to the PM1, the OVS A sends the ARP response message to the SDN controller according to the flow table item matched with the IP of the target end, and the SDN controller changes the MAC address of the target end of the ARP response message back to the conflicting MAC address and sends the conflicting MAC address to the switch A through an OpenFlow message. Switch a sends an ARP response message to PM 1.
The processing of PM3 is the same. In this way, the SDN controller modifies the ARP request messages from the two conflicting hosts into the port MAC addresses of the switches connected with the SDN controller respectively, and modifies the ARP response messages sent to the two conflicting hosts back to the conflicting MAC addresses;
if the PM2 host sends an ARP request message, wherein the IP address of the target end is the IP address of PM1 and is used for requesting the MAC address of PM1, the switch A sends the ARP request message to the SDN controller according to the IP address of the target end, and the SDN controller sends the ARP request, the switch identification and the ingress port information to the switch A, the OVS A and the switch B through OpenFlow messages. Switch A broadcasts through ports other than the input port, and switches B and OVS A broadcast at all ports. Thus, all switches will not learn the MAC address of the ARP request message from the conflicting MAC hosts.
If the PM1 sends an ARP response message to the PM2, wherein the sender IP address and the sender MAC address are the IP address and the conflicting MAC address of the PM1, and the target IP address and the target MAC address are the IP address and the MAC address of the PM 2. The switch A finds the flow table item matched with the IP address of the sending end and sends the flow table item to the SDN controller. The SDN changes a source MAC address and a sending end MAC address into an MAC address of a port 1 of the switch A, and then the SDN controller sends an ARP request message and an output port to the switch A through an OpenFlow message. Switch a sends a modified ARP response message to PM2 through the egress port.
The processing of ARP messages for PM3 is similar to that of PM 1.
Even if subsequent ARP entries on PM1 and PM3 age, when PM1 requests the MAC address of PM3, the SDN controller will modify the sender MAC address and the target MAC address, ensuring that PM1 learns the MAC address of the switch port to which PM3 is connected, and vice versa.
In step S324, the SDN controller issues the first source address translation table entry and the first destination address translation table entry to the switch a, so as to instruct the switch a to modify the source MAC address of the data packet from the PM1 to be the MAC address of the port 1 of the switch a, and modify the destination MAC address of the data packet to the PM1 back to the conflicting MAC address.
During specific implementation, the matching item of the first source address conversion table entry indicates that the source IP address is the IP address of PM1, the source MAC address is 0001 + 0002 + 0001, and the VLAN/VXLAN identifier is 1, and the action item modifies the source MAC address of the data message to the MAC address of port 1 of the switch a; this flow entry is used to instruct switch a to modify the source MAC address of the data packet from conflicting host PM 1.
The matching item of the first destination address conversion table entry indicates that the destination IP address is the IP address of PM1, the destination MAC address is the MAC address of port 1 of switch a, and the VLAN/VXLAN identifier is 1, the action item is to modify the destination MAC address of the data message to the MAC address 0001 (i.e. collision MAC) of PM1, and the flow table entry is used to modify the destination MAC address of the data message addressed to the collision host PM1 back to the collision MAC address.
In step S326, the SDN controller issues a second source address translation table entry and a second destination address translation table entry to the switch B, so as to instruct the switch B to modify the source MAC address of the data packet from the PM3 to be the MAC address of the port 1 of the switch B, and modify the destination MAC address of the data packet addressed to the PM3 back to the conflicting MAC address.
In specific implementation, the matching item of the second source address conversion table entry indicates that the source IP address is the IP address of PM3, the source MAC address is the data message with the MAC address 0001 and 0002 and 0001 of PM3 and the VLAN/VXLAN identifier of 1, and the action item modifies the source MAC address of the data message into the MAC address of port 1 of switch B;
the matching item of the second destination address conversion table entry indicates that the destination IP address is the IP address of PM3, the destination MAC address is the MAC address of port 1 of switch B, and the VLAN/VXLAN identifier is a data packet of 1, and the action item modifies the destination MAC address to the MAC address 0001-.
In this way, the later PM1 sends the data packet again, and the switch a sends the modified source MAC address according to the flow table entry. The switch A receives the data message of which the destination MAC address is the MAC address of the port 1 of the switch A, modifies the destination MAC address into MAC0001-0002-0001 of the PM1, and then sends the data message to the PM 1. The processing of PM3 is the same. Even if data messages are sent between PM1 and PM3, there is no problem.
The sequence from step S316 to step S326 can be flexibly adjusted, which is not limited in the embodiment of the present disclosure.
The method for processing a conflicting MAC address provided in the embodiment of the present disclosure can extract host information carried in a message when the message is received, and determine whether a conflicting MAC address exists according to a host table entry, and specifically, can use MAC + VLAN/VXLAN + IP as a basis for conflict determination, if the comparison finds that the MAC + VLAN/VXLAN + IP are the same and the access information (switch identifier + port identifier) is different, it belongs to a host migration situation, and if the MAC + VLAN/VXLAN is the same and the IP address is different (usually the access information is also different), an MAC address conflict exists. After the conflict MAC address is determined, MAC address replacement operation is carried out, so that the host corresponding to the conflict MAC address can continue to keep intercommunication in a large two-layer network, normal operation of network communication is guaranteed, and meanwhile, the user experience degree is improved.
Corresponding to the method for processing a conflicting MAC address provided in the foregoing embodiment, an embodiment of the present disclosure further provides a device for processing a conflicting MAC address, which is applied to an SDN controller, where the SDN controller and a switch bear an ARP protocol packet through an OpenFlow packet, and as shown in fig. 4, the device includes:
the monitoring module 42 is configured to send a monitoring flow entry to each switch, where the monitoring flow entry is used to indicate that a received ARP protocol packet is copied, and the copied ARP protocol packet is carried in an OpenFlow packet and sent to an SDN controller;
the detection module 44 is configured to receive an OpenFlow message carrying a duplicated ARP protocol message, perform lookup according to a sending-end MAC address, determine that an IP address of a found host table entry is different from a sending-end IP address of the duplicated ARP protocol message, and determine that the sending-end MAC address of the duplicated ARP protocol message and the MAC address of the found host table entry are collision MAC addresses;
a hosting module 46, configured to send a first hosting flow entry to a first switch connected to a first host by using a host indicated by a sending end IP address of a duplicate ARP protocol packet as the first host, and to indicate that an ARP protocol packet whose sending end IP address is the IP address of the first host is carried in an OpenFlow packet and sent to an SDN controller, so as to host all ARP protocol packets from the first host; sending a second hosting flow table item to a second switch connected with the second host by taking the IP address of the searched host table item as the second host, wherein the second hosting flow table item is used for indicating that an ARP protocol message with the IP address of the sending end as the IP address of the second host is carried in an OpenFlow message and sent to an SDN controller so as to host all ARP protocol messages from the second host;
wherein the priority of the first and second pipe flow entries is higher than the priority of the monitoring flow entry.
In one embodiment, the managed module 46 is configured to send a first OpenFlow packet carrying a first gratuitous ARP packet and a second OpenFlow packet carrying a second gratuitous ARP packet to each switch;
the IP address of a sending end of the first gratuitous ARP message is the IP address of the first host, and the source MAC address and the MAC address of the sending end of the first gratuitous ARP message are the MAC addresses of a first port of the first host connected with the first switch;
the IP address of the sending end of the second gratuitous ARP message is the IP address of the second host, and the source MAC address and the MAC address of the sending end of the second gratuitous ARP message are the MAC addresses of a second port of the second host connected with the second switch;
the first OpenFlow packet includes: the identification of the first switch, the identification of the first port and the first port filtering and forwarding indication; the second OpenFlow packet includes: a second switch identification, an identification of a second port, and a second port filtering forwarding indication.
In one embodiment, hosting module 46 is further configured to: sending a third managed flow table entry and a fourth managed flow table to each switch; the third hosting flow entry indicates that an ARP response message with a target end IP address as the IP address of the first host is sent to the SDN controller so as to host the ARP response message sent to the first host;
the fourth hosting flow entry indicates that an ARP response message with the target end IP address as the IP address of the second host is sent to the SDN controller so as to host the ARP response message sent to the first host;
the priority of the third and fourth pipe flow entries is higher than the priority of the monitoring flow entry.
The hosting module 46 is further configured to: if an OpenFlow message carrying a managed ARP request message from a first host is received, modifying a source MAC address and a sending end MAC address into an MAC address of a first port of the first host connected with a first switch, carrying the modified managed ARP request message from the first host in the OpenFlow message and sending the modified managed ARP request message to each switch; and if an OpenFlow message carrying a hosting ARP response message from the first host is received, modifying the source MAC address and the sending end MAC address into the MAC address of the first port, carrying the modified hosting ARP response message from the first host in the OpenFlow message, and sending the modified hosting ARP response message from the first host to a switch connected with the host indicated by the target end IP address of the modified hosting ARP response message from the first host.
In one embodiment, hosting module 46 is further configured to: receiving an OpenFlow message carrying a managed ARP request message from a second host, modifying a source MAC address and a sending end MAC address into an MAC address of a second port of the second host connected with a second switch, carrying the modified managed ARP request message from the second host in the OpenFlow message and sending the modified managed ARP request message to each switch; receiving an OpenFlow message carrying a hosting ARP response message from the second host, modifying a source MAC address and a sending end MAC address into an MAC address of the second port, carrying the modified hosting ARP response message from the second host in the OpenFlow message, and sending the modified hosting ARP response message from the second host to a switch connected with the host indicated by a target end IP address of the modified hosting ARP response message from the second host.
In one embodiment, hosting module 46 is further configured to: receiving an OpenFlow message of a managed ARP response message which is loaded in the OpenFlow message and sent to a first host, modifying a target MAC address and a target end MAC address into a conflict MAC address from an MAC address of a first port of the first host connected with a first switch, loading the modified managed ARP response message sent to the first host in the OpenFlow message and sending the modified managed ARP response message to the first switch; receiving an OpenFlow message carrying a managed ARP response message sent to the second host, modifying the MAC address of a second port of the second host, which is connected with the target MAC address through the second switch, into a conflicted MAC address, carrying the modified managed ARP response message sent to the second host in the OpenFlow message, and sending the modified managed ARP response message to the second host to the second switch.
In one embodiment, hosting module 46 is further configured to: sending a first source address conversion list item and a first destination address conversion list item to a first switch; the first source address conversion list item is used for indicating that the data message of which the source MAC address is the conflict MAC address is modified into the data message of which the source MAC address is the MAC address of a first port of a first switch connected with a first host; the first destination address conversion table entry is used for indicating that the data message of which the destination MAC address is the MAC address of the first port is modified into the data message of which the destination MAC address is the conflict MAC address;
sending a second source address conversion list item and a second destination address conversion list item to a second switch; the second source address conversion list item is used for indicating that the data message of which the source MAC address is the conflict MAC address is modified into the data message of which the source MAC address is the MAC address of a second port of a second switch connected with a second host; and the second destination address conversion table entry is used for indicating that the data message of which the destination MAC address is the MAC address of the second port is modified into the data message of which the destination MAC address is the conflict MAC address.
In another schematic structural diagram of a device for processing a conflicting MAC address shown in fig. 5, the device further includes: the recording module 48 is configured to at least connect the sending end MAC address, the sending end IP address, the broadcast domain, the identifier of the first switch, and the first port of the first host to the first switch of the OpenFlow packet carrying the duplicated ARP protocol packet, and record a host table entry.
The implementation principle and the resulting technical effect of the processing apparatus for conflicting MAC addresses provided in the embodiments of the present disclosure are the same as those of the foregoing method embodiments, and for the sake of brief description, no mention may be made in the apparatus embodiments, and reference may be made to the corresponding contents in the foregoing method embodiments.
On the basis of the above embodiments, the present disclosure also provides a network device, including a processor and a memory, where the memory stores machine executable instructions capable of being executed by the processor, and the processor executes the machine executable instructions to implement the above processing method for conflicting MAC addresses.
In particular implementation, the disclosed embodiments also provide a machine-readable storage medium storing machine-executable instructions, which when invoked and executed by a processor, cause the processor to implement the above-mentioned method for handling conflicting MAC addresses.
Referring to fig. 6, an embodiment of the present disclosure further provides a schematic structural diagram of a network device, including: the processor 600, the memory 601, the bus 602 and the communication interface 603, wherein the processor 600, the communication interface 603 and the memory 601 are connected through the bus 602; the processor 600 is used to execute executable modules, such as computer programs, stored in the memory 601.
The Memory 601 may include a high-speed Random Access Memory (RAM) and may further include a non-volatile Memory (non-volatile Memory), such as at least one disk Memory. The communication connection between the network element of the system and at least one other network element is implemented through at least one communication interface 603 (which may be wired or wireless), and the internet, a wide area network, a local network, a metropolitan area network, and the like may be used.
Bus 602 can be an ISA bus, PCI bus, EISA bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one double-headed arrow is shown in FIG. 6, but that does not indicate only one bus or one type of bus.
The memory 601 is used for storing a program, the processor 600 executes the program after receiving an execution instruction, and the method executed by the processing apparatus for conflicting MAC addresses disclosed in any of the foregoing embodiments of the present disclosure may be applied to the processor 600, or implemented by the processor 600.
Processor 600 may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method may be performed by integrated logic circuits of hardware or instructions in the form of software in the processor 600. The Processor 600 may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; the device can also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA), or other Programmable logic devices, discrete Gate or transistor logic devices, discrete hardware components. The various methods, steps, and logic blocks disclosed in the embodiments of the present disclosure may be implemented or performed. A 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 connection with the embodiments of the present disclosure may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in the memory 601, and the processor 600 reads the information in the memory 601 and performs the steps of the above method in combination with the hardware thereof.
In the several embodiments provided in the present disclosure, it should be understood that the disclosed apparatus and method may be implemented in other manners. The apparatus embodiments described above are merely illustrative, and for example, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
In addition, each functional module or unit in each embodiment of the present disclosure may be integrated together to form an independent part, or each module may exist alone, or two or more modules may be integrated to form an independent part.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present disclosure may be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present disclosure. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
Finally, it should be noted that: the above embodiments are merely specific embodiments of the present disclosure, which are intended to illustrate rather than limit the technical solutions of the present disclosure, and the scope of the present disclosure is not limited thereto, and although the present disclosure is described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: any person skilled in the art can modify or easily conceive of the technical solutions described in the foregoing embodiments or equivalent technical features thereof within the technical scope of the present disclosure; such modifications, changes or substitutions do not depart from the spirit and scope of the embodiments of the present disclosure, and should be construed as being included therein. Therefore, the protection scope of the present disclosure shall be subject to the protection scope of the claims.

Claims (17)

1. A processing method of a conflicting MAC address is applied to an SDN controller, and is characterized by comprising the following steps:
sending a monitoring flow table entry to each switch, wherein the monitoring flow table entry is used for indicating that the received ARP protocol message is copied, carrying the copied ARP protocol message in an OpenFlow message and sending the OpenFlow message to the SDN controller;
receiving an OpenFlow message carrying a duplicated ARP protocol message, performing searching according to a sending end MAC address, determining that the IP address of a searched host table entry is different from the sending end IP address of the duplicated ARP protocol message, and determining that the sending end MAC address of the duplicated ARP protocol message and the MAC address of the searched host table entry are conflict MAC addresses;
sending a first pipe-supporting flow table item to a first switch connected with the first host by taking the host indicated by the IP address of the sending end copying the ARP protocol message as the first host, wherein the first pipe-supporting flow table item is used for indicating that the ARP protocol message with the IP address of the sending end being the IP address of the first host is carried in an OpenFlow message and sent to the SDN controller so as to host all the ARP protocol messages from the first host;
sending a second hosting flow table item to a second switch connected with a second host by taking the IP address of the found host table item as the second host, wherein the second hosting flow table item is used for indicating that an ARP protocol message with the IP address of a sending end as the IP address of the second host is borne in an OpenFlow message and sent to the SDN controller so as to host all ARP protocol messages from the second host;
the priority of the first and second pipe flow table entries is higher than the priority of the monitored flow table entry.
2. The method of claim 1, further comprising:
sending a first OpenFlow message carrying a first toll-free ARP message and a second OpenFlow message carrying a second toll-free ARP message to each switch;
the source MAC address and the sending end MAC address of the first toll free ARP message are the MAC addresses of a first port of the first host connected with the first switch;
the IP address of the sending end of the second gratuitous ARP message is the IP address of the second host, and the source MAC address and the MAC address of the sending end of the second gratuitous ARP message are the MAC addresses of a second port of the second host connected with the second switch;
the first OpenFlow packet includes: the identification of the first switch, the identification of the first port and a first port filtering and forwarding indication; the second OpenFlow packet includes: a second switch identification, an identification of the second port, and a second port filtering forwarding indication.
3. The method of claim 1, further comprising:
sending a third pipe flow table item and a fourth pipe flow table item to each switch; wherein the third hosting flow entry indicates that an ARP response packet whose target end IP address is the IP address of the first host is sent to the SDN controller to host the ARP response packet sent to the first host;
the fourth hosting flow entry indicates that an ARP response message with a target end IP address as the IP address of the second host is sent to the SDN controller so as to host the ARP response message sent to the first host;
the priority of the third and fourth pipe flow table entries is higher than the priority of the monitored flow table entry.
4. The method of claim 3, further comprising:
if an OpenFlow message carrying a managed ARP request message from the first host is received, modifying a source MAC address and a sending end MAC address into an MAC address of a first port of the first host connected with the first switch, carrying the modified managed ARP request message from the first host in the OpenFlow message and sending the modified managed ARP request message to each switch;
and if an OpenFlow message carrying a managed ARP response message from the first host is received, modifying a source MAC address and a sending end MAC address into the MAC address of the first port, carrying the modified managed ARP response message from the first host in the OpenFlow message, and sending the modified managed ARP response message to a switch connected with the host indicated by the target end IP address of the modified managed ARP response message from the first host.
5. The method of claim 3, further comprising:
if an OpenFlow message carrying a managed ARP request message from the second host is received, modifying a source MAC address and a sending end MAC address into an MAC address of a second port of the second host connected with the second switch, carrying the modified managed ARP request message from the second host in the OpenFlow message and sending the modified managed ARP request message to each switch;
and if an OpenFlow message carrying a hosting ARP response message from the second host is received, modifying a source MAC address and a sending end MAC address into the MAC address of the second port, carrying the modified hosting ARP response message from the second host in the OpenFlow message, and sending the modified hosting ARP response message from the second host to a switch connected with the host indicated by the target end IP address of the modified hosting ARP response message from the second host.
6. The method of claim 3, further comprising:
if an OpenFlow message which is loaded in an OpenFlow message and is sent to a hosting ARP response message of the first host is received, modifying a target MAC address and a target end MAC address into the conflict MAC address from an MAC address of a first port of the first host connected with the first switch, loading the modified hosting ARP response message which is sent to the first host in the OpenFlow message and sending the modified hosting ARP response message to the first host to the first switch;
and if an OpenFlow message carrying a managed ARP response message sent to the second host is received, modifying a target MAC address and a target end MAC address into the conflict MAC address from the MAC address of a second port of the second host connected with the second switch, carrying the modified managed ARP response message sent to the second host in the OpenFlow message and sending the modified managed ARP response message to the second switch.
7. The method of claim 1, further comprising:
sending a first source address conversion list item and a first destination address conversion list item to the first switch; the first source address conversion table entry is configured to instruct to modify a data packet whose source MAC address is the conflicting MAC address into a data packet whose source MAC address is an MAC address of a first port of the first host to which the first switch is connected; the first destination address conversion table entry is configured to instruct to modify a data packet whose destination MAC address is the MAC address of the first port into a data packet whose destination MAC address is the conflicting MAC address;
sending a second source address conversion list item and a second destination address conversion list item to the second switch; the second source address conversion table entry is configured to instruct to modify the data packet whose source MAC address is the conflicting MAC address into the data packet whose source MAC address is the MAC address of the second port where the second switch is connected to the second host; and the second destination address conversion table entry is used for indicating that the data message of which the destination MAC address is the MAC address of the second port is modified into the data message of which the destination MAC address is the conflicting MAC address.
8. The method of claim 1, further comprising: and at least connecting the transmitting end MAC address, the transmitting end IP address, the broadcast domain of the OpenFlow message carrying the copied ARP protocol message, the identifier of the first switch and the first port of the first host with the first switch, and recording a host table entry.
9. An apparatus for processing a conflicting MAC address, applied to an SDN controller, the apparatus comprising:
the system comprises a monitoring module, a SDN controller and a plurality of switches, wherein the monitoring module sends a monitoring flow table entry to each switch, and the monitoring flow table entry is used for indicating that a received ARP protocol message is copied and loading the copied ARP protocol message in an OpenFlow message and sending the copied ARP protocol message to the SDN controller;
the detection module is used for receiving the OpenFlow message carrying the duplicated ARP protocol message, searching according to the MAC address of the sending end, determining that the IP address of the searched host table entry is different from the IP address of the sending end of the duplicated ARP protocol message, and determining that the MAC address of the sending end of the duplicated ARP protocol message and the MAC address of the searched host table entry are conflict MAC addresses;
a hosting module, configured to send a first hosting flow entry to a first switch connected to the first host, by using a host indicated by a sending end IP address of the duplicated ARP protocol packet as a first host, to indicate that an ARP protocol packet whose sending end IP address is an IP address of the first host is carried in an OpenFlow packet and sent to the SDN controller, so as to host all ARP protocol packets from the first host; sending a second hosting flow table item to a second switch connected with a second host by taking the IP address of the found host table item as the second host, wherein the second hosting flow table item is used for indicating that an ARP protocol message with the IP address of a sending end as the IP address of the second host is borne in an OpenFlow message and sent to the SDN controller so as to host all ARP protocol messages from the second host;
the priority of the first and second pipe flow table entries is higher than the priority of the monitored flow table entry.
10. The apparatus of claim 9,
the trusteeship module is used for sending a first OpenFlow message carrying a first free ARP message and a second OpenFlow message carrying a second free ARP message to each switch;
the source MAC address and the sending end MAC address of the first toll free ARP message are the MAC addresses of a first port of the first host connected with the first switch;
the IP address of the sending end of the second gratuitous ARP message is the IP address of the second host, and the source MAC address and the MAC address of the sending end of the second gratuitous ARP message are the MAC addresses of a second port of the second host connected with the second switch;
the first OpenFlow packet includes: the identification of the first switch, the identification of the first port and a first port filtering and forwarding indication; the second OpenFlow packet includes: a second switch identification, an identification of the second port, and a second port filtering forwarding indication.
11. The apparatus of claim 9,
the hosting module is further to: sending a third pipe flow table item and a fourth pipe flow table item to each switch; wherein the content of the first and second substances,
the third hosting flow entry indicates that an ARP response message with a target end IP address as the IP address of the first host is sent to the SDN controller so as to host the ARP response message sent to the first host;
the fourth hosting flow entry indicates that an ARP response message with a target end IP address as the IP address of the second host is sent to the SDN controller so as to host the ARP response message sent to the first host;
the priority of the third and fourth pipe flow table entries is higher than the priority of the monitored flow table entry.
12. The apparatus of claim 11,
the hosting module is further to: if an OpenFlow message carrying a managed ARP request message from the first host is received, modifying a source MAC address and a sending end MAC address into an MAC address of a first port of the first host connected with the first switch, carrying the modified managed ARP request message from the first host in the OpenFlow message and sending the modified managed ARP request message to each switch; and if an OpenFlow message carrying a managed ARP response message from the first host is received, modifying a source MAC address and a sending end MAC address into the MAC address of the first port, carrying the modified managed ARP response message from the first host in the OpenFlow message, and sending the modified managed ARP response message to a switch connected with the host indicated by the target end IP address of the modified managed ARP response message from the first host.
13. The apparatus of claim 11, wherein the hosting module is further configured to: receiving an OpenFlow message carrying a managed ARP request message from the second host, modifying a source MAC address and a sending end MAC address into an MAC address of a second port of the second host connected with the second switch, carrying the modified managed ARP request message from the second host in the OpenFlow message and sending the modified managed ARP request message to each switch; receiving an OpenFlow message carrying a managed ARP response message from the second host, modifying a source MAC address and a sending end MAC address into an MAC address of the second port, carrying the modified managed ARP response message from the second host in the OpenFlow message, and sending the modified managed ARP response message to a switch connected with the host indicated by a target end IP address of the modified managed ARP response message from the second host.
14. The apparatus of claim 11, wherein the hosting module is further configured to: receiving an OpenFlow message of a managed ARP response message which is carried in the OpenFlow message and sent to the first host, modifying a target MAC address and a target MAC address into the conflict MAC address from an MAC address of a first port of the first host connected with the first switch, carrying the modified managed ARP response message sent to the first host in the OpenFlow message and sending the modified managed ARP response message to the first switch; receiving an OpenFlow message carrying a managed ARP response message sent to the second host, modifying a destination MAC address and a target MAC address from an MAC address of a second port of the second host connected with the second switch to the conflict MAC address, carrying the modified managed ARP response message sent to the second host in the OpenFlow message, and sending the modified managed ARP response message to the second switch.
15. The apparatus of claim 9, wherein the hosting module is further configured to: sending a first source address conversion list item and a first destination address conversion list item to the first switch; the first source address conversion table entry is configured to instruct to modify a data packet whose source MAC address is the conflicting MAC address into a data packet whose source MAC address is an MAC address of a first port of the first host to which the first switch is connected; the first destination address conversion table entry is configured to instruct to modify a data packet whose destination MAC address is the MAC address of the first port into a data packet whose destination MAC address is the conflicting MAC address;
sending a second source address conversion list item and a second destination address conversion list item to the second switch; the second source address conversion table entry is configured to instruct to modify the data packet whose source MAC address is the conflicting MAC address into the data packet whose source MAC address is the MAC address of the second port where the second switch is connected to the second host; and the second destination address conversion table entry is used for indicating that the data message of which the destination MAC address is the MAC address of the second port is modified into the data message of which the destination MAC address is the conflicting MAC address.
16. The apparatus according to claim 9, further comprising a recording module, configured to record a host table entry at least by using a sending-end MAC address, a sending-end IP address, a broadcast domain, an identifier of the first switch, and a first port of the first switch, where the first switch is connected to the first host, of the OpenFlow packet carrying the duplicated ARP protocol packet.
17. A machine-readable storage medium having stored thereon machine-executable instructions which, when invoked and executed by a processor, cause the processor to implement the method of any of claims 1 to 8.
CN201810424372.5A 2018-05-04 2018-05-04 Method and device for processing conflicting MAC addresses and machine-readable storage medium Active CN108810183B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810424372.5A CN108810183B (en) 2018-05-04 2018-05-04 Method and device for processing conflicting MAC addresses and machine-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810424372.5A CN108810183B (en) 2018-05-04 2018-05-04 Method and device for processing conflicting MAC addresses and machine-readable storage medium

Publications (2)

Publication Number Publication Date
CN108810183A CN108810183A (en) 2018-11-13
CN108810183B true CN108810183B (en) 2021-09-07

Family

ID=64091007

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810424372.5A Active CN108810183B (en) 2018-05-04 2018-05-04 Method and device for processing conflicting MAC addresses and machine-readable storage medium

Country Status (1)

Country Link
CN (1) CN108810183B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111600811A (en) * 2020-04-14 2020-08-28 新华三信息安全技术有限公司 Message processing method and device
CN112003965B (en) * 2020-09-15 2021-07-27 中标慧安信息技术股份有限公司 Method for detecting IP conflict of equipment in local area network based on ARP protocol
CN114301865B (en) * 2021-12-29 2023-07-21 迈普通信技术股份有限公司 Table entry management method, apparatus, network device and computer readable storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320267A (en) * 2014-10-29 2015-01-28 武汉绿色网络信息服务有限责任公司 ARP broadcast restraining system and method for achieving VxLAN based on SDN framework
CN104767685A (en) * 2015-04-17 2015-07-08 杭州华三通信技术有限公司 Flow forwarding method and device
CN104821923A (en) * 2015-05-15 2015-08-05 杭州华三通信技术有限公司 Method and device for transmitting upper-supply controller protocol message in SDN network
CN106302860A (en) * 2016-09-14 2017-01-04 上海斐讯数据通信技术有限公司 The methods, devices and systems that a kind of free address resolution protocol based on SDN sends
CN107623757A (en) * 2017-10-27 2018-01-23 新华三技术有限公司 Entry updating method and apparatus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9225641B2 (en) * 2013-10-30 2015-12-29 Globalfoundries Inc. Communication between hetrogenous networks
US10243916B2 (en) * 2016-04-07 2019-03-26 Cisco Technology, Inc. Control plane based technique for handling multi-destination traffic in overlay networks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320267A (en) * 2014-10-29 2015-01-28 武汉绿色网络信息服务有限责任公司 ARP broadcast restraining system and method for achieving VxLAN based on SDN framework
CN104767685A (en) * 2015-04-17 2015-07-08 杭州华三通信技术有限公司 Flow forwarding method and device
CN104821923A (en) * 2015-05-15 2015-08-05 杭州华三通信技术有限公司 Method and device for transmitting upper-supply controller protocol message in SDN network
CN106302860A (en) * 2016-09-14 2017-01-04 上海斐讯数据通信技术有限公司 The methods, devices and systems that a kind of free address resolution protocol based on SDN sends
CN107623757A (en) * 2017-10-27 2018-01-23 新华三技术有限公司 Entry updating method and apparatus

Also Published As

Publication number Publication date
CN108810183A (en) 2018-11-13

Similar Documents

Publication Publication Date Title
US10191758B2 (en) Directing data traffic between intra-server virtual machines
CN109347675B (en) Server configuration method and device and electronic equipment
CN107547349B (en) Virtual machine migration method and device
EP3239984B1 (en) Methods and systems for analyzing record and usage in post package repair
JP5521620B2 (en) Relay device, virtual machine system, and relay method
CN102355369B (en) Virtual clustered system as well as processing method and processing device thereof
US10257152B2 (en) Suppressing ARP broadcasting in a hypervisor
US8792502B2 (en) Duplicate MAC address detection
CN111682927B (en) Message synchronization method, device, equipment and medium based on MLAG environment
CN108810183B (en) Method and device for processing conflicting MAC addresses and machine-readable storage medium
CN101924693A (en) Be used for method and system in migrating processes between virtual machines
CN113326228B (en) Message forwarding method, device and equipment based on remote direct data storage
EP3021223B1 (en) Method for enhancing memory fault tolerance
US11036535B2 (en) Data storage method and apparatus
CN110858821B (en) Container communication method and device
WO2023011254A1 (en) Remote direct data storage-based live migration method and apparatus, and device
US10860375B1 (en) Singleton coordination in an actor-based system
US20210281443A1 (en) Systems and methods for preserving system contextual information in an encapsulated packet
CN112511401B (en) Network connection method, device, equipment and medium
CN111327509B (en) Information updating method and device
CN116170406A (en) System and method for implementing virtual machine to public network communication
CN111262771A (en) Virtual private cloud communication system, system configuration method and controller
US9348672B1 (en) Singleton coordination in an actor-based system
CN114172853A (en) Flow forwarding and bare computer server configuration method and device
WO2017049959A1 (en) Service processing method and equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant