CN113098778A - Flow table compression method based on spanning tree folding routing in software defined network - Google Patents

Flow table compression method based on spanning tree folding routing in software defined network Download PDF

Info

Publication number
CN113098778A
CN113098778A CN202110364230.6A CN202110364230A CN113098778A CN 113098778 A CN113098778 A CN 113098778A CN 202110364230 A CN202110364230 A CN 202110364230A CN 113098778 A CN113098778 A CN 113098778A
Authority
CN
China
Prior art keywords
flow
spanning tree
flow table
node
routing
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.)
Pending
Application number
CN202110364230.6A
Other languages
Chinese (zh)
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.)
Henan University of Technology
Original Assignee
Henan University of Technology
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 Henan University of Technology filed Critical Henan University of Technology
Priority to CN202110364230.6A priority Critical patent/CN113098778A/en
Publication of CN113098778A publication Critical patent/CN113098778A/en
Pending legal-status Critical Current

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/48Routing tree calculation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]

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 compression method based on spanning tree folding routing in a software defined network, which comprises the following steps: firstly, according to a given network topology, collecting data packet requests of each node in a certain time period to obtain a flow matrix, and obtaining a time delay matrix according to link time delay between the nodes. And secondly, with the purposes of minimizing the path cost and the time delay cost and maximizing the link coincidence rate, the optimal goal is achieved by constraining the maximum capacity of each link section, the maximum time delay of each path, exhausting all feasible paths and other constraint conditions. The invention has the following advantages: the folded route is explored through integer Linear programming ILP (integer Linear program), so that all solution spaces can be flexibly solved, effective compromise is made between transmission delay and hardware cost of a chip only stored in a flow table, and optimal configuration of flow table compression is realized while the transmission efficiency of a data packet is guaranteed.

Description

