1 / 30

Workshop on Software Defined Networks

Workshop on Software Defined Networks. Spring 2014. Groups. OpenFlow Switch Specification. Flow-Table entry: Possible Actions: Forward packet to a given port (or ports) Encapsulate packet and forward to controller Drop packet. OpenFlow Switch Specification.

rolf
Download Presentation

Workshop on Software Defined Networks

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Workshop on Software Defined Networks Spring 2014

  2. Groups

  3. OpenFlow Switch Specification • Flow-Table entry: • Possible Actions: • Forward packet to a given port (or ports) • Encapsulate packet and forward to controller • Drop packet

  4. OpenFlow Switch Specification • The header fields matched in OpenFlow switch (Type0): • Support for normal traffic is achieved by: • A 4th action; forward packet through normal pipeline • Dedicated VLANs

  5. OpenFlow1.3 Specification • A pipeline of forwarding tables: • Aggregated Action Set • Internal metadata • optional group classification

  6. OpenFlow1.3 Specification • Extended match header fields:

  7. OpenFlow1.3 Specification • Counters:

  8. OpenFlow1.3 Specification • Each packet carries an Action set. • Empty at the start • Updated while packet is processed • Executed at the end. • Each Forwarding table entry is associated with an Instruction Set • Predefined (updated by controller) • Executed when entry is matched • Influences packet processing course and updates its action set. • More actions: • Update TTL • Tag push • Tag pop • Set field • QoS

  9. OpenFlow1.3 Groups • Groups can be applied on a packet while processed • Groups are defined in the group table Group ID Group ID Group ID Group ID Bucket Group ID Group ID Group ID Instruction Out port

  10. OpenFlow1.3 and RYU • http://osrg.github.io/ryu-book/en/html/index.html • http://sdnhub.org/tutorials/openflow-1-3/

  11. Projects

  12. Router • User input: • Routers addresses • Subnets assignments Port:1 VLAN: 3 10.0.0.* MAC: B MAC: C MAC: A MAC: D 10.0.0.* Port:1 VLAN: 3 Port:2 VLAN: * MAC: E 192.168.*.*

  13. Router • Network input: • Links Port:1 VLAN: 3 10.0.0.* MAC: B Port:2 VLAN: 4 Port:3 VLAN: 4 MAC: C MAC: A MAC: D 10.0.0.* Port:1 VLAN: 3 Port:2 VLAN: * MAC: E 192.168.*.*

  14. Router • Objective: • Shortest path routes Port:1 VLAN: 3 10.0.0.* MAC: B Port:2 VLAN: 4 Port:3 VLAN: 4 MAC: C MAC: A MAC: D 10.0.0.* Port:1 VLAN: 3 Port:2 VLAN: * MAC: E 192.168.*.*

  15. Load balancer replicas Internet • Split clients to servers … Source IP Address

  16. Load balancer • Avoid rule expansion

  17. Load balancer replicas Internet • Add/remove servers when needed … Source IP Address

  18. Firewall Internet • Manage sessions Intranet DMZ

  19. Firewall • Consider rule expansion

  20. Firewall Internet • Manage sessions • Features: • Actions are Allow, Allow+Log, Block, Block+Log • Statefull • Consistency models (per flow/packet) • FIN detection Intranet DMZ

  21. Multicast Traffic

  22. Multicast Traffic • Input • Routers • Links • User location and request • Link and server cost • Objective • Route streams (optimally) • Assign servers (optimally)

  23. Distributed controller

  24. Distributed controller • Controller state is saved in distributed storage. • Handling an event is a transaction. • Prevent dead-locks and live-locks. • Use a simple application as an example. • Based on paper “Towards an Elastic Distributed SDN Controller” by Dixit et. al. appeared in HotSDN2013.

  25. Hierarchical controller controller Sub SDN controller Sub SDN controller Sub SDN

  26. Hierarchical controller controller controller Sub SDN controller Sub SDN controller Sub SDN

  27. Fault tolerant SDN • Without the controller, an OpenFlow switch forwards packets according to: • Static configuration • Links status • Packet header • Input port • We want to ensure that if the network is physically connected then any packet will reach its destination (eventually). • We prefer one instance of the packet at all time (without broadcast).

  28. Fault tolerant SDN • Non Fault tolerant solutions: • Source and destination based rules • Port based rules • Our approach: • Use packet header for storing state • Algorithms: • Module (Naïve) • DFS • BFS (very complicated)

  29. Module Algorithm

  30. DFS Algorithm

More Related