Some Research Results in Software-Defined Networks

4 downloads 111 Views 2MB Size Report
Reliable Multicast Routing for Software-Defined. Networks. ▻ Multicast Traffic Engineering for Software-Defined. Networks. ▻ Service Chain Platform: Green ...
Some Research Results in Software-Defined Networks Wen-Tsuen Chen Distinguished Research Fellow, Academia Sinica Sun Yun-suan Chair Professor, National Tsing Hua University

November 4, 2016

Outline     

Software-Defined Networking Reliable Multicast Routing for Software-Defined Networks Multicast Traffic Engineering for Software-Defined Networks Service Chain Platform: Green Service Chain Embedding for NFV in Cloud A Cost-Effective Shuffling-Based Defense against HTTP DDoS Attacks with SDN/NFV

2

Software-Defined Networking (SDN)

Routing in Traditional Networks 

How to deliver packets to another side of a network?

4

Routing in Traditional Networks  

In-band signaling Nodes exchange network conditions

5

Routing in Traditional Networks  



In-band signaling Nodes exchange network conditions Pick up a route with less cost

6

However…  



Lack global view to optimize the routing Less flexibility for traffic engineering Difficult to manage the networks

7

Centralized Solution

SDN separates the control plane and data plane

Policies

Controller

Control plane Data plane

Control plane Data plane

Control plane Data plane

8

OpenFlow Switching

Controller

OpenFlow Switch specification

OpenFlow Switch

PC

sw Secure Channel hw

Flow Table

9

Advantages and challenges of SDN 

Advantages   



Elastic to manage the networks Global view to optimize the routing More flexible for traffic engineering (TE)

Challenges 

How to reduce or off-load the controller overhead? 



Frequent traffic optimization and rule deployment are CPU-intensive

How to effectively utilize the limited TCAM (Ternary contentaddressable memory) entries? 

TCAM overflow may seriously degrade the network performance

10

Reliable Multicast Routing for Software-Defined Networks

Presented in INFOCOM 2015

SDN and Traffic Engineering 





Software Defined Network (SDN) 

SDN controller



SDN forwarding elements (switches)

Current unicast traffic engineering for SDN 

Flexibly route the paths inside the network



Avoid congestion and maximize throughput

Most research on SDN traffic engineering focuses on only unicast

12

Problem of Unicast 

Video live broadcast via unicast connections suffers from high server load and network congestion Keep one connection for each client  high server load

Duplicated traffic  high network load

13

Advantage of Multicast  

Multicast reduces the load of a server to 1/d, and save significant network bandwidth The clients load of with the the same resources Support more server is reduced More clients can be served

The load of the network is reduced 14

Reliable Multicast 

Reliable transmission is desired by most applications  

 

Software Update Video services with Flash and MPEG-DASH

Sender handles recovery  source implosion problem, high recovery cost in networks Hierarchical recovery architecture (in IETF and Cisco routers) Recovery Packets

Acks

Acks

Save BW and latency

Acks

Place a recovery node 15

Multicast with SDN 

Are the solutions suitable for multicast traffic engineering in SDN? 



Shortest-Path Tree (SPT) in Internet (IETF PIM-SM) 

Employ OSPF unicast shortest-path routing



Minimize an end-to-end cost



Difficult to aggregate the traffic in fewer links for reducing the bandwidth consumption

Steiner Tree (ST) in Graph Theory 

Minimum bandwidth consumption (number of links in ST)



Not consider the selection of the recovery nodes



Difficult to facilitate local loss recovery 16

Recover-Aware Steiner Tree (RST)  

Explore reliable multicast routing in SDN Input   



Output  



A network graph G A multicast source s and a set D of destinations A set C of candidate recover nodes in reliable multicast Routing of a multicast tree T to span s and D Selection of a set R of at most r recovery nodes in the tree

Minimize tree cost + α × recovery cost  

α: weighting factor for recovery cost, determined by the SDN-C If heavy loaded, assign larger α to reduce recovery cost 17

Recover-Aware Steiner Tree (RST) 

Tree cost  



