CN104954258B - Data message processing method, device and open flow switch - Google Patents

Data message processing method, device and open flow switch Download PDF

Info

Publication number
CN104954258B
CN104954258B CN201410116976.5A CN201410116976A CN104954258B CN 104954258 B CN104954258 B CN 104954258B CN 201410116976 A CN201410116976 A CN 201410116976A CN 104954258 B CN104954258 B CN 104954258B
Authority
CN
China
Prior art keywords
priority
flow
behavior aggregate
instruction
data message
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
CN201410116976.5A
Other languages
Chinese (zh)
Other versions
CN104954258A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201410116976.5A priority Critical patent/CN104954258B/en
Publication of CN104954258A publication Critical patent/CN104954258A/en
Application granted granted Critical
Publication of CN104954258B publication Critical patent/CN104954258B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present invention provides a kind of data message processing method, device and open flow switchs, this method comprises: the matched one or more flow entrys of the data message for determining and receiving;The behavior aggregate that operation is executed to data message is determined according to the instruction priority of one or more flow entrys according to the assembly line that one or more flow entrys are formed;Operation processing is executed to data message according to the behavior aggregate determined, through the invention, it solves the mode based on pipeline processes in the related art to handle flow table, in the presence of with the conflicting problem of business processing demand, and then reach for different business, forwarding device can be handled accurately, effectively prevent the effect of the conflict between business.

Description

