Scalable Content-Based Publish/Subscribe Services over Structured Peer-to-Peer Networks

Size: px
Start display at page:

Download "Scalable Content-Based Publish/Subscribe Services over Structured Peer-to-Peer Networks"

Transcription

1 Scalable Content-Based Publish/Subscribe Services over Structured Peer-to-Peer Networks Xiaoyu Yang Department of ECECS University of Cincinnati Yingwu Zhu Department of CSSE University of Seattle Yiming Hu Department of ECECS University of Cincinnati Abstract The scalability has remained a challenge in the design of distributed publish/subscribe systems. In this paper we propose a novel solution to address this problem in contentbased pub/sub systems on top of Distributed Hash Table. The main objective is to ensure an appropriate amount of rendezvous point nodes in the system, as well as maintain an even load distribution among them. An attribute-vector based publish/subscribe scheme and related load balancing mechanisms (ID space partitioning, attribute grouping, dynamic ID space split-merge) are proposed to achieve this goal. The experimental results show that our approaches can achieve a good scalability by efficiently distribute/balance load among an adaptive quantity of rendezvous point nodes, while retaining very small overhead and latency. 1. Introduction The publish/subscribe system has become a prevalent paradigm for delivering data/events from publishers (data/event producers) to subscribers (data/event consumers) across large-scale distributed networks in a decoupled fashion. In such a system, subscribers register their interests to the system using a set of subscriptions. The publishers can be completely unaware of the subscribers and simply submit information to the system using a set of publications. Once receiving a publication, the system matches it to the subscriptions and then delivers it to the interested subscribers. Currently, the designs of pub/sub systems can be typically classified into two classes: topic-based and content-based. Topic-based pub/sub systems need to predefine a set of topics. A subscriber registers a set of topics in which it is interested and then will be notified of all of the events associated with these topics. Relatively, contentbased pub/sub systems allow users to flexibly specify complex interests with a set of predicates over the content of the publication [5]. Pub/sub systems can be either centralized or distributed. The centralized solution lacks scalability and suffers from single point of failure. Hence, the distributed solutions are more practical and preferred. The distributed hash table (DHT [14, 12, 19, 11]) paradigm is appropriate for building large-scale distributed applications due to its scalability, fault-tolerance and self-organization. As a result, many pub/sub systems [7, 4, 17, 16, 15, 9, ] have been built on top of DHTs. Peers in the system cooperate in storing subscriptions and delivering events in a fully distributed manner. The main challenge in the implementation of DHTbased pub/sub systems involves the design of an efficient, light-weighted event delivery algorithm and a uniform distribution of load among the peers. Previous work in our group has introduced a novel framework Ferry [2] for building content-based pub/sub services on top of a DHT. It exploits the embedded trees in the DHT to aggregate and deliver events from the rendezvous point (RP for short) nodes. Such a design can efficiently eliminate the cost in construction and maintenance of the dissemination trees. However, as an initial stage, Ferry could only adopt a small set of peers to be RP nodes. That is, for a pub/sub schema with n attributes, the maximum number of RP nodes is n. This restriction impacts the scalability of Ferry in large distributed networks, as the limited RP nodes can be easily overloaded. In this paper we present an enhanced solution, called Eferry, to address this problem. The basic idea is to maintain a suitable quantity of RP nodes in the system, as well as keep an even load distribution among them. Eferry achieves this goal from a few aspects: (1) we propose a novel subscription installation algorithm to choose certain RP nodes which are evenly distributed in the ID space. (2) The ID Space Partitioning and Attributes Grouping schemes are designed to flexibly adjust the amount of RP nodes as well as their load. (3) Eferry adopts a self-adaptive load balancing algorithm Dynamic ID Space Split-Merge to make sure that

2 no node is unduly loaded. Another contribution of this paper is an optimization of the previous event delivery mechanism by considering RP nodes as a special category of subscribers, which makes event publication more flexible and convenient. A cache and delay mechanism is also proposed to further aggregate event messages and reduce bandwidth usage. The performance of Eferry has been extensively evaluated using the metrics of load distribution, overlay hops, latency, overhead and bandwidth. The results show that a good scalability can be achieved by effectively distribute/balance load among the adaptive number of RP nodes, while retaining very small overhead and latency. The rest of this paper is structured as follows. Section 2 gives a survey of related work. Section 3 describes the key features of our design. Section 4 discusses load balancing issues. In section 5, experiments and results are presented and discussed. Finally, section 6 is the conclusion and future work. 2. Related Work Compared to the topic-based systems (e.g. ISIS [2] and IBus [8]), content-based pub/sub systems are preferable, because they give subscribers the flexibility to specify more complex interests with a set of predicates over the entire content of the publication. The events whose content satisfies all the specified predicates are notified to the corresponding subscribers. As a result, subscriptions are more expressive but the system is harder to implement. Many content-based pub/sub systems are based on a spanning tree of all brokers (e.g. SIENA [3], Gryphon [1]). However, such a spanning tree is not feasible when the system involves a large number of brokers that join and leave system dynamically. In addition, the overhead on brokers is so high that it may limit the system scalability and impose uneven load among nodes. Structured P2P systems, such as Chord [14], Pastry [12], Tapestry [19], and CAN [11], use distributed hash table to construct the overlay network and provide more efficient lookups. Many attempts have been made to design a P2Pbased pub/sub system [16, 17, 15, 9, 4,, 13, 21, 7]. Scribe [13] and Bayeux [21] are topic-based pub/sub systems built on top of Pastry and Tapestry respectively. They can not directly support content-based pub/sub services. Tam et al. [15] built a content-based pub/sub system from Scribe. However, their system still suffers from some restrictions on the expression of subscriptions. Terpstra et al. [16] presented a content-based pub/sub system on top of Chord. In order to make the system function correctly, it needs to maintain the invariants for filters, which is inefficient in case of frequent node join and departure. Triantafillou et al. [17] also built a content-based pub/sub system on top of Chord. The main drawback of their system is that subscription installation/update will involve a large number of nodes and messages, which is very expensive in distributed environment. Reach [9] and HOMED [4] are content-based pub/sub systems built on top of a P2P overlay, which maintain the high-level semantic relationships. They have a load balancing problem since unevenly distributed subscriptions will cause unevenly distributed nodes in the overlay id space. Meghdoot [7] is based on CAN. Considering the skewed distribution of real applications, it addresses the load balancing issue by zone splitting replication. The main limitation is that the overlay s dimension is proportional to the number of event attributes, which limits the scalability. Our earlier work Ferry [2] presented an architecture for content-based pub/sub services built on top of Chord. It exploits the embedded trees in DHT structure to deliver events so that cost in construction and maintenance of the dissemination trees can be eliminated. However, Ferry can only use a small set of RP nodes, which may cause a serious scalability concern for large-scale networks. The attribute partitioning [18] scheme can not effectively alleviate this problem, considering the very limited number of RP nodes it can introduce and the high overhead on subscription installation/update. In this paper, we propose an enhanced solution Eferry to pursue the expected scalability and uniform load distribution. Other work of this paper include an optimization of the event delivery mechanism in previous Eferry, and a cache & delay send algorithm which can further aggregate event messages and reduce bandwidth usage. 3. System Design In this section, we present the design of Eferry. First, we give a brief description of the content-based pub/sub model, as well as the representation of events and subscriptions. Next, we describe the subscriptions installation and events delivery mechanisms as mentioned in the introduction Pub/Sub Model in Eferry To be coherent with Ferry, the pub/sub model is still illustrated based on the pub/sub schema proposed by Fabret et al. [5], which is defined as: = {A 1, A 2,..., A n }, where each A i represents an attribute. In this scheme, an attribute consists of a name, a type and a domain, and can be described by a tuple [name : type, min, max]. An event is a set of equalities on attributes in schema, e.g. e = {..., A i = c i,...}, where A i and c i is a domain value of A i. A subscription is a conjunction of predicates which can specify a constant value or a range for the attribute using common operators ( =, >,, <,, and etc.). For a string