Total cost of the edges in T Bandwidth consumption of the tree

Recovery cost 

Total cost of the recovery paths in T 





Recovery path of a recovery node u: the path from its parent recovery node to u

Recovery bandwidth consumption or delay

Trade-off in r (at most r recovery nodes in T) 

Larger r → more recovery nodes → shorter recovery paths → smaller recovery cost, larger protocol overhead 18

Example of RST 

Node s is the source



Nodes v and 7 are recovery nodes



Tree cost c (T ) = 36, recovery cost w (T ) = 39



For node v, source s is the recovery node  cost = 3+8



For node 2, node v is the recovery node  cost = 1+2 s

3 8

9 7

u

2 v 1 1

5

2 w 3

3

6 1

2 2

4

5

19

Related Work 

Traffic engineering in SDN  



Mostly focus on unicast Our recent work – solving scalability in SDN multicast traffic engineering (Globecom 2014 Best Paper Nominated)

Reliable multicast 



Hierarchical recovery architecture to avoid source implosion Mostly focus on protocol design for SPT 



Efficient ACK and NAK suppression, FEC

None of them explores  

Multicast traffic engineering in reliable multicast Routing of a tree + selection of recovery nodes in a tree 20

Main Contributions  

Observe that both SPT and ST are not suitable for reliable multicast in SDN traffic engineering Propose Recover-Aware Steiner Tree (RST) 



Prove that RST is NP-hard and not approximable within d 



Integer Programming (IP) formulation d: number of destinations

Propose d-approximation algorithm RAERA for RST 

RAERA: Recover-Aware Edge Reduction Algorithm 



Tree Routing Phase and Recovery Selection Phase

Achieve the best approximation ratio

21

Hardness Result 

RST is NP-Hard 



Equivalent to ST with α = 0 in (tree cost + α × recovery cost)

RST not approximable with |D|1-ε for every ε>0  

Gap-introducing reduction from the Set Cover (SC) problem If there existed a |D|1-ε approximation algorithm, it could solve SC problem

22

RAERA – Tree Routing Phase 

Tree Routing Phase     

Starts from the shortest-path tree and iteratively reroute the tree Aggregating the paths from s to more destinations Reroute a destination d to the closest node in the tree Re-routing path needs to include at least one candidate recovery node in C Any end-to-end path cannot exceed the original longest shortest path from s to any d to limit the end-to-end delay

23

RAERA – Recovery Selection Phase 

Recovery Selection Phase  

When the tree is determined, the sub-problem (to select the recovery node) can be solved in polynomial time Dynamic programming (DP) algorithm to select the recovery nodes from T in a bottom-up manner

24

Simulation Setup 

EstiNet network simulator   



A real topology 





Commercial software supporting OpenFlow Packet loss rate: 1% - 10% (ToN’13) Link delay: 10ms – 100ms Biznet with 29 nodes and 33 links Number of destinations: 6 ~ 12

Synthetic topologies   

Generated by Inet (SIGCOMM’02) Number of nodes: 4,000 ~ 10,000 Number of destinations: 100 ~ 500 25

Simulation Setup 

Comparison    



The shortest-path tree algorithm (SPT) The Steiner tree (ST) algorithm The optimal solution by CPLEX (IBM Mixed Integer Linear Programming solver) RAERA

Performance metrics   

Total cost (tree + recovery costs) Total retransmitted bytes Average latency (including retransmission) for each packet 

Important for QoE

26

Real Network 28

ST does not consider recovery cost and results in SPT minimizes the recovery SPTendalsohighest provides to-end52costs, andrecovery it cost higher cost CPLEX results in the highest tree cost RAERA 42 The ST tree cost provided by RAERA SPT 32 is similar to optimized solution

CPLEX

Tree Cost

20

Recovery Cost

RAERA 24

ST SPT

16

12 6

8

10 k

Tree Cost

12

ST 22 minimizes tree REARA also cost, and provides consider recovery 12 the lowest tree cost cost, so 6 8 the cost 10 is k the lowest

12

Recovery Cost

27

Synthetic Networks

Cost (Tree+Recovery)

