A FRAMEWORK FOR PROVISIONING OVERLAY ... - Semantic Scholar

3 downloads 0 Views 96KB Size Report
nodes (i.e. gateway nodes) in the system responsible for ... Nodes labeled T and F refer to gateway ... vertexSet = vertexSet ∪ {n2}, add edge e to G′.
A FRAMEWORK FOR PROVISIONING OVERLAY NETWORK BASED MULTIMEDIA DISTRIBUTION SERVICES Dewan Tanvir Ahmed and Shervin Shirmohammadi Distributed and Collaborative Virtual Environment Research Laboratory School of Information Technology and Engineering, University of Ottawa, Canada {dahmed, shervin}@discover.uottawa.ca ABSTRACT In this paper, we present a graph-theoretic framework for provisioning overlay network based multimedia distribution services to a diverse set of receivers. Considering resource limitations and exploiting geographical positions, it greedily constructs degree-constrained minimum-cost connected graph to manipulate the topology to a significant extent by selecting mesh neighbors and changing the metrics. Data delivery paths and forwarding nodes are chosen using the dominating set. The minimal cardinality of the dominating set reduces the system’s dependency on end-hosts. Simulation is used to demonstrate that the framework is more robust and responsive to tree partitions and suitable for multi-source multimedia applications.

1. INTRODUCTION Multimedia entertainment over the Internet has gained interest in recent years due to the pervasiveness of inexpensive broadband links. Bandwidth intensive group applications have now become practical for home users using overlay network as an alternative to overcome the functionality limitations (e.g., lack of QoS, multicast support) of the Internet. The key idea of overlay networks is to form a virtual network on top of the physical network so that overlay nodes (peers) can be customized to incorporate complex functionality without modifying native routers. Such overlay framework for multimedia applications should consider different issues relating to the application domain such as potential group size, member’s volatility and mechanisms to control their behavior, as well as pragmatic aspects like the heterogeneity of the peers. Unfortunately, the deployment problems of IP multicast [1] have hindered its usage on the wider Internet. Therefore, an alternative has been proposed to move multicast support from core routers to end systems. Application layer multicast (ALM) is a form of overlay network and overcomes the functionality limitations of IP multicast [2] which is the most efficient way to perform group data distribution. The popularity of

ALM is growing in different interesting fields as an alternative to native IP multicasting such as news group, video conferencing, internet games, internet jukebox, distant learning, and video on demand just to name a few. In this paper, we present a graph-theoretic framework for provisioning overlay network based multimedia distribution services to a diverse set of receivers by incorporating the features of dominating set. Our framework reduces the system’s dependency on end-hosts by minimizing the forwarding node set. It starts in a centralized fashion and constructs an efficient overlay structure in terms of the underlying physical topology: first, it uses a heuristic algorithm to construct a degree-constrained minimum-cost connected graph. Thereafter, a dominating set is determined which spans all members. The minimal diameter as compared with other approaches justifies its significance. The rest of the paper is organized as follows. Section 2 gives a brief literature review. Our novel architecture, called Dominating Set based Application Layer Multicasting (DSALM), is portrayed in Section 3 while in Section 4, we analyze simulation results. Finally, we draw the conclusion in Section 5. 2. LITERATURE REVIEW There been significant research activities in ALM-based protocols. Yusung et al. [3] exploited landmarks to construct topologically aware data paths among multicast group members. It partitions the members into topologically aware clusters based on the ordering of their close landmarks. Fastcast [4], an efficient peer-to-peer application, is a root based, online, and topology-aware ALM. It is controlled by a parameter, and by changing the parameter, it is possible to tradeoff between used traffic and the worst-case length of the application layer path. DSALM considers resource limitations of the end-hosts and constructs a mesh which is more robust and responsive to tree partitions and more suitable for multi-source applications. Yoid [5] defines a protocol for building a multicast tree using the distributed end hosts. It uses hop count as a measure of distance. Guo et al. proposed a solution to deal with the problem of disruption in live video

streaming to a group of clients [6]. Video continuity is maintained using a combination of time-shifted streams at the server and video patching. Both techniques demand high bandwidth not only from the server but also from the end users. DS-ALM considers the out-degree of each node. Hence, user does not face the scarcity of bandwidth after joining the session. Minimum Spanning Tree (MST) and Shortest Path Tree (SPT) routing algorithms can be modified to respect the degree constraint of each node. The problem of finding degree-constraint minimum-cost multicast trees or degreeconstraint Steiner trees is NP-complete [8]. There exist several heuristic approximation algorithms addressing this problem [9]-[12]. Though there has been some research with regards to constructing multiple trees on a shared graph [13], they only provide a bound on the worst case (maximum) degree of any node as opposed to guarantees on the individual maximum degree for every node which is required for a protocol supporting multi-source applications. DS-ALM is specifically designed for multi-source communication. It has low dependency on other end-hosts as it uses minimum number of forwarding nodes for manyto-many applications like videoconferencing. 3. DS-ALM: GROUP COMMUNICATION PROTOCOL In this paper, we present an effective ALM mechanism for multi-source communication. 3.1. Node registering To create an improved overlay, we assume every joining node registers to a central rendezvoused point, i.e. the coordinator or the master. While registering to multicast session, every node passes some information to the master to construct an efficient overlay. These include node’s identity, maximum dedicated bandwidth for the multicast session and physical location in the geographical system. 3.2. Mesh construction The master works as a mediator in DS-ALM and constructs a mesh based on the geographical position. Instead of using end-to-end delay or hop count, geographical position acts as an alternative to perceive physical distance. It lowers the communication overhead while constructing the mesh. It first maps bandwidth to degrees considering the node’s dedicated bandwidth for the multicast session. The master determines node’s fan-out/degree using the following relation where b stands for the bandwidth needed to serve each client: degree=⎣uploadBW/b⎦. If we allow each node to choose the closest nodes as its neighbor, the resultant graph may be disconnected. To avoid this, we apply a heuristic approach to construct

