ISP-Supported Traffic Reduction for Application-Level Multicast

Similar documents
IPTV AND VOD NETWORK ARCHITECTURES. Diogo Miguel Mateus Farinha

A Topology-Aware Relay Lookup Scheme for P2P VoIP System

Traceroute-Based Topology Inference without Network Coordinate Estimation

Object Request Reduction in Home Nodes and Load Balancing of Object Request in Hybrid Decentralized Web Caching

International Journal of Advanced Research in Computer Science and Software Engineering

Locality-Aware Randomized Load Balancing Algorithms for DHT Networks

Peer-to-Peer Networks. Chapter 6: P2P Content Distribution

Distributed Hash Tables in P2P Systems - A literary survey

Research on P2P-SIP based VoIP system enhanced by UPnP technology

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November ISSN

Clustering in Peer-to-Peer File Sharing Workloads

Varalakshmi.T #1, Arul Murugan.R #2 # Department of Information Technology, Bannari Amman Institute of Technology, Sathyamangalam

LOOKING UP DATA IN P2P SYSTEMS

Supporting IP Multicast Streaming Using Overlay Networks

Network Topology and Traceroutes

Simulation of Heuristic Usage for Load Balancing In Routing Efficiency

Towards a scalable ad hoc network infrastructure

Consecutive Geographic Multicasting Protocol in Large-Scale Wireless Sensor Networks

PEER TO PEER FILE SHARING USING NETWORK CODING

Identity Theft Protection in Structured Overlays

New Structured P2P Network with Dynamic Load Balancing Scheme

Reliable Peer-to-peer End System Multicasting through Replication

Multicast vs. P2P for content distribution

David R. McIntyre CS Department, Cleveland State University Cleveland, Ohio 44101

DUP: Dynamic-tree Based Update Propagation in Peer-to-Peer Networks

Krunal Patel Department of Information Technology A.D.I.T. Engineering College (G.T.U.) India. Fig. 1 P2P Network

A P2P SERVICE DISCOVERY STRATEGY BASED ON CONTENT

A SURVEY OF P2P OVERLAYS IN VARIOUS NETWORKS

Join and Leave in Peer-to-Peer Systems: The DASIS Approach

Load Balancing in Distributed Systems: A survey

GISP: Global Information Sharing Protocol a distributed index for peer-to-peer systems

A Comparison Study of Qos Using Different Routing Algorithms In Mobile Ad Hoc Networks

D. SamKnows Methodology 20 Each deployed Whitebox performs the following tests: Primary measure(s)

An Efficient Load Balancing Technology in CDN

Behavior Analysis of TCP Traffic in Mobile Ad Hoc Network using Reactive Routing Protocols

Improving Availability with Adaptive Roaming Replicas in Presence of Determined DoS Attacks

Using Peer to Peer Dynamic Querying in Grid Information Services

Identity Theft Protection in Structured Overlays

Optimizing and Balancing Load in Fully Distributed P2P File Sharing Systems

MASHUPS are an icon of Web 2.0 applications. A

Routing with OSPF. Introduction

Bandwidth Measurement in Wireless Networks

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

PERFORMANCE OF MOBILE AD HOC NETWORKING ROUTING PROTOCOLS IN REALISTIC SCENARIOS

International journal of Engineering Research-Online A Peer Reviewed International Journal Articles available online

A Performance Comparison of Native IP Multicast and IP Multicast Tunneled through a Peer-to-Peer Overlay Network

Bit Chat: A Peer-to-Peer Instant Messenger

2-7 The Mathematics Models and an Actual Proof Experiment for IP Traceback System

Clustering in Peer-to-Peer File Sharing Workloads

EQ-BGP: an efficient inter-domain QoS routing protocol

Stability of QOS. Avinash Varadarajan, Subhransu Maji

IP Anycast: Point to (Any) Point Communications. Draft 0.3. Chris Metz, Introduction

Enhancing Secure File Transfer by Analyzing Repeated Server Based Strategy using Gargantuan Peers (G-peers)

Trace Driven Analysis of the Long Term Evolution of Gnutella Peer-to-Peer Traffic

