Linux As A Network OS Dinesh G Dutt Shrijeet Mukherjee Nolan Leake - - PowerPoint PPT Presentation
Linux As A Network OS Dinesh G Dutt Shrijeet Mukherjee Nolan Leake - - PowerPoint PPT Presentation
Linux As A Network OS Dinesh G Dutt Shrijeet Mukherjee Nolan Leake Pradosh Mohapatra Networking circa 2008 Flickr photo from [http://www.flickr.com/photos/duncanh1/] Linuxcon 2013 09/16/13 2 Data Centers have thrown a monkey wrench in the
09/16/13 2 Linuxcon 2013
Networking circa 2008
Flickr photo from [http://www.flickr.com/photos/duncanh1/]
09/16/13 3 Linuxcon 2013
Data Centers have thrown a monkey wrench in the world of networking whether it be how networks are managed, the new technologies they have brought to the fore such as SDN or network virtualization
09/16/13 4 Linuxcon 2013
Modern data center networks are based around the following ideas: New breed of applications which are L3-aware and workaround network failures IP-based networks Automated management
- Configuration and monitoring
- Rapid spin-up and spin-down of
networks
09/16/13 5 Linuxcon 2013
Operating Systems define how you manage the individual boxes and thereby the system
09/16/13 6 Linuxcon 2013
Traditional Router/Switch Oses: Complex routing/switching features Structured as a black box:
– No well-defined API
Closed development model Antediluvian management tool chain Very slow spin-up and spin-down of networks
09/16/13 7 Linuxcon 2013
Modern data centers usually run GNU/Linux as the server OS: Well established and open API Sophisticated management tool chain
- Including scripting
Vibrant community fueling innovation Excellent networking support
09/16/13 8 Linuxcon 2013
Networking support includes the expected and more:
09/16/13 9 Linuxcon 2013
In other words: GNU/Linux is a great fit as the OS for not just servers but even routers and switches in the modern data center
09/16/13 10 Linuxcon 2013
So What ? What advantages does this provide ?
09/16/13 11 Linuxcon 2013
What Linux as the network OS enables: Open routing and switching platform Unified management tool chain New ways of solving problems Neatly sidesteps a bunch of problems A potential to return IP networking to its roots: “rough consensus, working code”
09/16/13 12 Linuxcon 2013
Open Routing/Switching implies a more participatory role for everyone to develop networking, transparency for troubleshooting and understanding
09/16/13 13 Linuxcon 2013
Quagga
Kernel STP, mstpd lldpd, open-lldp Routing Suites Bridging Discovery Monitoring Net-snmp, collectd, ganglia Open Routing/Switching Platform
09/16/13 14
Datacenter 1 Datacenter 1
Tools to manage servers such as Chef, Puppet, Ansible
- etc. can also be used to manage the network
09/16/13 15 Linuxcon 2013
netplug, ifplugd Flexlink Keepalived or a script to configure virtual MAC on bridge HSRP/VRRP New ways of solving the problem
09/16/13 16 Linuxcon 2013
With Linux as the network OS, we neatly sidestep issues that arise from the traditional router OS' being a black box: Technologies such as netconf APIs for programming network
09/16/13 17 Linuxcon 2013
What's missing ? Hardware acceleration of the networking forwarding path
09/16/13 18
One Way Of Hardware Accelerating
Linux Kernel Linux Kernel Routing Table Routing Table ARP Table ARP Table Ethernet Interfaces Ethernet Interfaces switchd switchd Routing Protocols Routing Protocols CPU, RAM, Flash, etc CPU, RAM, Flash, etc Switch Driver Switch Driver Switch Silicon Switch Silicon Customer Applications Customer Applications
Switch ports show up as virtual interfaces (swp0, swp1 …)
- typical tools - ifconfig, route, arp, ip, brctl, ethtool, tcpdump, etc
Kernel FIB/ARP table are synchronized with HW
- userspace can send/receive packets and insert routes normally
Advanced operations use specialized APIs
- expose hardware acceleration beyond stock Linux routing/bridging
09/16/13 19 Linuxcon 2013
Evolving Linux further: Consistent way to map data structures to hardware
- Netlink's publish functionality
not available with netfilter, for eg. Provide mechanisms to allow commands to fail if backend hardware install fails
Linuxcon 2013 09/16/13 20
Linux as the embedded OS: process and memory mgmt Embedded OS with process and memory mgmt No real OS, while loop Monolithic OS Third Party Real-time OS Linux-based OS
Evolution Of Network OS
Eg: IOS, CatOS Proprietary routing And switching stack Eg: ION Eg: NX-OS, EOS Cumulus Linux Linux OS Linux as Network OS: Native routing and switching Proprietary routing And switching stack Proprietary routing And switching stack
09/16/13 21
It's taken me all my life to learn what not to play.
- Dizzy Gillespie
09/16/13 22 Linuxcon 2013
Imagine a world where every router ran GNU/Linux
09/16/13 23 Linuxcon 2013