Designing an Efficient and Extensible Mobile TV Testbed Cheng-Hsin Hsu Simon Fraser University, Canada joint work with Mohamed Hefeeda, Yi Liu, and Cong Ly
Mobile TV Service 2 Broadcast mass-market programs to subscribers Mobile devices have stringent energy budgets Devices receive a data burst and turn off receiving circuits until the next burst called time slicing
Base Station Mobile TV Networks 3 Program feeds are IP streams from streaming servers or cameras Multiple TV programs are multiplexed AND time sliced by a multiplexer into a MPEG-2 TS stream The MPEG-2 TS stream is modulated, amplified, and broadcast to mobile devices Streaming Server Camera Multiplexer (IP Encapsulator) Modulator/ Amplifier IP Networks ASI Networks Content Providers Network Operators
Problem Statement 4 Design a mobile TV base station for academic prototyping and cost-efficient small- to medium- size deployments platform to analyze: energy consumption, channel switching delay, no. broadcast programs, and perceived streaming quality TV channels with a commodity PC or low-end server
Current Solutions (1/2) 5 Commercial Base Stations expensive, e.g., a single EXPWAY FastESG server costs 75k USD [Sarri09] a complete base station costs even more Need a more cost-efficient base station!
x20? Current Solutions (2/2) 6 Open-Source Base Station [FATCAPS] too many disk I/O’s does not scale well too many utilities with no admin interface Need a better design! VLC Server MPEG Data Aggregator Pcap Time Slicer TS Tdt Updater Correct PSISI Dtplay Python Compiler Python Sources For PSISI TS Packets Null Packet Replacer w/PSISI
Design Goals 7 [G1] Higher efficiency and scalability avoid disk I/O’s and memcpys [G2] Utilization of multi-core processors pipelined structure to allow parallelism [G3] Integrated software solution centralized admin interface [G4] Better extensibility future supports for other networks such as MediaFLO, WiMAX, and MBMS
Design Decisions (1/3) 8 [D1] Use Burst as the unit of time slicing, encapsulation, and transmission. Burst is self-contained with IP payloads and headers/trailers of all protocols No disk I/O’s for intermediate data No memcpys for IP payloads
Design Decisions (2/3) 9 [D2] Divide the base station into three indep. Phases, which are connected by two priority queue pipelined and parallelism Empty Burst Time Slicing Thread With IP Payload Request Queue Encap. Thread With All Headers /Trailers Ready Queue Trans. Thread Encap. Thread Encap. Thread
Design Decisions (3/3) 10 [D3] Implement a centralized Configuration Manager to allow save/restore settings interface with Web GUI for management [D4] Modularized design for future extensions For example, MPE-FEC Burst is a subclass of MPE Burst
Software Architecture 11
High-Level Design 12
Design of Burst Schedulers 13
Design of Burst Readers 14
Design of Bursts 15
Design of Encapsulators 16
Design of Transmitter 17
Design of PSI/SI Tables 18 PAT: program association PMT: program map NIT: network information INT: IP/MAC notification SDT: service description TDT: time and date
Design of Configuration Manager 19
Testbed Setup 20
Future Work 21 Web GUI for configuration management [Cong] MPE-FEC support [Hamed] PSI/SI table implementation [Farid] StreamReader classes [Som] Flute server integration ESG files implementation
Conclusions 22 Presented layout of general broadcast network Outlined design goals of a broadcast base station Described our design decisions and system architecture Presented the high-level system design and detailed design for each component Highlighted future work
Thank You, and Questions? 23 More details can be found online at