3 attribute, the predicate can also specify a regular expression with the operator. A subscription example is s = {(A i = v i ) (v j1 < A j v j2 ) (A k / (dog cat bird)[a Z 9] /i/)}. An event e matches a subscription s if and only if each predicate of s is satisfied by the value of corresponding attribute contained in event e. In this paper, we introduce two new definitions: Attribute Set and Attribute Vector, which are important in Eferry s implementations. The attributes set attr set of an event e (or subscription s) is a set containing the names of all attributes appeared in e or s. An attributes vector attr vec is a lexicographically ordered list of the elements in attr set Subscription Installation In a pub/sub system, the subscription installation deals with the issue of efficiently storing subscriptions. For this purpose, Eferry provides an efficient, attribute-vector based subscription installation algorithm. In this algorithm, each subscription has a unique subid composed of subscriber s nodeid and an internalid 1. Given a subscription s, an attribute vector attr vec is first extracted from s, then a key k is produced by hashing the attribute vector attr vec. So subscription s with its subid will be stored on the node which is an immediate successor of k. Algorithm 1 briefly describes the procedure of subscription installation. Algorithm 1 subscribe (Subscription s) 1: internalid generate an internal ID for this subscription 2: register internalid and s in the local repository 3: subid (nodeid, internalid) 4: attr set extract attribute names from s 5: attr vec sort elements in attr set into lexicographic order 6: k hash(attr vec) 7: R lookup(k) 8: R.sub register(subid, s) {remote procedure call on node N} The consistent hash function and the underlying DHT protocol ensure that keys are evenly distributed among different peers. Compared to the schemes that only hash one attribute (RndRP & PredRP [2]), our attribute-vector based algorithm has two distinct advantages: (1) Since the attribute vector is hashed, adequate RP nodes (maximumly 2 n 1, given a schema with n attributes) can be formed. The load (storing, matching, delivering) per RP node will be significantly decreased. (2) Since one RP node stores subscriptions with the same attribute set, the subscription management becomes more convenient. Some local optimization and index mechanism can therefore be easily implemented to optimize event matching. However, it should be pointed out when the pub/sub schema has few attributes, the above attribute vector based scheme cannot significantly improve the scalability (since n is small). We have developed a novel load-balance 1 internalids are positive integers used to identify different subscriptions of the same subscriber; The numbers that have not been used for a long time can be subtly reused. mechanism, called IDSpace Partitioning (discussed in section 4.1), to address this problem. In algorithm 1, a subscriber invokes hash() and lookup() functions to get the RP node R. Next, it remotely invokes the procedure sub register on node N to register its subscription s with the related subid. It takes O(log N) overlay hops for lookup() to locate the RP node, where N is number of nodes in the system. In Eferry, a RP node organizes all subscriptions stored on it into m buckets based on the subscribers nodeids, where m is the number of bits of ID space. Subscriptions with subid.nodeid [k + 2 i 1, k + 2 i ) will be put into bucket[i] (all arithmetic is modulo 2 m ), where k is the hash value of the attribute vector and 1 i m. Each bucket maintains a summary filter [18], and only the events accepted by filter can continue their matching process. Moreover, indexes are created and maintained in a bucket to facilitate event matching. The details of indexing will not be discussed in this paper. Algorithm 2 outlines the subscription registration process on a RP node. Note that more than one attribute vectors might be stored on a RP node. In this case, vectors are managed individually, with the RP node regarded as a few virtual nodes. Algorithm 2 sub register (SubID sid, Subscription s) Require: bucket[1..m] {store subscriptions in a bucket based on the subscriber s nodeid} 1: k hash the attribute vector extracted from s 2: i log 2 (sid.nodeid k) (mod 2 m ) + 1 3: put (sid, s) in bucket[i] 4: update summary filter of bucket[i] 5: update other relative data structures Although consistent hash function can guarantee a uniform distribution of attribute vectors among peers, the load on different RP nodes may still not be well balanced due to the skewness of real world data. The RP nodes of hot attribute vectors tend to be unduly loaded. A dynamic load balancing mechanism, called Dynamic ID Space Split- Merge, is presented in section 4.3 to deal with this issue. In Eferry, a subscriber can unregister or renew its subscriptions by sending a simple message only with subids to the corresponding RP nodes. The message does not need to include any content of the subscriptions, which can reduce the bandwidth usage Event Publication and Delivery When an event is generated, the pub/sub system gets all matching subscriptions and delivers the event to corresponding subscribers. Our earlier work [2] presented an efficient event delivery algorithm that aggregates and delivers event messages along DHT links. In this paper, we give an improved event publication and delivery mechanism. First, by treating RP nodes as special subscribers, the

4 event publication is combined into the event delivery process. Second, cache&delay send mechanism is introduced to further aggregate event messages in a short time period. Algorithm 3 publish (Event e) 1: internalid generate an internal publish ID 2: pubid (this node sid, internalid) 3: subidlist { } 4: attr set extract attribute set of s 5: for each non-empty attribute set a s attr set do 6: a v sort a s into lexicographic ordered vector 7: k hash(a v) 8: sid (k, ) 9: subidlist.pushback(sid) : end for 11: Message M (pubid, e, subidlist) 12: route message(m) Each publication has a pubid, composed of publisher s nodeid and an internalid 2. The event publication procedure is as follows: Given an event e, attribute set attr set is firstly extracted from e. For each non-empty subset of attr set (including attr set), an attribute vector is produced and a key k is generated by hashing the attribute vector. A special subid is generated by using k as subscriber s nodeid and as internalid. Then, an initial subidlist pointing to the related RP nodes is created on the publishing node. Finally, an event message, composed of pubid, e, and subidlist, is send to route message module for processing and routing. Algorithm 3 outlines this procedure. It should be noticed that if the pub/sub schema has too many attributes, so might the event, a long initial subidlist will be generated, which can cause event publication inefficient. Attributes Grouping mechanism will be discussed in section 4.2 to address this problem. Above event publication process does nothing but generate the subidlist, in order to initialize the event message processing and delivery. The route message process can be divided into two phases. The first phase is event processing and matching. The event and its subidlist are firstly extracted from the message. If there are subids targeting the current node, the event is either sent to the local application/user (the current node is a subscriber of the event), or matched with the subscriptions stored on this node (the current node is a RP node related to this event). The event matching returns a list of matched subids, which is then merged with the remainder of the old subidlist (all subids targeting the current node have been removed) to generate a new subidlist for event delivery. The second phase deals with event delivery, which is inherited from Ferry. By exploring DHT links, subidlist is divided into some subidlists based on their targeting node ID. All subids with targeting nodes sharing a common DHT link are put into the same list, according to Chord s routing protocol. The message carrying the subid list is then delivered through the corresponding DHT link. This mechanism 2 pubids are used to identify events in the system, so internalid in pubid can be reused after a sufficient time period Algorithm 4 route message (Message M) Require: nid is this node s ID Require: event match(e) matches event e with subscriptions stored on current node, returns matched subidlist 1: pid extract pubid from M 2: e extract event from M 3: i subidlist extract subidlist from M 4: o subidlist {} { initialize to empty} 5: while i subidlist is not empty do 6: sid pop a subid from i subidlist 7: if sid.internalid = && successor(sid.nodeid) = nid then 8: matchidlist event match(e) 9: i subidlist i subidlist + matchidlist : else if sid.internalid && sid.nodeid = nid then 11: deliver e to local application 12: else 13: push sid to o subidlist 14: end if 15: end while 16: 17: if event e is not in the event buffer then 18: allocate buffer for event e, identified by pid 19: init RT entry sidlist[1..k] for event e, corresponding to Chord s k neighbor nodes in routing table 2: setup timer to call deliver event(pid) 21: end if 22: 23: for each sid o subidlist do 24: find neighbor node N j whose node ID is equal to or immediately precedes sid.nodeid 25: put sid into RT entry sidlist[j] 26: end for can efficiently aggregate the event messages and reduce the network bandwidth usage. Eferry enhances the delivery scheme by introducing a novel cache&delay send mechanism (algorithm 4, lines 17-21), which can cache incoming messages for a short time, to further aggregate the messages carrying the same event but different subidlist. The total number of messages is therefore reduced with the overhead of a slight increase in average event delivery latency. Algorithm 5 deliver event (PubID pid) 1: locate event e in the events buffer by pid 2: for i = 1 to k do 3: if RT entry sidlist[i] is not empty then 4: Message M (pid, e, RT entry sidlist[i]) 5: N j.route message(m) 6: end if 7: end for 8: remove event with P ubid = pid form event buffer Algorithm 4&5 outline the procedure of event message processing and routing. Two distinct features of Eferry s event publication and delivery algorithms are: (1) By treating RP nodes as special subscribers, the event publication process is integrated with the event delivery process, which is applicable to the cases with a large number of RP nodes. (2) cache&delay send mechanism can reduce the bandwidth usage by further aggregating messages. 4. Load Balancing An important issue in the distributed system is load balancing. As discussed in section 3.2 and 3.3, Eferry needs to solve the following load balancing problems:

5 If the pub/sub schema has few attributes, there is only a small amount of overloaded RP nodes in the system, which impacts the system scalability. If pub/sub schema has too many attributes, there will be a large amount of underloaded RP nodes in the system, which will cause event publication inefficient. Due to the skewness of real world data, load distribution on different RP nodes is not well balanced. The RP nodes with hot attribute vectors may be unduly loaded Dynamic ID Space Split-Merge ID Space Partitioning and Attribute Grouping schemes ensure that the pub/sub system has an appropriate number of RP nodes. However, the data from real world tend to be skewed, so RP nodes holding popular/hot attribute vectors may be overly loaded. In this subsection, a dynamic load balancing approach is proposed to address this problem. In this section, three load balancing schemes, called ID Space Partitioning, Attributes Grouping, and Dynamic ID Space Split-Merge, are proposed to address these problems respectively ID Space Partitioning Let m be the number of bits in the key/node identifiers, the ID space can be partitioned into 2 n parts by regarding the highest n bits of the identifier as the partition number. When a node registers a subscription s in the system, a key k is first generated by hashing the attribute vector extracted from s. Then a new key k is calculated as (arithmetic is modulo 2 m ): x = (2 n 1) (m n) k = subscriber s nodeid & x + k & ( x) highest n bits of sub s nodeid lowest m n bits of k The subscription is installed to the node which is the successor of k along the Chord ring. When an event is published, for each hashed key k, 2 n keys are generated by substituting the highest n bits with a partition number p [.. 2 n 1] respectively. With this mechanism, the number of RP nodes is expected to be augmented by a factor 2 n. However, the value of n should be carefully budgeted, since excessive RP nodes will cause event publication inefficient Attributes Grouping Too many attributes in the pub/sub schema will introduce excessive, underloaded RP nodes. By grouping the relatively unpopular attributes, a large number of underloaded RP nodes can be merged into a few nodes. For example, given a pub/sub schema S = {A 1, A 2,..., A 2 }, it has 2 attributes. By default, excessive RP nodes, up to (2 2 1), might be introduced to the system. If the unpopular attributes can be grouped together, say S = {A 1, A 2,..., A 6, G 1(A7,...,A 14 ), G 2(A15,...,A 2 )}, attributes in the same group is replaced by a compound attribute in the attribute vector. As the result, the redundant underloaded RP nodes are efficiently merged, and there are only up to (2 8 1) RP nodes in the system. Figure 1. ID Space Split Merge As illustrated in figure 1, given an attribute vector att vec, all related subscriptions will be stored on node N, the successor node of key k = hash(attr vec) on the Chord ring. When att vec is becoming hot, more and more subscriptions will be stored on N, which will cause N overloaded. A load balancing mechanism is needed to offload part of the subscriptions on node N to other nodes. Recall that subscriptions on RP nodes are stored into m buckets according to the subscriber s node ID, where m is the number of bits of ID space. Subscriptions with subscriber s nodeid in [k + 2 i 1, k + 2 i ) are stored in bucket[i]. By moving subscriptions in bucket[m] to node A, which is the successor node of key k + 2 m 1, the ID Space is divided into two half: the subscriptions with subscriber s node ID in [k, k + 2 m 1 ) are stored on node N, while subscriptions with subscriber s node ID in [k + 2 m 1, k) are transferred to node A. Therefore the load on node N is significantly reduced. Here node A is an auxiliary node to node N. Any new subscriptions whose node ID in [k + 2 m 1, k) will also be forwarded to node A. When an event matches the summary filter of bucket[m], N will put a special subid (k + 2 m 1, ) to the matched subidlist, so A can receive this event in next hop and match it with the subscriptions stored on it. This splitting procedure can be further invoked, as illustrated in figure 1, if N and A are still overloaded. The splitting can also facilitate event delivery, because the original long matched subidlist (for subscribers in [k +2 m 1, k)]) is replaced by a single subid = (k + 2 m 1, ) in the event message sent from N. Note that the subscription installation is slightly impacted by the additional hops introduced. ID space merging is the reverse procedure of splitting. The ID space is merged when load on these nodes reach a low threshold. For example, in figure 1, once load on the leaf auxiliary nodes B, C, and D is lower than a threshold,

6 they will periodically send a merging request to the corresponding upper layer node N or A. The upper layer nodes will give a positive response if their load is also low. How to determine the thresholds for splitting and merging is out of the scope of this paper. 5. Experimental Evaluation In this section, we evaluate the performance of Eferry through simulations. We start our discussion by describing the experimental setup and metrics used for evaluation. Then, the experimental results are presented Experimental Setup We built Eferry on top of P2PSim 3, a discrete-event packet level simulator. Currently, P2PSim can simulate many DHT protocols with various parameters. We use the Chord-PNS (proximity neighbor selection) protocol and its default parameter configurations. The network model in our simulation is derived from the King dataset 4, which includes the pairwise latencies of 24 DNS servers in the Internet measured by King method [6]. The average RTT of the simulated network is 198ms. The schema used in our simulation was derived from a stock quotes model proposed in Meghdoot [7]. The definition of the schema is as follows: = Symbol : STRING [aaa, zzzzz] High : FLOAT [,.] Low : FLOAT [,.] Open : FLOAT [,.] Close : FLOAT [,.] V olume : INTEGER [, 3] Date : STRING [2/Jan/98, 31/Dec/4] Each attribute in schema is assigned a popular degree, which indicates the probability with which the attribute will show up in a subscription. The values of popular degrees used in our simulations are described as follows: {p(symbol) = 95%; p(high) = %; p(low) = %; p(open) = 45%; p(close) = 3%; p(volume) = %; p(date) = 5%}. We use stocks in the simulation. Subscriptions are generated based on the attributes popular degrees and some predefined templates as proposed in [7]. Events are randomly generated and the interarrival times of events are exponentially distributed with average value of 12s. A set of cost metrics are used to evaluate the performance of Eferry: (1)latency: the average time of delivering an event to all corresponding subscribers; (2)overlay hops: the average overlay hops of delivering an event to its subscribers; (3)overhead: the ratio of the number of intermediate nodes to the number of subscribers per event delivery; (4)bandwidth cost: the ratio of total bandwidth consumption to the number of nodes involved per event delivery. The message size in the simulation can be derived from the following assumptions: 2 bytes for header, byte for events, 6 bytes for pubid, and 6 bytes for each subid. In addition to these common performance metrics, we also evaluate the load distribution among RP nodes Experimental Results We evaluated the performance of Eferry through detailed simulations. Due to space limitation, we only show part of the results in this section. We first present results for a 24-node network with inter-node latencies derived from 24 DNS servers., subscriptions and 115, events are used in the simulation. The average number of subscribers per event is. Figure 2 illustrates the distribution of events with Percentage of events Percentage of events (,] (,15](15,2](2,25](25,3] >3 Latency ( ms) (,1] (1,1.5] (1.5,2] (2,2.5] (2.5,3] >3 Overhead Percentage of events Percentage of events (,2] (2,2.5] (2.5,3] (3,3.5] (3.5,4] >4 Overlay hops (,35] (35,](,45](45,](,55] >55 Bandwidth (bytes/node) Figure 2. Distribution of events with respect to latency, overlay hops, overhead, and bandwidth cost. respect to latency, overlay hops, overhead, and bandwidth cost respectively. About 87% of events can be delivered to all corresponding subscribers within 2ms, and the average delivery latency per event is ms. 88% of events can be delivered via 3 4 overlay hops, with an average of 3.6 hops. The average bandwidth cost and overhead are.45 bytes/node and 1.23 per event respectively. The results show that Eferry can efficiently deliver events to corresponding subscribers with small bandwidth cost and latency, which implies that although more RP nodes are introduced by our attribute-vector based scheme, the performance of the event delivery has not been negatively impacted. Figure 3 shows the performance of Eferry with various number of subscribers (per event). As the number of subscribers increases from % to % of the total number of nodes in the system, the overlay hops keep approximately constant around 3.59 and the average latency has a slight increase from ms to 1.12ms. The bandwidth cost has a reasonable increase from.45 to (bytes/node) and the overhead drops from 1.23 to.4. The results show

7 Overhead Latency(ms) % 2% 3% % % % % % Overlay hops Bandwidth(bytes/node) % 2% 3% % % % % % Percentage of subscriptions Normal Attributes Grouping Grouping&ID Space Partition Grouping&Dynamic ID Space Split Nodes ranked by load % 2% 3% % % % % % 45 % 2% 3% % % % % % Figure 3. Performance with various percentages of nodes as subscribers per event (24 nodes,, subscriptions) that Eferry is scalable to a large number of subscribers in the system. The performance of cache&delay send mechanism is also evaluated. As shown in figure 4, with ms delay, the average bandwidth cost can be decreased from.45 to when the number of subscribers per event is small (% as subscribers); the bandwidth cost decreases from to when the number of subscribers per event is large (% as subscribers), while the latency has a slight increase of about 8ms. Here the bandwidth cost is per node and per event, so a reduction on bandwidth cost shown here will greatly reduce the bandwidth consumption of the whole system. The results show that given a small delay time, the cache&delay send mechanism can significantly reduce the bandwidth cost at the penalty of a slight increase of event delivery latency. Bandwidth cost (bytes/node) Bandwidth (% sub) Bandwidth (% sub) Latency (% sub) Latency (% sub) Delay time (ms) Figure 4. Effect of cache delay send mechanism The load balancing schemes are studied in a large size network of, nodes (derived from the 24-DNS server measurements) with, subscriptions. The load on a RP node is measured by the ratio of subscriptions stored on it to the total number of subscriptions in the system. Figure 5 shows the load distribution on RP nodes under different load balancing schemes. The nodes are sorted by the decreasing order of load, and only first nodes are plotted. Clearly, attribute vector based pub/sub scheme can introduce more RP nodes compared with single Latency (ms) Figure 5. Load distribution in the system attribute based scheme in ferry, so the average load per RP node is expected to be low. However, due to the skewness of data, load on these RP nodes is highly imbalanced. As depicted in Figure 5(the solid line), the maximum load is about 15.34% and there are also many underloaded nodes in the system. Attributes Grouping (unpopular attributes of volume, close, and date are grouped) can merge excessive underloaded nodes to several nodes, which will make event publication more efficient. As shown in figure 5, by attributes grouping, a large amount of underloaded (less than 1%) nodes are removed from the RP node set, whose load are transferred to the moderate-loaded nodes (ranked 3 to 16). Besides, ID Space Partition can further decrease the load on each node by introducing more RP nodes. With a partition factor of 2, the maximum load is decreased to 7.8%. Moreover, the load of RP nodes can be adaptively adjusted through Dynamic ID Space Split & Merge. As shown in Figure 5, the dynamic scheme combined with grouping achieves a well-balanced load distribution, with a threshold of subscriptions. By evaluating the performance of these load-balancing mechanisms with different partition factors and threshold values, our results show that appropriate combinations of these mechanisms can help maintain an adaptive quantity of RP nodes which are evenly loaded. Latency(ms) Overhead % 2% 3% % % % % % % 2% 3% % % % % % Overlay hops Bandwidth(bytes/node) % 2% 3% % % % % % % 2% 3% % % % % % Figure 6. Performance with various percentages of nodes as subscribers per event (, nodes,, subscriptions) Finally, we evaluate the performance of Eferry in the large network of, nodes, with various percentages

8 of nodes randomly chosen as subscribers. All three load balancing mechanisms are deployed. As shown in figure 6, when number of interested subscribers per event increases from % to % of the total number of nodes in the system, the overlay hops almost keep constant about The average latency has a slight increase from ms to ms. The bandwidth cost has a moderate increase from to (bytes/node), while the overhead drops significantly from 1.25 to.6. Results in figure 5 and 6 show that Eferry is scalable to a large network size. 6. Conclusion and Future Work In this paper we propose a novel approach to address the scalability problem in content-based pub/sub systems on top of DHT. The basic idea is to keep adequate rendezvous point nodes in the system, as well as maintain even load distribution among them. To achieve this goal, we have designed an attribute-vector based scheme and related load balancing mechanisms (ID Space Partitioning, Attributes Grouping and Dynamic ID Space Split-Merge). Moreover, an optimized event delivery mechanism and a cache and delay algorithm are proposed to facilitate event publication and further aggregate event messages. The experimental results show that Eferry can efficiently distribute/balance load among a suitable amount of RP nodes with very small overhead and latency. Moreover, Eferry can scale to a large number of subscribers and a large network size. Currently, Eferry can deal with node join/ departure/ failure. However, the performance of Eferry under high node churn rate has not been explored. This will be one of our future tasks. Also, we need to evaluate Eferry using real-world datasets, based on which more optimizations may be proposed. References [1] G. Banavar, T. Chandra, B. Mukherjee, J. Nagarajarao, R. E. Strom, and D. C. Sturman. An efficient multicast protocol for content-based publish-subscribe systems. In Proceedings of the 19th IEEE ICDCS, pages , [2] K. P. Birman. The process group approach to reliable distributed computing. Communications of the ACM, 36(12):36 53, Dec [3] A. Carzaniga, D. S. Rosenblum, and A. L. Wolf. Design and evaluation of a wide-area event notification service. ACM Transactions on Computer Systems, 19(3): , 21. [4] Y. Choi, K. Park, and D. Park. Homed: A peer-topeer overlay architecture for large-scale content-based publish/subscribe systems. In Proceedings of the third International Workshop on Distributed Event-Based Systems (DEBS), pages 2 25, Edinburgh, Scotland, UK, May 24. [5] F. Fabret, H. A. Jacobsen, F. Llirbat, J. Pereira, K. A. Ross, and D. Shasha. Filtering algorithms and implementation for very fast publish/subscribe systems. In Proceedings of the 21 ACM SIGMOD, volume 3, pages , Santa Barbara,CA, 21. [6] K. P. Gummadi, S. Saroiu, and S. D. Gribble. King: Estimating latency between arbitrary internet end hosts. In Proceedings of the 22 SIGCOMM Internet Measurement Workshop, Marseille, France, Nov. 22. [7] A. Gupta, O. D. Sahin, D. Agrawal, and A. E. Abbadi. Meghdoot: Content-based publish/subscribe over p2p networks. In ACM/IFIP/USENIX 5th International Middleware Conference, Toronto, Ontario, Canada, Oct. 24. [8] B. Oki, M. Pfluegl, A. Siegel, and D. Skeen. The information bus: an architecture for extensible distributed systems. In Proceedings of the fourteenth ACM SOSP, pages 58 68, Asheville, NC, Dec [9] G. Perng, C. Wang, and M. K. Reiter. Providing contentbased services in a peer-to-peer environment. In Proceedings of the third International Workshop on Distributed Event-Based Systems (DEBS), pages 74 79, Edinburgh, Scotland, UK, May 24. [] P. R. Pietzuch and J. Bacon. Peer-to-peer overlay broker networks in an event-based middleware. In Proceedings of the Second International Workshop on Distributed Event-Based Systems (DEBS), San Diego, CA, June 23. [11] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and Shenker. A scalable content-addressable network. In Proceedings of ACM SIGCOMM, pages , San Diego, CA, Aug. 21. [12] A. Rowstron and P. Druschel. Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In Proceedings of the 18th IFIP/ACM International Conference on Distributed System Platforms (Middleware), pages 329 3, Heidelberg, Germany, Nov. 21. [13] A. I. T. Rowstron, A.-M. Kermarrec, M. Castro, and P. Druschel. SCRIBE: The design of a large-scale event notification infrastructure. In Proceedings of the 3rd International Networked Group Communication, pages 3 43, 21. [14] I. Stoica, R. Morris, D. Karger, M. Kaashoek, and H. Balakrishnan. Chord: A scalable peer-to-peer lookup service for internet applications. In Proceedings of ACM SIGCOMM, pages 149 1, San Diego, CA, Aug. 21. [15] D. Tam, R. Azimi, and H.-A. Jacobsen. Building contentbased publish/subscribe systems with distributed hash tables. In Proceedings of the International Workshop on Databases, Information Systems and Peer-to-Peer Computing, Berlin,Germany, Sept. 23. [16] W. W. Terpstra, S. Behnel, L. Fiege, A. Zeidler, and A. P. Buchmann. A peer-to-peer approach to content-based publish/subscribe. In Proceedings of the Second International Workshop on Distributed Event-Based Systems (DEBS), San Diego, CA, June 23. [17] P. Triantafillou and I. Aekaterinidis. Content-based publishsubscribe over structured P2P networks. In Proceedings of the third International Workshop on Distributed Event- Based Systems (DEBS), pages 4 9, Edinburgh, Scotland, UK, May 24. [18] Y.-M. Wang, L. Qiu, D. Achlioptas, G. Das, P. Larson, and H. J. Wang. Subscription partitioning and routing in contentbased publish/subscribe systems. In Proceedings of the 16th International Symposium on Distributed Computing (DISC), Toulouse, France, Oct. 22. [19] B. Y. Zhao, J. D. Kubiatowicz, and A. D. Joseph. Tapestry: An infrastructure for fault-tolerance wide-area location and routing. Technical Report UCB/CSD , Computer Science Division, University of California, Berkeley, Apr. 21. [2] Y. Zhu and Y. Hu. Ferry: An architecture for content-based publish/subscribe services on p2p networks. In ICPP, pages IEEE Computer Society, 25. [21] S. Q. Zhuang, B. Y. Zhao, A. D. Joseph, R. H. Katz, and J. Kubiatowicz. Bayeux: An architecture for scalable and fault-tolerant wide-area data dissemination. In Proceedings of the Eleventh International Workshop on Network and Operating System Support for Digital Audio and Video (NOSS- DAV), June 21.

A Large-scale and Decentralized Infrastructure for Content-based Publish/Subscribe Services

A Large-scale and Decentralized Infrastructure for Content-based Publish/Subscribe Services A Large-scale and Decentralized Infrastructure for Content-based Publish/Subscribe Services Xiaoyu Yang, Yingwu Zhu 2 and Yiming Hu Dept. of Electrical and Computer Engineering 2 Dept. of Computer Science

More information

A Super-Peer Based Lookup in Structured Peer-to-Peer Systems

A Super-Peer Based Lookup in Structured Peer-to-Peer Systems A Super-Peer Based Lookup in Structured Peer-to-Peer Systems Yingwu Zhu Honghao Wang Yiming Hu ECECS Department ECECS Department ECECS Department University of Cincinnati University of Cincinnati University

More information

PUB-2-SUB: A Content-Based Publish/Subscribe Framework for Cooperative P2P Networks

PUB-2-SUB: A Content-Based Publish/Subscribe Framework for Cooperative P2P Networks PUB-2-SUB: A Content-Based Publish/Subscribe Framework for Cooperative P2P Networks Duc A. Tran Cuong Pham Network Information Systems Lab (NISLab) Dept. of Computer Science University of Massachusetts,

More information

A Large-scale and Decentralized Infrastructure for Multiple Queries Optimization and Aggregation

A Large-scale and Decentralized Infrastructure for Multiple Queries Optimization and Aggregation A Large-scale and Decentralized Infrastructure for Multiple Queries Optimization and Aggregation Xiaoyu Yang and Yiming Hu Department of Electrical and Computer Engineering University of Cincinnati, Cincinnati,

More information

A Self-Organizing Crash-Resilient Topology Management System for Content-Based Publish/Subscribe

A Self-Organizing Crash-Resilient Topology Management System for Content-Based Publish/Subscribe A Self-Organizing Crash-Resilient Topology Management System for Content-Based Publish/Subscribe R. Baldoni, R. Beraldi, L. Querzoni and A. Virgillito Dipartimento di Informatica e Sistemistica Università

More information

Meghdoot: Content-Based Publish/Subscribe over P2P Networks

Meghdoot: Content-Based Publish/Subscribe over P2P Networks Meghdoot: Content-Based Publish/Subscribe over P2P Networks Abhishek Gupta, Ozgur D. Sahin, Divyakant Agrawal, and Amr El Abbadi Department of Computer Science University of California at Santa Barbara

More information

A Chord-Based Novel Mobile Peer-to-Peer File Sharing Protocol

A Chord-Based Novel Mobile Peer-to-Peer File Sharing Protocol A Chord-Based Novel Mobile Peer-to-Peer File Sharing Protocol Min Li 1, Enhong Chen 1, and Phillip C-y Sheu 2 1 Department of Computer Science and Technology, University of Science and Technology of China,

More information

Should we build Gnutella on a structured overlay? We believe

Should we build Gnutella on a structured overlay? We believe Should we build on a structured overlay? Miguel Castro, Manuel Costa and Antony Rowstron Microsoft Research, Cambridge, CB3 FB, UK Abstract There has been much interest in both unstructured and structured

More information

Distributed Hash Table

Distributed Hash Table Distributed Hash Table P2P Routing and Searching Algorithms Ruixuan Li College of Computer Science, HUST rxli@public.wh.hb.cn http://idc.hust.edu.cn/~rxli/ In Courtesy of Xiaodong Zhang, Ohio State Univ

More information

Implications of Neighbor Selection on DHT Overlays

Implications of Neighbor Selection on DHT Overlays Implications of Neighbor Selection on DHT Overlays Yingwu Zhu Department of CSSE, Seattle University zhuy@seattleu.edu Xiaoyu Yang Department of ECECS, University of Cincinnati yangxu@ececs.uc.edu Abstract

More information

Athens University of Economics and Business. Dept. of Informatics

Athens University of Economics and Business. Dept. of Informatics Athens University of Economics and Business Athens University of Economics and Business Dept. of Informatics B.Sc. Thesis Project report: Implementation of the PASTRY Distributed Hash Table lookup service

More information

Architectures for Distributed Systems

Architectures for Distributed Systems Distributed Systems and Middleware 2013 2: Architectures Architectures for Distributed Systems Components A distributed system consists of components Each component has well-defined interface, can be replaced

More information

Early Measurements of a Cluster-based Architecture for P2P Systems

Early Measurements of a Cluster-based Architecture for P2P Systems Early Measurements of a Cluster-based Architecture for P2P Systems Balachander Krishnamurthy, Jia Wang, Yinglian Xie I. INTRODUCTION Peer-to-peer applications such as Napster [4], Freenet [1], and Gnutella

More information

Dynamic Load Sharing in Peer-to-Peer Systems: When some Peers are more Equal than Others

Dynamic Load Sharing in Peer-to-Peer Systems: When some Peers are more Equal than Others Dynamic Load Sharing in Peer-to-Peer Systems: When some Peers are more Equal than Others Sabina Serbu, Silvia Bianchi, Peter Kropf and Pascal Felber Computer Science Department, University of Neuchâtel

More information

A Fast and Robust Content-based Publish/Subscribe Architecture

A Fast and Robust Content-based Publish/Subscribe Architecture A Fast and Robust Content-based Publish/Subscribe Architecture Hojjat Jafarpour, Sharad Mehrotra and Nalini Venkatasubramanian Donald Bren School of Information and Computer Sciences University of California,

More information

A Structured Overlay for Non-uniform Node Identifier Distribution Based on Flexible Routing Tables

A Structured Overlay for Non-uniform Node Identifier Distribution Based on Flexible Routing Tables A Structured Overlay for Non-uniform Node Identifier Distribution Based on Flexible Routing Tables Takehiro Miyao, Hiroya Nagao, Kazuyuki Shudo Tokyo Institute of Technology 2-12-1 Ookayama, Meguro-ku,

More information

PUBLISHER Subscriber system is an event notification service

PUBLISHER Subscriber system is an event notification service A Bandwidth Aware Topology Generation Mechanism for Peer-to-Peer based Publish-Subscribe Systems Abhigyan, Joydeep Chandra, Niloy Ganguly Department of Computer Science & Engineering, Indian Institute

More information

A Scalable Content- Addressable Network

A Scalable Content- Addressable Network A Scalable Content- Addressable Network In Proceedings of ACM SIGCOMM 2001 S. Ratnasamy, P. Francis, M. Handley, R. Karp, S. Shenker Presented by L.G. Alex Sung 9th March 2005 for CS856 1 Outline CAN basics

More information

Efficient Content-Based Publish/Subscribe Systems over Peer-to-Peer Networks ABSTRACT

Efficient Content-Based Publish/Subscribe Systems over Peer-to-Peer Networks ABSTRACT Efficient Content-Based Publish/Subscribe Systems over Peer-to-Peer Networks Shou-Chih Lo Department of Computer Science and Information Engineering, National Dong Hwa University, Taiwan Email: sclo@mail.ndhu.edu.tw

More information

Query Processing Over Peer-To-Peer Data Sharing Systems

Query Processing Over Peer-To-Peer Data Sharing Systems Query Processing Over Peer-To-Peer Data Sharing Systems O. D. Şahin A. Gupta D. Agrawal A. El Abbadi Department of Computer Science University of California at Santa Barbara odsahin, abhishek, agrawal,

More information

A Peer-to-Peer Approach to Content-Based Publish/Subscribe

A Peer-to-Peer Approach to Content-Based Publish/Subscribe A Peer-to-Peer Approach to Content-Based Publish/Subscribe Wesley W. Terpstra Stefan Behnel Ludger Fiege Andreas Zeidler Alejandro P. Buchmann Department of Computer Science Darmstadt University of Technology

More information

Distriubted Hash Tables and Scalable Content Adressable Network (CAN)

Distriubted Hash Tables and Scalable Content Adressable Network (CAN) Distriubted Hash Tables and Scalable Content Adressable Network (CAN) Ines Abdelghani 22.09.2008 Contents 1 Introduction 2 2 Distributed Hash Tables: DHT 2 2.1 Generalities about DHTs............................

More information

Overlay Networks for Multimedia Contents Distribution

Overlay Networks for Multimedia Contents Distribution Overlay Networks for Multimedia Contents Distribution Vittorio Palmisano vpalmisano@gmail.com 26 gennaio 2007 Outline 1 Mesh-based Multicast Networks 2 Tree-based Multicast Networks Overcast (Cisco, 2000)

More information

Building a low-latency, proximity-aware DHT-based P2P network

Building a low-latency, proximity-aware DHT-based P2P network Building a low-latency, proximity-aware DHT-based P2P network Ngoc Ben DANG, Son Tung VU, Hoai Son NGUYEN Department of Computer network College of Technology, Vietnam National University, Hanoi 144 Xuan

More information

LessLog: A Logless File Replication Algorithm for Peer-to-Peer Distributed Systems

LessLog: A Logless File Replication Algorithm for Peer-to-Peer Distributed Systems LessLog: A Logless File Replication Algorithm for Peer-to-Peer Distributed Systems Kuang-Li Huang, Tai-Yi Huang and Jerry C. Y. Chou Department of Computer Science National Tsing Hua University Hsinchu,

More information

IN recent years, the amount of traffic has rapidly increased

IN recent years, the amount of traffic has rapidly increased , March 15-17, 2017, Hong Kong Content Download Method with Distributed Cache Management Masamitsu Iio, Kouji Hirata, and Miki Yamamoto Abstract This paper proposes a content download method with distributed

More information

A Directed-multicast Routing Approach with Path Replication in Content Addressable Network

A Directed-multicast Routing Approach with Path Replication in Content Addressable Network 2010 Second International Conference on Communication Software and Networks A Directed-multicast Routing Approach with Path Replication in Content Addressable Network Wenbo Shen, Weizhe Zhang, Hongli Zhang,

More information

A Framework for Peer-To-Peer Lookup Services based on k-ary search

A Framework for Peer-To-Peer Lookup Services based on k-ary search A Framework for Peer-To-Peer Lookup Services based on k-ary search Sameh El-Ansary Swedish Institute of Computer Science Kista, Sweden Luc Onana Alima Department of Microelectronics and Information Technology

More information

Shaking Service Requests in Peer-to-Peer Video Systems

Shaking Service Requests in Peer-to-Peer Video Systems Service in Peer-to-Peer Video Systems Ying Cai Ashwin Natarajan Johnny Wong Department of Computer Science Iowa State University Ames, IA 500, U. S. A. E-mail: {yingcai, ashwin, wong@cs.iastate.edu Abstract

More information

Scalability In Peer-to-Peer Systems. Presented by Stavros Nikolaou

Scalability In Peer-to-Peer Systems. Presented by Stavros Nikolaou Scalability In Peer-to-Peer Systems Presented by Stavros Nikolaou Background on Peer-to-Peer Systems Definition: Distributed systems/applications featuring: No centralized control, no hierarchical organization

More information

QoS Enabled Multicast for Structured P2P Networks

QoS Enabled Multicast for Structured P2P Networks QoS Enabled Multicast for Structured P2P Networks Marc Brogle, Dragan Milic and Torsten Braun Computer Networks and Distributed Systems Institute of Computer Science and Applied Mathematics University

More information

Evolution of Peer-to-peer algorithms: Past, present and future.

Evolution of Peer-to-peer algorithms: Past, present and future. Evolution of Peer-to-peer algorithms: Past, present and future. Alexei Semenov Helsinki University of Technology alexei.semenov@hut.fi Abstract Today peer-to-peer applications are widely used for different

More information

Hybrid Overlay Structure Based on Random Walks

Hybrid Overlay Structure Based on Random Walks Hybrid Overlay Structure Based on Random Walks Ruixiong Tian 1,, Yongqiang Xiong 2, Qian Zhang 2,BoLi 3, Ben Y. Zhao 4, and Xing Li 1 1 Department of Electronic Engineering, Tsinghua University 2 Microsoft

More information

Data Indexing and Querying in DHT Peer-to-Peer Networks

Data Indexing and Querying in DHT Peer-to-Peer Networks Institut EURECOM Research Report N o 73 RR-03-073 Data Indexing and Querying in DHT Peer-to-Peer Networks P.A. Felber, E.W. Biersack, L. Garcés-Erice, K.W. Ross, G. Urvoy-Keller January 15, 2003 2 Data

More information

Towards Efficient Load Balancing in Structured P2P Systems

Towards Efficient Load Balancing in Structured P2P Systems Towards Efficient Load Balancing in Structured P2P Systems Yingwu Zhu Department of ECECS University of Cincinnati zhuy@ececs.uc.edu Yiming Hu Department of ECECS University of Cincinnati yhu@ececs.uc.edu

More information

L3S Research Center, University of Hannover

L3S Research Center, University of Hannover , University of Hannover Dynamics of Wolf-Tilo Balke and Wolf Siberski 21.11.2007 *Original slides provided by S. Rieche, H. Niedermayer, S. Götz, K. Wehrle (University of Tübingen) and A. Datta, K. Aberer

More information

Hermes: A Distributed Event-Based Middleware Architecture

Hermes: A Distributed Event-Based Middleware Architecture Hermes: A Distributed Event-Based Middleware Architecture Peter R. Pietzuch Λ and Jean M. Bacon Computer Laboratory University of Cambridge JJ Thomson Avenue, Cambridge CB3 0FD, UK fpeter.pietzuch, Jean.Bacong@cl.cam.ac.uk

More information

MULTI-DOMAIN VoIP PEERING USING OVERLAY NETWORK

MULTI-DOMAIN VoIP PEERING USING OVERLAY NETWORK 116 MULTI-DOMAIN VoIP PEERING USING OVERLAY NETWORK Herry Imanta Sitepu, Carmadi Machbub, Armein Z. R. Langi, Suhono Harso Supangkat School of Electrical Engineering and Informatics, Institut Teknologi

More information

An Agenda for Robust Peer-to-Peer Storage

An Agenda for Robust Peer-to-Peer Storage An Agenda for Robust Peer-to-Peer Storage Rodrigo Rodrigues Massachusetts Institute of Technology rodrigo@lcs.mit.edu Abstract Robust, large-scale storage is one of the main applications of DHTs and a

More information

DYNAMIC TREE-LIKE STRUCTURES IN P2P-NETWORKS

DYNAMIC TREE-LIKE STRUCTURES IN P2P-NETWORKS DYNAMIC TREE-LIKE STRUCTURES IN P2P-NETWORKS Herwig Unger Markus Wulff Department of Computer Science University of Rostock D-1851 Rostock, Germany {hunger,mwulff}@informatik.uni-rostock.de KEYWORDS P2P,

More information

Bayeux: An Architecture for Scalable and Fault Tolerant Wide area Data Dissemination

Bayeux: An Architecture for Scalable and Fault Tolerant Wide area Data Dissemination Bayeux: An Architecture for Scalable and Fault Tolerant Wide area Data Dissemination By Shelley Zhuang,Ben Zhao,Anthony Joseph, Randy Katz,John Kubiatowicz Introduction Multimedia Streaming typically involves

More information

A Random Projection Approach to Subscription Covering Detection in Publish/Subsribe Systems

A Random Projection Approach to Subscription Covering Detection in Publish/Subsribe Systems A Random Projection Approach to Subscription Covering Detection in Publish/Subsribe Systems Duc A. Tran Department of Computer Science University of Massachusetts, Boston Boston, MA 2125 Email: duc@cs.umb.edu

More information

A Scalable Interest-oriented Peer-to-Peer Pub/Sub Network

A Scalable Interest-oriented Peer-to-Peer Pub/Sub Network A Scalable Interest-oriented Peer-to-Peer Pub/Sub Network Kaoutar Elkhiyaoui, Daishi Kato, Kazuo Kunieda, Keiji Yamada and Pietro Michiardi Eurecom, 2229, route des Cretes, Sophia Antipolis, France C&C

More information

Adaptive Load Balancing for DHT Lookups

Adaptive Load Balancing for DHT Lookups Adaptive Load Balancing for DHT Lookups Silvia Bianchi, Sabina Serbu, Pascal Felber and Peter Kropf University of Neuchâtel, CH-, Neuchâtel, Switzerland {silvia.bianchi, sabina.serbu, pascal.felber, peter.kropf}@unine.ch

More information

CS514: Intermediate Course in Computer Systems

CS514: Intermediate Course in Computer Systems Distributed Hash Tables (DHT) Overview and Issues Paul Francis CS514: Intermediate Course in Computer Systems Lecture 26: Nov 19, 2003 Distributed Hash Tables (DHT): Overview and Issues What is a Distributed

More information

An Efficient and Secure Peer-to-Peer Overlay Network

An Efficient and Secure Peer-to-Peer Overlay Network An Efficient and Secure Peer-to-Peer Overlay Network Honghao Wang, Yingwu Zhu and Yiming Hu Department of Electrical & Computer Engineering and Computer Science University of Cincinnati {wanghong, zhuy,

More information

DISTRIBUTED HASH TABLE PROTOCOL DETECTION IN WIRELESS SENSOR NETWORKS

DISTRIBUTED HASH TABLE PROTOCOL DETECTION IN WIRELESS SENSOR NETWORKS DISTRIBUTED HASH TABLE PROTOCOL DETECTION IN WIRELESS SENSOR NETWORKS Mr. M. Raghu (Asst.professor) Dr.Pauls Engineering College Ms. M. Ananthi (PG Scholar) Dr. Pauls Engineering College Abstract- Wireless

More information

Effect of Links on DHT Routing Algorithms 1

Effect of Links on DHT Routing Algorithms 1 Effect of Links on DHT Routing Algorithms 1 Futai Zou, Liang Zhang, Yin Li, Fanyuan Ma Department of Computer Science and Engineering Shanghai Jiao Tong University, 200030 Shanghai, China zoufutai@cs.sjtu.edu.cn

More information

FPN: A Distributed Hash Table for Commercial Applications

FPN: A Distributed Hash Table for Commercial Applications FPN: A Distributed Hash Table for Commercial Applications Cezary Dubnicki, Cristian Ungureanu, Wojciech Kilian NEC Laboratories Princeton, NJ, USA {dubnicki, cristian, wkilian}@nec-labs.com Abstract Distributed

More information

Multi-level Hashing for Peer-to-Peer System in Wireless Ad Hoc Environment

Multi-level Hashing for Peer-to-Peer System in Wireless Ad Hoc Environment Multi-level Hashing for Peer-to-Peer System in Wireless Ad Hoc Environment Dewan Tanvir Ahmed, Shervin Shirmohammadi Distributed & Collaborative Virtual Environments Research Laboratory School of Information

More information

Evaluation and Comparison of Mvring and Tree Based Application Layer Multicast on Structured Peer-To-Peer Overlays

Evaluation and Comparison of Mvring and Tree Based Application Layer Multicast on Structured Peer-To-Peer Overlays Journal of Computer Science (): xx-xx, ISS 49-66 Science Publications Evaluation and Comparison of Mvring and Tree Based Application Layer Multicast on Structured Peer-To-Peer Overlays Surya Bahadur Kathayat,

More information

Security Considerations for Peer-to-Peer Distributed Hash Tables

Security Considerations for Peer-to-Peer Distributed Hash Tables Security Considerations for Peer-to-Peer Distributed Hash Tables Emil Sit and Robert Morris Laboratory for Computer Science, MIT 200 Technology Square, Cambridge, MA 02139, USA {sit,rtm}@lcs.mit.edu Abstract.

More information

Designing Elastic and Reliable Content Based Cloud Storage System

Designing Elastic and Reliable Content Based Cloud Storage System Designing Elastic and Reliable Content Based Cloud Storage System B Indu Priya PG Scholor Department of CSE, CRIT, Anantapur. Abstract: Publish/subscribe systems implemented as a service in cloud computing

More information

PAPER A Proximity-Based Self-Organizing Hierarchical Overlay Framework for Distributed Hash Tables

PAPER A Proximity-Based Self-Organizing Hierarchical Overlay Framework for Distributed Hash Tables IEICE TRANS. COMMUN., VOL.E90 B, NO.7 JULY 2007 1651 PAPER A Proximity-Based Self-Organizing Hierarchical Overlay Framework for Distributed Hash Tables Kwangwook SHIN a), Student Member, Seunghak LEE,

More information

A Hybrid Peer-to-Peer Architecture for Global Geospatial Web Service Discovery

A Hybrid Peer-to-Peer Architecture for Global Geospatial Web Service Discovery A Hybrid Peer-to-Peer Architecture for Global Geospatial Web Service Discovery Shawn Chen 1, Steve Liang 2 1 Geomatics, University of Calgary, hschen@ucalgary.ca 2 Geomatics, University of Calgary, steve.liang@ucalgary.ca

More information

Aggregation of a Term Vocabulary for P2P-IR: a DHT Stress Test

Aggregation of a Term Vocabulary for P2P-IR: a DHT Stress Test Aggregation of a Term Vocabulary for P2P-IR: a DHT Stress Test Fabius Klemm and Karl Aberer School of Computer and Communication Sciences Ecole Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland

More information

Overlay Multicast. Application Layer Multicast. Structured Overlays Unstructured Overlays. CAN Flooding Centralised. Scribe/SplitStream Distributed

Overlay Multicast. Application Layer Multicast. Structured Overlays Unstructured Overlays. CAN Flooding Centralised. Scribe/SplitStream Distributed Overlay Multicast Application Layer Multicast Structured Overlays Unstructured Overlays CAN Flooding Centralised Scribe/SplitStream Distributed PeerCast 1 Prof. Dr. Thomas Schmidt http:/www.informatik.haw-hamburg.de/~schmidt

More information

Proximity Based Peer-to-Peer Overlay Networks (P3ON) with Load Distribution

Proximity Based Peer-to-Peer Overlay Networks (P3ON) with Load Distribution Proximity Based Peer-to-Peer Overlay Networks (P3ON) with Load Distribution Kunwoo Park 1, Sangheon Pack 2, and Taekyoung Kwon 1 1 School of Computer Engineering, Seoul National University, Seoul, Korea

More information

Peer-to-Peer Systems. Chapter General Characteristics

Peer-to-Peer Systems. Chapter General Characteristics Chapter 2 Peer-to-Peer Systems Abstract In this chapter, a basic overview is given of P2P systems, architectures, and search strategies in P2P systems. More specific concepts that are outlined include

More information

EARM: An Efficient and Adaptive File Replication with Consistency Maintenance in P2P Systems.

EARM: An Efficient and Adaptive File Replication with Consistency Maintenance in P2P Systems. : An Efficient and Adaptive File Replication with Consistency Maintenance in P2P Systems. 1 K.V.K.Chaitanya, 2 Smt. S.Vasundra, M,Tech., (Ph.D), 1 M.Tech (Computer Science), 2 Associate Professor, Department

More information

08 Distributed Hash Tables

08 Distributed Hash Tables 08 Distributed Hash Tables 2/59 Chord Lookup Algorithm Properties Interface: lookup(key) IP address Efficient: O(log N) messages per lookup N is the total number of servers Scalable: O(log N) state per

More information

Structured Superpeers: Leveraging Heterogeneity to Provide Constant-Time Lookup

Structured Superpeers: Leveraging Heterogeneity to Provide Constant-Time Lookup Structured Superpeers: Leveraging Heterogeneity to Provide Constant-Time Lookup Alper Mizrak (Presenter) Yuchung Cheng Vineet Kumar Stefan Savage Department of Computer Science & Engineering University

More information

Towards a Common API for Structured Peer-to-Peer Overlays

Towards a Common API for Structured Peer-to-Peer Overlays Towards a Common API for Structured Peer-to-Peer Overlays Frank Dabek Ben Zhao Peter Druschel John Kubiatowicz Ion Stoica MIT Laboratory for Computer Science, Cambridge, MA. University of California, Berkeley,

More information

Providing Administrative Control and Autonomy in Structured Peer-to-Peer Overlays

Providing Administrative Control and Autonomy in Structured Peer-to-Peer Overlays Providing Administrative Control and Autonomy in Structured Peer-to-Peer Overlays Alan Mislove Peter Druschel Rice University, Houston, TX, USA Abstract Structured peer-to-peer (p2p) overlay networks provide

More information

Survey of DHT Evaluation Methods

Survey of DHT Evaluation Methods Survey of DHT Evaluation Methods Markus Meriläinen Helsinki University of Technology Markus.Merilainen@tkk.fi Abstract In this paper, we present an overview of factors affecting the performance of the

More information

Scalable and Self-configurable Eduroam by using Distributed Hash Table

Scalable and Self-configurable Eduroam by using Distributed Hash Table Scalable and Self-configurable Eduroam by using Distributed Hash Table Hiep T. Nguyen Tri, Rajashree S. Sokasane, Kyungbaek Kim Dept. Electronics and Computer Engineering Chonnam National University Gwangju,

More information

Towards a Scalable Distributed Information Management System

Towards a Scalable Distributed Information Management System Towards a Praveen Yalagandula and Mike Dahlin University of Texas at Austin Abstract This paper makes a case for developing a general large-scale networked systems, provides detailed views of nearby information

More information

Defending against Eclipse attacks on overlay networks

Defending against Eclipse attacks on overlay networks Defending against Eclipse attacks on overlay networks Atul Singh 1 Miguel Castro 2 Peter Druschel 1 Antony Rowstron 2 1 Rice University, Houston, TX, USA. 2 Microsoft Research, Cambridge, UK. Abstract

More information

Anonymous Publish/Subscribe in P2P Networks

Anonymous Publish/Subscribe in P2P Networks Anonymous Publish/Subscribe in P2P Networks A.K. Datta z M. Gradinariu? M. Raynal? G. Simon y?? IRISA, Université Rennes 1, France fraynal, mgradina, gsimong@irisa.fr y France Telecom R & D, Issy Moulineaux,

More information

March 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE

March 10, Distributed Hash-based Lookup. for Peer-to-Peer Systems. Sandeep Shelke Shrirang Shirodkar MTech I CSE for for March 10, 2006 Agenda for Peer-to-Peer Sytems Initial approaches to Their Limitations CAN - Applications of CAN Design Details Benefits for Distributed and a decentralized architecture No centralized

More information

Design of a New Hierarchical Structured Peer-to-Peer Network Based On Chinese Remainder Theorem

Design of a New Hierarchical Structured Peer-to-Peer Network Based On Chinese Remainder Theorem Design of a New Hierarchical Structured Peer-to-Peer Network Based On Chinese Remainder Theorem Bidyut Gupta, Nick Rahimi, Henry Hexmoor, and Koushik Maddali Department of Computer Science Southern Illinois

More information

Load Balancing in Structured P2P Systems

Load Balancing in Structured P2P Systems 1 Load Balancing in Structured P2P Systems Ananth Rao Karthik Lakshminarayanan Sonesh Surana Richard Karp Ion Stoica fananthar, karthik, sonesh, karp, istoicag@cs.berkeley.edu Abstract Most P2P systems

More information

CIS 700/005 Networking Meets Databases

CIS 700/005 Networking Meets Databases Announcements CIS / Networking Meets Databases Boon Thau Loo Spring Lecture Paper summaries due at noon today. Office hours: Wed - pm ( Levine) Project proposal: due Feb. Student presenter: rd Jan: A Scalable

More information

A Top Catching Scheme Consistency Controlling in Hybrid P2P Network

A Top Catching Scheme Consistency Controlling in Hybrid P2P Network A Top Catching Scheme Consistency Controlling in Hybrid P2P Network V. Asha*1, P Ramesh Babu*2 M.Tech (CSE) Student Department of CSE, Priyadarshini Institute of Technology & Science, Chintalapudi, Guntur(Dist),

More information

Relaxing Routing Table to Alleviate Dynamism in P2P Systems

Relaxing Routing Table to Alleviate Dynamism in P2P Systems Relaxing Routing Table to Alleviate Dynamism in P2P Systems Hui FANG 1, Wen Jing HSU 2, and Larry RUDOLPH 3 1 Singapore-MIT Alliance, National University of Singapore 2 Nanyang Technological University,

More information

DRing: A Layered Scheme for Range Queries over DHTs

DRing: A Layered Scheme for Range Queries over DHTs DRing: A Layered Scheme for Range Queries over DHTs Nicolas Hidalgo, Erika Rosas, Luciana Arantes, Olivier Marin, Pierre Sens and Xavier Bonnaire Université Pierre et Marie Curie, CNRS INRIA - REGAL, Paris,

More information

PastryStrings: A Comprehensive Content-Based Publish/Subscribe DHT Network

PastryStrings: A Comprehensive Content-Based Publish/Subscribe DHT Network PastryStrings: A Comprehensive Content-Based Publish/Subscribe DHT Network Ioannis Aekaterinidis and Peter Triantafillou RA Computer Technology Institute and Dept. of Computer Engineering and Informatics,

More information

Implementing Range Queries with a Decentralized Balanced Tree Over Distributed Hash Tables

Implementing Range Queries with a Decentralized Balanced Tree Over Distributed Hash Tables Implementing Range Queries with a Decentralized Balanced Tree Over Distributed Hash Tables Nuno Lopes and Carlos Baquero CCTC-Department of Informatics University of Minho Braga, Portugal Abstract. Range

More information

A Peer-to-peer Framework for Caching Range Queries

A Peer-to-peer Framework for Caching Range Queries A Peer-to-peer Framework for Caching Range Queries O. D. Şahin A. Gupta D. Agrawal A. El Abbadi Department of Computer Science University of California Santa Barbara, CA 9316, USA {odsahin, abhishek, agrawal,

More information

Subway : Peer-To-Peer Clustering of Clients for Web Proxy

Subway : Peer-To-Peer Clustering of Clients for Web Proxy Subway : Peer-To-Peer Clustering of Clients for Web Proxy Kyungbaek Kim and Daeyeon Park Department of Electrical Engineering & Computer Science, Division of Electrical Engineering, Korea Advanced Institute

More information

Comparing Chord, CAN, and Pastry Overlay Networks for Resistance to DoS Attacks

Comparing Chord, CAN, and Pastry Overlay Networks for Resistance to DoS Attacks Comparing Chord, CAN, and Pastry Overlay Networks for Resistance to DoS Attacks Hakem Beitollahi Hakem.Beitollahi@esat.kuleuven.be Geert Deconinck Geert.Deconinck@esat.kuleuven.be Katholieke Universiteit

More information

SplitQuest: Controlled and Exhaustive Search in Peer-to-Peer Networks

SplitQuest: Controlled and Exhaustive Search in Peer-to-Peer Networks SplitQuest: Controlled and Exhaustive Search in Peer-to-Peer Networks Pericles Lopes Ronaldo A. Ferreira pericles@facom.ufms.br raf@facom.ufms.br College of Computing, Federal University of Mato Grosso

More information

Semantic Multicast for Content-based Stream Dissemination

Semantic Multicast for Content-based Stream Dissemination Semantic Multicast for Content-based Stream Dissemination Olga Papaemmanouil Brown University Uğur Çetintemel Brown University Stream Dissemination Applications Clients Data Providers Push-based applications

More information

UC Berkeley UC Berkeley Previously Published Works

UC Berkeley UC Berkeley Previously Published Works UC Berkeley UC Berkeley Previously Published Works Title Impact of neighbor selection on performance and resilience of structured P2P networks Permalink https://escholarship.org/uc/item/9tq2wn2 Authors

More information

A Comparative Study of Pub/Sub Methods in Structured P2P Networks

A Comparative Study of Pub/Sub Methods in Structured P2P Networks A Comparative Study of Pub/Sub Methods in Structured P2P Networks Matthias Bender, Sebastian Michel, Sebastian Parkitny, Gerhard Weikum Max-Planck-Institut für Informatik Stuhlsatzenhausweg 85 66123 Saarbrücken

More information

PERFORMANCE ANALYSIS OF R/KADEMLIA, PASTRY AND BAMBOO USING RECURSIVE ROUTING IN MOBILE NETWORKS

PERFORMANCE ANALYSIS OF R/KADEMLIA, PASTRY AND BAMBOO USING RECURSIVE ROUTING IN MOBILE NETWORKS International Journal of Computer Networks & Communications (IJCNC) Vol.9, No.5, September 27 PERFORMANCE ANALYSIS OF R/KADEMLIA, PASTRY AND BAMBOO USING RECURSIVE ROUTING IN MOBILE NETWORKS Farida Chowdhury

More information

Event-Based Middleware: A New Paradigm for Wide-Area Distributed Systems?

Event-Based Middleware: A New Paradigm for Wide-Area Distributed Systems? Event-Based Middleware: A New Paradigm for Wide-Area Distributed Systems? Abstract: Peter R. Pietzuch 1 University of Cambridge Computer Laboratory {Peter.Pietzuch}@cl.cam.ac.uk Large-scale, internet-wide

More information

A Peer-to-Peer Architecture to Enable Versatile Lookup System Design

A Peer-to-Peer Architecture to Enable Versatile Lookup System Design A Peer-to-Peer Architecture to Enable Versatile Lookup System Design Vivek Sawant Jasleen Kaur University of North Carolina at Chapel Hill, Chapel Hill, NC, USA vivek, jasleen @cs.unc.edu Abstract The

More information

Exploiting the Synergy between Peer-to-Peer and Mobile Ad Hoc Networks

Exploiting the Synergy between Peer-to-Peer and Mobile Ad Hoc Networks Exploiting the Synergy between Peer-to-Peer and Mobile Ad Hoc Networks Y. Charlie Hu, Saumitra M. Das, and Himabindu Pucha Purdue University West Lafayette, IN 47907 {ychu, smdas, hpucha}@purdue.edu Abstract

More information

BOOTSTRAPPING LOCALITY-AWARE P2P NETWORKS

BOOTSTRAPPING LOCALITY-AWARE P2P NETWORKS BOOTSTRAPPING LOCALITY-AWARE PP NETWORKS Curt Cramer, Kendy Kutzner, and Thomas Fuhrmann Institut für Telematik, Universität Karlsruhe (TH), Germany {curt.cramer kendy.kutzner thomas.fuhrmann}@ira.uka.de

More information

Distributed Hash Tables

Distributed Hash Tables Distributed Hash Tables Chord Smruti R. Sarangi Department of Computer Science Indian Institute of Technology New Delhi, India Smruti R. Sarangi Chord 1/29 Outline Overview 1 Overview 2 3 Smruti R. Sarangi

More information

Experimental Study on Neighbor Selection Policy for Phoenix Network Coordinate System

Experimental Study on Neighbor Selection Policy for Phoenix Network Coordinate System Experimental Study on Neighbor Selection Policy for Phoenix Network Coordinate System Gang Wang, Shining Wu, Guodong Wang, Beixing Deng, Xing Li Tsinghua National Laboratory for Information Science and

More information

Peer-to-Peer Web Caching: Hype or Reality?

Peer-to-Peer Web Caching: Hype or Reality? Peer-to-Peer Web Caching: Hype or Reality? Yonggen Mao, Zhaoming Zhu, and Weisong Shi Wayne State University {yoga,zhaoming,weisong}@wayne.edu Abstract In this paper, we systematically examine the design

More information

ReCord: A Distributed Hash Table with Recursive Structure

ReCord: A Distributed Hash Table with Recursive Structure ReCord: A Distributed Hash Table with Recursive Structure Jianyang Zeng and Wen-Jing Hsu Abstract We propose a simple distributed hash table called ReCord, which is a generalized version of Randomized-

More information

International Journal of Advanced Research in Computer Science and Software Engineering

International Journal of Advanced Research in Computer Science and Software Engineering Volume 2, Issue 8, August 2012 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Structured Peer-to-Peer

More information

Location Efficient Proximity and Interest Clustered P2p File Sharing System

Location Efficient Proximity and Interest Clustered P2p File Sharing System Location Efficient Proximity and Interest Clustered P2p File Sharing System B.Ajay Kumar M.Tech, Dept of Computer Science & Engineering, Usharama College of Engineering & Technology, A.P, India. Abstract:

More information

Aggregation of a Term Vocabulary for Peer-to-Peer Information Retrieval: a DHT Stress Test

Aggregation of a Term Vocabulary for Peer-to-Peer Information Retrieval: a DHT Stress Test Aggregation of a Term Vocabulary for Peer-to-Peer Information Retrieval: a DHT Stress Test Fabius Klemm and Karl Aberer School of Computer and Communication Sciences Ecole Polytechnique Fédérale de Lausanne

More information

Adaptive Replication and Replacement in P2P Caching

Adaptive Replication and Replacement in P2P Caching Adaptive Replication and Replacement in P2P Caching Jussi Kangasharju Keith W. Ross Abstract Caching large audio and video files in a community of peers is a compelling application for P2P. Assuming an

More information

Distributed Hash Tables

Distributed Hash Tables Smruti R. Sarangi Department of Computer Science Indian Institute of Technology New Delhi, India Smruti R. Sarangi 1/34 Outline 1 2 Smruti R. Sarangi 2/34 Normal Hashtables Hashtable : Contains a set of

More information

Application Layer Multicast For Efficient Peer-to-Peer Applications

Application Layer Multicast For Efficient Peer-to-Peer Applications Application Layer Multicast For Efficient Peer-to-Peer Applications Adam Wierzbicki 1 e-mail: adamw@icm.edu.pl Robert Szczepaniak 1 Marcin Buszka 1 1 Polish-Japanese Institute of Information Technology

More information