Flow table compression method based on spanning tree folding routing in software defined network
Technical Field
The invention relates to a flow table compression method based on spanning tree folding routing in a software defined network.
Background
With the rapid development of big data services, the data exchange amount in the network increases in a super-linear manner, in a new software defined network, when a large amount of new data flows reach a data layer exchanger, if no matchable forwarding rule exists, a request is sent to a controller, and at this time, the controller needs to obtain the forwarding rule according to the whole network information and send the forwarding rule to a Flow Table (FT: Flow Table) of the exchanger to provide the matchable forwarding rule for the new data flows. The matching rule field in the flow table usually contains the source destination address, the source destination port number, some common protocols, and so on. And the controller sets the matching rules according to the fields, so the more the matching fields are, the more flexible the control layer is. However, such fine-grained rule design increases the number of rules that the data plane device needs to store. In order to implement the line speed matching between the data stream and the forwarding rule and ensure high-performance data forwarding, the current commercial switch usually employs special hardware, such as a Ternary Content-Addressable Memory (TCAM), to implement reading and storing of the stream table, which has the characteristics of high cost, large power consumption, large chip occupation area, and the like, and only 1600 forwarding rules are allowed to be stored at most at the same time, which easily causes overflow of the stream table. Therefore, the expansion of forwarding rules and the lack of device flow table space are performance problems in the current software-defined optical interconnection data center network.
In recent years, domestic and foreign scholars aggregate partial rules without changing their semantics by analyzing some redundant rules existing in equipment processing rules, so that the original semantics can be realized by only a small number of forwarding rules. Related work included ORTC, SMALTA, and Bit bathing. The ORTC algorithm firstly creates a two-item tree according to the IP address of the matching domain, and the creation process comprises the following steps: firstly, each routing table is assumed to have a default route, a forwarding port of the default route is used as a root node, a path starting from the root node is established according to a matching domain IP address of each forwarding rule in the flow table, and the forwarding port corresponding to the forwarding rule is stored in a leaf node. And then optimizing a routing table by traversing the binary tree for three times, firstly, downwards transmitting a default routing item to empty leaf nodes of the tree, then, sequentially transmitting a forwarding port set to a root node from the leaf nodes, finding out the forwarding port with the largest occurrence frequency in the set, placing the forwarding port in the root node, and finally, downwards moving along the tree to cut off branches of the leaf nodes, which have the same forwarding port number as the root node, namely, eliminating redundant paths. The ORTC algorithm requires that the aggregated table be fully recalculated from scratch each time the original table is changed. The cost of such a recalculation is linear with the number of nodes in the tree structure, and may take hundreds of milliseconds to seconds.
The SMALTA algorithm is a prefix-based compression scheme, and the flow table space is saved by searching for forwarding rule pairs with the same forwarding port and adjacent prefixes in the address space for compression. The prefix compression scheme inevitably has compression limitation, the Bit steering algorithm provides a Bit weaving method, which is the first non-prefix compression scheme, and the Bit weaving method compresses adjacent flow entries with the same decision and the hamming distance of 1 (namely, only one Bit difference) to be combined into one entry, and replaces the corresponding Bit by one. To identify and merge these rules, two new techniques are used for bit weaving, bit swapping and bit merging, where bit swapping first cuts the rule list into a series of partitions, in each partition, switches some columns in the rules, reorders the rules so that the bits included in all rules are arranged at the end of the rules, then merges the rules of each partition, and finally restores the merged rules to their original bit arrangement to generate the final stream table. The method has the main advantages of high running speed and high efficiency, and breaks the limitation of a prefix compression scheme. Because the traditional flow table compression method adopts a binary tree method or a decision tree to compress the generated flow table and uses a wildcard to represent, the compression performance is closely related to the distributed route and is relatively passive. Therefore, the invention provides a flow table compression method based on the spanning tree folding route in the software defined network, which performs flow table compression based on the generated route and solves the defects of the prior art.
Compared with the traditional scheme, the invention realizes the compression of the flow table and reduces the transmission delay of the flow by the method of combining the flow table compression and the routing. And a new Spanning Tree algorithm is provided to construct an overlapped route, and the characteristics of the flow are also considered in the route searching process, so that the fast flow is searched first, and the slow flow is searched later. Not only can guarantee QoS, but also can ensure that the flow table is compressed more thoroughly and more flexibly.
Disclosure of Invention
The invention aims to overcome the defects of the prior art, and provides a flow table compression algorithm based on a dynamic route generation strategy from the viewpoint of controlling the flow table scale. And under the consideration of factors such as flow characteristics, transmission delay, network topology and the like, the flow table compression and routing optimization are jointly designed. And by compromising the hardware cost of the flow table of the exchanger and the average data transmission delay cost, the total cost of the system is minimized, and the optimal route is generated for compressing the flow table. The purpose of the invention is realized by the following technical scheme:
a flow table compression method based on spanning tree folding routing in a software defined network comprises the following steps:
s1: given a network topology G (V, E), where V ═ V1,...,vnRepresents a set of n switches, and a set of links m represents
Figure BDA0003006755050000021
To represent that the traffic from node i to node j is set to rijDefinition of R ═ RijI, j belongs to V, i is not equal to j, is a flow matrix among all nodes, and D is defined as { D ═ D ≠ jijI, j belongs to V, i is not equal to j is a time delay matrix among all nodes, wherein dijRepresenting the link delay between two nodes;
s2, according to the definition of the spanning tree, all routes from any node to the root are shorter than routes to other nodes in the spanning tree:
s21: dividing the Flow into a plurality of Flow Sets (FS) according to different target switches;
s22: the target exchanger is set as a root node of a spanning tree of corresponding flow in each FS, and the spanning tree is constructed by the principle that the flow with the high priority is selected to run a short route and the flow with the low priority runs a long route based on the priorities of different flows;
s23: defining two matrixes P and N, wherein P comprises a source node, and N comprises a destination node in a trunk of a constructed spanning tree; these two matrices are used in an algorithm to prevent loops from forming to generate the target spanning tree, once a trunk is selected, its destination node is placed in matrix P and serves as the source node for the next trunk;
s24: to prevent looping, the elements in the matrices P and N are mutually exclusive
Figure BDA0003006755050000031
Namely, two nodes of each trunk are respectively selected from the matrixes P and N;
s3, obtaining routes of all traffic of the same destination node of each spanning tree, traversing n generated spanning trees and expressing the n spanning trees through an index i, then traversing the current traffic matrix, providing routes for the current traffic matrix according to the obtained spanning trees, and sending the obtained routes to SDN exchangers S-S passing through the routes by an SDN controller1,...snIn (1) };
s4: aggregation of some routes with the same destination node and the same output port in the flow table of each SDN switch, and traversing the generated routing table, because the routing tree is constructed according to the traffic with the same destination address and conforms to the rule of flow aggregation, the construction of the routing tree in S1-S2 lays a foundation for the flow aggregation in S3-S4, so that the traffic has high aggregation performance.
The invention has the beneficial effects that:
(1) the flow table compression and the route optimization are jointly designed, so that the limitation caused by the flow table compression based on the generated route in the traditional algorithm is avoided, and the flow table compression effect is better.
(2) The routing tree is constructed by utilizing the characteristics of the non-closed circles of the spanning tree, more overlapped routes can appear, and better conditions are provided for flow aggregation.
(3) A routing tree is constructed by considering the compromise relationship between the transmission delay cost and the hardware cost of a flow table storage chip, the shortest route is selected while the flow table compression is realized, and the transmission delay is reduced.
(4) When constructing a routing tree, considering the priority of the flow, the urgent flow with high priority selects a shorter route as much as possible, and the slow flow with low priority selects a longer route as much as possible.
Drawings
FIG. 1 is a flow chart of a method of the present invention;
FIG. 2 is a diagram of a comparative example of DR and CR algorithms;
fig. 3 shows a process of constructing a routing tree of the network topology G (7, 11).
Detailed Description
The technical solutions of the present invention are further described in detail below with reference to the accompanying drawings, but the scope of the present invention is not limited to the following.
As shown in fig. 2, fig. 2(a) shows a network topology G (V, E) with 5 nodes and 7 links. Each node represents an Openflow switch. For example, the ith node represents an owning flow table FTiS ofiThe surrounding numbers show their port index numbers. The flow table includes a set of entries, each of which can be reduced to a triplet: (<n,m,a>) Which consists of a priority n, a match field m and a specified action a. Typically such an entry is called a rule, where the matching domain represents the source switch address of compressible traffic with a wildcard. The numbers on each link represent the corresponding transmission delays. The right side of fig. 2(a) and 2(b) shows two flows present in the SDN network. In addition, with LijRepresenting the route from node i to node j, denoted FijRepresenting the traffic from node i to node j. Distributed Routing (DR: Distributed Routing)[140]The average transmission delay can be reduced by load balancing, but may result in a lower stream compression rate. In contrast, centralized routing (CR:Concentratedrouting) although a higher compression rate may be achieved to save flow table space, it may cause a larger average transmission delay.
In DR, the shortest routes shown in fig. 2(a) may be selected for the two traffics, respectively. For example, F43Through route L43(s4→s5→s3) The transmission delay is T-6 + 3-9. In this case, a flow entry is registered in FT4Another flow entry is registered in FT5The total number of flow entries in all flow tables is 4, and the total transmission delay of these two flows is 20. In CR, a simple routingAlgorithm as shown in fig. 2(b), the method is based on the minimum spanning tree algorithm to generate the overlapping route. Firstly, a Minimum Spanning Tree (MST) is generated in a network topology G (V, E), and a plurality of overlapped routes are generated by utilizing the non-closed characteristic of the MST, so that the aggregation efficiency of flow tables is improved, but the problems of unbalanced load and long transmission delay of some flows are also brought. As shown by the MST in the figure with 4 thick solid links, it can be observed that the partial routes on which the two traffic flows form overlap. For example, raw FT1In which there are two flow entries, both of which are forwarded from egress 1 to the same destination s3Thus, the original flow table FT of fig. 2(b) can be obtained1Where two route entries are compressed into one. Fig. 2(b) shows that after compression, the number of all routing entries is 3, which is smaller than the flow table entries in DR, and the total transmission delay is 27, which is larger than the total transmission delay in DR. This simple example shows that the CR can effectively improve the compression rate of the flow table based on the MST, but results in a larger average transmission delay, so there is a trade-off between load balancing of the DR and flow table aggregation of the CR.
As shown in fig. 3, the SDN network topology contains 7 switches (i.e., s)1-s7) And 6 request streams (i.e., slaves s)1To s7Traffic with lowest priority, from s2To s7Traffic with higher priority, from s3To s7Traffic with highest priority, from s4To s7Traffic with medium priority, from s5To s7Traffic with medium-low priority, from s6To s7Traffic with medium priority). From s3To s7Can select the shortest route L first37(s3→s5→s7) Across the exchanger s3And s5The two flow entries thus formed are injected separately into the switch s3Flow Table of (FT)3And s5Flow Table of (FT)5And two links l to be routed through35And l57Added to the trunk set of ST. Then considered as being from s2To s7Have higher priority traffic selectionAnd (6) selecting a route. To obtain overlapping routes, traffic tends to select routes that have already been registered with the current flow table. Thus, from s2To s7Has higher priority flow as the distributed route L27(s2→s3→s5→s7) Across the exchanger s2,s3And s5. Likewise, from s4To s7Is allocated to route as L47(s4→s2→s3→s5→s7). From s6To s7Has the route L allocated to the medium priority flow67(s6→s7). From s5To s7Has the distributed route L of the medium and low priority flow57(s5→s7). From s1To s7The route allocated with the lowest priority traffic is L17(s1→s4→s2→s3→s5→s7). The final trunk set is L ═ { L ═57,l35,l23,l42,l67,l14And constitute a spanning tree. The specific implementation of the monitoring trajectory algorithm ILP process is given below:
firstly, according to the design idea of the monitoring track, defining the symbolic expressions shown in the following table 1:
table 1 ILP constant definition in flow table compression method design
Figure BDA0003006755050000051
In addition, to construct the ILP, according to the flow table compression design concept, the symbolic variables as shown in table 2 below need to be defined:
table 2 ILP variable definition in flow table compression method design
Figure BDA0003006755050000052
According to tables 1 and 2, the ILP constructed by the flow table compression method is expressed as follows:
Figure BDA0003006755050000061
s.t.
Figure BDA0003006755050000062
Figure BDA0003006755050000063
Figure BDA0003006755050000064
Figure BDA0003006755050000065
where equation (1) is the objective function, minimizing cost is achieved. The first term is the transmission delay cost, w, of all traffic in the SDNsdMultiplied such that higher priority (urgent traffic) traffic gets smaller transmission delay while lower priority (slow traffic) traffic gets larger transmission delay. The propagation delay cost expansion factor lambda can control the scale of the SDN. The second entry represents the hardware cost of the TCAM in the flow table (i.e., the cost of the memory chip in the flow table), determined by the size of the flow table entry. In this context, assuming that the traffic output from the same port and the forwarded destination addresses are the same, the routes may be aggregated into one route entry. The total cost of the flow table may be multiplied by the cost delta of each flow entry by the number of compressed flow entries. Constraints (2) - (4) indicate that there is only one route for any traffic to travel between two switches in the SDN. Wherein, formula (2) shows that the traffic from the source switch can only pass through one intermediate switch, and formula (3) shows that the destination switch can only receive the traffic from the source switch through one intermediate switch.Equation (4) indicates that the source and destination switches of the traffic through the intermediate switches are identical. Constraint (5) constrains the relationship between the two terms before and after, their values being equal.

Claims (1)

1. A flow table compression method based on spanning tree folding routing in a software defined network is characterized in that: it comprises the following steps:
s1: given a network topology G (V, E), where V ═ V1,...,vnRepresents a set of n switches, and a set of links m represents
Figure FDA0003006755040000011
To represent that the traffic from node i to node j is set to rijDefinition of R ═ RijI, j belongs to V i, not equal to j is a flow matrix among all nodes, and D is defined as DijI, j belongs to V, i is not equal to j is a time delay matrix among all nodes, wherein dijRepresenting the link delay between two nodes;
s2: according to the definition of the spanning tree, all routes from any node to the root are shorter than routes to other nodes in the spanning tree:
s21, dividing the Flow into multiple Flow Sets (FS) according to different target exchangers;
s22: the target exchanger is set as a root node of a spanning tree of corresponding flow in each FS, and the spanning tree is constructed by the principle that the flow with the high priority is selected to run a short route and the flow with the low priority runs a long route based on the priorities of different flows;
s23: defining two matrixes P and N, wherein P comprises a source node, and N comprises a destination node in a trunk of a constructed spanning tree; these two matrices are used in an algorithm to prevent loops from forming to generate the target spanning tree, once a trunk is selected, its destination node is placed in matrix P and serves as the source node for the next trunk;
s24: to prevent looping, the elements in the matrices P and N are mutually exclusive
Figure FDA0003006755040000012
Namely, two nodes of each trunk are respectively selected from the matrixes P and N;
s3, obtaining routes of all traffic of the same destination node of each spanning tree, traversing n generated spanning trees and expressing the n spanning trees through an index i, then traversing the current traffic matrix, providing routes for the current traffic matrix according to the obtained spanning trees, and sending the obtained routes to SDN exchangers S-S passing through the routes by an SDN controller1,...snIn (1) };
s4: aggregation of some routes with the same destination node and the same output port in the flow table of each SDN switch, and traversing the generated routing table, because the routing tree is constructed according to the traffic with the same destination address and conforms to the rule of flow aggregation, the construction of the routing tree in S1-S2 lays a foundation for the flow aggregation in S3-S4, so that the traffic has high aggregation performance.
CN202110364230.6A 2021-04-04 2021-04-04 Flow table compression method based on spanning tree folding routing in software defined network Pending CN113098778A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110364230.6A CN113098778A (en) 2021-04-04 2021-04-04 Flow table compression method based on spanning tree folding routing in software defined network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110364230.6A CN113098778A (en) 2021-04-04 2021-04-04 Flow table compression method based on spanning tree folding routing in software defined network