RAERA 1600

The cost increases with k, because of larger tree for more destinations.

Cost (Tree+Recovery)

2000

ST and SPT work similar with higher The cost slightly cost. decreases with more recovery RAERA 1250 nodes

ST

SPT

1200 800 400 0

1150

ST

SPT

1050 950 850 750

100

200

300 k

400

500

Cost with Different k REARA successfully reduces the cost

15

25

35 r

45

55

Cost with Different r

28

Running Time of RAERA 

HP DL580 server 

Intel Xeon E7-4870 2.4 GHz CPUs and 128GB RAM

When scale is small, the running time is less than 1 second |v|

Running time increases with k k = 100

k = 200

k = 300

k = 400

k = 500

4000

0.7

1.37

2.87

5.29

9.56

6000

1.5

2.23

3.9

6.93

11.48

8000

2.61

3.39

5.09

7.91

12

10000

4.08

4.9

6.6

10.14

13.99

Also increases with |V|

Even in a large scale, the running is still acceptable.

29

Preliminary Implementation Result    

Floodlight + HP Procurve 5406zl Youtube → a video proxy server (multicast source) → 8 multicast destinations with 2 recovery nodes A network with 14 nodes and 23 links A Youtube video with 136 seconds

Algorithm

Total Bandwidth Consumption

Re-buffering

RAERA

13.18 Mbytes

0.4 s

ST

16.39 Mbytes

33.5 s

SPT

17.83 Mbytes

7.8 s 30

Summary  

First work that addresses reliable multicast in SDN Recover-aware Steiner Tree (RST) 



NP-Hard and inapproximable within d.

Algorithm RAERA  

d–approximation algorithm – tightest bound Find a solution in seconds in massive networks

31

Multicast Traffic Engineering for Software-Defined Networks

Presented in INFOCOM 2016

Disadvantage of Unicast 

Video live broadcast via unicast connections suffers from high server load and network congestion Keep one connection for each client  high server load

Duplicated traffic  high network load

33

Advantage of Multicast  

Multicast reduces the load of a server to 1/d, and save significant network bandwidth The clients load of with the the same resources Support more server is reduced More clients can be served

The load of the network is reduced 34

Multicast with SDN 

Are the solutions suitable for multicast traffic engineering in SDN? 



Shortest-Path Tree (SPT) in Internet (IETF PIM-SM) 

Employ OSPF unicast shortest-path routing



Minimize an end-to-end cost (directly connect the source and destinations)



Difficult to aggregate the traffic in fewer links for reducing the bandwidth consumption by sharing more common edges among the paths to different destinations

Steiner Tree (ST) in Graph Theory 

Minimum bandwidth consumption (number of links in ST)



Only focuses on the routing of a single multicast tree, instead of jointly optimizing the routing all trees



Not consider the size of Group Table (in TCAM) of an SDN-FE to store the forwarding entries – scalability problem

35

Multicast Scalability Problem 

Scalability problem for multicast communications is even more serious in the deployment of SDN for a large network.  

The number of possible unicast connections is 𝑂(𝑛2 ) The number of possible multicast groups is 𝑂(2𝑛 ) 



𝑛 is the number of nodes in a network

Multicast scalability problem is more serious than unicast counterpart

36

Branch Forwarding Technique 

Store the multicast forwarding entries (our previous works) 

In only the branch nodes, instead of every node, of a multicast tree 



A branch node in a tree is the node with at least three incident edges

Remedy the multicast scalability problem   

Packets are forwarded in a unicast tunnel from the logic port of a branch node in SDN-FE to another branch node The two terminal nodes of a tunnel are branch nodes Nodes inside the tunnel no longer need to store a multicast forwarding entries

37

Trade-off between the link capacity and node capacity 

When TCAM is full, a branch node is not multicast capable since its forwarding entry cannot be stored  





No longer a terminal node of a tunnel Multiple unicast tunnels will pass through the branch node

Local unicast tunneling incurs more bandwidth consumption since duplicated packets will be delivered in a link. Each branch node can act as 

a branch state node 



with the corresponding multicast forwarding entry stored in TCAM

