Optimising Streaming Systems with SDNP 4Net FPGA T

  • Slides: 13
Download presentation
Optimising Streaming Systems with SDN/P 4/Net. FPGA T. Khoa Phan University College London Net.

Optimising Streaming Systems with SDN/P 4/Net. FPGA T. Khoa Phan University College London Net. FPGA Summit, Cambrige, April 2017.

Facebook Livestream System Origin server Edge cache INTERNET Live stream server Edge cache Origin

Facebook Livestream System Origin server Edge cache INTERNET Live stream server Edge cache Origin server Facebook livestream system – Content Delivery Network [1] Each edge cache can serve up to 200, 000 users simultaneously [1] https: //code. facebook. com/posts/1653074404941839/under-the-hood-broadcasting-live-video-to-millions/ 2

Unicast vs. Multicast Network Edge cache Today’s unicast network Edge cache • • •

Unicast vs. Multicast Network Edge cache Today’s unicast network Edge cache • • • IP Multicast First standardized in 1986. One stream for all receivers. Need multicast routers everywhere (or complex tunneling techniques). Edge cache • • Xcast Treemap Can work for any streaming systems. Source code: github. com/ptkhoa 1984/Xcast 6_Treemap 3

What is Xcast Treemap? S Breath-first tree traversal A A B C D E

What is Xcast Treemap? S Breath-first tree traversal A A B C D E 2 0 0 B D C E List of IP addresses Treemap Sender S creates packets: A B C D E Src: S, Dest: A 2 0 0 Unicast part Payload Xcast treemap part (optional) Today router only understands unicast part. Xcast router lookups and forwards for each IP in the list. 4

How Xcast Treemap works? Unicast routing table at R 3 Dest Next hop C

How Xcast Treemap works? Unicast routing table at R 3 Dest Next hop C C D D E E Full Xcast packet header created by S: A|ABCDE D B A D|D B|B C S R 1 Dest Next hop A A B, C, D, E R 2 Unicast routing table at R 1 C|CDE R 2 C|CDE R 3 Today router E|E E Fig. 1: only today routers 5

How Xcast Treemap works? Unicast routing table at R 3 Full Xcast packet header

How Xcast Treemap works? Unicast routing table at R 3 Full Xcast packet header created by S: Next hop C C D D E E D B A A|ABCDE Dest D|D B|B C|C C S R 1 Dest Next hop A A B, C, D, E R 2 C|CDE R 3 E|E Xcast router Today router E Unicast routing table at R 1 Fig. 2: mixture of Xcast and today routers 6

Facebook Livestream System current system with Xcast Treemap Edge cache server and users 7

Facebook Livestream System current system with Xcast Treemap Edge cache server and users 7

Xcast Treemap with SDN S R 2 R 1 S A X 3 A

Xcast Treemap with SDN S R 2 R 1 S A X 3 A C B B C Shortest path routing SDN controller S S R 2 R 1 B A X 3 A B C Traffic engineering for Xcast traffic C Overlay tree by SDN controller 8

Future work with P 4/Net. FPGA • Current approach for Xcast router: - Plugin

Future work with P 4/Net. FPGA • Current approach for Xcast router: - Plugin additional network cards for a computer - Install Xcast router software on Free. BSD • Future work for Xcast router: - P 4/C#/Net. FPGA Xcast router - Other possible platforms? 9

Deployment Scenarios Only with Xcast end-hosts With Xcast Net. FPGA gateway With Xcast backbone

Deployment Scenarios Only with Xcast end-hosts With Xcast Net. FPGA gateway With Xcast backbone routers 10

Thank you!!! Email: t. phan@ucl. ac. uk 11

Thank you!!! Email: t. phan@ucl. ac. uk 11

Xcast Treemap Evaluation - S - A - P 2 P system B In

Xcast Treemap Evaluation - S - A - P 2 P system B In P 2 P, packet loss happens when end-hosts leave (e. g. A leaves and B replaces A in the tree – hosts need to update fwd table in their memory). Without Xcast router: sender S sends pkt with new treemap header, there’s no fwd table at hosts. With all Xcast router: pkts are replicated at routers, no pkt loss when hosts join/leave. C P 2 P system Xcast: without Xcast router All routers are Xcast routers 12

Xcast Treemap with SDN S R 2 R 1 S A X 3 A

Xcast Treemap with SDN S R 2 R 1 S A X 3 A C B B C Shortest path routing SDN controller S S R 2 R 1 B A X 3 A B C Traffic engineering for Xcast traffic C Overlay tree by SDN controller 13