CN110943928B - Method for synchronizing forwarding information states, controller, network forwarding device and storage medium - Google Patents

Method for synchronizing forwarding information states, controller, network forwarding device and storage medium Download PDF

Info

Publication number
CN110943928B
CN110943928B CN201811116215.4A CN201811116215A CN110943928B CN 110943928 B CN110943928 B CN 110943928B CN 201811116215 A CN201811116215 A CN 201811116215A CN 110943928 B CN110943928 B CN 110943928B
Authority
CN
China
Prior art keywords
flow table
network forwarding
controller
network
information
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
CN201811116215.4A
Other languages
Chinese (zh)
Other versions
CN110943928A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201811116215.4A priority Critical patent/CN110943928B/en
Publication of CN110943928A publication Critical patent/CN110943928A/en
Application granted granted Critical
Publication of CN110943928B publication Critical patent/CN110943928B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/021Ensuring consistency of routing table updates, e.g. by using epoch numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery

Landscapes

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

Abstract

The embodiment of the invention discloses a method for synchronizing forwarding information states, a controller, network forwarding equipment and a storage medium, wherein the method comprises the following steps: when detecting that the network forwarding equipment recovers connection, issuing a state synchronization request to the network forwarding equipment, and informing the network forwarding equipment to reset the overtime aging time of the local flow table group table of the network forwarding equipment; when the overtime aging time is successfully set, transmitting static flow table set information to the network forwarding equipment to indicate the network forwarding equipment to synchronously update the local flow table set; when receiving a notification that the network forwarding equipment deletes the overtime aged dynamic flow table group table, judging whether the flow table group table needs to be maintained according to the change of the network resource state; if not, receiving the flow table group table deletion action of the network forwarding equipment; and if so, the flow table group table is sent to the network forwarding equipment again. The embodiment of the invention reduces the information interaction amount between the controller and the network equipment, improves the reliability of the SDN network, and can keep the continuity of the service.

Description