Data message processing method, device and open flow switch
Technical field
The present invention relates to the communications fields, exchange in particular to a kind of data message processing method, device and open flows Machine.
Background technique
Since to expose the demand of more and more disadvantages and people to network performance higher and higher for present network, Researcher has to many sophisticated functions to be added in the architecture of router, for example, open type shortest path is excellent First agreement (Open Shortest Path First, referred to as OSPF), Border Gateway Protocol (Border Gateway Protocol, referred to as BGP), multicast, Differentiated Services, traffic engineering, network address translation (Network Address Translation, referred to as NAT), firewall, multi protocol label exchange (Multi-Protocol Label Switching, Referred to as MPLS) etc..This allows for that the switching equipment such as router are more and more too fat to move and the space of performance boost is smaller and smaller.
However it is completely different with the predicament of network field, computer field realizes development with rapid changepl. never-ending changes and improvements.Carefully The development of computer field is looked back, it is seen that its key is that computer field has found a kind of simple available hardware bottom layer (x86 instruction set).Because of such a common hardware bottom layer, so in software aspects, whether application program or Operating system all achieves development at full speed.It is now many to advocate that the personage for redesigning computer network architectures thinks: Network can replicate the success of computer field to solve all problems that present network is encountered.In the guidance of this thought Under, the network in future will be such that the data path of bottom (interchanger, router) is " mute, simple, minimum ", and define common application programming interfaces (the Application Program about flow table of an opening Interface, referred to as API), while whole network is controlled using controller.Following researcher can control The cofree API for calling bottom of device is programmed, to realize the innovation of network.
Based on above-mentioned theory, occur software defined network (Software Defined Network, referred to as It SDN), is initially a kind of new network of Emulex network innovation framework proposed by clean slate study group, Stanford Univ USA.Fig. 1 It is open flows configuration protocol and open flow agreement application schematic diagram in the related technology, as shown in Figure 1, the new network framework applications Open stream configuration (OF-Config) agreement and open flows (OpenFlow) agreement, core technology OpenFlow agreement pass through by Network equipment control plane (include OpenFlow Controller(open flow controller)) it with data surface (include OpenFlow Capable Switch(open flows capabilities exchange machine)) it separates, it is core to realize the flexible control of network flow The innovation of network and application provides good platform.
OpenFlow agreement be used to describe between controller and interchanger interaction information used standard and controller and The interface standard of interchanger.The core of agreement is the set for OpenFlow protocol information structure.Fig. 2 is according to correlation Message flow passes through the schematic diagram of open stream process pipeline in technology, and Fig. 3 is according to the message in the related technology based on each flow table Processing schematic, as shown in Figure 2,3, flow table (OpenFlow) or multiple flow tables cascade Jing Guo layout are used to configure into pipeline Interchanger forward-path, flow table entry is by matching field (Match Fields), counter (Counters) and instruction set (Instructions) etc. following several fields are constituted:
Match Fields Priority Counters Instructions Timeouts Cookie
Wherein, Match Fields is the input keyword of message matching, for matching a flow entry;Counter is to use In the various statistical informations of management;Instruction set (Instructions) refers to the operational order to message, including abandons, forwards Message to designated port, setting header field value, increase encapsulated tags etc..Behavior aggregate (Action Set) and each message Associated, it transmits between multiple flow tables of assembly line and is modified by the instruction of each flow table, until pipeline processes terminate, Form final behavior aggregate.
In openflow1.3 version, the assembly line (pipeline) of each OpenFlow interchanger includes multiple flow tables, Each flow table includes multiple flow entrys.The pipeline processes of OpenFlow define how data packet interacts with those flow tables (referring to fig. 2).OpenFlow interchanger is needed at least one of flow table, and can have more selectable flow tables. The OpenFlow interchanger of only one single flow table is effective, and pipeline processes process can be in this case It greatly simplifies.
There are run in a manner of a kind of assembly line between one to multiple flow tables and they in OpenFlow permission system. But this pipeline processes process, the operation in each flow table can give final execution set of actions (execute Action set) problem is brought, Fig. 4 is according to the principle signal to flow table using pile line operation processing in the related technology Figure, as shown in figure 4, using the principle of pile line operation processing to flow table includes two parts :(a) Packet are matched Multiple matching lists in against multiple tables inthe pipeline(message and assembly line match), (b) Processing of the Per-table packet processing(message in each flow table), wherein highest is searched in the 1. expression in (b) The stream of priority matches entry, and 2. indicate application instruction: i. changes message & and updates matching domain (applying action command);Ii. it updates Behavior aggregate (removing movement instruction and/or write activity instruction);Iii. 3. more new metadata is indicated matched data and behavior aggregate It is sent to next flow table.For example, after flowing into for data packet, tri- kinds of business flow lists of A, B, C are matched, wherein according to it Business feature, A, B, C have the type of identical movement action, for example, ABC be all to routing next be configured or clearly It removes.Assuming that B business is ACL flow table, it is desirable that if matching B flow table success must remove the dynamic of A, C according to ABC business feature Make.But if successively got off according to the flowing water lines matching of A, B, C, A flow table processing the result is that being provided with to action set Next, the processing of B flow table the result is that remove the movement of A, i.e. next of removing A setting.C flow table is finally arrived to be handled When, and it is provided with next of routing in action set, the processing result of C flow table can not be removed by B flow table.
Therefore, the mode based on pipeline processes handles flow table in the related art, and existing needs with business processing Seek conflicting problem.
Summary of the invention
The present invention provides a kind of data message processing method, device and open flow switchs, at least in the relevant technologies In the mode based on pipeline processes flow table is handled, exist and the conflicting problem of business processing demand.
According to an aspect of the invention, there is provided a kind of data message processing method, comprising: the institute for determining and receiving State the matched one or more flow entrys of data message;According to the assembly line that one or more of flow entrys are formed, according to institute The instruction priority of one or more flow entrys is stated, determines the behavior aggregate for executing operation to the data message;According to what is determined Behavior aggregate executes operation processing to the data message.
Preferably, in the assembly line formed according to one or more of flow entrys, according to one or more of flow tables The instruction priority of item, determination execute the data message before the behavior aggregate of operation, further includes: according to one or more The type of business corresponding to a flow entry determines the instruction priority of one or more of flow entrys.
Preferably, the assembly line formed according to one or more of flow entrys, according to one or more of flow entrys Instruction priority, determine to the data message execute operation behavior aggregate include: according to one or more of flow entrys The assembly line of formation, successively judges whether the instruction priority of flow entry is higher than the priority of the behavior aggregate;In judging result In the case where being, the corresponding movement of the flow entry is updated into the behavior aggregate, and by the priority of the behavior aggregate It is updated to the priority of the flow entry, until the pipeline processes terminate;And/or if the determination result is NO, It maintains to act accordingly in the behavior aggregate and the priority of the behavior aggregate is constant.
Preferably, successively judge whether the instruction priority of the flow entry is higher than the priority of the behavior aggregate and includes: It is that the movement division in the behavior aggregate acts priority according to the type of included movement in the behavior aggregate;According to described in Priority is acted, successively judges whether the instruction priority of the flow entry is higher than the priority of the behavior aggregate.
Preferably, described instruction priority and/or the priority of the behavior aggregate are characterized according to the size of numerical value.
According to another aspect of the present invention, a kind of data message processing unit is provided, comprising: the first determining module is used In the matched one or more flow entrys of the data message for determining with receiving;Second determining module, for according to described The assembly line that one or more flow entrys are formed is determined according to the instruction priority of one or more of flow entrys to described Data message executes the behavior aggregate of operation;Processing module, for executing operation to the data message according to the behavior aggregate determined Processing.
Preferably, the device further include: third determining module, for according to corresponding to one or more of flow entrys The type of business determines the instruction priority of one or more of flow entrys.
Preferably, second determining module includes: judging unit, for being formed according to one or more of flow entrys Assembly line, successively judge whether the instruction priority of flow entry is higher than the priority of the behavior aggregate;Updating unit is used for The judging result of the judging unit is to update the corresponding movement of the flow entry into the behavior aggregate in the case where being, And be the priority of the flow entry by the priority update of the behavior aggregate, until the pipeline processes terminate;And/or Maintenance unit, for maintaining to act accordingly in the behavior aggregate in the case where the judging result of the judging unit is no And the priority of the behavior aggregate is constant.
Preferably, the judging unit includes: division subelement, for the class according to included movement in the behavior aggregate Type is that the movement division in the behavior aggregate acts priority;Judgment sub-unit is used for according to the movement priority, successively Judge whether the instruction priority of the flow entry is higher than the priority of the behavior aggregate.
Also one side according to the present invention, provides a kind of open flows OpenFlow interchanger, including any of the above-described institute The device stated.
Through the invention, using the matched one or more flow entrys of the data message for determining with receiving;According to The assembly line that one or more of flow entrys are formed, according to the instruction priority of one or more of flow entrys, determining pair The data message executes the behavior aggregate of operation;Operation processing is executed to the data message according to the behavior aggregate determined, is solved The mode based on pipeline processes handles flow table in the related art, exists and business processing demand is conflicting asks Topic, and then reached for different business, forwarding device can be handled accurately, effectively prevent the effect of the conflict between business Fruit.
Detailed description of the invention
The drawings described herein are used to provide a further understanding of the present invention, constitutes part of this application, this hair Bright illustrative embodiments and their description are used to explain the present invention, and are not constituted improper limitations of the present invention.In the accompanying drawings:
Fig. 1 is open flows configuration protocol and open flow agreement application schematic diagram in the related technology;
Fig. 2 is the schematic diagram for passing through open stream process pipeline according to message flow in the related technology;
Fig. 3 is according in the related technology based on the Message processing schematic diagram of each flow table;
Fig. 4 is according to the schematic illustration for using pile line operation processing to flow table in the related technology;
Fig. 5 is the flow chart of data message processing method according to an embodiment of the present invention;
Fig. 6 is the structural block diagram of data message processing unit according to an embodiment of the present invention;
Fig. 7 is the preferred structure block diagram of data message processing unit according to an embodiment of the present invention;
Fig. 8 is the preferred structure frame of the second determining module 64 in data message processing unit according to an embodiment of the present invention Figure;
Fig. 9 is judging unit 82 in the second determining module 64 in data message processing unit according to an embodiment of the present invention Preferred structure block diagram;
Figure 10 is the structural block diagram of open flows OpenFlow interchanger according to an embodiment of the present invention;
Figure 11 is the flow table matching treatment flow chart according to the preferred embodiment of the present invention based on flow table instruction priority;
Figure 12 is data message pipeline processes schematic diagram according to an embodiment of the present invention.
Specific embodiment
Hereinafter, the present invention will be described in detail with reference to the accompanying drawings and in combination with Examples.It should be noted that not conflicting In the case of, the features in the embodiments and the embodiments of the present application can be combined with each other.
A kind of data message processing method is provided in the present embodiment, and Fig. 5 is datagram according to an embodiment of the present invention The flow chart of literary processing method, as shown in figure 5, the process includes the following steps:
Step S502, the matched one or more flow entrys of the data message for determining and receiving;
Step S504, according to the assembly line that one or more flow entrys are formed, according to the instruction of one or more flow entrys Priority determines the behavior aggregate that operation is executed to data message;
Step S506 executes operation processing to data message according to the behavior aggregate determined.
Through the above steps, behavior aggregate is determined according to the instruction priority of flow entry, execute number according to behavior aggregate later According to Message processing, relative to the mode only handled in the related technology only in accordance with the sequencing of data message data message For, by introducing the instruction priority of flow entry, the processing to data message is accurately executed, related skill is efficiently solved The problem of can not achieve the expected processing to business datum message in art, efficiently avoids the place between business datum message Manage collision problem.
In the assembly line formed according to one or more flow entrys, according to the instruction priority of one or more flow entrys, Before determining the behavior aggregate for executing operation to data message, the priority of flow entry can be determined according to a variety of processing modes, For example, can determine that the instruction of one or more flow entrys is preferential according to the type of business corresponding to one or more flow entrys Grade;And when determining the priority of flow entry not based on type of service, it can be by the stream of the corresponding data message of all business The instruction priority of list item is all the same, for example, lowest priority can be in.
According to the assembly line that one or more flow entrys are formed, according to the instruction priority of one or more flow entrys, really When the fixed behavior aggregate for executing operation to data message, various ways can also be used, for example, can first flow according to one or more The assembly line that list item is formed, successively judges whether the instruction priority of flow entry is higher than the priority of behavior aggregate;In judging result In the case where being, the corresponding movement of flow entry is updated into behavior aggregate, and is flow entry by the priority update of behavior aggregate Priority, until pipeline processes terminate;And/or if the determination result is NO, it maintains to move accordingly in behavior aggregate Make and the priority of behavior aggregate is constant.And successively judge whether the instruction priority of flow entry is higher than the priority of behavior aggregate The fineness of priority can be acted according to division to handle respectively, for example, can be according to movement included in behavior aggregate Type is that the movement division in behavior aggregate acts priority;According to movement priority, the instruction priority of flow entry is successively judged Whether the priority of behavior aggregate is higher than.Processing in this way can make judgement more accurate, to the place of business datum message It manages also more accurate.
Preferably, instruct the priority of priority and/or behavior aggregate that can characterize according to the size of numerical value.At this to excellent The characterization of first grade does not limit specifically, and other more simple characterizations are equally applicable, for example, simple capital and small letter English words It is female.Only being characterized using simple numerical value can be more intuitive.
Additionally provide a kind of data message processing unit in the present embodiment, the device is for realizing above-described embodiment and excellent Embodiment is selected, the descriptions that have already been made will not be repeated.As used below, predetermined function may be implemented in term " module " Software and/or hardware combination.Although device described in following embodiment is preferably realized with software, hardware, Or the realization of the combination of software and hardware is also that may and be contemplated.
Fig. 6 is the structural block diagram of data message processing unit according to an embodiment of the present invention, as shown in fig. 6, the device packet The first determining module 62, the second determining module 64 and processing module 66 are included, the device is illustrated below.
First determining module 62, the matched one or more flow entrys of data message for determining with receiving;Second Determining module 64 is connected to above-mentioned first determining module 62, the assembly line for being formed according to one or more flow entrys, according to The instruction priority of one or more flow entrys determines the behavior aggregate that operation is executed to data message;Processing module 66, is connected to Above-mentioned second determining module 64, for executing operation processing to data message according to the behavior aggregate determined.
Fig. 7 is the preferred structure block diagram of data message processing unit according to an embodiment of the present invention, as shown in fig. 7, the dress It sets in addition to including all structures shown in fig. 6, further includes third determining module 72, the third determining module 72 is said below It is bright.
Third determining module 72 is connected to above-mentioned first determining module 62 and the second determining module 64, for according to one Or the type of business corresponding to multiple flow entrys determines the instruction priority of one or more flow entrys.
Fig. 8 is the preferred structure frame of the second determining module 64 in data message processing unit according to an embodiment of the present invention Figure, as shown in figure 8, second determining module 64 includes: judging unit 82, updating unit 84, and/or, maintenance unit 86, below Second determining module 64 is illustrated.
Judging unit 82, the assembly line for being formed according to one or more flow entrys, successively judges the instruction of flow entry Whether priority is higher than the priority of behavior aggregate;Updating unit 84 is connected to above-mentioned judging unit 82, in judging unit Judging result is in the case where being, by flow entry corresponding movement update into behavior aggregate, and by the priority update of behavior aggregate For the priority of flow entry, until pipeline processes terminate;Maintenance unit 88 is connected to above-mentioned judging unit 82, for sentencing In the case that the judging result of disconnected unit is no, maintains to act accordingly in behavior aggregate and the priority of behavior aggregate is constant.
Fig. 9 is judging unit 82 in the second determining module 64 in data message processing unit according to an embodiment of the present invention Preferred structure block diagram below sentences this as shown in figure 9, the judging unit 82 includes: to divide subelement 92 and judgment sub-unit 94 Disconnected unit 82 is illustrated.
Subelement 92 is divided, is that the movement division in behavior aggregate is dynamic for the type according to included movement in behavior aggregate Make priority;Judgment sub-unit 94 is connected to above-mentioned division subelement 92, for successively judging flow table according to movement priority Whether the instruction priority of item is higher than the priority of behavior aggregate.
Figure 10 is the structural block diagram of open flows OpenFlow interchanger according to an embodiment of the present invention, as shown in Figure 10, should OpenFlow interchanger 100 includes the data message processing unit 102 of any of the above-described.
For in the related technology, set of actions after pipeline processes, be unable to satisfy imagine in advance to data packet Processing introduce the priority of instruction (instructions) in the present embodiment, such as in the related technology signified tri- kinds of ABC Business, according to the characteristic of tri- kinds of business of ABC, the highest priority of B, it should while removing the movement of A and C.I.e. in the present embodiment In, the method for a kind of parameter matching and setting is provided, a kind of priority of flow table instruction is defined, for preferential with behavior aggregate Grade compares, to decide whether the movement write activity set of the flow table;The instruction priority of the flow table can be by operator Relevant configuration is carried out to business, and forwarding device is issued to by flow table form.For example, instruction priority can be according to business The difference of type, is configured by operator, is determined by operator.If the priority of operator's not specified services type, Can also be by the way of system default priority, i.e., all service priority are all lowermost level and identical.
When instruction priority and the priority of behavior aggregate compare processing, following preferably processing mode, example can be used Such as, when data packet enters forwarding device, is handled according to some flow table, by the flow entry progress in data packet and flow table Match, so that flow entry be selected to carry out pipeline processes.In the treatment process of each flow table of assembly line, flow table is judged The size of priority in the priority and behavior aggregate (action set) of instruction, if the priority of instruction is excellent higher than in behavior aggregate First grade is concentrated the movement write activity of the flow table.
Specifically, due to behavior aggregate action set according to operation target difference (for example, operation next, operate out Interface, operation life span (Time To Live, referred to as TTL) etc.), behavior aggregate can distinguish different types of movement.For Different types of movement can have different priority.Priority in above-mentioned behavior aggregate can be refined as some in behavior aggregate The priority of the movement of type.
Preferably, if the priority of flow table instruction is higher than priority in behavior aggregate, i.e., by the priority modification of behavior aggregate For the priority of current flow table instruction;If the priority of flow table instruction is lower than the priority of behavior aggregate, matched flow table is moved Work will be not written into behavior aggregate.
In addition, when being handled into next flow table, by the priority and behavior aggregate of the instruction of more current flow table The size of priority, if the priority of flow table instruction is higher than the priority of behavior aggregate, i.e., by the movement write activity of the flow table It concentrates.It also, if the priority of flow table instruction is higher than the priority of behavior aggregate, i.e., is current by the priority modification of behavior aggregate The priority of flow table instruction;If the priority of flow table instruction is lower than the priority in behavior aggregate, the movement for matching flow table will It is not written into behavior aggregate.
Until pipeline processes stop, and data packet is handled by associated behavior aggregate and is forwarded or abandons etc. Reason.
By introducing the priority of flow table instruction, it is directed to different business, forwarding device can carry out the processing of message Accurately operation avoids the influence of mutual exclusion and conflict to Message processing between business in the related technology.
The preferred embodiment for the present invention is illustrated with reference to the accompanying drawing.
Figure 11 is the flow table matching treatment flow chart according to the preferred embodiment of the present invention based on flow table instruction priority, Figure 12 is data message pipeline processes schematic diagram according to an embodiment of the present invention, and as shown in Figure 11,12, which includes as follows Step:
It should be noted that after receiving message on forwarding device, into pipeline processes process, matched flow table entry according to Secondary is policybased routing Pbr flow entry A, interface accesses control list flow entry B, common routing flow entry C.
Wherein, the numerical priority value for defining flow table instruction is higher, and priority is higher.
Three flow entry features are as follows:
1) priority of policybased routing Pbr flow entry A is 2, and movement (action) is forwarded after encapsulation;
2) priority of interface accesses control list flow entry B is 3, and movement is packet discard;
3) commonly the priority of routing flow entry C is 1, and movement is forwarded after encapsulation.
Step S1102, data packet, which enters forwarding device and is matched to corresponding flow table, carries out pile line operation, i.e. forwarding device After receiving message, when being handled according to some flow table, data packet is matched with the flow entry in flow table, to select to flow List item carries out pipeline processes;
Step S1104 matches first flow table, and reads the priority of flow table instruction and the priority of behavior aggregate, i.e., When matching and entering Pbr flow entry A processing, the priority of the instruction of Pbr flow entry A is obtained, obtaining priority value is 2;It obtains The priority of behavior aggregate, behavior aggregate is not yet assigned at this time, and therefore, priority has been initialized to 0;
Whether step S1106, the priority for comparing flow table instruction are higher than the priority of behavior aggregate, are yes in judging result In the case of, S1108 is entered step, S1112 is otherwise entered step, that is, compares the priority and behavior aggregate of the instruction of Pbr flow entry A Priority size, discovery Pbr flow entry A flow table instruction priority be higher than behavior aggregate priority;
Pbr flow entry A movement write activity collection the movement forwarded after encapsulation is written step S1108 dynamic It concentrates;
The priority modification of behavior aggregate is the priority of current flow table instruction, i.e., by the preferential of behavior aggregate by step S1110 Grade is assigned a value of 2, the i.e. value of the priority of the instruction of Pbr flow entry A;
Step S1112 matches second flow table, and the priority of read action collection, that is, executes and above-mentioned matching first The similar procedure of flow table.Specifically, matching is gone forward side by side when incoming interface accesses control list flow entry B processing, interface access control is obtained The priority of the flow table instruction of list flow entry B processed, obtaining priority value is 3;
The priority of behavior aggregate is obtained, acting priority at this time is 2;
Compare the size of the priority of the flow table instruction of interface accesses control list flow entry B and the priority of behavior aggregate, It was found that the priority that the flow table of interface accesses control list flow entry B instructs is higher than the priority of behavior aggregate;
By the movement of interface accesses control list flow entry B, that is, the movement write-in for removing forwarding operation packet discard is dynamic Work collects, that is, removes the forwarding behavior of above-mentioned Pbr flow entry;It is simultaneously 3, i.e. accesses control list stream by behavior aggregate priority assignment The value of the priority of the flow table instruction of list item B;
When matching and entering common routing flow entry C processing, the preferential of the flow table instruction of common routing flow entry C is obtained Grade, obtaining priority value is 1;
The priority of behavior aggregate is obtained, the priority of behavior aggregate is 3 at this time;
The size of the priority of the priority and behavior aggregate of the flow table instruction of relatively conventional routing flow entry C, discovery are common The priority for routing the flow table instruction of flow entry C is lower than the priority of behavior aggregate;
Behavior aggregate is not operated, into next link;
After three flow table operations, behavior aggregate is obtained, it can be deduced that final behavior aggregate is the operation of packet discard.
The operation of forwarding device execution packet discard.The above process is the priority typically instructed by flow table The carried out flow table matching of priority and setting with behavior aggregate are handled.
Obviously, those skilled in the art should be understood that each module of the above invention or each step can be with general Computing device realize that they can be concentrated on a single computing device, or be distributed in multiple computing devices and formed Network on, optionally, they can be realized with the program code that computing device can perform, it is thus possible to which they are stored It is performed by computing device in the storage device, and in some cases, it can be to be different from shown in sequence execution herein Out or description the step of, perhaps they are fabricated to each integrated circuit modules or by them multiple modules or Step is fabricated to single integrated circuit module to realize.In this way, the present invention is not limited to any specific hardware and softwares to combine.
The foregoing is only a preferred embodiment of the present invention, is not intended to restrict the invention, for the skill of this field For art personnel, the invention may be variously modified and varied.All within the spirits and principles of the present invention, made any to repair Change, equivalent replacement, improvement etc., should all be included in the protection scope of the present invention.

