• No results found

High Performance LDPC Codes for High Spectral Efficiency

N/A
N/A
Protected

Academic year: 2020

Share "High Performance LDPC Codes for High Spectral Efficiency"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

ISSN: 1942-9703 / CC BY-NC-ND

Abstract— Capacitated Controller Locating Problem (CCLP)

finds its application in Software Defined Networks (SDN), for locating controllers. The problem of locating a minimum number of controllers in a weighted topology such that each controller should have a maximum number of switches within the given capacity and reduces interactive time with its switches is known as capacitated controller locating problem. This paper proposes an efficient heuristic approach to solve CCLP.

Index Terms— CCLP, Heuristic, SDN, Weighted Topology.

I. INTRODUCTION

The current network architecture has control and data plane in the same device itself. As a result, flexibility and manageability of a network is a challenging task. The current networking devices like Switches/Routers configured manually using the operating system. The network administrators facing difficulty in managing and monitoring all the connecting devices. In order to test a new algorithm or protocol researchers have to develop their own testbed or they have to use simulation environment. To innovate their new idea the current networking environment is too expensive. To overcome this difficulty, a new network architecture called Software Define Network (SDN [1]) is proposed. The SDN separates data plane from the control plane as shown in Figure 1.

Fig.1. Software Defined Network

Manuscript received on April 4, 2017; Accepted on January 5, 2018; Published on May 1, 2018. S.Veeramani, PhD Scholar, Dept of CSE, IIITD&M Kancheepuram, Chennai-600127, Email: [email protected], Noor Mahammad Sk, Assistant Professor, Dept. of CSE, Indian Institute of Information Technology Design and Manufacturing (IIITD&M) Kancheepuram, Chennai-600127. Email: [email protected].

In both the network architecture, control plane plays a vital role in decision making. In traditional network decision making is done autonomously in each device separately wherein SDN decision making is restricted only by the central controller. When a new packet arrives at the switch, it can be forwarded to the controller for updating. Based on the instruction given by the controller, data plane either forward or drop the packet. The switch does not have the knowledge to forward the packet if the packet arriving first time to the switch. Such packets are forwarded to the controllers for the rule update in the switch flow table. If the rules are defined already in the switch flow table, the packet need not be forwarded to the controller for rule installation. Once the rule has been updated in the switch through the controller, the packet which belongs to the same flow need not go to the controller again. In a large scale network, having single controller has some disadvantages related to performance and scalability. Whenever a large quantity of PACKET_IN messages arrives at a controller, memory, and processor of the controller are all potential bottlenecks. The more numbers of nodes connected to the controller, the higher the load controller which causes the addition of queuing delay on the controller. When there exists a single controller it leads scalability and performance issues in the network. In such scenario, one has to increase the number of the controller in the network to overcome controller failure in the network. A solution to these problems is to use multiple controllers. Although there is not a lot of research on the placement of multiple controllers, we are focusing on placing and managing multiple controllers in the network.

Controller placement problem influences in flow set-up time, fault tolerance and reliability. These problems include locating the controller in the given topology and determine the minimum number of controller needed for the same topology. Every node in the given network topology is associated with weight value called capacity and every edge is associated with weight value called processing request to the controller. Locating a minimum number of controllers in a given network topology in such a way that, it will reduce the controller and switch interaction time become an NP- Hard problem [3]. Finding the optimum number of controller required is a challenging problem in the software-defined network (SDN) because this affects many metrics in the network. Currently, the controller placement problem is introduced in [2], [4]. In early, controller placement problems use interaction time between the switch and the controller as metric for each controller. Those approaches do not consider the situation when the controller failure happens. So, each controller has been assigned a maximum (request processing) load apart

A Heuristic Approach for the CCLP Problem in

Software Defined Network (SDN)

(2)