Method for synchronizing forwarding information states, controller, network forwarding device and storage medium
Technical Field
The present invention relates to the field of network communication technologies, and in particular, to a method for synchronizing forwarding information states, a controller, a network forwarding device, and a storage medium.
Background
Nowadays, network technologies in the world are changing day by day, and traditional Internet based on technologies such as transmission Control Protocol/Internet Protocol (TCP/IP), Open Shortest Path First/Border Gateway Protocol (OSPF/BGP) and the like all encounter more and more problems and challenges in many aspects such as service quality experience, service deployment, service adaptation and the like. Software Defined Networking (SDN) proposed by stanford university proposes that a centralized controller realizes user customization of forwarding plane devices, and provides a programmable Application Programming Interface (API) for users to realize flexible control of Network behaviors, and starts to become an important technical direction for next generation internet development.
The SDN is a novel network innovation framework of a network and is an implementation mode of network virtualization, and a core technology of the SDN adopts a centralized SDN controller to control the network through an OpenFlow protocol, so that a control plane and a data plane of network equipment are separated, and the flexible control of network flow is realized. Under the SDN architecture, an SDN controller may need to maintain OpenFlow connection with hundreds or thousands of network forwarding devices, and then due to the restart of the controller, the restart of a switch failure of a control plane networking, and the like, there is a scenario where connection is interrupted between the controller and the network forwarding devices. At this time, state synchronization is required between the controller and the network forwarding device. For example, the controller needs to verify the valid flow table set table on the network forwarding device, and delete the invalid flow table set table on the network forwarding device. And ensuring that the software/hardware forwarding function on the network forwarding equipment is not interfered by the connection interruption of the control plane, namely ensuring the continuity of the service. At present, there are several methods for synchronizing the state between the controller and the network forwarding device:
in the first method, when the network forwarding device recovers the OpenFlow connection, the controller queries a current forwarding state of the network forwarding device (for example, using an OpenFlow flow table query message), and then the controller compares a locally stored state with a state difference of a flow table group table of the network forwarding device to perform state synchronization and repair on the flow table and the group table of the network forwarding device. The method requires the controller to collect a large number of forwarding surface states through OpenFlow flow table query messages, and performs complex comparison calculation to check state differences, and puts high requirements on the performance of the controller and the OpenFlow channel.
In the second method, when the network forwarding device recovers the OpenFlow connection, the controller directly clears all forwarding entries on the forwarding device, and re-issues the flow table group table information to the network forwarding device according to the instant state locally stored by the controller. The method regenerates a large number of flow table group tables in a clear state in the upper period of the network forwarding device, and generally, the processing capacity of the network forwarding device is hard to bear, and service processing can be interrupted in the process.
In the third method, when the network forwarding device recovers the OpenFlow connection, the controller issues a state synchronization initialization flag to the network forwarding device, and the controller receives the synchronization initialization flag to tag all forwarding flow group tables. And the controller re-issues all the flow table group tables to the network forwarding equipment, and for the flow table group tables re-issued by the controller, the network forwarding equipment deletes the label and does not actually update the flow table of the forwarding execution unit. And after the controller sends all the flow table group tables again, sending a state synchronization completion mark to the network forwarding equipment, and deleting the flow table group table still with the label after the network forwarding equipment receives the synchronization completion mark. The method needs a long interaction process, the controller still needs to re-issue all the flow table group tables to the network forwarding device, the network forwarding device needs to perform a large amount of comparison check and processing, and a high requirement is put forward on the control plane of the network forwarding device.
Summarizing, in the prior art, a large amount of information interaction is required to be performed in a short time for state recovery after a controller and a network forwarding device are disconnected, and the network forwarding device updates a forwarding flow table to influence service continuity.
Disclosure of Invention
In view of this, an embodiment of the present invention provides a forwarding information state synchronization method, a controller, a network forwarding device, and a storage medium, so as to solve the problem that a large amount of information interaction is required in a short time for state recovery after a controller and a network forwarding device are disconnected, and service continuity is affected by updating a forwarding flow table by the network forwarding device.
The technical scheme adopted by the embodiment of the invention for solving the technical problems is as follows:
in a first aspect, an embodiment of the present invention provides a method for synchronizing forwarding information states, where the method is applied to a controller, and the method includes:
when detecting that the network forwarding equipment recovers connection, sending a state synchronization request to the network forwarding equipment, and informing the network forwarding equipment to reset the overtime aging time of a local flow table group table of the network forwarding equipment;
when the overtime aging time of the local flow table is successfully set, static flow table set information is issued to the network forwarding equipment, and the static flow table set information is used for indicating the network forwarding equipment to synchronously update the local flow table set;
when a notification message that the network forwarding equipment executes a deletion action on the dynamic flow table group table aged overtime is received, judging whether the dynamic flow table group table needs to be maintained or not according to the change of the network resource state;
if the flow table group table does not need to be maintained, the flow table group table deletion behavior of the network forwarding equipment is accepted; alternatively, the first and second electrodes may be,
and if the dynamic flow table needs to be maintained, the dynamic flow table is issued to the network forwarding equipment again, and the dynamic flow table is used for indicating the network forwarding equipment to add a local flow table again.
In a second aspect, an embodiment of the present invention provides a method for synchronizing forwarding information states, which is applied to a network forwarding device, and the method includes:
when a state synchronization request issued by a controller is received, setting the overtime aging time of a local flow table group table of the network forwarding equipment again according to the overtime aging time parameter issued by the controller;
when static flow table set table information issued by the controller is received, updating the local flow table set table information according to the static flow table set table information;
when the local flow table group table is overtime-processed, deleting the overtime aged dynamic flow table group table from the network forwarding equipment, and reporting a notification message of deleting the dynamic flow table group table to the controller;
the notification message is used for indicating the controller to judge whether the dynamic flow table group table needs to be maintained according to the change of the network resource state; when the dynamic flow table needs to be maintained, the dynamic flow table group table is issued to the network forwarding equipment again; and when the maintenance is not needed, accepting the flow table group table deletion action of the network forwarding equipment.
In a third aspect, an embodiment of the present invention provides a controller, where the controller includes a memory, a processor, and a computer program stored on the memory and executable on the processor, and when the computer program is executed by the processor, the controller implements the steps of the forwarding information state synchronization method according to the first aspect.
In a fourth aspect, an embodiment of the present invention provides a network forwarding device, where the network forwarding device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and when the computer program is executed by the processor, the steps of the forwarding information state synchronization method according to the second aspect are implemented.
In a fifth aspect, an embodiment of the present invention provides a storage medium, where the storage medium stores a computer program, and the computer program, when executed by a processor, implements the step of synchronizing forwarding information states according to the first aspect or the second aspect.
In the forwarding information state synchronization method, controller, network forwarding device and storage medium provided by the embodiment of the present invention, after the controller and the network forwarding equipment are broken and recovered, the flow table group table of the network forwarding equipment is temporarily kept by resetting the overtime aging time of the flow table group table on the network forwarding equipment so as to maintain the continuity of the service, and then the final consistency of the forwarding information state between the controller and the network forwarding equipment is realized by combining the situation that the controller actively re-issues part of the static flow table group table and the network forwarding equipment triggers the recovery of part of the dynamic flow table group table through overtime reporting, therefore, when the controller and the network forwarding device are broken and recovered, the information interaction amount between the controller and the network device is reduced, the processing load of the controller and the network forwarding device is reduced, the reliability of the SDN is improved, and the continuity of the service is kept.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the embodiments or the prior art descriptions will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Figure 1 is a schematic diagram of an SDN networking environment to which embodiments of the invention relate;
fig. 2 is a schematic flow chart illustrating an implementation of a method for synchronizing forwarding information states according to an embodiment of the present invention;
fig. 3 is a schematic flow chart illustrating an implementation of a forwarding information state synchronization method according to a second embodiment of the present invention;
fig. 4 is a schematic structural diagram of a controller according to a third embodiment of the present invention;
fig. 5 is a schematic structural diagram of a network forwarding device according to a fourth embodiment of the present invention.
Detailed Description
In order to make the technical problems, technical solutions and advantageous effects to be solved by the present invention clearer and clearer, the present invention is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Fig. 1 is a schematic diagram of an SDN networking environment according to an embodiment of the present invention. Only the portions related to the present embodiment are shown for convenience of explanation.
Referring to fig. 1, an SDN network includes at least one controller 101, a forwarding plane network formed by a plurality of interconnected network forwarding devices 102. In an SDN network, the controller 101 is responsible for managing the network formed by the network forwarding devices 102 and the user hosts, including network resource management and control of the network forwarding devices 102. Including network forwarding device 102, network topology, user hosts, etc. The control of the network forwarding device 102 refers to that the controller 101 selects a forwarding path for a host service packet reported by the network forwarding device 102, and issues a forwarding flow table group table to the relevant network forwarding device 102, so as to help the user host complete service exchange.
When the network forwarding device 102 is powered on, a reliable OpenFlow connection is actively established between the network forwarding device 102 and the controller 101 node, and operations such as related security verification, basic information reporting, network forwarding device 102 configuration and the like are performed. The network forwarding device 102 is completely controlled by the controller 101, processes the received data packet according to the forwarding flow table set issued by the controller 101, and reports the data packet which is not hit by searching the local flow table set to the controller 101 for processing.
In commercial operations, when a link is abnormally interrupted between the controller 101 and one or more network forwarding devices 102, it is necessary to ensure the continuity of the traffic. During the abnormal link breaking period, the forwarding between the network forwarding devices 102 needs to be performed normally; when the link is restored, forwarding information state synchronization is required between the controller 101 and the network forwarding device 102 to recover state differences generated by various events during the link disconnection, such as: adding/deleting ports of the network forwarding device 102 during the link breaking process requires adding/deleting a flow table group table to the network forwarding device 102; during the link loss period, the associated host on the network forwarding device 102 is newly added, offline, migrated, and the like, and the flow table group table is also added, deleted, or updated to the network forwarding device 102.
Further, the controller 101 includes an application, a network resource management unit, a device flow table management unit, and an OpenFlow protocol transceiver unit. Wherein: network applications, typically implemented as virtual data centers VDC, may receive or generate network-related configuration and routing policies, and may trigger controller 101 to generate a flow table to be sent to network forwarding device 102. And the network resource management unit is responsible for managing the SDN network topology/network equipment/port/host and providing a basis for issuing a communication service forwarding path for the flow table. The device flow table management unit is responsible for generating and adapting the flow table of the SDN network forwarding device 102, and stores and maintains the flow tables of various network forwarding devices 102 in the SDN network. The OpenFlow protocol transceiver unit is responsible for issuing the relevant OpenFlow configuration and flow table group table to the network forwarding device 102, and notifying OpenFlow messages such as response and flow table deletion of the network forwarding device 102 to the relevant controller 101 component.
Further, the network forwarding device 102 includes an OpenFlow agent unit, a flow table management unit, a flow table storage unit, a forwarding execution control unit, and a forwarding execution unit. Wherein: the OpenFlow proxy unit is an OpenFlow protocol processing unit residing on the network forwarding device 102 and is responsible for receiving and transmitting OpenFlow messages. And the flow table management unit is used for carrying out support and repeatability check on the flow table group table issued by the controller 101, and carrying out counter updating, timer maintenance, processing and the like in the life cycle of the flow table. The flow table storage unit is a local flow table group table storage unit of the network forwarding device 102. The forwarding execution unit comprises a control unit and an execution unit, wherein the control unit is responsible for converting the OpenFlow flow table into a local hardware forwarding execution logic interface for calling and issuing the local hardware forwarding execution logic interface to the software and hardware execution unit; the execution unit analyzes, specifically decapsulates and forwards the service packet received by the network forwarding device 102, and corresponds to a specific hardware forwarding board or a forwarding thread at software.
Based on the schematic diagram of the SDN networking environment, the following embodiments of the present invention are proposed.
Example one
Fig. 2 is a schematic flow chart illustrating an implementation process of a forwarding information state synchronization method according to an embodiment of the present invention. The execution subject of the method is the controller 101 shown in fig. 1. Referring to fig. 2, the forwarding information state synchronization method provided in this embodiment includes the following steps:
step S201, when detecting that the network forwarding device 102 recovers the connection, issuing a state synchronization request to the network forwarding device 102, and notifying the network forwarding device 102 to reset the timeout aging time setting for the local flow table group table of the network forwarding device 102.
In this embodiment, when detecting that the network forwarding device 102 recovers openflow connection, the controller 101 issues a state synchronization request to the network forwarding device 102, and notifies the network forwarding device 102 to perform timeout aging on the local flow table of the network forwarding device 102 again. The controller 101 notifies the network forwarding device 102 of performing timeout aging on the local flow table group table of the network forwarding device 102, and the controller 101 issues the timeout aging time parameter of the local flow table group table of the network forwarding device 102 to the network forwarding device 102. The controller 101 may carry the timeout aging time parameter in the status synchronization request and issue the status synchronization request to the network forwarding device 102, or may issue the timeout aging time parameter to the network forwarding device 102 after the status synchronization request is issued to the network forwarding device 102.
In this embodiment, the timeout aging time may be an idle timeout aging time. The idle timeout aging refers to deleting a flow table if no service forwarding is performed after the timeout aging time elapses after a flow table performs service packet forwarding last time. At this time, the flow table group table is deleted or updated, no influence is caused on the service, and the service interruption is not caused.
In this embodiment, the timeout aging time may also be a forced timeout aging time. The forced overtime aging refers to forced overtime of a flow table after the forced overtime aging time, and the flow table is deleted no matter whether service messages are forwarded or not. This situation may cause service disruption, but may focus on completing state synchronization of network forwarding device 102 within the forced timeout aging time.
In this embodiment, the timeout aging time may also set an idle timeout aging time and a forced timeout aging time at the same time.
Step S202, when detecting that the timeout aging time of the local flow table is successfully set, issuing static flow table set table information to the network forwarding device 102, where the static flow table set table information is used to instruct the network forwarding device 102 to perform synchronous update on the local flow table set table.
In this embodiment, when receiving response information of the state synchronization request returned by the network forwarding device 102 when the timeout aging time of the local flow table is successfully set, the controller 101 issues the static flow table information to the network forwarding device 102.
In this embodiment, the static flow table set table information issued by the controller 101 to the network forwarding device 102 refers to that the controller 101 may directly determine a flow table set table that needs to be issued to the network forwarding device 102, and includes but is not limited to: port table, MAC forwarding table/ARP table, routing table, group table, etc.
In this embodiment, the basis for the controller 101 to determine the static flow table set table may be a port resource actively reported by the network forwarding device 102, or a host resource bound to the network forwarding device 102 according to network planning and configuration.
In this embodiment, when receiving the static flow table set table information issued by the controller 101, the network forwarding device 102 may cancel the timeout setting for the static flow table set table issued by the controller 101 locally at the network forwarding device 102. Here, the network forwarding device 102 cancels the timeout setting for the static flow table sent by the controller 101, which means that the network forwarding device 102 receives the static flow table sent by the controller 101, and updates only the flow table recorded in the local storage unit and does not execute the update operation to the forwarding execution unit for the flow table set table which already exists in the forwarding execution unit and is inconsistent with the idle timeout time and the forced timeout time recorded locally. This operation does not cause service interruption.
When step S203 receives a notification message that the network forwarding device 102 executes a deletion action on the dynamic flow table group table aged overtime, it determines whether the dynamic flow table group table needs to be maintained according to a change in a network resource state; if the maintenance is not necessary, the process proceeds to step S204, and if the maintenance is necessary, the process proceeds to step S205.
In this embodiment, after the timeout aging time of the local flow table in the network forwarding device 102 is successfully set, the network device may perform timeout aging on the local flow table according to the set timeout aging time, perform a deletion action on the timeout flow table, and notify the controller 101. Here, the network forwarding device 102 determines that the flow table group table is overtime, and may be triggered by an idle timeout timer, or triggered by a forced timeout timer, or triggered by the fact that one of two timers reaches timeout aging time first when the two timers exist at the same time.
In this embodiment, before issuing the state synchronization request to the network forwarding device 102 and notifying the network forwarding device 102 to reset the timeout aging time setting on the local flow table group table of the network forwarding device 102, the method further includes:
and issuing configuration information to the network forwarding device 102, where the configuration information needs to be actively notified to the controller 101 for deleting the dynamic flow table group table, and the configuration information is used to instruct the network forwarding device 102 to execute corresponding configuration operation.
Here, after detecting that the network forwarding device 102 recovers the connection, the controller 101 may issue an up-send flow table deletion to the network forwarding device 102 through an OpenFlow protocol message, where the behavior of the controller 101 needs to be actively notified. For some network forwarding devices 102, it may also be configured in other ways to require the network forwarding devices 102 to send a flow table group table deletion notification to the controller 101, and some network forwarding devices 102 may send a flow table group table deletion message to the controller 101 by default.
In this embodiment, the controller 101 determines whether the dynamic flow table group table needs to be maintained according to a change of a network resource state. For example, during an abnormal link failure, a port of the network forwarding device 102 is closed or deleted, and a corresponding port table needs to be deleted and is no longer maintained; during the link breaking period, the host connected to the network forwarding device 102 is offline and migrated, and the corresponding host MAC table and ARP table need to be deleted and are not maintained any more; during a link outage, a network application on the controller 101 adds or deletes a routing entry, and may also need to add, delete, or update a flow table set table to the network forwarding device 102.
And step S204, receiving the flow table group table deletion action of the network forwarding equipment.
In this embodiment, when the dynamic flow table group table deleted by the network forwarding device does not need to be maintained, the controller receives the deletion action and does not process the deletion action when receiving the notification message of deleting the flow table group table; or, detecting whether the group table list exists in the local record of the controller 101, and if so, clearing the dynamic flow table group table locally recorded by the controller 101.
Step S205, re-issue the dynamic flow table to the network forwarding device 102, where the dynamic flow table is used to instruct the network forwarding device 102 to add a local flow table again.
In this embodiment, the notification message for deleting the flow table group table carries the reason for deleting the flow table group table, and the controller 101 may determine, by combining with the deletion reason field carried in the notification message, that the overtime aging of the timer is the active aging of the network forwarding device 102 in the state synchronization process. And then, judging whether the deleted flow table group table needs to be restored or not by combining the change of the local network resource state, such as: whether a port corresponding to the port table exists, whether a host corresponding to the MAC table/ARP table is still on the same port of the network forwarding device 102, whether a routing entry corresponding to the routing table is still valid, and the like. And for the flow tables corresponding to the valid port, host and route, re-issuing the flow tables to the network forwarding device 102, otherwise deleting the flow table record locally responded by the controller 101, and finally synchronizing the states of forwarding information in the controller 101 and the network forwarding device 102.
As can be seen from the above, in the forwarding information state synchronization method provided in the embodiment of the present invention, after the controller 101 and the network forwarding device 102 are broken and recovered, the flow table group table of the network forwarding device 102 is temporarily reserved by resetting the overtime aging time of the flow table group table on the network forwarding device 102 to maintain the continuity of the service, and then the recovery of a part of static flow table group table is actively and repeatedly issued by combining the controller 101 and the recovery of a part of dynamic flow table group table is triggered by the network forwarding device 102 through overtime reporting, so that the final consistency of the forwarding information state between the controller 101 and the network forwarding device 102 is realized, therefore, when the controller 101 and the network forwarding device 102 are recovered from the broken link, the information interaction amount between the controller 101 and the network device is reduced, the processing load of the controller 101 and the network forwarding device 102 is reduced, the reliability of the SDN network is improved, and the continuity of the service is maintained.
Example two
Fig. 3 is a schematic flow chart illustrating an implementation of a forwarding information state synchronization method according to a second embodiment of the present invention. The execution subject of the method is the network forwarding device 102 shown in fig. 1. Referring to fig. 3, the forwarding information state synchronization method provided in this embodiment may include the following steps:
step S301, when receiving a state synchronization request issued by the controller 101, resetting the timeout aging time of the local flow table group table of the network forwarding device 102 according to the timeout aging time parameter issued by the controller 101.
In this embodiment, the time-out aging time parameter may be carried in the state synchronization request, or may be sent to the network forwarding device 102 by the controller 101 in the form of a time-out aging time setting instruction alone within a preset time after the state synchronization request is sent. When receiving the timeout aging time setting parameter sent by the controller 101, the network state device resets the timeout aging time for all flow tables and group tables in the local storage unit of the network forwarding device 102, and sets the timeout aging time for the flow table group table in the local storage unit of the network forwarding device 102 to a specified value. Wherein the setting the timeout aging time for the local flow table group table of the network forwarding device 102 includes: performing idle timeout aging time and/or forced timeout aging time setting on a local flow table group table of the network forwarding device 102.
After the timeout aging time setting of the local flow table group table is completed, state synchronization request response information is returned to the controller 101;
the state synchronization request response information is used to indicate that the controller 101 successfully sets the timeout aging time of the local flow table group table of the network forwarding device 102.
In this embodiment, after receiving the status synchronization request response message, the controller 101 synchronizes the static flow table to the network forwarding device 102, and issues the static flow table information to the network forwarding device 102. In this embodiment, the static flow table sent by the controller 101 to the network forwarding device 102 may not set the timeout aging time, or the timeout aging time parameter is set to zero. The timeout aging time is set to zero, which means that the flow table is not aged, unless the controller 101 actively issues a flow table group table deletion action, the network forwarding device 102 will delete the corresponding flow table group tables in the local storage unit and the forwarding execution unit.
Step S302, when receiving the static flow table set table information issued by the controller 101, updating the local flow table set table information according to the static flow table set table information.
In this embodiment, step S302 specifically includes:
when receiving the static flow table set table information issued by the controller 101, only updating the flow table set table recorded in the local storage unit of the network forwarding device 102 and canceling the timeout processing for the flow table set table in which the local forwarding execution unit in the network forwarding device 102 exists and the timeout aging time parameter is inconsistent with the local record in the network forwarding device 102, and not executing the updating operation to the forwarding execution unit.
Step S303, when the local flow table is overtime-processed, deleting the dynamic flow table that is overtime-aged from the network forwarding device 102, and reporting a notification message of deleting the dynamic flow table to the controller 101; the notification message is used to instruct the controller 101 to determine whether to maintain the dynamic flow table set table according to a change in a network resource state; when the dynamic flow table needs to be maintained, the dynamic flow table group table is issued to the network forwarding device 102 again; and when the maintenance is not needed, accepting the flow table group table deletion action of the network forwarding equipment.
In this embodiment, when the network forwarding device 102 recovers the OpenFlow connection, after the setting of the timeout aging time of the local flow table group table is completed, the network forwarding device starts to maintain the lifetime of the local flow table group table according to an OpenFlow protocol, where the OpenFlow protocol supports timeout aging processing of idle timeout aging time and forced timeout aging time. When the network forwarding device 102 recovers the OpenFlow connection, the controller 101 needs to select to issue at least one timeout aging time parameter to the network forwarding device 102 as a nonzero value.
According to the OpenFlow protocol, for a flow table whose idle timeout time is not zero and whose forced timeout time is zero, the network forwarding device 102 ages and deletes the flow table if no message is received within the idle timeout time; for the flow table with the forced timeout time being zero and the idle timeout time not being zero, the flow table must be aged and deleted after the forced timeout time is issued; for the flow table with the idle timeout time and the forced timeout time not being zero, the flow table can be aged and deleted when one timer arrives.
Optionally, in this embodiment, before step S301, the method may further include:
and when receiving configuration information which needs to be actively notified to the controller 101 and is deleted from the dynamic flow table set table issued by the controller 101, executing corresponding configuration operation according to the configuration information.
In this embodiment, after detecting that the network forwarding device 102 recovers the connection, the controller 101 may issue, to the network forwarding device 102, a behavior that the controller 101 needs to be actively notified of the deletion of the flow table group table through an OpenFlow protocol message, and when receiving the configuration information, the network forwarding device 102 executes a corresponding configuration operation. Of course, for some network forwarding devices 102, it may also be required to send a flow table deletion notification on the network forwarding device 102 to the controller 101 through other configuration manners, and some network forwarding devices 102 may send a flow table group table deletion message to the controller 101 by default. Further, when sending the flow table deletion notification message to the controller 101, the network forwarding device 102 adds a flow table deletion reason field to the flow table deletion notification message, and informs the controller 101 of which timer is aged due to deletion of the flow table.
In this embodiment, after receiving the notification message of deleting the dynamic flow table group table, the controller 101 may determine, by combining with the deletion reason field in the notification message, active aging of the dynamic flow table group table in the network forwarding device 102 in the state synchronization process. Then, it is determined whether the dynamic flow table group table deleted by the network forwarding device 102 needs to be restored in combination with the change of the network resource state during the link failure, for example, whether a port corresponding to the port table exists, whether a host corresponding to the MAC table/ARP table is still on the same port of the network forwarding device 102, whether a routing entry corresponding to the routing table is still valid, and the like. And for the flow tables corresponding to the valid port, host and route, re-issuing the flow tables to the network forwarding device 102, otherwise deleting the flow table record locally responded by the controller 101, and finally synchronizing the states of the controller 101 and the network forwarding device 102.
As can be seen from the above, the forwarding information state synchronization method provided in this embodiment can also reduce the information interaction amount between the controller 101 and the network forwarding device 102, reduce the processing load of the controller 101 and the network forwarding device 102, improve the reliability of the SDN network, and maintain the continuity of the service when the controller 101 and the network forwarding device 102 are broken and recovered.
EXAMPLE III
Fig. 4 is a schematic structural diagram of the controller 101 according to the third embodiment of the present invention. Only the portions related to the present embodiment are shown for convenience of explanation.
Referring to fig. 4, the controller 101 provided in this embodiment includes a memory 1011, a processor 1012, and a computer program 1013 stored on the memory 1011 and operable on the processor 1012, wherein when the computer program 1013 is executed by the processor 1012, the steps of the forwarding information state synchronization method according to the first embodiment are implemented.
The controller 101 of the embodiment of the present invention and the forwarding information state synchronization method of the first embodiment belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment, and technical features in the method embodiment are correspondingly applicable in the apparatus embodiment, which is not described herein again.
It will be understood by those of ordinary skill in the art that all or some of the steps of the disclosed methods of the present embodiments may be implemented as software, firmware, hardware, or any suitable combination thereof.
Example four
Fig. 5 is a schematic structural diagram of a network forwarding device 102 according to a fourth embodiment of the present invention. Only the portions related to the present embodiment are shown for convenience of explanation.
Referring to fig. 5, the network forwarding device 102 provided in this embodiment includes a memory 1021, a processor 1022, and a computer program 1023 stored in the memory 1021 and capable of running on the processor 1022, where when the computer program 1023 is executed by the processor 1022, the steps of the forwarding information state synchronization method according to the second embodiment are implemented.
The network forwarding device 102 of the embodiment of the present invention and the forwarding information state synchronization method described in the second embodiment belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment, and technical features in the method embodiment are all correspondingly applicable in the device embodiment, and are not described herein again.
It will be understood by those of ordinary skill in the art that all or some of the steps of the disclosed methods of the present embodiments may be implemented as software, firmware, hardware, or any suitable combination thereof.
EXAMPLE five
An embodiment five of the present invention provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the step of synchronizing forwarding information states as described in the above embodiment one or embodiment two is implemented.
The computer-readable storage medium of the embodiment of the present invention and the method of the first embodiment or the second embodiment belong to the same concept, and specific implementation processes thereof are described in detail in the corresponding method embodiments, and technical features in the method embodiments are correspondingly applicable in the computer-readable storage medium embodiments, which are not described herein again.
It will be understood by those of ordinary skill in the art that all or some of the steps of the methods, systems, functional modules/units in the devices disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof.
In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be performed by several physical components in cooperation. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). The term computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data, as is well known to those of ordinary skill in the art. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by a computer. In addition, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media as known to those skilled in the art.
The preferred embodiments of the present invention have been described above with reference to the accompanying drawings, and are not to be construed as limiting the scope of the invention. Any modifications, equivalents and improvements which may occur to those skilled in the art without departing from the scope and spirit of the present invention are intended to be within the scope of the claims.

