SlideShare a Scribd company logo
ROUTEFLOW &
SOFTWARE-DEFINED EXCHANGES
Raphael Vicente Rosa
Christian Esteve Rothenberg
University of Campinas (UNICAMP), Brazil
Agenda
• Background:
• Software-Defined Networking (SDN)
• Separating Routing from Routers (BGP-based pre-SDN)
• RouteFlow: Software-Defined IP Routing
• Basics
• Cardigan deployment at live IXP (>1 year)
• Software-Defined Exchanges
• Research perspectives and open innovation
2
Background on SDN [5]
3
[5] "Software-Defined Networking: A Comprehensive Survey."
SDNAND OPEN SOURCEARE EVOLVINGAND
ACCELERATING THE PATH OF STANDARDIZATION
Components of the New Frontier
SDN & NFV: The Frontier of Networking
Existing
• CLIs
• Closed Source
• Vendor Lead
• Classic Network
Appliances
New
• APIs
• Open Source
• Customer Lead
• Network Function
Virtualization (NFV)
Adapted from: Kyle Mestery, Next Generation Network Developer Skills
Separating Routing From Routers
• Routing Control Platform (2004) [1]
• Path computation based on a consistent view of network state
• Controlled interactions between routing protocol layers
• Expressive specification of routing policies
6
Figure 1 – Routing Control Platforms (RCPs) [1]
Redefinition of Inter-AS Routing
• Inter-AS Routing Issues
• Routing tables scalability (route entries)
• BGP policy definitions (communities, filter tags)
• Dynamic negotiation of network resources (e.g., bandwidth prices)
• …
• Complexity can be better managed
• Simpler routing configuration
• Network-wide traffic engineering
• Better network diagnostics and troubleshooting
• New interdomain routing protocols
7
RCP Challenges
• Robustness
• Consistent view: loop-free paths
• Scalability
• Session establishment, path computation, management
• Convergence speed
• Intra and Inter AS route computation
• Configuration languages
• Correctness and security
• Troubleshooting and diagnostics
• Detach control and data planes
8
RouteFlow: Basics
Data Plane
Control Plane
Linux
RouteFlow: Basics
RouteFlow [2]
• Background
• Glue of IP routing stacks with OpenFlow
• Controller-centric hybrid IP networks
• Migration path to SDN (e.g., Cardigan)
• Benefits:
• Cheap network gear with minimal embedded software
• Provide interoperability with legacy network elements
• Avoid re-writing legacy protocols in a centralized fashion
• Innovation power to stakeholders
• network operators, service providers
11
[2] “Revisiting routing control platforms with the eyes and muscles of software-defined networking”
RouteFlow: High Level Architecture
• Modular
• 3 components
• Hierarchical
• Distributed
• Multi-controller
• POX, Ryu, ODL
• Routing stacks
• Quagga, BIRD, XORP
12
Figure 2 – RouteFlow Architecture [2]
RouteFlow
13
Figure 3 – RouteFlow General Architecture
RouteFlow: SDX for Layer 3
• RouteFlow – an approach to build BGP in the controller
• Create a virtual model of the router in the controller
• Forward BGP update packets to the virtual interface
• Compute BGP route tables (RIB and FIB) based on virtual model
• Translate FIB into Flow Tables based on real switch model
• Install Flow Tables in the data plane
• Build a SDN-based Router
• vandevecken code fork on RouteFlow (higher performance, simpler, 1.3 capable)
• Build peering fabric based on dynamic SDN policies
• rather than static network constructs
• Use SDN rules to scrub bad behavior*
• Deal with Router hygiene issues (default deny instead of default allow).
• Deal with “Capacity Theft” issues (as well as “noise” traffic)
(Adapted from – Inder Monga NVS'14)
14
Abstracting SDX:
what are the common functions?
• A place where peering domains come together
• Peering domains need not be physically connected
• Supports establishment of inter-domain connectivity/routing
• A broker of inter-domain and inter-SRP trust
• Each SDX defines its rules of engagement
• Enforcer of individual domain policies
• Marketplace for Software Defined Services (SDS) can be built
as a SDX overlay
• For example, an application-specific exchange (a video marketplace)
• Resources may be virtual or physical
(Adapted from – Inder Monga NVS'14)
15
Internet eXchange Points (IXPs)
• It's a network fabric that participants connect to
• They advertise their networks
• Any packet you place into the exchange finds the appropriate
destination
• It is not a: router, switch, layer 3 switch…
• It's just a place you poke two things...
• Advertisements for things you'll accept
• and packets you want to get rid of
16
IXPs
17
Figure 4 – Typical IXP Architecture [3]
Anatomy of a large European IXP [3]
• A particular Internet ecosystem (2012)
• Agnostic of any tier structure (flatenning 400 members)
• Peer-Peer links (more than 50,000)
• High-densely connected (visible / invisible / cannot tell P-P links)
• Prefix exchange ratio
• Traffic matrix (10 PB of IP traffic daily)
• Misconceptions reassessment
• Tier-1 ISPs do not peer at IXP (they do)
• IXPs are not used for transit (they are)
• The number of peer-peer links on the internet is small (larger than
assumed)
• IXP links are mostly used for back-up (they are not)
18
Cardigan [4]
• SDN-based distributed router in a live IXP
• Reduces operational complexity
• Hybrid SDN-IP network side-by-side
• New approach to the router abstraction model
• RouteFlow Vandervecken branch
19
Figure 5 – Cardigan initial 2-switch deployment [4]
Initial Limitations and Easy Fixes
• Extensible message formats
• RFProtocol flexibility
• Set of matches, actions, options...
• IPv6, MPLS on Ethernet
• Inneficient gateway resolution
• RFClient: Reception of its Netlink announcement and discovery of the
associated gateway MAC address
• Cache IPv4 and IPv6 routes until ARP resolutions
• Scalable router abstraction
• Router abstraction dependent on the physical topology
• No arbitrary paths inside the ISP network
• Traffic classification using VLAN tags per static inter-switch links (ISLs)
configuration
• Fine granular traffic control introducing MPLS paths
20
Cardigan 2.0
• MPLS Label Switched Path (LSP)
• A prefix to a path (set of paths)
• Ingress node through a set of transit nodes
• Operator freely defines packet circuits over the network (arbitrary
level of detail)
• Forwarding Path Manager (FPM) component On RouteFlow
architecture
• Feeds all calculated routes (even if initially discarded)
21
Cardigan 2.0
22
Figure 6 – Cardigan with MPLS design [4]
Deployment
• Pronto Switches (PicOs) - 1G SFPs
• Out-of-band VM controller by layer 2 VLANs
• Traffic forwarded directly by OpenFlow switches
• In production for 9 months
• 90 organizations - forwarding customer traffic and sharing routes
• 1134 flows on each swicth (1028 layer 3 routes)
23
Discussion Itens (1/2)
• Protocol compliance
• OF 1.0 TTL decrement
• MAC addressing
• Scalability of flow tables
• OF agent implementation
• Vendor switches memory leaks and flow counters
• Encapsulation Hazards
• MTU size for Ethernet, VLAN, MPLS, etc
24
Discussion Itens (2/2)
• Gateway Address Resolution - Increased performance
• Separation of gateway resolution and route processing
• Scalability
• Distribution of the FIB accross multiple devices, different data plane
technologies (NPU/FPGA)
• Resilience
• High-available non-stop forwarding solution and systematical SDN
troubleshooting
• Policy enforcements at IXPs – tedious tasks
• Manual time-of-the-day routing, dynamic traffic engineering, route
preferences, etc)’
25
Related Work
• IXP: an interesting networking landscape
• SDX: A Software Defined Internet Exchange
• Arpit Gupta (Georgia Institute of Technology), Laurent Vanbever (Princeton
University), Muhammad Shahbaz (Georgia Institute of Technology), Sean P.
Donovan (Georgia Institute of Technology), Brandon Schlinker (University of
Southern California), Nick Feamster (Georgia Institute of Technology),
Jennifer Rexford (Princeton University), Scott Shenker (UC Berkeley), Russ
Clark (Georgia Institute of Technology), Ethan Katz-Bassett (University of
Southern California)
• ACM SIGCOMM, Chicago, IL. August 2014.
• Enforcing RPKI-Based Routing Policy on the Data Plane at an
Internet Exchange
• HotSDN ’14
26
Future Work
• Rethink peering between SDN domains
• Strictly enforce routing and security policy
• Prevent crafted BGP packets from exploiting policy
• Prevent misdirected traffic
• Simplify operations
• Increase reliability
27
Research & Open Innovation
• Open Innovation
• Google Summer of Code [ 2013, 2014, … new proposals]
• Github Community [ forks, pull requests ]
• Code Contributions [5K – 10K LOC, testing hours, bug reports ]
• Mailing Lists [ +200 Members, 160 Topics ]
• Community contributions & collaborations
• Web-based UI & Internet 2 HW pilot [C. Small, Indiana]
• Aggregated BGP Routing Service [C. Corrêa, Unirio]
• SNMP plugin [J. Stringer, Google]
• IPv6, MPLS, IXP [REANZ, Google]
• Optimal BGP best path reflection [R. Raszuk, NTT-MCL]
• Intra data center BGP routing [R. V. Rosa, Unicamp]
• MPLS LDP support [Vikram Dham]
• ….
28
RouteFlow
• Ongoing Work
• OpenFlow hardware upfront: Pica8, NoviFlow, Corsa (OF 1.3)
• Open Issues
• Replicate data plane events in the virtual environment
• Extensive evaluation on realistic networking conditions
• OpenFlow table abstractions
• Towards a routing control PaaS
• IXP Perspective
• Scale to large networks
• Future implementation of policies
• Load balancing, closest exit usage, complex setups
https://github.com/routeflow/RouteFlow/wiki/Projects-and-ideas-for-RouteFlow
29
Summary
• Routing Control Platforms possible through SDN
• IXP is a particular microcosm of the Internet ecosystem
• SDN may solve IXP challenges
• Software Defined Exchanges
• RouteFlow as a SDX layer 3
• Rethink peering between IP and SDN domains (and SDN-SDN)
• More related work at below L3 and at application-layer
• Cardigan RouteFlow pilot deployment is a real SDN-
based legacy IXP implementation
30
References
• [1] Nick Feamster, Hari Balakrishnan, Jennifer Rexford, Aman Shaikh, and Jacobus van der
Merwe. 2004. The case for separating routing from routers. In Proceedings of the ACM
SIGCOMM workshop on Future directions in network architecture (FDNA '04). ACM, New
York, NY, USA, 5-12.
• [2] Christian Esteve Rothenberg, Marcelo Ribeiro Nascimento, Marcos Rogerio Salvador,
Carlos Nilton Araujo Corrêa, Sidney Cunha de Lucena, and Robert Raszuk. 2012. Revisiting
routing control platforms with the eyes and muscles of software-defined networking. In
Proceedings of the first workshop on Hot topics in software defined networks (HotSDN '12).
ACM, New York, NY, USA, 13-18.
• [3] Bernhard Ager, Nikolaos Chatzis, Anja Feldmann, Nadi Sarrar, Steve Uhlig, and Walter
Willinger. 2012. Anatomy of a large european IXP. SIGCOMM Comput. Commun. Rev. 42, 4
(August 2012).
• [4] Jonathan Philip Stringer, Qiang Fu, Christopher Lorier, Richard Nelson, and Christian
Esteve Rothenberg. 2013. Cardigan: deploying a distributed routing fabric. In Proceedings of
the second ACM SIGCOMM workshop on Hot topics in software defined networking
(HotSDN '13). ACM, New York, NY, USA, 169-170
• [5] Diego Kreutz, Fernando M. V. Ramos, Paulo Verissimo, Christian Esteve Rothenberg,
Siamak Azodolmolky, Steve Uhlig. "Software-Defined Networking: A Comprehensive Survey."
To appear in Proceedings of the IEEE, 2015.
• https://github.com/SDN-Survey/latex/wiki
• http://arxiv.org/abs/1406.0440
31
32
Thank you!
Questions?
• Raphael Vicente Rosa
• raphaelvrosa [at] gmail [dot] com
Ask and contribute!
routeflow-discuss@googlegroups.com
Get the code!
https://github.com/routeflow/RouteFlow/
BACKUP
33
RouteFlow Project History
34
• Start Msc. Thesis
work by Marcelo
N.
• First Prototype
• QuagFlow Poster
@ SIGCOMM
• Open-Source
Release
• Demos @ ONS11
• Demo @
SuperComputing 11
• Tutorial & Demo @
OFELIA/CHANGE SS• First Short-Paper
@ WPEIF
• Evaluation on
NetFPGA testbed
• Indiana University
- Pronto OF
switches + BGP
peering with
Juniper MX • Demos @ ONS12
• Running on FIBRE /
OFELIA testbed
• HotSDN Paper
• Collaboraion with
NTT
RouteFlow 2013 / 2014
• Significant contributions from CARDIGAN and the
VANDERWECKEN fork
• Live in production network in New Zealand
• Inter-VLAN routing at UNESP, Brazil.
• Google Summer of Code (GSOC 2013 / 2014)
• …
35

More Related Content

PDF
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDN
PDF
Tech Talk by John Casey (CTO) CPLANE_NETWORKS : High Performance OpenStack Ne...
PPTX
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
PPTX
Software Defined Networking: Primer
PDF
Container Service Chaining
PDF
Multi-operator "IPC" VPN Slices: Applying RINA to Overlay Networking
PDF
Dynamic Service Chaining
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDN
Tech Talk by John Casey (CTO) CPLANE_NETWORKS : High Performance OpenStack Ne...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Software Defined Networking: Primer
Container Service Chaining
Multi-operator "IPC" VPN Slices: Applying RINA to Overlay Networking
Dynamic Service Chaining

What's hot (20)

PDF
Service Chaining overview (English) 2015/10/05
PPT
MPLS SDN NFV WORLD'17 - SDN NFV deployment update
PDF
SDN Traffic Engineering, A Natural Evolution
PPTX
Architecture of OpenFlow SDNs
PDF
Advanced Topics and Future Directions in MPLS
PDF
Rlite software-architecture (1)
PDF
A Centrally Orchestrated SD-WAN Building a Green Ecosystem
PDF
First Contact: Can Switching to RINA save the Internet?
PDF
Segment Routing
PPTX
Tutorial on SDN data plane evolution
PDF
Design Principles for 5G
PDF
Routed networks sydney
PDF
How LinkedIn used TCP Anycast to make the site faster
PDF
Rina p4 rina workshop
PDF
【EPN Seminar Nov.10. 2015】 パネルディスカッション その2: BGP Peering Engineering Automatio...
PDF
Network State Awareness & Troubleshooting
PDF
Building Hyperscale Networks
PDF
Rina2020 michal
PPTX
Multiprotocol label switching (mpls) - Networkshop44
PPT
Service Chaining overview (English) 2015/10/05
MPLS SDN NFV WORLD'17 - SDN NFV deployment update
SDN Traffic Engineering, A Natural Evolution
Architecture of OpenFlow SDNs
Advanced Topics and Future Directions in MPLS
Rlite software-architecture (1)
A Centrally Orchestrated SD-WAN Building a Green Ecosystem
First Contact: Can Switching to RINA save the Internet?
Segment Routing
Tutorial on SDN data plane evolution
Design Principles for 5G
Routed networks sydney
How LinkedIn used TCP Anycast to make the site faster
Rina p4 rina workshop
【EPN Seminar Nov.10. 2015】 パネルディスカッション その2: BGP Peering Engineering Automatio...
Network State Awareness & Troubleshooting
Building Hyperscale Networks
Rina2020 michal
Multiprotocol label switching (mpls) - Networkshop44
Ad

Viewers also liked (12)

PDF
Ryu SDN Framework
PDF
OpenFlow Controllers and Tools
PPTX
Ryu SDN-IP
PDF
Developing SDN apps in Ryu
PPTX
Introduction to Beryllium release of OpenDaylight
PDF
IXP Design and Operational BCP
PPTX
SDN, OpenFlow, NFV, and Virtual Network
PDF
Docker初识
PPTX
2016 open-source-network-softwarization
PPTX
SDN ryu 專題安裝
PPT
Ryu Learning Guide
PDF
Sdnds tw-meetup-2
Ryu SDN Framework
OpenFlow Controllers and Tools
Ryu SDN-IP
Developing SDN apps in Ryu
Introduction to Beryllium release of OpenDaylight
IXP Design and Operational BCP
SDN, OpenFlow, NFV, and Virtual Network
Docker初识
2016 open-source-network-softwarization
SDN ryu 專題安裝
Ryu Learning Guide
Sdnds tw-meetup-2
Ad

Similar to RouteFlow & IXPs (20)

PPTX
Cardigan at ISCC 2014
PPTX
On SDN Research Topics - Christian Esteve Rothenberg
PPTX
Feec telecom-nw-softwarization-aug-2015
PPTX
Network programmability: an Overview
PDF
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...
PPTX
Raga_SDN_NSX_1
PDF
intro lect.pdfkkpkpkpkpkpjjkojkopjjojjoj
PPTX
Introduction to Software Defined Networking (SDN)
PDF
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...
PPTX
Software defined network
PPTX
btNOG 9 presentation Introduction to Software Defined Networking
PPTX
SDN: an introduction
PPTX
Cis sem sdn
PPTX
The Juniper SDN Landscape
PPT
SDNImpactonMPLS_AdrianFarrel_MPLS2012.ppt
PPTX
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...
PPTX
SDN approach.pptx
PPTX
Software Defined Networking, Concepts and Practical Implementations
PPTX
SDN :: Software Defined Networking –2017 Executive Overview
PDF
Introduzione a Software Define Networking
Cardigan at ISCC 2014
On SDN Research Topics - Christian Esteve Rothenberg
Feec telecom-nw-softwarization-aug-2015
Network programmability: an Overview
Software Innovations and Control Plane Evolution in the new SDN Transport Arc...
Raga_SDN_NSX_1
intro lect.pdfkkpkpkpkpkpjjkojkopjjojjoj
Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...
Software defined network
btNOG 9 presentation Introduction to Software Defined Networking
SDN: an introduction
Cis sem sdn
The Juniper SDN Landscape
SDNImpactonMPLS_AdrianFarrel_MPLS2012.ppt
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...
SDN approach.pptx
Software Defined Networking, Concepts and Practical Implementations
SDN :: Software Defined Networking –2017 Executive Overview
Introduzione a Software Define Networking

More from nvirters (10)

PDF
Tech Talk by Gal Sagie: Kuryr - Connecting containers networking to OpenStack...
PDF
Tech Talk by Peng Li: Open Mobile Networks with NFV
PDF
Tech Talk by Louis Fourie: SFC: technology, trend and implementation
PDF
Tech Talk: ONOS- A Distributed SDN Network Operating System
PDF
Banv meetup-contrail
PDF
Tech Talk by Tim Van Herck: SDN & NFV for WAN
PDF
Tech Talk by Ben Pfaff: Open vSwitch - Part 2
PDF
OpenFlow Data Center - A case Study by Pica8
PPTX
Pyretic - A new programmer friendly language for SDN
PPTX
Virt july-2013-meetup
Tech Talk by Gal Sagie: Kuryr - Connecting containers networking to OpenStack...
Tech Talk by Peng Li: Open Mobile Networks with NFV
Tech Talk by Louis Fourie: SFC: technology, trend and implementation
Tech Talk: ONOS- A Distributed SDN Network Operating System
Banv meetup-contrail
Tech Talk by Tim Van Herck: SDN & NFV for WAN
Tech Talk by Ben Pfaff: Open vSwitch - Part 2
OpenFlow Data Center - A case Study by Pica8
Pyretic - A new programmer friendly language for SDN
Virt july-2013-meetup

Recently uploaded (20)

PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Empathic Computing: Creating Shared Understanding
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Encapsulation theory and applications.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Empathic Computing: Creating Shared Understanding
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Encapsulation theory and applications.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
NewMind AI Monthly Chronicles - July 2025
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
Chapter 3 Spatial Domain Image Processing.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Advanced methodologies resolving dimensionality complications for autism neur...
MYSQL Presentation for SQL database connectivity
Reach Out and Touch Someone: Haptics and Empathic Computing
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
The Rise and Fall of 3GPP – Time for a Sabbatical?
Dropbox Q2 2025 Financial Results & Investor Presentation

RouteFlow & IXPs

  • 1. ROUTEFLOW & SOFTWARE-DEFINED EXCHANGES Raphael Vicente Rosa Christian Esteve Rothenberg University of Campinas (UNICAMP), Brazil
  • 2. Agenda • Background: • Software-Defined Networking (SDN) • Separating Routing from Routers (BGP-based pre-SDN) • RouteFlow: Software-Defined IP Routing • Basics • Cardigan deployment at live IXP (>1 year) • Software-Defined Exchanges • Research perspectives and open innovation 2
  • 3. Background on SDN [5] 3 [5] "Software-Defined Networking: A Comprehensive Survey."
  • 4. SDNAND OPEN SOURCEARE EVOLVINGAND ACCELERATING THE PATH OF STANDARDIZATION Components of the New Frontier
  • 5. SDN & NFV: The Frontier of Networking Existing • CLIs • Closed Source • Vendor Lead • Classic Network Appliances New • APIs • Open Source • Customer Lead • Network Function Virtualization (NFV) Adapted from: Kyle Mestery, Next Generation Network Developer Skills
  • 6. Separating Routing From Routers • Routing Control Platform (2004) [1] • Path computation based on a consistent view of network state • Controlled interactions between routing protocol layers • Expressive specification of routing policies 6 Figure 1 – Routing Control Platforms (RCPs) [1]
  • 7. Redefinition of Inter-AS Routing • Inter-AS Routing Issues • Routing tables scalability (route entries) • BGP policy definitions (communities, filter tags) • Dynamic negotiation of network resources (e.g., bandwidth prices) • … • Complexity can be better managed • Simpler routing configuration • Network-wide traffic engineering • Better network diagnostics and troubleshooting • New interdomain routing protocols 7
  • 8. RCP Challenges • Robustness • Consistent view: loop-free paths • Scalability • Session establishment, path computation, management • Convergence speed • Intra and Inter AS route computation • Configuration languages • Correctness and security • Troubleshooting and diagnostics • Detach control and data planes 8
  • 11. RouteFlow [2] • Background • Glue of IP routing stacks with OpenFlow • Controller-centric hybrid IP networks • Migration path to SDN (e.g., Cardigan) • Benefits: • Cheap network gear with minimal embedded software • Provide interoperability with legacy network elements • Avoid re-writing legacy protocols in a centralized fashion • Innovation power to stakeholders • network operators, service providers 11 [2] “Revisiting routing control platforms with the eyes and muscles of software-defined networking”
  • 12. RouteFlow: High Level Architecture • Modular • 3 components • Hierarchical • Distributed • Multi-controller • POX, Ryu, ODL • Routing stacks • Quagga, BIRD, XORP 12 Figure 2 – RouteFlow Architecture [2]
  • 13. RouteFlow 13 Figure 3 – RouteFlow General Architecture
  • 14. RouteFlow: SDX for Layer 3 • RouteFlow – an approach to build BGP in the controller • Create a virtual model of the router in the controller • Forward BGP update packets to the virtual interface • Compute BGP route tables (RIB and FIB) based on virtual model • Translate FIB into Flow Tables based on real switch model • Install Flow Tables in the data plane • Build a SDN-based Router • vandevecken code fork on RouteFlow (higher performance, simpler, 1.3 capable) • Build peering fabric based on dynamic SDN policies • rather than static network constructs • Use SDN rules to scrub bad behavior* • Deal with Router hygiene issues (default deny instead of default allow). • Deal with “Capacity Theft” issues (as well as “noise” traffic) (Adapted from – Inder Monga NVS'14) 14
  • 15. Abstracting SDX: what are the common functions? • A place where peering domains come together • Peering domains need not be physically connected • Supports establishment of inter-domain connectivity/routing • A broker of inter-domain and inter-SRP trust • Each SDX defines its rules of engagement • Enforcer of individual domain policies • Marketplace for Software Defined Services (SDS) can be built as a SDX overlay • For example, an application-specific exchange (a video marketplace) • Resources may be virtual or physical (Adapted from – Inder Monga NVS'14) 15
  • 16. Internet eXchange Points (IXPs) • It's a network fabric that participants connect to • They advertise their networks • Any packet you place into the exchange finds the appropriate destination • It is not a: router, switch, layer 3 switch… • It's just a place you poke two things... • Advertisements for things you'll accept • and packets you want to get rid of 16
  • 17. IXPs 17 Figure 4 – Typical IXP Architecture [3]
  • 18. Anatomy of a large European IXP [3] • A particular Internet ecosystem (2012) • Agnostic of any tier structure (flatenning 400 members) • Peer-Peer links (more than 50,000) • High-densely connected (visible / invisible / cannot tell P-P links) • Prefix exchange ratio • Traffic matrix (10 PB of IP traffic daily) • Misconceptions reassessment • Tier-1 ISPs do not peer at IXP (they do) • IXPs are not used for transit (they are) • The number of peer-peer links on the internet is small (larger than assumed) • IXP links are mostly used for back-up (they are not) 18
  • 19. Cardigan [4] • SDN-based distributed router in a live IXP • Reduces operational complexity • Hybrid SDN-IP network side-by-side • New approach to the router abstraction model • RouteFlow Vandervecken branch 19 Figure 5 – Cardigan initial 2-switch deployment [4]
  • 20. Initial Limitations and Easy Fixes • Extensible message formats • RFProtocol flexibility • Set of matches, actions, options... • IPv6, MPLS on Ethernet • Inneficient gateway resolution • RFClient: Reception of its Netlink announcement and discovery of the associated gateway MAC address • Cache IPv4 and IPv6 routes until ARP resolutions • Scalable router abstraction • Router abstraction dependent on the physical topology • No arbitrary paths inside the ISP network • Traffic classification using VLAN tags per static inter-switch links (ISLs) configuration • Fine granular traffic control introducing MPLS paths 20
  • 21. Cardigan 2.0 • MPLS Label Switched Path (LSP) • A prefix to a path (set of paths) • Ingress node through a set of transit nodes • Operator freely defines packet circuits over the network (arbitrary level of detail) • Forwarding Path Manager (FPM) component On RouteFlow architecture • Feeds all calculated routes (even if initially discarded) 21
  • 22. Cardigan 2.0 22 Figure 6 – Cardigan with MPLS design [4]
  • 23. Deployment • Pronto Switches (PicOs) - 1G SFPs • Out-of-band VM controller by layer 2 VLANs • Traffic forwarded directly by OpenFlow switches • In production for 9 months • 90 organizations - forwarding customer traffic and sharing routes • 1134 flows on each swicth (1028 layer 3 routes) 23
  • 24. Discussion Itens (1/2) • Protocol compliance • OF 1.0 TTL decrement • MAC addressing • Scalability of flow tables • OF agent implementation • Vendor switches memory leaks and flow counters • Encapsulation Hazards • MTU size for Ethernet, VLAN, MPLS, etc 24
  • 25. Discussion Itens (2/2) • Gateway Address Resolution - Increased performance • Separation of gateway resolution and route processing • Scalability • Distribution of the FIB accross multiple devices, different data plane technologies (NPU/FPGA) • Resilience • High-available non-stop forwarding solution and systematical SDN troubleshooting • Policy enforcements at IXPs – tedious tasks • Manual time-of-the-day routing, dynamic traffic engineering, route preferences, etc)’ 25
  • 26. Related Work • IXP: an interesting networking landscape • SDX: A Software Defined Internet Exchange • Arpit Gupta (Georgia Institute of Technology), Laurent Vanbever (Princeton University), Muhammad Shahbaz (Georgia Institute of Technology), Sean P. Donovan (Georgia Institute of Technology), Brandon Schlinker (University of Southern California), Nick Feamster (Georgia Institute of Technology), Jennifer Rexford (Princeton University), Scott Shenker (UC Berkeley), Russ Clark (Georgia Institute of Technology), Ethan Katz-Bassett (University of Southern California) • ACM SIGCOMM, Chicago, IL. August 2014. • Enforcing RPKI-Based Routing Policy on the Data Plane at an Internet Exchange • HotSDN ’14 26
  • 27. Future Work • Rethink peering between SDN domains • Strictly enforce routing and security policy • Prevent crafted BGP packets from exploiting policy • Prevent misdirected traffic • Simplify operations • Increase reliability 27
  • 28. Research & Open Innovation • Open Innovation • Google Summer of Code [ 2013, 2014, … new proposals] • Github Community [ forks, pull requests ] • Code Contributions [5K – 10K LOC, testing hours, bug reports ] • Mailing Lists [ +200 Members, 160 Topics ] • Community contributions & collaborations • Web-based UI & Internet 2 HW pilot [C. Small, Indiana] • Aggregated BGP Routing Service [C. Corrêa, Unirio] • SNMP plugin [J. Stringer, Google] • IPv6, MPLS, IXP [REANZ, Google] • Optimal BGP best path reflection [R. Raszuk, NTT-MCL] • Intra data center BGP routing [R. V. Rosa, Unicamp] • MPLS LDP support [Vikram Dham] • …. 28
  • 29. RouteFlow • Ongoing Work • OpenFlow hardware upfront: Pica8, NoviFlow, Corsa (OF 1.3) • Open Issues • Replicate data plane events in the virtual environment • Extensive evaluation on realistic networking conditions • OpenFlow table abstractions • Towards a routing control PaaS • IXP Perspective • Scale to large networks • Future implementation of policies • Load balancing, closest exit usage, complex setups https://github.com/routeflow/RouteFlow/wiki/Projects-and-ideas-for-RouteFlow 29
  • 30. Summary • Routing Control Platforms possible through SDN • IXP is a particular microcosm of the Internet ecosystem • SDN may solve IXP challenges • Software Defined Exchanges • RouteFlow as a SDX layer 3 • Rethink peering between IP and SDN domains (and SDN-SDN) • More related work at below L3 and at application-layer • Cardigan RouteFlow pilot deployment is a real SDN- based legacy IXP implementation 30
  • 31. References • [1] Nick Feamster, Hari Balakrishnan, Jennifer Rexford, Aman Shaikh, and Jacobus van der Merwe. 2004. The case for separating routing from routers. In Proceedings of the ACM SIGCOMM workshop on Future directions in network architecture (FDNA '04). ACM, New York, NY, USA, 5-12. • [2] Christian Esteve Rothenberg, Marcelo Ribeiro Nascimento, Marcos Rogerio Salvador, Carlos Nilton Araujo Corrêa, Sidney Cunha de Lucena, and Robert Raszuk. 2012. Revisiting routing control platforms with the eyes and muscles of software-defined networking. In Proceedings of the first workshop on Hot topics in software defined networks (HotSDN '12). ACM, New York, NY, USA, 13-18. • [3] Bernhard Ager, Nikolaos Chatzis, Anja Feldmann, Nadi Sarrar, Steve Uhlig, and Walter Willinger. 2012. Anatomy of a large european IXP. SIGCOMM Comput. Commun. Rev. 42, 4 (August 2012). • [4] Jonathan Philip Stringer, Qiang Fu, Christopher Lorier, Richard Nelson, and Christian Esteve Rothenberg. 2013. Cardigan: deploying a distributed routing fabric. In Proceedings of the second ACM SIGCOMM workshop on Hot topics in software defined networking (HotSDN '13). ACM, New York, NY, USA, 169-170 • [5] Diego Kreutz, Fernando M. V. Ramos, Paulo Verissimo, Christian Esteve Rothenberg, Siamak Azodolmolky, Steve Uhlig. "Software-Defined Networking: A Comprehensive Survey." To appear in Proceedings of the IEEE, 2015. • https://github.com/SDN-Survey/latex/wiki • http://arxiv.org/abs/1406.0440 31
  • 32. 32 Thank you! Questions? • Raphael Vicente Rosa • raphaelvrosa [at] gmail [dot] com Ask and contribute! routeflow-discuss@googlegroups.com Get the code! https://github.com/routeflow/RouteFlow/
  • 34. RouteFlow Project History 34 • Start Msc. Thesis work by Marcelo N. • First Prototype • QuagFlow Poster @ SIGCOMM • Open-Source Release • Demos @ ONS11 • Demo @ SuperComputing 11 • Tutorial & Demo @ OFELIA/CHANGE SS• First Short-Paper @ WPEIF • Evaluation on NetFPGA testbed • Indiana University - Pronto OF switches + BGP peering with Juniper MX • Demos @ ONS12 • Running on FIBRE / OFELIA testbed • HotSDN Paper • Collaboraion with NTT
  • 35. RouteFlow 2013 / 2014 • Significant contributions from CARDIGAN and the VANDERWECKEN fork • Live in production network in New Zealand • Inter-VLAN routing at UNESP, Brazil. • Google Summer of Code (GSOC 2013 / 2014) • … 35