Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Raabta: Low-cost Video Conferencing for the Developing World
1. Raabta: Low-cost Video
Conferencing for the
Developing World
Zubair Nabi
zubair.nabi@cantab.net
Information Technology University, Pakistan*
MobiCom Workshop on
Lowest Cost Denominator Networking for Universal Access
30 September, 2013
* Now at IBM Research, Dublin
2. Raabta
●
Leverage existing analog cable TV networks to
provide video conferencing
●
Raspberry-Pi instances as end-hosts
●
Video conferencing application co-design
–
●
Multi-layered encoding and dynamic recovery
Simple text-free interface
4. Motivation
●
●
●
●
Daily income for > 50% of the world: < $2
The Internet has the power to improve the
human condition
10% increase in broadband Internet penetration
leads to 1.4% increase in GDP (World Bank)
Cognizance of social, economic, and
technological conditions
5. Proposed Solutions
●
Challenges:
–
–
Intermittent and bad power
–
Extreme weather conditions: dust, humidity, etc.
–
Frequent equipment failure
–
Lack of trained local workforce
–
●
Monetary and engineering costs
Rolling investment required
WiMAX, satellite, long-distance WiFi, ZigBee,
optical, cellular etc.
–
Both backbone and last-mile access
–
Also plagued by shortcomings
6. Observations
●
Internet access not an underpinning technology
–
●
●
Backbone access extremely expensive
Basic, community-wide communication required
Systems designed for the developing world illsuited due to fundamental differences, such as
low population density
7. Design Goals
●
Cost: as low as possible
●
Power: low power draw
●
Failure: norm rather than exception
●
User-interface: simple enough to be used by
low-literate people
●
Internet connectivity: not a requirement
●
Infrastructure: leverage existing
●
Operational sustainability: self-managing
8. Background: Analog Cable
Networks
●
Broadcast-based shared medium
●
Downstream traffic (Gbps): [4.9, 6.6]
●
Cable modem as MAC layer bridge
●
Link-layer protocol can be offloaded
●
At least 12 million people in rural areas in
Pakistan own a TV and 3.9 million have cable
connections (Gallup)
9. Background: Raspberry Pi
●
●
General-purpose single board computer
Broadcom system-on-chip processor: ARM
700MHz processor, 24GFLOPS GPU, and
integration audio and video
●
Multiple video output options
●
Optional Ethernet
10. Background: Video Conferencing
●
3 functional aspects:
1) Overlay topology
2) Encoding scheme
3) Packet loss recovery
●
High-bandwidth and low-latency requirement
●
Tolerance to device and network heterogeneity
12. Raabta: End-host
Component
Raspberry Pi Model B
Camera Board
External Cable Modem
USB Sound Card
USB Keyboard
USB Mouse
Headset
Total
Cost ($)
35
25
20
7
2
2
1
92
13. Raabta: Network
●
●
Status-quo: Downstream spectrum: 50860MHz, 6MHz per channel (42Mbps: 256QAM), 135 channels
Key modifications:
–
Use non-TV channels for video conferencing
–
Same band for upstream/downstream
–
Delegate MAC operation to end-host
–
Replace uni-directional amplifiers with bi-directional
ones
14. Raabta: MAC Layer
●
No centralized arbitration
1) FDMA
•
•
Slice up free spectrum into equi-sized slots
200KHz ensures 700Kbps for very good quality video
•
•
135 end-hosts
25KHz ensures 84Kbps for reasonable QoE
•
1480 end-hosts
2) CSMA/CD
•
Treat entire spectrum as a large shared channel
•
•
•
●
37MHz, 258Mbps, 1.6ms RTT, 51600byte minimum frame size
51600 MPEG frame: 51580 payload + 4 header + 16 FEC
Each modem listens for its MAC or broadcast address
Explore different points in the design space
15. Raabta: Network Layer
●
●
LAN so network layer not required but
unmodified IP used
2 key advantages:
–
–
●
Potential wider Internet connectivity
IP multicast for efficient multi-party conferencing
Distributed protocol for dynamic address
allocation
16. Raabta: Transport Layer
●
●
Vanilla RTP atop UDP
Each RTP packet: timestamp, sequence
number, and payload format
●
RTCP for synchronization across streams
●
For each call, 4 streams initiated
–
–
One stream each for audio and video
–
●
SIP for destination port selection
Two streams for synchronization
Packet loss: dynamic switching b/w FEC and
selective acks based retransmission
17. Raabta: Video Conferencing
1) User database
•
Init: Broadcast user ID, picture, and IP
•
Also broadcast regularly
2) Multi-layer encoding
•
•
Base layer + additional incremental layers
Resilient to high loss, quality of video determined by
recipient downlink capacity
3) UI
•
Text free, although optional text messaging
•
Picture-driven with audio feedback
18. Beyond Raabta
●
Internet connectivity
–
●
Community-wide applications
–
●
Simple to extend using low-cost solutions
Telemedicine, distance learning, etc
Operator incentive
–
–
Simple management due to decentralization
–
●
No additional operational or power cost
Flat monthly rate
Leveraging existing infrastructure
–
Community needs to focus on this
19. Conclusion and Future Work
●
●
Possible to provide low-cost video conferencing
using existing infrastructure and simple
components
Future work:
–
Implementation and evaluation of the system
–
Closer inspection and analysis of MAC
–
Deployment in the wild
20. Q?
●
Acknowledgments:
–
Anil Madhavapeddy
for comments and
suggestions
–
Arjuna Sathiaseelan
and Jon Crowcroft
for arranging remote
talk
–
Images:
FreeDigitalPhotos.net,
Berkeley TIER,
wikimedia.org, and
evidence4action.net