CN106656809B - Flow table aggregation method, controller, network element and system - Google Patents

Flow table aggregation method, controller, network element and system Download PDF

Info

Publication number
CN106656809B
CN106656809B CN201510736243.6A CN201510736243A CN106656809B CN 106656809 B CN106656809 B CN 106656809B CN 201510736243 A CN201510736243 A CN 201510736243A CN 106656809 B CN106656809 B CN 106656809B
Authority
CN
China
Prior art keywords
flow table
aggregation
network element
controller
flow
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
CN201510736243.6A
Other languages
Chinese (zh)
Other versions
CN106656809A (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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN201510736243.6A priority Critical patent/CN106656809B/en
Publication of CN106656809A publication Critical patent/CN106656809A/en
Application granted granted Critical
Publication of CN106656809B publication Critical patent/CN106656809B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a flow table aggregation method, a controller, a network element and a system, and relates to the technical field of software defined networks. The method comprises the following steps: the network element sends a flow table aggregation application to the controller, wherein the flow table aggregation application carries aggregation auxiliary information; the controller responds to the flow table aggregation application, and the flow table items of the same operation of the network element are aggregated according to the aggregation auxiliary information to obtain an aggregation flow table; the controller issues the aggregation flow table to the network element, and instructs the network element to delete the flow table entry covered by the aggregation flow table. The controller can adopt a proper flow table aggregation strategy to dynamically select and aggregate the auxiliary information according to the aggregation auxiliary information sent by the network element side, and then send the aggregated auxiliary information to the network element so as to optimize the local flow table space of the network element and effectively reduce the flow table entries and the memory overhead of the network element, thereby accelerating the forwarding speed of the network element and reducing the change frequency of the flow table entries of the network element and the requirement of newly building the flow table entries.

Description

Flow table aggregation method, controller, network element and system
Technical Field
The present invention relates to the field of software defined networking technologies, and in particular, to a flow table aggregation method, a controller, a network element, and a system.
Background
An SDN (Software Defined Network) is a novel Network innovation architecture, and by decoupling a control plane and a data plane of a Network element, an SDN Network element is controlled by an external controller through centralized computing paths, so that the purpose of flexibly controlling Network flow is achieved.
Because the control plane is stripped from the network element to the external controller, the network element needs to send the first incoming message information of each unknown flow to the external controller under the default condition, and the controller makes a decision and then generates a forwarding flow table to upload the forwarding flow table to the network element, so that the network element can forward the subsequent messages. This approach also causes the flow table entries to expand with the running time, and the current default flow table generation mechanism will gradually accumulate a large number of flow table entries on the network element, and bring about the following problems:
1. the network element has limited memory space for forwarding the flow table, and the continuous increase of the entries of the flow table easily causes the overflow of the memory space, so that the new flow is difficult to further process.
2. The matching efficiency is reduced and the forwarding speed of the network element is reduced due to the large number of the trickle table entries on the network element.
3. With the change of the user flow, the controller will perform frequent adding and deleting operations on a large number of flow table entries in the network element, and increase the physical overhead of the controller and the network element.
The current flow table optimization mode is mainly to statically preset flow table entries containing wildcards, the boundaries of domain values contained in the entries are fixed, the aggregation mode is not flexible enough, the current actual flow conditions of all network elements cannot be shown, and the aggregation effect is poor.
Disclosure of Invention
The embodiment of the invention aims to solve the technical problem that: the dynamic flow table aggregation scheme is provided, the number of flow tables can be effectively reduced, the processing efficiency of network elements on the flow tables is improved, and the expenditure is reduced.
According to an aspect of the embodiments of the present invention, there is provided a flow table aggregation method, including: the method comprises the steps that a controller receives a flow table aggregation application sent by a network element, wherein the flow table aggregation application carries aggregation auxiliary information; the controller responds to the flow table aggregation application, and the flow table items of the same operation of the network element are aggregated according to the aggregation auxiliary information to obtain an aggregation flow table; and the controller issues the aggregation flow table to the network element and instructs the network element to delete the flow table entry covered by the aggregation flow table.
According to a second aspect of the embodiments of the present invention, there is provided a flow table aggregation method, including: the network element sends a flow table aggregation application to the controller, wherein the flow table aggregation application carries aggregation auxiliary information so that the controller can aggregate flow table items operated by the network element in the same way according to the aggregation auxiliary information; and the network element receives the aggregation flow table issued by the controller and deletes the flow table entry covered by the aggregation flow table.
According to a third aspect of the embodiments of the present invention, there is provided a controller for flow table aggregation, including: the aggregation application receiving unit is used for receiving a flow table aggregation application sent by the network element, wherein the flow table aggregation application carries aggregation auxiliary information; the flow table aggregation unit is used for responding to the flow table aggregation application and aggregating the flow table entries of the same operation of the network element according to the aggregation auxiliary information to obtain an aggregation flow table; and the aggregation flow table issuing unit is used for issuing the aggregation flow table to the network element and indicating the network element to delete the flow table entry covered by the aggregation flow table.
According to a fourth aspect of the embodiments of the present invention, there is provided a network element, including: the aggregation application sending unit is used for sending a flow table aggregation application to the controller, wherein the flow table aggregation application carries aggregation auxiliary information so that the controller can aggregate flow table items of the same operation of the network element according to the aggregation auxiliary information; and the aggregation flow table receiving unit is used for receiving the aggregation flow table issued by the controller and deleting the flow table entry covered by the aggregation flow table.
According to a fifth aspect of the embodiments of the present invention, there is provided a system for flow table aggregation, including: a controller of flow table aggregation of the foregoing embodiment and a network element of the foregoing embodiment.
The controller can adopt a proper flow table aggregation strategy to dynamically select and aggregate the auxiliary information according to the aggregation auxiliary information sent by the network element side, and then send the aggregated auxiliary information to the network element so as to optimize the local flow table space of the network element and effectively reduce the flow table entries and the memory overhead of the network element, thereby accelerating the forwarding speed of the network element and reducing the change frequency of the flow table entries of the network element and the requirement of newly building the flow table entries.
Other features of the present invention and advantages thereof will become apparent from the following detailed description of exemplary embodiments thereof, which proceeds with reference to the accompanying drawings.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 shows a flow chart diagram of a flow chart aggregation method according to an exemplary embodiment of the present disclosure.
Fig. 2 shows a schematic structural diagram of a controller of flow table aggregation according to an exemplary embodiment of the present disclosure.
Fig. 3 shows a schematic structural diagram of a network element of an exemplary embodiment of the present disclosure.
Fig. 4 shows a schematic structural diagram of a system of flow table aggregation according to an exemplary embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the invention, its application, or uses. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The scheme is provided for the situation that a large number of flow tables are accumulated on a network element due to a default flow table generation mechanism in an SDN network, so that various problems are brought to the network.
An embodiment of the flow table aggregation method of the present invention is described below with reference to fig. 1.
Fig. 1 is a flowchart of an embodiment of a flow table aggregation method according to the present invention. As shown in fig. 1, the method of this embodiment includes:
step S102, the network element sends a flow table aggregation application to the controller, and correspondingly, the controller receives the flow table aggregation application sent by the network element, where the flow table aggregation application carries aggregation auxiliary information.
According to the embodiment, a network element detects the saturation of a local flow table, and sends a flow table aggregation application to a controller when the saturation reaches an early warning threshold. The network element senses the saturation of the local flow table and then sends out the aggregation application, so that the difference of the network element forms can be shielded, the controller does not need to know information such as a manufacturer, a type, a memory space using technology and the like of the network element, and the implementation is easier.
And the aggregation auxiliary information is sent out by the network element according to the real-time state of the local flow table, so that the controller optimizes the local flow table space of the network element according to the aggregation auxiliary information. The aggregation auxiliary information may be, for example, an early warning threshold capable of reflecting saturation of a network element flow table, or flow characteristic information, such as a duration characteristic, a traffic statistic characteristic, and the like.
And step S104, the controller responds to the flow table aggregation application, and aggregates the flow table items of the same operation of the network element according to the aggregation auxiliary information to obtain an aggregation flow table.
The aggregation means may implement aggregation by, for example, mask matching coverage.
Step S106, the controller issues the aggregation flow table to the network element, and correspondingly, the network element receives the aggregation flow table issued by the controller.
Step S108, the controller instructs the network element to delete the flow entry covered by the aggregated flow table, and correspondingly, the network element deletes the flow entry covered by the aggregated flow table.
According to an exemplary embodiment, the controller instructs the network element to adjust the priority of the aggregation flow table according to the aggregation auxiliary information and then deletes the flow table entry covered by the aggregation flow table. The aggregated flow table should be given a lower priority, at least to be queued after the priority of the aggregated flow table, which may invoke different operations such as dropping or forwarding to unintended ports if the aggregated flow table is preferentially matched with a higher priority. Therefore, it is a safe behavior to delete the redundant fine flow table entries aggregated after the priority of the aggregation flow table is lowered. The flow table priority may also be adjusted according to other rules, for example, the aggregated flow table priority of non-exact aggregation is set to be lowest, and flows with long existence periods are matched preferentially to flows that change frequently, so that the priority of flows with long existence periods is adjusted higher, but not limited to the illustrated example.
In the method, the controller can adopt a proper flow table aggregation strategy to dynamically select and aggregate the auxiliary information according to the aggregation auxiliary information sent by the network element side, and then send the aggregated auxiliary information to the network element so as to optimize the local flow table space of the network element and effectively reduce the flow table entries and the memory overhead of the network element, thereby accelerating the forwarding speed of the network element and reducing the change frequency of the flow table entries of the network element and the requirement of newly building the flow table entries.
To further illustrate how the controller performs flow table aggregation operations based on aggregation assistance information, the present invention provides several exemplary embodiments as follows.
The first implementation mode comprises the following steps: the aggregation auxiliary information comprises an early warning threshold value capable of reflecting the saturation degree of the network element flow table, for example, the controller selects an accurate aggregation strategy or a non-accurate aggregation strategy according to the early warning threshold value, if the accurate aggregation strategy is selected, the flow table items of the same operation of the network element are accurately aggregated to obtain an aggregation flow table, and if the non-accurate aggregation strategy is selected, the flow table items of the same operation of the network element are non-accurately aggregated to obtain the aggregation flow table.
For example, the early warning threshold value of the saturation of the flow table is divided into a high early warning threshold value and a low early warning threshold value, when the saturation of the flow table reaches the low early warning threshold value, the network element applies for flow table aggregation, and the controller accurately aggregates flow table items operated by the network element in the same way according to the low early warning threshold value to obtain an aggregated flow table; when the saturation of the flow table reaches the high early warning threshold, the network element applies for flow table aggregation, and the controller performs non-precise aggregation on flow table entries operated by the same network element according to the high early warning threshold to obtain an aggregated flow table, so that the aggregation strength is increased, and the local flow table space of the network element is released as much as possible.
The specific differences between precision and non-precision polymerizations are as follows:
for example, the following four streams 1011101000000、1011100000000、1011110000000、1011111000000, the 6 th bit and the 7 th bit can be precisely aggregated into 10111**000000。
If it is only for any three streams (e.g., 10111)01000000、1011100000000、1011110000000) or less, and also 10111 is obtained by aggregating the 6 th bit and the 7 th bit of the stream**000000, it is not precise polymerization.
The use range of non-accurate aggregation is relatively extensive and not accurate enough, but an aggregation flow table is easier to generate, and the number of entries is more effectively reduced, so that the method and the device can be suitable for the condition of high early warning threshold. And the requirement for forming the accurate aggregation flow table is higher, so that the method can be suitable for the condition of low early warning threshold value.
The second embodiment: the aggregation auxiliary information includes, for example, flow characteristic information, such as a duration characteristic, a flow statistic characteristic, and the like, and the controller selects a corresponding flow table interval according to the flow characteristic information, and aggregates flow table entries in different flow table intervals of the network element to obtain an aggregation flow table.
For example: and the controller selects a flow table interval with a long existence period and a flow table interval with a short existence period according to the time length characteristic, and respectively aggregates the flow table items in the flow table interval with the long existence period and the flow table interval with the short existence period of the network element to obtain an aggregated flow table. In general, different aggregation methods may be used for flow table intervals with different existence periods according to service requirements, and of course, the same aggregation method may also be used.
The following six streams are taken as examples:
stream 1: 1011101000000 the existence time is less than 5 min
Stream 2: 1011100000000 the existence time is less than 5 min
Stream 3: 1011110000000 the existence time is less than 5 min
Stream 4: 1011111000000 the existence time is less than 5 min
Stream 5: 1011110000111 existing time more than 15 minutes
Stream 6: 1011111000011 existing time more than 15 minutes
Wherein the result of the aggregation of the 6 th bit and the 7 th bit by the streams 1 to 4 is 10111**0000000, stream 5-6 aggregated to 11 th bit result of 1011110000*11. The aggregation of streams 1-4 and 5-6 is not limited to the above example, and different bits may be aggregated, or different exact or non-exact aggregation may be used, and the matching fields may be different.
The flow table after the flow with the longer period is aggregated can not change in a short time, so that the method has certain stability, and further avoids the change and modification of the aggregated flow table caused by the change of the aggregated flow table.
For another example, the controller selects a large-flow table interval and a small-flow table interval according to the flow statistical characteristics, and aggregates flow table entries in the large-flow table interval and the small-flow table interval of the network element respectively to obtain an aggregated flow table. In general, different aggregation methods may be used for flow table intervals with different flow sizes according to service requirements, and of course, the same aggregation method may also be used.
The following six streams are taken as examples:
stream 1: 1011101000000 flow rate in 4Mbps-10Mbps region
Stream 2: 1011100000000 flow rate in 4Mbps-10Mbps region
Stream 3: 1011110000000 flow rate in 4Mbps-10Mbps region
Stream 4: 1011111000000 flow rate in 4Mbps-10Mbps region
Stream 5: 1011111000000 flow rate in the interval of 20Mbps-40Mbps
Stream 6: 1011111000011 flow rate in the interval of 20Mbps-40Mbps
The result of the precise polymerization of the 6 th bit and the 7 th bit by the streams 1 to 4 is 10111**000000, streams 5-6 adopted non-exact aggregation of the 10 th bit and the 11 th bit, resulting in 1011111000**0。
The controller reads and collects the count or speed of a specific flow through an OpenFlow protocol, and flow tables falling in different flow rate intervals can be divided according to a preset threshold value to be aggregated respectively. The aggregation mode is not limited to the above example, different bits may be aggregated, different precise or non-precise aggregation modes may be adopted, and the matching fields may be different.
The third embodiment is as follows: and the controller adopts a discontinuous bit matching aggregation mode to aggregate the flow table entries operated by the same network element to obtain an aggregation flow table.
The following eight streams are used as an example to explain the non-sequential bit-matching aggregation:
stream 1: 1011011000000
Stream 2: 1011111000001
Stream 3: 1010111000000
Stream 4: 1010011000001
Stream 5: 1011011000000
Stream 6: 1011111000001
Stream 7: 1010111000000
Stream 8: 1010011000001
Non-continuous bit matching polymerization is carried out according to the 3 bits of 4bit, 5bit and 13bit, and the result of the accurate polymerization of the above 8 streams is 101**1100000*
If only a part of the 8 (3-time square bar of 2) streams exists, the non-precise aggregation result is 101 according to the 3 bits of the 4 th bit, the 5 th bit and the 13 th bit**1100000*. The error of non-precise polymerization can be further controlledRanges, such as aggregation based on 3 bits of 4, 5, and 13 bits, may require that the stream entries matching the 3 bits satisfy a certain number (e.g., half, i.e., 3/2 of 2-4) to allow non-exact matching.
The existing operation must be performed for a series of fixed intervals of bits, for example, for a destination IP address of 32 bits or a source IP address of 32 bits, respectively. The invention adopts a non-continuous bit matching aggregation mode to simultaneously aggregate the last 5-32 bits of the source destination address and 16-18 bits of the destination address. The number of flow tables can be further reduced by adopting a non-continuous bit matching aggregation mode.
The three embodiments described above may be combined arbitrarily to implement the aggregation operation of the flow tables. In addition, the controller will perform the aggregation operation on the flow entries of the same operation of the network element. For example, if the aggregated flow table itself adopts different operation modes, such as forwarding if the first bit of the flow 1, 2, 3 in the flow 1, 2, 3, 4 matching the source VLAN (Virtual Local Area Network) address is 1, and discarding if the first bit of the flow 4 matching the source VLAN address is 0, the operation would generate a conflict if the flow 1, 2, 3, 4 is aggregated.
According to another aspect of the embodiment of the present invention, a controller for flow table aggregation is provided, which is described below with reference to fig. 2.
Fig. 2 is a block diagram of an embodiment of a controller for flow table aggregation according to the present invention. As shown in fig. 2, the controller 200 includes:
the aggregation application receiving unit 202 is configured to receive a flow table aggregation application sent by a network element, where the flow table aggregation application carries aggregation auxiliary information.
And the flow table aggregation unit 204 is configured to aggregate, in response to the flow table aggregation application, the flow table entries in the same operation of the network element according to the aggregation auxiliary information to obtain an aggregation flow table.
And the aggregation flow table issuing unit 206 is configured to issue the aggregation flow table to the network element, and instruct the network element to delete the flow table entry covered by the aggregation flow table.
The aggregation flow table issuing unit 206 is configured to instruct, according to the aggregation auxiliary information, the network element to adjust the priority of the aggregation flow table and then delete the flow table entry covered by the aggregation flow table.
To further illustrate how the flow table aggregation unit 204 performs flow table aggregation according to the aggregation auxiliary information, the present invention provides the following exemplary embodiments:
the first implementation mode comprises the following steps: the aggregation auxiliary information comprises an early warning threshold capable of reflecting the saturation of the network element flow table.
The flow table aggregation unit 204 is configured to select an accurate aggregation policy or a non-accurate aggregation policy according to the early warning threshold, perform accurate aggregation on flow table entries in the same operation of the network element to obtain an aggregation flow table if the accurate aggregation policy is selected, and perform non-accurate aggregation on the flow table entries in the same operation of the network element to obtain the aggregation flow table if the non-accurate aggregation policy is selected.
The second embodiment: the aggregation assistance information includes stream characteristic information.
And the flow table aggregation unit 204 is configured to select a corresponding flow table interval according to the flow characteristic information, and aggregate flow table entries in different flow table intervals of the network element to obtain an aggregated flow table.
For example, the flow table aggregating unit 204 is configured to circle, according to the time length characteristic, a flow table interval with a long existence period and a flow table interval with a short existence period, and aggregate flow table entries in the flow table interval with the long existence period and the flow table interval with the short existence period of the network element to obtain an aggregated flow table;
or the aggregation flow table is used for selecting the large flow table interval and the small flow table interval according to the flow statistical characteristics, and respectively aggregating the flow table items in the large flow table interval and the small flow table interval of the network element to obtain the aggregation flow table.
The third embodiment is as follows: and the flow table aggregation unit 204 is configured to aggregate the flow table entries of the same operation of the network element in a non-continuous bit matching aggregation manner to obtain an aggregated flow table.
According to another aspect of the embodiment of the present invention, a network element is provided, which is described below with reference to fig. 3.
Fig. 3 is a block diagram of an embodiment of a network element of the present invention. As shown in fig. 3, the network element 300 includes:
the aggregation application sending unit 302 is configured to send a flow table aggregation application to the controller, where the flow table aggregation application carries aggregation auxiliary information, so that the controller aggregates flow table entries in the same operation of the network element according to the aggregation auxiliary information.
The present invention provides the following two exemplary embodiments for the aggregation auxiliary information carried by the aggregation application sending unit 302:
the aggregation application sending unit 302 is configured to detect saturation of a local flow table, and send a flow table aggregation application to the controller when the saturation reaches an early warning threshold, where the flow table aggregation application carries an early warning threshold capable of reflecting saturation of a network element flow table, so that the controller performs accurate aggregation or non-accurate aggregation on flow table entries of the same operation in a network element according to the early warning threshold.
Or, the aggregation application sending unit 302 is configured to send a flow table aggregation application to the controller, where the flow table aggregation application carries flow feature information, so that the controller aggregates flow table entries in different flow table intervals according to the flow feature information; the flow characteristic information comprises a duration characteristic and a flow statistic characteristic.
The aggregation flow table receiving unit 304 is configured to receive the aggregation flow table issued by the controller, and delete the flow table entry covered by the aggregation flow table.
The aggregation flow table receiving unit 304 is configured to receive the aggregation flow table issued by the controller, adjust the priority of the aggregation flow table according to the instruction of the controller, and then delete the flow table entry covered by the aggregation flow table.
According to another aspect of the embodiment of the present invention, a system for flow table aggregation is provided, which is described below with reference to fig. 4.
Fig. 4 is a block diagram of an embodiment of a flow table aggregation system of the present invention. As shown in fig. 4, the system 400 includes: the controller 200 of flow table aggregation of any of the preceding embodiments and the network element 300 of any of the preceding embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program instructing relevant hardware, where the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.

