Saurav, Srikanth, Sangho

Slides:



Advertisements
Similar presentations
Interconnection: Switching and Bridging CS 4251: Computer Networking II Nick Feamster Fall 2008.
Advertisements

Shortest Path Bridging IEEE 802
Access Control List (ACL)
Thoughts on Potential OF 1.1 Features Martin Casado, Brandon Heller, Glen Gibb, Rajiv Ramanathan, Leon Poutievski, Edward Crabbe, You.
Communication Networks Recitation 3 Bridges & Spanning trees.
SDN Controller Challenges
Software-defined networking: Change is hard Ratul Mahajan with Chi-Yao Hong, Rohan Gandhi, Xin Jin, Harry Liu, Vijay Gill, Srikanth Kandula, Mohan Nanduri,
Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
CSC458 Programming Assignment II: NAT Nov 7, 2014.
Programming Protocol-Independent Packet Processors
Why SDN and MPLS? Saurav Das, Ali Reza Sharafat, Guru Parulkar, Nick McKeown Clean Slate CTO Summit 9 th November, 2011.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco PublicITE I Chapter 6 1 Implement Inter- VLAN Routing LAN Switching and Wireless – Chapter 6.
RIP V1 W.lilakiatsakun.
Chapter 9: Access Control Lists
OpenFlow overview Joint Techs Baton Rouge. Classic Ethernet Originally a true broadcast medium Each end-system network interface card (NIC) received every.
Switching & Operations. Address learning Forward/filter decision Loop avoidance Three Switch Functions.
An Overview of Software-Defined Network Presenter: Xitao Wen.
Software-Defined Networking, OpenFlow, and how SPARC applies it to the telecommunications domain Pontus Sköldström - Wolfgang John – Elisa Bellagamba November.
SDN and Openflow.
Flowspace revisited OpenFlow Basics Flow Table Entries Switch Port MAC src MAC dst Eth type VLAN ID IP Src IP Dst IP Prot L4 sport L4 dport Rule Action.
An Overview of Software-Defined Network
Course 301 – Secured Network Deployment and IPSec VPN
Microsoft Virtual Academy Module 4 Creating and Configuring Virtual Machine Networks.
An Overview of Software-Defined Network Presenter: Xitao Wen.
Virtual LANs. VLAN introduction VLANs logically segment switched networks based on the functions, project teams, or applications of the organization regardless.
Formal checkings in networks James Hongyi Zeng with Peyman Kazemian, George Varghese, Nick McKeown.
Software Defined-Networking. Network Policies Access control: reachability – Alice can not send packets to Bob Application classification – Place video.
Router and Routing Basics
IP Forwarding.
Access Control List (ACL) W.lilakiatsakun. ACL Fundamental ► Introduction to ACLs ► How ACLs work ► Creating ACLs ► The function of a wildcard mask.
Floodless in SEATTLE : A Scalable Ethernet ArchiTecTure for Large Enterprises. Changhoon Kim, Matthew Caesar and Jenifer Rexford. Princeton University.
1 - Charlie Wiseman - 05/11/07 Design Review: XScale Charlie Wiseman ONL NP Router.
Basic Routing Principles V1.2. Objectives Understand the function of router Know the basic conception in routing Know the working principle of router.
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
1 Data Link Layer Lecture 23 Imran Ahmed University of Management & Technology.
SPRING-OPEN SDN based WAN Control of Open Segment Routers An ONF TAG Project Saurav Das Project Lead & ONF Consultant Ciena talk, Oct 23 rd, 2014.
Extending OVN Forwarding Pipeline Topology-based Service Injection
Linux Operations and Administration
Introduction to Mininet, Open vSwitch, and POX
Jennifer Rexford Princeton University MW 11:00am-12:20pm Data-Plane Verification COS 597E: Software Defined Networking.
System Testing SDN - A Case Study on ONOS Suibin Zhang, ON.Lab Jon Hall, Ciena.
Header Space Analysis: Static Checking for Networks Broadband Network Technology Integrated M.S. and Ph.D. Eun-Do Kim Network Standards Research Section.
Chapter 4: server services. The Complete Guide to Linux System Administration2 Objectives Configure network interfaces using command- line and graphical.
Atrium Router Project Proposal Subhas Mondal, Manoj Nair, Subhash Singh.
Basic Edge Core switch Training for Summit Communication.
InterVLAN Routing 1. InterVLAN Routing 2. Multilayer Switching.
SDN challenges Deployment challenges
Multi Node Label Routing – A layer 2.5 routing protocol
Multi-layer software defined networking in GÉANT
Instructor Materials Chapter 7: Access Control Lists
Spanning Tree Protocol
© 2002, Cisco Systems, Inc. All rights reserved.
ETHANE: TAKING CONTROL OF THE ENTERPRISE
Revisiting Ethernet: Plug-and-play made scalable and efficient
Chapter 4 Data Link Layer Switching
6.829 Lecture 13: Software Defined Networking
Virtual LANs.
Spanning Tree Protocol
Spanning Tree Protocol
ONOS Drake Release September 2015.
CS 31006: Computer Networks – The Routers
An NP-Based Router for the Open Network Lab Overview by JST
© 2002, Cisco Systems, Inc. All rights reserved.
© 2002, Cisco Systems, Inc. All rights reserved.
ClosedFlow: OpenFlow-like Control over Proprietary Devices
LAN switching and Bridges
Chapter 5 Network Layer: The Control Plane
Control-Data Plane Separation
© 2002, Cisco Systems, Inc. All rights reserved.
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

