• No se han encontrado resultados

Path Computation Enhancement in SDN Networks

N/A
N/A
Protected

Academic year: 2023

Share "Path Computation Enhancement in SDN Networks"

Copied!
67
0
0

Texto completo

In this dissertation, we present a load balancing algorithm in the SDN framework for popular data center networks and a fault management approach for hybrid SDN networks. We also demonstrated that the proposed solution for hybrid SDN networks can support smooth operation in complicated hybrid SDN networks.

General

The network operator can use a variety of network information to design policies for the network. Because all network information is in the controller, operators can manage, provision and troubleshoot more accurately and quickly.

Research Problem

Contributions of the thesis

Thesis Organization

Legacy Networks

SDN Network

OpenFlow Protocol

The control layer instructs the infrastructure layer how to forward traffic and provides the application program interface (API) for the upper layer. It should be noted that other protocols may also be used between the infrastructure layer and the control layer.

OpenFlow Switch

Using the OpenFlow protocol, the control layer can remotely determine the flow paths and exchange the statistics with the infrastructure layer. Match fields Priority counters Instructions Timeouts Cookie flags Table 2.1: Main components of a flow entry in a flow table.

OpenFlow Controller

By reactively and proactively adding, deleting and changing the flow entry, the controller can change the flow path. Today, most controllers provide the Representational State Transfer Service (RESTful) API to make the controller easily accessible to the application layer.

Figure 2.3: The flowchart detailing packet flow through an OpenFlow switch
Figure 2.3: The flowchart detailing packet flow through an OpenFlow switch

Network Topology in SDN

Path Computation in SDN

Hybrid SDN Networks

Legacy island link: The logical link from one SDN switch to another SDN switch through the legacy island. There can be multiple physical links and legacy network nodes between two SDN switches. However, from the perspective of the SDN controller, the nodes and links of the traversed legacy network are treated as a single logical link.

Related works in Load Balancing

The controller then replaces the destination IP address of the service with the IP address of the selected server. Since only the first packet of the traffic stream is sent to the controller, communication between the switches and the controller is minimal. Handigol et al.[16] proposed a load balancing algorithm where the controller periodically queries the status of the network and servers.

The algorithm takes advantage of the fact that the controller has the complete view of the network.

Related works in Hybrid SDN networks

Jiang et al.[17] proposed an algorithm that extends Dijkstra's algorithm to select the shortest path on the controller. We will also address the issue of load balancing when there is congestion in the network. If the controller does not receive the LLDP frame before the timer expires, it will send the special broadcast frame to discover possible legacy islanding between OpenFlow switches.

This approach can handle SDN hybrid network only if there is no loop in the network.

Overview of Proposed Algorithms

Path Computation

Characters in Data Center Networks

It should be noted that the route calculation algorithm can be easily modified to apply to the two-tier data center network. The primary purpose of the data center is to provide services to external users, so most of the data center's network traffic is between hosts (data center servers) and core switches. There is also little traffic between end-to-end hosts within the data center.

From a network perspective, there are only two types of traffic in the data center network: core-to-edge and edge-to-edge traffic.

Figure 3.1: The workflow of proposed algorithms in chapter 3
Figure 3.1: The workflow of proposed algorithms in chapter 3

Path Computation Algorithm

Additionally, data center networks typically use symmetric Ethernet connections (the bandwidth is the same in both directions), which makes the graph an undirected graph. Let us denote H0 as a hash table whose input is the pairs in N1, and the output is the address of the corresponding elements in N0. Once the paths are found, Ej and Ek will be used as input to H0.

For each doll, we can get a pair of edge switches Ej and Ek, which are not directly connected by aggregation switch.

Load Balancing

Load Balancing Background

Path selection Algorithm

After the operations mentioned above, all paths in the network are found and stored inP. The selection mechanism will then create a list Q containing equal cost paths with the same minimum congestion level and minimum congestion weight. Sy ={y|Pyw=min(Pxw, x∈Sx)} (3.6) Finally, the paths in Sy are placed in list Q and one of the paths in Q is selected using hashing to issue a new flow request to act.

Since the source and destination MAC and IP addresses and zip codes are random, the final path selection will also be random.

Summary

Potential problems are highlighted and the actual solution is presented, as they lay the foundation for the proposed solution.

Figure 3.2: The flowchart of path selection algorithm 20
Figure 3.2: The flowchart of path selection algorithm 20

Overview of current Hybrid SDN Network Solution

Floodlight does not have any built-in mechanism to avoid circuit between or between islands, and the path calculation module only calculates the path within the SDN island. The solution proposed in the next section uses the similar approach as Floodlight with improvements.

Overview of proposed Solution for hybrid network

Configuration module: Receive notification from the discovery module, analyze the old island and configure the boundary switches on the SDN islands.

Figure 4.4: The workflow of proposed solutin for hybrid network
Figure 4.4: The workflow of proposed solutin for hybrid network

Proposed Solution for Hybird Network

