CN105765922B - Flow entry treating method and apparatus - Google Patents
Flow entry treating method and apparatus Download PDFInfo
- Publication number
- CN105765922B CN105765922B CN201480040608.5A CN201480040608A CN105765922B CN 105765922 B CN105765922 B CN 105765922B CN 201480040608 A CN201480040608 A CN 201480040608A CN 105765922 B CN105765922 B CN 105765922B
- Authority
- CN
- China
- Prior art keywords
- flow entry
- flow
- newly
- built
- matching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
A kind of flow entry treating method and apparatus, is related to field of communication technology, to solve the problems, such as that the flow entry of software unit and the flow entry of hardware cell are inconsistent in OpenFlow interchanger.The method includes OpenFlow interchangers to receive the routing iinformation (S101) that controller is sent;Routing iinformation is converted into newly-built flow entry (S102);The matching domain of newly-built flow entry is matched with the matching domain of the data flow of storage, determine the matching domain for the data flow being forwarded using newly-built flow entry, wherein, the matching domain of the data flow of storage is the matching domain (S103) of the data flow of the flow entry forwarding stored by hardware cell;When the matching domain for the data flow for determining to be forwarded using newly-built flow entry, newly-built flow entry is added in hardware cell (S104).The flow entry treating method and apparatus can be applied to the OpenFlow interchanger more demanding to data transmission performance.
Description
Technical field
The present embodiments relate to field of communication technology more particularly to a kind of flow entry treating method and apparatus.
Background technique
OpenFlow (open flows) technology is by the data forwarding of web-transporting device (such as interchanger, router equipment)
It is mutually separated with two functional modules of route test, by the controller (Controller) of centralization to OpenFlow interchanger
(OpenFlow Switch) is managed and configures.
In the prior art, the data based on OpenFlow technology are transmitted, transmission device generallys use three cell datas
Processing framework, respectively software unit, adaptation unit and hardware cell.Controller is transmitting data stream configuration routing, and by road
The software unit of transmission device is issued to by information.The routing iinformation of data flow is recorded in the data flow flow table of software unit
(FlowTable) in, data flow flow table is made of the flow entry of hierarchical structure, the corresponding routing forwarding rule of each flow entry
Then.
Flow entry includes matching domain (Match Fields) and instruction (Actions), and matching domain is for recording flow entry
Mark, the operation that instruction should be executed for recording the data flow to match with the mark of flow entry.In data transmission procedure,
Transmitting data stream reaches OpenFlow interchanger, and OpenFlow interchanger is searched and the data flow phase in hardware cell first
The flow entry matched is reported to software unit when searching not then, then by the data flow, searches and the data in software unit
The flow entry that stream matches, and the flow entry found is mapped to hardware cell by adaptation unit, to realize in hardware list
Forwarding of the member to the data flow.
But if hardware cell has the flow entry to match with transmitting data stream, transmitting data will not be reported
To software unit, OpenFlow interchanger also would not search the flow table to match with the transmitting data stream in software unit
, then controller, which is issued to software unit, with other flow entrys that the transmitting data stream matches can not continue to be issued to
Hardware cell, and come into force in hardware cell.For example, table 1 is schematical hardware cell flow entry table, and as shown in Table 1, matching
The data flow of ethtype=0x0800, dstip=2.1.2.2, srcip=2.1.2.1, priority 1.Table 2 is schematical
Software unit flow entry table matches the data flow of inport=1, priority 2 as shown in Table 2.Wherein, priority value is bigger,
Indicate that priority is high.When having matching ethtype=0x0800, dstip=2.1.2.2, srcip=2.1.2.1, inport=1
Data flow reach OpenFlow interchanger when, the flow entry as shown in table 1 comes into force in hardware cell, OpenFlow exchange
Machine directly forwards the data flow according to flow entry shown in table 1, without the data flow is reported to software unit, therefore,
Flow entry shown in table 2 could not come into force in hardware cell.
The schematical hardware cell flow entry table of table 1
The schematical software unit flow entry table of table 2
Matching domain | Instruction | Priority |
Inport:1 | Output:2 | 2 |
As it can be seen that above-mentioned flow entry processing method, there are the flow entry of the flow entry of software unit and hardware cell is inconsistent
The problem of.
Summary of the invention
The embodiment of the present invention provides a kind of flow entry treating method and apparatus, soft in OpenFlow interchanger to solve
The flow entry of part unit and the inconsistent problem of the flow entry of hardware cell.
In order to achieve the above objectives, the embodiment of the present invention adopts the following technical scheme that
In a first aspect, the embodiment of the present invention provides a kind of flow entry processing method, it is applied to open flows OpenFlow and exchanges
Machine, the OpenFlow interchanger includes hardware cell, and the hardware cell is for storing the hard of the OpenFlow interchanger
The flow entry for the data flow that part interface directly forwards, which comprises
The OpenFlow interchanger receives the routing iinformation that controller is sent;
The routing iinformation is converted into newly-built flow entry;
The matching domain that the newly-built flow entry is matched with the matching domain of the data flow of storage is determined to utilize the newly-built stream
The matching domain for the data flow that list item is forwarded;Wherein, the matching domain of the data flow of the storage is to pass through the hardware cell
The matching domain of the data flow of the flow entry forwarding of storage;
When the matching domain for the data flow for determining to be forwarded using the newly-built flow entry, by the newly-built flow entry
It is added in the hardware cell of the OpenFlow interchanger.
With reference to first aspect, in the first possible implementation of the first aspect, the OpenFlow interchanger is also
It include: for routing iinformation to be converted to flow entry, and the software unit of storage flow table item;With for by the software unit turn
The format for the flow entry changed is converted to the adaptation unit of the hardware cell identification format;
It is further, described that the routing iinformation is converted into newly-built flow entry includes: the software unit by the road
The newly-built flow entry of the first format is converted by information;
Further, in the hardware cell that the newly-built flow entry is added to the OpenFlow interchanger
Include:
The newly-built flow entry of first format is converted to the hardware cell identifiable second by the adaptation unit
The newly-built flow entry of format;
The newly-built flow entry of second format is added in the hardware cell of the OpenFlow interchanger.
With reference to first aspect or the first possible implementation of first aspect, in second of possible implementation
In, the method also includes:
The matching domain that the flow entry of the software unit storage is matched with the matching domain for the data flow determined, obtains first
The matching flow entry of format;
The matching flow entry of first format is converted to the matching flow entry of the second format by the adaptation unit;
The matching flow entry of second format is deleted in the hardware cell.
With reference to first aspect or second of second of possible implementation of first aspect or first aspect possible
Implementation, in the third possible implementation, the priority of the newly-built flow entry are higher than the matching flow entry
Priority.
With reference to first aspect or second of the first possible implementation of first aspect or first aspect possible
The possible implementation of the third of implementation or first aspect, in the fourth possible implementation, the matching domain
Include: type of message, inbound port number, source hardware access control MAC address, target MAC (Media Access Control) address, source internet protocol IP address,
At least one of purpose IP address, virtual LAN VLAN information.
Second aspect, the embodiment of the present invention provide a kind of flow entry processing unit, are applied to open flows OpenFlow and exchange
Machine, the OpenFlow interchanger includes hardware cell, and the hardware cell is for storing the hard of the OpenFlow interchanger
The flow entry for the data flow that part interface directly forwards, described device include:
Receiving module, for receiving the routing iinformation of controller transmission;
Conversion module, for the routing iinformation to be converted into newly-built flow entry;
Matching module is determined for matching the matching domain of the newly-built flow entry with the matching domain of the data flow of storage
Utilize the matching domain for the data flow that the newly-built flow entry is forwarded;Wherein, the matching domain of the data flow of the storage is logical
Cross the matching domain of the data flow of the flow entry forwarding of the hardware cell storage;
Adding module, for inciting somebody to action when the matching domain for the data flow for determining to be forwarded using the newly-built flow entry
The newly-built flow entry is added in the hardware cell of the OpenFlow interchanger.
In conjunction with second aspect, in the first possible implementation of the second aspect, the OpenFlow interchanger is also
It include: for routing iinformation to be converted to flow entry, and the software unit of storage flow table item;With for by the software unit turn
The format for the flow entry changed is converted to the adaptation unit of the hardware cell identification format;
Further, the software unit is specifically used for for the routing iinformation being converted into the newly-built flow table of the first format
?;
Further, the adaptation unit is specifically used for the newly-built flow entry of first format being converted to the hardware
The newly-built flow entry of identifiable second format of unit;
The adding module is specifically used for for the newly-built flow entry of second format being added to the OpenFlow exchange
In the hardware cell of machine.
In conjunction with the possible implementation of the first of second aspect or second aspect, in second of possible implementation
In, the matching module is also used to be matched of the flow entry of the software unit storage with the matching domain for the data flow determined
With domain, the matching flow entry of the first format is obtained;
The matching flow entry of first format is specifically converted to the matching flow entry of the second format by the adaptation unit;
Described device further includes removing module, and the removing module in the hardware cell for deleting second lattice
The matching flow entry of formula.
Second in conjunction with second of the possible implementation or second aspect of second aspect or second aspect is possible
Implementation, in the third possible implementation, the priority of the newly-built flow entry are higher than the matching flow entry
Priority.
Second in conjunction with the possible implementation of the first of second aspect or second aspect or second aspect is possible
The possible implementation of the third of implementation or second aspect, in the fourth possible implementation, the matching domain
Include: type of message, inbound port number, source hardware access control MAC address, target MAC (Media Access Control) address, source internet protocol IP address,
At least one of purpose IP address, virtual LAN VLAN information.
Technical solution provided in an embodiment of the present invention, OpenFlow interchanger is in the routing iinformation for receiving controller transmission
Afterwards, the routing iinformation is converted into newly-built flow entry, and the matching domain of the data flow by that will store matches newly-built flow entry
Matching domain, the matching domain for the data flow being forwarded using newly-built flow entry is determined, due to the matching of the data flow of storage
Domain is the matching domain of the data flow of flow entry forwarding store by hardware cell, thus determine using create flow entry into
After the matching domain of the data flow of row forwarding, the further hardware list by the way that newly-built flow entry to be added to OpenFlow interchanger
In member, the consistency of the flow entry of the flow entry and hardware cell of software unit in OpenFlow interchanger is realized.
Detailed description of the invention
In order to illustrate the technical solution of the embodiments of the present invention more clearly, below will be in embodiment or description of the prior art
Required attached drawing is briefly described, it should be apparent that, the accompanying drawings in the following description is only some realities of the invention
Example is applied, it for those of ordinary skill in the art, without creative efforts, can also be according to these attached drawings
Obtain other attached drawings.
Fig. 1 is the flow chart of flow entry processing method embodiment one of the present invention;
Fig. 2 is the schematic diagram of flow entry processing system embodiment provided by the invention;
Fig. 3 is the flow chart of flow entry processing method embodiment two of the present invention;
Fig. 4 is the flow chart of the generation embodiment one of the description information of data flow in present invention description unit;
Fig. 5 is the flow chart of flow entry processing method embodiment three of the present invention;
Fig. 6 is the flow chart of flow entry processing method example IV of the present invention;
Fig. 7 is that the description information of data flow in present invention description unit generates the flow chart of embodiment two;
Fig. 8 is the structural schematic diagram of flow entry processing device embodiment of the present invention;
Fig. 9 is the structural schematic diagram of flow entry processing equipment embodiment provided in an embodiment of the present invention.
Specific embodiment
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, complete
Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on
Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other
Embodiment shall fall within the protection scope of the present invention.
Flow entry processing method provided in an embodiment of the present invention can be applied to open flows OpenFlow interchanger, wherein
OpenFlow interchanger includes hardware cell, what the hardware interface that hardware cell is used to store OpenFlow interchanger directly forwarded
The flow entry of data flow.
Fig. 1 is the flow chart of flow entry processing method embodiment one of the present invention, as shown in Figure 1, the method for the present embodiment can
To include the following contents.
S101, OpenFlow interchanger receive the routing iinformation that controller is sent.
The routing configuration of transmitting data stream is executed by controller, and controller can match according to network topology for transmitting data stream
It sets routing or updates routing, and routing iinformation is sent to interchanger, so that interchanger executes data transmission.
S102, routing iinformation is converted into newly-built flow entry.
The routing iinformation of data flow is stored in the data flow flow table of software unit in the form of flow entry, each flow table
The corresponding routing forwarding rule of item.
S103, the matching domain that newly-built flow entry is matched with the matching domain of the data flow of storage determine to utilize newly-built flow table
The matching domain for the data flow that item is forwarded, wherein the matching domain of the data flow of storage is the flow table stored by hardware cell
The matching domain of the data flow of item forwarding.
It in a particular application, can be by adding the description information flowed for storing data in OpenFlow interchanger
The description unit of (for example, matching domain of data flow) believes the description of the data flow to match with the flow entry in hardware cell
Breath is stored in description unit, with by the function served as bridge of description unit, so that the flow entry of software unit and hardware cell
Flow entry is consistent.
S104, when the matching domain for the data flow for determining to be forwarded using newly-built flow entry, newly-built flow entry is added
It is added in the hardware cell of OpenFlow interchanger.
OpenFlow interchanger searches the flow table to match with data flow in hardware cell first in data transmission procedure
, therefore, when determining the existing flow entry being concerned with newly-built flow entry in hardware cell, then pass through newly-built flow entry
It is added in hardware cell to ensure to execute transmission to data flow according to newest routing iinformation.Preferably, flow entry is created
Priority is higher than the priority of matching flow entry.
In the present embodiment, OpenFlow interchanger believes the routing after the routing iinformation for receiving controller transmission
Breath is converted into newly-built flow entry, and the matching domain of the data flow by that will store matches the matching domain of newly-built flow entry, determines
Using the matching domain for the data flow that newly-built flow entry is forwarded, since the matching domain of the data flow of storage is to pass through hardware cell
The matching domain of the data flow of the flow entry forwarding of storage, therefore in the data flow for determining to be forwarded using newly-built flow entry
It is further by the way that newly-built flow entry to be added in the hardware cell of OpenFlow interchanger after matching domain, it realizes
The consistency of the flow entry of the flow entry and hardware cell of software unit in OpenFlow interchanger.
Method as described above, wherein OpenFlow interchanger further include: for routing iinformation to be converted to flow entry,
And the software unit of storage flow table item;Hardware cell identification lattice are converted to the format of the flow entry for converting software unit
The adaptation unit of formula.Further, routing iinformation is converted into newly-built flow entry includes: that routing iinformation is converted by software unit
The newly-built flow entry of first format, wherein the newly-built flow entry of the first format is the identifiable flow entry of software unit.Again into one
Step ground, newly-built flow entry is added in the hardware cell of OpenFlow interchanger includes: adaptation unit by the new of the first format
The newly-built flow entry that flow entry is converted to the second format is built, wherein the newly-built flow entry of the second format is that hardware cell is identifiable
Flow entry.Still further, by the way that the newly-built flow entry of the second format to be added in the hardware cell of OpenFlow interchanger,
Final realize updates the recent route information of transmitting data stream into OpenFlow interchanger in the flow entry of hardware cell.
Fig. 2 is the schematic diagram of flow entry processing system embodiment provided by the invention.As shown in Fig. 2, the present embodiment is
System may include: controller and OpenFlow interchanger, OpenFlow interchanger and other transmission device connection communications.Wherein,
The OpenFlow interchanger of the present embodiment use four layer data processing frameworks, be followed successively by from top to bottom software unit, description unit,
Adaptation unit and hardware cell.The possible operation being now related to regard to the system of the present embodiment lays down a definition.S201, OpenFlow exchange
Machine receives data stream packet from other transmission devices by input port In Port;S202, OpenFlow interchanger are in hardware list
Member does not find the flow entry to match with data stream packet, and data stream packet is reported to software unit;S203,OpenFlow
Interchanger does not find the flow entry to match with data stream packet in software unit, and data stream packet is reported to controller;
S204, controller are the configuration routing of data stream packet according to network topology, and routing iinformation is issued to OpenFlow interchanger
Software unit;S205, OpenFlow interchanger generate the flow entry of data stream packet according to the routing iinformation that controller issues
Afterwards, triggering description unit requests to obtain the flow entry of data stream packet to software unit;S206, OpenFlow interchanger are by data
The flow entry of stream packet is issued to description unit by software unit;S207, OpenFlow interchanger are by the flow table of data stream packet
Item is issued to adaptation unit by description unit;S208, OpenFlow interchanger are by the flow entry of data stream packet by adaptation unit
It is mapped to hardware cell;S209, OpenFlow interchanger find the flow entry to match with data stream packet in hardware cell
Afterwards, data stream packet is sent to by other transmission devices by output port Out Port.
Method as described above, optionally, the method also includes: software is matched with the matching domain for the data flow determined
The matching domain of the flow entry of unit storage, obtains the matching flow entry of the first format;Adaptation unit is by the matching stream of the first format
List item is converted to the matching flow entry of the second format;The matching flow entry of the second format is deleted in the hardware unit.
Fig. 3 is the flow chart of flow entry processing method embodiment two of the present invention, as shown in figure 3, the method for the present embodiment can
To include the following contents.
S301, OpenFlow interchanger receive the routing iinformation for the first data flow that controller is sent.
First data flow can be any transmitting data stream, and the routing configuration of transmitting data stream is executed by controller, control
Device can be transmitting data stream configuration routing according to network topology or update routing, and routing iinformation is sent to OpenFlow
Interchanger, so that OpenFlow interchanger executes data transmission.
It should be noted that the first data flow herein, the second data flow, third data flow can be phase between each other
Same data flow, the identical data flow in part or complete different data flow.
S302, OpenFlow interchanger generate the first flow entry of the first data flow according to routing iinformation, and are recorded in soft
In the data flow flow table of part unit.
The routing iinformation of data flow is recorded in the data flow flow table of software unit in the form of flow entry, each flow table
The corresponding routing forwarding rule of item.
S303, OpenFlow interchanger search the description of the second data flow to match with the first flow entry in description unit
Information, describe unit in include the data flow to match with the flow entry in hardware cell description information, the second data flow with
The second flow entry in hardware cell matches.
Second data flow is any transmitting data stream, since the flow entry in software unit is mapped to the process of hardware cell
The intervention for needing data flow, accordingly, there exist the inconsistent problems of the flow entry of the flow entry of software unit and hardware cell.Soft
Setting description unit between part unit and adaptation unit, will with hardware cell is mapped to by software unit and is still present in hard
The description information for the data flow that the flow entry of part unit matches is recorded in description unit, is made with the bridge by description unit
With so that the flow entry of software unit is consistent with the flow entry of hardware cell.
S304, OpenFlow interchanger search the third flow entry to match with the second data flow in software unit.
Third flow entry is issued to hardware cell by adaptation unit by S305, OpenFlow interchanger.
S306, OpenFlow interchanger delete the second flow entry.
Specifically, the first flow entry of the first data flow it is corresponding be the first data flow recent route information,
OpenFlow interchanger has found the description information of the second data flow to match with the first flow entry in description unit, and obtains
Know the second flow entry to match in hardware cell with the second data flow, is out-of-date routing letter since the second flow entry is corresponding
Breath, therefore, it is necessary to delete the second flow entry in hardware cell.In order to not influence data flow just in the transmission, therefore need
The third flow entry to match with the second data flow further is searched in software unit, third flow entry is being passed through into adaptation
After unit is issued to hardware cell, then by hardware cell the second flow entry delete.
In the present embodiment, OpenFlow interchanger receive controller transmission the first data flow routing iinformation after,
The first flow entry of the first data flow is generated according to the routing iinformation of the first data flow, and is searched and the first flow table in description unit
The description information for the second data flow that item matches, due to including matching with the flow entry in hardware cell in description unit
The description information of data flow, therefore can know the second flow entry to match in hardware cell with the second data flow, then lead to
It crosses and searches the third flow entry to match with the second data flow in software unit, and pass through under adaptation unit by third flow entry
After being dealt into hardware cell, then the second flow entry in hardware cell deleted, realizes the flow entry and hardware cell of software unit
Flow entry consistency.Therefore, flow entry processing method provided in an embodiment of the present invention solves network OpenFlow exchange
The flow entry of software unit and the inconsistent problem of the flow entry of hardware cell in machine, it is ensured that according to newest routing iinformation pair
Data flow executes transmission.
Fig. 4 is the flow chart of the generation embodiment one of the description information of data flow in present invention description unit.The present embodiment
In, unit is described between software unit and adaptation unit, as shown in figure 4, the description information of the data flow in description unit
Generation may include:
S401, OpenFlow interchanger receive the third data flow that other transmission devices are sent.
Third data flow can be any transmitting data stream.
S402, OpenFlow interchanger search the 4th flow entry to match with third data flow in hardware cell.
S403, when OpenFlow interchanger hardware cell search less than four flow entrys when, third data flow is reported
To software unit.
In data transmission procedure, OpenFlow interchanger searches the flow table to match with data flow in hardware cell first
, when searching not then, data flow is just reported to software unit.
S404, OpenFlow interchanger search the 4th flow entry in software unit.
OpenFlow interchanger searches the 4th flow entry to match with third data flow in software unit, if in software list
Member search less than, can further by the way that third data flow is reported to controller, by controller be third data stream configuration
It routes, and routing iinformation is issued to the software unit of OpenFlow interchanger, OpenFlow interchanger is according to the routing iinformation
The flow entry of third data flow is generated, and is recorded in the data flow flow table of software unit.
The 4th flow entry found in software unit is issued to firmly by S405, OpenFlow interchanger by adaptation unit
Part unit, and description unit is recorded in the description information of third data flow.
OpenFlow interchanger is while being mapped to hardware cell by adaptation unit for the 4th flow entry, by third number
Description unit is recorded according to the description information of stream, so as to include the number to match with the flow entry in hardware cell in description unit
According to the description information of stream.
In the present embodiment, by the way that description unit is arranged between software unit and adaptation unit, and will be in software unit
Flow entry while be mapped to hardware cell, it is single that description is recorded in the description information of the data flow to match with flow entry
Member, and then the one of the flow entry of software unit and the flow entry of hardware cell can be realized by the function served as bridge of description unit
Cause property.
Fig. 5 is the flow chart of flow entry processing method embodiment three of the present invention.As shown in figure 5, the method for the present embodiment can
To include:
S501, OpenFlow interchanger receive the routing iinformation for the first data flow that controller is sent.
S502, OpenFlow interchanger generate the first flow entry of the first data flow according to routing iinformation, and are recorded in soft
In the data flow flow table of part unit.
S503, OpenFlow interchanger search the description of the second data flow to match with the first flow entry in description unit
Information, describe unit in include the data flow to match with the flow entry in hardware cell description information, the second data flow with
The second flow entry in hardware cell matches.
The execution method of above-mentioned S501-S503 is similar with the execution method of S301-S303 in embodiment two, herein no longer
It repeats.
S504, the second data flow in unit is described when the priority value in the first flow entry in software unit is greater than
When priority, OpenFlow interchanger searches the third flow entry to match with the second data flow in software unit.
Third flow entry is issued to hardware cell by adaptation unit by S505, OpenFlow interchanger.
S506, OpenFlow interchanger delete the second flow entry.
Specifically, the first flow entry of the first data flow it is corresponding be the first data flow recent route information,
OpenFlow interchanger has found the description information of the second data flow to match with the first flow entry in description unit, and obtains
Know the second flow entry to match in hardware cell with the second data flow, the priority value in flow entry indicates and flow entry phase
The priority for the data flow matched, priority value is bigger, indicates that priority is high.It preferably, can be by further first-class
The priority of priority value and the second data flow in list item, when the priority value in the first flow entry is less than the second data flow
When priority, selection continues to execute transmission to the first data flow according to the routing iinformation in the second flow entry;When the first flow entry
In priority value be greater than the second data flow priority when, selection by hardware cell the second flow entry delete, Jin Ershi
Transmission now is executed to the first data flow according to the routing iinformation in the first flow entry.In order to not influence data just in the transmission
Stream, it is therefore desirable to the third flow entry to match with the second data flow is further searched in software unit, by third flow table
After being issued to hardware cell by adaptation unit, then by the second flow entry deletion in hardware cell.
In the present embodiment, OpenFlow interchanger receive controller transmission the first data flow routing iinformation after,
According to the routing iinformation of the first data flow generate the first data flow the first flow entry, and further description unit search with
The description information for the second data flow that first data flow matches, by comparing the priority value and the second number in the first flow entry
According to flow priority, when the priority value in the first flow entry is greater than the priority of the second data flow, further in software list
Member searches the third flow entry to match with the second data flow, and third flow entry is being issued to hardware list by adaptation unit
After member, the second flow entry in hardware cell is deleted, realizes and transmission is executed to the first data flow according to high priority.
Method as described above, it is preferable that according to the type of message of data flow, the description of the data flow in unit will be described
The description information of the identical data flow of type of message is recorded in same type of traffic flow information table by the information book of final entry.
Wherein, the description information for describing the data flow in unit includes the priority for matching domain information and data stream of data flow, data
The matching domain information of stream includes: the type of message of data flow, the inbound port number of data flow, the source MAC of data flow, data flow
Target MAC (Media Access Control) address, the source IP address of data flow, the purpose IP address of data flow and data flow vlan information at least one
It is a.
For example, the type of message of data flow has: ARP, IPV4, IPV4-TCP, IPV4-UDP, IPV4-ICMP, IPV4-
MPLS, IPV6, IPV6-TCP, IPV6-UDP, IPV6-ICMP and IPV6-MPLS can be incited somebody to action according to the type of message of data flow
The type of flow entry information table, which is also divided into, to be divided into: ARP, IPV4, IPV4-TCP, IPV4-UDP, IPV4-ICMP, IPV4-
MPLS, IPV6, IPV6-TCP, IPV6-UDP, IPV6-ICMP and IPV6-MPLS.Table 3 is schematical flow entry information table.Such as
Shown in table 3, every a line of flow entry information table corresponds to the information of a flow entry, for the flow entry information table of ARP type,
The type of message of the data flow to match with flow entry therein is ARP.Similarly, with the flow entry information table of IPV4 type
The type of message for the data flow that flow entry matches is IPV4, the flow entry phase with the flow entry information table of IPV4-TCP type
The type of message for the data flow matched is IPV4-TCP, the number to match with the flow entry of the flow entry information table of IPV4-UDP type
Type of message according to stream is IPV4-UDP, the data flow to match with the flow entry of the flow entry information table of IPV4-ICMP type
Type of message be IPV4-ICMP, the report of the data flow to match with the flow entry of the flow entry information table of IPV4-MPLS type
Literary type is IPV4-MPLS, and the type of message of the data flow to match with the flow entry of the flow entry information table of IPV6 type is
IPV6, the type of message of the data flow to match with the flow entry of the flow entry information table of IPV6-TCP type are IPV6-TCP,
The type of message of the data flow to match with the flow entry of the flow entry information table of IPV6-UDP type is IPV6-UDP, with
The type of message for the data flow that the flow entry of the flow entry information table of IPV6-ICMP type matches is IPV6-ICMP, with
The type of message for the data flow that the flow entry of the flow entry information table of IPV6-MPLS type matches is IPV6-MPLS.Literary name section
In every a line correspond to the matching domain information an of flow entry, it is also assumed that being of the data flow to match with flow entry
With identification information.
The schematical flow entry information table of table 3
Fig. 6 is the flow chart of flow entry processing method example IV of the present invention.As shown in fig. 6, the method for the present embodiment can
To include the following contents.
S601, OpenFlow interchanger receive the flow entry that controller is sent and increase message newly.
It include the information of its routing for transmitting data stream configuration in the newly-increased message that controller is sent.
The message that S602, OpenFlow interchanger are sent according to controller generates newly-increased flow entry.
The routing iinformation of data flow is recorded in the data flow flow table of software unit in the form of flow entry, each flow entry
A corresponding routing forwarding rule.
S603, OpenFlow interchanger search the description information of data flow in description unit, judge whether hardware cell is deposited
In flow entry identical with the matching domain condition of newly-increased flow entry.
For example, searching whether the description information that there is the data flow to match with newly-increased flow entry in description unit.
If it has, then executing S604;If it has not, then executing S605.
S604, OpenFlow interchanger are by the flow entry identical with the matching domain condition of newly-increased flow entry in hardware cell
It deletes.
S605, end.
In the present embodiment, OpenFlow interchanger by by the relevant flow table entry deletion in hardware cell so as to
When the data flow that relevant flow entry matches executes transmission, data flow can be reported to software unit, be found in software unit
Newly-increased flow entry, and newly-increased flow entry is mapped to hardware cell by adaptation unit, and then realize according in newly-increased flow entry
Routing iinformation transmission is executed to data flow.
Fig. 7 is that the description information of data flow in present invention description unit generates the flow chart of embodiment two.As shown in fig. 7,
The generation of description information of data flow in description unit may include:
S701, OpenFlow interchanger receive the data flow that other OpenFlow interchangers are sent.
S702, OpenFlow interchanger search whether there is the flow entry to match with data flow in hardware cell.
If it has not, then executing S703;If it has, then executing S706.
S703, data flow is reported to software unit.
In data transmission procedure, OpenFlow interchanger searches the flow table to match with data flow in hardware cell first
, when searching not then, data flow is just reported to software unit.
S704, OpenFlow interchanger find the flow entry to match with data flow in software unit.
OpenFlow interchanger searches the flow entry to match with data flow in software unit, if searching not in software unit
It arrives, by controller can be that data stream configuration routes further by the way that data flow is reported to controller, and by routing iinformation
It is issued to the software unit of OpenFlow interchanger, OpenFlow interchanger generates the flow table of the data flow according to the routing iinformation
, and be recorded in the data flow flow table of software unit.
The flow entry found in software unit is mapped to hardware cell by S705, OpenFlow interchanger, and will be with this
The description information for the data flow that flow entry matches is saved in description unit.
OpenFlow interchanger, will be with flow entry phase while flow entry is mapped to hardware cell by adaptation unit
The description information of matched data flow is saved in description unit, so as to include and the flow entry phase in hardware cell in description unit
The description information of matched data flow.
S706, OpenFlow interchanger execute data flow according to the flow entry to match with data flow in hardware cell
Transmission.
In the present embodiment, by the way that description unit is arranged between software unit and adaptation unit, and will be in software unit
Flow entry while be mapped to hardware cell, it is single that the description information of the data flow to match with the flow entry is saved in description
Member so that including the description information of the data flow to match with the flow entry in hardware cell in description unit, and then can lead to
The function served as bridge for crossing description unit, realizes the consistency of the flow entry of software unit and the flow entry of hardware cell.
Fig. 8 is the structural schematic diagram of flow entry processing device embodiment of the present invention.The device can be applied to open flows
OpenFlow interchanger, OpenFlow interchanger include hardware cell, and hardware cell is for storing the hard of OpenFlow interchanger
The flow entry for the data flow that part interface directly forwards.As shown in figure 8, the flow entry processing unit of the present embodiment may include: to connect
Receive module 801, conversion module 802, matching module 803 and adding module 804.Wherein, receiving module 801 is for receiving controller
The routing iinformation of transmission;Conversion module 802 is used to for the routing iinformation to be converted into newly-built flow entry;Matching module 803 is used for
The matching domain that the newly-built flow entry is matched with the matching domain of the data flow of storage is determined to carry out using the newly-built flow entry
The matching domain of the data flow of forwarding;Wherein, the matching domain of the data flow of the storage is the stream stored by the hardware cell
The matching domain of the data flow of list item forwarding;What adding module 804 was used to determine to be forwarded using the newly-built flow entry
When the matching domain of data flow, the newly-built flow entry is added in the hardware cell of the OpenFlow interchanger.
The device of the present embodiment can be used for executing the method for embodiment of the method shown in Fig. 1, realization principle and be reached
The technical effect arrived is similar, and details are not described herein.
Device as described above, wherein the OpenFlow interchanger further include: for routing iinformation to be converted to flow table
, and the software unit of storage flow table item;It is converted to the format of the flow entry for converting the software unit described hard
The adaptation unit of part unit identification format;Further, the software unit is specifically used for for the routing iinformation being converted into the
The newly-built flow entry of one format;Further, the adaptation unit is specifically used for turning the newly-built flow entry of first format
It is changed to the newly-built flow entry of identifiable second format of the hardware cell;Adding module 804 specifically can be used for described the
The newly-built flow entry of two formats is added in the hardware cell of the OpenFlow interchanger.Above-mentioned matching domain can be with are as follows:
Type of message, inbound port number, source hardware access control MAC address, target MAC (Media Access Control) address, source internet protocol IP address, destination IP
At least one of address, virtual LAN VLAN information.Preferably, the priority of the newly-built flow entry is higher than the matching
The priority of flow entry.
Device as described above, wherein matching module 803 can be also used for the matching domain matching with the data flow determined
The matching domain of the flow entry of the software unit storage, obtains the matching flow entry of the first format;The adaptation unit specifically will
The matching flow entry of first format is converted to the matching flow entry of the second format.Optionally, described device can also include
Removing module 805, removing module 805 can be used for deleting the matching flow entry of second format in the hardware cell.
Fig. 9 is the structural schematic diagram of flow entry processing equipment embodiment provided in an embodiment of the present invention.The equipment can be
OpenFlow interchanger, as shown in figure 9, the flow entry processing equipment includes at least one processor 901 (such as CPU), storage
Device 903 and at least one communication bus 904, for realizing the connection communication between device.Processor 901 is for executing storage
The executable module stored in device 903, such as computer program.Memory 903 may include high-speed random access memory
(RAM:Random Access Memory), it is also possible to it further include non-labile memory (non-volatile memory),
A for example, at least magnetic disk storage.
In some embodiments, memory 903 stores program 905, and program 905 can be executed with device 901 processed, this
A program include execute a kind of flow entry processing method, this method comprises:
OpenFlow interchanger receives the routing iinformation that controller is sent;
Routing iinformation is converted into newly-built flow entry;
The matching domain that newly-built flow entry is matched with the matching domain of the data flow of storage is determined to carry out using newly-built flow entry
The matching domain of the data flow of forwarding;Wherein, the matching domain of the data flow of storage is that the flow entry stored by hardware cell forwards
Data flow matching domain;
When the matching domain for the data flow for determining to be forwarded using newly-built flow entry, newly-built flow entry is added to
In the hardware cell of OpenFlow interchanger.
The program of above-mentioned execution flow entry processing method, it is preferable that the OpenFlow interchanger further include: be used for road
Flow entry, and the software unit of storage flow table item are converted to by information;With the flow entry for converting the software unit
Format is converted to the adaptation unit of the hardware cell identification format;
It is further, described that the routing iinformation is converted into newly-built flow entry includes: the software unit by the road
The newly-built flow entry of the first format is converted by information;
Further, in the hardware cell that the newly-built flow entry is added to the OpenFlow interchanger
Include:
The newly-built flow entry of first format is converted to the hardware cell identifiable second by the adaptation unit
The newly-built flow entry of format;
The newly-built flow entry of second format is added in the hardware cell of the OpenFlow interchanger.
The program of above-mentioned execution flow entry processing method, it is preferable that the method also includes:
The matching domain that the flow entry of the software unit storage is matched with the matching domain for the data flow determined, obtains first
The matching flow entry of format;
The matching flow entry of first format is converted to the matching flow entry of the second format by the adaptation unit;
The matching flow entry of second format is deleted in the hardware cell.
The program of above-mentioned execution flow entry processing method, it is preferable that the priority of the newly-built flow entry is higher than described
Priority with flow entry.
The program of above-mentioned execution flow entry processing method, it is preferable that the matching domain include: type of message, inbound port number,
Source hardware access control MAC address, target MAC (Media Access Control) address, source internet protocol IP address, purpose IP address, virtual LAN
At least one of vlan information.
Finally, it should be noted that the above embodiments are merely illustrative of the technical solutions of the present invention, rather than its limitations;Although
Present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that: it still may be used
To modify the technical solutions described in the foregoing embodiments or equivalent replacement of some of the technical features;
And these are modified or replaceed, the range for technical solution of various embodiments of the present invention that it does not separate the essence of the corresponding technical solution.
Claims (10)
1. a kind of flow entry processing method, is applied to open flows OpenFlow interchanger, the OpenFlow interchanger includes hard
Part unit, the flow table for the data flow that the hardware interface that the hardware cell is used to store the OpenFlow interchanger directly forwards
, which is characterized in that the described method includes:
The OpenFlow interchanger receives the routing iinformation that controller is sent;
The routing iinformation is converted into newly-built flow entry;
The matching domain that the newly-built flow entry is matched with the matching domain of the data flow of storage is determined to utilize the newly-built flow entry
The matching domain for the data flow being forwarded;Wherein, the matching domain of the data flow of the storage is to be stored by the hardware cell
Flow entry forwarding data flow matching domain;
When the matching domain for the data flow for determining to be forwarded using the newly-built flow entry, the newly-built flow entry is added
Into the hardware cell of the OpenFlow interchanger.
2. the method according to claim 1, wherein the OpenFlow interchanger further include: for that will route
Information is converted to flow entry, and the software unit of storage flow table item;With the lattice of the flow entry for converting the software unit
Formula is converted to the adaptation unit of the hardware cell identification format;
It is further, described that the routing iinformation is converted into newly-built flow entry includes: that the software unit believes the routing
Breath is converted into the newly-built flow entry of the first format, and the newly-built flow entry of first format is the identifiable stream of the software unit
List item;
Further, it is wrapped in the hardware cell that the newly-built flow entry is added to the OpenFlow interchanger
It includes:
The newly-built flow entry of first format is converted to identifiable second format of the hardware cell by the adaptation unit
Newly-built flow entry;
The newly-built flow entry of second format is added in the hardware cell of the OpenFlow interchanger.
3. according to the method described in claim 2, it is characterized in that, the method also includes:
The matching domain that the flow entry of the software unit storage is matched with the matching domain for the data flow determined, obtains the first format
Matching flow entry;
The matching flow entry of first format is converted to the matching flow entry of the second format by the adaptation unit;
The matching flow entry of second format is deleted in the hardware cell.
4. according to the method described in claim 3, it is characterized in that, the priority of the newly-built flow entry is flowed higher than the matching
The priority of list item.
5. according to claim 1 to method described in 4 any claims, which is characterized in that the matching domain includes: message class
Type, inbound port number, source hardware access control MAC address, target MAC (Media Access Control) address, source internet protocol IP address, purpose IP address,
At least one of virtual LAN VLAN information.
6. a kind of flow entry processing unit, is applied to open flows OpenFlow interchanger, the OpenFlow interchanger includes hard
Part unit, the flow table for the data flow that the hardware interface that the hardware cell is used to store the OpenFlow interchanger directly forwards
, which is characterized in that described device includes:
Receiving module, for receiving the routing iinformation of controller transmission;
Conversion module, for the routing iinformation to be converted into newly-built flow entry;
Matching module is determined to utilize for matching the matching domain of the newly-built flow entry with the matching domain of the data flow of storage
The matching domain for the data flow that the newly-built flow entry is forwarded;Wherein, the matching domain of the data flow of the storage is passes through
State the matching domain of the data flow of the flow entry forwarding of hardware cell storage;
Adding module will be described for when the matching domain for the data flow for determining to be forwarded using the newly-built flow entry
Newly-built flow entry is added in the hardware cell of the OpenFlow interchanger.
7. device according to claim 6, which is characterized in that the OpenFlow interchanger further include: for that will route
Information is converted to flow entry, and the software unit of storage flow table item;With the lattice of the flow entry for converting the software unit
Formula is converted to the adaptation unit of the hardware cell identification format;
Further, the software unit is specifically used for for the routing iinformation being converted into the newly-built flow entry of the first format, institute
The newly-built flow entry for stating the first format is the identifiable flow entry of the software unit;
Further, the adaptation unit is specifically used for the newly-built flow entry of first format being converted to the hardware cell
The newly-built flow entry of identifiable second format;
The adding module is specifically used for the newly-built flow entry of second format being added to the OpenFlow interchanger
In the hardware cell.
8. device according to claim 7, which is characterized in that
The matching module is also used to be matched the flow entry of the software unit storage with the matching domain for the data flow determined
Matching domain obtains the matching flow entry of the first format;
The matching flow entry of first format is specifically converted to the matching flow entry of the second format by the adaptation unit;
Described device further include:
Removing module, for deleting the matching flow entry of second format in the hardware cell.
9. device according to claim 8, which is characterized in that the priority of the newly-built flow entry is flowed higher than the matching
The priority of list item.
10. according to device described in claim 6 to 9 any claim, which is characterized in that the matching domain includes: message
Type, inbound port number, source hardware access control MAC address, target MAC (Media Access Control) address, source internet protocol IP address, destination IP
At least one of location, virtual LAN VLAN information.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/090273 WO2016070332A1 (en) | 2014-11-04 | 2014-11-04 | Flow entry processing method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105765922A CN105765922A (en) | 2016-07-13 |
CN105765922B true CN105765922B (en) | 2019-06-07 |
Family
ID=55908354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480040608.5A Active CN105765922B (en) | 2014-11-04 | 2014-11-04 | Flow entry treating method and apparatus |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105765922B (en) |
WO (1) | WO2016070332A1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107786461B (en) * | 2016-08-25 | 2021-06-29 | 中国电信股份有限公司 | Method and controller for realizing flow table switching |
CN110365599B (en) * | 2019-07-12 | 2023-05-23 | 中国电信集团工会上海市委员会 | Openflow switch forwarding channel rapid updating system and method thereof |
CN110430138B (en) * | 2019-07-26 | 2022-02-22 | 新华三技术有限公司合肥分公司 | Data flow forwarding state recording method and network equipment |
CN112511438B (en) * | 2020-11-19 | 2022-12-13 | 锐捷网络股份有限公司 | Method and device for forwarding message by using flow table and computer equipment |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102957603A (en) * | 2012-11-09 | 2013-03-06 | 盛科网络(苏州)有限公司 | Multilevel flow table-based Openflow message forwarding method and system |
CN103259718A (en) * | 2013-04-18 | 2013-08-21 | 华为技术有限公司 | Flow table conversion method and device |
CN103326943A (en) * | 2012-03-23 | 2013-09-25 | 日电(中国)有限公司 | Data stream rerouting method and controller |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9137174B2 (en) * | 2013-03-14 | 2015-09-15 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Synchronization of OpenFlow controller devices via OpenFlow switching devices |
-
2014
- 2014-11-04 CN CN201480040608.5A patent/CN105765922B/en active Active
- 2014-11-04 WO PCT/CN2014/090273 patent/WO2016070332A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103326943A (en) * | 2012-03-23 | 2013-09-25 | 日电(中国)有限公司 | Data stream rerouting method and controller |
CN102957603A (en) * | 2012-11-09 | 2013-03-06 | 盛科网络(苏州)有限公司 | Multilevel flow table-based Openflow message forwarding method and system |
CN103259718A (en) * | 2013-04-18 | 2013-08-21 | 华为技术有限公司 | Flow table conversion method and device |
Also Published As
Publication number | Publication date |
---|---|
CN105765922A (en) | 2016-07-13 |
WO2016070332A1 (en) | 2016-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103227843B (en) | A kind of physical link address management method and device | |
JP5991424B2 (en) | Packet rewriting device, control device, communication system, packet transmission method and program | |
JP5862769B2 (en) | COMMUNICATION SYSTEM, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM | |
CN105706400B (en) | The method and apparatus of grouping are forwarded on network | |
KR101913490B1 (en) | Flow table management method and relevant device and system | |
CN104702479B (en) | The method and apparatus that tunnel is established in SDN network | |
RU2612599C1 (en) | Control device, communication system, method for controlling switches and program | |
US20150131666A1 (en) | Apparatus and method for transmitting packet | |
CN105871718B (en) | A kind of SDN inter-domain routing implementation method | |
US10645006B2 (en) | Information system, control apparatus, communication method, and program | |
JP6248938B2 (en) | Communication system, virtual network management apparatus, virtual network management method and program | |
JPWO2012133060A1 (en) | Network system and VLAN tag information acquisition method | |
CN104780088A (en) | Service message transmission method and equipment | |
CN105765922B (en) | Flow entry treating method and apparatus | |
WO2018113792A1 (en) | Broadcast packet processing method and processing apparatus, controller, and switch | |
JP2017212759A (en) | Packet transfer device, control device, communication system, communication method, and program | |
CN104125128A (en) | Method for supporting VLAN (virtual local area network) by aid of Linux soft bridge | |
WO2015125804A1 (en) | Communication system, control device, communication control method and program | |
JP2012175394A (en) | Flow switch, flow control system and flow control method | |
US9219616B2 (en) | Supporting multiple IEC-101/IEC-104 masters on an IEC-101/IEC-104 translation gateway | |
CN104486227A (en) | System and method for achieving IPv6 flexible arrangement through VxLAN technique | |
WO2016152903A1 (en) | Communication system, control apparatus, control method, and program | |
CN106034075B (en) | Method and device for distributing label for VPN route | |
CN105656814A (en) | SDN (Software-Defined Network) forwarding system and method | |
JP2015231212A (en) | Data transfer system, data transfer server, data transfer method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210429 Address after: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee after: Honor Device Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |