4.1 Simulation Surroundings and setup
We will present results of the experiment in this chapter. Our simulated platform is NS-2 2.34. Network topology is generated by BRITE topology generator.
As figure 4-1 shows, the green nodes and the red nodes are generated by BRITE, and we put ours nodes on the red nodes.
Pareto Sampling (s) 2 seconds
Peer upload/download capacity
1024 Kbps
Source upload capacity 10 Mbps
Join/Update Probing Time 1 second
Score Threshold 8
Update time period 5 seconds
LT block size 1024 Bytes
LT section size 128 K Bytes
Target bit rate 512 Kbps
Buffer size 2 sections
Simulation Time 800 seconds
Table 4-1: Parameter setup
Gene pool size 10
Length per chromosome 10
Force update time period 20 seconds
Table 4-2: Genetic Algorithm Setup
Bloom filter size 7992 bits
Number of hash functions 9
Table 4-3: Bloom Filter Setup
4.2 The Same Objective - Emphasize on PABW
In order to check up the difference between our algorithm and [11], we let all peers have the same objective by set (u1, u2) as (0.5, 0.5), and (w1, w2, w3) as (1/6, 2/3, 1/6). In [11], it gets the better simulation results by setting its weighting as (1/6, 2/3, 1/6) based on its formula.
0.97 0.975 0.98 0.985 0.99 0.995 1 1.005
10 40 70 100 130 160 190 220 250 280 310 340 370 400 430 460 490 520 550 580
Time
Con tinu o u s In d ex
Generated by "Dynamic and Resilient Peer-to-Peer Architecture for Live Streaming”, 2007 [11]
Generated by proposed method
Figure 4-3: Throughput and Goodput
Figure 4-4: Section difference
Figure 4-5, 4-6 and 4-7 show the system performance. Our algorithm makes the effective throughput and the decoding rates are close to [11].
450
Throughput - generated by [11] Goodput - generated by [11]
Throughput - generated by proposed method Goodput - generated by proposed method
0
A ver ag e end -to -end s tr ea ming del ay ( se ct ion s)
Generated by [11] Generated by proposed method
Number of Peers (Generated by [11]) Number of Peers (Generated by proposed method)
4.3 The Branch of Objectives
We decide two objectives to compare, “Proposed – Continuous Index” totally emphasizes on smooth playback, and “Proposed – Synchronization of Peers” pays attention to synchronization between a peer and its parents.
In order to get better convergence efficiency, we initialize several sets of weightings of criteria in a peer’s gene pool when it joins system. According to formula (3), “Proposed – Continuous Index” basically sets (𝑤 , 𝑤 , 𝑤3) as (3/2, 1/6, 1/6), and “Proposed – Synchronization of Peers” basically sets (𝑤 , 𝑤 , 𝑤3) as (1/6, 2/3, 1/6). After setting, we do mutation process as table 3-3 three times and then store them in gene pool, so that we shall get many sets of weighting of criteria.
We group 300 nodes into “Proposed – Continuous Index”, and group other 300 nodes into “Proposed – Synchronization of Peers” every simulation.
0.88
The figure 4-2 is the simulation result of continuous index. It shows peers work smoothly than others if they emphasize with playback smooth. Because they have many chances to receive stable throughput from parents.
Figure 4-6: Section difference between difference objectives.
0
A ver ag e end -to -end s tr ea ming del ay per pee r (se ct ion s)
Proposed - Synchronization Proposed - Continuous Index
Generated by "Dynamic and Resilient Peer-to-Peer Architecture for Live Streaming", 2007 [11]
Number of Peers (Proposed - Synchronization) Number of Peers (Proposed - Continuous Index)
Number of Peers (Dynamic and Resilient Peer-to-Peer Architecture for Live Streaming", 2007 [11])
Figure 4-7: Duplicate bit rate between difference objectives.
The figure 4-3 it’s the simulation result of average end-to-end streaming delay. It is obviously “Proposed – Synchronization of Peers” can make smaller section delay than others.
Of course, it cost a little bit worse of playback, their parents have section data as close as source has but may not much in their transfer buffers, so that peers receive duplicate more often than not. Even though they are in unfavorable conditions, their average of continuous index still can keep approximately 0.9. It still can be tolerated.
0
Generated by "Dynamic and Resilient Peer-to-Peer Architecture for Live Streaming”, 2007 [11]
Chapter 5 Conclusions
Our algorithm allows user to decide their objective and keeps good performance with other objectives that they compete each other. At the same time, a peer cooperate update process with genetic algorithm and counts upstream peer’s ability by formula of objective as well.
We have three factors to measure a peer. The path available bandwidth factor can promise data bit rate of receivers on aggregate. The fresh level factor makes select latest data.
The hamming distance ratio factor chooses dissimilar path that can reduce duplicate data bit rate of receivers.
To dynamically change weightings of criteria with genetic algorithm is a good practical policy that is helpful for trying out to find possible optimal weightings, and preventing trapping into local optimal. A peer stores several sets of solutions of multiple criteria in gene pool that it used before. Gene pool can help direct a peer to create a new solution without going the wrong way.
Reference
[1] C. S. Wang and C. T. Chang, "Integrated genetic algorithm and goal programming for network topology design problem with multiple objectives and multiple criteria", IEEE/ACM Trans. on Networking, vol. 16, no. 3, Jun. 2008.
[2] H. Cai, P. Ge and J. Wang, "Applications of Bloom Filters in Peer-to-peer Systems:
Issues and Questions", International Conf. on Networking, Architecture, and Storage, pp.
97-103, 2008.
[3] A. Broder and M. Mitzenmacher, "Network applications of bloom filters: A survey", Internet Math., vol. 1, no. 4, pp. 485-509, 2003.
[4] F. Chang, J. Dean, S. Ghemawat, W. C. Hsieh, D. A. Wallach, M. Burrows, T. Chandra, A. Fikes and R. E. Gruber, "Bigtable: A Distributed Storage System for Structured Data", ACM Trans. on Computer Systems (TOCS), vol. 26 , no. 2, Jun. 2008.
[5] M. Clerc and J. Kennedy, "The particle swarm: Explosion, stability and convergence in a multidimensional complex space", IEEE Trans. on Evolutionary Computation, vol. 6, no.
1, pp. 58-73, 2002.
[6] R. Poli, J. Kennedy and T. Blackwell, "Particle swarm optimization An overview", Springer Science + Business Media, LLC, vol. 1, no. 1, pp. 33-57, 2007.
[7] D. E. Goldberg, "Genetic Algorithms in Search, Optimization and Machine Learning", Reading, MA: Addison-Wesley, 1989.
[8] C. A. Coello, "An Updated Survey of GA-Based Multiobjective Optimization
[10] D. Leonard, V. Rai and D. Loguinov, "On Lifetime-Based Node Failure and Stochastic Resilience of Decentralized Peer-to-Peer Networks", IEEE/ACM Trans. on Networking, vol. 15, no. 3, pp.644, Jun. 2007.
[11] C. W. Fan-Chiang and H. F. Hsiao, "Dynamic and Resilient Peer-to-Peer Architecture for Live Streaming", 2009
[12] C. Wu and B. Li, "rStream: Resilient and Optimal Peer-to-Peer Streaming with Rateless Codes", IEEE Trans. on Parallel and Distributed Systems, vol. 19, pp. 77-92, 2008.
[13] X. Zhang, J. Liu, B. Li and T.P. Yum, "CoolStreaming/DONet: a data-driven overlay network for peer-to-peer live media streaming", in Proc. IEEE INFOCOM 2005. 24th Annual Joint Conf. of the IEEE Computer and Communications Societies, vol. 3, pp.
2102-2111, Mar. 2005
[14] Principles of heuristic optimization: http://www.mm.helsinki.fi/kurssi/marv/MSUU14/
Heuristic.pdf
[15] X. Liao, H. Jin, Y. Liu, L. M. Ni and D. Deng, "AnySee: Peer-to-Peer Live Streaming", in Proc. INFOCOM 2006. 25th IEEE International Conference on Computer Communications, pp. 1-10, Apr. 2006.
[16] F. Pianese, D. Perino, J. Keller and E. W. Biersack, "PULSE: An Adaptive, Incentive-Based, Unstructured P2P Live Streaming System", IEEE Trans. on Multimedia, vol. 9, pp. 1645-1660, 2007.
[17] X. Jiang, Y. Dong, D. Xu, Bhargava, B., "GnuStream: a P2P media streaming system prototype", in Proc. 2003 International Conference on Multimedia and Expo, 2003.
ICME '03, vol. 2, pp. 2, Jul. 2003.
[18] X. Hei, C. Liang, J. Liang, Y. Liu, Ross and K.W., "A Measurement Study of a Large-Scale P2P IPTV System", IEEE Trans. on Multimedia, vol. 9, no. 8, Dec. 2007.
[19] R. Schollmeier, "A Definition of Peer-to-Peer Networking for the Classification of Peer-to-Peer Architectures and Applications", in 2001. Proc. First International Conf. on Peer-to-Peer Computing, Aug. 2001.
[20] PPStream : http://www.ppstream.com/
[21] PPLive : http://www.pptv.com/
[22] QQLive : http://live.qq.com/
[23] Open Bloom Filter Library: http://www.partow.net