Claims (8)

1. a kind of data message processing method characterized by comprising
The matched one or more flow entrys of the data message for determining and receiving;
According to the assembly line that one or more of flow entrys are formed, the instruction according to one or more of flow entrys is preferential Grade determines the behavior aggregate that operation is executed to the data message;
Operation processing is executed to the data message according to the behavior aggregate determined;
Wherein, the assembly line formed according to one or more of flow entrys, according to the instruction of one or more of flow entrys Priority determines that executing the behavior aggregate of operation to the data message includes: to be formed according to one or more of flow entrys Assembly line, successively judges whether the instruction priority of flow entry is higher than the priority of the behavior aggregate;It is yes in judging result In the case of, it is into the behavior aggregate, and by the priority update of the behavior aggregate by the corresponding movement update of the flow entry The priority of the flow entry, until the pipeline processes terminate;And/or if the determination result is NO, institute is maintained It is constant to state in behavior aggregate the priority of movement and the behavior aggregate accordingly.
2. the method according to claim 1, wherein in the flowing water formed according to one or more of flow entrys Line, according to the instruction priority of one or more of flow entrys, determine to the data message execute operation behavior aggregate it Before, further includes:
Type according to business corresponding to one or more of flow entrys determines the instruction of one or more of flow entrys Priority.
3. according to the method described in claim 2, it is characterized in that, successively judging whether the instruction priority of the flow entry is high Include: in the priority of the behavior aggregate
It is that the movement division in the behavior aggregate acts priority according to the type of included movement in the behavior aggregate;
According to the movement priority, successively judge whether the instruction priority of the flow entry is higher than the preferential of the behavior aggregate Grade.
4. according to the method in any one of claims 1 to 3, which is characterized in that described instruction priority and/or described dynamic Make the priority collected according to the size of numerical value to characterize.
5. a kind of data message processing unit characterized by comprising
First determining module, the matched one or more flow entrys of the data message for determining with receiving;
Second determining module, the assembly line for being formed according to one or more of flow entrys, according to one or more of The instruction priority of flow entry determines the behavior aggregate that operation is executed to the data message;
Processing module, for executing operation processing to the data message according to the behavior aggregate determined;
Wherein, second determining module includes: judging unit, the flowing water for being formed according to one or more of flow entrys Line, successively judges whether the instruction priority of flow entry is higher than the priority of the behavior aggregate;Updating unit, for sentencing described The judging result of disconnected unit is in the case where being, by the corresponding movement update of the flow entry into the behavior aggregate, and by institute The priority update for stating behavior aggregate is the priority of the flow entry, until the pipeline processes terminate;And/or remain single Member, for maintaining in the behavior aggregate movement and institute accordingly in the case where the judging result of the judging unit is no The priority for stating behavior aggregate is constant.
6. device according to claim 5, which is characterized in that further include:
Third determining module, for according to the type of business corresponding to one or more of flow entrys determine it is one or The instruction priority of multiple flow entrys.
7. device according to claim 5, which is characterized in that the judging unit includes:
Subelement is divided, is that the movement in the behavior aggregate divides for the type according to included movement in the behavior aggregate Act priority;
Judgment sub-unit, for successively judging whether the instruction priority of the flow entry is higher than according to the movement priority The priority of the behavior aggregate.
8. a kind of open flows OpenFlow interchanger, which is characterized in that including device described in any one of claim 5 to 7.
CN201410116976.5A 2014-03-26 2014-03-26 Data message processing method, device and open flow switch Active CN104954258B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410116976.5A CN104954258B (en) 2014-03-26 2014-03-26 Data message processing method, device and open flow switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410116976.5A CN104954258B (en) 2014-03-26 2014-03-26 Data message processing method, device and open flow switch

