Earlier Projects (2011-2016)

Efficient Media Multicast Using OpenFlow Switches

High-quality video streaming, which once dictated high-end equipment, are gradually available on commodity workstations and networks. For example, multiparty video conferencing calls are enabled by Google+, iChat, and Skype, and large-scale video surveillance, say city-wide, networks have been deployed in many countries. While these applications can largely benefit from layer-3 multicast, very few Internet service providers enable the multicast feature on their routers, perhaps for the sake of maintenance overhead. In this project, we study how to incorporate OpenFlow in current network infrastructure, either within LANs or WANs, to enable centralized multicast support for bandwidth-hungry multimedia applications. With OpenFlow, the access or aggregation routers may help multiparty video conferencing clients to duplicate or transcode video streams, in order to relieve the narrow access links from carrying multiple video streams. This in turn leads to multiparty video conferences with higher video quality, lower interactive latency, and better system scalability. Moreover, compared to full-fledged routers, using less expensive OpenFlow switches significantly reduces the cost of deploying video surveillance networks.


Multi-Core SVC Decoder on Android

We design, implement, and evaluate an H.264/SVC decoder and an HTTP video streaming client on multi-core mobile devices. The decoder employs multiple decoder threads to leverage the multi-core CPUs, and the streaming server/client support adaptive HTTP video streaming. To evaluate the decoder performance, we conduct experiments using real H.264/SVC videos on a tablet and a smart phone running Android 4.0. Our experimental results demonstrate that real-time H.264/SVC decoding is feasible on multi-core mobile devices. We make our testbed publicly available here.


User-Profile-Driven Dynamic Data Transfer

Cellular operators are facing great challenges in satisfying the increasing wireless service demand. However, not all traffic are created equal, many popular applications on mobile devices, such as data synchronization and multimedia content uploading/prefeching can tolerate delay in different times scales. Such elasticity can be leveraged to reduce network congestion and improve battery lifetime, by opportunistically scheduling their transmission when the network condition is more favorable. Scheduling such traffic is challenging, because different users have diverse usage patterns and network conditions are dynamic.

In this project, we plan to develop a novel framework to opportunistically schedule the data transfers in order to alleviate network congestion, minimize transmission time, and maximize battery life. Such optimization demands estimation of future network conditions and battery recharge events. We will leverage mathematical theory of optimal stopping in conjuncture with the user profile, which abstracts each user’s usage pattern from historical logs. The proposed scheduling algorithm will produce schedules that are provably optimal while satisfying user-specified transfer deadlines. We plan to implement the framework in Android OS, and conduct extensive experiments to demonstrate its efficiency and practicality. We will also design and implement a few multimedia applications on top of the framework.


Video Streaming over Hybrid Networks

Multimedia contents such as music files, images, and videos are getting increasingly popular on smartphones and other mobile devices. A recent market forecast predicts that globally mobile data traffic will increase 26 times over  a span of five years (2010—2015), and traffic from wireless devices will soon exceed traffic from wired devices by 2015. One approach to deliver multimedia  contents to smartphones is via cellular networks, which unfortunately do not support efficient data multicast. A better solution is to offload some network traffic from cellular network to a short-range ad hoc network formed by smartphones. In this project, we design, implement, and evaluate an efficient multimedia dissemination platform for multihomed smartphones. We capitalize complementary infrastructure networks (such as cellular base stations and WLAN access points) and ad hoc networks (such as WiFi Direct, WiFi ad hoc, and Bluetooth) to form a hybrid network for efficient multimedia dissemination to/from smartphones and other mobile devices.


Real-Time Coding in Mobile Cloud Gaming

We study 3D image warping assisted real-time video coding, which can potentially meet all the requirements of mobile cloud gaming. We have designed a video encoder that selects a set of key frames in the video sequence, uses the 3D image warping algorithm to interpolate other non-key frames, and encodes the key-frames and the residues frames with an H.264/AVC encoder.  Our approach is novel in taking advantage of the run-time graphics rendering contexts (rendering viewpoint, pixel depth, camera motion, etc.) from the 3D game engine to enhance the performance of video encoding for the cloud gaming service. The experiments indicate that our proposed video encoder has the potential to beat the state-of-art x264 encoder in the scenario of real-time cloud gaming. We are  currently working on a context-aware rate control and key-frame selection algorithm to further optimize the streaming quality.


Traffic Pattern Based Geo-Fecning Algorithms

Many Internet video streaming services implement IP-based geo-fencing mechanisms to comply with license agreements between them and content providers. For example, Netflix and Hulu videos are not available to users outside the States. Nonetheless, users outside the States may get around this limitation by setting up a proxy or purchasing a VPN service in the States, in order to watch the videos. The service providers currently purchase a list of VPN and proxy IP addresses to enforce geo-fencing. However, because these address lists are manually compiled, they are often incomplete and error-prone. Therefore, service providers may be interested in having a systematic approach to detect these VPN and proxy users, e.g., based on some network measurement mechanism. In this project, we study the problem of designing a mechanism to automatically build up and maintain the VPN and proxy IP addresses.


Asymmetric Communication Protocols

While large-scale network traces are critical for conducting simulations and experiments, collecting these traces often raises concerns about security and privacy. Gathering network traces with payload is even more challenging, and thus researchers had to resort to collecting their own network traces for evaluating their proposals of online compression algorithms, WAN optimization techniques, and caching algorithms. Since the performance of these techniques are trace-dependent, the evaluation results reported in different studies are usually incomparable.

SCRUB-tcpdump is a utility for anonymizing packet traces collected using tcpdump. We have enhanced SCRUB-tcpdump to better protect user privacy by encrypting the transport payload using a hash function. More details can be found here.


Traffic Analysis of Networked Virtual Environment

Existing virtual world clients do not leverage each avatar’s in-world region and action to predict the network traffic demand for performance optimization. We propose a region- and action-aware virtual world client, based on observations of diverse network traffic patterns in a large collection Second Life traffic traces gathered by us. Various optimization criteria are possible, including visual quality, energy consumption, and response time. We use energy consumption as the show case, and demonstrate via trace-driven simulations that, compared to two existing schemes, a mobile Second Life client can save up to 36% and 41% communication energy by selectively turning on its WiFi network interface.