However, using the unspecified link to the setup flow may cause the MAC address to flap on the old island. It causes return traffic dropped by the non-designated switch from the old island back to the SDN island. Since the old island can flood the frame to the SDN island, the non-designated switch will also receive the flooded flow.

The mechanism we can use is that if the incoming flow matches the flow entry on the unspecified switch, it will be return traffic from the legacy island.

Figure 4.6: a,b are in a group
Figure 4.6: a,b are in a group

Summary

It should be noted that only designated switches will be used to receive and forward traffic to and from the old island, so designated switches and old islands will consider each other as adjacent islands.

System Environment

System Design

At the latest network topology drawn by the topology discovery module, the path calculation module uses the Floyd Warshall algorithm to calculate the all-pairs shortest path for the entire network. When the packet is forwarded to the controller, the path calculation module installs the flows to corresponding flow forwarding switches. After the configuration of the configuration module, the path calculation module will use the algorithm mentioned in chapter three to calculate and store the shortest paths in all pairs.

When the path calculation module receives a new flow installation request, it will select a path from the paths stored in listQ.

Summary

This chapter examines the performance of the proposed path calculation and path selection algorithms and tests the validity of the proposed hybrid SDN network solution. Furthermore, the proposed path selection algorithm will be compared with the hash approach and the periodic query approach (hash and periodic queries will be specifically discussed in 6.4). Comparison of the network path calculation times between the proposed path calculation algorithm, Dijkstra's and Floyd Warshall algorithms for data center networks with the fat-tree topology.

Comparison of the controller provides a new flow to the hosts when using the proposed path selection algorithm versus hash and the periodic query.

Experiment Parameters and Environment

Performance Metrics

Algorithm convergence time: This metric measures the time required to calculate all equal-cost shortest paths for the entire network. New Power Setup Time: This metric measures the delay for the first round trip between hosts. Throughput usage: This metric measures network throughput by sending UDP traffic from client to server and measuring the average transfer rate from the server.

Path computation performance comparison

The Floyd-Warshall algorithm

The Dijkstra’s algorithm

Test Case

From Figure 6.2, we can see that the proposed algorithm outperforms the other two algorithms because the time complexity of the proposed algorithm is less than the other two. In the beginning, when the network is relatively small, the benefit of the proposed algorithm is limited. As the network grows larger, the proposed algorithm always takes much less time to compute the paths for the entire network, although we used the Fibonacci heap as the minimum queue to optimize Dijkstra's algorithm.

Therefore, our study demonstrates that the proposed algorithm can save computational resource on the controller for popular data center network topology.

Path selection performance comparison

Hash

The choice will use a hash function with source and destination MAC addresses, IP addresses and port numbers in UDP/TCP as input to derive a hash value. The hash value will be mapped to one of the shortest paths using the modulo operation.

Periodic Query

Test Case

From Figure 6.4, we can see that the average delay for the proposed algorithm and hash outperforms the periodic query approach by about 20 percent. It should be noted that the proposed algorithm is still a better load balancer than hash when the congestion status does not exceed the high congestion upper threshold. However, the observable difference in throughput performance between the proposed algorithm and the periodic query only occurs in cases of high congestion.

We must admit that when the network is in high congestion status, the periodic query approach may slightly outperform the proposed algorithm.

Figure 6.3: Network topology of path selection for test case
Figure 6.3: Network topology of path selection for test case

Verification For Proposed Solution of hybird SDN networks

Test case

As the traffic increases and the hash approach is unaware of the congestion status in the network, the transfer rate becomes slower than the other two approaches. When the traffic load reaches the high congestion area beyond the upper threshold, all three paths are in the same congestion state and the proposed algorithm will start choosing the path randomly as well as the hash. In the periodic query algorithm, because the controller can still obtain the precise congestion status by querying the switch statistics to choose the path with the least congestion, it outperforms the proposed algorithm under high congestion status.

Finally, the proposed algorithm can achieve better load balancing than hash approach in terms of throughput.

Result and analysis for Hybird network solution

As the highlights in Figure 6.9 present, the groups (called places in the figure) of the ancient islands are determined. The highlights in Figure 6.10 show that the operations for designated and undesignated contacts were completed. As Figure 6.11 shows, all SDN islands 1,2 and 3 (referred to as OpenFlow islands in the figure) are identified.

From the figure 6.13 and 6.14 we see that the ping can work properly and the MAC table of old islands can learn MAC address like other switches.

Figure 6.8: The controller analyzed all legacy islands
Figure 6.8: The controller analyzed all legacy islands

Figure

Figure 1.1: A typical data center network topology
Figure 2.1: The SDN architecture forwarding elements.
Figure 2.2: Main components of an OpenFlow switch
Figure 2.3: The flowchart detailing packet flow through an OpenFlow switch
+7

Referencias

Documento similar

I) Para el circuito de la figura calcular los valores de funcionamiento en c.c., la impedancia de entrada y salida del circuito y la ganancia de tensión. Dibuje los