A PROXIMITY-AWARE INTEREST-CLUSTERED P2P FILE SHARING SYSTEM

IMPACT OF DISTRIBUTED SYSTEMS IN MANAGING CLOUD APPLICATION

Video Streaming with Network Coding

Plaxton routing. Systems. (Pastry, Tapestry and Kademlia) Pastry: Routing Basics. Pastry: Topology. Pastry: Routing Basics /3

DigiMetro An Application-Level Multicast System for Multi-party Video Conferencing

8 Conclusion and Future Work

MAXIMIZING RESTORABLE THROUGHPUT IN MPLS NETWORKS

Optimizing Congestion in Peer-to-Peer File Sharing Based on Network Coding

AN INITIAL PEER CONFIGURATION ALGORITHM

On-Demand Media Streaming Over the Internet

Limitations of Packet Measurement

Performance Evaluation of AODV, OLSR Routing Protocol in VOIP Over Ad Hoc

Tornado: A Capability-Aware Peer-to-Peer Storage Network

SUITABLE ROUTING PATH FOR PEER TO PEER FILE TRANSFER

File sharing using IP-Multicast

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).

An Energy Efficient Location Service for Mobile Ad Hoc Networks

A Peer-to-Peer File Sharing System for Wireless Ad-Hoc Networks

A NEW FULLY DECENTRALIZED SCALABLE PEER-TO-PEER GIS ARCHITECTURE

Load Balancing in Structured P2P Systems

Network congestion control using NetFlow

Dynamic Resource Pricing on Federated Clouds

Experimental Comparison of Routing and Middleware Solutions for Mobile Ad Hoc Networks: Legacy vs Cross-Layer Approach

A UBIQUITOUS PROTOCOL FOR ADDRESS DYNAMICALLY AUTO CONFIGURATION FOR MOBILE AD HOC NETWORKS

How To Make A Network Plan Based On Bg, Qos, And Autonomous System (As)

Internetworking and Internet-1. Global Addresses

Implementation of a Lightweight Service Advertisement and Discovery Protocol for Mobile Ad hoc Networks

Service Discovery for Delay Tolerant Networks

Mobile File-Sharing over P2P Networks

Discovery and Routing in the HEN Heterogeneous Peer-to-Peer Network

An Adaptive Load Balancing to Provide Quality of Service

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Collaborative ISP-CP Live Streaming

RESEARCH ISSUES IN PEER-TO-PEER DATA MANAGEMENT

SCALABLE RANGE QUERY PROCESSING FOR LARGE-SCALE DISTRIBUTED DATABASE APPLICATIONS *

Network Level Multihoming and BGP Challenges

An integrated approach for P2P file sharing on multi-hop wireless networks

Efficient Data Retrieving in Distributed Datastreaming

Adapting Distributed Hash Tables for Mobile Ad Hoc Networks


LOAD BALANCING WITH PARTIAL KNOWLEDGE OF SYSTEM

Analysis of Internet Topologies

Anonymous Communication in Peer-to-Peer Networks for Providing more Privacy and Security

Department of Computer Science Institute for System Architecture, Chair for Computer Networks. File Sharing

CONTROL SYSTEM FOR INTERNET BANDWIDTH BASED ON JAVA TECHNOLOGY

A Measurement of NAT & Firewall Characteristics in Peer to Peer Systems

Transcription:

ISP-Supported Traffic Reduction for Application-Level Multicast Piotr Wydrych and Piotr Chołda Department of Telecommunications, AGH University of Science and Technology, Kraków, Poland E-mail: {piotr.wydrych,piotr.cholda}@agh.edu.pl Abstract The paper proves that it is possible to optimize application-level multicast operation from the viewpoint of traffic flows. A modification of the FreePastry/Scribe application is proposed to enable cooperation with the IETF ALTO (Application- Layer Traffic Optimization) protocol. Consequently, the overlay topology is constructed taking into account the underlying network topology. The presented results show that costly traffic types can be reduced while the increase of the delay is not harmful. Index Terms ALTO, application-level multicast, P2P-ISP cooperation, Pastry, Scribe. I. INTRODUCTION The success of file-sharing peer-to-peer (P2P) systems caused that the idea of the end-user collaboration was introduced in other fields. Among others, P2P overlays are used to create multicast distribution systems independent of multicast support in underlying networks routers. These solutions are called application-level multicast (ALM) systems. The success of peer-to-peer systems generated also a significant growth of the network operators costs. Peers forming overlay structures are not aware of the underlying network topology. Therefore, this traffic often crosses autonomous system boundaries when it is not necessary, i.e., when the same content could be reached within the same domain. This fact induces the research on topology-aware applications and cooperation between P2P users and Internet Service Providers (ISPs). These investigations [1] [3] focus on optimal peer selection in a file-sharing system. The topic of routing proximity in Distributed Hash Tables was discussed in [4] and [5]. Ratnasamy et al. [4] proposed three ways of optimizing traffic of structured peer-to-peer networks: proximity routing, proximity neighbor selection, and geographic layout. Applications using routing proximity choose the next hop according to not only the overlay metric, but also to the information concerning the physical network structure. Proximity neighbor selection is possible in networks which allow freedom of choosing peers to be inserted into routing tables (like in Pastry [6] or Kademlia [7]). The difference between these two approaches is that in the proximity routing scheme the information on the underlay topology is evaluated during the message routing process, while in proximity neighbor selection such information is taken into account during the routing table maintenance. With geographic layout, the identifiers in the overlay are assigned with regard to the underlying network topology, i.e., when two nodes are located nearby in the underlay they are given close identifiers in the overlay address space. These approaches were compared and discussed by Castro et al. [5]. Optimization of traffic generated by application-level multicast systems built on top of structured systems have not been studied intensively. Castro et al. [8] compared multicast networks built on top of two structured overlays: CAN [9] and Pastry. The results showed that assigning CAN identifiers according to the underlying topology reduces the relative delay penalty (RDP) 1 by 3% to 4%. In the tree-based CAN the selection of the routing metric was influencing the performance. For Pastry, it turned out that it is possible to reduce the link stress 2 and RDP when the messages were flooded all over the network. However, when the multicast applications were forming a tree, only proximity neighbor selection guaranteed good results. The work assumes that all nodes are provided with the exact knowledge of the underlying network. Such an assumption cannot, however, be met in existing distributed systems. Kovačević et al. [1] presented a structured treebased location-aware overlay network optimized for ALM. The system uses the Global Positioning System to determine the coordinates of the nodes and to assign the identifiers. Moreover, the capabilities of the nodes are investigated to select superpeers, that are assigned responsibility zones. However, each node of the system needs to be provided with its geographic coordinates to function properly. Picconi and Massoulie [11] showed that the optimization of the traffic generated by ALM can be successfully performed. Here, we propose to modify a P2P-based ALM application, Scribe [12], built on top of Pastry [6]. The modification aimes at another than default mode for Pastry structure construction to be able to consider the topology of the underlying IP network. The solution uses the most precise and reliable source of the information about the network topology, that is network operators routing databases. We assume that the information on network topology is provided by ALTO servers run by ISPs to optimize and communicate with the application. The ALTO protocol is being developed by IETF ALTO (Application- Layer Traffic Optimization) Working Group [13] launched in November 28 to standardize a service for better-thanrandom peer selection in overlay networks. Then, on the basis of extensive simulation experiments we prove that the traffic 1 It is the ratio of the experienced delay between the source and the receiver to the unicast delay between these two nodes. 2 It is the number the same content is sent through the same link.

