Internet Service in Developing Regions Through Network Coding Mike P. Wittie, Kevin C. Almeroth, Elizabeth M. Belding, Department of Computer Science UC Santa Barbara Ivica Rimac, Volker Hilt Bell Labs Alcatel-Lucent Slide 1 of 16 Networking and the Digital Divide • The Digital Divide – Low penetration of Internet services – Higher price – Lack of adequate infrastructure • Success of cellular deployments – No data services – High subscription price • Rural mesh networks – Local communication patterns Broadband price (USD/month) 400 350 300 250 200 150 100 50 • Goals: – Low cost data communications – Leverage cellular deployments – Cater to local communications 0 US Europe India Sub-saharan Africa Slide 2 of 16 Multihop Cellular Networks (MCNs) • Cellular network augmented by client-to-client Wi-Fi communications [Lin00] (A) • Rural (sparse) MCNs – Large cell area – Large per-client spectrum usage • A. B. Local traffic patterns (B): – Cannot use cell tower – Cannot form end-to-end paths • Need: efficient opportunistic client-to-client forwarding in sparse MCNs Slide 3 of 16 Delay Tolerant Networks (DTNs) • Epidemic Routing [Vahdat00] – Bundled data forwarded during every contact for eventual delivery – Flood scoping by hop-count or TTL • S PRoPHET [Lindgren04] – Transitive destination contact probability as routing metric – Data forwarded up a routing metric gradient • D • Cloud Routing (CR) [Wittie09] – Network and traffic state disseminated over a control channel – Forwards a small set of data copies – Lower forwarding cost and higher network throughput But, high cost of flooding creates network congestion • But, replication wastes network resources Slide 4 of 16 Intra-flow Network Coding (NC) • Forwards randomly encoded data on each path • With high probability, data arriving on multiple paths is innovative • Codes are embedded in packets themselves [Chou03] 𝒗1 𝐸1 | 𝒗1 𝐷1 𝒗2 𝐸2 | 𝒗1 𝐷1 ⋮ | ⋮ 𝒗3 𝐸3 | 𝒗1 𝐷1 𝑛 bytes of data 𝐷𝑝×𝑛/𝑝 data matrix D 𝐸𝑝×𝑝 encoding matrix, initially 𝐼 𝒗1×𝑝 , 𝒗𝑖S ∈ 𝒢ℱ(8) Coded piece: 𝐺𝑎𝑢𝑠𝑠𝑖𝑎𝑛 𝑒𝑙𝑖𝑚 . 𝒗𝐸 | 𝒗𝐷 𝐼 | | 𝐷 | | 1×(𝑝+𝑛/𝑝) 𝑝×(𝑝+𝑛/𝑝) Slide 5 of 16 NC in DTNs • Network Coding Probabilistic Routing (NCPR) [Widmer05] – Each node forwards floor(d) coded pieces and additional coded piece with probability d-floor(d) – Stops forwarding after ceil(d) coded pieces – New innovative coded pieces reset forwarding cap D S • But, tradeoff between high delivery rates and high load • Need a more efficient mechanism for reliability Slide 6 of 16 Semi-Innovative Set Routing (SISR) SISR (scissor) forwards: - small forwarding footprint (CR) - fraction of data on each path through NC (NCPR) Coded pieces required to decode bundle: 𝑏 = 𝑝 Redundant coded pieces: 𝑟 = D S 𝑏 4 Maximum coded pieces at node (bundle fraction): 𝑓 = 𝑟 b–f b f r Linearly independent? Slide 7 of 16 Semi-Innovative Sets (SISs) SIS 𝑠 is a set of linearly independent coded pieces Given a set of coded pieces 𝐶, 𝐶 = 𝑏 + 𝑟, 𝑟 ≥ 1, we can construct a set of SISs over 𝐶, such that any subset of 𝐶 of size 𝑏 has full rank. D S b–f b 𝐶 𝑠1 , 𝑠2 , ⋯ , 𝑠 s1 |𝐶| 𝑏/2 every possible union of 𝑠𝑖 , 𝑠𝑗 r f s2 f s3 SIS1 SIS2 SIS3 Slide 8 of 16 Semi-Innovative Sets (SISs) SISs can be constructed to tolerate any number of losses 𝑙 = 𝑟/𝑓 , 𝑓 ≤ 𝑟 D S 𝑙 = 3 → 𝐶 = 2𝑏, 𝑓 = 1 3 every possible union of 𝑠𝑖 , 𝑠𝑗 f b b –bf f r-2f r rf SIS1 SIS2 SIS3 SIS4 SIS5 SIS6 Slide 9 of 16 SISR in an MCN Embedded codes disseminated over the control channel to announce forwarding progress D While the number of SISs grows 𝑏+𝑟 exponentially as 𝑏/2 , each 𝑏/2 − 1 SISs When 𝑑 coded pieces are delivered, the global encoding adjusts accordingly n2 S 2 node only needs to maintain 𝑏+𝑟 𝑥, 𝑦 , 𝒗𝐸 n1 b b n3 r r d SIS1 SIS2 SIS3 SIS4 SIS5 SIS6 Slide 10 of 16 SISR Cloud Progress Example Slide 11 of 16 Evaluation Setup • Want to compare SISR with CR and NCPR – NCPR – flooding and network coding – CR – small set of bundle copies – SISR – network coded bundle + redundancy • Configuration details: – Area, node density and mobility models a rural community – Single flow between a node pair at different distances – Interested in evaluating: • Bundle forwarding cost • End-to-end delay • Control channel load Slide 12 of 16 Forwarding Cost • Forwarding cost – the amount of data forwarded in the network before delivery • NCPR – high cost of flooding • CR – high cost of replication • SISR – lowest cost – Fraction of data on each path – Improvements for multiple simultaneous flows Slide 13 of 16 Overhead of Control Traffic • Control channel load – Position updates – Bundle progress notifications – Data encoding vectors (SISR only) • Cellular channel gain – Bundle size minus control traffic • Prevalence of position updates • Higher gain for multiple flows • Gain higher for CR, but SISR easier on client resources Slide 14 of 16 Conclusions and Future Work • • Introduced Semi-Innovative Set Routing (SISR) • End-to-end management of NC and forwarding mechanisms 2X reduction in forwarding cost – Lower cost of infrastructure and data services – Make data services affordable for more clients D – Adaptation to different network settings – Directional mesh networks with smart antennas S – Different control A. ratios of data and B. traffic propagation speeds – Only innovative data forwarded – Tolerates any number of losses • Future work: b r SIS1 SIS2 SIS3 SIS4 SIS5 SIS6 Slide 15 of 16 Thank You Mike Wittie mwittie@cs.ucsb.edu Slide 16 of 16 Q&A Slide 17 of 16 Slide 18 of 16 Backup Slides Slide 19 of 16 Evaluation Setup • Want to compare SISR with CR and NCPR • Configuration details: – Area, node density and mobility models a rural community – Single flow between random node pair – NCPR – d configured for 100% delivery at 6km – CR – lower forwarding cost at delay comparable to larger clouds – SISR – lowest delay at 6km Slide 20 of 16 Bundle Delay • Delay – end-to-end forwarding delay of entire bundle (all coded pieces) • SISR - last copy delay • NCPR – nodes use up forwarding allowance before delivery • CR – first copy delay Slide 21 of 16 Multihop Cellular Networks (MCNs) • Cellular network augmented by client-to-client Wi-Fi communications [Lin00] • MCNs can: – Reduce cellular channel load (A) – Extend cell coverage (B, C) • MCNs make cellular infrastructure go further Slide 22 of 16 MCNs in Developing Regions • Sparse MCNs – Fewer clients and larger cell area – Larger per-client spectrum usage • Local data communications – Regional caches (B) – Opportunistic client-to-client communications (C) • Our focus: opportunistic clientto-client forwarding in sparse MCNs Slide 23 of 16