Publications (2)

Publication Number Publication Date
CN104954258A CN104954258A (en) 2015-09-30
CN104954258B true CN104954258B (en) 2019-03-01

Family

ID=54168623

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410116976.5A Active CN104954258B (en) 2014-03-26 2014-03-26 Data message processing method, device and open flow switch

Country Status (1)

Country Link
CN (1) CN104954258B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107070693B (en) * 2017-01-12 2019-10-11 烽火通信科技股份有限公司 The method and device of rapid configuration POTN business based on OpenFlow flow table
CN108494619B (en) * 2018-02-28 2021-01-01 新华三技术有限公司 Traffic statistical method and device and provider router
CN109039914B (en) * 2018-08-23 2020-11-27 迈普通信技术股份有限公司 Message processing method and device and electronic equipment
CN109450797B (en) * 2018-11-15 2021-06-08 新华三云计算技术有限公司 Message forwarding method and device and computer equipment
CN115550153A (en) * 2021-06-29 2022-12-30 中兴通讯股份有限公司 Message processing method, network processor and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843298A (en) * 2012-09-12 2012-12-26 盛科网络(苏州)有限公司 Method and system for achieving priority of Openflow switchboard chip flow tables
CN102868578A (en) * 2012-10-11 2013-01-09 盛科网络(苏州)有限公司 Test method and test system of openflow switch table body capacity
WO2013070941A1 (en) * 2011-11-10 2013-05-16 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
CN103220225A (en) * 2012-05-21 2013-07-24 华为技术有限公司 Message processing method, device and system
CN103428094A (en) * 2013-08-12 2013-12-04 杭州华三通信技术有限公司 Method and device for packet transmitting in Open Flow system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013070941A1 (en) * 2011-11-10 2013-05-16 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
CN103220225A (en) * 2012-05-21 2013-07-24 华为技术有限公司 Message processing method, device and system
CN102843298A (en) * 2012-09-12 2012-12-26 盛科网络(苏州)有限公司 Method and system for achieving priority of Openflow switchboard chip flow tables
CN102868578A (en) * 2012-10-11 2013-01-09 盛科网络(苏州)有限公司 Test method and test system of openflow switch table body capacity
CN103428094A (en) * 2013-08-12 2013-12-04 杭州华三通信技术有限公司 Method and device for packet transmitting in Open Flow system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"OpenFlow Switch Specification Version 1.3.3";Open Networking Foundation member;《Open Networking Foundation》;20131018;第5.1-5.3、5.9-5.12、6.4节

