Bikash Koley
- n behalf of Google Technical Infrastructure
BTE 2014
Software Defined Networking at Scale Bikash Koley on behalf of - - PowerPoint PPT Presentation
Software Defined Networking at Scale Bikash Koley on behalf of Google Technical Infrastructure BTE 2014 Software Defined Networking at Scale Bikash Koley on behalf of Google Technical Infrastructure Software Defined Google Networking at
Bikash Koley
BTE 2014
Bikash Koley
Bikash Koley
Google Confidential and Proprietary
Google Confidential and Proprietary
searches per month on google.com
Source: Google, 2012
Warehouse Scale Computers
Google Confidential and Proprietary
Google’s Global CDN
Google Confidential and Proprietary
B4: Software Defined inter-Datacenter WAN
Google Confidential and Proprietary
Exit testing "opt in" network
History of B4 WAN
SDN Rollout SDN Fully Deployed Central TE Deployed
Google Confidential and Proprietary
Mixed SDN Deployment
Cluster Border Router Data Center Network EBGP IBGP/ISIS to remote sites
Quagga OFC RCS Paxos Paxos Paxos
OFA OFA OFA OFA OFA OFA OFA OFA
TE Server
B4: SDN Architecture
Google Confidential and Proprietary
defined control and data plane APIs on a routing HW at that time was to build it ourselves
○ Built from merchant silicon ○ OpenFlow support ○ Does not have all features ○ Multiple chassis per site ○ Fully centralized software controlled
B4: SDN Equipment
Google Confidential and Proprietary
management planes
model
uptime
in days (vs years) Why SDN?
Google Confidential and Proprietary
management planes
model
uptime
in days (vs years) Why SDN?
Google Confidential and Proprietary
IP Control Plane Data Plane
Trans port
Router
EMS NMS App
Optical Control Plane tical
Optical Transport
EMS NMS App
MPLS Control Plane ptica LSR
EMS NMS App
Layer-cake Network
Transpor
Network Operating System
lane Opticalrt
Optical Transport
App App App
Plane
nsport
LSR
App App App App App App
Software Defined Network
Many Networks → One Network
Router
Google Confidential and Proprietary
Anatomy of a Software Defined Network
switches/routers Optical Transport
Data Plane
BGP IGP TE Optical Restoration OpenFlow/PCE-P/... Config Workflow
Control Plane Management Plane
Analytics Telemetry Config Model SNMP Config API??? SNMP Topology Model
Google Confidential and Proprietary
Anatomy of a Software Defined Network
switches/routers Optical Transport
Data Plane
BGP IGP TE Optical Restoration OpenFlow/PCE-P/... Config Workflow
Control Plane Management Plane
Analytics Telemetry Config Model Topology Model Netconf/JSON/..? JSON PUB/S UB? YANG/..?
Google Confidential and Proprietary
Software Defined Network Configuration
Content [config data] Config Model Topology Model Operations <get-config>, <edit-config>,<notifications> RPC Transport Protocol [ssh, https,..]
Google Confidential and Proprietary
protocols (OpenFlow, PCE-P.. )
protocols and APIs
○ Netconf (RFC 6241) is promising, need universal adoption
definition
○ YANG as modeling language is promising ○ No vendor-neutral data model yet to describe network/device configuration ○ No standard network topology model
○ SNMP is clunky and not that simple ☺
Towards Declarative Transactional Semantics
Google Confidential and Proprietary
configuration
○ Google is working on a rich vendor-neutral network data model described in YANG
topology (Layer-0 - 7)
○ Google made significant progress in structured hierarchical
description of multi-layer connected graphs using protocol
buffers* (aka protobuf)
common config and topology models as the basis of true software defined network operation Towards a Common Network Model
* http://code.google.com/p/protobuf/
Google Confidential and Proprietary
○ Exchange traffic optimally between provider networks (ASNs)
○ Mutual intents of traffic exchange are expressed via BGP as *hints* ○ Suboptimal traffic exchange as the peer networks *guess* optimality
○ A common network model and a rich pub/sub API, leveraging cloud ○ Declarative intent expressed by an ISP:
■
e.g. deliver 10.20.30.0/24 to Denver, 10.20.31.0/24 to San Francisco,
do_not_deliver traffic in {Portland, Los Angeles}, avoid_congestion in topology_A, use augmented_topology_B
SDN: Beyond the Network Boundaries
Google Confidential and Proprietary
SDN: Beyond the Network Boundaries
Google Confidential and Proprietary
bkoley@google.com