CN105765922B - Flow entry treating method and apparatus - Google Patents

Flow entry treating method and apparatus Download PDF

Info

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
Application number
CN201480040608.5A
Other languages
Chinese (zh)
Other versions
CN105765922A (en
Inventor
刘洪宽
文白林
沈伟锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN105765922A publication Critical patent/CN105765922A/en
Application granted granted Critical
Publication of CN105765922B publication Critical patent/CN105765922B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Flow entry treating method and apparatus
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.
CN201480040608.5A 2014-11-04 2014-11-04 Flow entry treating method and apparatus Active CN105765922B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
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