software

From NSL

Revision as of 22:33, 16 October 2010 by Aah10 (Talk | contribs)

Jump to: navigation, search

This page contains a list of all the software that were developed at NSL as part of our ongoing research projects. They are organized by project with links to documentation, downloadable source code archives, and links to Subversion repositories.


Contents

Real Implementations

MobileTV

pCDN: Peer-assisted Content Distribution Network

This project employs the peer-to-peer (P2P) computing paradigm in designing large-scale content distribution systems. We developed a fully functional and reliable P2P content distribution system, which we call pCDN. pCDN is developed in partnership with the Canadian Broadcasting Corporation (CBC), the largest Internet content provider in Canada. The system is an ongoing project that will provide high-quality multimedia content, support heterogeneous clients, impose minimal load on the expensive inter-ISP links, provide on-demand as well as live streaming services, ensure data integrity, and implement digital rights management, among other features.



pCache: A Proxy Cache for Peer-to-Peer Traffic

As part of our research on modeling and caching of P2P traffic, we have designed and implemented a proxy cache for P2P traffic, which we call pCache. The server is to be deployed by autonomous systems (ASes) or ISPs that are interested in reducing the burden of P2P traffic. Our C++ implementation of pCache has more than 11,000 lines of code. We have rigorously validated and evaluated the performance of pCache as well as its impacts on ISPs and clients. pCache code is released under GPLv3 in two parts: kernel source and application. The Linux kernel consists of all required patches to support transparent proxy, which simplify setting up the required environment. This patched kernel contains code from mainstream Linux kernel, netfilter, tproxy, and layer7switch. The pCache application implements components described above. Moreover, a patched iptables is also provided that takes additional arguments supported by tproxy.



svcAuth

svcAuth is a library for authenticating H.264/SVC video streams. It is released under the GPLv3 license. We have designed an authentication scheme for H.264/SVC streams that supports its full flexibility: it takes into account the coding characteristics of H.264/SVC scalability model and enables verification of all possible substreams. In addition, the proposed scheme is designed for end-to-end authentication of streams. In an end-to-end authentication procedure, a content provider prepares the authenticated video and sends it to receivers, possibly through a third-party Content Delivery Network (CDN) with proxy servers that may need to adapt the flexible video streams. These proxies or any other entity involved in the delivery process do not have to understand our authentication scheme, which is an important advantage.



Simulators

PCP: Probabilistic Coverage Protocol

In this project, we consider probabilistic sensing and radio communication models in designing protocols for large-scale sensor networks. Probabilistic models are more realistic in capturing the characteristics of actual sensors than the over-simplified regular disk model.



K-Coverage and its Application to Forest Fire Detection

In this project, we design new algorithms to achieve k-coverage in dense sensor networks. In such networks, covering sensor locations approximates covering the whole area. However, it has been shown before that selecting the minimum set of sensors to activate from an already deployed sensors is NP-hard. We propose an efficient approximation algorithm which achieves a solution of size within a constant factor from the optimal. We are also interested in applying our k-coverage algorithms in designing a wireless sensor network for early detection of forest fires. Forest fires, also known as wild fires, are uncontrolled fires occurring in wild areas and cause significant damage to natural and human resources. Forest fires eradicate forests, burn the infrastructure, and may result in high human death toll near urban areas. In the province of British Columbia alone, there have been 2,590 forest fires during 2006. These burned 131,086 hectares and costed about $156 million. (Source: BC Ministry of Forests and Range.) Wireless sensor networks could help in reducing some of the damages caused by forest fires.



Live Peer-to-Peer Streaming with Scalable Video Coding and Networking Coding

As part of our research in the area of peer-to-peer video streaming, we have developed a Java-based simulator of a proposed live P2P streaming system that exploits both scalable video coding (SVC) and network coding (NC) to maximize the streaming throughput and handle network dynamics. The proposed system significantly improves the performance of live P2P streaming by addressing many of the challenges impeding current systems. It efficiently utilizes peers resources and easily customizes multimedia content to support receivers with diverse resources and requirements, and quickly adapting to network and peer dynamics.


  • More details
  • ReadMe
  • Download Source Code
  • Subversion


Efficient Multi-Sender Data Transmission in Swarm-Based Peer-to-Peer Streaming Systems

In this project, we study the problem of scheduling segment transmission in both live and on-demand P2P streaming systems. Our goal is to maximize the perceived video quality by scheduling the segment transmission so that segments that are more critical to video quality improvements are given higher priority to meet their deadlines. We have implemented an event-driven simulator in Java to evaluate the performance of the proposed segment scheduling algorithms. Five scheduling algorithms are implemented in this simulator: rarest-first (RF), min-cost flow (MC) with support for variable-size segments, our proposed unweighted approximation (SSTF) algorithm, our weighted approximation (WSS) algorithm, and optimal (OPT) scheduling using by solving the ILP formulation with the CPLEX ILP solver. The simulator can be used with trace files from the Arizona State University video trace library. A prototype P2P streaming system which incorporates RF, MC, SSTF, and WSS was also implemented for deployment over PlanetLab nodes.



Efficient multimedia broadcast over mobile WiMAX networks

This project studies multimedia services in the emerging WiMAX networks. We look into efficient multimedia broadcast framework over mobile WiMAX networks utilizing the MBS and sleep mode features, in particular, broadcasting multiple scalable video streams to mobile receivers. We study problems like maximizing the quality of video at mobile receivers, minimizing energy consumption at mobile receivers and other related problems. We have implemented a point-to-multipoint WiMAX multimedia broadcast simulator for evaluating our algorithms using actual scalable video traces. For the WiMAX network parameters, we use the 16-QAM modulation scheme with 3/4 convolution turbo coding and 10 MHz channel.