Claims (12)

1. A method for synchronizing forwarding information states is applied to a controller, and is characterized in that the method for synchronizing the forwarding information states comprises the following steps:
when detecting that the network forwarding equipment recovers connection, sending a state synchronization request to the network forwarding equipment, and informing the network forwarding equipment to reset the overtime aging time of a local flow table group table of the network forwarding equipment;
when the overtime aging time of the local flow table is successfully set, static flow table set information is issued to the network forwarding equipment, and the static flow table set information is used for indicating the network forwarding equipment to synchronously update the local flow table set;
when a notification message that the network forwarding equipment executes a deletion action on the dynamic flow table group table aged overtime is received, judging whether the dynamic flow table group table needs to be maintained or not according to the change of the network resource state;
if the flow table group table does not need to be maintained, the flow table group table deletion behavior of the network forwarding equipment is accepted; alternatively, the first and second electrodes may be,
and if the dynamic flow table needs to be maintained, the dynamic flow table is issued to the network forwarding equipment again, and the dynamic flow table is used for indicating the network forwarding equipment to add a local flow table again.
2. The method for synchronizing forwarding information states according to claim 1, wherein before issuing a state synchronization request to the network forwarding device to notify the network forwarding device to reset the timeout aging time for its local flow table group, the method further comprises:
and sending configuration information of dynamic flow table group table deletion needing to be actively notified to the controller to the network forwarding equipment, wherein the configuration information is used for indicating the network forwarding equipment to execute corresponding configuration operation.
3. The forwarding information state synchronization method according to claim 1, wherein when detecting that the timeout aging time setting of the flow table group table in the network forwarding device is successful, issuing static flow table group table information to the network forwarding device;
and when response information of the state synchronization request returned by the network forwarding equipment when the overtime aging time of the local flow table is successfully set is received, issuing the static flow table set table information to the network forwarding equipment.
4. The forwarding information state synchronization method of claim 1, wherein the timeout aging time comprises an idle timeout aging time and/or a forced timeout aging time.
5. A method for synchronizing forwarding information states is applied to network forwarding equipment, and is characterized in that the method for synchronizing forwarding information states comprises the following steps:
when a state synchronization request issued by a controller is received, setting the overtime aging time of a local flow table group table of the network forwarding equipment again according to the overtime aging time parameter issued by the controller;
when static flow table set table information issued by the controller is received, updating the local flow table set table information according to the static flow table set table information;
when the local flow table group table is overtime-processed, deleting the overtime aged dynamic flow table group table from the network forwarding equipment, and reporting a notification message of deleting the dynamic flow table group table to the controller;
the notification message is used for indicating the controller to judge whether the dynamic flow table group table needs to be maintained according to the change of the network resource state; when the dynamic flow table needs to be maintained, the dynamic flow table group table is issued to the network forwarding equipment again; and when the maintenance is not needed, accepting the flow table group table deletion action of the network forwarding equipment.
6. The method for synchronizing status of forwarding information according to claim 5, wherein before the step of resetting the timeout aging time of the local flow table group of the network forwarding device according to the timeout aging time parameter issued by the controller when receiving the status synchronization request issued by the controller, the method further comprises:
and when receiving the configuration information which needs to be actively notified to the controller and is deleted from the dynamic flow table group table issued by the controller, executing corresponding configuration operation according to the configuration information.
7. The method for synchronizing status of forwarding information according to claim 5, wherein when receiving a status synchronization request issued by a controller, after resetting the timeout aging time of the local flow table group according to the timeout aging time parameter carried by the status synchronization request, the method further comprises:
after the overtime aging time setting of the local flow table group table is completed, returning state synchronization request response information to the controller;
the state synchronization request response information is used for indicating the controller that the setting of the local flow table group table timeout aging time of the network forwarding device is successful.
8. The method for synchronizing forwarding information states of claim 6, wherein when receiving static flow table set table information issued by the controller, updating the local flow table set table information according to the static flow table set table information comprises:
when static flow table set table information sent by the controller is received, only the flow table set table recorded in the local storage unit of the network forwarding equipment is updated and overtime processing is cancelled for the flow table set table which exists in the local forwarding execution unit of the network forwarding equipment and has an overtime aging time parameter inconsistent with the local record in the network forwarding equipment, and updating operation is not executed to the forwarding execution unit.
9. The forwarding information state synchronization method of claim 5, wherein the timeout aging time comprises an idle timeout aging time and/or a forced timeout aging time.
10. A controller comprising a memory, a processor and a computer program stored on said memory and executable on said processor, said computer program, when executed by said processor, implementing the steps of the forwarding information state synchronization method according to any of claims 1 to 4.
11. A network forwarding device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the computer program, when executed by the processor, implementing the steps of the forwarding information state synchronization method according to any one of claims 5 to 9.
12. A computer-readable storage medium, characterized in that the storage medium has stored thereon a computer program which, when being executed by a processor, carries out the steps of the forwarding information state synchronization method according to one of claims 1 to 4; and/or implementing the forwarding information state synchronization of any of claims 5 to 9.
CN201811116215.4A 2018-09-25 2018-09-25 Method for synchronizing forwarding information states, controller, network forwarding device and storage medium Active CN110943928B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811116215.4A CN110943928B (en) 2018-09-25 2018-09-25 Method for synchronizing forwarding information states, controller, network forwarding device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811116215.4A CN110943928B (en) 2018-09-25 2018-09-25 Method for synchronizing forwarding information states, controller, network forwarding device and storage medium

