METHOD FOR PROCESSING PACKET IN NETWORK, FORWARDING DEVICE, AND PACKET PROCESSING SYSTEM
First Claim
Patent Images
1. A method for processing a packet in a network, wherein the network comprises a resource manager, a forwarding device, and multiple controllers, the forwarding device is separately connected to the resource manager and the multiple controllers, and the method comprises:
- separately creating, by the forwarding device, a corresponding virtual device on the forwarding device for each controller according to an instruction from the resource manager;
creating, by the forwarding device, a flow table in the corresponding virtual device according to a flow table creation message from a controller, and storing a correspondence between a first identifier of a to-be-created flow table that is carried in the flow table creation message and a second identifier of the flow table that is created on the forwarding device according to the flow table creation message, wherein the second identifier is used to uniquely identify the created flow table on the forwarding device;
receiving, by the forwarding device, a flow entry creation message from the controller, wherein the flow entry creation message carries a to-be-created flow entry and the first identifier of the flow table that is to store the flow entry, and obtaining, according to the correspondence, the second identifier corresponding to the first identifier, and storing the flow entry in the flow table corresponding to the obtained second identifier; and
receiving, by the forwarding device, a data packet, performing matching for the data packet by using a preset packet identification rule, to obtain the first identifier of the flow table for processing the data packet, obtaining, from the correspondence, the second identifier corresponding to the first identifier, and processing the data packet according to the flow entry in the flow table corresponding to the second identifier.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for processing a packet in a network, a forwarding device, and a packet processing system are described. By means of embodiments of the present invention, network efficiency can be improved.
12 Citations
13 Claims
-
1. A method for processing a packet in a network, wherein the network comprises a resource manager, a forwarding device, and multiple controllers, the forwarding device is separately connected to the resource manager and the multiple controllers, and the method comprises:
-
separately creating, by the forwarding device, a corresponding virtual device on the forwarding device for each controller according to an instruction from the resource manager; creating, by the forwarding device, a flow table in the corresponding virtual device according to a flow table creation message from a controller, and storing a correspondence between a first identifier of a to-be-created flow table that is carried in the flow table creation message and a second identifier of the flow table that is created on the forwarding device according to the flow table creation message, wherein the second identifier is used to uniquely identify the created flow table on the forwarding device; receiving, by the forwarding device, a flow entry creation message from the controller, wherein the flow entry creation message carries a to-be-created flow entry and the first identifier of the flow table that is to store the flow entry, and obtaining, according to the correspondence, the second identifier corresponding to the first identifier, and storing the flow entry in the flow table corresponding to the obtained second identifier; and receiving, by the forwarding device, a data packet, performing matching for the data packet by using a preset packet identification rule, to obtain the first identifier of the flow table for processing the data packet, obtaining, from the correspondence, the second identifier corresponding to the first identifier, and processing the data packet according to the flow entry in the flow table corresponding to the second identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A forwarding device, comprising:
-
a first port, configured to connect to a resource manager; a first processor, connected to the first port, and configured to separately create a corresponding virtual device on the forwarding device for each controller according to an instruction of the resource manager; a second port, configured to;
connect to multiple controllers, and receive a flow table creation message from a controller;a second processor, connected to the second port, and configured to;
create a flow table in the corresponding virtual device according to the flow table creation message from the controller, and store, in a memory, a correspondence between a first identifier of a to-be-created flow table that is carried in the flow table creation message and a second identifier of the flow table that is created on the forwarding device according to the flow table creation message, wherein the second identifier is used to uniquely identify the created flow table on the forwarding device;
receive a flow entry creation message from the controller, wherein the flow entry creation message carries a to-be-created flow entry and the first identifier of the flow table that is to store the flow entry; and
obtain, according to the correspondence, the second identifier corresponding to the first identifier, and store the flow entry in the flow table corresponding to the obtained second identifier; anda data processor, configured to;
receive a data packet, perform matching for the data packet by using a packet identification rule stored in the memory, to obtain the first identifier of the flow table for processing the data packet, obtain, from the correspondence, the second identifier corresponding to the first identifier, and process the data packet according to the flow entry in the flow table corresponding to the second identifier. - View Dependent Claims (9, 10)
-
-
11. A packet processing system, comprising:
-
a resource manager, multiple controllers, and a forwarding device, wherein the forwarding device is separately connected to the resource manager and the multiple controllers; the resource manager is configured to instruct the forwarding device to separately create a corresponding virtual device on the forwarding device for each controller; and the forwarding device is configured to;
create a flow table in the corresponding virtual device according to a flow table creation message from a controller;
store a correspondence between a first identifier of a to-be-created flow table that is carried in the flow table creation message and a second identifier of the flow table that is created on the forwarding device according to the flow table creation message, wherein the second identifier is used to uniquely identify the created flow table on the forwarding device;
receive a flow entry creation message from the controller, wherein the flow entry creation message carries a to-be-created flow entry and the first identifier of the flow table that is to store the flow entry;
obtain, according to the correspondence, the second identifier corresponding to the first identifier, and store the flow entry in the flow table corresponding to the obtained second identifier; and
receive a data packet, perform matching for the data packet by using a preset packet identification rule, to obtain the first identifier of the flow table for processing the data packet, obtain, from the correspondence, the second identifier corresponding to the first identifier, and process the data packet according to the flow entry in the flow table corresponding to the second identifier. - View Dependent Claims (12, 13)
-
Specification