a branch stateless node 

that exploits the unicast tunneling strategy.

38

The first shortest-path tree

Example

Since 𝑣 has three Branch nodes downstream nodes 𝑑5′ , 𝑑6′ , 𝑑7′ If 𝑣 is assigned as a branch state node

The𝑢 second shortest-path thus needs to exploit tree unicast tunneling to 𝑑6 and 𝑑7 directly.Branch state nodes

𝑣 is not assigned as a branch state node Traffic of the first tree are duplicated in edge 𝑒𝑢,𝑣

Traffic duplication in state nodes Branch 𝑒𝑢,𝑣 would be more serious for the second tree

TCAM size = 1

39

SMTE problem for SDNs 

Scalable Multicast Traffic Engineering (SMTE)    

Finding the routing of all trees Assign the branch state nodes for each tree Minimize the total bandwidth cost of all trees Link capacity constraint 



Node capacity constraint 



Total rate of all multicast trees on each link < = link capacity Number of trees with branch state nodes located in the node 0 The fact can be proved by the reduction from a well-known NP-hard problem, the longest path problem We design a heuristic framework for the problem 

Approximate the optimal solution as much as possible

72

Idea of Framework  

 



In the beginning all servers are assumed to be turned on Relax the problem to a linear programming (LP) The framework solves the LP and turns off the most under-utilized working machine based on the LP solution Repeat the second and third steps until the desired solution appears Finally, it uses a heuristic rounding based on the LP solution to determine the routing path for each flow  

The LP solution may be infeasible Round the solution to an integral solution (feasible solution)

73

Numeric Result 



The total throughput grows as the number of working machines decreases, since the remaining energy for processing increases (*power budget is limited) However, when the number of machines is not enough, the processed flow size decreases Power Consumption (W) 8000

Power Consumption (W)

*power budget =

7000

power consumtion for working machines power consumption for processing

6000 5000

The desired solution is here

4000 3000 2000 1000 0 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1

The number of working machines

74

References     

   

 

[1] Energy Logic: Reducing Data Center Energy Consumption by Creating Savings that Cascade Across Systems, white paper from EMERSON Network Power [2] W.Vereecken, W.V. Heddeghem, D. Colle, M. Pickavet and P. Demeester, “Overall ICT Footprint and Green Communication Technologies,” in IEEE ISCCSP, 2010. [3] A. Greenberg, J. Hamilton, D. A. Maltz, P. Patel, “The Cost of a Cloud: Research Problems in Data Center Networks,” in ACM SIGCOMM CCR, 2009 [4] A. Bergen, R. Desmarais, S. Ganti, U. Stege, “Towards software-adaptive green computing based on server power consumption,” In ACM GREENS, 2014. [5] D. Breitgand and A. Epstein, “Improving Consolidation of Virtual Machines with Risk-Aware Bandwidth Oversubscription in Compute Clouds,” in IEEE INFOCOM, 2012 [6] “Near optimal placement of virtual network functions,” in IEEE INFOCOM, 2015 [7] “User Mobility-Aware Virtual Network Function Placement for Virtual 5G Network Infrastructure,” in ICC, 2015 [8] “Service-Aware Network Function Placement for Efficient Traffic Handling in Carrier Cloud,” in WCNC, 2014 [9] “Optimized Network Traffic Engineering using Segment Routing,” in IEEE INFOCOM, 2015 [10] “On the Effect of Forwarding Table Size on SDN Network Utilization”, in IEEE INFOCOM 2014 [11] “Faster and simpler algorithms for multicommodity flow and other fractional packing problems,” SIAM J. Comput., 2007

75

Future Works • Improve the scalability of the platform • Change the SDN controller from Floodlight to OpenDaylight: • Deliver higher scalability and the ability to easily incorporate new applications and protocols

• Application to the Next-Generation Cellular Network Architecture • Seamless Handover in Wi-Fi/Small Cell environment • Our platform is believed to be able to help the handover process by reducing disconnection period.

• DNS poisoning prevention based on moving target defense: • Moving the DNS service before the attacks occur