1 2 3 1 213 23..113.11 198.51.1.123 131 192..2.198 21213 198.51.1.99 198.51.1.123 22 332 192..2.194 2321 23..113.238 Standard routing table maintenance process selects node 2231, since it has lower RTT 2231 23..113.168 another AS RTT=3 ms 2 21 198.51.1.174 198.51.1.123 2231 192..2.79 3 4 211 23..113.127 198.51.1.123 198.51.1.123 ALTO-enabled routing table maintenance process selects node 2212, since it is in the same AS 2212 198.51.1.87 the same AS RTT=35 ms Fig. 1. The selection of alternatives to be inserted into a routing table of node with ID 2132 by standard and modified routing table maintenance process in a simplified FreePastry network with l =1and b =2. reduction of the most costly types of traffic is observed. Additionally, the induced delay is reported to show that it is not harmful. Section II presents the proposed modification of the Free- Pastry/Scribe application. Section III presents and assesses the results obtained. Finally, Section IV concludes the paper. II. ALM TRAFFIC OPTIMIZATION WITH ALTO PROTOCOL Pastry [6] is a completely decentralized structured overlay network which uses prefix routing to forward messages. Every node and every data item is assigned its own unique l-bit identifier. Identifiers are interpreted as strings of digits to the base 2 b. Every Pastry node stores information on other nodes in three structures: a routing table, aleaf set, and a neighborhood set. Each routing table comprises l /b rows with 2 b 1 entries each. An entry in row n and column m refers to a node whose identifier shares first n digits with the identifier of a given node, but does not share the (n+1)th digit, and the (n +1)th digit is equal to m. When no node with a matching identifier is known, the routing table entry remains empty. Such a situation may particularly be common in the case of the most bottom rows (related to peers most proximate in the ID space), depending on the number of Pastry peers forming the overlay. A leaf set L contains references to L nodes numerically closest to the given node. It is divided equally into two parts. One part contains references to L /2 nodes with identifiers lower than the given node s identifier, and the other part contains references to L /2 nodes with higher identifiers. Neighborhood sets were designed to store information concerning nodes that are close to a particular node with respect to a network proximity metric (e.g. the Round Trip Time). However, in the FreePastry implementation [14], the information on proximity is maintained for every known node and is stored within the routing table. Therefore, the neighborhood sets have never been implemented. The message routing algorithm comprises two phases. First, the node, which has to make a decision to which peer it should pass a message, checks whether the message destination identifier falls within the node s leaf set. If so, the message is forwarded to the peer whose identifier is numerically closest to the destination identifier. If the destination is not within the range of the leaf set, the routing table is used to select the next hop. The message is forwarded to a peer whose identifier shares a longer common prefix with the destination than with the current node. If no matching peer is found, the message is forwarded to a peer whose identifier is numerically closest to the message destination. A. FreePastry Routing Table Optimization The standard routing table maintenance process in Free- Pastry was modified by us to benefit from external information on the proximity. The basic FreePastry system measures Round Trip Time values and uses them as the proximity assessment (Figure 1). If a peer supports ALTO, and the domain it belongs to contains an enabled ALTO server, it periodically starts the routing table optimization process. When the routing table optimization is to be started, the node requests some of its neighbors to send some of their routing table entries. The accuracy of the optimization is tuned by the number of the exchanged routing table rows, n. The algorithm is presented in Figure 2. 1) For each entry in each row i of the top n rows in the node s routing table, the peer sends a RequestRouteRow message, requesting information about row i 1. Thus, the node requests nodes which are known to it for their replacement in its routing table. 2) The FreePastry node stores, in its cache, the relationships between the obtained FreePastry node handles and the network addresses. 3) Then, it asks the ALTO 3 server to sort the network addresses. 3 Since the ALTO protocol [15] is used, there is no risk that an ISP will reveal the confidential information on its network topology.