from considering interaction time. Generally, the load of the SDN Controller mainly depends on various parameters namely, installing the flow entries which is generated by different applications, processing of PACKET_IN events, interacting with other controllers in the network. A load of processing the PACKET_IN events determine the efficiency and the network availability. So the controller should provide the sufficient resource to process such events. The number of such event arrival is considered as the load for the controller. Since controller has limited capacity to manage resources like processor, memory, and bandwidth. In this article, the controller is defined with the term called “capacitated” which represents the maximum number of events can be processed by the controller. When selecting the controller to control different switches, the interaction time between the switch and the controller will be reduced if they are near to each other. If the switch and the controller are a distance away, then it might take time to communicate each other. The main objective of considering load for each controller:

 Since each controller has limitation on processing and memory, a controller can process only certain number of requests.

 When a controller's maximum load exceeds, it can not handle the request more than its maximum capacity. This will increase controller and switch interaction time.

 Failure of one controller leads to affect another controller.

Interaction time between the controller and the switch is an important parameter in locating the controllers. A simple approach is to connect the switches which are nearest to the selected controller. But, this approach will not work properly because of load constraint on each controller. To overcome this problem, one can stop connecting the switches to the controller as long as its maximum load is reached.

The objective of this paper is to place the minimum number of controllers for the given network. Also, this paper is also focusing on reducing the controller and the switch interaction time. This paper proposes an efficient heuristic approach to solve CCLP. This paper uses dynamic programming approach to solve an instance of this problem.

The rest of the paper is organized as follows Section II discuss related works, Section III brief about proposed solution for controller placements, Section IV illustrate about proposed approach and Section V presents the analysis, Section VI results and discussion and followed by Section VII Conclusion

II. RELATED WORKS

k-centered controller placement is introduced in [5]. Generalization of the same problem is proposed in [5]. One variants of k-centered problem called capacitated k-centered problem is proposed in [4], [8]. In this approach, a set of k-controllers is located and each of the k-controllers is assigned with the set of switches by considering the maximum load for each of the controllers. Dorit et al., [6] proposes a heuristic approach for the k-centered problem for the complete graph. The approximate version of the same approach is proposed by

khuller et al., [5]. Cygen et al., [7] proposed a generalized version of the same problem which uses a generalization function instead of uniform capacity function. Dixit et al., [9] proposed a dynamic assignment of switches to the controller. But this approach does not balance the load of controller and switches.

III. PROBLEM STATEMENT AND SOLUTION

A. Preliminaries

Let T be a simple connected topology with the non-empty node set V(T) and the edge set E(T)={{u,v} | u,v V(T) and u

is adjacent to v in T and uv}. The neighborhood of a node v

of T, NT(v), is the set of vertices adjacent to v in T. The degree

of the vertex v is dT(v) = |NT(v)|.(T)denotes the maximum

degree of a topology T.

B. Problem Definition

Capacitated Controller Locating Problem is defined as follows: Given a weighted topology T with weighted nodes

V(T) = {v1,…,vn}, and the weighted edges E(T). Here, the

objective is to find S{v1,…,vn} such that | S | is minimum

and for each node in S, say x, covers the maximum subset R

NT(x) subject to the constraint,

  R y x weight y x

weight( , ) ( )

Where, weight(x) denotes the weight of the node x and

weight(x,y) denotes the weight of the edge between x and y.

C. Proposed Heuristics solution

The CCLP is a NP-hard problem [4]. However, one can use a heuristic approach to provide an approximate solution to this problem. This paper proposes a novel algorithm with the time complexity of O(n log n + nlog), where n is the number of nodes and  is the maximum degree of the topology T. The proposed algorithm selects the node which has maximum node weight value and started assigning the neighborhood nodes with its associated edge weight. This will terminate if the sum of edge weight value is greater than its node weight value. Moreover, this approach does not consider the maximum degree of a node. This approach first finds the sorted nodes and unmarks all the nodes in T. Now, for each unmarked node