Saurav, Srikanth, Sangho SPRING-OPEN & ONOS Saurav, Srikanth, Sangho 1 /12 /15

Issues Group handling Pipeline handling Use of intent framework Configuration management Treatment and Selector extensions Stats/CLI/Karaf-CLI/GUI/multi-part-msg/SLAVE

1. Group handling Group table is a major feature of OF 1.3 Today’s hardware has support for groups SR uses two kinds of groups – SELECT & INDIRECT SR uses an optional feature of OF 1.3 called group- chaining SR may use FRR group in the future ONOS needs to prepare for groups, but also meters and queues (and pipelines) OF1.3 based SDN is intrinsically low-level Use of these features are app controlled

Add/delete/modify groups How SR uses Groups? Flow-rule subsystem Special groups (policy-driven) Add/delete/modify groups Config App Core Driver Default groups (auto-created during handshake) avoids races improves performance Device subsystem Ports Groups Hardware Switch

Groups Proposal Need a new Group Subsystem that allows app to treat groups just like flows Add/delete/modify groups on demand according to app needs Allows any ONOS instance to create group in any switch Need Device Subsystem (service) to expose groups like it exposes ports today as an intrinsic property that is fundamental to the topology map broadcast to everyone Allows any app (on any ONOS instance) to query Device manager about the groups on the device Receive device-events on the addition/deletion/mod of groups on the device

Issues Group handling Pipeline handling Use of intent framework Configuration management Treatment and Selector extensions Stats/CLI/Karaf-CLI/GUI/multi-part-msg/SLAVE

2. Pipeline Handling Can’t avoid it if working on ASIC based hardware Can’t (totally) abstract it away to the app Going to become more and more important

Sample Pipelines (TTPs) – 1/3 SPRING-OPEN TTP Ingress Port Incoming Packet VLAN Flow Table Termination MAC Flow Unicast IPv4 Routing Flow Table z MPLS Forwarding ACL Policy Apply Actions -push/pop -TTL mpls -Set -Output -Group Outgoing Group Table Entries: L3 Unicast MPLS Unicast ECMP Pkt. + Meta- Data + Action Set {} Egress or Group

Sample Pipelines (TTPs) – 2/3 Broadcom OF-DPA 1.0

Sample Pipelines (TTPs) – 3/3 Broadcom OF-DPA 2.0

OFSwitchImplSpringOpenTTP How SR uses pipelines? App Partially aware of pipeline (IP/MPLS/ACL tables & some groups) Core Driver Completely aware of pipeline (OF messages, Goto/Clear/ Write or Apply Actions) Pre-populates statically populated tables impl IOFSwitch OFSwitchImplBase ext ext impl IOF13Switch OFSwitchImplSpringOpenTTP ext ext OFSwitchImplCpqd OFSwitchImplDell

Pipelines proposal Most of ONOS pipeline unaware – can stay that way Driver for TTP & pipeline awareness App should be configured for specific pipeline to use as part of solution/service deployment FlowRuleProvider exposes table-awareness writes directly to switch using sw.write() methods for simple 1.0 switches uses driver-methods to write to 1.3 switches that support a specific TTP allows option to make flow-rules stateless (i.e. does not copy flowrules to other instances)

Issues Group handling Pipeline handling Use of intent framework Configuration management Treatment and Selector extensions Stats/CLI/Karaf-CLI/GUI/multi-part-msg/SLAVE

3. Use of the Intent Fw Technically feasible to implement Compiler and Installer for SR Framework currently does not provide option to be stateless App does not need to worry about replication or install/recovery state-machine Heavyweight state-machine, hard to debug, parts of SM not implemented If purpose is reuse, SR compiler and installer would likely only be used for SR If purpose is ‘the chance to resolve between flow-rules’  very hard, impossible given OF 1.3 and pipelines ✔ ✗ ✔ ✗ ✗ ✗

How SR does routing? Default Routing Policy Routing done by app using dst-rooted, per-router, in-trees calculation and stage-by-stage installation to guarantee loop-free updates completely stateless – upon failure new next hops are determined and installed overwriting old rules – does not require knowledge of old rules Flow-space separated per controller instance using subnets  allowing parallel operation Policy Routing done by app in single controller instance statefull

Issues Group handling Pipeline handling Use of intent framework Configuration management Treatment and Selector extensions Stats/CLI/Karaf-CLI/GUI/multi-part-msg/SLAVE

4. NetworkConfigManager Running Config CLI/ REST Network Config Mgr. Config Service Topology Manager Store Config file Startup Config hosts switches links ONOS Instance ONOS Instance ONOS Instance Running Config Channel Startup Config Startup Config Startup Config

Filtering Logic DENY ACCEPT DENY DENY Deny list ACCEPT & ADD Restrict switches? Yes Default Deny No Default Allow Has Config? Has Config? No DENY No ACCEPT Yes Yes Allowed? Allowed? No No DENY DENY Deny list Yes Yes ACCEPT & ADD ACCEPT & ADD Allow list

Issues Group handling Pipeline handling Use of intent framework Configuration management Treatment and Selector extensions Stats/CLI/Karaf-CLI/GUI/multi-part-msg/SLAVE