degree-constrained minimum-cost connected mesh. The objective of this construction is to determine the edges to form a connected mesh subject to the degree constraints while optimizing (minimize) the total distance. At the first phase, considering a completely connected graph, the master sorts the edges in ascending order. It greedily selects N-1 edges (N is the # of nodes) to span all members. This policy ensures a connected graph, in fact a tree according to our algorithm. Next step is to include as many edges as possible to form a mesh while obeying degree constraint and greedily optimizing overall distance. The pseudo code for degree-constrained minimum-cost connected mesh is given in Figure 1 (trivial operations are ignored). Function Degree-Constrained MinCost Connected Mesh begin sort edges of E in ascending order e = minHeap(E) // Let e = Edge(n1,n2) add edge e to G′, vertexSet = {n1,n2} while(|vertexSet | != N) //N: total # of nodes begin e = minHeap(E) if (n1∈vertexSet ⊕ n2∈vertexSet) begin if (n2∉vertexSet and n1.freeDegree>0) vertexSet = vertexSet ∪ {n2}, add edge e to G′ elseif (n1∉vertexSet and n2.freeDegree>0) vertexSet = vertexSet ∪ {n1}, add edge e to G′ end update data structure end greedily add as many edges as possible to G′ subject to degree constraints end

Figure 1. Algorithm 3.3. Data delivery paths Scalable and efficient data delivery path construction for ALM poses hard challenges. Abstracting the view of the network as graph model offers the ability to use the full arsenal of algorithms and concepts that are well known from graph theory. Dominating set based routing is an interesting approach in this respect. In graph theory, a dominating set for a graph G = (V, E) is a subset V′ of V such that every vertex not in V′ is joined to at least one member of V′ by some edge. Let undirected graph G = (V, E) be constructed using the above approach (Section 3.2). We define two sets: open neighbor set (ONS) and close neighbor set (CNS). Mathematically, ONS and CNS sets of a vertex v∈V are represented by N(v)={u|(v,u)∈E} and N[v]=N(v)∪{v} respectively. The next task is to reduce overall dependency on nodes to increase the system’s durability. The following marking approaches are carried out to determine the core nodes (i.e. gateway nodes) in the system responsible for data forwarding. Nodes labeled T and F refer to gateway and non-gateway nodes, respectively. Initially, it assigns F

to each v∈V. The logic alters the marker m(v) to T, if there are two unconnected neighbors of v. The graph G′⊆G is induced by V′ where V′ = {v | v∈V, m(v)=T}. However, the dominating set constructed in this way is not minimal. Subset relation is one of the ways to reduce its cardinality, so the next two steps are carried out to reduce its cardinality: Rule 1: Consider two vertices u and v in G′. If N[v]⊆N[u] in G, change the marker of v to F if node v is marked, i.e. G′ becomes G′ - {v}. Rule 2: Assume u and w are two marked neighbors of a marked vertex v of G′. If N(v)⊆N(u)∪N(w) in G, then change the marker of v to F, i.e. G′ becomes G′ - {v}. We do not consider node ids (key) in rules 1 & 2 when it is carried out centrally. Thus we have to redefine the rules when the multicast session starts to handle late comers and early departures. It can be proved that, (a) If G is connected but not completely connected, then V′ forms a dominating set of G, (b) The induced graph G′ is connected; (c) The shortest path between any two nodes does not include any non-gateway node [14]. Figure 2 presents an example to construct a connected dominating set. Once the connected dominating set is constructed, it shows the core nodes responsible for data forwarding. The master only sends the list N[v] and their labels (gateway/non-gateway) to each node v∈V. 0

4

0 2

1 6

5

3 4

7

(a) Initially all nodes are non-gateway

6

5

4

5

3 7

(b) A node becomes gateway if it has two unconnected neighbors

0 1

2

1

0 2

3

6 7 (c) Rule-1

Non-gateway node

1 4

5

2

3

6 7 (d) Rule-2

Gateway node

Figure 2. Connected dominating set Dominating set is largely used in distributed systems but here we first apply it centrally. Once the initial data delivery paths and forwarding nodes are determined, it then handles most of the node departures in distributed manner. A unique identification number is necessary to avoid wrong labeling to incorporate latecomers. In the mesh-first approach, members keep a connected mesh topology among themselves. Usually the source is chosen as a root and a routing algorithm is run over the mesh relative to the root to build the tree. This mesh topology is explicitly created at the beginning, hence it is known. On the other hand, the resulting tree topology is unknown. So the quality of the tree depends on the quality of the mesh chosen. To make the system functional, each node exchanges neighbor lists only with its neighbors. This makes the system simple and reduces control overhead. Another key point for loop free routing is the route activation message initiated by each

source. When a node receives more than one activation message originated from a source it keeps one and ignores the others, denoted as ignore set I(v). The routing policy is simple, if a non-gateway node receives a packet it does not forward it to others. But if a gateway Node u receives a packet from Node v, it forwards it to w∈F where F = N(u) – N(v) – I(u). 3.4. Handling the ad hoc nature of the nodes One of the hard tasks of ALM is to handle latecomers and early departers. In the following subsections, we present simple yet effective mechanism to deal with such situations. Proxy-based ALM is a realistic solution for overlay multicast. Practically, a single server is incapable of handling large systems and hence to increase resources, proxies are essential. DS-ALM consists of single master and multiple proxies. New comers send JOIN_REQ to the master. The master determines neighbor list based on requester’s location and available bandwidth and let it join in the session. When the system is operational, changing the overlay structure is expensive. This is because the topology reformation is impractical and synchronous communication may be torn down. Thus, we consider minimal reformation to accommodate late comers. Once a new user joins the system, the dominating set may change. One of the big advantages of using the dominating set is its distributed property. Each node independently determines its type (gateway or non-gateway) by only exploiting its neighbor set. A unique identification number (i.e. key) is essential to avoid a disconnected dominating set. The modified rule 1 and rule 2 are as follows. Rule 1′: Consider two vertices u and v in G′. If N[v]⊆N[u] in G and key(v)