Publications (1)

Publication Number Publication Date
CN113098778A true CN113098778A (en) 2021-07-09

Family

ID=76673471

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110364230.6A Pending CN113098778A (en) 2021-04-04 2021-04-04 Flow table compression method based on spanning tree folding routing in software defined network

Country Status (1)

Country Link
CN (1) CN113098778A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114363215A (en) * 2021-12-27 2022-04-15 北京特种机械研究所 Train communication network time delay analysis method based on supply and demand balance
CN114448886A (en) * 2021-12-28 2022-05-06 天翼云科技有限公司 Flow table processing method and device
CN115514644A (en) * 2022-11-15 2022-12-23 阿里云计算有限公司 Entry consistency checking method, electronic equipment and storage medium
CN114363215B (en) * 2021-12-27 2024-05-28 北京特种机械研究所 Train communication network time delay analysis method based on supply and demand balance

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170005919A1 (en) * 2015-07-03 2017-01-05 Estinet Technologies Inc. Method for constituting hybrid network spanning trees, method of redundancy, and control system thereof
CN107872385A (en) * 2017-10-11 2018-04-03 中国电子科技集团公司第三十研究所 A kind of SDN router-level topology and control method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170005919A1 (en) * 2015-07-03 2017-01-05 Estinet Technologies Inc. Method for constituting hybrid network spanning trees, method of redundancy, and control system thereof
CN107872385A (en) * 2017-10-11 2018-04-03 中国电子科技集团公司第三十研究所 A kind of SDN router-level topology and control method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZHIPENG ZHAO,等: ""Flow aggregation through dynamic routing overlaps in software defined networks"", 《COMPUTER NETWORKS VOLUME 176》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114363215A (en) * 2021-12-27 2022-04-15 北京特种机械研究所 Train communication network time delay analysis method based on supply and demand balance
CN114363215B (en) * 2021-12-27 2024-05-28 北京特种机械研究所 Train communication network time delay analysis method based on supply and demand balance
CN114448886A (en) * 2021-12-28 2022-05-06 天翼云科技有限公司 Flow table processing method and device
CN115514644A (en) * 2022-11-15 2022-12-23 阿里云计算有限公司 Entry consistency checking method, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
JP3735471B2 (en) Packet relay device and LSI
JP5551253B2 (en) Method and apparatus for selecting from multiple equal cost paths
US9225628B2 (en) Topology-based consolidation of link state information
US7031320B2 (en) Apparatus and method for performing high-speed IP route lookup and managing routing/forwarding tables
US7260096B2 (en) Method and router for forwarding internet data packets
US7231459B2 (en) Routing scheme based on virtual space representation
US7606968B2 (en) Multi-level content addressable memory
CN100413285C (en) High-speed multi-dimension message classifying algorithm design and realizing based on network processor
CN113098778A (en) Flow table compression method based on spanning tree folding routing in software defined network
KR100512949B1 (en) Apparatus and method for packet classification using Field Level Trie
EP2517420A1 (en) Systolic array architecture for fast ip lookup
CN108111410A (en) Deadlock freedom routing in lossless multidimensional Cartesian Topology Structure with minimum number virtual buffering region
Sheu et al. A scalable and bandwidth-efficient multicast algorithm based on segment routing in software-defined networking
US20060268691A1 (en) Divide and conquer route generation technique for distributed selection of routes within a multi-path network
CN1216473C (en) TCAM high-speed search method and system supporting multiple nexthop
CN103457855B (en) Classless inter-domain routing table is established and the method and apparatus of message forwarding
Kogan et al. FIB efficiency in distributed platforms
Veeramani et al. Efficient IP lookup using hybrid trie-based partitioning of TCAM-based open flow switches
Akhbarizadeh et al. Hardware-based IP routing using partitioned lookup table
CN112187642B (en) Weighted bandwidth allocation for adaptive routing
Xiao et al. Dynamic update of shortest path tree in OSPF
Ma et al. A distributed storage framework of FlowTable in software defined network
Mahini et al. MLET: a power efficient approach for TCAM based, IP lookup engines in Internet routers
Erdem Pipelined hierarchical architecture for high performance packet classification
WO2000077984A1 (en) Arrangement, system and method relating to datacommunication

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210709