x in the sorted list of nodes, this algorithm calls an another Algorithm 1, which assigns the switches/nodes for the node x. Next, mark the node x and all the nodes assigned to it, and add the node x to the required set of controllers. Repeat this procedure until all the nodes are marked. The parameter to the Switch_Assignment(W, S, N), Where W represent the maximum capacity of the node (constraints), S represents set of weighted edge value incident on a node, and N represents set of nodes associated with those edges. The algorithm is as follows.

Algorithm 1 Switch_Assignment(W, S, N)

Require : Given a set N of m weighted nodes, say n1,n2,…, nm

and a set S of m weighted edges, say e1,e2,…,em and the

maximum capacity W.

(3)

ISSN: 1942-9703 / CC BY-NC-ND the constraint

M

ni ei W

Let M = 0

Sort the edge weights in increasing order, say e1e2,…,≤em

for i=1 to m do

if

1 

j ej Wthen

M=M {ni}

end if end for return M

IV. ILLUSTRATION OF THE PROPOSED APPROACH Trace the Algorithm 2 as follows using the given topology T as shown in Figure 2. Since the node with a weight value, 21 has the maximum degree will be chosen for locating the first controller. This node can cover its neighborhood nodes with weight values 19, 11, 13 because summation of its edge weight value is less than or equal to node value 21 (15< 21) as shown in Figure 2. Similarly, next node which has higher weight values is 20 and it can cover nodes 16, 8, 9 since summation of edge value is lesser (14<20) as shown in Figure 3. The Figure 4 shows the result after 20 is chosen as a controller and the final topology is shown in Figure 5. The shaded nodes in the final topology denote the location of the controllers in topology T.

Algorithm 2 Locating_Controllers

Require: The weighted topology T with weighted nodes Ensure: Subset of V(T)to locate as controllers

Let T has n weighted nodes.

Sort the weights of nodes in decreasing order, say w1 ≤ . . . ≤

wn. Let v1,…,vn be the corresponding labels of the nodes.

Let eij denotes the weight of the edge {vi,vj}.

Unmark all the nodes v1, 1 ≤ vi≤ n.

fori = 0 to ndo if viisunmarked then

Let S = {eij | vjNT(vi) and vj is unmarked}. Let N be the

set of nodes associated to the vj’s in S.

Switch_Assignment(wi,S, N)

Mark vi and mark the nodes assigned to vi.

end if end for

V. ANALYSIS

The proposed algorithm is not optimum but it is feasible that every node/controller chosen as an output does not exceed its maximum capacity and all the nodes in the given topology is covered by the controllers.

Theorem 1. The Algorithm 2 gives a feasible solution.

Proof: Since proposed algorithm marks the nodes whenever a node is chosen for locating it as a controller and also marks the nodes covered by the controller. The algorithm terminates only when there are no unmarked nodes. Thus, all the nodes in

the given topology are covered. Moreover, the algorithm 1 will not exceed the maximum capacity and hence, it is feasible.

Nevertheless, the proposed algorithm follows a greedy approach (choosing local optimum at each step) and returns the best approximate solution, an instance of proposed algorithm i.e., the algorithm Switch_Assignment() always return the optimal solution.

Theorem 2.The Algorithm 1 returns an optimum solution.

Proof: Let x1,x2, . . . ,xs be the set of nodes of the sorted

weights w1,w2, . . . ,ws in the given topology T and let the

maximum capacity be W. Thus, w1≤ w2, . . . , ws. Let A = (a1 ,

. . . ,as) be the output of the algorithm and B = (b1 ,. . . ,bs) be

any feasible solution, ai, bi{0,1}, 1≤ i ≤ s. Note that, ai = 1

(as well as bi=1) denotes the presence of wi in the solution and

ai = 0 (as well as bi = 0) denotes the absence of wi in the

solution.

Claim 1: If B is OPTIMUM, then

bi

ai.

