WO2017000243A1 - 一种路由的方法、相关设备及系统 - Google Patents

一种路由的方法、相关设备及系统 Download PDF

Info

Publication number
WO2017000243A1
WO2017000243A1 PCT/CN2015/082876 CN2015082876W WO2017000243A1 WO 2017000243 A1 WO2017000243 A1 WO 2017000243A1 CN 2015082876 W CN2015082876 W CN 2015082876W WO 2017000243 A1 WO2017000243 A1 WO 2017000243A1
Authority
WO
WIPO (PCT)
Prior art keywords
path
group
forwarding
entries
action bucket
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2015/082876
Other languages
English (en)
French (fr)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010854879.1A priority Critical patent/CN112187645B/zh
Priority to CN201580066873.5A priority patent/CN107005469B/zh
Priority to PCT/CN2015/082876 priority patent/WO2017000243A1/zh
Priority to EP15896774.5A priority patent/EP3306873B1/en
Publication of WO2017000243A1 publication Critical patent/WO2017000243A1/zh
Priority to US15/857,748 priority patent/US10630592B2/en
Anticipated expiration legal-status Critical
Priority to US16/841,165 priority patent/US11509584B2/en
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/21Flow control; Congestion control using leaky-bucket

Definitions

  • the present invention relates to the field of network communication technologies, and in particular, to a routing method, related device, and system.
  • SDN Software-defined network
  • the control device and the OpenFlow switch complete the message interaction and information transmission through the control channel of the OpenFlow protocol specification, so as to separate the data forwarding layer and the control layer of the switching device and virtualize the underlying hardware, that is, forward the data on the OpenFlow switch.
  • Control the forwarding of data on the control device.
  • the control device implements the control function through the network view, generates a forwarding flow table for the OpenFlow switch, and the OpenFlow switch forwards the data packet according to the forwarding flow table.
  • the existing SDN network based on the OpenFlow protocol does not support performing the fault.
  • the load balancing path performs fast rerouting operations.
  • the present invention provides a routing method, a related device, and a system, which can solve the problem that multiple load balancing paths exist in a network, and any load sharing path fails, and the rerouting protection cannot be implemented.
  • a first aspect of the present invention provides a method for controlling a forwarding and separating network.
  • the control forwarding and separating network includes a control device and a forwarding device, and the control device controls the forwarding device, and the method includes:
  • the control device determines at least three paths for a data flow, and generates a first group entry and a flow entry of the data flow, where the at least three paths are the data flow from the forwarding device to the destination forwarding device.
  • Transmission path
  • the control device sends the flow entry and the first set of entries to the forwarding device, where the flow entry is used to indicate that the forwarding device performs the first to the first when matching the data flow
  • the operation of the group entry the first group of entries is used to instruct the forwarding device to use the first path of the at least three paths
  • the second path is set as a path for load sharing
  • the third path of the at least three paths is set as a path of rerouting protection of the first path and the second path.
  • the first group of entries includes a first group type field and a first action bucket field, where the first group type field is used to indicate
  • the current group is a scenario including a load balancing path and a rerouting protection path, where the first action bucket field is used to indicate that the first path and the second path are load balancing paths of the data flow, and the forwarding status is Activating, and indicating that the third path is a rerouting path when the load sharing path fails and the forwarding status is inactive.
  • the first action bucket field includes a first sub-action bucket, a second sub-action bucket, and a third a sub-action bucket, the first sub-action bucket indicating that the first path is a load sharing path of the data flow and the forwarding state is active, and the second sub-action bucket indicates that the second path is the data flow And the forwarding status is activated, and the third sub-action bucket indicates that the third path is a re-routing path when the load sharing path is faulty and the forwarding status is inactive.
  • the identifier field corresponding to the load sharing path is an inactive state
  • the third identifier field is an activated state
  • the first group of entries further includes a first group identifier
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the first group of entries further includes a first group identifier, where the flow entry includes a matching field and an operation instruction field, where the matching field carries matching information of the data flow, where the operation instruction field carries Instructing the first set of identifiers to go to the first set of entries.
  • the method further includes:
  • the control device further generates a second set of entries for the data flow, where the second set of entries includes the first a second group identifier, a second group type field, and a second action bucket field, wherein the second group identifier is used to identify the second group entry, and the second group type field is used to indicate that load sharing is performed.
  • the second action bucket field includes a fourth sub-action bucket, and the fourth sub-action bucket carries the first group identifier indicating the first group of entries;
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • control device sends the forwarding device to the forwarding device After the flow entry and the first set of entries, the method further includes:
  • the control device receives a first notification message from the forwarding device, where the first notification message indicates that the first path is faulty;
  • the control device sets the forwarding state of the first sub-action bucket to be inactive according to the first notification message, and sets a forwarding state of the third sub-action bucket to be activated;
  • the control device sends the updated first group of entries to the forwarding device.
  • the control device sends the updated first group of entries to the forwarding device
  • the method further includes:
  • the control device After the control device receives the second notification message from the forwarding device, the second notification message indicates failure recovery of the first path;
  • the control device sets the forwarding state of the first sub-action bucket to be activated according to the second notification message, and sets a forwarding state of the third sub-action bucket to be inactive;
  • the control device sends the updated first group of entries to the forwarding device.
  • control device sends the forwarding device to the forwarding device After the flow entry and the first set of entries, the method further includes:
  • the control device receives a third notification message from the forwarding device, the third notification message Instructing the first path to fail;
  • the control device sets the first path corresponding to the first sub-action bucket to be used for rerouting according to the third notification message, and sets a forwarding state of the first sub-action bucket to be inactive; Setting the third path corresponding to the third sub-action bucket to be used for load sharing, and setting a forwarding state of the third sub-action bucket to be activated;
  • the control device sends the updated first group of entries to the forwarding device.
  • a second aspect of the present invention provides a method for controlling a forwarding and separating network.
  • the control forwarding and separating network includes a control device and a forwarding device, and the control device controls the forwarding device, and the method includes:
  • the forwarding device receives a flow entry from the control device and a first set of entries, where the flow entry is used to indicate that the forwarding device performs a call to the first group when it matches the data flow
  • the operation of the entry the first set of entries is used to indicate that the forwarding device sets the first path and the second path of the at least three paths calculated by the control device as one data flow to a load sharing path, and Setting a third one of the at least three paths as a reroute protected path of the first path and the second path, where the at least three paths are the data flow from the forwarding device to the destination forwarding device Transmission path;
  • the forwarding device establishes a flow table according to the flow entry, and establishes a first group table according to the first group entry.
  • the first group of entries includes a first group type field and a first action bucket field, where the first group type field is used to indicate
  • the current group is a scenario including a load balancing path and a rerouting protection path, where the first action bucket field is used to indicate that the first path and the second path are load balancing paths of the data flow, and the forwarding status is Activating, and indicating that the third path is a rerouting path when the load sharing path fails and the forwarding status is inactive.
  • the first action bucket field includes a first sub-action bucket, a second sub-action bucket, and a third sub- An action bucket, the first sub-action bucket indicating that the first path is a load sharing path of the data flow and the forwarding state is active, and the second sub-action bucket indicates that the second path is the data flow a load sharing path and the forwarding state is active, and the third sub-action bucket indicates the third path as the load sharing The rerouting path when the path fails and the forwarding status is inactive.
  • the first group of entries further includes a first group of identifiers
  • the flow entry includes a matching field and an operation instruction field
  • the matching field carries matching information of the data flow
  • the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the method further includes:
  • the forwarding device receives a second group of entries from the control device, and establishes a second group of tables according to the second group of entries, where the second group of entries includes a second group of identifiers and a second group of types a field and a second action bucket field, the second group of identifiers is used to identify the second group of entries, the second group type field is used to indicate load sharing, and the second action bucket field includes a fourth child An action bucket, the fourth sub-action bucket carrying the first group of identifiers that are directed to the first group of entries;
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the forwarding device receives the After the flow entry and the first set of entries of the control device are described, the method further includes:
  • the forwarding device After receiving the packet of the data stream from the other forwarding device, the forwarding device searches for the flow table by using the identifier information of the data stream, and after matching the flow entry, performing the process to the first The action of the first group table corresponding to the group identifier, after jumping to the first group table, according to the instructions of the first sub-action bucket and the second sub-action bucket, the message is in the office Performing load sharing forwarding on the first path or the second path;
  • the forwarding device When the forwarding device detects the first path failure, the forwarding device sets the forwarding state of the first sub-action bucket to be inactive, and sets the forwarding state of the third sub-action bucket to be activated. To refresh the first set of tables;
  • the forwarding device performs load sharing forwarding on the third path or the second path.
  • the sixth possible implementation in the second aspect In conjunction with the fifth possible implementation of the second aspect, the sixth possible implementation in the second aspect In a mode, when the forwarding device detects the first path failure, the forwarding device sets a forwarding state of the first sub-action bucket to be inactive, and forwards a forwarding state of the third sub-action bucket.
  • Setting to activate to refresh the first set of tables also includes:
  • the forwarding device sends a first notification message to the control device, where the first notification message indicates that the first path is faulty;
  • the forwarding device refreshes the first group table according to the updated first group of entries.
  • the method further includes:
  • the forwarding device When the forwarding device detects failure recovery of the first path, the forwarding device sets a forwarding state of the first sub-action bucket to be activated, and sets a forwarding state of the third sub-action bucket to inactivated;
  • the forwarding device performs load sharing forwarding on the first path.
  • the method further includes:
  • the forwarding device After receiving the packet of the data stream from the other forwarding device, the forwarding device searches for the flow table by using the identifier information of the data stream, matches the flow entry, and performs a process to the first group. Identifying the action of the corresponding first group of tables, after jumping to the first group of tables, according to the indications of the first sub-action bucket and the second sub-action bucket, the message is in the Performing load sharing forwarding on the first path or the second path;
  • the forwarding device When the forwarding device detects the first path failure, the forwarding device sets the first path corresponding to the first sub-action bucket to be used for re-routing and the forwarding state is set to inactive, and The third path corresponding to the third sub-action bucket is set for load sharing and the forwarding state is set to be activated to refresh the first group table;
  • the forwarding device performs load sharing forwarding on the third path or the second path.
  • the forwarding device when the forwarding device detects that the first path is faulty, The first path corresponding to the first sub-action bucket is set to be used for re-routing and the forwarding state is set to be inactive, and the third path corresponding to the third sub-action bucket is set to be used for load sharing.
  • the forwarding status is set to active to refresh the first set of tables and further includes:
  • the forwarding device sends a first notification message to the control device, where the first notification message indicates that the first path is faulty;
  • the forwarding device receives the updated first group of entries from the control device, and the updated first group of entries indicates that the first path corresponding to the first sub-action bucket is used for re-routing and The forwarding state is inactive, and the third path corresponding to the third sub-action bucket is used for load sharing and the forwarding state is activated.
  • the forwarding device refreshes the first group table according to the updated first group of entries.
  • a third aspect of the present invention provides a control device, which is applied to a network that controls forwarding and separation.
  • the control forwarding and separating network includes a control device and a forwarding device, and the control device controls the forwarding device, and the control device includes:
  • a processing module configured to determine at least three paths for a data flow, and generate a first group of entries and a flow entry of the data flow, where the at least three paths are the data flow from the forwarding device to the destination forwarding device Transmission path;
  • a sending module configured to send the flow entry and the first group of entries to the forwarding device, where the flow entry is used to indicate that the forwarding device performs the process to the first when the data stream is matched
  • An operation of a set of entries the first set of entries is used to instruct the forwarding device to set a first path and a second path of the at least three paths as load-sharing paths, and the at least three paths
  • the third path in the path is set as the path of the rerouting protection of the first path and the second path.
  • the first group of entries includes a first group type field and a first action bucket field, where the first group type field is used to indicate
  • the current group is a scenario including a load balancing path and a rerouting protection path, where the first action bucket field is used to indicate that the first path and the second path are load balancing paths of the data flow, and the forwarding status is Activating, and indicating that the third path is a rerouting path when the load sharing path fails and the forwarding status is inactive.
  • the first action bucket field includes a first sub-action bucket, a second sub-action bucket, and a third sub-action bucket, where the first sub-action bucket indicates that the first path is a load sharing path of the data stream and is forwarded The status is active, the second sub-action bucket indicates that the second path is a load sharing path of the data flow, and the forwarding status is active, and the third sub-action bucket indicates the third path as the load sharing The rerouting path when the path fails and the forwarding status is inactive.
  • the first group of entries further includes a first group identifier
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the processing module is further configured to:
  • the second set of entries includes a second set of identifiers, a second set of type fields, and a second action bucket field, where the second set of identifiers is used to identify the first
  • the second set of type fields is used to indicate load sharing
  • the second action bucket field includes a fourth subaction bucket, and the fourth subaction bucket carries an indication to the first set of tables.
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the sending module sends the sending module to the forwarding device After the flow entry and the first set of entries, the receiving module is further configured to:
  • the processing module is further configured to set a forwarding state of the first sub-action bucket to be inactive according to the first notification message received by the receiving module, and set a forwarding state of the third sub-action bucket. For activation;
  • the sending module is further configured to send the first group of entries updated by the processing module to the forwarding device.
  • the sending module sends the updated first group of entries to the forwarding device
  • the receiving module is further configured to:
  • the second notification message After receiving the second notification message from the forwarding device, the second notification message indicates failure recovery of the first path;
  • the processing module is further configured to set a forwarding state of the first sub-action bucket to be activated according to the second notification message received by the receiving module, and set a forwarding state of the third sub-action bucket to inactivated;
  • the sending module is further configured to send the first group of entries updated by the processing module to the forwarding device.
  • the sending module sends the sending module to the forwarding device After the flow entry and the first set of entries, the receiving module is further configured to:
  • the processing module is further configured to set the first path corresponding to the first sub-action bucket to be used for rerouting according to the third notification message received by the receiving module, and the first sub The forwarding state of the action bucket is set to be inactive; the third path corresponding to the third sub-action bucket is set to be used for load sharing, and the forwarding state of the third sub-action bucket is set to be activated;
  • the sending module is further configured to send the first group of entries that are updated by the processing module to the forwarding device.
  • a fourth aspect of the present invention provides a forwarding device, which is applied to a network that controls forwarding and separation.
  • the control forwarding and separating network includes a control device and a forwarding device, and the control device controls the forwarding device.
  • the forwarding device includes:
  • a receiving module configured to receive a flow entry from the control device, and a first set of entries, where the flow entry is used to indicate that the forwarding device performs a first to the first when matching the data flow
  • the operation of the group entry, the first group of the entry is used to indicate that the forwarding device sets the first path and the second path of the at least three paths calculated by the control device as one data flow as a load sharing path.
  • setting a third path of the at least three paths as a path of rerouting protection of the first path and the second path, where the at least three paths are forwarding of the data flow from the forwarding device to a destination
  • the transmission path of the device
  • the processing module is configured to establish a flow table according to the flow entry, and establish a first set of tables according to the first set of entries.
  • the first group of entries includes a first group type field and a first action bucket field, where the first group type field is used to indicate
  • the current group is a scenario including a load balancing path and a rerouting protection path, where the first action bucket field is used to indicate that the first path and the second path are load balancing paths of the data flow, and the forwarding status is Activating, and indicating that the third path is a rerouting path when the load sharing path fails and the forwarding status is inactive.
  • the first action bucket field includes a first sub-action bucket, a second sub-action bucket, and a third sub- An action bucket, the first sub-action bucket indicating that the first path is a load sharing path of the data flow and the forwarding state is active, and the second sub-action bucket indicates that the second path is the data flow The load balancing path and the forwarding state are active, and the third sub-action bucket indicates that the third path is a re-routing path when the load sharing path is faulty and the forwarding state is inactive.
  • the first group of entries further includes a first group identifier
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the receiving module is further configured to:
  • the processing module is further configured to establish a second group table according to the second group of entries received by the receiving module, where the second group of entries includes a second group identifier, a second group type field, and a second An action bucket field, the second group identifier is used to identify the second group of entries, the second group type field is used to indicate load sharing, and the second action bucket field includes a fourth sub-action bucket.
  • the fourth sub-action bucket carries the first group of identifiers that are directed to the first group of entries;
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the forwarding device receives the control device After the flow entry and the first set of entries, the processing module is further configured to:
  • the packet After receiving the packet of the data stream from the other forwarding device by using the receiving module, searching for the flow table by using the identifier information of the data stream, matching the flow table entry, and performing the processing to the The first group of identifiers corresponding to the action of the first group of tables, after jumping to the first group of tables, according to the instructions of the first sub-action bucket and the second sub-action bucket, the packet Performing load sharing forwarding on the first path or the second path;
  • the processing module performs load sharing forwarding on the third path or the second path.
  • the forwarding device further includes a sending module, where the sending module is further configured to:
  • the processing module sets the forwarding state of the first sub-action bucket to be inactive, and sets the forwarding state of the third sub-action bucket to be activated, sending a first notification message to the control device, where The first notification message indicates that the first path is faulty;
  • the receiving module is further configured to receive an updated first group of entries from the control device, where the updated first group of entries indicates that a forwarding state of the first sub-action bucket is inactive, and an indication The forwarding state of the third sub-action bucket is activated;
  • the processing module is further configured to refresh the first group of tables according to the updated first group of entries received by the receiving module.
  • the processing module is further configured to:
  • the processing module performs load sharing forwarding on the first path.
  • the processing module is configured according to the flow entry After the flow table is established, and the first set of tables is established according to the first set of entries, the processing module is further configured to:
  • the receiving module After receiving the packet of the data stream from the other forwarding device, the receiving module searches for the flow table by using the identifier information of the data stream, matches the flow table entry, and performs the process to the first The action of the first group table corresponding to the group identifier, after jumping to the first group table, according to the instructions of the first sub-action bucket and the second sub-action bucket, the message is in the office Performing load sharing forwarding on the first path or the second path;
  • the first path corresponding to the first sub-action bucket is set to be used for re-routing and the forwarding state is set to be inactive, and the third sub-action bucket is correspondingly
  • the third path is set for load sharing and the forwarding state is set to be activated to refresh the first set of tables;
  • the processing module performs load sharing forwarding on the third path or the second path.
  • the sending module is further configured to:
  • the receiving module is further configured to receive an updated first group of entries from the control device, where the updated first group of entries indicates that the first path corresponding to the first sub-action bucket is used for Re-routing and the forwarding state is inactive, and indicating that the third path corresponding to the third sub-action bucket is used for load sharing and the forwarding state is activated;
  • the processing module is further configured to refresh the first group of tables according to the updated first group of entries received by the receiving module.
  • a fifth aspect of the present invention provides a communication system, the communication system comprising:
  • a forwarding device according to any of the first to ninth possible implementations of the fourth aspect or the fourth aspect.
  • the first path and the second path responsible for load sharing are configured for the data flow, and the third path responsible for re-routing protection is configured, and the forwarding device is instructed to use the first path and the second path as the load.
  • the shared path, and the third path that performs re-routing protection on the first and second paths, and the generation of the flow entry indicating that the first group of entries are performed can solve the problem that multiple load sharing paths exist in the network. If any of the load balancing paths is faulty, the problem of rerouting protection cannot be implemented. The packet loss rate is improved, and the processing efficiency of the fault is improved.
  • FIG. 1 is a schematic diagram of an embodiment of a method for routing according to an embodiment of the present invention
  • 1-1 is a schematic diagram of a scenario of two load sharing paths and one FRR path according to an embodiment of the present invention
  • 2-1 is a schematic structural diagram of a first group of entries in an embodiment of the present invention.
  • 2-3 is a schematic structural diagram of a cascading relationship between a first group entry and a second group entry in the embodiment of the present invention
  • FIG. 3 is a flowchart of forwarding a packet in a forwarding device according to an embodiment of the present invention
  • FIG. 4 is a flow chart of forwarding a message in a forwarding device according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of another embodiment of a method for routing according to an embodiment of the present disclosure.
  • 6-1 is a schematic structural diagram of a control device according to an embodiment of the present invention.
  • 6-2 is another schematic structural diagram of a control device according to an embodiment of the present invention.
  • FIG. 7-1 is a schematic structural diagram of a forwarding device according to an embodiment of the present invention.
  • FIG. 7-2 is another schematic structural diagram of a forwarding device according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a communication system according to an embodiment of the present invention.
  • FIG. 9 is another schematic structural diagram of a control device according to an embodiment of the present invention.
  • FIG. 10 is another schematic structural diagram of a forwarding device according to an embodiment of the present invention.
  • the invention provides a routing method, related device and system, which are mainly applied to control forwarding separation
  • the network can solve the problem that multiple load balancing paths exist on the network, and any load sharing path fails.
  • FRR Fast Re-Route
  • the local forwarding path is used to reduce the impact of the path of the label forwarding path. That is, when the service path is faulty, the service path is switched to the backup path, and the backup path bypasses the faulty service path to reduce data. Loss of traffic for protection.
  • ECMP Equal-Cost Multipath Routing
  • load balancing in a network environment where multiple different paths arrive at the same destination address, ECMP (Equal-Cost Multipath Routing) is set to achieve service value on multiple paths. Load balancing is performed. Or non-equivalent multipathing is set to load balance traffic on multiple paths.
  • the packet is matched with the flow table. After the packet is matched to the flow table, the forwarding process is performed according to the instruction or operation type in the flow table. After the packet enters the forwarding device, the ingress port is first searched. The table is then searched for the next flow table. When any fault in the service path of at least two load balancing is detected, the group type GroupType selected by the forwarding device is fast reroute protection for at least two load-sharing service paths. The faulty service path is switched to the corresponding FRR path for protection.
  • the number of the FRR is not limited.
  • the protection can be performed in batches. For example, there are a total of 96 load balancing paths and four FRR paths.
  • Each of the 24 load sharing paths can be set as one group, and an FRR path is provided for rerouting protection.
  • Each group of forwarding operations is not affected by each other. It can also be used as a group of 48 load sharing paths. It is equipped with two FRR paths for rerouting protection. The forwarding operations of each group do not affect each other. Not limited.
  • the flow table in this document is in the Openflow protocol.
  • the group table may be referred to as a flow table, and the flow table may also include a group table, that is, in the technical field, a group table that implements the function of the group table may be called
  • a group table that implements the function of the group table may be called
  • any change between the group table and the flow table name falls within the scope of the present invention.
  • a method for routing provided by an embodiment of the present invention is introduced from a control device side.
  • the method is applied to control a network that separates the forwarding, and the control forwarding and separating the network includes a control device and a forwarding device, and the control device controls the forwarding device, and the embodiment of the present invention includes:
  • the control device determines at least three paths for a data flow, and generates a first group entry and a flow entry of the data flow, where the at least three paths are the data flow from the forwarding device to the destination forwarding.
  • the transmission path of the device
  • the control device sends the flow entry and the first group of entries to the forwarding device.
  • the flow entry is used to indicate that the forwarding device performs an operation to the first group of entries when the data stream is matched, and the first group of entries is used to indicate the forwarding device. Setting a first path and a second path of the at least three paths as load-sharing paths, and setting a third one of the at least three paths as re-routing of the first path and the second path Protected path.
  • the first path, the second path, and the third path are transmission paths of the data stream from the forwarding device to the destination forwarding device.
  • a scenario in which at least two load balancing paths and at least one FRR path are implemented may be implemented, and the specific number is determined according to actual services, and is not limited herein.
  • the control device calculates three paths from the forwarding device 110-1 to the destination forwarding device 110-5 for one data flow according to the service requirements of the user.
  • the first load sharing path is a path from the forwarding device 110-1 to the destination forwarding device 110-5
  • the second load sharing path is from the forwarding device 110-1 to the forwarding device 110-3.
  • the path to the destination forwarding device 110-5, the FRR path is the path from the forwarding device 110-1 through the forwarding device 110-4 to the destination forwarding device 110-5.
  • the control device sends the flow entry and the first set of entries to the forwarding device 110-1. It can be understood that when the packet reaches the destination forwarding device 110-5, the control device will be the corresponding flow entry and The group entry is delivered to the destination forwarding device 110-5, that is, the forwarding device 110-1 may be any forwarding device in the SDN network.
  • the packet is matched with the flow entry, and the packet is forwarded to the first group of entries, and the forwarding device forwards the packet according to the indication of the first group of entries. And in determining the number When a path or the second path is faulty, the path of the forwarded packet is switched to the third path to forward the packet.
  • the first path and the second path responsible for the load sharing are configured for the data flow
  • the third path responsible for the re-routing protection is configured
  • the forwarding device is configured to use the first path and the second path as the load sharing.
  • the path, and the third path for performing re-routing protection on the first and second paths, and the generating a flow entry indicating that the first group of entries are performed can solve the problem that multiple load sharing paths exist in the network, and When a load balancing path is faulty, the problem of rerouting protection cannot be implemented.
  • the packet loss rate is improved, and the processing efficiency of the fault is improved.
  • the first group of entries includes a first group type field and a first action bucket field, where the first group type field is used to indicate that the current group is a scenario including a load sharing path and a rerouting protection path, where the first action bucket is a field is used to indicate that the first path and the second path are load balancing paths of the data flow, and the forwarding status is activated, and the third path is a rerouting path when the load sharing path is faulty. And the forwarding status is inactive.
  • the first group type field may be an OpenFlow Protocol Group Type-Select Fast Failover (OFPGT-SF) field in the OpenFlow protocol flow entry.
  • OFFPGT-SF OpenFlow Protocol Group Type-Select Fast Failover
  • the third path forwarding packet can be quickly enabled according to the indication of the second action bucket field, which can improve network reliability and data continuity.
  • the first action bucket field includes a first sub-action bucket. a second sub-action bucket and a third sub-action bucket, the first sub-action bucket indicating that the first path is a load of the data stream
  • the second sub-action bucket indicates that the second path is a load sharing path of the data flow and the forwarding state is active
  • the third sub-action bucket indicates the third path as The load sharing path is a rerouting path when the path fails and the forwarding status is inactive.
  • the third sub-action bucket corresponds to an end position of the first action bucket field
  • the first sub-action bucket corresponding to the first path is inactive, and the third sub-action bucket is activated.
  • the first action bucket field includes struct buckets[0], struct buckets[1], and struct buckets[2], wherein struct buckets[0] and struct buckets[1] form a load sharing path group (ie, corresponding to the first A path and a second path); struct buckets[2] are backup buckets of both struct buckets[0] and struct buckets[1], that is, re-routing protection is performed on the two load sharing paths.
  • each struct bucket is associated with a port or port group. You can use the watch port/group to identify the active state of the port or port group.
  • the first active struct is selected and executed according to the order (0, 1, 2...n) defined by each struct bucket in the first group of entries. Bucket. In the following, if the contents of this alternative embodiment appear, they will not be described again.
  • the corresponding sub-action bucket corresponding to the fault path in the load balancing path group becomes inactive to indicate that the fault path does not perform the current forwarding operation, where the watch port/ in the sub-action bucket
  • the group changes from active to inactive; correspondingly, the forwarding state of the third sub-action bucket corresponding to the backup bucket changes from inactive to active, that is, the watch port/group in the third sub-action bucket is changed from inactive to active. Enabling the third path to forward packets can improve network reliability and data continuity.
  • the third optional implementation of the embodiment of the present invention is based on the foregoing embodiment corresponding to FIG. 1 and any optional embodiment of the foregoing first and second alternative embodiments.
  • the first group of entries further includes a first group of identifiers;
  • the flow entry is used to indicate that the forwarding device performs to go to the data stream when it matches the data flow.
  • the operations of the first set of entries include:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the packets of the data flow can be sent to the first group through the flow entry.
  • the packets of the data flow can be sent to the first group through the flow entry.
  • the forwarding process of the packets in the forwarding device in the network environment where the data service requirement is not high and the network architecture is not complicated, the packet loss rate and the network stability can be reduced.
  • the method further includes:
  • the control device generates a second group entry for the data flow, where the second group entry includes a second group identifier, a second group type field, and a second action bucket field, and the second group identifier Group id
  • the second group type field is used to indicate load sharing
  • the second action bucket field includes a fourth sub-action bucket
  • the fourth sub-action bucket carries an indication to The first group of identifiers of the first group of entries, where the packet is sent to the first group of entries from the second group of entries, the first The cascading relationship structure between the group entry and the second set of entries is implemented;
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, where the matching field carries the matching information of the data flow, and the operation instruction field carries the second group identifier that is sent to the second group of entries.
  • the forwarding device uses the flow entry to establish a flow table, and the A set of tables is used to create a first set of tables, and a second set of tables is created by using the second set of entries.
  • the relationship between the flow entry and the first set of entries is configured, or the flow entry and the first set of tables are configured.
  • the packet matches the flow table, and the last flow table matched.
  • the entry can indicate that the packet goes directly to the first group of entries (see Figure 3). It can also indicate that the packet goes to the second group of entries first, and finally to the first group of entries (see Figure 4).
  • the flow table may be a single flow table or a multi-level flow table, for example, Table0, Table1, ...Ta bleN.
  • the packets are pipelined in the order of 0, 1, ... N. match.
  • first group table and the second group table may be a single group table, or may be a multi-level group table, for example, GroupTable0, GroupTable1, ... GroupTableN, in the forwarding process of the multi-level group table, according to 0, 1, The order of ...N matches the message pipeline.
  • the second group of entries and the first group of entries can form a multi-level group table, as shown in Figure 2-3, and the first group of entries is the next hop group entry of the second group of entries.
  • the number of the first set of entries and the second set of entries depends on the number of load sharing paths required or the scheduling algorithm. For example, when the number of load balancing paths is large, after matching the flow entry, the corresponding first set of entries needs to be selected according to the second set of entries, and the division of labor is clear, which effectively improves the forwarding processing efficiency and optimizes the forwarding mechanism.
  • the second set of entries only indicates that the load balancing is responsible, and the first set of entries can be used for rerouting protection in the subsequent forwarding process.
  • the multi-level group table consisting of the first group table and the second group table in the alternative embodiment further ensures that the packet can be forwarded normally, and the packet is first redirected to the second group entry to implement hierarchical processing. It can improve the processing efficiency of messages.
  • the method further includes:
  • the control device receives a first notification message from the forwarding device, where the first notification message indicates that the first path is faulty;
  • the control device sets the forwarding state of the first sub-action bucket to be inactive according to the first notification message, and sets a forwarding state of the third sub-action bucket to be activated;
  • the control device sends the updated first group of entries to the forwarding device.
  • the rerouting protection mechanism composed of the first to third paths can be implemented. If the first path is faulty, the data flow can be immediately switched to the third path to complete the forwarding, so that the packet is sent to the expired port and discarded, causing service interruption.
  • the method further includes:
  • the method further includes:
  • the control device After the control device receives the second notification message from the forwarding device, the second notification message indicates failure recovery of the first path;
  • the control device sets the forwarding state of the first sub-action bucket to be activated according to the second notification message, and sets a forwarding state of the third sub-action bucket to be inactive;
  • the control device sends the updated first group of entries to the forwarding device.
  • control device can control the forwarding device by using the flow table message, and can implement the rerouting protection mechanism consisting of the first to third paths.
  • the control forwarding device switches the data flow.
  • the forwarding to the third path is completed, and the packet is discarded because the packet is sent to the expired port, causing the service to be interrupted.
  • the method further includes:
  • the control device receives a third notification message from the forwarding device, where the third notification message indicates that the first path is faulty;
  • the control device sets the first path corresponding to the first sub-action bucket to be used for rerouting according to the third notification message, and sets a forwarding state of the first sub-action bucket to be inactive; Setting the third path corresponding to the third sub-action bucket to be used for load sharing, and setting a forwarding state of the third sub-action bucket to be activated;
  • the control device sends the updated first group of entries to the forwarding device.
  • the first path when the first path is faulty, the first path is used as the FRR path, so that after the first path is recovered, the second path and the third path can be rerouted and protected. It is avoided in the prior art that after the first path is recovered, it is immediately switched back to the first path, which causes a problem of interrupting data transmission.
  • the embodiment of the present invention is applied to a network that controls forwarding and separation, and the control forwarding and separating network includes a control device and a forwarding device.
  • the control device controls the forwarding device, and the method includes:
  • the forwarding device receives a flow entry and a first group of entries from the control device.
  • the flow entry is used to indicate that the forwarding device performs an operation to the first group of entries when the data stream is matched, where the first group of entries is used to indicate that the forwarding device is to be
  • the first path and the second path of the at least three paths calculated by the control device for the data flow are set as the load sharing path, and the third path of the at least three paths is set as the first path and the first path The path of the reroute protection of the second path.
  • the forwarding device establishes a flow table according to the flow entry, and establishes a first group table according to the first group entry.
  • the first group table is configured by using the first group of entries according to the flow table configured by the control device, so that when the first path and the second path that are the load sharing are faulty, The first set of tables is switched to the third path that is responsible for the re-routing protection.
  • the problem that multiple load balancing paths exist on the network and the fault of any load balancing path cannot be re-routed can effectively reduce the packet loss rate. And improve the processing efficiency when the fault occurs, and ensure that the packets can be forwarded normally.
  • the first group of entries includes the first group type. a field and a first action bucket field, where the first group type field is used to indicate that the current group is a scenario including a load sharing path and a rerouting protection path, where the first action bucket field is used to indicate the first path and the
  • the second path is a load sharing path of the data flow and the forwarding state is active
  • the third path is a rerouting path when the load sharing path is faulty and the forwarding state is inactive.
  • the first group type field may be an OpenFlow Protocol Group Type-Select Fast Failover (OFPGT-SF) field in the OpenFlow protocol flow entry.
  • OFFPGT-SF OpenFlow Protocol Group Type-Select Fast Failover
  • the third path forwarding packet can be quickly enabled according to the indication of the third sub-action bucket, which can improve network reliability and data continuity.
  • the first action bucket field includes a first sub-action bucket and a second sub-action bucket.
  • a third sub-action bucket the first sub-action bucket indicating that the first path is a load sharing path of the data flow and the forwarding state is active, and the second sub-action bucket indicates that the second path is The load balancing path of the data flow is described, and the forwarding state is activated.
  • the third sub-action bucket indicates that the third path is the re-routing path when the load sharing path is faulty and the forwarding state is inactive.
  • the third optional embodiment of the embodiment of the present invention is based on the foregoing embodiment corresponding to FIG. 5, or any optional embodiment of the foregoing first to second alternative embodiments.
  • the first group of entries further includes a first group of identifiers;
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the relationship between the first group of entries and the flow entry is configured, and the data flow is sent to the first group through the flow entry, and the data service requirement is not high and the network architecture is not In the complex network environment, the purpose of reducing packet loss rate and improving network stability is achieved.
  • the fourth optional embodiment of the embodiment of the present invention is based on the foregoing embodiment corresponding to FIG. 5, or any optional embodiment of the foregoing first to second alternative embodiments.
  • the method further includes:
  • the forwarding device receives a second group of entries from the control device, and establishes a second group of tables according to the second group of entries, where the second group of entries includes a second group of identifiers and a second group of types a field and a second action bucket field, the second group identifier is used to identify the second group of entries, the second group type field
  • the second action bucket includes a fourth sub-action bucket, and the fourth sub-action bucket carries the first group identifier that is sent to the first group of entries.
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the cascading relationship between the first group of entries and the second group of entries is as shown in Figure 2-3.
  • the multi-level group table consisting of the first group table and the second group table is further ensured that the packet can be forwarded normally, and the packet is first redirected to the second group table to implement hierarchical processing.
  • the division of labor is clear, effectively improving the efficiency of forwarding processing, optimizing the forwarding mechanism, and improving the processing efficiency of messages.
  • the forwarding device establishes the relationship between the flow table and the first group table, or establishes the relationship between the flow table, the first group table, and the second group table. After receiving the packet, the forwarding device matches the packet with the flow table, and finally jumps to the first group table;
  • the forwarding device processes the packet as follows:
  • the packet After the packet enters the forwarding device from the ingress port, the packet matches the flow table according to the match/metadata matching field carried in the packet.
  • the flow table may be a single flow table, or may be a multi-level flow table, that is, Table0, Table1, ..., TableN, and the packets are pipeline-matched in the order of 0, 1, ..., N.
  • the action in the flow table is executed to jump to the flow table Goto-table, and then proceeds to the next flow table.
  • Processing, in the last level flow table processing, executing an action of the type Open Flow Action Group OFTAT_GROUP the Action is used to indicate that the first group table Grouptable1 that forwards the message to the next stage, the Action includes the first group table The first group identifies the group id.
  • the packet is forwarded from the flow table to the first group table, as shown in Figure 3;
  • a single group table can also be a multi-level group table (such as GroupTable0, GroupTable1, ... GroupTab leN).
  • the pipeline is matched with the packets in the order of 0, 1, ... N).
  • the first group table or the second group table may be a single group table, or may be a multi-level group table (such as GroupTa ble0, GroupTable1, ... GroupTableN, in the forwarding process of the multi-level group table, according to 0, 1, ... N
  • the sequence is matched with the packet pipeline.
  • the cooperation between the first group table and the second group table can further ensure that the packet can be forwarded normally, and the packet is sent to the second group table to implement hierarchical processing. The processing efficiency of the message and the optimization of the forwarding mechanism.
  • the number of specific flow tables and the number of group tables are determined according to the actual load sharing path or design, and are not limited herein.
  • the forwarding device receives the control from the control, according to any one of the foregoing second to fourth optional embodiments.
  • the device After the flow entry and the first set of entries of the device, the device also includes:
  • the forwarding device After receiving the packet of the data stream from the other forwarding device, the forwarding device searches for the flow table by using the identifier information of the data stream, and after matching the flow entry, performing the process to the first The action of the first group table corresponding to the group identifier, after jumping to the first group table, according to the instructions of the first sub-action bucket and the second sub-action bucket, the message is in the office Performing load sharing forwarding on the first path or the second path;
  • the forwarding device When the forwarding device detects the first path failure, the forwarding device sets the forwarding state of the first sub-action bucket to be inactive, and sets the forwarding state of the third sub-action bucket to be activated. To refresh the first set of tables;
  • the forwarding device performs load sharing forwarding on the third path or the second path.
  • the data stream can be immediately switched to the third path to complete the forwarding. Avoid the problem that packets are sent to the expired port and are discarded, resulting in service interruption.
  • the forwarding device when the forwarding device detects that the first path is faulty, the forwarding device Setting a forwarding state of the first sub-action bucket to be inactive, and setting a forwarding state of the third sub-action bucket to be activated, to refresh the first group of tables further includes:
  • the forwarding device sends a first notification message to the control device, where the first notification message indicates that the first path is faulty;
  • the forwarding device refreshes the first group table according to the updated first group of entries.
  • the inactive is used to indicate that the first path does not participate in a forwarding operation, and the activation is used to indicate that the third path participates in forwarding;
  • the forwarding device switches the packet from the first path to the third path.
  • the fault load balancing path may be the first path or the second path, or any other group of load sharing. Path, this article only takes the first path fault as an example for description, and is not limited in this paper.
  • the data stream can be immediately switched to the third path to complete forwarding, and the report is avoided.
  • the text is sent to the port that has expired and is discarded, causing a problem of service interruption.
  • the method further includes:
  • the forwarding device When the forwarding device detects failure recovery of the first path, the forwarding device sets a forwarding state of the first sub-action bucket to be activated, and sets a forwarding state of the third sub-action bucket to inactivated;
  • the forwarding device performs load sharing forwarding on the first path.
  • the forwarding device is configured to create a flow table according to the flow entry, and after the first set of the table is established according to the first set of entries, the method further includes:
  • the forwarding device After receiving the packet of the data stream from the other forwarding device, the forwarding device searches for the flow table by using the identifier information of the data stream, matches the flow entry, and performs a process to the first group. Identifying the action of the corresponding first group of tables, after jumping to the first group of tables, according to the indications of the first sub-action bucket and the second sub-action bucket, the message is in the Performing load sharing forwarding on the first path or the second path;
  • the forwarding device When the forwarding device detects the first path failure, the forwarding device sets the first path corresponding to the first sub-action bucket to be used for re-routing and the forwarding state is set to inactive, and The third path corresponding to the third sub-action bucket is set for load sharing and the forwarding state is set to be activated to refresh the first group table;
  • the forwarding device performs load sharing forwarding on the third path or the second path.
  • the first path when the first path is faulty, the first path is used as the FRR path, so that after the first path is recovered, the second path and the third path can be rerouted to protect the existing path.
  • the first path after the first path is recovered, it is immediately switched back to the first path, which causes a problem of interrupting data transmission.
  • the forwarding device when the forwarding device detects the first path failure, The forwarding device sets the first path corresponding to the first sub-action bucket as being used for re-routing and the forwarding state is set to be inactive, and setting the third path corresponding to the third sub-action bucket as After the load sharing and the forwarding state are set to be activated, after refreshing the first group of tables, the method further includes:
  • the forwarding device sends a first notification message to the control device, where the first notification message indicates that the first path is faulty;
  • the forwarding device receives the updated first group of entries from the control device, and the updated first group of entries indicates that the first path corresponding to the first sub-action bucket is used for re-routing and The forwarding state is inactive, and the third path corresponding to the third sub-action bucket is used for load sharing and the forwarding state is activated.
  • the forwarding device refreshes the first group table according to the updated first group of entries.
  • the first path when the first path is faulty, the first path is used as the FRR path according to the updated first group of entries, so that after the first path is recovered, the second path and the third path are available.
  • Performing re-routing protection effectively avoids the problem that the prior art generally switches back to the first path after the first path is recovered, thereby causing the data transmission to be interrupted.
  • control device 30 is applied to a network for controlling forwarding separation, and the control forwarding and separating network includes a control device and a forwarding device, and the control device 30 controls the Forwarding device, referring to FIG. 6-1, the control device 30 includes:
  • the processing module 301 is configured to determine at least three paths for a data flow, and generate a first group of entries and flow entries of the data flow, where the at least three paths are forwarded by the forwarding device to the destination The transmission path of the device;
  • the sending module 302 is configured to send the flow entry and the first group of entries to the forwarding device, where the flow entry is used to indicate that the forwarding device performs the foregoing when the data stream is matched.
  • the operation of the first set of entries, the first set of entries is used to instruct the forwarding device to set the first path and the second path of the at least three paths as load-sharing paths, and the at least three A third path in the path is set as a path of the rerouting protection of the first path and the second path.
  • the processing module 301 configures a first path and a second path responsible for load sharing for the data flow, and configures a third path responsible for rerouting protection, and generates an indication that the forwarding device uses the first path and the second path as a load-sharing path, and a third path that performs re-routing protection on the first and second paths, and generates a flow entry that is sent to the first group of entries, and is sent to the forwarding device by using the sending module 302.
  • the forwarding device can switch to the third path forwarding packet according to the first group of entries, which can solve the problem that multiple load balancing paths exist in the network, and any load sharing path fails.
  • the problem of re-routing protection is to reduce the packet loss rate and improve the processing efficiency when the fault occurs.
  • the first group of the entry includes the first group type field and the first An action bucket field, where the first group type field is used to indicate that the current group is configured to include a load sharing path and a rerouting protection path.
  • the first action bucket field is configured to indicate that the first path and the second path are load balancing paths of the data flow, and the forwarding state is activated, and indicating that the third path is the load The rerouting path when the path fails is shared and the forwarding status is inactive.
  • the first action bucket field includes a first sub-action bucket and a second sub-action bucket.
  • a third sub-action bucket the first sub-action bucket indicating that the first path is a load sharing path of the data flow and the forwarding state is active, and the second sub-action bucket indicates that the second path is The load balancing path of the data flow is described, and the forwarding state is activated.
  • the third sub-action bucket indicates that the third path is the re-routing path when the load sharing path is faulty and the forwarding state is inactive.
  • the first group of entries further includes a first group of identifiers
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, where the matching field carries the matching information of the data flow, and the operation instruction field carries the first group identifier that is sent to the first group of entries.
  • the relationship between the first group of entries and the flow entry is configured, and the data flow packet is sent to the first group of entries through the flow entry, and the data service requirement is not high and the network architecture is not In the complex network environment, the purpose of reducing packet loss rate and improving network stability is achieved.
  • the processing module 301 is further configured to:
  • the second set of entries includes a second set of identifiers, a second set of type fields, and a second action bucket field, where the second set of identifiers is used to identify the first
  • the second set of type fields is used to indicate load sharing
  • the second action bucket field includes a fourth subaction bucket, and the fourth subaction bucket carries an indication to the first set of tables.
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the cascading relationship between the first group of entries and the second group of entries is as shown in Figure 2-3.
  • the multi-level group table consisting of the first group table and the second group table in the alternative embodiment further ensures that the packet can be forwarded normally, and the packet is first redirected to the second group entry to implement the classification.
  • the processing and the division of labor are clear, effectively improving the forwarding processing efficiency, optimizing the forwarding mechanism, and improving the processing efficiency of the message.
  • control device 30 also includes a receiving module 303:
  • the receiving module 303 is configured to receive, after the sending module 302 sends the flow entry and the first group entry to the forwarding device, a first notification message from the forwarding device, where the first The notification message indicates that the first path is faulty;
  • the processing module 301 is further configured to:
  • the sending module 302 is further configured to send the updated first group of entries to the forwarding device.
  • the sending module 302 sends the updated first group of entries to the fifth optional embodiment.
  • the receiving module 303 is further configured to:
  • the second notification message After receiving the second notification message from the forwarding device, the second notification message indicates failure recovery of the first path;
  • the processing module 301 is further configured to:
  • the second notification message sets a forwarding state of the first sub-action bucket to be activated, and sets a forwarding state of the third sub-action bucket to be inactive to update the first group table;
  • the sending module 302 is further configured to send the updated first group of entries to the forwarding device, so that the forwarding device switches to the updated group according to the updated first group table.
  • the third path forwards the message.
  • the sending module 302 is located in the seventh embodiment to the fourth optional embodiment.
  • the receiving module 303 is further configured to:
  • the processing module 301 is further configured to set, according to the third notification message received by the receiving module 303, the first path corresponding to the first sub-action bucket as being used for re-routing, and the first sub- The forwarding state of the action bucket is set to be inactive; the third path corresponding to the third sub-action bucket is set to be used for load sharing, and the forwarding state of the third sub-action bucket is set to be activated;
  • the sending module 302 is further configured to send the updated first group of entries to the forwarding device.
  • the data stream can be immediately switched to the third path to complete forwarding, and the report is avoided.
  • the text is sent to the port that has expired and is discarded, causing a problem of service interruption.
  • the control device is described above. The following describes a forwarding device in the embodiment of the present invention.
  • the forwarding device 40 is applied to a network that controls forwarding and separation.
  • the control forwarding and separating network includes a control device and a forwarding device 40.
  • the control device controls the forwarding device 40. Referring to FIG. 7-1, the forwarding device 40 includes:
  • a receiving module 401 configured to receive a flow entry from the control device, and a first set of entries, where the flow entry is used to indicate that the forwarding device performs the foregoing when the data stream is matched
  • the first path and the second path of the at least three paths of the flow calculation are set as the load-sharing path, and the third one of the at least three paths is set as the re-routing of the first path and the second path a protected path, where the at least three paths are transmission paths of the data stream from the forwarding device to the destination forwarding device;
  • the processing module 402 is configured to establish a flow table according to the flow entry received by the receiving module 401, and establish a first group table according to the first group of entries received by the receiving module 401.
  • the processing module 401 controls the flow entry configuration flow table delivered by the device, and configures the first group table by using the first group of entries, so that when the first path and the second path that are load sharing are faulty, Switching to the third path that is responsible for rerouting protection according to the first group of tables can solve the problem of fast rerouting protection when multiple load balancing paths exist on the network, and any load sharing path is faulty.
  • the rate of loss and the processing efficiency of the fault are improved to ensure that packets can be forwarded normally.
  • the first group of entries includes a first group type field and a first An action bucket field, where the first group type field is used to indicate that the current group is a scenario including a load sharing path and a rerouting protection path, where the first action bucket field is used to indicate the first path and the second
  • the path is a load sharing path of the data flow and the forwarding status is activated
  • the third path is a rerouting path when the load sharing path is faulty and the forwarding status is inactive.
  • the third path forwarding packet can be quickly enabled according to the indication of the third sub-action bucket, thereby improving network reliability and data continuity.
  • the first action bucket field includes a first sub-action bucket and a second sub-action. a bucket and a third sub-action bucket, the first sub-action bucket indicating that the first path is a load sharing path of the data flow and the forwarding state is active, and the second sub-action bucket indicates that the second path is The load balancing path of the data flow and the forwarding state is active, and the third sub-action bucket indicates that the third path is a re-routing path when the load sharing path is faulty and the forwarding state is inactive.
  • the third in an optional embodiment, the first group of entries further includes a first group of identifiers
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the packets of the data flow can be sent to the first group through the flow entry.
  • the packets of the data flow can be sent to the first group through the flow entry.
  • the forwarding process of the packets in the forwarding device in the network environment where the data service requirement is not high and the network architecture is not complicated, the packet loss rate and the network stability can be reduced.
  • the receiving module 401 is further configured to:
  • the processing module 402 is further configured to establish, according to the second group of entries, a second group of tables, where the second group of entries includes a second group of identifiers, a second group of type fields, and a second action bucket field,
  • the second set of identifiers is used to identify the second set of entries
  • the second set of type fields is used to indicate load sharing
  • the second action bucket field includes a fourth subaction bucket, and the fourth subaction bucket Carrying the indication to the first group of identifiers of the first group of entries;
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the multi-level group table consisting of the first group table and the second group table in the alternative embodiment further ensures that the packet can be forwarded normally, and the packet is first redirected to the second group entry to implement hierarchical processing. Clear division of labor, Effectively improve forwarding processing efficiency, optimize forwarding mechanism, and improve packet processing efficiency.
  • the processing module 401 is specifically configured to:
  • the device After the receiving module 401 receives the packet of the data stream from the other forwarding device, the device searches for the flow table by using the identifier information of the data stream, and after matching the flow table entry, performing the processing to the The first group of identifiers corresponding to the action of the first group of tables, after jumping to the first group of tables, according to the instructions of the first sub-action bucket and the second sub-action bucket, the packet Performing load sharing forwarding on the first path or the second path;
  • the processing module 402 performs load sharing forwarding on the third path or the second path.
  • the data stream can be immediately switched to the third path to complete forwarding, and the report is avoided.
  • the text is sent to the port that has expired and is discarded, causing a problem of service interruption.
  • the forwarding device 40 further includes a sending module 403.
  • the sending module 403 is specifically configured to:
  • processing module 402 sets the forwarding state of the third sub-action bucket to be activated, sending a first notification message to the control device, where the first notification message indicates that the first path is faulty;
  • the receiving module 401 is further configured to receive an updated first group of entries from the control device, where the updated first group of entries indicates that a forwarding state of the first sub-action bucket is inactive, and Instructing the forwarding status of the third sub-action bucket to be active;
  • the processing module 402 is further configured to refresh the first group of tables according to the updated first group of entries.
  • the data stream can be immediately switched to the third path to complete the forwarding. Avoid the problem that packets are sent to the expired port and are discarded, resulting in service interruption.
  • the processing module 402 when the fault recovery of the first path is detected, the processing module 402 is And configured to set a forwarding state of the first sub-action bucket to be activated, and set a forwarding state of the third sub-action bucket to be inactive;
  • processing module 402 is further configured to perform load sharing forwarding on the first path.
  • the processing module 402 is configured according to any one of the foregoing second to fourth alternative embodiments.
  • the processing module 401 is further configured to receive the data from other forwarding devices by using the receiving module 401.
  • the flow table is searched for by using the identifier of the data stream, and the flow table entry is matched, and the action of the first group table corresponding to the first group identifier is performed, and the jump is performed.
  • the load balancing and forwarding of the packet on the first path or the second path is performed according to the indications of the first sub-action bucket and the second sub-action bucket. ;
  • the forwarding device When the forwarding device detects the first path failure, setting the first path corresponding to the first sub-action bucket to be used for re-routing and the forwarding state is set to inactive, and the third The third path corresponding to the sub-action bucket is set for load sharing and the forwarding state is set to be activated to refresh the first group table;
  • the processing module 402 performs load sharing forwarding on the third path or the second path.
  • the first path is used as the FRR path, so that after the first path is recovered, the second path and the third path can be rerouted to protect the existing path.
  • the first path is recovered, it is immediately switched back to the first path, which causes a problem of interrupting data transmission.
  • the present invention also provides a communication system 50 for controlling a network for controlling forwarding separation.
  • the communication system 50 includes:
  • Control device 30 The embodiment corresponding to the above FIG. 6-1 and the first to sixth alternative embodiments are described Control device 30;
  • the control device 30 configures the first path and the second path responsible for load sharing for the data flow, and configures the third path responsible for re-routing protection, and generates an indication that the forwarding device 40 will use the first path and the second path. And a third path that performs re-routing protection on the first and second paths, and generates a flow entry that is instructed to perform the flow to the first group of entries, and the flow entry and the first group
  • the device is delivered to the forwarding device, so that when the load balancing path is faulty, the forwarding device switches to the third path forwarding packet according to the first group of entries, which can solve multiple load balancing paths in the network, and any load sharing is performed.
  • the problem of fast reroute protection cannot be implemented. This reduces the packet loss rate and improves the processing efficiency when the fault occurs.
  • the present invention also provides a computer storage medium storing a program that, when executed, includes some or all of the steps of the above-described routing.
  • the present invention also provides a computer storage medium storing a program that, when executed, includes some or all of the steps of the above-described control device or forwarding device performing a route.
  • FIG. 9 is another schematic structural diagram of a control device 90 according to an embodiment of the present invention.
  • Control device 90 may include at least one receiver 901, at least one transmitter 902, at least one processor 903 and memory 904, at least one network interface 905, or other user interface 906 to enable connection communication between these devices, through at least one
  • the network interface (which may be wired or wireless) implements a communication connection between the system gateway and at least one other network element, and may use an Internet, a wide area network, a local network, a metropolitan area network, or the like.
  • the memory 904 can include read only memory and random access memory, and provides instructions and data to the processor 903.
  • a portion of the memory 904 can also include, possibly including, a high speed random access memory (RAM), and possibly a non- Un-volatile memory.
  • RAM high speed random access memory
  • the memory 904 stores the following elements, executable modules or data structures, or a subset thereof, or an extended set thereof:
  • Operation instructions include various operation instructions for implementing various operations.
  • Operating system Includes a variety of system programs for implementing various basic services and handling hardware-based tasks.
  • control device 90 is applied to control a network for forwarding and separating.
  • the control forwarding and separating network includes a control device 90 and a forwarding device, and the control device 90 controls the forwarding device, and the processor 903 calls
  • the operation instruction stored in the memory 904 (which can be stored in the operating system) performs the following operations:
  • Determining at least three paths for the data flow and generating a first group of entries and a flow entry of the data flow, where the at least three paths are transmission paths of the data flow from the forwarding device to the destination forwarding device;
  • the sender 902 Sending, by the sender 902, the flow entry and the first group of entries to the forwarding device, where the flow entry is used to indicate that the forwarding device performs the first to the first when matching the data flow
  • the operation of the group entry the first set of entries is used to instruct the forwarding device to set the first path and the second path of the at least three paths as load-sharing paths, and the at least three paths are
  • the third path is set to a path of the rerouting protection of the first path and the second path.
  • the first group of type entries includes a first group type field and a first action bucket field, where the first group type field is used to indicate that the current group is a scenario that includes a load sharing path and a rerouting protection path.
  • the first action bucket field is configured to indicate that the first path and the second path are load balancing paths of the data flow, and that the forwarding status is activated, and that the third path is when the load sharing path is faulty The rerouting path and the forwarding status is inactive.
  • the first action bucket field includes a first sub-action bucket, a second sub-action bucket, and a third sub-action bucket, where the first sub-action bucket indicates that the first path is a load of the data flow.
  • the second sub-action bucket indicates that the second path is a load sharing path of the data flow and the forwarding state is active, and the third sub-action bucket indicates the third path as The load sharing path is a rerouting path when the path fails and the forwarding status is inactive.
  • the first group of entries further includes a first group identifier
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the processor 903 may perform the following steps:
  • the second set of entries includes a second set of identifiers, a second set of type fields, and a second action bucket field, where the second set of identifiers is used to identify the first
  • the second set of type fields is used to indicate load sharing
  • the second action bucket field includes a fourth subaction bucket, and the fourth subaction bucket carries an indication to the first set of tables.
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the processor 903 may further perform the following steps:
  • the processor 903 may further perform the following steps:
  • the first set of entries that are updated again are sent to the forwarding device by the transmitter 902.
  • the processor 903 may further perform the following steps:
  • the first path corresponding to the first sub-action bucket as being used for re-routing, and setting a forwarding state of the first sub-action bucket to be inactive;
  • Three sons The third path corresponding to the action bucket is set to be used for load sharing, and the forwarding state of the third sub-action bucket is set to be activated;
  • the updated first set of entries is sent to the forwarding device by the sender 902.
  • FIG. 10 is another schematic structural diagram of a forwarding device 100 according to an embodiment of the present invention.
  • the forwarding device 100 can include at least one receiver 1001, at least one transmitter 1002, at least one processor 1003 and memory 1004, at least one network interface 1005, or other user interface 1006 to enable connection communication between these devices, through at least one
  • the network interface (which may be wired or wireless) implements a communication connection between the system gateway and at least one other network element, and may use an Internet, a wide area network, a local network, a metropolitan area network, or the like.
  • the memory 1004 can include a read only memory and a random access memory, and provides instructions and data to the processor 1003.
  • a portion of the memory 1004 can also include, possibly including, a high speed random access memory (RAM), and possibly a non- Un-volatile memory.
  • RAM high speed random access memory
  • the memory 1004 stores the following elements, executable modules or data structures, or a subset thereof, or an extended set thereof:
  • Operation instructions include various operation instructions for implementing various operations.
  • Operating system Includes a variety of system programs for implementing various basic services and handling hardware-based tasks.
  • the forwarding device is applied to a network that controls forwarding and separation.
  • the control forwarding and separating network includes a control device and a forwarding device, the control device controls the forwarding device, and the processor 1003 stores the memory by calling the memory 1004.
  • the operation instruction (which can be stored in the operating system), and performs the following operations:
  • the receiver 1001 Receiving, by the receiver 1001, a flow entry and a first set of entries from the control device, where the flow entry is used to indicate that the forwarding device performs a process to the first group when matching the data flow
  • the operation of the entry the first set of entries is used to indicate that the forwarding device sets the first path and the second path of the at least three paths calculated by the control device for the data flow as a path for load sharing, and
  • the third path of the at least three paths is set as a path of the rerouting protection of the first path and the second path, where the at least three paths are the data flow from the forwarding device to the destination forwarding device Transmission path
  • the first group of type entries includes a first group type field and a first action bucket field, where the first group type field is used to indicate that the current group is a scenario that includes a load sharing path and a rerouting protection path.
  • the first action bucket field is configured to indicate that the first path and the second path are load balancing paths of the data flow, and that the forwarding status is activated, and that the third path is when the load sharing path is faulty The rerouting path and the forwarding status is inactive.
  • the first action bucket field includes a first sub-action bucket, a second sub-action bucket, and a third sub-action bucket, where the first sub-action bucket indicates that the first path is a load of the data flow.
  • the second sub-action bucket indicates that the second path is a load sharing path of the data flow and the forwarding state is active, and the third sub-action bucket indicates the third path as The load sharing path is a rerouting path when the path fails and the forwarding status is inactive.
  • the first group of entries further includes a first group identifier
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the first group of identifiers that are directed to the first group of entries.
  • the processor 1003 specifically performs the following steps:
  • the receiver 1001 Receiving, by the receiver 1001, a second set of entries from the control device, and establishing a second set of tables according to the second set of entries, where the second set of entries includes a second set of identifiers, and a second set of types a field and a second action bucket field, the second group of identifiers is used to identify the second group of entries, the second group type field is used to indicate load sharing, and the second action bucket field includes a fourth child An action bucket, the fourth sub-action bucket carrying the first group of identifiers that are directed to the first group of entries;
  • the flow entry is used to indicate that when the forwarding device matches the data flow, performing operations to the first group of entries includes:
  • the flow entry includes a matching field and an operation instruction field, the matching field carries matching information of the data flow, and the operation instruction field carries the second group identifier indicating the destination to the second group of entries.
  • the processor 1003 may further perform one of the following operational steps:
  • the receiver 1001 After receiving the packet of the data stream from the other forwarding device, the receiver 1001 searches for the flow table by using the identifier information of the data stream, and after matching the flow entry, performing the process to the first The action of the first group table corresponding to the group identifier, after jumping to the first group table, according to the instructions of the first sub-action bucket and the second sub-action bucket, the message is in the office Performing load sharing forwarding on the first path or the second path;
  • the forwarding device when the forwarding device detects the first path failure, the forwarding device sets a forwarding state of the first sub-action bucket to be inactive, and the third sub-action bucket is The forwarding state is set to be activated to refresh the first group of tables, and the processor 1003 may perform the following steps:
  • the processor 1003 may further perform the following steps:
  • the packet is forward-loaded and forwarded on the first path.
  • the processor 1003 may further perform the following steps:
  • the receiver 1001 After receiving the packet of the data stream from the other forwarding device, the receiver 1001 searches for the flow table by using the identifier information of the data stream, matches the flow entry, and performs the process to the first group. Identifying the action of the corresponding first group of tables, after jumping to the first group of tables, according to the indications of the first sub-action bucket and the second sub-action bucket, the message is in the Performing load sharing forwarding on the first path or the second path;
  • the forwarding device When detecting the first path failure, the forwarding device sets the first path corresponding to the first sub-action bucket as being used for re-routing and the forwarding state is set to be inactive, and the third is to be The third path corresponding to the sub-action bucket is set for load sharing and the forwarding state is set to be activated to refresh the first group table;
  • the processor 1003 may further perform the following steps:
  • the receiver 1001 Receiving, by the receiver 1001, the updated first group of entries from the control device, the updated first group of entries indicating that the first path corresponding to the first sub-action bucket is used for re-routing and The forwarding state is inactive, and the third path corresponding to the third sub-action bucket is used for load sharing and the forwarding state is activated.
  • the disclosed system, apparatus, and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative
  • the division of the unit is only a logical function division, and the actual implementation may have another division manner, for example, at least two units or components may be combined or may be integrated into another system, or some features may be Ignore, or not execute.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to at least two network units. . Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

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

Abstract

本发明提供了一种路由的方法、相关设备及系统,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,所述方法包括:通过为数据流配置负责负载分担的第一路径和第二路径,及配置负责重路由保护的第三路径,并生成指示转发设备将第一、第二路径作为负载分担的路径,及对第一、第二路径进行重路由保护的第三路径,以及生成指示执行去往所述第一组表项的流表项,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现快速重路由保护的问题,有效降低报文的丢失率,及提高故障时的处理效率,保证报文能够正常转发。

Description

一种路由的方法、相关设备及系统 技术领域
本发明涉及网络通信技术领域,尤其涉及的是一种路由的方法、相关设备及系统。
背景技术
软件自定义网络SDN(software-defined network)系统是一种控制与管理分离的新型网络架构,其关键组件包括开放流OpenFlow交换机和控制设备。控制设备和OpenFlow交换机之间通过OpenFlow协议规范的控制通道完成消息的交互和信息的传递,实现将交换设备的数据转发层和控制层分离和底层硬件的虚拟化,即在OpenFlow交换机上转发数据,在控制设备上控制数据的转发。控制设备通过全网络视图来实现管控功能,为OpenFlow交换机生成转发流表,OpenFlow交换机根据转发流表来转发数据包。
但是,在设置了多条负载分担路径的网络环境中,当该多条负载分担路径中的任一路径的下一跳故障时,现有基于OpenFlow协议的SDN网络不支持执行对该条故障的负载分担路径进行快速重路由的操作。
发明内容
本发明提供了一种路由的方法、相关设备及系统,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现重路由保护的问题。
本发明第一方面提供了一种路由的方法,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,所述方法包括:
所述控制设备为一条数据流确定至少三条路径,并生成所述数据流的第一组表项和流表项,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
所述控制设备向所述转发设备发送所述流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述至少三条路径中的第一路径 与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
结合第一方面,在第一方面的第一种可能的实现方式中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
结合第一方面的第一种可能的实现方式,本发明第一方面的第二种可能的实现方式中,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,所述负载分担路径故障时,所述负载分担路径对应的标识字段为非激活状态,所述第三标识字段为激活状态。
结合第一方面或者第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
可选的,所述第一组表项还包括第一组标识,所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
结合第一方面或者第一方面的第一种至第二种可能的实现方式中任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述方法还包括:
所述控制设备还为所述数据流生成第二组表项,所述第二组表项中包括第 二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
结合第一方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第一方面的第五种可能的实现方式中,在所述控制设备向所述转发设备发送所述流表项和所述第一组表项之后,所述方法还包括:
所述控制设备接收来自所述转发设备的第一通知消息,所述第一通知消息指示所述第一路径故障;
所述控制设备根据所述第一通知消息将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活;
所述控制设备将更新后的所述第一组表项发送至所述转发设备。
结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,在所述控制设备将更新后的所述第一组表项发送至所述转发设备之后,所述方法还包括:
所述控制设备接收来自所述转发设备的第二通知消息后,所述第二通知消息指示所述第一路径的故障恢复;
所述控制设备根据所述第二通知消息将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
所述控制设备将再次更新后的所述第一组表项发送至所述转发设备。
结合第一方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第一方面的第六种可能的实现方式中,在所述控制设备向所述转发设备发送所述流表项和所述第一组表项之后,所述方法还包括:
所述控制设备接收来自所述转发设备的第三通知消息,所述第三通知消息 指示所述第一路径故障;
所述控制设备根据所述第三通知消息将所述第一子动作桶对应的所述第一路径设置为用于重路由,并将所述第一子动作桶的转发状态设置为未激活;将所述第三子动作桶对应的所述第三路径设置为用于负载分担,并将所述第三子动作桶的转发状态设置为激活;
所述控制设备将更新后的所述第一组表项发送至所述转发设备。
本发明第二方面提供一种路由的方法,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,所述方法包括:
所述转发设备接收来自所述控制设备的流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述控制设备为一条数据流计算的至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
所述转发设备根据所述流表项建立流表,根据所述第一组表项建立第一组表。
结合第二方面,在第二方面的第一种可能的实现方式中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担 路径故障时的重路由路径且转发状态为未激活。
结合第二方面或者及第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述第一组表项还包括第一组标识,所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
结合第二方面或者第二方面的第一种或第二种可能的实现方式,在第二方面的第四种可能的实现方式中,所述方法还包括:
所述转发设备接收来自所述控制设备的第二组表项,并根据所述第二组表项建立第二组表,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
结合第二方面或者第二方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第二方面的第五种可能的实现方式中,所述转发设备接收来自所述控制设备的流表项和第一组表项之后,还包括:
所述转发设备接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项后,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表;
相应地,所述转发设备将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
结合第二方面的第五种可能的实现方式,在第二方面的第六种可能的实现 方式中,当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表还包括:
所述转发设备向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
所述转发设备接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶的转发状态为未激活,及指示所述第三子动作桶的转发状态为激活;
所述转发设备根据所述更新后的第一组表项刷新所述第一组表。
结合第二方面的第六种可能的实现方式,在第二方面的第七种可能的实现方式中,所述方法还包括:
当所述转发设备检测到所述第一路径的故障恢复时,所述转发设备将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
相应地,所述转发设备将所述报文在所述第一路径上进行负载分担转发。
结合第二方面或者第二方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第二方面的第八种可能的实现方式中,所述转发设备根据所述流表项建立流表,及根据所述第一组表项建立第一组表之后,还包括:
所述转发设备接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表;
相应地,所述转发设备将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
结合第二方面的第八种可能的实现方式,在第二方面的第九种可能的实现方式中,所述当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表之后还包括:
所述转发设备向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
所述转发设备接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶对应的所述第一路径用于重路由且转发状态为未激活,以及指示所述第三子动作桶对应的所述第三路径用于负载分担且转发状态为激活;
所述转发设备根据所述更新后的第一组表项刷新所述第一组表。
本发明第三方面提供一种控制设备,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,所述控制设备包括:
处理模块,用于为一条数据流确定至少三条路径,并生成所述数据流的第一组表项和流表项,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
发送模块,用于向所述转发设备发送所述流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
结合第三方面,在第三方面的第一种可能的实现方式中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,
所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
结合第三方面或者第三方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
结合第三方面或者第三方面的第一种或第二种可能的实现方式,在第一方面的第四种可能的实现方式中,所述处理模块还用于:
为所述数据流生成第二组表项,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
结合第三方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第三方面的第五种可能的实现方式中,在所述发送模块向所述转发设备发送所述流表项和所述第一组表项之后,所述接收模块还用于:
接收来自所述转发设备的第一通知消息,所述第一通知消息指示所述第一 路径故障;
所述处理模块还用于根据所述接收模块接收到的所述第一通知消息将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活;
所述发送模块还用于将所述处理模块更新的所述第一组表项发送至所述转发设备。
结合第三方面的第五种可能的实现方式,在第三方面的第六种可能的实现方式中,在所述发送模块将更新后的所述第一组表项发送至所述转发设备之后,所述接收模块还用于:
接收来自所述转发设备的第二通知消息后,所述第二通知消息指示所述第一路径的故障恢复;
所述处理模块还用于根据所述接收模块接收到的所述第二通知消息将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
所述发送模块还用于将再次所述处理模块更新的所述第一组表项发送至所述转发设备。
结合第三方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第三方面的第七种可能的实现方式中,在所述发送模块向所述转发设备发送所述流表项和所述第一组表项之后,所述接收模块还用于:
接收来自所述转发设备的第三通知消息,所述第三通知消息指示所述第一路径故障;
所述处理模块还用于根据所述接收模块接收到的所述第三通知消息将所述第一子动作桶对应的所述第一路径设置为用于重路由,并将所述第一子动作桶的转发状态设置为未激活;将所述第三子动作桶对应的所述第三路径设置为用于负载分担,并将所述第三子动作桶的转发状态设置为激活;
所述发送模块还用于将所述处理模块更新后的所述第一组表项发送至所述转发设备。
本发明第四方面提供一种转发设备,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设 备,所述转发设备包括:
接收模块,用于接收来自所述控制设备的流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述控制设备为一条数据流计算的至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
处理模块,用于根据所述流表项建立流表,根据所述第一组表项建立第一组表。
结合第四方面,在第四方面的第一种可能的实现方式中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
结合第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
结合第四方面或者第四方面的第一种或第二种可能的实现方式,本发明第二方面的第三种可能的实现方式中,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
结合第四方面或者第四方面的第一种或第二种可能的实现方式,在第四方面的第四种可能的实现方式中,所述接收模块还用于:
接收来自所述控制设备的第二组表项;
所述处理模块还用于根据所述接收模块接收到的所述第二组表项建立第二组表,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
结合第四方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第四方面的第五种可能的实现方式中,所述转发设备接收来自所述控制设备的流表项和第一组表项之后,所述处理模块还用于:
在通过所述接收模块接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项后,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当检测到所述第一路径故障时,将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表;
相应地,所述处理模块将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
结合第四方面的第五种可能的实现方式,在第四方面的第六种可能的实现方式中,所述转发设备还包括发送模块,所述发送模块还用于:
在所述处理模块将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活后,向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
所述接收模块还用于接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶的转发状态为未激活,及指示所述第三子动作桶的转发状态为激活;
所述处理模块还用于根据所述接收模块接收到的更新后的第一组表项刷新所述第一组表。
结合第四方面的第六种可能的实现方式,在第四方面的第七种可能的实现方式中,所述处理模块还用于:
当检测到所述第一路径的故障恢复时,将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
相应地,所述处理模块将所述报文在所述第一路径上进行负载分担转发。
结合第四方面的第二种至第四种可能的实现方式中任一种可能的实现方式,在第四方面的第八种可能的实现方式中,在所述处理模块根据所述流表项建立流表,及根据所述第一组表项建立第一组表之后,所述处理模块还用于:
通过所述接收模块接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当检测到所述第一路径故障时,将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表;
相应地,所述处理模块将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
结合第四方面的第八种可能的实现方式,在第四方面的第九种可能的实现方式中,所述发送模块还用于:
向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
所述接收模块还用于接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶对应的所述第一路径用于重路由且转发状态为未激活,以及指示所述第三子动作桶对应的所述第三路径用于负载分担且转发状态为激活;
所述处理模块还用于根据所述接收模块接收到的所述更新后的第一组表项刷新所述第一组表。
本发明第五方面提供一种通信系统,所述通信系统包括:
如上述第三方面或者第三方面的第一种至第七种可能的实现方式中任一所述的控制设备;
如上述第四方面或者第四方面的第一种至第九种可能的实现方式中任一所述的转发设备。
从以上技术方案可以看出,通过为数据流配置负责负载分担的第一路径和第二路径,及配置负责重路由保护的第三路径,并生成指示转发设备将第一、第二路径作为负载分担的路径,及对第一、第二路径进行重路由保护的第三路径,以及生成指示执行去往所述第一组表项的流表项,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现重路由保护的问题,有效降低报文的丢失率,及提高故障时的处理效率,保证报文能够正常转发。
附图说明
图1为本发明实施例中一种路由的方法的实施例示意图;
图1-1为本发明实施例中两条负载分担路径和一条FRR路径的场景示意图;
图2-1为本发明实施例中第一组表项的结构示意图;
图2-2为本发明实施例中第二组表项的结构示意图;
图2-3为本发明实施例中第一组表项与第二组表项的级联关系结构示意图;
图3为本发明实施例报文在转发设备内的转发流程图;
图4为本发明实施例报文在转发设备内的转发流程图;
图5为本发明实施例中一种路由的方法的另一实施例示意图;
图6-1为本发明实施例一种控制设备的结构示意图;
图6-2为本发明实施例一种控制设备的另一结构示意图;
图7-1为本发明实施例一种转发设备的结构示意图;
图7-2为本发明实施例一种转发设备的另一结构示意图;
图8为本发明实施例一种通信系统的结构示意图;
图9本发明实施例一种控制设备的另一结构示意图;
图10为本发明实施例一种转发设备的另一结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明提供一种路由的方法、相关设备及系统,主要应用于控制转发分离 的网络,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现重路由保护的问题。
快速重路由(FRR,Fast Re-Route)技术为受限的标签转发路径保护机制,可以减少网络故障时的数据丢失。一般通过建立本地备份路径来减小标签转发路径受到路径故障的影响,即在检测到业务路径发生故障时,将业务路径切换至备份路径上,利用备份路径绕过故障的业务路径,以减少数据流量丢失,从而实现保护。另外,为实现负载分担,在多条不同路径到达同一目的地址的网络环境中,会设置等价多路径(ECMP,Equal-CostMultipathRouting),以实现等值情况下,对业务流量在多条路径上进行负载分担;或者设置非等价多路径,以实现非等值情况下,对业务流量在多条路径上进行负载分担。
在基于OpenFlow协议的SDN系统中,通常需要建立业务路径和FRR路径的保护机制,即为至少两条负载分担的业务路径配置一条FRR路径。IP报文转发过程中,将报文与流表进行匹配,匹配到流表后,按该流表中的指令或操作类型执行转发过程,在报文进入转发设备后,首先查找进入端口Ingress Port表,然后查找下一张流表;在检测到至少两条负载分担的业务路径中的任一条故障时,转发设备选取的组类型GroupType为对至少两条负载分担的业务路径进行快速重路由保护,以将该故障的业务路径切换至对应的FRR路径,实现保护。
需要说明的是,本发明所述的方法可以应用于负载分担路径:FRR路径=n:m的重路由保护机制,即负载分担路径的数量n≥2,FRR路径的数量m≥1,即表明可以为n条负载分担路径配置至少一条FRR路径进行保护,具体数量不作限定。另外,在负载分担路径较多时,可以分批进行保护,例如共有96条负载分担路径和4条FRR路径,可以每24条负载分担路径为一组,为其配备一条FRR路径进行重路由保护,每一组的转发操作互不受影响;也可以每48条负载分担路径为一组,为其配备两条FRR路径进行重路由保护,每一组的转发操作互不影响,具体数量分配机制本文不作限定。
另外,本文中的流表在Openflow协议中,在广义上,组表可以称之为流表,流表也可以包括组表,即本技术领域里,将实现组表功能的组表可能称之为流表,任何关于组表和流表名称之间变换,均落在本发明的保护范围之内。
以下结合图1,从控制设备侧对本发明实施例所提供的一种路由的方法进 行详细说明,该方法应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,本发明实施例包括:
101、所述控制设备为一条数据流确定至少三条路径,并生成所述数据流的第一组表项和流表项,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
102、所述控制设备向所述转发设备发送所述流表项和第一组表项;
其中,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
所述第一路径、所述第二路径和第三路径为所述数据流从所述转发设备到目的转发设备的传输路径。
实际应用中,可以实现至少两条负载分担路径和至少一条FRR路径的场景(即N:M),具体数量根据实际业务而定,本文中不作限定。如图1-1以两条负载分担路径和一条FRR路径的场景为例,控制设备根据用户的业务需求,为一条数据流计算出三条从转发设备110-1到目的转发设备110-5的路径,其中第一条负载分担路径为从转发设备110-1经过转发设备110-2至目的转发设备110-5的路径,第二条负载分担路径为从转发设备110-1经过转发设备110-3至目的转发设备110-5的路径,FRR路径为从转发设备110-1经过转发设备110-4至目的转发设备110-5的路径。
上述控制设备向转发设备110-1下发流表项和第一组表项,可以理解的是,在报文到达目的转发设备110-5时,上述控制设备会将为相应的流表项和组表项下发至该目的转发设备110-5,即上述转发设备110-1可以是SDN网络中的任一转发设备。
在报文转发过程中,报文在与所述流表项匹配完,跳转至所述第一组表项,所述转发设备根据所述第一组表项的指示转发所述报文,并在确定所述第 一路径或所述第二路径故障时,将转发报文的路径切换至所述第三路径转发所述报文。
具体的报文进入上述转发设备端口后的转发操作可参考图3对应的转发设备侧的方法实施例,此处不作赘述。
本发明实施例中,通过为数据流配置负责负载分担的第一路径和第二路径,及配置负责重路由保护的第三路径,并生成指示转发设备将第一、第二路径作为负载分担的路径,及对第一、第二路径进行重路由保护的第三路径,以及生成指示执行去往所述第一组表项的流表项,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现重路由保护的问题,有效降低报文的丢失率,及提高故障时的处理效率,保证报文能够正常转发。
可选的,在上述图1所对应的实施例的基础上,本发明实施例的第一个可选实施例中,参考图2-1所示的第一组表项的结构示意图,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
实际应用时,所述第一组类型字段可以为所述Openflow协议流表项中的开放流协议组类型-选择和快速重路由(OFPGT-SF,Openflow Protocol Grouptype-Select Fast failover group)字段。
通过本可选实施例,在第一路径或第二路径故障时,根据第二动作桶字段的指示,可以迅速启用第三路径转发报文,能够提高网络的可靠性以及数据的连续性。
可选的,在上述第一个可选实施例的基础上,本发明实施例的第二个可选实施例中,参阅图2-1,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载 分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
所述第三子动作桶对应所述第一动作桶字段的末端位置;
例如,在所述第一路径故障时,所述第一路径对应的第一子动作桶为非激活,所述第三子动作桶为激活。
下面对第一动作桶字段的结构进行说明,如图2-1:
可知,第一动作桶字段包括struct buckets[0]、struct buckets[1]及struct buckets[2],其中,struct buckets[0]、struct buckets[1]两者组成负载分担路径组(即对应第一路径、第二路径);struct buckets[2]为struct buckets[0]、struct buckets[1]两者的备份bucket,即形成对上述两条负载分担路径进行重路由保护。Openflow协议中,每个struct bucket关联一个端口或端口组,可以通过watch port/group标识该端口或端口组的活跃状态。对于OFPGT-SF类型的group,在选择struct bucket进行转发操作时,按照各个struct bucket在第一组表项中定义的顺序(0、1、2…n),选择并执行第一个激活的struct bucket。后文中如若出现本可选实施例中的内容之处,均不再赘述。
在业务需求多,需要配置更多的负载分担路径时,struct buckets的数量也相应增加,并不限于图2-1所示的内容。
当负载分担路径故障时,相应的该负载分担路径组中的故障路径对应的子动作桶会变为非激活,以指示该故障路径不进行当前的转发操作,其中子动作桶中的watch port/group由激活变为非激活;相应的,备份bucket对应的第三子动作桶的转发状态从非激活变为激活,即第三子动作桶中的watch port/group由非激活变为激活,以启用第三路径转发报文,能够提高网络的可靠性以及数据的连续性。
可选的,在上述图1所对应的实施例、及上述第一个和第二个可选实施例中的任一可选实施例的基础上,本发明实施例的第三个可选实施例中,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述 第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
通过配置第一组表项和流表项的关系,可以实现数据流的报文通过流表项发送至第一组表项,具体可参考图3所示的报文在转发设备内的转发流程图,根据本可选实施例,在数据业务需求不高以及网络架构不复杂的网络环境中可以实现减少丢包率、提高网络稳定性的目的。
可选的,在上述图1所对应的实施例、及上述第一个至第二个可选实施例中的任一可选实施例的基础上,参阅图2-2所述的第二组表项,本发明实施例的第四个可选实施例中,所述方法还包括:
所述控制设备为所述数据流生成第二组表项,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识Group id用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识,其中,报文从所述第二组表项去往所述第一组表项时,可通过如图2-3所示的第一组表项与第二组表项的级联关系结构来实现;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识,如图4所示的报文在转发设备内的转发流程图。
可以理解的是,通过上述第三个或第四个可选实施例,可以实现在第一组表项和流表项下发至转发设备后,转发设备利用流表项建立流表,利用第一组表项建立第一组表,以及利用第二组表项建立第二组表,由于控制设备已配置流表项与第一组表项的关系,或配置流表项、第一组表项和第二组表项的关系,所以流表、第一组表及第二组表之间也存在相应的关系。
从而,报文进入转发设备后,报文在与流表匹配,匹配到的最后一个流表 项可以指示报文直接去往第一组表项(如图3),也可以指示报文先去往第二组表项,最后去往第一组表项(如图4)。
该流表可以是单个流表,也可以是多级流表,例如Table0、Table1、…Ta bleN,在多级流表的转发过程中,按照0、1、…N的顺序与报文进行流水线匹配。
同理,第一组表与第二组表可以是单个组表,也可以是多级组表,例如,GroupTable0、GroupTable1、…GroupTableN,在多级组表的转发过程中,按照0、1、…N的顺序与报文进行流水线匹配。
并且,该第二组表项与第一组表项可以组成多级组表(如图2-3),且第一组表项为第二组表项的下一跳的组表项,具体的第一组表项和第二组表项的数量根据实际应用时,所需的负载分担路径的数量或调度算法而定。例如,负载分担路径的数量很多时,在匹配完所述流表项后,需要根据第二组表项来选择相应的第一组表项,分工明确,有效提高转发处理效率以及优化转发机制。
另外,第二组表项仅指示负责负载分担,而第一组表项可用于后续转发过程中的重路由保护。通过本可选实施例中由第一组表和第二组表组成的多级组表,进一步保证报文能够正常转发,及先将报文跳转至第二组表项,实现分级处理,可以提高报文的处理效率。
可选的,在上述第二个至第四个可选实施例中的任一可选实施例的基础上,本发明实施例的第五个可选实施例中,在第一路径和第二路径均正常时,第一子动作桶的转发状态为激活,第二子动作桶的转发状态为激活,及第三子动作桶的转发状态为未激活;在所述控制设备向所述转发设备发送所述流表项和所述第一组表项之后,所述方法还包括:
所述控制设备接收来自所述转发设备的第一通知消息,所述第一通知消息指示所述第一路径故障;
所述控制设备根据所述第一通知消息将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活;
所述控制设备将更新后的所述第一组表项发送至所述转发设备。
通过本可选实施例,可以实现在由第一至第三路径组成的重路由保护机制 中,第一路径故障时,能够立即将数据流切换至第三路径完成转发,避免报文被送至已经失效的端口而被丢弃,导致业务中断的问题。
可选的,在上述第五个可选实施例的基础上,本发明实施例的第六个可选实施例中,所述方法还包括:
在所述控制设备将更新后的所述第一组表项发送至所述转发设备之后,所述方法还包括:
所述控制设备接收来自所述转发设备的第二通知消息后,所述第二通知消息指示所述第一路径的故障恢复;
所述控制设备根据所述第二通知消息将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
所述控制设备将再次更新后的所述第一组表项发送至所述转发设备。
通过本可选实施例,控制设备可以通过流表消息来控制转发设备,可以实现在由第一至第三路径组成的重路由保护机制中,第一路径故障时,控制转发设备将数据流切换至第三路径完成转发,避免报文被送至已经失效的端口而被丢弃,导致业务中断的问题。
可选的,在上述第二至第四个可选实施例中的任一可选实施例的基础上,本发明实施例的第七个可选实施例中,在所述控制设备向所述转发设备发送所述流表项和所述第一组表项之后,所述方法还包括:
所述控制设备接收来自所述转发设备的第三通知消息,所述第三通知消息指示所述第一路径故障;
所述控制设备根据所述第三通知消息将所述第一子动作桶对应的所述第一路径设置为用于重路由,并将所述第一子动作桶的转发状态设置为未激活;将所述第三子动作桶对应的所述第三路径设置为用于负载分担,并将所述第三子动作桶的转发状态设置为激活;
所述控制设备将更新后的所述第一组表项发送至所述转发设备。
本可选实施例中,在第一路径故障时,将第一路径作为FRR路径,使得在第一路径故障恢复后,就可以对第二路径及第三路径进行重路由保护,有效 避免现有技术中一般在第一路径恢复后,便立即切回至第一路径,而导致中断数据传输的问题。
下面从转发设备侧对本发明实施例中的一种路由的方法进行描述,参阅图5,本发明实施例应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,所述方法包括:
201、所述转发设备接收来自所述控制设备的流表项和第一组表项;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述控制设备为数据流计算的至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
202、所述转发设备根据所述流表项建立流表,根据所述第一组表项建立第一组表。
本发明实施例中,通过根据控制设备下发的流表项配置流表,利用第一组表项配置第一组表,使得在作为负载分担的第一路径和第二路径故障时,可以根据第一组表切换至负责重路由保护的第三路径,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现重路由保护的问题,有效降低报文的丢失率,及提高故障时的处理效率,保证报文能够正常转发。
可选的,在上述图5所对应的实施例的基础上,本发明实施例的第一个可选实施例中,参阅图2-1,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态为激活,及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
实际应用时,所述第一组类型字段可以为所述Openflow协议流表项中的开放流协议组类型-选择和快速重路由(OFPGT-SF,Openflow Protocol Grouptype-Select Fast failover group)字段。
通过本可选实施例,在第一路径或第二路径故障时,根据第三子动作桶的指示,可以迅速启用第三路径转发报文,能够提高网络的可靠性以及数据的连续性。
可选的,在上述第一个可选实施例的基础上,本发明实施例的第二个可选实施例中,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,在上述图5所对应的实施例、或者上述第一个至第二个可选实施例中任一可选实施例的基础上,本发明实施例的第三个可选实施例中,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
本可选实施例中,通过配置第一组表项和流表项的关系,可以实现数据流的报文通过流表项发送至第一组表项,在数据业务需求不高以及网络架构不复杂的网络环境中实现减少丢包率、提高网络稳定性的目的。
可选的,在上述图5所对应的实施例、或者上述第一个至第二个可选实施例中任一可选实施例的基础上,本发明实施例的第四个可选实施例中,所述方法还包括:
所述转发设备接收来自所述控制设备的第二组表项,并根据所述第二组表项建立第二组表,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段 用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
其中,报文从所述第二组表项去往所述第一组表项时,可通过如图2-3所示的第一组表项与第二组表项的级联关系结构来实现,通过本可选实施例由第一组表和第二组表组成的多级组表,进一步保证报文能够正常转发,且先将报文跳转至第二组表项,实现分级处理,分工明确,有效提高转发处理效率、优化转发机制及提高报文的处理效率。
由上述内容可知,转发设备建立了流表和第一组表两者的关系,或建立了流表、第一组表及第二组表三者的关系。所述转发设备接收到报文后,将所述报文与所述流表匹配完,最终跳转至所述第一组表;
在SDN网络中,转发设备接收到报文后,对于报文的处理流程如下:
1、报文从入端口进入转发设备后,根据报文中携带的match/metadata匹配字段与所述流表进行匹配;
其中,该流表可以是单个流表,也可以是多级流表,即Table0、Table1、…TableN,按照0、1、…N的顺序,将报文进行流水线匹配。在多级流表的流水线匹配过程中,每级流表被报文匹配到时,便通过执行该级流表中的动作即跳转至流表Goto-table,继续进入下一级流表进行处理,在最后一级流表处理中,执行类型为开放流动作组OFPAT_GROUP的Action,该Action用于指示去往下一阶段转发报文的第一组表Grouptable1,该Action包含第一组表的第一组标识group id。
2、报文去往第一组表;
报文去往第一组表的途径主要有以下两种情况:
A、报文从流表至第一组表完成本次转发操作,如图3;
该报文到达第一组表后,与第一组表进行匹配,其中,该第一组表可以是 单个的组表,也可以是多级组表(如GroupTable0、GroupTable1、…GroupTab leN,在多级组表的转发过程中,按照0、1、…N的顺序与报文进行流水线匹配)。
B、报文依次从流表至第二组表,从第二组表至第一组表完成本次转发操作,如图4;
第一组表或第二组表可以是单个的组表,也可以是多级组表(如GroupTa ble0、GroupTable1、…GroupTableN,在多级组表的转发过程中,按照0、1、…N的顺序与报文进行流水线匹配),通过第一组表和第二组表的配合,可以进一步保证报文能够正常转发,及先将报文发送至第二组表,实现分级处理,可以提高报文的处理效率,优化转发机制。
具体流表的数量以及组表的数量根据实际负载分担路径或设计而定,本文中不作限定。
可选的,在上述第二个至四个可选实施例中任一可选实施例的基础上,本发明实施例的第五个可选实施例中,所述转发设备接收来自所述控制设备的流表项和第一组表项之后,还包括:
所述转发设备接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项后,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表;
相应地,所述转发设备将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
通过本可选实施例,可以实现在由第一至第三路径组成的重路由保护机制中,第一路径或第二路径故障时,能够立即将数据流切换至第三路径完成转发, 避免报文被送至已经失效的端口而被丢弃,导致业务中断的问题。
可选的,在上述第五个可选实施例的基础上,本发明实施例的第六个可选实施例中,当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表还包括:
所述转发设备向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
所述转发设备接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶的转发状态为未激活,及指示所述第三子动作桶的转发状态为激活;
所述转发设备根据所述更新后的第一组表项刷新所述第一组表。
其中,所述未激活用于指示所述第一路径不参与转发操作,所述激活用于指示所述第三路径参与转发;
所述转发设备将所述报文从所述第一路径切换至所述第三路径,可以理解的是,故障的负载分担路径可以是第一路径或第二路径,或其它任意组的负载分担路径,本文仅以第一路径故障为例进行说明,具体本文中不做限定。
通过本可选实施例,可以实现在由第一至第三路径组成的重路由保护机制中,第一路径或第二路径故障时,能够立即将数据流切换至第三路径完成转发,避免报文被送至已经失效的端口而被丢弃,导致业务中断的问题。
可选的,在上述第六个可选实施例的基础上,本发明实施例的第七个可选实施例中,所述方法还包括:
当所述转发设备检测到所述第一路径的故障恢复时,所述转发设备将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
相应地,所述转发设备将所述报文在所述第一路径上进行负载分担转发。
可选的,在上述第二个至第四个可选实施例中任一可选实施例的基础上, 本发明实施例的第八个可选实施例中,所述转发设备根据所述流表项建立流表,及根据所述第一组表项建立第一组表之后,还包括:
所述转发设备接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表;
相应地,所述转发设备将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
本可选实施例中,在第一路径故障时,将第一路径作为FRR路径,使得在第一路径故障恢复后,就可以对第二路径及第三路径进行重路由保护,有效避免现有技术中一般在第一路径恢复后,立即切回至第一路径,而导致中断数据传输的问题。
可选的,在上述第八个可选实施例的基础上,本发明实施例的第九个可选实施例中,所述当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表之后还包括:
所述转发设备向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
所述转发设备接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶对应的所述第一路径用于重路由且转发状态为未激活,以及指示所述第三子动作桶对应的所述第三路径用于负载分担且转发状态为激活;
所述转发设备根据所述更新后的第一组表项刷新所述第一组表。
本可选实施例中,在第一路径故障时,根据更新后的第一组表项将第一路径作为FRR路径,使得在第一路径故障恢复后,就可以对第二路径及第三路径进行重路由保护,有效避免现有技术中一般在第一路径恢复后,立即切回至第一路径,而导致中断数据传输的问题。
以下从设备的角度对本发明的一种控制设备进行具体说明,该控制设备30应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备30控制所述转发设备,参阅图6-1,所述控制设备30包括:
处理模块301,用于为一条数据流确定至少三条路径,并生成所述数据流的第一组表项和流表项,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
发送模块302、用于向所述转发设备发送所述流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
本发明实施例中,通过处理模块301为数据流配置负责负载分担的第一路径和第二路径,及配置负责重路由保护的第三路径,并生成指示转发设备将第一、第二路径作为负载分担的路径,及对第一、第二路径进行重路由保护的第三路径,以及生成指示执行去往所述第一组表项的流表项,并通过发送模块302下发至转发设备,使得转发设备在负载分担路径故障时,根据第一组表项,切换至第三路径转发报文,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现快速重路由保护的问题,有效降低报文的丢失率,及提高故障时的处理效率,保证报文能够正常转发。
可选的,在上述图6-1所对应的实施例的基础上,本发明实施例的第一个可选实施例中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的 场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,在上述第一个可选实施例的基础上,本发明实施例的第二个可选实施例中,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,在上述图6-1所对应的实施例、或者上述第一个至第二个可选实施例中任一可选实施例的基础上,本发明实施例的第三个可选实施例中,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识,根据本可选实施例,通过配置第一组表项和流表项的关系,可以实现数据流的报文通过流表项发送至第一组表项,在数据业务需求不高以及网络架构不复杂的网络环境中实现减少丢包率、提高网络稳定性的目的。
可选的,在上述图6-1所对应的实施例、或者上述第一个至第三个可选实施例中任一可选实施例的基础上,本发明实施例的第四个可选实施例中,所述处理模块301还用于:
为所述数据流生成第二组表项,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
其中,报文从所述第二组表项去往所述第一组表项时,可通过如图2-3所示的第一组表项与第二组表项的级联关系结构来实现,通过本可选实施例中由第一组表和第二组表组成的多级组表,进一步保证报文能够正常转发,及先将报文跳转至第二组表项,实现分级处理,分工明确,有效提高转发处理效率、优化转发机制及提高报文的处理效率。
可选的,在上述第二个至第四个可选实施例中任一可选实施例的基础上,本发明实施例的第五个可选实施例中,参阅图6-2,所述控制设备30还包括接收模块303:
所述接收模块303用于在所述发送模块302向所述转发设备发送所述流表项和所述第一组表项之后,接收来自所述转发设备的第一通知消息,所述第一通知消息指示所述第一路径故障;
所述处理模块301还用于:
根据所述接收模块303接收到的第一通知消息将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以更新所述第一组表;
所述发送模块302还用于将更新后的所述第一组表项发送至所述转发设备。
可选的,在上述第五个可选实施例的基础上,本发明实施例的第六个可选实施例中,在所述发送模块302将更新后的所述第一组表项发送至所述转发设备之后,所述接收模块303还用于:
接收来自所述转发设备的第二通知消息后,所述第二通知消息指示所述第一路径的故障恢复;
所述处理模块301还用于:
所述第二通知消息将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活,以更新所述第一组表;
所述发送模块302还用于将再次更新后的所述第一组表项发送至所述转发设备,以使所述转发设备根据所述更新后的所述第一组表,切换至所述第三路径转发所述报文。
可选的,在上述第二个至第四个可选实施例中任一可选实施例的基础上,本发明实施例的第七个可选实施例中,在所述发送模块302向所述转发设备发送所述流表项和所述第一组表项之后,所述接收模块303还用于:
接收来自所述转发设备的第三通知消息,所述第三通知消息指示所述第一路径故障;
所述处理模块301还用于根据所述接收模块303接收到的第三通知消息将所述第一子动作桶对应的所述第一路径设置为用于重路由,并将所述第一子动作桶的转发状态设置为未激活;将所述第三子动作桶对应的所述第三路径设置为用于负载分担,并将所述第三子动作桶的转发状态设置为激活;
所述发送模块302还用于将更新后的所述第一组表项发送至所述转发设备。
通过本可选实施例,可以实现在由第一至第三路径组成的重路由保护机制中,第一路径或第二路径故障时,能够立即将数据流切换至第三路径完成转发,避免报文被送至已经失效的端口而被丢弃,导致业务中断的问题。
上面对控制设备进行了描述,下面对本发明实施例中的一种转发设备进行描述,该转发设备40应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备40,所述控制设备控制所述转发设备40,参阅图7-1,所述转发设备40包括:
接收模块401,用于接收来自所述控制设备的流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述控制设备为一条数据 流计算的至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
处理模块402,用于根据所述接收模块401接收到的所述流表项建立流表,根据所述接收模块401接收到的所述第一组表项建立第一组表。
本发明实施例中,处理模块401控制设备下发的流表项配置流表,利用第一组表项配置第一组表,使得在作为负载分担的第一路径和第二路径故障时,可以根据第一组表切换至负责重路由保护的第三路径,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现快速重路由保护的问题,有效降低报文的丢失率,及提高故障时的处理效率,保证报文能够正常转发。
可选的,在上述图7-1所对应的实施例的基础上,本发明实施例中的第一个可选实施例中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
通过本可选实施例,在第一路径或第二路径故障时,根据第三子动作桶的指示,可以迅速启用第三路径转发报文,提高网络的可靠性以及数据的连续性。
可选的,在上述第一个可选实施例的基础上,本发明实施例中的第二个可选实施例中,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,在上述图7-1所对应的实施例、或者上述第一个至第二个可选实施例中任一可选实施例的基础上,本发明实施例中的第三个可选实施例中,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
通过配置第一组表项和流表项的关系,可以实现数据流的报文通过流表项发送至第一组表项,具体可参考图3所示的报文在转发设备内的转发流程图,根据本可选实施例,在数据业务需求不高以及网络架构不复杂的网络环境中可以实现减少丢包率、提高网络稳定性的目的。
可选的,在上述图7-1所对应的实施例、或者上述第一个至第二个可选实施例中任一可选实施例的基础上,本发明实施例中的第四个可选实施例中,所述接收模块401还用于:
接收来自所述控制设备的第二组表项;
所述处理模块402还用于根据所述第二组表项建立第二组表,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
通过本可选实施例中由第一组表和第二组表组成的多级组表,进一步保证报文能够正常转发,及先将报文跳转至第二组表项,实现分级处理,分工明确, 有效提高转发处理效率、优化转发机制及提高报文的处理效率。
可选的,在上述第三个或第四个可选实施例的基础上,本发明实施例中的第五个可选实施例中,所述处理模块401具体用于:
在所述接收模块401接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项后,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当检测到所述第一路径故障时,将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表;
相应地,所述处理模块402将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
通过本可选实施例,可以实现在由第一至第三路径组成的重路由保护机制中,第一路径或第二路径故障时,能够立即将数据流切换至第三路径完成转发,避免报文被送至已经失效的端口而被丢弃,导致业务中断的问题。
可选的,在上述第五个可选实施例的基础上,本发明实施例中的第六个可选实施例中,参阅图7-2,所述转发设备40还包括发送模块403,所述发送模块403具体用于:
在所述处理模块402将所述第三子动作桶的转发状态设置为激活后,向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
所述接收模块401还用于接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶的转发状态为未激活,及指示所述第三子动作桶的转发状态为激活;
所述处理模块402还用于根据所述更新后的第一组表项刷新所述第一组表。
通过本可选实施例,可以实现在由第一至第三路径组成的重路由保护机制中,第一路径或第二路径故障时,能够立即将数据流切换至第三路径完成转发, 避免报文被送至已经失效的端口而被丢弃,导致业务中断的问题。
可选的,在上述第六个可选实施例的基础上,本发明实施例中的第七个可选实施例中,当检测到所述第一路径的故障恢复时,所述处理模块402还用于将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
相应地,所述处理模块402还用于将所述报文在所述第一路径上进行负载分担转发。
可选的,在上述第二个至第四个可选实施例中任一可选实施例的基础上,本发明实施例中的第八个可选实施例中,在所述处理模块402根据所述流表项建立流表,及根据所述第一组表项建立第一组表之后,所述处理模块401还用于在通过所述接收模块401接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当所述转发设备检测到所述第一路径故障时,将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表;
相应地,所述处理模块402将所述报文在所述第三路径或所述第二路径上进行负载分担转发。本可选实施例中,在第一路径故障时,将第一路径作为FRR路径,使得在第一路径故障恢复后,就可以对第二路径及第三路径进行重路由保护,有效避免现有技术中一般在第一路径恢复后,便立即切回至第一路径,而导致中断数据传输的问题。
本发明还提供一种通信系统,该通信系统50应用于控制转发分离的网络,参阅图8,该通信系统50包括:
上述图6-1所对应的实施例、及第一个至第六个可选实施例中任一个所描 述的控制设备30;
上述图7-1所对应的实施例、及第一个至第八个可选实施例中任一个所描述的转发设备40。
本发明实施例中,通过控制设备30为数据流配置负责负载分担的第一路径和第二路径,及配置负责重路由保护的第三路径,并生成指示转发设备40将第一、第二路径作为负载分担的路径,及对第一、第二路径进行重路由保护的第三路径,以及生成指示执行去往所述第一组表项的流表项,并将流表项和第一组表项下发至转发设备,使得转发设备在负载分担路径故障时,根据第一组表项,切换至第三路径转发报文,能够解决网络中存在多条负载分担路径,且任一负载分担路径故障时,无法实现快速重路由保护的问题,有效降低报文的丢失率,及提高故障时的处理效率,保证报文能够正常转发。
本发明还提供一种计算机存储介质,该介质存储有程序,该程序执行时包括上述路由的方法中的部分或者全部步骤。
本发明还提供一种计算机存储介质,该介质存储有程序,该程序执行时包括上述控制设备或转发设备执行一种路由的方法中的部分或者全部步骤。
图9是本发明实施例控制设备90的另一结构示意图。控制设备90可包括至少一个接收器901、至少一个发送器902、至少一个处理器903和存储器904、至少一个网络接口905或者其它用户接口906,以实现这些装置之间的连接通信,通过至少一个网络接口(可以是有线或者无线)实现该系统网关与至少一个其它网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
存储器904可以包括只读存储器和随机存取存储器,并向处理器903提供指令和数据,存储器904的一部分还可以包括可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory)。
存储器904存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
在本发明实施例中,该控制设备90应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备90和转发设备,所述控制设备90控制所述转发设备,处理器903通过调用存储器904存储的操作指令(该操作指令可存储在操作系统中),执行如下操作:
为数据流确定至少三条路径,并生成所述数据流的第一组表项和流表项,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
通过发送器902向所述转发设备发送所述流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
其中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
在一些实施方式中,上述处理器903还可以执行以下步骤:
为所述数据流生成第二组表项,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
在一些实施方式中,在所述控制设备向所述转发设备发送所述流表项和所述第一组表项之后,上述处理器903还可以执行以下步骤:
通过接收器901接收到所述转发设备发送的第一通知消息,所述第一通知消息指示所述第一路径故障;根据所述第一通知消息将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活;
并通过发送器902将更新后的所述第一组表项发送至所述转发设备。
在一些实施方式中,在所述控制设备将更新后的所述第一组表项发送至所述转发设备之后,上述处理器903还可以执行以下步骤:
通过接收器901接收到所述转发设备发送的第二通知消息,所述第二通知消息指示所述第一路径的故障恢复;
根据所述第二通知消息将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
通过发送器902将再次更新后的所述第一组表项发送至所述转发设备。
在一些实施方式中,在所述控制设备将更新后的所述第一组表项发送至所述转发设备之后,上述处理器903还可以执行以下步骤:
通过接收器901接收来自所述转发设备的第三通知消息,所述第三通知消息指示所述第一路径故障;
根据所述第三通知消息将所述第一子动作桶对应的所述第一路径设置为用于重路由,并将所述第一子动作桶的转发状态设置为未激活;将所述第三子 动作桶对应的所述第三路径设置为用于负载分担,并将所述第三子动作桶的转发状态设置为激活;
通过发送器902将更新后的所述第一组表项发送至所述转发设备。
图10是本发明实施例转发设备100的另一结构示意图。转发设备100可包括至少一个接收器1001、至少一个发送器1002、至少一个处理器1003和存储器1004、至少一个网络接口1005或者其它用户接口1006,以实现这些装置之间的连接通信,通过至少一个网络接口(可以是有线或者无线)实现该系统网关与至少一个其它网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。
存储器1004可以包括只读存储器和随机存取存储器,并向处理器1003提供指令和数据,存储器1004的一部分还可以包括可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory)。
存储器1004存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
在本发明实施例中,该转发设备应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,处理器1003通过调用存储器1004存储的操作指令(该操作指令可存储在操作系统中),执行如下操作:
通过接收器1001接收来自所述控制设备的流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述控制设备为数据流计算的至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的 传输路径;
根据所述流表项建立流表,根据所述第一组表项建立第一组表。
其中,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
可选的,所述第一组表项还包括第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
在一些实施方式中,上述处理器1003具体执行以下步骤:
通过接收器1001接收来自所述控制设备的第二组表项,并根据所述第二组表项建立第二组表,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
在一些实施方式中,在通过接收器1001接收来自所述控制设备的流表项和第一组表项之后,上述处理器1003还可以执行如下操作步骤中的一个:
通过接收器1001接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项后,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当检测到所述第一路径故障时,将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表;
并将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
在一些实施方式中,当所述转发设备检测到所述第一路径故障时,所述转发设备将所述第一子动作桶的转发状态设置为未激活,并且将所述第三子动作桶的转发状态设置为激活,以刷新所述第一组表,上述处理器1003还可以执行以下步骤:
通过发送器1002向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
通过接收器1001接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶的转发状态为未激活,及指示所述第三子动作桶的转发状态为激活;
根据所述更新后的第一组表项刷新所述第一组表。
在一些实施方式中,上述处理器1003还可以执行以下步骤:
当检测到所述第一路径的故障恢复时,将所述第一子动作桶的转发状态设置为激活,并且将所述第三子动作桶的转发状态设置为未激活;
将所述报文在所述第一路径上进行负载分担转发。
在一些实施方式中,在根据所述流表项建立流表,及根据所述第一组表项建立第一组表之后,上述处理器1003还可以执行以下步骤:
通过接收器1001接收到来自其它转发设备的所述数据流的报文后,用所述数据流的标识信息查找所述流表,匹配到所述流表项,执行去往所述第一组标识对应的所述第一组表的动作,跳转至所述第一组表后,根据所述第一子动作桶和所述第二子动作桶的指示,对所述报文在所述第一路径或所述第二路径上进行负载分担转发;
当检测到所述第一路径故障时,所述转发设备将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表;
并将所述报文在所述第三路径或所述第二路径上进行负载分担转发。
在一些实施方式中,当检测到所述第一路径故障时,将所述第一子动作桶对应的所述第一路径设置为用于重路由且转发状态设置为未激活,以及将所述第三子动作桶对应的所述第三路径设置为用于负载分担且转发状态设置为激活,以刷新所述第一组表之后,上述处理器1003还可以执行以下步骤:
向所述控制设备发送第一通知消息,所述第一通知消息指示所述第一路径故障;
通过接收器1001接收来自所述控制设备的更新后的第一组表项,所述更新后的第一组表项指示所述第一子动作桶对应的所述第一路径用于重路由且转发状态为未激活,以及指示所述第三子动作桶对应的所述第三路径用于负载分担且转发状态为激活;
并根据所述更新后的第一组表项刷新所述第一组表。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意 性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如至少两个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明所提供的一种路由的方法、相关设备及系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (21)

  1. 一种路由方法,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备用于控制所述转发设备,其特征在于,所述方法包括:
    所述控制设备为一条数据流确定至少三条路径,并生成所述数据流的第一组表项和流表项,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
    所述控制设备向所述转发设备发送所述流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
  2. 根据权利要求1所述的方法,其特征在于,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
  3. 根据权利要求2所述的方法,其特征在于,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
  4. 根据权利要求1至3任一所述的方法,其特征在于,所述第一组表项还包括第一组标识;
    所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
    所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流 的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
  5. 根据权利要求1至3任一所述的方法,其特征在于,所述方法还包括:
    所述控制设备还为所述数据流生成第二组表项,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
    所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
    所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
  6. 一种路由的方法,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,其特征在于,所述方法包括:
    所述转发设备接收来自所述控制设备的流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述控制设备为一条数据流计算的至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
    所述转发设备根据所述流表项建立流表,根据所述第一组表项建立第一组表。
  7. 根据权利要求6所述的方法,其特征在于,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以 及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
  8. 根据权利要求7所述的方法,其特征在于,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
  9. 根据权利要求6至8任一所述的方法,其特征在于,所述第一组表项还包括第一组标识,所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
  10. 根据权利要求6至8任一所述的方法,其特征在于,所述方法还包括:
    所述转发设备接收来自所述控制设备的第二组表项,并根据所述第二组表项建立第二组表,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
    所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
  11. 一种控制设备,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备用于控制所述转发设备,其特征在于,所述控制设备包括:
    处理模块,用于为一条数据流确定至少三条路径,并生成所述数据流的第一组表项和流表项,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
    发送模块,用于向所述转发设备发送所述流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的 操作,所述第一组表项用于指示所述转发设备将所述至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径。
  12. 根据权利要求11所述的控制设备,其特征在于,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
  13. 根据权利要求12所述的控制设备,其特征在于,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
  14. 根据权利要求11至13任一所述的控制设备,其特征在于,所述第一组表项还包括第一组标识;
    所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
    所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
  15. 根据权利要求11至13任一所述的控制设备,其特征在于,所述处理模块还用于:
    为所述数据流生成第二组表项,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
    所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述 第一组表项的操作包括:
    所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
  16. 一种转发设备,应用于控制转发分离的网络,所述控制转发分离的网络包括控制设备和转发设备,所述控制设备控制所述转发设备,其特征在于,所述转发设备包括:
    接收模块,用于接收来自所述控制设备的流表项和第一组表项,所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作,所述第一组表项用于指示所述转发设备将所述控制设备为一条数据流计算的至少三条路径中的第一路径与第二路径设置为负载分担的路径,以及将所述至少三条路径中的第三路径设置为所述第一路径和所述第二路径的重路由保护的路径,所述至少三条路径为所述数据流从所述转发设备到目的转发设备的传输路径;
    处理模块,用于根据所述流表项建立流表,根据所述第一组表项建立第一组表。
  17. 根据权利要求16所述的转发设备,其特征在于,所述第一组表项中包含第一组类型字段和第一动作桶字段,所述第一组类型字段用于指示当前组为包含负载分担路径与重路由保护路径的场景,所述第一动作桶字段用于指示所述第一路径和所述第二路径是所述数据流的负载分担路径且转发状态均为激活,以及指示所述第三路径是所述负载分担路径故障时的重路由路径且转发状态为未激活。
  18. 根据权利要求17所述的转发设备,其特征在于,所述第一动作桶字段包含第一子动作桶、第二子动作桶和第三子动作桶,所述第一子动作桶指示所述第一路径是所述数据流的负载分担路径且转发状态为激活,所述第二子动作桶指示所述第二路径是所述数据流的负载分担路径且转发状态为激活,所述第三子动作桶指示所述第三路径作为所述负载分担路径故障时的重路由路径且转发状态为未激活。
  19. 根据权利要求16至18任一所述的转发设备,其特征在于,所述第一 组表项还包括第一组标识;
    所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
    所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第一组表项的所述第一组标识。
  20. 根据权利要求16至18任一所述的转发设备,其特征在于,所述接收模块还用于:
    接收来自所述控制设备的第二组表项;
    所述处理模块还用于根据所述接收模块接收到的所述第二组表项建立第二组表,所述第二组表项中包括第二组标识、第二组类型字段和第二动作桶字段,所述第二组标识用于标识所述第二组表项,所述第二组类型字段用于指示进行负载分担,所述第二动作桶字段包含第四子动作桶,所述第四子动作桶携带指示去往所述第一组表项的所述第一组标识;
    所述流表项用于指示所述转发设备在匹配到所述数据流时,执行去往所述第一组表项的操作包括:
    所述流表项包括匹配字段和操作指令字段,所述匹配字段携带所述数据流的匹配信息,所述操作指令字段携带指示去往所述第二组表项的所述第二组标识。
  21. 一种通信系统,其特征在于,所述通信系统包括:
    如权利要求11至15任一所述的控制设备;
    如权利要求16至20任一所述的转发设备。