Claims (15)

1. A flow table aggregation method, characterized in that the method comprises:
the method comprises the steps that a controller receives a flow table aggregation application sent by a network element, wherein the flow table aggregation application carries aggregation auxiliary information;
the controller responds to the flow table aggregation application, and aggregates the flow table entries of the same operation of the network element according to the aggregation auxiliary information to obtain an aggregation flow table;
the controller issues an aggregation flow table to the network element and indicates the network element to delete the flow table items covered by the aggregation flow table;
the controller aggregates flow table entries of the same operation of the network element according to the aggregation auxiliary information to obtain an aggregation flow table, wherein the aggregation auxiliary information comprises an early warning threshold capable of reflecting saturation of a flow table of the network element, and the aggregation flow table comprises:
the controller selects an accurate aggregation strategy or a non-accurate aggregation strategy according to the early warning threshold, if the accurate aggregation strategy is selected, the flow entries of the same operation of the network element are accurately aggregated to obtain an aggregation flow table, and if the non-accurate aggregation strategy is selected, the flow entries of the same operation of the network element are non-accurately aggregated to obtain an aggregation flow table;
or, the aggregation auxiliary information includes flow characteristic information, and the controller aggregates the flow table entries of the same operation of the network element according to the aggregation auxiliary information to obtain an aggregation flow table includes:
and the controller selects the corresponding flow table interval according to the flow characteristic information, and aggregates the flow table items in different flow table intervals of the network element to obtain an aggregated flow table.
2. The method of claim 1,
the flow characteristic information comprises a duration characteristic and a flow statistic characteristic;
the controller selects a flow table interval with a long existence period and a flow table interval with a short existence period according to the time length characteristic, and respectively aggregates flow table items in the flow table interval with the long existence period and the flow table interval with the short existence period of the network element to obtain an aggregated flow table;
or the controller selects a large-flow table interval and a small-flow table interval according to the flow statistical characteristics, and the flow table entries in the large-flow table interval and the small-flow table interval of the network element are respectively aggregated to obtain an aggregation flow table.
3. The method according to any one of claims 1 to 2,
and the controller adopts a discontinuous bit matching aggregation mode to aggregate the flow table items operated by the same network element to obtain an aggregation flow table.
4. The method according to any one of claims 1 to 2,
the controller instructing the network element to delete the flow entry covered by the aggregated flow table comprises:
and the controller instructs the network element to adjust the priority of the aggregation flow table according to the aggregation auxiliary information and then deletes the flow table entry covered by the aggregation flow table.
5. A flow table aggregation method, characterized in that the method comprises:
a network element sends a flow table aggregation application to a controller, wherein the flow table aggregation application carries aggregation auxiliary information, so that the controller aggregates flow table items of the same operation of the network element according to the aggregation auxiliary information;
the network element receives the aggregation flow table issued by the controller, and deletes the flow table items covered by the aggregation flow table;
wherein the sending, by the network element, the flow table aggregation application to the controller includes:
the network element sends a flow table aggregation application to the controller, wherein the flow table aggregation application carries flow characteristic information, so that the controller can respectively aggregate flow table items in different flow table intervals according to the flow characteristic information;
or, the sending, by the network element, the flow table aggregation application to the controller includes:
the method comprises the steps that a network element detects the saturation of a local flow table, and when the saturation reaches an early warning threshold value, a flow table aggregation application is sent to a controller, wherein the early warning threshold value capable of reflecting the saturation of the flow table of the network element is carried in the flow table aggregation application, so that the controller can carry out accurate aggregation or non-accurate aggregation on flow table items of the same operation in the network element according to the early warning threshold value.
6. The method of claim 5,
the flow characteristic information comprises a duration characteristic and a flow statistic characteristic.
7. The method of claim 5,
the deleting, by the network element, the flow entry covered by the aggregated flow table includes:
and the network element adjusts the priority of the aggregation flow table according to the indication of the controller and then deletes the flow table entry covered by the aggregation flow table.
8. A controller of flow table aggregation, the controller comprising:
the aggregation application receiving unit is used for receiving a flow table aggregation application sent by a network element, wherein the flow table aggregation application carries aggregation auxiliary information;
the flow table aggregation unit is used for responding to the flow table aggregation application and aggregating the flow table items of the same operation of the network element according to the aggregation auxiliary information to obtain an aggregation flow table;
the aggregation flow table issuing unit is used for issuing an aggregation flow table to the network element and indicating the network element to delete the flow table items covered by the aggregation flow table;
the aggregation auxiliary information comprises an early warning threshold value capable of reflecting the saturation degree of a network element flow table; the flow table aggregation unit is used for selecting an accurate aggregation strategy or a non-accurate aggregation strategy according to the early warning threshold value, if the accurate aggregation strategy is selected, accurately aggregating flow table items of the same operation of the network element to obtain an aggregation flow table, and if the non-accurate aggregation strategy is selected, non-accurately aggregating the flow table items of the same operation of the network element to obtain the aggregation flow table;
or, the aggregation auxiliary information includes stream feature information; and the flow table aggregation unit is used for selecting the corresponding flow table interval according to the flow characteristic information and respectively aggregating the flow table items in different flow table intervals of the network element to obtain an aggregated flow table.
9. The controller of claim 8,
the flow characteristic information comprises a duration characteristic and a flow statistic characteristic;
the flow table aggregation unit is used for sorting a flow table interval with a long existence period and a flow table interval with a short existence period according to the time length characteristics, and respectively aggregating flow table items in the flow table interval with the long existence period and the flow table interval with the short existence period of the network element to obtain an aggregated flow table; or, a large flow table interval and a small flow table interval are circled according to the flow statistical characteristics, and flow table entries in the large flow table interval and the small flow table interval of the network element are respectively aggregated to obtain an aggregation flow table.
10. The controller according to any one of claims 8 to 9,
and the flow table aggregation unit is used for aggregating the flow table entries operated by the same network element in a non-continuous bit matching aggregation mode to obtain an aggregated flow table.
11. The controller according to any one of claims 8 to 9,
and the aggregation flow table issuing unit is used for indicating the network element to adjust the priority of the aggregation flow table according to the aggregation auxiliary information and then deleting the flow table entries covered by the aggregation flow table.
12. A network element, wherein the network element comprises:
the aggregation application sending unit is used for sending a flow table aggregation application to the controller, wherein the flow table aggregation application carries aggregation auxiliary information so that the controller can aggregate flow table items operated by the same network element according to the aggregation auxiliary information;
the aggregation flow table receiving unit is used for receiving the aggregation flow table issued by the controller and deleting the flow table items covered by the aggregation flow table;
the aggregation application sending unit is used for detecting the saturation of a local flow table, and sending a flow table aggregation application to the controller when the saturation reaches an early warning threshold, wherein the flow table aggregation application carries an early warning threshold capable of reflecting the saturation of a network element flow table, so that the controller can perform accurate aggregation or non-accurate aggregation on flow table items with the same operation in the network element according to the early warning threshold;
or, the aggregation application sending unit is configured to send a flow table aggregation application to the controller, where the flow table aggregation application carries flow characteristic information, so that the controller aggregates flow table entries in different flow table intervals according to the flow characteristic information.
13. The network element of claim 12,
the flow characteristic information comprises a duration characteristic and a flow statistic characteristic.
14. The network element of claim 12,
the aggregation flow table receiving unit is used for receiving the aggregation flow table issued by the controller, adjusting the priority of the aggregation flow table according to the indication of the controller, and then deleting the flow table entries covered by the aggregation flow table.
15. A system of flow table aggregation, characterized in that the system comprises a controller of flow table aggregation according to any of claims 8-11 and a network element according to any of claims 12-14.
CN201510736243.6A 2015-11-03 2015-11-03 Flow table aggregation method, controller, network element and system Active CN106656809B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510736243.6A CN106656809B (en) 2015-11-03 2015-11-03 Flow table aggregation method, controller, network element and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510736243.6A CN106656809B (en) 2015-11-03 2015-11-03 Flow table aggregation method, controller, network element and system