Publications (2)

Publication Number Publication Date
CN110943928A CN110943928A (en) 2020-03-31
CN110943928B true CN110943928B (en) 2022-01-07

Family

ID=69905013

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811116215.4A Active CN110943928B (en) 2018-09-25 2018-09-25 Method for synchronizing forwarding information states, controller, network forwarding device and storage medium

Country Status (1)

Country Link
CN (1) CN110943928B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113556208B (en) * 2020-04-24 2022-08-26 华为技术有限公司 Hello message transmission method and device and readable storage medium
CN114124687B (en) * 2021-12-08 2023-05-12 中国电子科技集团公司第三十四研究所 SPTN network control plane and forwarding plane configuration synchronization method
CN114915587B (en) * 2022-05-10 2023-12-22 深圳星云智联科技有限公司 Flow table aging management method and related equipment
CN116595013B (en) * 2023-07-17 2023-12-01 中国水利水电第七工程局有限公司 Multi-type monitoring information storage and calculation method and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105262682A (en) * 2015-11-16 2016-01-20 国家电网公司 Software defined network for power data communication and traffic grooming method thereof
CN107301054A (en) * 2017-07-14 2017-10-27 杭州敦崇科技股份有限公司 A kind of Oftware updating method based on MANET
CN107534612A (en) * 2015-07-31 2018-01-02 华为技术有限公司 A kind of synchronous implementation method of flow table and forwarding unit

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9504020B2 (en) * 2012-10-09 2016-11-22 Nec Corporation Method for exchanging information between communication terminals, and communication terminal

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107534612A (en) * 2015-07-31 2018-01-02 华为技术有限公司 A kind of synchronous implementation method of flow table and forwarding unit
CN105262682A (en) * 2015-11-16 2016-01-20 国家电网公司 Software defined network for power data communication and traffic grooming method thereof
CN107301054A (en) * 2017-07-14 2017-10-27 杭州敦崇科技股份有限公司 A kind of Oftware updating method based on MANET

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
D⁃ZENIC: A Scalable Distributed SDN Controller;Yongsheng Hu, Tian Tian, and Jun Wang;《ZTE COMMUNICATIONS》;20140521;第2卷(第23期);第1-5页 *