PCT/CN2015/082876 2015-06-30 2015-06-30 一种路由的方法、相关设备及系统 Ceased WO2017000243A1 (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN202010854879.1A CN112187645B (zh) 2015-06-30 2015-06-30 一种路由的方法、相关设备及系统
CN201580066873.5A CN107005469B (zh) 2015-06-30 2015-06-30 一种路由的方法、相关设备及系统
PCT/CN2015/082876 WO2017000243A1 (zh) 2015-06-30 2015-06-30 一种路由的方法、相关设备及系统
EP15896774.5A EP3306873B1 (en) 2015-06-30 2015-06-30 Routing method, and relevant device and system
US15/857,748 US10630592B2 (en) 2015-06-30 2017-12-29 Routing method, related device, and system
US16/841,165 US11509584B2 (en) 2015-06-30 2020-04-06 Routing method, related device, and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/082876 WO2017000243A1 (zh) 2015-06-30 2015-06-30 一种路由的方法、相关设备及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/857,748 Continuation US10630592B2 (en) 2015-06-30 2017-12-29 Routing method, related device, and system

Publications (1)

Publication Number Publication Date
WO2017000243A1 true WO2017000243A1 (zh) 2017-01-05

Family

ID=57607639

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/082876 Ceased WO2017000243A1 (zh) 2015-06-30 2015-06-30 一种路由的方法、相关设备及系统

Country Status (4)

Country Link
US (2) US10630592B2 (zh)
EP (1) EP3306873B1 (zh)
CN (2) CN112187645B (zh)
WO (1) WO2017000243A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110661703A (zh) * 2018-06-30 2020-01-07 北京华为数字技术有限公司 一种实现快速重路由的方法和装置
US10877482B2 (en) * 2017-04-06 2020-12-29 Toyota Jidosha Kabushiki Kaisha Trajectory setting device and trajectory setting method
EP3953332A1 (en) 2019-04-12 2022-02-16 C4 Therapeutics, Inc. Tricyclic degraders of ikaros and aiolos

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3306873B1 (en) * 2015-06-30 2019-09-11 Huawei Technologies Co., Ltd. Routing method, and relevant device and system
EP3716537A1 (de) * 2019-03-25 2020-09-30 Siemens Aktiengesellschaft Verfahren zur datenkommunikation, netzwerkknoten, computerprogramm und computerlesbares medium
US10958567B1 (en) 2019-03-29 2021-03-23 Juniper Networks, Inc. Controlling paths in a network via a centralized controller or network devices
CN110061914B (zh) * 2019-04-29 2022-06-21 新华三技术有限公司 一种报文转发方法及装置
CN110535761A (zh) * 2019-09-30 2019-12-03 北京华三通信技术有限公司 报文转发方法及装置
US11337137B2 (en) * 2020-02-18 2022-05-17 At&T Intellectual Property I, L.P. Selectively rerouting network traffic in a fifth generation (5G) or other next generation network
CN115733793A (zh) * 2020-04-20 2023-03-03 华为技术有限公司 路由配置方法和路由配置装置
CN114490490A (zh) 2020-11-13 2022-05-13 华为技术有限公司 转发表项的处理方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103716208A (zh) * 2013-12-31 2014-04-09 北京邮电大学 支持大象流的网络管理方法、系统、交换机和网络
CN103782552A (zh) * 2013-09-03 2014-05-07 华为技术有限公司 一种业务路径的保护方法、控制器、设备及系统
WO2014077313A1 (ja) * 2012-11-16 2014-05-22 日本電気株式会社 通信システム、制御装置、その制御方法及びプログラム
CN103986651A (zh) * 2014-05-30 2014-08-13 杭州华三通信技术有限公司 一种软件定义网络控制器及其控制方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101291290A (zh) * 2008-05-29 2008-10-22 华为技术有限公司 一种进行业务转发的方法及装置
CN101335714A (zh) * 2008-07-18 2008-12-31 华为技术有限公司 一种负载分担的方法及设备或快速重路由的方法及设备
CN102123097B (zh) * 2011-03-14 2015-05-20 杭州华三通信技术有限公司 一种路由保护方法和设备
US8762501B2 (en) * 2011-08-29 2014-06-24 Telefonaktiebolaget L M Ericsson (Publ) Implementing a 3G packet core in a cloud computer with openflow data and control planes
US9130869B2 (en) * 2012-02-09 2015-09-08 Telefonaktiebolaget L M Ericsson (Publ) Methods of redirecting network forwarding elements and related forwarding elements and controllers
CN102957603A (zh) * 2012-11-09 2013-03-06 盛科网络(苏州)有限公司 基于多级流表的Openflow报文转发方法及系统
US9826067B2 (en) * 2013-02-28 2017-11-21 Texas Instruments Incorporated Packet processing match and action unit with configurable bit allocation
EP2974180B1 (en) * 2013-03-12 2018-11-07 Nec Corporation A packet data network, a method for operating a packet data network and a flow-based programmable network device
CN104796347A (zh) * 2014-01-20 2015-07-22 中兴通讯股份有限公司 一种负载均衡方法、装置和系统
FI20145054A7 (fi) * 2014-01-21 2015-07-22 Tellabs Oy Tiedonsiirtoverkon verkkoelementti
US10142220B2 (en) * 2014-04-29 2018-11-27 Hewlett Packard Enterprise Development Lp Efficient routing in software defined networks
US20170237654A1 (en) * 2015-03-25 2017-08-17 Hewlett Packard Enterprise Development Lp Fast failover recovery in software defined networks
EP3306873B1 (en) * 2015-06-30 2019-09-11 Huawei Technologies Co., Ltd. Routing method, and relevant device and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014077313A1 (ja) * 2012-11-16 2014-05-22 日本電気株式会社 通信システム、制御装置、その制御方法及びプログラム
CN103782552A (zh) * 2013-09-03 2014-05-07 华为技术有限公司 一种业务路径的保护方法、控制器、设备及系统
CN103716208A (zh) * 2013-12-31 2014-04-09 北京邮电大学 支持大象流的网络管理方法、系统、交换机和网络
CN103986651A (zh) * 2014-05-30 2014-08-13 杭州华三通信技术有限公司 一种软件定义网络控制器及其控制方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3306873A4 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10877482B2 (en) * 2017-04-06 2020-12-29 Toyota Jidosha Kabushiki Kaisha Trajectory setting device and trajectory setting method
US11204607B2 (en) * 2017-04-06 2021-12-21 Toyota Jidosha Kabushiki Kaisha Trajectory setting device and trajectory setting method
US11662733B2 (en) 2017-04-06 2023-05-30 Toyota Jidosha Kabushiki Kaisha Trajectory setting device and trajectory setting method
US11932284B2 (en) 2017-04-06 2024-03-19 Toyota Jidosha Kabushiki Kaisha Trajectory setting device and trajectory setting method
CN110661703A (zh) * 2018-06-30 2020-01-07 北京华为数字技术有限公司 一种实现快速重路由的方法和装置
EP3953332A1 (en) 2019-04-12 2022-02-16 C4 Therapeutics, Inc. Tricyclic degraders of ikaros and aiolos

Also Published As

Publication number Publication date
US20200236054A1 (en) 2020-07-23
US20180123960A1 (en) 2018-05-03
US11509584B2 (en) 2022-11-22
CN107005469A (zh) 2017-08-01
CN112187645B (zh) 2021-12-03
US10630592B2 (en) 2020-04-21
CN112187645A (zh) 2021-01-05
EP3306873A4 (en) 2018-05-30
EP3306873B1 (en) 2019-09-11
EP3306873A1 (en) 2018-04-11
CN107005469B (zh) 2020-09-04

Similar Documents

Publication Publication Date Title
CN107005469B (zh) 一种路由的方法、相关设备及系统
CN106656801B (zh) 业务流的转发路径的重定向方法、装置和业务流转发系统
CN102347905B (zh) 一种网络设备及其转发信息更新方法
CN104980349B (zh) 中继系统以及交换机装置
US8825844B2 (en) Notifying network operator when virtual addresses do not match on network elements configured for interchassis redundancy
US20020060985A1 (en) Method for high speed rerouting in multi protocol label switching network
EP3136661B1 (en) Path switching method and device
KR20140019377A (ko) 네트워크 노드를 동작하기 위한 기술
US20150295818A1 (en) Communication system, control apparatus, method for controlling same, and program
EP2599270B1 (en) A network device and method of routing traffic
EP3926900B1 (en) Supporting candidate path selection
Thorat et al. Enhanced local detouring mechanisms for rapid and lightweight failure recovery in OpenFlow networks
CN110535761A (zh) 报文转发方法及装置
CN116319533A (zh) 故障处理方法、装置、设备和介质
Vanamoorthy et al. Congestion-free transient plane (CFTP) using bandwidth sharing during link failures in SDN
WO2007142952A2 (en) Management of client layer communications services
EP4513848A1 (en) Communication method and apparatus
CN111740917A (zh) 一种报文转发方法和装置
Thorat et al. Pre-provisioning of local protection for handling dual-failures in openflow-based networks
US10855520B1 (en) Utilizing upstream routing of multicast traffic from redundant multicast sources to increase multicast resiliency and availability
JP5597657B2 (ja) マイクロループ防止設定方法、通信システム、及びマイクロループ防止装置
CN101888344B (zh) 一种实现路由泛洪的方法、装置及交换机
EP4307618A1 (en) Designating a primary multicast flow and a backup multicast flow for multicast traffic
CN102413047A (zh) 三层网络设备的路由发布方法及三层网络设备
WO2017010078A1 (ja) 制御装置、障害通知方法及び記録媒体

Legal Events

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

Ref document number: 15896774

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2015896774

Country of ref document: EP