Publications (2)

Publication Number Publication Date
CN106656809A CN106656809A (en) 2017-05-10
CN106656809B true CN106656809B (en) 2020-03-20

Family

ID=58810425

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510736243.6A Active CN106656809B (en) 2015-11-03 2015-11-03 Flow table aggregation method, controller, network element and system

Country Status (1)

Country Link
CN (1) CN106656809B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108551439B (en) * 2018-03-23 2021-01-26 杭州迪普科技股份有限公司 Method and device for improving policy template application
CN108667728B (en) * 2018-04-28 2020-09-22 电子科技大学 Software defined network routing method based on flow table entry multiplexing mechanism
CN109756424A (en) * 2019-03-25 2019-05-14 北京智芯微电子科技有限公司 Business flow list polymerization and system
CN111629276B (en) * 2020-05-15 2022-04-19 浙江信网真科技股份有限公司 Security filtering method and device for controlling self-conversion of items
CN113328944B (en) * 2021-04-15 2022-05-27 新华三大数据技术有限公司 Flow table management method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8169910B1 (en) * 2007-10-24 2012-05-01 Juniper Networks, Inc. Network traffic analysis using a flow table
CN103560963A (en) * 2013-11-18 2014-02-05 中国科学院计算机网络信息中心 OpenFlow flow table memory space compression method
CN103731307A (en) * 2013-12-30 2014-04-16 浙江大学 Method for standardized data surface dynamic reconstruction for multiple services
CN104243240A (en) * 2014-09-23 2014-12-24 电子科技大学 SDN (self-defending network) flow measuring method based on Open Flow
WO2015043204A1 (en) * 2013-09-26 2015-04-02 华为技术有限公司 Data packet processing method and method, device and system for network traffic management
WO2015123853A1 (en) * 2014-02-21 2015-08-27 华为技术有限公司 Data flow processing method and apparatus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8169910B1 (en) * 2007-10-24 2012-05-01 Juniper Networks, Inc. Network traffic analysis using a flow table
WO2015043204A1 (en) * 2013-09-26 2015-04-02 华为技术有限公司 Data packet processing method and method, device and system for network traffic management
CN103560963A (en) * 2013-11-18 2014-02-05 中国科学院计算机网络信息中心 OpenFlow flow table memory space compression method
CN103731307A (en) * 2013-12-30 2014-04-16 浙江大学 Method for standardized data surface dynamic reconstruction for multiple services
WO2015123853A1 (en) * 2014-02-21 2015-08-27 华为技术有限公司 Data flow processing method and apparatus
CN104243240A (en) * 2014-09-23 2014-12-24 电子科技大学 SDN (self-defending network) flow measuring method based on Open Flow

