Presentation is loading. Please wait.

Presentation is loading. Please wait.

GENI Cinema & OpenFlow 1.3 Ryan Izard rizard@g.clemson.edu.

Similar presentations


Presentation on theme: "GENI Cinema & OpenFlow 1.3 Ryan Izard rizard@g.clemson.edu."— Presentation transcript:

1 GENI Cinema & OpenFlow 1.3 Ryan Izard

2 Game Plan GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

3 Up Next GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

4 What is GENI Cinema? Live video streaming service
Operates entirely over GENI OpenFlow 1.0 and 1.3 based solution Offers channel changing abilities Resource-conscious

5 What’s special about GENI Cinema?
Software defined networking based “Fast” channel changing GENI Cinema = ~2s average YouTube live = ~5s average Digital cable TV = ~3s average Satellite TV = You don’t want to know… Event perspective in hands of user Multiple cameras available to select Scalable

6 Demonstration

7 Up Next GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

8 Building Blocks of GENI Cinema
Ingress and egress gateways Ingress video servers Private OpenFlow network Egress video servers Controller Public web server Stitched links

9 GENI Cinema Architecture

10 A “Jacks-Eye” View of GENI Cinema

11 Ingress/Egress Gateways
Public access to videos Protect internal GC machines Allow or deny users, video streams Presently integrated with ingress/egress video servers Cameras, Viewers, and Bad Guys Ingress/Egress Gateways GENI Cinema Private Network

12 Ingress Video Servers Host live streams for each producer w/VLC
Transcode live streams to constant format Output UDP into private GC network

13 OpenFlow Network Goal: Route UDP video streams from ingress to egress edge to deliver to each consumer. Routing/stream selection Duplication Channel changing

14 OpenFlow Network Core OpenFlow network “Sort” OVS nodes
GENI hardware OpenFlow switches w/stitching Sort, select, and send streams to consumers OVS nodes on GENI aggregates OpenFlow 1.3 groups

15 Egress Video Servers Receive UDP video streams from OpenFlow network Host video for each consumer w/VLC

16 Floodlight Controller
Global resource and network manager Receives and processes REST commands from web server The heart of the GENI Cinema service

17 Floodlight Controller
Java-based OpenFlow controller OpenFlow 1.0 and 1.3 support Experimental OpenFlow 1.1, 1.2, 1.4 Lots of included modules Home Documentation and tutorials Large, active community Google Group

18 Public Web Server Host website Manage user accounts Detect user timeouts Layer between controller and users

19 Putting it all Together

20 Up Next GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

21 Inside Look at GENI Cinema

22 Up Next GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

23 Why OpenFlow 1.3? Greater match and action support Instructions add flexibility Groups facilitate advanced actions Meters provide advanced counters Per-table features Custom table-miss behavior

24 Note… OpenFlow 1.1 and 1.2 introduced some of the features we will discuss. However, due to the relative lack in adoption of OpenFlow 1.1 and 1.2, we will consider such features as OpenFlow 1.3 features.

25 Up Next GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

26 OXM = OpenFlow Extensible Match;
OpenFlow 1.3 Matches OXM = OpenFlow Extensible Match; Variable-length list of matches, in any order Contrast to rigid match structure of OF1.1-

27 Reason for the OXM OpenFlow 1.0 OpenFlow 1.1 OpenFlow 1.2+

28 Increased match support w/OXM
OpenFlow 1.3 Matches Increased match support w/OXM Ingress port Ethernet VLAN IPv4 TCP UDP ARP MPLS PBB ICMPv4 ICMPv6 IPv6 Tunnel SCTP Metadata Custom/Experimenter

29 OpenFlow 1.3 Actions Set field Set queue Goto group Push/Pop Output
Any OXM Goto group Push/Pop Output VLAN TTL MPLS Set PBB Decrement Custom/Experimenter

30 OpenFlow 1.3 Instructions
Apply actions List of actions to perform immediately Write actions List of actions to perform later Clear actions Clear list of accumulated “write actions” Meter Send to an installed meter Goto table Send to another table in the switch Write metadata Store some “data” associated with the packet as it traverses table(s)

31 Monitor and rate-limit packets
OpenFlow 1.3 Meters Monitor and rate-limit packets Multiple meter “bands” define different rate thresholds if (rate > t1) do_this; else if (rate > t2) do_that; else if (rate > t3) drop_it; else do_nothing;

32 OpenFlow 1.3 Groups Allow more complex actions Bucket = (list of actions) + (optional params) Actions can be unique per bucket

33 Copy packet to all buckets No special parameters
ALL Group Copy packet to all buckets No special parameters GENI Cinema uses ALL groups Let’s see them!

34 GENI Cinema ALL Groups

35 SELECT Group Distribute packet to a single bucket
Weight assigned to each bucket Distribution algorithm is switch-dependent Weighted round-robin?

36 INDIRECT Group All packets go to a single bucket No special parameters
Consolidate common actions amongst a set of flows Reduce complexity Reduce memory footprint

37 FAST-FAILOVER Group Use a single bucket for all packets
Watch port/group as parameters Determines “liveness” of bucket If port/group is up, bucket can be used. If port/group is down, bucket cannot be used.

38 Specify capabilities of each table
Table Features Specify capabilities of each table Matches Actions Instructions Do table features indicate match co-dependencies or hardware vs. software support?

39 Previously, a property of the flow table
Table Miss Behavior Previously, a property of the flow table In OpenFlow 1.3, defined by a flow Zero-priority and fully-wildcarded match User-defined actions and instructions Can send to controller (most common) Or, can do what YOU want

40 Up Next GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

41 Community Support Great software switch support
OVS supports everything* except meters Present protocol support for meters Table features supported in (master) Groups fully supported in 2.3.1 ofsoftswitch supports meters but does not support all other OpenFlow 1.3 features Hit-and-miss support with HW vendors Some vendors… H#, Br###de technically do, but buggy (or is it a feature?) Wide controller support *to my knowledge

42 Up Next GENI Cinema (GC) OpenFlow 1.3
Introduction and demonstration Logical components Sneak-peak at GENI Cinema OpenFlow 1.3 Why use it instead of OpenFlow 1.0? Some cool features Community support Tutorial with OpenFlow 1.3 groups

43 Your Turn! Problem Solution
A single path from point A to point B leaves a single point of failure in any topology. Upon link failure, end-to-end communication is impossible. Solution Use redundant links to allow end-to-end connections to persist in the event of a link failure.

44 Tutorial Topology

45 Hands-on Tutorial Or…


Download ppt "GENI Cinema & OpenFlow 1.3 Ryan Izard rizard@g.clemson.edu."

Similar presentations


Ads by Google