2 Store pairs of node IDs and IP addresses 4 Replace suboptimal entries in the routing table BroadcastRouteRow 5 Trigger Scribe resubscription process ALTO-enabled node RequestRouteRow 1 Get information on other peer s IDs and IP addresses Known peers from top n rows of the nodes s routing table 3 Sort IP addresses ALTOResponse ALTOQuery ALTO server w/information about topology Fig. 2. FreePastry routing table optimization algorithm. 4) The node handles are added to the routing table in the order returned by the server, replacing the suboptimal entries. 5) The modified Scribe implementation (see Section II-B) is notified that the routing table was optimized. The modified routing protocol is designed to be fully compatible with the standard protocol and the ALTO-enabled applications can be easily deployed in an existing environment. B. Scribe Client Modifications The Scribe implementation has been modified to make the application benefit from the routing table optimization. For each multicast group, Scribe builds a tree using reverse-path forwarding [16]. Each group is totally independent of other groups, and every node can join, be root of, and publish to any number of groups. A node with an identifier numerically closest to the group identifier is the root of the multicast tree and is called a rendezvous point. In the original Free- Pastry/Scribe implementation, when a client subscribes to a topic and receives a SubscribeAckMessage, itsavesthe information about its parent in the topic tree. However, it never checks if it should resubscribe to another parent node. The modified implementation of Scribe observes all changes in the routing table and if a removal of a parent of the node in any known topic tree occurs, the application waits until the routing table optimization process finishes and then resubscribes to the topic, probably via another parent. III. SIMULATION RESULTS ASSESSMENT The simulation software was developed in Java, using ProtoPeer simulator 4 [17] and FreePastry [14] libraries, and 4 The ProtoPeer engine was preferred over the FreePastry discrete event simulator [14] for two reasons: (1) the FreePastry discrete event simulator does not allow to model and monitor the underlay in the detailed way, and (2) the ProtoPeer engine adds the ability to compare the obtained results with the results obtained during further research on other protocols. the transit-stub network model [18]. The network topology consists of four transit domains, containing five routers on average. Each transit router is connected to two stub domains on average. Each stub domain consists of five routers on average. The network consists of 22 routers connected by 334 bidirectional links. The basic features of BGP and OSPF are employed to calculate the routes. All hosts are attached to the stub routers. Two groups of simulation scenarios were prepared to check the influence of the popularity of ALTO among ISPs and end-users. The first case occurs when all ISPs provide ALTO-enabled servers and some of the clients want to use them. The selected values of the probability of creating ALTO-enabled peers were equal to: %, 25%, 5%, 75%, and 1%. The second situation takes place when all end-users run ALTO-enabled clients, but only a portion of all ISPs wants to optimize their traffic. The same five probability values were selected for the popularity of ALTO within ISPs. The next parameter varied within scenarios was the number of exchanged routing table rows, i.e., the accuracy of the optimization. In the first situation, nodes exchanged only one row, which covered statistically 1 ( 1 2 3 ) 1 =87.5% of the identifier space. In the second case, nodes exchanged two rows, which held statistically 1 ( 1 2 3 ) 2 =98.4% of the identifiers. The third set of the simulations was configured to exchange four rows, which influenced statistically 1 ( 1 2 3 ) 4 =99.98% of the identifiers. Each simulation ran for six hours. The first Scribe peer started at the beginning of the simulation run. Peers started one after another with delays that were randomized from the range (, 5 s). During the simulation experiments, every ALTO-enabled peer repeated its ALTO query process every 2 minutes. After 5 seconds, a randomly selected peer stopped. The peer stop interval was randomized from the same range. The multicast traffic source was never stopped.