Also Published As

Publication number Publication date
CN106656809A (en) 2017-05-10

Similar Documents

Publication Publication Date Title
CN106656809B (en) Flow table aggregation method, controller, network element and system
US11190449B2 (en) Packet control method and network apparatus
US10931589B2 (en) Methods and apparatus for flow-controllable multi-staged queues
JP5159889B2 (en) Method, system, and computer program product for adaptive congestion control over virtual lanes of data center ethernet architecture
US8121038B2 (en) Backward congestion notification
CN108418767B (en) Data transmission method, device and computer storage medium
US8989010B2 (en) Delayed based traffic rate control in networks with central controllers
US8917724B2 (en) Method and arrangement for performing link aggregation
US20140269288A1 (en) Software defined network-based load balancing for physical and virtual networks
WO2015106729A1 (en) A load balancing method, device, system and computer storage medium
US20120170462A1 (en) Traffic flow control based on vlan and priority
US9577957B2 (en) Facilitating congestion control in a network switch fabric based on group traffic rates
US9215176B2 (en) Method of determining packet path in VLAN, and VLAN system using energy saving path
JP7127743B2 (en) Communication device, communication method and program
WO2022242243A1 (en) Communication method, device and system
CN108337181B (en) Method and device for managing congestion of switching network
CN114499735B (en) Service transmission method, system and computer readable storage medium
JP2011182294A (en) Management apparatus, program, and traffic control method
CN106559351B (en) Message processing method, SDN controller and network element
CN110430143A (en) The load-balancing method and device of the network equipment
WO2023207461A1 (en) Congestion flow identification method and apparatus, device, and computer readable storage medium
CN113259184B (en) CDN self-adaptive bandwidth burst processing method
CN115150324B (en) Method and system for realizing variable rerouting threshold based on programmable data plane
WO2017197977A1 (en) Method and device for managing group table entry
CN117155867A (en) Congestion control method, node and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant