Addressing Challenges in Browser Based P2P Content Sharing Framework Using WebRTC
Most of the content sharing applications use the client/server model in which all of group managements are done by the server and this sometimes becomes a communication bottleneck. Installing specialized software for different purposes such as file sharing, video conferencing etc. becomes a barrier for the user. Recent technologies like NodeJs and Socket.io have fostered new ideas the ways web browsers can be used. Moreover, the emerging standards of WebRTC open up new paradigm of direct communication channel between web browsers without relaying the data through a web server. But there are certain issues such as lack of full fledged threading/concurrency support in the JavaScript language, reliance on synchronous loading etc. that restricts modern day browsers to take full advantage of current multiprocessing capabilities. Although, on one hand there are advantages of using web browsers, such as no requirement of specialized software, benefits of emerging technologies etc. the aforementioned issues pose challenges in implementation in certain areas. In this paper, we have tried to couple the benefits of peer to peer (P2P) architecture (elimination of centralized dependency, better scalability, shareability etc. along with the advantages of recent web technologies (NodeJs, WebRTC etc. by designing and implementing a browser based P2P content sharing framework. We have addressed the aforementioned challenges of a browser based P2P architecture by providing a mechanism to exchange messages asynchronously and facilitating new peer joins via existing peers in the network, thus reducing the dependency on bootstrap server. Our prototypical implementation demonstrates the feasibility, efficiency and scalability of this lightweight framework, on the top of which a variety of applications can be added as a layer of functionality.
2016 IEEE 30th International Conference on Advanced Information Networking and Applications (AINA)