Link stress 7 6 5 4 3 2 1 % 25% 5% 75% 1% ALTO popularity Link stress 1 9 8 7 6 5 4 3 2 1 Without ALTO server With ALTO server % 25% 5% 75% 1% ALTO server popularity Fig. 3. Link stress: global traffic. Each point represents one link. Fig. 4. Link stress: incoming transit traffic. ALTO client popularity = 1%. This resulted in the average number of running peers equal to 1995, after a warm-up period equal, on average, to 1 hour 23 minutes. The presented values were averaged separately for each link. Moreover, for each of the mean values, the 95% confidence intervals were calculated, but are not present in the figures as they are very small and could hinder the legibility. A more detailed information on the results obtained during the experiments can be accessed on the website [19]. A. Multicast Traffic The terms of the transit, peering and local traffic are used as defined in the ALTO Problem Statement [2]. 1) Global Traffic: As shown in Figure 3, introducing ALTO makes a significant impact on the volume of the traffic carried by the links in the transit domains and between them. When all stub domain operators and all clients use ALTO, the overall traffic flowing within transit domains is reduced by 38% and the overall traffic flowing between transit domains is reduced by 71%. 2) Incoming Transit Traffic: The most important benefit the stub network operators may have from using ALTO is that they can reduce their incoming transit traffic, which is very expensive. Bringing ALTO into general use reduces the traffic flowing from the transit domains to the stub ones by 22% on average. What is more important, in the heterogeneous environment, when some of stub networks use ALTO and others do not, the latter do not suffer from the fact of this diversity, what can be seen in Figure 4. The volume of the traffic flowing to the domains without an ALTO server remains unchanged. In all cases when ALTO-enabled and ALTO-disabled domains coexist in the same environment, enabling the ALTO server in a domain leads the incoming transit traffic to diminish by 21% on average. 3) Outgoing Transit Traffic: The structure of outgoing transit traffic flow was influenced significantly by the ALTO popularity. In all cases, the domain containing the multicast tree root suffers from the high outgoing transit traffic. Using ALTO causes a great reduction of the volume of this unfavorable traffic, up to 8%, what was shown in Figure 5. Increasing popularity of the ALTO service brings on a growth of transit Link stress 16 14 12 1 8 6 4 2 % 25% 5% 75% 1% ALTO client popularity Fig. 5. Link stress: outgoing transit traffic. ALTO server popularity = 1%. traffic outgoing from all other stub domains to the transit ones. Nevertheless, the growth is dispersed among many different stub-to-transit links. Since Scribe uses reverse-path forwarding and clients download multicast data from their parents in the tree, there is no significant difference between volume of traffic originating from ALTO-enabled and from ALTO-disabled stub domains. 4) Peering Traffic: Optimizing the overlay traffic causes a substantial growth of the peering traffic, i.e., the traffic being exchanged directly between stub domains. It is important to remember that in most cases this traffic is much cheaper than the transit one. The increase in the average peering traffic depends linearly on the ALTO client probability, and the peering traffic volume in the case of 1% ALTO probability is about 15 times greater than in the case of no ALTO. Figure 6 shows that the growth of the incoming peering traffic significantly depends on whether the domain contains an ALTO server or not. The outgoing peering traffic volume originating from the ALTO-enabled and the ALTO-disabled domains remains at the same level. 5) Local Traffic: It is observed that even a small fraction of ALTO-enabled peers increases the non-problematic traffic which stays within one stub domain. Surprisingly, the average level of the increase of the local traffic does not depend on the fact whether the stub domain contains an ALTO server or not.

Link stress 2 15 1 5 Without ALTO server With ALTO server Average link load [Mb/s] 14 12 1 8 6 4 2 Global Transit Peering Local % 25% 5% 75% 1% ALTO server popularity Without ALTO 1 2 4 Rows exchanged with ALTO popularity=1% Fig. 6. Link stress: incoming peering traffic. ALTO client popularity = 1%. Fig. 7. Estimation of different types of traffic. B. Maintenance Traffic To assess the amount of the overhead generated by the optimization process, the maintenance messages have been also logged and analyzed. Enabling ALTO in all domains and on all peers causes a fivefold increase of the amount of the maintenance traffic flowing within stub domains. The impact of the popularity of ALTO within ISPs on the traffic flowing between ISPs is not significant (growth by 1 8%). 1) ALTO Queries and Responses: The ALTOQuery and ALTOResponse messages are exchanged between peers and ALTO servers. Peers contact only ALTO servers in their domains. Thus, the ALTO query and response messages are observed only on the intra-domain links inside the stub domains. The intensity of the messages is growing linearly with the popularity of the ALTO clients. What is obvious, the query and response messages are not observed within the domains that are not running ALTO servers. Moreover, the number of such messages passing the links inside an ALTO-enabled domain does not depend on the popularity of ALTO among all other network operators. 2) Route Row Requests and Responses: The RequestRouteRow and BroadcastRouteRow messages are standard FreePastry messages used by the peers to exchange information on other peers addresses. They are used by the FreePastry ALTO implementation. The intensity of the RequestRouteRow messages depends linearly on the popularity of ALTO. Since ALTOenabled peers send requests to both ALTO-enabled and ALTOdisabled peers, without distinguishing between them, the RequestRouteRow messages are observed also within the ALTO-disabled domains. The BroadcastRouteRow messages are used also by the standard FreePastry routing protocol. Therefore, such messages were observed even before introducing ALTO. Similarly to the case of RequestRouteRow messages, the BroadcastRouteRow message intensity was growing with the increase of the ALTO popularity. 3) Scribe Messages: The SubscribeAck messages are sent only when a peer joins a tree. Therefore, without traffic optimization processes, peers join the topic only on their start and such acknowledgments are sent rarely. Growth of the popularity of ALTO increases the frequency of resubscribe events on a scale of the whole network. Since the unsubscribe and drop messages are used during the resubscribing process, the linear growth of the intensity of both message types is observed. C. Total Traffic Estimation The maintenance traffic growth does not overcome the multicast traffic decrease. It was assumed that the multicast stream bit rate is 128 kb/s and that the stream was divided into 1-byte frames. The multicast and maintenance flows were summed up for each type of traffic separately. Figure 7 presents the impact of introducing ALTO on different types of traffic. Moreover, it is shown how the number of the rows exchanged during the FreePastry routing optimization process influences the data rates. For better readability, only two extreme cases were presented: when there are no ALTO servers, and when all clients and all domains optimize their traffic. In other cases, the volume of the global, transit, and peering traffic depends linearly on the ALTO popularity. The increase of the local traffic is significant even for the low (25%) ALTO popularity. It turns out that the number of exchanged rows does not influence the reduction of the global traffic. When considering the three other traffic types, the best results are observed when the number of exchanged rows is set to two. It is not advised to choose too large values of the accuracy of the optimization, because the maintenance traffic growth may overcome the multicast traffic decrease. D. Relative Delay Penalty The quality of experience in ALM services is inextricably linked with the notion of relative delay penalty (RDP). Since the metric used by the ALTO servers to rank lists was designed to optimize network operators costs, and not to optimize RDP, it was predictable that RDP would grow with the increase of the ALTO popularity. However, while the increasing popularity of ALTO causes an increase of RDP in the domains without ALTO servers, RDP observed by the peers in the ALTO-enabled domains does not depend on the popularity of ALTO within all other ISPs. The comparison is