Also Published As

Publication number Publication date
CN104954258A (en) 2015-09-30

Similar Documents

Publication Publication Date Title
US11115273B2 (en) Analytics-driven dynamic network design and configuration
CN104954258B (en) Data message processing method, device and open flow switch
JP6648790B2 (en) Network system, network control method and control device
US10389642B2 (en) Cloud-based network tool optimizers for server cloud networks
EP3681110B1 (en) A region interconnect control using vrf tables across heterogeneous networks
CN106537839B (en) Service placement for online service chains with multiple instances
US9686137B2 (en) Method and system for identifying an outgoing interface using openflow protocol
US20170019302A1 (en) Analytics-driven dynamic network design and configuration
CN107078923A (en) The behavior of distributed virtual network element is changed using physical location
US20170264491A1 (en) Intent based controller for provisioning a network
CN105721303B (en) A kind of route control method, the network equipment and controller
DE102014117460A1 (en) Programmable distributed networking
US10069648B2 (en) Communication system, control apparatus, communication control method and program
US10439961B2 (en) Network fabric control
WO2014041813A1 (en) Information processing apparatus, configuration method, communication system, and program
US20190199622A1 (en) Data packet forwarding unit in a data transmission network
EP2797261B1 (en) A method and a device for optimizing a configuration system of a network element of a software-defined network
US10615999B2 (en) Virtual local area network configuration system and method, and computer program product thereof
US9130818B2 (en) Unified systems of network tool optimizers and related methods
JP6299753B2 (en) Control device, control method, communication system, and program
WO2014041811A1 (en) Control apparatus, control method, communication system, and program
EP2983333B1 (en) A system and method for providing routes to physical residential gateways
KR20150023645A (en) Switch device, vlan configuration and management method, and program
US9432291B2 (en) Method and a device for defining a look-up system for a network element of a software-defined network
CN107534567A (en) For the configuration system configured to the control plane of software defined network

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