Copyright to IJIRCCE DOI: 10.15680/IJIRCCE.2017. 0503158 4456
Implementation of Peer Assisted Paradigm for
Rich Media Delivery.
Kushagr Gupta
1, Aanchal Lohia
2, Sanjay Chauhan
3, Dhairav Mehta
4, Nileema Pathak
5B.E. Student, Dept. of I.T., Atharva College of Engineering, Malad, Mumbai, India1 B.E. Student, Dept. of I.T., Atharva College of Engineering, Malad, Mumbai, India2 B.E. Student, Dept. of I.T., Atharva College of Engineering, Malad, Mumbai, India3 B.E. Student, Dept. of I.T., Atharva College of Engineering, Malad, Mumbai, India4 Head of Department. Dept. of I.T., Atharva College of Engineering, Malad, Mumbai, India5
ABSTRACT:A huge part of the global consumer data consumption takes place in the form of rich media. Web based
audio and video based services are increasingly popular, and service providers must figure methods of efficiently and effectively serve a growing user base. This leads to considerable strain on the service providers and backbone network architectures that are used to serve high bitrate content to users. Hence intelligent delivery mechanisms need to be explored to meet user demands. WebRTC provides an alternate delivery mechanism for web content, with the added complexity of handling dynamic resources. It can be used to create a peer to peer delivery mechanism for rich media, reducing effective load on backbone network architectures, reducing bandwidth strains on service providers by leveraging the storage and unutilized upstream bandwidth capabilities of users.
KEYWORDS: peer; rich-media; peer-assisted; web-torrent, bit-torrent
I. INTRODUCTION
Web based internet services, providing easy on demand access to rich media have gained popularity due to availability of affordable access to high speed access to the internet. Service providers like Youtube, Netflix, Apple Music have disrupted the traditional rich media delivery mechanisms and have grown exponentially in popularity and user base. Such services traditionally rely on Content Delivery Networks (CDNs) to deliver their high bandwidth content to their users, but these CDNs have a propensity to fail in times of high user interaction, having high latencies and insufficient bandwidth capacities when facing load. These services are also restricted in the numbers of services serviceable by the outward bandwidth capabilities of the CDNs.
The WebRTC based peer assisted method utilizes the capability of browsers using the WebRTC protocol to open one to one connections to create a mesh of browser clients. This allows data exchange between the different users and decentralized delivery of content to users.
II. RELATED WORK
The digital revolution brings significant development and widespread use of rich media resources in Enterprise Media Network, Digital Marketing and others. Earlier work in the field of content delivery has been involved with utilizing data replication centers in combination with WebRTC protocol to protect against network failures [1].
Copyright to IJIRCCE DOI: 10.15680/IJIRCCE.2017. 0503158 4457
techniques such as Web Real-Time Communication (WebRTC) API and its library, PeerJS to overcome he difficulty of implementing some advanced functions such as direct communications among users and file sharing. To identify and register users it uses the JavaScript Library: PeerJS [4]. The limitation of PeerJS library is the range of browsers who support it. Thus, there needs to be a universal mechanism to connect to peer clients across browser barriers.
The paper [1] proposes certain factors for choosing relay peers for a requesting user: (1) Diversity of peers’ locations. (2) Diversity of peers’ network ISP. (3) Diversity of peers workload and time-to-stay. These provide a structured system to interconnect all users in the minimum geographic radius in order to provide high numbers of peers to enrich the user experience. The effectiveness of their design can be compared with non-peer-assisted strategy and random peer selection strategy, their design significantly improves the successful relay ratio of web content items under network failures, e.g., their design improves the content download ratio up to 60% even when users located in a region (e.g., city) where none can connect to the regional CDN server.
Earlier efforts [8] involve dynamic load-balancing on a large-scale distributed computing environment. The scheduling processes are performed by independent distributed schedulers on individual computing resources. There exists a master that regulates the amount of jobs among workers. Workers build an overlay network among them with P2P communication, in order to quantify the impact of workers for scalability and fault tolerance.
There have also been some projects [5] which address the challenges of browser based peer to peer content sharing. It exchanges messages asynchronously and facilitates new peer joins via existing peers in the network, thus reducing the dependency on bootstrap server. Increased popularity and support of WebRTC protocols by major browsers motivates its usage for curbing the problem of rich content delivery.
III.PSEUDO CODE
Step 1: Start
Step 2: Initialize Server Instance
Step 3. Seed each of the peered media. Create Magnet Links for each item from peered media. Step 4. Store Magnet links in database if they do not already exist.
Step 4. Receive Request for Magnet Link.
Step 5. Retrieve Magnet Link from database and serve it to user Step 6. Announce Magnets to Tracker. Request list of other peers. Step 7. Download media from peers
Step 8. Seed Media to new users. Step 9. End.
IV.IMPLEMENTATION
Copyright to IJIRCCE DOI: 10.15680/IJIRCCE.2017. 0503158 4458
Fig 1: System Diagram
V. RESULTS
We have developed an automated web server, a client side script and a tracking server to implement the delivery system. The web server is designed be run by the service provider, and will do the work of providing media by seeding the peered media files. As shown in Fig. 2 the server also creates magnet links, storing them in a database. The server will serve these links to the client browsers, as shown in Fig. 3.
The client side script is used to load the peered media on the browser. The script requests the list of other users with the same media file loaded from the tracking server, which keeps a list of all the peers in the peered network and their downloading or uploading status as seen in Fig 4.After receiving the list of users the browser script proceeds to download data from the other users block by block, verifying the validity of each block as it is completed. This can be seen in Fig. 5 where progress of download and the number of sources is tracked.The download takes place to allow streaming of content without full download i.e sequential download. The content is finally displayed on the webpageas seen in Figure 6.
Fig 2. Server Console Output 1 Fig 3. Server Console Output 2
Copyright to IJIRCCE DOI: 10.15680/IJIRCCE.2017. 0503158 4459
Fig 6. Video Playback On Client Browser
VI.CONCLUSION AND FUTURE WORK
The simulation results showed that the proposed system will allow for the delivery of rich media in an alternate method, reducing the amount of stress on CDNs and other delivery mechanisms. It will also utilize the unused upstream bandwidth of users and leverage the user’s cached data to serve content to other users. It forms a volunteer computing delivery mechanism which increases the quality of service for end users, reduces load on service providers and helps in dealing with large number of user requests.
A future improvement in this method can be in the form of path aware networking which will allow for even less latency and faster connection and transfer speeds between peers.
REFERENCES
1. W. Hu, Z. Wang and L. Sun, "Path-aware peer-assisted web content delivery against network failures", 2015 IEEE 23rd International
Symposium on Quality of Service (IWQoS), pp. 79-80, 2015.
2. M. Kuhara, N. Amano, K. Watanabe, Y. Nogami and M. Fukushi, "A peer-to-peer communication function among Web browsers for
Web-based Volunteer Computing," Communications and Information Technologies (ISCIT), 2014 14th International Symposium on, Incheon, pp.
383-387, 2014.
3. F. Rhinow, P. P. Veloso, C. Puyelo, S. Barrett and E. O. Nuallain, "P2P live video streaming in WebRTC," Computer Applications and
Information Systems (WCCAIS), 2014 World Congress on, Hammamet, pp. 1-6, 2014.
4. PeerJS: http://peerjs.com/
5. S. Vashishth, Y. Sinha and K. H. Babu, "Addressing Challenges in Browser Based P2P Content Sharing Framework Using WebRTC," 2016
IEEE 30th International Conference on Advanced Information Networking and Applications (AINA), Crans-Montana, pp. 850-857, 2016.
6. Node.js: http://nodejs.org
7. WebRTC: https://webrtc.org/
8. Y. Murata, T. Inaba, H. Takizawa and H. Kobayashi, "A distributed and cooperative load balancing mechanism for large-scale
P2Psystems," International Symposium on Applications and the Internet Workshops (SAINTW'06), pp.126-129, 2006.
9. M. Zhang, Y. Xiong, Q. Zhang, L. Sun, S. Yang, "Optimizing the throughput of data-driven peer-to-peer streaming", IEEE TPDS, vol. 20, pp:
97 – 110, 2009.
10. K. Gupta, A. Lohia, D. Mehta, S. Chauhan and N. Pathak, “Peer Assisted Web Content Delivery” International Journalof Engineering
Research and Technology (IJERT) ICATE – 2017Conference Proceeding, Special Edition , pp 19-21, 2017.
BIOGRAPHY
Copyright to IJIRCCE DOI: 10.15680/IJIRCCE.2017. 0503158 4460
Aanchal Lohais a B.E. student in the I.T. Department, Atharva College of Engineering, Mumbai University, Mumbai, Maharashtra, India.
Dhairav Mehtais a B.E. student in the I.T. Department, Atharva College of Engineering, Mumbai University, Mumbai, Maharashtra, India.
Sanjay Chauhanis a B.E. student in the I.T. Department, Atharva College of Engineering, Mumbai University, Mumbai, Maharashtra, India.