Cumulative proportion of messages 1..8.6.4 %.2 25% 5% 75%. 1 2 3 4 5 6 7 8 9 1 Relative delay penalty, RDP Fig. 8. Relative delay penalty in ALTO-disabled domains. Different curves are related to various ALTO popularity levels across the whole network. Cumulative proportion of messages 1..8.6.4 25%.2 5% 75% 1%. 1 2 3 4 5 6 7 8 9 1 Relative delay penalty, RDP Fig. 9. Relative delay penalty in ALTO-enabled domains. Different curves are related to various ALTO popularity levels across the whole network. The plot for 75% popularity overlaps with the one for 1% popularity. presented in Figures 8 and 9 showing our simulation results. A peer observes RDP equal to one when it downloads directly from the multicast content source. However, the root node may be unable to handle 8% of all the group (channel) members (see Figure 8, results for % popularity). Without ALTO, subscription requests generated by a part of users may be rejected. Using ALTO and selecting a nearby peer instead of the source as a parent significantly increases the probability that a peer will join the group and receive the requested stream. IV. CONCLUSIONS The results indicate that overlay multicast applications can be easily modified to obtain information from the ALTO servers to significantly reduce ISPs costs. The volume of the most expensive global and transit traffic can be significantly reduced, while the amount of traffic carried by peering and local links increases. The growth of those cheap types of traffic is lower than the reduction of the expensive ones. Concluding, setting up ALTO servers and implementing ALTO clients in ALM applications may lead to the significant reduction of the network operators costs. ACKNOWLEDGMENTS The authors would like to thank Andrzej Jajszczyk and Rafał Stankiewicz for their helpful comments. This work was supported in part by the Polish Ministry of Science and Higher Education under Grant N N517 555239. REFERENCES [1] V. Aggarwal, A. Feldmann, and C. Scheideler, Can ISPS and P2P users cooperate for improved performance? SIGCOMM Comput. Commun. Rev., vol. 37, pp. 29 4, Jul. 27. [2] D. R. Choffnes and F. E. Bustamante, Taming the Torrent: A Practical Approach to Reducing Cross-ISP Traffic in Peer-to-Peer Systems, SIGCOMM Comput. Commun. Rev., vol. 38, pp. 363 374, Aug. 28. [3] H. Xie, Y. R. Yang, A. Krishnamurthy, Y. G. Liu, and A. Silberschatz, P4P: Provider portal for applications, SIGCOMM Comput. Commun. Rev., vol. 38, pp. 351 362, Aug. 28. [4] S. Ratnasamy, I. Stoica, and S. Shenker, Routing Algorithms for DHTs: Some Open Questions, in Peer-to-Peer Systems, ser. LNCS, P. Druschel, F. Kaashoek, and A. Rowstron, Eds. Springer, 22, vol. 2429, pp. 45 52. [5] M. Castro, P. Druschel, Y. C. Hu, and A. Rowstron, Topology- Aware Routing in Structured Peer-to-Peer Overlay Networks, Microsoft Research, Technical Report MSR-TR-22-82, 22. [6] A. Rowstron and P. Druschel, Pastry: Scalable, Decentralized Object Location and Routing for Large-Scale Peer-to-Peer Systems, in Proc. IFIP/ACM International Conference on Distributed Systems Platforms Middleware 21, Heidelberg, Germany, Nov. 21, pp. 329 35. [7] P. Maymounkov and D. Mazières, Kademlia: A Peer-to-Peer Information System Based on the XOR Metric, in Proc. International Workshop on Peer-to-Peer Systems IPTPS 2, Cambridge, MA, USA, Mar. 22. [8] M. Castro, M. B. Jones, A. M. Kermarrec, A. Rowstron, M. Theimer, H. Wang, and A. Wolman, An Evaluation of Scalable Application-Level Multicast Built Using Peer-to-Peer Overlays, in Proc. 22nd Annual Joint Conference of the IEEE Computer and Communications Societies INFOCOM 23, vol. 2, San Francisco, CA, USA, Mar. Apr. 23, pp. 151 152. [9] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and S. Shenker, A Scalable Content-Addressable Network, SIGCOMM Comput. Commun. Rev., vol. 31, pp. 161 172, Aug. 21. [1] A. Kovačević, O. Heckmann, N. Liebau, and R. Steinmetz, Location Awareness Improving Distributed Multimedia Communication, Proceedings of the IEEE, vol. 96, no. 1, pp. 131 142, Jan. 28. [11] F. Picconi and L. Massoulie, ISP Friend or Foe? Making P2P Live Streaming ISP-Aware, in Proc. 29th IEEE Int. Conf. Distributed Computing Systems ICDCS 9, 29, pp. 413 422. [12] M. Castro, P. Druschel, A. M. Kermarrec, and A. I. T. Rowstron, Scribe: a Large-Scale and Decentralized Application-Level Multicast Infrastructure, IEEE Journal on Selected Areas in Communications, vol. 2, no. 8, pp. 1489 1499, 22. [13] IETF, Alto Status Pages. [Online]. Available: http://tools.ietf.org/wg/ alto/ [14] FreePastry. [Online]. Available: http://freepastry.org/freepastry/ [15] R. Alimi, R. Penno, and Y. Yang, ALTO Protocol, Internet Engineering Task Force, Internet-Draft draft-ietf-alto-protocol-6, Oct. 21, work in progress. [16] Y. K. Dalal and R. M. Metcalfe, Reverse Path Forwarding of Broadcast Packets, Communications of the ACM, vol. 21, no. 12, pp. 14 148, 1978. [17] ProtoPeer The P2P Prototyping Toolkit. [Online]. Available: http://protopeer.epfl.ch/ [18] E. Zegura, K. Calvert, and S. Bhattacharjee, How to Model an Internetwork, in Proc. 15th Annual Joint Conference of the IEEE Computer and Communications Societies INFOCOM 96, vol. 2, San Francisco, CA, Mar. 1996, pp. 594 62. [19] P. Wydrych, ALTO+Scribe. [Online]. Available: http://www.kt.agh. edu.pl/~wydrych/research/altoscribe/ [2] J. Seedorf and E. Burger, Application-Layer Traffic Optimization (ALTO) Problem Statement, RFC 5693 (Informational), Internet Engineering Task Force, Oct. 29.