Characterization of signaling and traffic in Joost
- 1.2k Downloads
Peer-to-Peer (P2P) IPTV applications have increasingly been considered as a potential approach to online broadcasting. Recently, many applications such as PPlive, PPStream, and Sopcast have been deployed to deliver live streaming via P2P. One of the latest systems is Joost, which can deliver both Video-on-Demand and Real-Time services. Measuring and characterizing this application in terms of signaling overheads and traffic profiles helps to better understand the key limitations of current P2P IPTV systems. Therefore, the main purpose of this paper is firstly to study the impact of Joost on the network. Secondly, we wish to determine the underlying mechanisms of Joost, distinguishing between the Video-on-Demand and the Real-time services. Our study is carried out through a close investigation and analysis on the traffic of Joost in two types of streaming. Based upon the data tracing and collection, many different statistics have been derived. Our study unveils strengths (e.g. good resilience to end-to-end delay and jitter) and shortcomings (e.g. poor locality) and yields recommendations for future P2P IPTV systems.
KeywordsP2P streaming Traffic characterisation Joost
Peer-to-Peer (P2P) streaming represents an economical, robust, and scalable alternative to the more conventional client–server (CS) approach . The basic idea is that, rather than streaming media from dedicated servers, an application-level overlay is formed by the user terminals, which cooperate in the distribution of the stream itself . While receiving a stream, terminals simultaneously act as distribution hubs for it. In this way, the bottlenecks and failure points traditionally associated with servers are virtually eliminated, since individual servers are replaced by a multitude of user terminals. Also, as the number of users connecting to a certain stream grows, so is the number of distribution points. Hence the system scales much better than any CS counterpart .
The P2P streaming concept has now lead to a number of trial P2P IPTV systems such as PPlive , Joost , PPStream , and Sopcast . There is now clear commercial interest in these new technologies which are revolutionizing the online broadcasting arena.
Despite the numerous advantages of P2P streaming in general and P2P IPTV in particular, their characteristics in terms of signaling overheads and network efficiency are not well known. Most systems make use of proprietary protocols and are not open to the research community. This makes it virtually impossible to carry out simulation studies aimed at determining whether a large-scale deployment of P2P streaming will be sustainable in terms of network resources, operation, and management.
On the other hand, trial platforms are already in use, which creates the opportunity to get a better insight into mechanisms of P2P and their effects on the network. Our work pursues this avenue. We look at signaling and traffic characteristics in Joost, one of the most recent applications supporting both Video-on-Demand (VoD) and Real-Time (RT) streaming services. Data tracing and deep packet inspection unveiled a wealth of interesting properties, some of which were not entirely expected. Our study reveals strength (e.g. good resilience to end-to-end delay and jitter) and shortcomings (e.g. poor locality) and yields recommendations for future P2P IPTV systems.
P2P streaming architectures
Peer to Peer streaming architectures can be categorized based upon their distribution mechanisms. The various approaches to P2P streaming have been surveyed by Liu et al. . Our analysis is particularly concerned with two main methods, which are briefly outlined below.
In the tree-based architecture, the peers are ordered hierarchically by the source, known as the parent. The parent node, in turn, sends data packets to intermediate nodes, and these nodes relay them iteratively until leaf nodes are reached.
Despite introducing a good level of parallelism and distribution, this approach suffers from a number of limitations. The root, or data source, is a single point of failure, which limits the robustness of the system. Another problem is that if peers join and leave frequently the tree has to be rebuilt too often, which has a negative impact on signaling overheads, latency, and stability.
An example of tree-based streaming application is Peercast , an open-source software for streaming both audio and video. A peculiarity of Peercast is that any node can specify the maximum number of incoming connections allowed.
In this architecture, the overlay network supporting the stream distribution is a mesh. Data is divided in chucks in such a way which allows a peer to receive portions of the stream from different peers and assemble them locally.
This approach is more robust than the tree-based architecture, since when a stream comes from various sources communication does not break when only a subset of peers disconnect. Another benefit is that this transport method reflects well the asynchronous nature of many access network technologies (e.g. ADSL). In fact, peers can download a stream at full quality whilst uploading only a fraction of it. The same feature is exploited in P2P file sharing application BitTorrent . Common streaming applications in the mesh-based category are GNuStream , PPlive , Coolstreaming , and Joost . This method is becoming more widespread than the tree-based one. That is why in our study we have chosen to scrutinize Joost.
Very few researchers have studied P2P streaming based on commercial platforms. Applications that can be truly categorized as P2P have appeared only recently and their underlying algorithms are, in many cases, proprietary and not readily available for academic scrutiny.
A study which is similar to the one presented in this article has been carried out by Hei et al. [1, 6]. They characterize the traffic and behavior of PPlive, whereas we have focused on Joost which is more recent and provides both VoD and RT streaming. Other studies focused only on the VoD service are reported in [7, 8], and .
Given to its original conception, Joost has several similarities to Skype, which is however a P2P conferencing tool. From the several works assessing Skype we can learn about mechanisms that are supposedly analogous in Joost. Examples include the bootstrapping process, the supernodes’ election algorithm, and the management of the overlay when nodes join or depart .
At the time of writing, only two studies of Joost are available in the form of technical reports. Lei et al. explain the key underlying mechanisms of Joost . Lei et al. focus on Joost components and architecture . These studies were conducted on earlier versions of Joost (v. 0.9.2 and v. 1.0, respectively). Our study is based on v.1.1.4 which is more stable and includes new functionality, most notably RT streaming. Because of this, we have been able to identify key differences between VoD and RT, in addition to carrying out further statistics on packet traces. Also we characterize both UDP and TCP traffic, both in upload and download modes.
Our work looks specifically at network locality, the ability of Joost to select nodes which are close to each other. We characterize the relative distribution of nodes and the mapping between logical and physical overlays at city and country levels.
Tobias Hoßfeld et al. , have done a comparative study of popular P2P IPTV systems such as Joost, PPlive, and Zattoo. Their study was concerned about how the user perceives these P2P IPTV systems. In addition, they have indicated key features of these applications, including topology management, distribution protocols, and bandwidth utilization. Similarly to our study, they conducted experiments based on passive measurements and considered both download and upload traffic.
Our study considers additional parameters, studies both RT and VoD streaming and looks specifically at network locality and geographic load distribution.
Another study of P2P streaming system, focused on Coolstreaming, is by Susu Xie et al. . They used real traces and tried to draw some theoretical basis to demonstrate that selecting peers randomly has the possibility to scale well. They developed some fundamental concepts about Coolstreaming, showing how problems relating to heterogeneity can be addressed by some advanced buffering techniques. They also looked at important performance factors including bootstrap time and the rate of join and leave in the P2P network.
Similarly to Xie et al., we study P2P IPTV in terms of churn and bootstrapping delay. However, we also look at other parameters such as traffic distribution and network locality. We considered upload and download traffic incurred by RT and VoD. Most importantly, our work can be considered complimentary to Xie’s since we draw conclusions based on real measurements, rather than relying on simulations.
Another work that focuses on the issue of network locality is by Aleksandra Kovacevic et al. . They conclude that location awareness decreases transmission delay, one of the most important factors in media streaming. Despite working on the assessment of different systems, our study leads to similar conclusions about the importance of designing location-aware overlays to pursue bandwidth conservation.
Another eminent work is by Thomas Silverston et al.  who have performed a measurement study during the last FIFA World Cup, comparing four P2P streaming applications (PPStream, PPlive, TVAnts, and Sopcast). Their study was concerned with the traffic statistics and the churn of peers. In addition, they were concerned about the impact of the traffic generated on the network from these applications. Finally, they showed the user behavior into these systems. Likewise, we present our results based on passive measurements of live streams. However, our work focuses on Joost which is a more recent application and supports both RT and VoD services. Additionally, we study network locality.
Alexandro Sentinelli et al.  report on their measurements based on Sopcast. They figured out a number of important parameters like the average number of peers that a node connects to, the typical start-up delay, the continuity indexing, and the amount of data buffered at the client side. Their work is particularly valuable as it is based on a large-scale testbed, PLANETLAB. Again, our work can be considered to be complementary as we look at additional features and study Joost.
Overview of Joost
Joost is a peer to peer streaming application that delivers television-quality VoD and RT streaming services via a P2P network overlay. It was created by the founders of Skype and KaZaA and is currently in Beta version (v. 1.1.4 at the time of writing) . Joost supports more than 15,000 TV programs through more than 200 channels . Key components and functions of Joost are described below.
Our experiments were conducted in the United Kingdom. We collected Joost packets in different types of streaming mode (VoD and RT). We used the current beta version of Joost, v. 1.1.4.
The specifications of the machine used to gather VoD data were as follows: Windows XP with Intel® core™ 2CPU 6420 @ 2.13 GHz, 3.25 GB of RAM.
The specifications of the machine used to gather live streaming data were as follows: Windows XP with AMD Athlon TM 64 3400+ processor (2.10 GHz), 1GB of RAM.
Each PC ran Wireshark v1.0.0 (an open source network protocol analyzer which is known as Ethereal) and Netpeeker v3.10, a network monitor used to capture all inbound and outbound traffic incurred by Joost.
VoD traces were collected from one of the most popular Joost channels i.e., selected from the “what’s popular” section. Traces included all events based on a 2-h observation window. The overall size of our trace files was 277 Mb.
RT traces were based on the four live channels which broadcast sport clips. Our traces include all events based on a 1-h observation window relating to a single live channel. Broadcasting is currently fairly limited to just a few hours per day, which limited the amount of data that could be collected within our experimental timeframe. The overall size of our trace files was 104 Mb.
Data traces were filtered at different granularities i.e., at byte, packet, and session levels. We distinguished between UDP, TCP, upload, download, data (VoD and RT), and signaling packets.
Signaling packets were differentiated from data packets since the former are in the order of 60–70 kb, whereas the latter are between 800 and 1,000bytes.
Traffic characterization and underlying mechanisms
Start-up delay is one of the important factors in online broadcasting. High values will give a low user experience, since the user is used to very low start-ups associated to television sets.
In P2P streaming, a start-up delay is unavoidable. The time incurred between the request to connect to a channel and the actual start of playback, is mainly due to: (1) the underlying peer discovery mechanisms, while the P2P overlay selects suitable peers that can act as uploaders (or data sources); (2) buffering time, required to deal with network jitter, packet loss, and temporary congestion.
For VoD, we found an average start-up delay of 25 s, ranging from a minimum of 16 to a maximum of 35 s.
On the other hand, RT streaming incurred a start-up delay of 5s, ranging from a minimum of 4 to a maximum of 8 s. The reasons for this considerable difference between VoD and RT can be found by analyzing some of the data described later in this article. In essence, buffering times in RT are smaller than their VoD counterpart since the former is transmitted at a lower bit rate and gives higher priority to responsiveness rather than quality. Also the discovery time incurred whilst determining the sources will be lower, since RT connects to an average of three sources whereas VoD requires an average of five sources (Figs. 7 and 6, respectively).
UDP vs. TCP utilization
Joost uses both UDP and TCP, although our analysis shows a wider and more frequent use of the former. Super nodes periodically exchange small UDP and TCP signaling packets (64bytes) with other peers for overlay management purposes (e.g., to check whether relevant simple peers are still reachable). Furthermore, every time a user switches channel, the peer needs to get in touch with its super node, which handles the stream re-direction process. However, our data shows that UDP packets are used more frequently for this purpose.
The fact the RT packets are only observed for about 20 min is because this is currently the average length of live broadcasting session in Joost. Figure 3, shows that UDP incurs a higher rate at the beginning which is due to the need to buffer as fast as possible, a requirement which is less important in VoD. However, looking at the long-term average of transfer rate, we can see that RT is encoded at a lower rate than VoD. Clearly the extra constraints introduced by RT require relaxing some of the requirements on the quality of the stream.
Figure 4, gives an account of the different pattern observed in RT and VoD in terms of signalling. In fact, TCP is not used for data transfer in Joost. We can see the RT requires a higher peak of signalling at the beginning, but the long-term average goes below its VoD counterpart. We have not been able to define reasons for this. However, this behavior suggests that RT initiates a more aggressive search for sources, since it requires connecting quickly. And this is also in agreement with the lower connection times seen in RT (5 s as opposed to the 25 s of VoD), as observed in Section 5.1.
Download video traffic
The most notable result from Fig. 5 is that RT is encoded (thus transmitted) at a lower bit rate than VoD. We have already commented on this aspect before in Section 5.2, however, this behavior suggests that RT initiates a more aggressive search for sources, since it requires connecting quickly. And this is also in agreement with the lower connection times seen in RT (5 s as opposed to the 25 s of VoD), as observed in Section 5.1.
We also observe that the variability in VoD transmission rate is much higher and several intervals do not see any packet transmission at all. In VoD this is acceptable since playback deadlines are less stringent than in the case of RT.
Upload video traffic
Consistently with Fig. 8 are our observations of inbound connections. Joost is configured in a way as to allow on average 1 inbound connection, both in RT and VoD. The pattern of connectivity is, however, different. RT inbound connections are mainly concentrated in the initial part of the overall broadcast period but are relatively more stable and incur a higher rate than in VoD. This is coherent with the need for greater stability in RT, where handover among different sources is kept to the minimum.
On the other hand, VoD gets inbound connection request during a longer period, although there are longer periods having no connections. This reflects the continuous handover among alternative peers for load balancing purposes (as already noted above).
Worth mentioning is that when we studied the correlation between inbound and outbound connections among peers, we noticed that there is no reciprocity. That is to say that, contrary to many P2P file sharing systems such as BitTorrent, Joost does not employ a tit-for-tat policy. In other words, nodes do not try to act as uploaders for those peers who have previously provided data.
P2P streaming applications taxonomy
P2P streaming applications
20 s–2 min
Network locality and geographic distribution
Network locality is the ability to maintain the P2P overlay in such a way as to create logical connections among peers who are physically close to each other. The way inter-communicating peers are geographically distributed has significant implications in terms of network efficiency—the ideal condition being when the most intensive data exchanges happen among nearby peers.
In order to determine whether Joost is location aware, we have conducted a number of experiments, monitoring the IP addresses of all communicating peers. We then used IPNETinfo v1.10 to map IP addresses to physical (geographical) addresses—at city and country levels. As before, we considered VoD, RT, upload, and download traffic. However, while in the experiments described above we were studying traffic and connections over the time; in the following pie-charts we display the average geographical distribution of inbound and outbound connections. A selection of results is presented below.
Unexpectedly, most of the VoD traffic originates from Canada whereas most of the RT traffic comes from the USA. This seems to infer that Joost load balances computing resources but neglects network resource optimization.
These results confirm our previous comment about the intrinsic unfairness of Joost which does not implement a tit-for-tat policy. It is therefore hard to draw any definite conclusion as to whether Joost implements an explicit computational load balancing algorithm. It is possible that a high degree of randomness is embedded in overlay management.
Load balancing: P2P systems are known for their ability to autonomically balance computing resources. This is achieved well in P2P file sharing applications where time constraints are not so stringent, which allows for better resource optimization and overlay management. However, P2P streaming poses time limits which make this task harder. Methods which cater for near-optimal load balancing of computing resources within the limits imposed by RT streaming will acquire importance since mobile, thin terminals will demand more effective off-loading mechanisms.
Network locality: streaming without considering ways for optimizing the use of network resources is bound to pose serious hurdles, since this clashes with the modus operandi of network operators and ISPs. Methods which allow prioritizing connections based on geographical proximity as well as mobility patterns have considerable potential in terms of network efficiency.
Fairness and free riding: this is one of the issues in common to all type of P2P applications, not merely P2P streaming. There must be a way to prioritize connections based on mutual resource sharing. There is, on the other hand, a strong trend towards free riding (i.e., peer who get resources without sharing their own), a problem which dramatically degrades the performance of P2P. In the case of P2P streaming, it seems easier to tackle this issue. Appropriate mechanisms, coupled with economic models (e.g., based on incentives) will be required.
Start-up delay: this is excessive in current systems, which makes the user experience poor if compared to conventional TV broadcasting. Switching channels is also too slow, which makes zapping impossible. This seems a hard problem since buffering time cannot be reduced in current best-effort networks.
Mobile user: current P2P streaming systems impose requirements (in terms of computational and access network capability) that are beyond the reach of state-of-the-art mobile phones or PDAs. Mobile P2P streaming poses some challenging research issues that are bound to attract vivid attention.
This article is distributed under the terms of the Creative Commons Attribution Noncommercial License which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
- 1.PPlive, www.pplive.com. Last Access was on 17th of April 2008
- 2.Joost, www.Joost.com. Last Access was on 18th of April 2008
- 3.PPStream, www.ppstream.com. Last Access was on February 2008
- 4.Sopcast, www.sopcast.com. Last Access was on January 2008
- 5.Lei J et al (2007) An experimental analysis of Joost peer to peer VOD services. Technical Report, Computer Networks Group, University of Gottingen, GermanyGoogle Scholar
- 7.Do T, Hua K, Tantaoui M (2004) P2vod: providing fault tolerant video-on-demand streaming in peer-to-peer environment. Proc IEEE ICC 3:1467–1472Google Scholar
- 9.Huang C, Li J, Ross K (2007) Peer-assisted VoD: making internet video distribution cheap. In Proc. IPTPS 2007, Feb 26–27Google Scholar
- 10.Zhang X, Liu J, Li B, Yum T-SP (2005) DONet/CoolStreaming: a data-driven overlay network for peer-to-peer live media streaming. Proc IEEE INFOCOM 3:2102–2111Google Scholar
- 13.Jiang X, Dong Y, Xu D, Bhargava B (2003) GnuStream A P2P media streaming system prototype. Proc 2003 ICME 2:325–328Google Scholar
- 15.Hoßfeld T et al (2008) A qualitative measurement survey of popular internet-based IPTV systems. Appears in the International Conference on Communication and Electronics, 4–6 June 2008, pp 156–161Google Scholar
- 18.Silverston T, Fourmaux O (2007) P2P IPTV measurement: a comparison study. Submitted on 23 Oct 2006 (v1), last revised 19 Apr 2007 (v4)Google Scholar
- 20.Babaoglu O, Meling H, Montresor A (2002) Anthill: a framework for the development of agent-based peer-to-peer systems. In Proc. 22nd IEEE International Conference on Distributed Computing Systems 2002, Vienna, AustriaGoogle Scholar
- 21.Hipp R. SQLite. http://www.sqlite.org/