Also Published As

Publication number Publication date
CN110943928A (en) 2020-03-31

Similar Documents

Publication Publication Date Title
CN110943928B (en) Method for synchronizing forwarding information states, controller, network forwarding device and storage medium
KR101099822B1 (en) Redundant routing capabilities for a network node cluster
JP6026705B2 (en) Update management system and update management method
US10601656B2 (en) Network element upgrade method and device
EP2586163B1 (en) Notifying a controller of a change to a packet forwarding configuration of a network element over a communication channel
CN103583063B (en) System and method for the fault recovery of geographic redundancy gateway
EP3031175B1 (en) Extending virtual station interface discovery protocol (vdp) and vdp-like protocols for dual-homed deployments in data center environments
JP6466003B2 (en) Method and apparatus for VNF failover
EP2911341B1 (en) Method and device for dynamically switching gateway of distributed resilient network interconnect
CN100568854C (en) A kind of method and interface board that keeps neighborhood
JP2022502926A (en) UE migration method, equipment, system, and storage medium
US10708184B2 (en) Switching primary/backup pseudowire
CN112367182B (en) Configuration method and device of disaster recovery main and standby equipment
WO2018214803A1 (en) Route advertisement
WO2022048646A1 (en) Virtual ip management method and apparatus, electronic device and storage medium
CN109412943B (en) SDN controller cluster flow processing method, device, equipment and storage medium
JP5518771B2 (en) Redundant network system, termination device and relay point adjacent device
CN101645840B (en) Method, system and routing equipment for retransmitting message
CN108174417B (en) Main/standby switching method and device, related electronic equipment and readable storage medium
JP2018107744A (en) Communication node, communication system, communication method, and program
WO2022044546A1 (en) Communication system and method for recovering faults therein
JP2018093552A (en) Communication node, communication system, update method, and update program
US10122588B2 (en) Ring network uplink designation
JP6311265B2 (en) Communication relay device, communication relay system, relay definition information update method, and update program
JP2017022579A (en) Communication system, communication node and substitution processing method for communication system

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