WO2018018567A1 - Procédé et dispositif de gestion de commutateur - Google Patents
Procédé et dispositif de gestion de commutateur Download PDFInfo
- Publication number
- WO2018018567A1 WO2018018567A1 PCT/CN2016/092176 CN2016092176W WO2018018567A1 WO 2018018567 A1 WO2018018567 A1 WO 2018018567A1 CN 2016092176 W CN2016092176 W CN 2016092176W WO 2018018567 A1 WO2018018567 A1 WO 2018018567A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- flow table
- table group
- group
- message
- switch
- Prior art date
Links
Images
Definitions
- SDN Software Defined Networking
- the SDN decouples the control logic and forwarding functions of the network element into control plane devices and forwarding plane devices to implement centralized deployment of control logic.
- the control and maintenance of the network can be easily implemented through centralized deployment of control plane devices.
- the idea of SDN is being widely applied to data center networks and telecommunication networks.
- a network device also referred to as a switch
- a forwarding plane device is used to perform packet transmission on the forwarding plane.
- a network controller also known as a controller, is a control plane device that is used to configure and manage switches through a control channel.
- the application is used to implement various network functions, including routing control, tunnel encapsulation, firewall, secure access, and QoS control.
- the functions to be implemented by the switch are configured through the network application on the controller. If the switch needs to implement complex network functions, such as routing control, tunnel encapsulation, firewall, secure access, and QoS control, then A variety of web applications need to be installed on the controller. The centralized deployment of such network functions will bring great operational overhead to the controller, which is easy to cause control. On the other hand, when the network needs to be expanded or expanded, the cumulative stacking method can only be adopted. The network application on the controller will become larger and larger, which may cause operational stability and reliability problems. .
- complex network functions such as routing control, tunnel encapsulation, firewall, secure access, and QoS control
- the embodiments of the present invention provide a method and a device for managing a switch, which are used to solve a bottleneck problem caused by centralized deployment of a network function of a controller, and implement a multi-controller cooperative control switch.
- a method of managing a switch includes:
- the controller sends a packet indication message to the switch, where the packet indication message is used to instruct the switch to group the at least one flow table;
- the controller determines a flow table group to be bound, and sends a flow table group binding message to the switch, where the flow table group binding message carries the identification information of the flow table group to be bound, and the flow table group
- the binding message is used to establish a binding relationship between the controller and the flow table group to be bound, so that the controller manages the flow table group to be bound.
- the identifier information of each flow table group includes a flow table group identifier of the flow table group and/or a service function name of the flow table group.
- the method further includes:
- the controller obtaining, by the controller, the service flow information of the switch, where the service flow is formed by at least one flow table having a preset execution sequence, where the service flow information is used to describe the at least one flow table;
- the controller parses the at least one flow table according to the preset execution order according to the service flow information, and determines at least one service function included in the service flow;
- the controller divides the at least one flow table into at least one flow table group according to the at least one service function, and generates a group indication message;
- the packet indication message includes a flow table group identifier of each flow table group in the at least one flow table group, a service function name of each flow table group, and indication information including a flow table in each flow table group.
- the method provided by the embodiment of the present invention can implement grouping of flow tables in the switch to implement effective management of service flows in the switch.
- the method further includes:
- the controller obtains the description information corresponding to the at least one newly added flow table.
- the controller divides the at least one newly added flow table into at least one newly added flow table group according to the at least one newly added service function, and generates a newly added group indication message, where the newly added group indication message includes a The flow table group identifier of each newly added flow table group in the at least one new flow table group, the service function name of each newly added flow table group, and the indication information of the flow table included in each newly added flow table group, each The execution order identifier of the newly added flow table group;
- the controller sends the newly added packet indication message to the switch, where the newly added packet indication message is used to instruct the switch to group the at least one newly added flow table.
- the method provided by the embodiment of the present invention can also group the newly added flow tables in the switch to implement effective management of the service flow in the switch.
- the method further includes:
- the controller sends a flow table group deletion message to the switch, where the flow table group deletion message carries the identifier information of the flow table group to be deleted or deletes the indication information of all the flow table groups.
- the controller sends a packet query message to the switch, where the packet query message carries the identifier information of the flow table group to be queried; the controller receives the packet query response message sent by the switch, where the packet query response message includes The flow table group identifier of the flow table group to be queried, the service function name of the flow table group to be queried, and the flow table group to be queried includes the flow table indication information;
- the controller sends a packet query message to the switch, the packet query message Carrying instruction information for querying all flow table groups; the controller receives a packet query response message sent by the switch, where the packet query response message includes a flow table of each flow table group in all flow table groups included in the switch Group ID, the name of the service function of each flow table group.
- Each flow table group contains the indication information of the flow table.
- the method provided by the embodiment of the present invention can implement comprehensive query and partial query on the flow table group in the switch, so as to implement effective management of the business process in the switch.
- the method further includes:
- the controller determines, according to the binding state of each flow table group in the entire flow table group, the unbound flow table group, and determines that the unbound flow table group is to be tied. Constant flow table group.
- the method provided by the embodiment of the present invention can determine the flow table group to be bound by using the binding state carried in the packet query response message, so as to implement effective management of the service flow in the switch.
- the method further includes:
- the controller sends a control instruction to the switch, the control instruction carrying identification information of a flow table group that has been bound by the controller.
- the method provided by the embodiment of the present invention can directly send a control command to the flow table group in the switch, so as to implement effective control on the service flow in the switch.
- the method further includes:
- a method of managing a switch includes:
- the switch according to the packet indication message, grouping the at least one flow table to obtain at least one flow table group;
- the switch receives the flow table group binding message sent by the controller, where the flow table group binding message carries the identification information of the flow table group to be bound, and the flow table group binding message is used to enable the control Establishing a binding relationship with the flow table group to be bound, so that the controller manages the flow table group to be bound;
- the switch stores a binding relationship between the to-be-bound flow table group and the controller according to the flow table group binding message.
- the packet indication message includes a flow table group identifier of each flow table group in the at least one flow table group, a service function name of each flow table group, and each flow table group Contains instructions for the flow table;
- the switch according to the packet indication message, grouping the at least one flow table to obtain at least one flow table group, including:
- the method further includes:
- the switch receives a new packet indication message sent by the controller, where the newly added packet indication message includes the at least one new The flow table group ID of each newly added flow table group in the flow-increasing table group, the service function name of each newly added flow table group, the indication information of the flow table in each newly added flow table group, and each new flow An execution sequence identifier of the table group, where the newly added group indication message is used to instruct the switch to group the at least one newly added flow table;
- the switch receives the flow table group deletion message sent by the controller, where the flow table group deletion message carries the indication information for deleting all the flow table groups; the switch deletes the message according to the flow table group deletion message.
- the service function name of each flow table group and the corresponding relationship between each flow table group and the flow table group are deleted.
- the switch Receiving, by the switch, a packet query message sent by the controller, where the packet query message carries identifier information of a flow table group to be queried; the switch sends a packet query response message to the controller, where the packet query response message includes The flow table group identifier of the flow table group to be queried, the service function name of the flow table group to be queried, and the flow table group to be queried includes the flow table indication information;
- the switch after the switch, according to the flow table group binding message, the binding relationship between the flow table group to be bound and the controller, the switch further includes:
- the switch receives the flow table group unbinding message sent by the controller, where the flow table group unbinding message carries the identification information of the flow table group to be unbound;
- a transceiver unit configured to send a packet indication message to the switch, where the packet indication message is used to instruct the switch to group the at least one flow table;
- a processing unit configured to determine a flow table group to be bound, and the switching is performed by the transceiver unit
- the device sends a flow table group binding message, where the flow table group binding message carries the identifier information of the to-be-bound flow table group, where the flow table group binding message is used to enable the device to be bound to the
- the flow table group establishes a binding relationship, so that the device manages the flow table group to be bound.
- the identifier information of each flow table group includes a flow table group identifier of the flow table group and/or a service function name of the flow table group.
- processing unit is further configured to:
- the newly added group indication message includes the at least one new The flow table group ID of each newly added flow table group in the flow-increasing table group, the service function name of each newly added flow table group, the indication information of the flow table in each newly added flow table group, and each new flow The execution order identifier of the table group;
- the transceiver unit is further configured to:
- the transceiver unit is further configured to:
- the packet query message carries the identifier information of the flow table group to be queried; and receives a packet query response message sent by the switch, where the packet query response message includes the flow table group to be queried a flow table group identifier, a service function name of the flow table group to be queried, and the flow table group to be queried includes indication information of the flow table;
- the flow table group ID of each flow table group in the flow table group, the service function name of each flow table group, and the flow table group includes the flow table indication information.
- the packet query response message further includes a binding state of the to-be-queried flow table group, where a binding state of the to-be-queried flow table group is used to indicate the to-be-queried flow Whether the table group has been bound; or the group query response message further includes a binding state of each flow table group in the entire flow table group, wherein a binding state of any flow table group is used to indicate the flow Whether the table group has been bound;
- the processing unit is further configured to:
- the flow table group to be bound is determined in the flow table group outside the flow table group to be queried;
- the transceiver unit before sending the flow table group binding message to the switch by using the transceiver unit, determining, according to the binding state of each flow table group in the entire flow table group, the unbound flow table group, and Determining a flow table group to be bound from the unbound flow table group.
- the transceiver unit is further configured to:
- a control instruction is sent to the switch, where the control instruction carries the identification information of the flow table group that has been bound by the controller.
- the transceiver unit is further configured to:
- the flow table group unbinding message is sent to the switch, where the flow table group unbinding message carries the to-be-bound data table group to be unbound. Identification information.
- an apparatus for managing a switch includes:
- a transceiver unit configured to receive a packet indication message sent by the controller, where the packet indication message is used to instruct the device to group at least one flow table;
- a processing unit configured to group the at least one flow table according to the grouping indication message to obtain at least one flow table group
- the transceiver unit is configured to receive a flow table group binding message sent by the controller, where the flow table group binding message carries identifier information of a flow table group to be bound, and the flow table group binding message is used for Establishing a binding relationship between the controller and the flow table group to be bound, so that the controller manages the flow table group to be bound;
- the processing unit is configured to store, according to the flow table group binding message, a binding relationship between the to-be-bound flow table group and the controller.
- the identifier information of each flow table group includes a flow table group identifier of the flow table group and/or a service function name of the flow table group.
- the packet indication message includes a flow table group identifier of each flow table group in the at least one flow table group, a service function name of each flow table group, and each flow table group Contains instructions for the flow table;
- the processing unit is specifically configured to:
- the processing unit is further configured to: determine, according to the newly added grouping indication message, a flow table group identifier of each newly added flow table group in the at least one newly added flow table group, and each newly added flow table group The service function name, the correspondence between each newly added flow table group and the flow table in the newly added flow table group, and the execution order of each newly added flow table group in the business process.
- the transceiver unit is further configured to: receive a flow table group deletion message sent by the controller, where the flow table group deletion message carries identifier information of the flow table group to be deleted;
- the processing unit is further configured to: identify, according to the flow table group deletion message, the flow table group of the flow table group to be deleted, the service function name of the to-be-delete flow table group, and the flow table group to be deleted The corresponding relationship of the flow table in the flow table group is deleted;
- the sending and receiving unit is further configured to: receive a flow table group deletion message sent by the controller, where the flow table group deletion message carries indication information for deleting all flow table groups; the processing unit is further configured to: And identifying, according to the flow table group deletion message, a flow table group identifier of each flow table group in all flow table groups included in the switch, a service function name of each flow table group, each flow table group, and the flow table The corresponding relationship of the flow table in the group is deleted.
- the transceiver unit is further configured to: receive a packet query message sent by the controller, where the packet query message carries identifier information of a flow table group to be queried; and sends the identifier information to the controller a packet query response message, where the packet query response message includes a flow table group identifier of the to-be-queried flow table group, a service function name of the to-be-queried flow table group, and an indication of the flow table in the to-be-queried flow table group information;
- the transceiver unit is further configured to receive a packet query message sent by the controller, where the packet query message carries indication information for querying all flow table groups; and sends a packet query response message to the controller, where the packet
- the query response message includes a flow table group identifier of each flow table group in the flow table group included in the switch, a service function name of each flow table group, and a flow in each flow table group. The indication of the table.
- the transceiver unit is further configured to:
- the processing unit After the processing unit stores the binding relationship between the to-be-bound flow table group and the controller, the processing unit receives the flow table group unbinding message sent by the controller, according to the flow table group binding message, The flow table group unbinding message carries the identifier information of the flow table group to be unbound;
- the processing unit is further configured to delete the binding relationship between the to-be-unbound flow table group and the controller according to the identifier information of the to-be-unbound flow table group.
- an embodiment of the present invention provides a controller, including:
- the packet indication message is used to instruct the switch to group the at least one flow table
- the controller is configured to establish a binding relationship with the flow table group to be bound, so that the controller manages the flow table group to be bound.
- an embodiment of the present invention provides a switch, including:
- a memory for storing instructions
- a processor coupled to the memory and the transceiver, for executing instructions to execute the instructions Perform the following steps:
- Each controller deploys a corresponding network application according to the service function corresponding to the bound flow table group, and does not need to be deployed in the controller.
- the network function realizes the sharing of multiple service functions of the switch by multiple controllers, solves the bottleneck problem caused by the centralized deployment of the network functions of the controller, and realizes the multi-controller cooperative control switch.
- FIG. 1 is a schematic diagram of an SDN network architecture in the background art of the present invention.
- FIG. 2 is a schematic diagram of an SDN network architecture including an OF Controller and an OF Switch according to an embodiment of the present invention
- FIG. 4 is a flow chart of an OF Controller based on a Pipeline to an OF Switch according to an embodiment of the present invention. The specific process of grouping;
- FIG. 7 is a specific process of querying and deleting a flow table group in an OF Switch by an OF Controller according to an embodiment of the present invention
- FIG. 8 is a specific process of binding and unbinding a flow table group in an OF switch by an OF Controller according to an embodiment of the present invention
- FIG. 11 is a schematic structural diagram of an apparatus for managing a switch according to an embodiment of the present invention.
- FIG. 12 is a second schematic structural diagram of an apparatus for managing a switch according to an embodiment of the present invention.
- the OpenFlow protocol is a typical technology of an SDN network.
- the network elements in the OpenFlow protocol include an OpenFlow controller (corresponding to the network controller in FIG. 1 and hereinafter referred to as OF Controller) and an OpenFlow switch (corresponding to the network device in FIG. 1 , hereinafter referred to as OF Switch).
- OF Controller controls the flow table in the OF Switch by pre-specified interface operations, thereby achieving the purpose of controlling data forwarding.
- the OF Controller is a control plane device in the SDN network architecture, and is responsible for determining the forwarding action of the service flow according to the packet characteristics, and delivering the corresponding flow rule to the OF Switch.
- the OF Switch is a user plane device in the SDN network architecture. It is also called a forwarding plane device. It acquires and stores the flow rules from the OF Controller. The corresponding action is performed on the packets conforming to the flow rule, so that the packets are forwarded or processed. .
- a method for managing a switch includes:
- Step 300 The controller sends a packet indication message to the switch, where the packet indication message is used to instruct the switch to group at least one flow table.
- Step 310 The controller determines the flow table group to be bound, and sends a flow table group binding message to the switch.
- the flow table group binding message carries the identification information of the flow table group to be bound, and the flow table group binding message is used for control.
- the device establishes a binding relationship with the flow table group to be bound, so that the controller manages the bound flow table group.
- the controller first obtains the service flow information of the switch, and then parses the at least one flow table according to the preset execution sequence according to the business process information, and determines at least one service function included in the business process. Further, the controller divides the at least one flow table into at least one flow table group according to the at least one service function, and generates a group indication message.
- the above business process is composed of at least one flow table having a preset execution order, as shown in FIG. 2 .
- Business process information is used to describe each flow table that constitutes a business process, for example, the business performed by each flow table.
- the packet indication message includes a flow table group identifier of each flow table group in at least one flow table group, a service function name of each flow table group, and indication information including a flow table in each flow table group.
- the following is a specific process of the flow table grouping of the OF Switch by the OF Controller based on the Pipeline.
- the OF Controller sends a packet indication message (OFPT_BP_MOD) to the OF Switch.
- OFPT_BP_MOD packet indication message
- the message includes the following parameters:
- the value is OFPBP_INIT, indicating that the flow tables that make up the Pipeline are grouped;
- Tg_id(table group identifier) the flow table group identifier
- Bs_name(business service name) The name of the service function, which should be a common name in the service area, such as Forwarding, Charing, etc.
- Table_numbers Number of flow tables assigned to the current flow table group.
- the OF Switch groups at least one flow table group according to the group indication message to obtain at least one flow table group.
- the flow table group identifier of each flow table group included in the packet indication message, the service function name of each flow table group, and the indication information of the flow table group in each flow table group are in the preset execution order. arrangement. Therefore, the OF switch sequentially parses the flow table group identifier of each flow table group in the at least one flow table group included in the packet indication message, the service function name of each flow table group, and each flow table group included according to the packet indication message.
- the flow table indication information is that the flow group group is sequentially added in the order of the message list, and the corresponding flow table group identifier is assigned, and the flow table grouping order in the message list represents the position of the flow table group in the Pipeline, and then
- the OF switch stores the flow table group identifier of each flow table group, the service function name of each flow table group, and the corresponding relationship between each flow table group and the flow table group.
- the group indication message further includes an execution order position corresponding to each flow table group.
- the OF switch groups the at least one flow table according to the group indication message according to the group indication message to obtain at least one flow table group, and sequentially stores the flow table group identifier of each flow table group, the service function name of each flow table group, and each The corresponding relationship between the flow table group and the flow table group in the flow table group.
- the controller parses the at least one flow table according to the preset service execution order according to the service flow information, and determines that the service process includes a service function such as decapsulation and charging, and further, the controller performs charging according to the encapsulation.
- the service function divides at least one flow table into corresponding flow table groups. Referring to FIG. 5, the grouping result is a decapsulated flow table group including Flow table0 and Flow table1, and a flow flow table group including Flow table 2 and Flow table 3. Etc., the controller generates a packet indication message.
- the grouping indication information includes: command: the value is OFPBP_INIT;
- the OF switch stores tg_id:1, bs_name:Decapsulation;table_numbers:2 according to the above message, that is, the service function of the flow table group 1 is decapsulated, including Flow table0 and Flow table1, that is, starting from the first Flow table in the Pipeline. And storing tg_id: 2, bs_name: Charging; table_numbers: 2, that is, the service function of the flow table group 2 is charging, including Flow table 2 and Flow table 3, that is, the first flow table remaining after the last flow table component group Start.
- This step is an optional step where type is OFPET_BP_MOD_FAILED and code is the cause of the error.
- code is the cause of the error.
- the controller can also group the new flow table in the switch. Specifically, when at least one flow table is added to the service flow of the switch, the controller first obtains the description information corresponding to at least one newly added flow table. Then, at least one new service function included in the at least one newly added flow table is determined according to the description information corresponding to the at least one newly added flow table. Then, the controller divides the at least one newly added flow table into at least one new flow table group according to the at least one new service function, and generates a new group indication message.
- the new grouping indication message includes the flow table group identifier of each new flow table group in the at least one new flow table group, the service function name of each newly added flow table group, and each new flow table group includes The indication information of the flow table and the execution order identifier of each newly added flow table group.
- the controller The switch sends a new packet indication message, and the newly added packet indication message is used to instruct the switch to group at least one newly added flow table.
- FIG. 6 takes FIG. 6 as an example to illustrate the specific process of the OF Controller to group the newly added flow table in the OF Switch.
- the OF Controller sends a new packet indication message (OFPT_BP_MOD) to the OF Switch.
- OFPT_BP_MOD a new packet indication message
- the message includes the following parameters:
- the value is OFPTG_ADD, indicating that a flow table group is added.
- Tg_id Adds the flow table group ID of the flow table group.
- Bs_name Name of the service function of the new flow table group.
- Table_numbers The number of flow tables assigned to the current flow table group.
- the OF Switch determines the flow table group identifier of each newly added flow table group in each of the at least one new flow table group, the service function name of each newly added flow table group, and each new flow table group according to the newly added group indication message. Correspondence with the flow table in the newly added flow table group, and the execution order of each new flow table group in the business process.
- This step is an optional step where type is OFPET_TG_MOD_FAILED and code is the cause of the error.
- the embodiment of the present invention further provides a specific method for deleting a flow table group and a query flow table group.
- the controller may send a flow table group deletion message to the switch, where the flow table group deletion message carries the identification information of the flow table group to be deleted or deletes the indication information of all the flow table groups.
- the switch receives the flow table group deletion message sent by the controller.
- the switch deletes the flow table group identifier according to the flow table group, and identifies the flow table group of the flow table group to be deleted.
- Delete the service function name of the flow table group delete the corresponding relationship between the flow table group to be deleted and the flow table in the flow table group.
- the switch identifies the flow table group of each flow table group in each flow table group included in the switch according to the flow table group deletion message, and each flow The service function name of the table group, the corresponding relationship between each flow table group and the flow table group in the flow table group is deleted.
- the controller sends a packet query message to the switch, where the packet query message carries the identifier information of the flow table group to be queried, and the controller receives the packet query response message sent by the switch, where the packet query response message includes the flow table to be queried.
- the flow table group ID of the group, the service function name of the flow table group to be queried, and the flow table group to be queried contains the flow table indication information;
- the controller sends a packet query message to the switch, where the packet query message carries the indication information of querying all the flow table groups, and the controller receives the packet query response message sent by the switch, where the packet query response message includes each of the flow table groups included in the switch.
- the flow table group ID of the flow table group, the service function name of each flow table group, and each flow table group contains the flow table indication information.
- the packet query response message further includes a binding state of the flow table group to be queried, wherein the binding state of the flow table group to be queried is used to indicate whether the flow table group to be queried has been bound; or the group query response message is further The binding state of each flow table group in all flow table groups is included, where the binding state of any flow table group is used to indicate whether the flow table group has been bound.
- the flow table group query process may be performed by the controller grouping the flow table group, or the controller may group the newly added flow table, or the controller needs to delete the flow table group, or the controller binds or unbinds the flow table group. Set a variety of application scenarios before or after.
- FIG. 7 takes FIG. 7 as an example to illustrate the specific process of the OF Controller querying and deleting the flow table group in the OF Switch.
- the OF Controller sends a packet query message (OFPT_BP_REQUEST) to the OF Switch.
- OFPT_BP_REQUEST a packet query message
- the parameters included in the message are:
- Is_used indicates whether the OF Controller is bound to the current flow table group, that is, the current flow table. Whether the group is bound.
- the remaining parameters are the same as those in the packet indication message.
- S701 The OF Controller sends a packet query message (OFPT_TG_REQUEST) to the OF Switch.
- OFPT_TG_REQUEST a packet query message
- Tg_id ID of the flow table group of the flow table group to be queried
- the parameters included in the message are:
- Is_used Indicates whether the OF Controller is bound to the flow table group to be queried, that is, whether the flow table group to be queried is bound.
- the OF Controller sends a flow table group deletion message (OFPT_BP_MOD) to the OF Switch.
- OFPT_BP_MOD flow table group deletion message
- the parameters included in the message are:
- the value is OFPBP_DEL, indicating that all relevant information based on Pipeline is cleared.
- the OF Switch determines that the deletion of the flow table group is unsuccessful, and the OF Switch returns the flow table group deletion failure message (OFPT_ERROR_MSG) to the OF Controller, and the flow table group deletion failure message carries the flow table group deletion failure reason.
- OFPT_ERROR_MSG flow table group deletion failure message
- This step is an optional step where type is OFPET_BP_MOD_FAILED and code is the cause of the error.
- S703 The OF Controller sends a flow table group deletion message (OFPT_TG_MOD) to the OF Switch.
- OFPT_TG_MOD flow table group deletion message
- the parameters included in the message are:
- Tg_id ID of the flow table group to be deleted.
- the OF Switch determines that the deletion of the flow table group is unsuccessful, and the OF Switch returns the flow table group deletion failure message (OFPT_ERROR_MSG) to the OF Controller, and the flow table group deletion failure message carries the flow table group deletion failure reason.
- OFPT_ERROR_MSG flow table group deletion failure message
- This step is an optional step where type is OFPET_TG_MOD_FAILED, code For the cause of the error.
- the packet query message can be used to query the packet status and binding status of a flow table group, and can also be used to query the packet status and binding status of all flow tables in the switch.
- the flow table group deletion message can be used. Delete the entire flow table grouping, or you can delete at least one of the flow table groups.
- the controller selects a flow table group having a service function that matches its own service requirement as the flow table group to be bound.
- the controller may determine, according to the binding state of the flow table group to be queried, that the flow table group to be queried has been When binding, determine the flow table group to be bound from the flow table group except the flow table group to be queried.
- the controller determines the unbound flow table group according to the binding state of each flow table group in the entire flow table group, and determines the flow table group to be bound from the unbound flow table group.
- the controller originally determines that the flow table group to be bound is the flow table group 1, but when the controller performs the flow table component group query before binding the flow table group 1, the controller queries the response message according to the packet feedback by the switch. If the flow table group 1 is bound, the controller can choose to continue to bind to the flow table group 1 to overwrite the previous binding relationship, or no longer bind to the flow table group 1, and select other flow table groups. As the flow table group to be bound.
- the controller may perform unbinding on the bound flow table group. Specifically, the controller sends a flow table group unbinding message to the switch, and the flow table group unbinds the message carrying The identification information of the flow table group to be unbound.
- FIG. 8 takes FIG. 8 as an example to illustrate the specific process of the OF Controller binding and unbinding the flow table group in the OF Switch.
- the OF Controller sends a flow table group binding message (OFPT_TG_MOD) to the OF Switch.
- OFPT_TG_MOD flow table group binding message
- the parameters included in the message are:
- the value is OFPTG_BIND, indicating that the current OF Controller is bound to a flow table group;
- Tg_id Name of the flow table group to be bound to the flow table group.
- the OF switch binds the flow table group binding message to the binding relationship between the flow table group to be bound and the OF Controller, and updates the binding state of the flow table group to be bound to be bound.
- This step is an optional step where type is OFPET_TG_MOD_FAILED and code is the cause of the error.
- the OF Controller sends a flow table group unbinding message (OFPT_TG_MOD) to the OF Switch.
- OFPT_TG_MOD flow table group unbinding message
- the parameters included in the message are:
- the value is OFPTG_UNBIND, indicating that the current OF Controller unbinds a flow table group.
- Tg_id Name of the flow table group to be unbound to the flow table group.
- This step is an optional step where type is OFPET_TG_MOD_FAILED and code is the cause of the error.
- the OF switch unbinds the packet according to the flow table group, deletes the binding relationship between the unbind flow table group and the OF Controller, and updates the binding state of the unbind flow table group to be unbound.
- the controller can implement the management and control of the binding flow table group, and carry the flow table group identification information to be bound in the delivered message.
- the controller may also configure a logical ID for each flow table in the flow table group that is bound to itself, that is, re-number the flow table included in each flow table group.
- the controller may also add control instructions for the flow table group, for example, Goto_TG, the flow table group identifier carrying the flow table group to be processed, indicated by tg_id, and the Goto_TG message may be used to indicate the next flow table group to be processed. For example, in FIG.
- Controller1 may send an identifier of Goto_TG carrying flow table group 4 (TG4) for indicating which data packets in the data packet processed by flow table group 2 (TG2) may not enter flow table group 3 (TG3). ), and directly into the flow table group 4 (TG4).
- TG4 Goto_TG carrying flow table group 4
- the embodiment of the present invention further proposes that the configuration mode, that is, OF Config, Pipeline-based management is implemented.
- the controller can divide each flow table that constitutes a service flow into at least one logical switch by using a configuration mode (for example, OF Config).
- a configuration mode for example, OF Config
- the logical switch is physically composed of at least one flow table in the switch, and can be logically regarded as a single switch.
- the controller divides each flow table constituting the business process into at least one logical switch, which is completed through a configuration port, and the controller sends a packet indication message to the switch through the service port.
- an apparatus for managing a switch includes:
- the transceiver unit 1101 is configured to send, to the switch, a packet indication message, where the packet indication message is used to instruct the switch to group the at least one flow table.
- the identifier information of each flow table group includes a flow table group identifier of the flow table group and/or a service function name of the flow table group.
- processing unit 1102 is further configured to:
- the transceiver unit 1101 is further configured to:
- the packet query response message further includes a binding state of the to-be-queried flow table group, where a binding state of the to-be-queried flow table group is used to indicate the to-be-queried flow Whether the table group has been bound; or the group query response message further includes a binding state of each flow table group in the entire flow table group, wherein a binding state of any flow table group is used to indicate the flow Table group Whether it has been bound;
- the flow table group binding message before the sending, by the transceiver unit 1101, the flow table group binding message to the switch, determining, according to the binding state of each flow table group in the entire flow table group, determining the unbound flow table group. And determining, from the unbound flow table group, the flow table group to be bound.
- the transceiver unit 1101 is further configured to:
- the transceiver unit 1101 is further configured to:
- the flow table group unbinding message is sent to the switch, where the flow table group unbinding message carries the to-be-bound data table group to be unbound. Identification information.
- an apparatus for managing a switch includes:
- the transceiver unit 1201 is configured to receive a packet indication message sent by the controller, where the packet indication message is used to instruct the device to group the at least one flow table.
- the processing unit 1202 is configured to group the at least one flow table according to the packet indication message to obtain at least one flow table group;
- the transceiver unit 1201 is configured to receive a flow table group binding message that is sent by the controller, where the flow table group binding message carries the identifier information of the flow table group to be bound, and the flow table group binding message is used by Establishing a binding relationship between the controller and the flow table group to be bound, so that the controller manages the flow table group to be bound;
- the processing unit 1202 is configured to store, according to the flow table group binding message, a binding relationship between the to-be-bound flow table group and the controller.
- the identifier information of each flow table group includes a flow table group identifier of the flow table group and/or a service function name of the flow table group.
- the packet indication message includes a flow table group identifier of each flow table group in the at least one flow table group, a service function name of each flow table group, and each flow table group Contains instructions for the flow table;
- the processing unit 1202 is specifically configured to:
- the transceiver unit 1201 is further configured to: when a service flow of the device adds at least one flow table, receive a new packet indication message sent by the controller, where the new The grouping indication message includes a flow table group identifier of each newly added flow table group in the at least one newly added flow table group, a service function name of each newly added flow table group, and a flow included in each newly added flow table group.
- the processing unit 1202 is further configured to: determine, according to the newly added grouping indication message, a flow table group identifier of each newly added flow table group in the at least one newly added flow table group, and each newly added flow table group The business function name, the correspondence between each newly added flow table group and the flow table in the newly added flow table group, and the execution order of each newly added flow table group in the business process.
- the transceiver unit 1201 is further configured to: receive a flow table group deletion message sent by the controller, where the flow table group deletion message carries identifier information of the flow table group to be deleted;
- the processing unit 1202 is further configured to: identify, according to the flow table group deletion message, a flow table group of the to-be-deleted flow table group, a service function name of the to-be-delete flow table group, and the to-be-delete flow table The corresponding relationship between the group and the flow table in the flow table group is deleted.
- the transceiver unit 1201 is further configured to: receive a flow table group deletion message sent by the controller, where the flow table group deletion message carries indication information for deleting all flow table groups; the processing unit 1202.
- the method further includes: identifying, according to the flow table group deletion message, a flow table group identifier of each flow table group in all flow table groups included in the switch, a service function name of each flow table group, and each flow The correspondence between the table group and the flow table in the flow table group is deleted.
- the transceiver unit 1201 is further configured to: receive a packet query message sent by the controller, where the packet query message carries identifier information of a flow table group to be queried; to the controller Sending a packet query response message, where the packet query response message includes a flow table group identifier of the flow table group to be queried, a service function name of the flow table group to be queried, and a flow table group in the to-be-queried flow table group Indication information;
- the transceiver unit 1201 is further configured to receive a packet query message sent by the controller, where the packet query message carries indication information for querying all flow table groups, and sends a packet query response message to the controller, where
- the packet query response message includes a flow table group identifier of each flow table group in the flow table group included in the switch, a service function name of each flow table group, and each flow table group includes indication information of the flow table.
- the packet query response message further includes a binding state of the to-be-queried flow table group, where a binding state of the to-be-queried flow table group is used to indicate the to-be-queried flow Whether the table group has been bound; or the group query response message further includes a binding state of each flow table group in the entire flow table group, wherein a binding state of any flow table group is used to indicate the flow Whether the table group has been bound.
- the processing unit 1202 is further configured to delete the binding relationship between the to-be-unbound flow table group and the controller according to the identifier information of the to-be-unbound flow table group.
- the embodiment of the present invention further provides a controller, which is a physical device of the device shown in FIG. 11. Therefore, the implementation manner of the controller provided by the embodiment of the present invention can be referred to the embodiment shown in FIG. The repetitions are not repeated here.
- an embodiment of the present invention provides a controller, including:
- the processor 1302 is respectively connected to the memory 1303 and the transceiver 1301 for executing an instruction to perform the following steps when executing the instruction:
- the packet indication message is used to instruct the switch to group the at least one flow table
- an embodiment of the present invention provides a switch, including:
- the processor 1402 is respectively connected to the memory 1403 and the transceiver 1401 for executing instructions to perform the following steps when executing the instructions:
- the embodiment of the present invention further provides an extension of other related commands, including: the control instruction issued by the controller needs to include the flow table group identifier of the flow table group, the controller operates the corresponding flow table according to the logical id of the flow table, and adds Goto. - TG command format, etc., to achieve flexible and efficient management and control of the flow table group.
- the embodiment of the present invention also proposes to implement management of each flow table in the switch for the multi-service controller by using the configuration mode (ie, OF Config), and the switch directly performs flow table grouping, query, delete, binding, and cancellation according to the configuration information. Bind the logical switch.
- the method provided by the embodiment of the present invention can implement the isolation and sequence arrangement of different service functions based on the flow table grouping, and ensure that the corresponding service functions of different control network elements (ie, controllers) are executed in order.
- the embodiment of the invention provides control and management of the switch by multiple controllers based on the OpenFlow protocol and the OF Config mode, thereby ensuring the flexibility of the programmable forwarding plane.
- embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
- computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
- the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
- the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
- These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
- the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
L'invention concerne un procédé de gestion d'un commutateur. Dans ledit procédé, un contrôleur : envoie un message d'instruction de groupement à un commutateur, ledit message étant utilisé pour commander au commutateur d'exécuter le groupement d'au moins une table de flux ; et détermine un groupe de tables de flux à associer, et envoie un message d'association de groupe de tables de flux au commutateur, ledit message contenant des informations d'identification du groupe de tables de flux à associer et étant utilisé pour établir une relation d'association entre le contrôleur et le groupe de tables de flux à associer, de sorte que le contrôleur gère le groupe de tables de flux à associer. Une pluralité de contrôleurs peut ainsi établir une relation d'association distincte avec chaque groupe de tables de flux dans le commutateur et équilibrer une pluralité de fonctions de service du commutateur. Cela supprime un goulot d'étranglement des contrôleurs en raison du déploiement centralisé des fonctions réseau, et permet un contrôle collaboratif du commutateur.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/092176 WO2018018567A1 (fr) | 2016-07-29 | 2016-07-29 | Procédé et dispositif de gestion de commutateur |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/092176 WO2018018567A1 (fr) | 2016-07-29 | 2016-07-29 | Procédé et dispositif de gestion de commutateur |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018018567A1 true WO2018018567A1 (fr) | 2018-02-01 |
Family
ID=61015357
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2016/092176 WO2018018567A1 (fr) | 2016-07-29 | 2016-07-29 | Procédé et dispositif de gestion de commutateur |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2018018567A1 (fr) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194517A (zh) * | 2018-09-20 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种用于对虚拟交换机部件进行初始化的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102640464A (zh) * | 2009-11-26 | 2012-08-15 | 日本电气株式会社 | 负载分配系统、负载分配方法及程序 |
WO2013146808A1 (fr) * | 2012-03-28 | 2013-10-03 | 日本電気株式会社 | Système informatique et moyen de modification de trajet de communication |
CN104796336A (zh) * | 2014-01-20 | 2015-07-22 | 华为技术有限公司 | 一种配置、下发流表项的方法及装置 |
CN104796344A (zh) * | 2014-01-16 | 2015-07-22 | 中兴通讯股份有限公司 | 基于SDN实现报文转发的方法、系统、Openflow交换机及服务器 |
CN105430113A (zh) * | 2015-11-03 | 2016-03-23 | 上海斐讯数据通信技术有限公司 | Sdn网络arp报文处理方法、系统、控制器及交换机 |
-
2016
- 2016-07-29 WO PCT/CN2016/092176 patent/WO2018018567A1/fr active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102640464A (zh) * | 2009-11-26 | 2012-08-15 | 日本电气株式会社 | 负载分配系统、负载分配方法及程序 |
WO2013146808A1 (fr) * | 2012-03-28 | 2013-10-03 | 日本電気株式会社 | Système informatique et moyen de modification de trajet de communication |
CN104796344A (zh) * | 2014-01-16 | 2015-07-22 | 中兴通讯股份有限公司 | 基于SDN实现报文转发的方法、系统、Openflow交换机及服务器 |
CN104796336A (zh) * | 2014-01-20 | 2015-07-22 | 华为技术有限公司 | 一种配置、下发流表项的方法及装置 |
CN105430113A (zh) * | 2015-11-03 | 2016-03-23 | 上海斐讯数据通信技术有限公司 | Sdn网络arp报文处理方法、系统、控制器及交换机 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109194517A (zh) * | 2018-09-20 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种用于对虚拟交换机部件进行初始化的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10938748B2 (en) | Packet processing method, computing device, and packet processing apparatus | |
US9755971B2 (en) | Traffic flow redirection between border routers using routing encapsulation | |
US9823916B2 (en) | Methods and apparatus for improving compatibility between network devices | |
EP2553886B1 (fr) | Agrégation de trafic de données provenant de domaines d'accès | |
EP2843906B1 (fr) | Procédé, appareil et système de transmission de données | |
CN109660441B (zh) | Overlay网络中组播复制的方法及装置 | |
CN113497754B (zh) | 转发路径建立方法、装置以及计算机可读存储介质 | |
EP3440807B1 (fr) | Synchronisation de base de données d'étiquettes dans un réseau de communication à commutation par paquets | |
JP2022533238A (ja) | Tsn内のコントローラ間の通信のための方法、装置、およびシステム | |
US10050859B2 (en) | Apparatus for processing network packet using service function chaining and method for controlling the same | |
CN106357542B (zh) | 提供组播业务的方法和软件定义网络控制器 | |
US10404544B2 (en) | Network topology determining method and apparatus, and centralized network status information storage device | |
CN108965134B (zh) | 报文转发方法及装置 | |
CN108964940A (zh) | 消息发送方法及装置、存储介质 | |
CN112910704B (zh) | 一种支持动态自适应网络配置的局域网系统、方法和装置 | |
CN112187649A (zh) | 一种报文转发方法、报文处理方法及装置 | |
WO2018219300A1 (fr) | Procédé et appareil d'échange de paquets dans un sdn | |
JP2020156088A (ja) | パケット伝送方法及び装置 | |
KR20190111108A (ko) | 트래픽 엔지니어링 서비스 매핑 | |
WO2016049926A1 (fr) | Appareil et procédé de traitement de paquet de données | |
WO2018018567A1 (fr) | Procédé et dispositif de gestion de commutateur | |
CN116800606A (zh) | 网络变更方法、网络控制设备及存储介质 | |
WO2018018568A1 (fr) | Procédé et dispositif de collaboration multi-contrôleur | |
WO2017143722A1 (fr) | Procédé de mise en œuvre de fonction de réseau, dispositif de commande et élément de réseau | |
CN102821118A (zh) | 一种具备异构节点的网络中业务备份的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16910148 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16910148 Country of ref document: EP Kind code of ref document: A1 |