Optimising Streaming Systems with SDN/P4/NetFPGA

Slides:



Advertisements
Similar presentations
IP Router Architectures. Outline Basic IP Router Functionalities IP Router Architectures.
Advertisements

Computer Networking A Top-Down Approach Chapter 4.7.
Internetworking II: MPLS, Security, and Traffic Engineering
CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
Transitioning to IPv6 April 15,2005 Presented By: Richard Moore PBS Enterprise Technology.
IP datagrams Service paradigm, IP datagrams, routing, encapsulation, fragmentation and reassembly.
Network Layer IPv6 Slides were original prepared by Dr. Tatsuya Suda.
School of Information Technologies Internet Multicasting NETS3303/3603 Week 10.
COS 420 Day 18. Agenda Group Project Discussion Program Requirements Rejected Resubmit by Friday Noon Protocol Definition Due April 12 Assignment 3 Due.
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
CS335 Networking & Network Administration Tuesday, May 11, 2010.
1 IP Multicasting. 2 IP Multicasting: Motivation Problem: Want to deliver a packet from a source to multiple receivers Applications: –Streaming of Continuous.
Study of the Relationship between Peer-to-Peer Systems and IP Multicasting T. Oh-ishi, K. Sakai, K. Kikuma, and A. Kurokawa NTT Network Service Systems.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
Chapter 19 Binding Protocol Addresses (ARP) Chapter 20 IP Datagrams and Datagram Forwarding.
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
IP Address Classes How large is the network part in an IP address? Today we use network masks to tell Originally, IP had address classes with fixed numbers.
21.1 Chapter 21 Network Layer: Address Mapping, Error Reporting, and Multicasting Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction.
1Group 07 IPv6 2 1.ET/06/ ET/06/ ET/06/ EE/06/ EE/06/ EE/06/6473 Group 07 IPv6.
Study of the Relationship between Peer to Peer Systems and IP Multicasting From IEEE Communication Magazine January 2003 學號 :M 姓名 : 邱 秀 純.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
1 Xcast6 Treemap Islands – – Visiting Multicast Model T. Khoa Phan* Joint work with: Joanna Moulierac*, Cuong N. Tran** and Nam Thoai** * INRIA Sophia.
ON DESIGING END-USER MULTICAST FOR MULTIPLE VIDEO SOURCES Y.Nakamura, H.Yamaguchi, A.Hiromori, K.Yasumoto †, T.Higashino and K.Taniguchi Osaka University.
TCP/IP Illustracted Vol1. 제목 : IP Routing ( 수 ) 한 민 규
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
IP Multicast COSC Addressing Class D address Ethernet broadcast address (all 1’s) IP multicast using –Link-layer (Ethernet) broadcast –Link-layer.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
Chapter 19 Binding Protocol Addresses (ARP) A frame transmitted across a physical network must contain the hardware address of the destination. Before.
Labelcast Protocol Presented by Wang Hui 80th IETF, March 2011 draft-sunzhigang-sam-labelcast-01.
1 Spring Semester 2009, Dept. of Computer Science, Technion Internet Networking recitation #7 DVMRP.
TCP/IP Illustracted Vol1. 제목 : IP Routing ( 수 ) 한 민 규
COS 420 Day 15. Agenda Finish Individualized Project Presentations on Thrusday Have Grading sheets to me by Friday Group Project Discussion Goals & Timelines.
4: Network Layer4-1 Chapter 4: Network Layer Last time: r Internet routing protocols m RIP m OSPF m IGRP m BGP r Router architectures r IPv6 Today: r IPv6.
Spring 2006CS 3321 Multicast Outline Link-state Multicast Distance-vector Multicast Protocol Independent Multicast.
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
CSE5803 Advanced Internet Protocols and Applications (13) Introduction Existing IP (v4) was developed in late 1970’s, when computer memory was about.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
WAN Technologies. 2 Large Spans and Wide Area Networks MAN networks: Have not been commercially successful.
Kapitel 19: Routing. Kapitel 21: Routing Protocols
CIS 700-5: The Design and Implementation of Cloud Networks
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Packets & Routing Lower OSI layers (1-3) concerned with packets and the network Packets carry data independently through the network, and into other networks…
Scaling the Network: The Internet Protocol
Chapter 6: Network Layer
Introduction to Networking
Chapter 5 Network and Transport Layers
CS 428 Computer Networking
What’s “Inside” a Router?
ECE 544 Protocol Design Project 2016
Subject Name: Computer Communication Networks Subject Code: 10EC71
Computer Science 457 Networking and the Internet
ECE 544 Project3 Team member: BIAO LI, BO QU, XIAO ZHANG 1 1.
Switch controller: Routing
Net 323 D: Networks Protocols
Internet Protocol, Version 6 (IPv6)
Scaling the Network: The Internet Protocol
Advanced Computer Networks
EE 122: Lecture 22 (Overlay Networks)
Other Routing Protocols
COMPUTER NETWORKS CS610 Lecture-29 Hammad Khalid Khan.
IP Multicast COSC /5/2019.
16EC Computer networks unit II Mr.M.Jagadesh
Delivery, Forwarding, and Routing of IP Packets
DHCP: Dynamic Host Configuration Protocol
Lecture 4a Mobile IP 1.
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Multicasting Unicast.
Mobile IP Neil Tang 11/12/2008 CS440 Computer Networks.
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

Optimising Streaming Systems with SDN/P4/NetFPGA T. Khoa Phan University College London NetFPGA Summit, Cambrige, April 2017.

Facebook Livestream System Origin server Edge cache Live stream server INTERNET Edge cache Origin server Looking at this pic, the bottle neck now is between the edge cache and users because the edge cache has to send every stream for every user. Given almost 2 billions active FB users, this scalability is still not enough. The question is can we design a network protocol for the edge cache to serve users in a more efficient way. To do that, let me zoom in the connection between the edge cache and users. 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/

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

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

How Xcast Treemap works? Unicast routing table at R3 Dest Next hop C D E Full Xcast packet header created by S: D A B A | A B C D E D | D B | B S C Today routers don’t see the list of destination. To sum up: for today Internet, if users install Xcast Treemap in the computers, it will send data like the overlay tree defined by the sender. R1 R2 R3 C | C D E E | E C | C D E Dest Next hop A B, C, D, E R2 E Today router Fig. 1: only today routers Unicast routing table at R1

How Xcast Treemap works? Unicast routing table at R3 Dest Next hop C D E Full Xcast packet header created by S: B D A A | A B C D E D | D B | B C | C S C R1 R2 R3 C doesn’t need to forward ptk to D and E. It has been done automatically by Xcast router and network layer multicast is much better than P2P My messages: no matter if there’re Xcast router on the network or not. If there are, no matter where they are, Xcast guarantee that all hosts will receive the pkt correctly. Xcast Treemap is a stateless protocol: no states at routers and no state at end-hosts, everything is in the packet header. C | C D E E | E C | C D E Dest Next hop A B, C, D, E R2 E Xcast router Today router Unicast routing table at R1 Fig. 2: mixture of Xcast and today routers

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

Xcast Treemap with SDN S A B C S A B C Shortest path routing SDN controller S B A C R2 R1 S A X3 B C Overlay tree by SDN controller Traffic engineering for Xcast traffic

Future work with P4/NetFPGA Current approach for Xcast router: Plugin additional network cards for a computer Install Xcast router software on FreeBSD Future work for Xcast router: P4/C#/NetFPGA Xcast router Other possible platforms?

Deployment Scenarios With Xcast NetFPGA gateway Only with Xcast end-hosts With Xcast backbone routers

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

Xcast Treemap Evaluation In P2P, 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. S A P2P system B C P2P system Xcast: without Xcast router All routers are Xcast routers

Xcast Treemap with SDN S A B C S A B C Shortest path routing SDN controller S B A C R2 R1 S A X3 B C Overlay tree by SDN controller Traffic engineering for Xcast traffic