Since, the algorithm outputs a feasible solution and since, number of 1's in OPTIMUM  number of 1's in any feasible solution, the above claim is true.

Observation 1: There exists a k {1, . . . ,n} such that ai = 1,

1  ik-1 and aj=0, kjn.

Thus, to show that the algorithm is OPTIMUM, it is required to establish

ai

bi . Towards this end, it is proved that the following sub claim.

Claim 2: If B is any feasible solution, then

ai

bi. Proof for claim 2 is by mathematical induction on m bits, where m is the number of bits in which A and B differ.

Base Case: m = 0. Clearly,

ai

bi.

Induction Hypothesis: Assume that the claim is true if they differ in less than m-places, m≥ 0.

Induction Step: Let A and B differ in (m+1)-places, m≥ 0. Observation 2: Since, A and B differ in (m+1)-places there exists j, 1 ≤ jk -1 such that aj = 1 and bj = 0.

Find the least j {1, . . . , k-1} such that aj = 1 and bj = 0.

Clearly, it can not be the case that j{k, . . . , n}. If so, then B

is not a feasible solution.

Now, set bj = 1 (For example, if A=(1,1,1,1,0,0,…,0) and

B=(1,1,0,0,0,1,…,0),then the modified B is C=(1,1,1,0,0,1,…,0)). By doing so, we'll end up in either the modified B, say C, is feasible or C is not feasible.

Case 1: C is feasible

Number of positions in which A and C differs is m. By hypothesis,

ai

ci. Note that,

(4)

Fig. 2. Given Topology T with weights

Fig. 3. The Topology T’ after locating controller with node weight 21

Case 2: C is not feasible

Since C is not feasible, there exists a j{k,…,n} such that aj = 0 and cj = 1. Now, set cj = 0. This

implies, A and the modified C, say D, differs at ( m-1)-places and by the induction hypothesis,

aidi. Observe that

di

bi. Thus,

aibi.

From all the above claims, we one can conclude that

aibi. Hence, the Algorithm 1 returns an optimal solution.

Theorem 3. The Algorithm 2 runs in O(n log n)+

O(nlog()), where n is the number of nodes in the topology T.

Proof: The nodes are sorted in decreasing order based on the degree of nodes which takes the worst case complexity of

O(n log n). From the sorted list, first maximum degree node is passed to the Algorithm 1 which takes the complexity of

O(log()). Similarly, next unmarked node from the sorted list which is not covered will be passed and this will be repeated until all the nodes are covered. Since the Algorithm 1 tries to find the local minimum from the sorted edge weight

and then add to the sum and verify the sum < constraints. Then tries to find next local minimum and so on terminates when it violates the constraints. This will produce an optimal solution. So, the total time complexity of locating and assigning the

switches to the each of controller takes

O(n log n)+O(nlog ()).

VI. RESULTS AND DISCUSSION

(5)

ISSN: 1942-9703 / CC BY-NC-ND Fig. 4. The Topology T” after locating controller with node weight 20

Fig. 5. Final Topology after locating the controllers

topologies gives us the number of controller for each of the given topology. We measured the solving time needed by our proposed approach using the topology zoo data set as shown in Figure 6.

Fig. 6. Time to solve a given topology from topology zoo data set (milliseconds

Since the solving time increases when the number of controllers decreases and vice versa. Table 1 shows various data set with the number of controllers. Thus, in most of the cases, 4 - 5 controllers are able to manage the entire network.

TABLEI

TOPOLOGY VS NUMBER OF CONTROLLERS

Name of the Dataset Number of Controllers

Abilene 3

Bell Canada 3

AtmNet 6

Sprint 2

ArpaNet1990 2

Garr 2

BelNet 4

UniNet 5

Airtel 7

VII. CONCLUSION AND FUTURE WORK

(6)

used in the network. Moreover, the placed controllers can serve a maximum number of switches. The future work is to enhance this approach when a controller fails in the given topology.

REFERENCES

[1] Farhady H, Lee H, Nakao A, “Software-defined networking: A Survey,” Jornalof Elsevier Computer Networks, Vol. 81, pp. 79-95, 2015. [2] Heller B, Sherwood R, McKeown N, “The controller placement

problem,” In Proceedings of the first ACM workshop on Hot topics in software defined networks, pp. 7-12, 2012.

[3] Garey MR, Johnson DS, “A Guide to the Theory of NP-Completeness,” WH Freemann, New York, 1979.

[4] Yao G, Bi J, Li Y, Guo L, “On the capacitated controller placement problem in software defined networks,” In IEEE Communications Letters, Vol.18, Issue 8, pp.1339-42, 2014.

[5] Khuller S, Sussmann YJ, “The capacitated k-center problem,” SIAM Journal on Discrete Mathematics, Vol.13, Issue 3, pp.403-18, 2000. [6] Hochbaum DS, Shmoys DB, “A best possible heuristic for the k-center

problem,” Mathematics of operations research, Vol. 10, Issue 2, pp.180-4, 1985.

[7] Cygan M, Hajiaghayi M, Khuller S, “LP rounding for k-centers with non-uniform hard capacities,” In IEEE 53rd Annual Symposium on Foundations of Computer Science (FOCS), pp. 273-282, 2012.

[8] Plesnik J, “A heuristic for the p-center problems in graphs,” Discrete Applied Mathematics, Vol.17, Issue 3, pp.263-8, 1987.

[9] Dixit A, Hao F, Mukherjee S, Lakshman TV, Kompella R, “Towards an elastic distributed SDN controller,” ACM SIGCOMM Computer Communication Review, Vol. 43, Issue 4, pp.7-12. 2013.

[10] http://www.topology-zoo.org/dataset.html

S. Veeramani has obtained his Bachelor of Engineering in Computer Science from Madurai Kamarajar University, Madurai. He obtained his Master of Technology from Kalasalingam University. Currently, he is pursuing his PhD in the department of Computer Science and Engineering, Indian Institute of Information Technology Design and Manufacturing (IIITDM) Kancheepuram, Chennai, India. His area of interest includes Networks, Data Structures, Machine learning.

Sk. Noor Mahammad has obtained his PhD

from Indian Institute of Technology Madras, and he is currently working as Assistant professor in the department of Computer Science and Engineering, Indian Institute of Information Technology Design and Manufacturing (IIITDM) Kancheepuram, Chennai, India

Figure

Figure 1. Although there is not a lot of research on the placement of multiple controllers, we are focusing on placing and managing
Fig. 2. Given Topology T with weights
Fig. 4.  The Topology T” after locating controller with node weight 20

References

Related documents

Simulations of faults in the HVDC network show the ability of the protection scheme to isolate the fault, and the converter stations and wind turbines are able to ride-through

1. Subject to the approval of the Supervisory Board and Stichting Beheer van prioriteitsaandelen N.V. Holdingmaatschappij De Telegraaf, the Managing Board shall decide every year what

Proposed by Cllr Kaiser, seconded by Cllr Starkey, all agreed for Cllr Murphy to take the role of Acting Vice Chairman for a period of 6 months to support Cllr Clint. As Cllr Clint

from a technical mixture with higher degree of chlorination to a technical mixture with lower degree of chlorination over this time period, (2) early, industrial, or combustion

COMPETENCIES AND STATUS A software developer’s open source activities serve as a signal to prospec- tive employers that the developer has a certain collection of competencies

the majority of children will respond to the intracutaneous injection of influenzal vaccine by increasing the amount of serum antibodies at least four times over the

The suitable concentration of silicone quaternary microemulsion for mixing in the investigated formulation was 1%w/w since it provided the highest satisfaction of

Experiments were designed with different ecological conditions like prey density, volume of water, container shape, presence of vegetation, predator density and time of