Interface to the Routing System Adrian Farrel [email protected] [email protected].

23
Interface to the Routing System Adrian Farrel [email protected] [email protected]

Transcript of Interface to the Routing System Adrian Farrel [email protected] [email protected].

Page 1: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

Interface to the Routing System

Adrian [email protected]@juniper.net

Page 2: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

2 of 23

Agenda

• What is the Routing System?• What do we want to do with the Routing

System?• What tools already exist?• An architecture for IRS• Requirements for IRS• IRS Work to be done• Integrating the toolkit

Page 3: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

3 of 23

The Routing System• The forwarding plane is just part of a router• We are interested in larger granularity impact

3

Data PlaneFIB

RIB ManagerPolicy DB

Topology DB

OAM, Events Measurement

Router

RIBConfig

Routing and

Signalling

OpenFlow

Config DB

Page 4: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

4 of 23

Advanced SDN Use Cases• Programming the Routing Information Base

– For example, adding static routes • Setting routing policy

– Control how the FIB is built• Other router policies

– Modify BGP import/export policies• Topology extraction

– Pull routing information (including SRLGs) from network• Topology management

– Create virtual links by making connections in lower layers• Service management

– Request LSPs, connections, pseudowires– Bandwidth scheduling– “Set up a VPN”

Page 5: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

5 of 23

Existing SDN Tools - OpenFlow• Useful, programmatic remote API• Initially targeted at data / forwarding plane

– Separation of control plane from data plane• RAPI nature introduces extensibility issues

– New revisions not backward compatible– Hard to add new data models

• Current version has some concerns– Synchronous completion is assumed– No support for bidirectional flow– Security model is not complete

• Use needs coordination– A routing protocol– An orchestrator

Page 6: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

6 of 23

Existing Tools - ForCES• IETF protocol and encoding language

– An open standard• Separation of control and forwarding planes

– Originally developed to support COTS• Standard, but in-box protocol• Use rapidly extended to out-of-box

– Has been used to model OpenFlow• Provides the same level of function

• Use needs coordination– A routing protocol– An orchestrator

Page 7: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

7 of 23

Existing Tools - Config• All routers have configuration interfaces• Command Line Interface

– Non-standard– Varies from one product release to the next– Easy to script– Hard to parse output ("screen scraping")

• All config approaches tend to be batched– Enter many config commands– Verify the config– Commit

• So config is slow and complicated

Page 8: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

8 of 23

Existing Tools - Netconf / YANG• IETF standardised protocol and encoding language• Netconf

– Next generation configuration protocol– Lessons learnt from SNMP

• Reduced "chattines" of protocol• Multiple objects set at once• Security is far simpler

• YANG– XML-like encoding language– Easy to define new data models

• Not yet widely adopted– Usage currently has many of the disadvantages of config

Page 9: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

9 of 23

Existing Tools - PCE• Initially conceived as a path computation server

– Solving the problem of inter-AS MPLS-TE– Stateless computation– Uses Traffic Engineering Database

• Extended for stateful computation– Recalls information about previous computations– Learns state of provisioning from network

• New extensions for "Active PCE"– PCE can issue provisioning commands– Enables new services

• Topology creation• Scheduled services• Dynamic re-optimisation and grooming

Page 10: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

10 of 23

Existing Tools - BGP-LS• How does a PCE obtain the TED?

– Unspecified in the architecture– Early implementations participate in IGP

• Updates may be too frequent• Implementations must support IS-IS and OSPF

• Most TE networks have a BGP-capable router– BGP nodes are designed to process routing policies

• BGP-LS is set of simple extensions to advertise topology info• Speaker

– Possibly a Route Reflector– Uses policy to determine what to advertise and when

• Consumer (i.e. PCE) – Very lightweight BGP implementation– Not drowned by network updates

Page 11: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

11 of 23

Existing Tools - VNTM

• Virtual link is tunnel provided by link in lower layer (e.g., virtual MPLS-TE link made by optical circuit)

• Virtual topology is nodes, links, and virtual links• Virtual Network Topology Manager

– An architectural component– Responsible for coordinating between layers– Integrates between PCEs at different layers– Applies policies to create “on-demand” topology

Page 12: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

12 of 23

Additional SDN Function

• Applications need to dynamically:– Augment routing, based on:

• Policy• Flow and application awareness• Time and external changes

– With knowledge of:• Topology (active & potential)• Network events• Traffic measurement• Etc.

NetworkApplication

Feedback Loop: Control & Information

Page 13: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

13 of 23

New Tools – Interface to the Routing System

• Data models for routing and signaling state– RIB Layer: unicast RIBs, multicast RIBs, MPLS LFIB, etc.– Protocols: ISIS, OSPF, BGP, RSVP-TE, LDP, PIM, mLDP, etc.– Related Function: policy-based routing, QoS, OAM, security, etc.

• Framework for integrating external data into routing– Indirection, policy, loop-detection

• Filtered events for triggers, verification, and learning about changes to router state

• Data models for state– Topology model, interface, measurements, etc.

• Device-level and network-level interfaces and protocols

Page 14: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

14 of 23

The IRS Architecture

14

Data Plane FIB

RIBs and RIB ManagerPolicy DB

Routing and Signaling Protocols

Topology DBOAM, Events and

Measurement

IRS Agent

IRS Client IRS Client

Router

Server

ApplicationApplication

Application

IRS Protocol & Data Encoding

Page 15: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

15 of 23

IRS Requirements• Programmability

– Easy to write an API• Stateless communications (RESTful)

– Reduced session state– No state retention between messages

• High throughput and highly responsive– Does not require configuration to be reprocessed

• Multiple simultaneous asynchronous operations– Multi-channel (readers/writers)

• Duplex communication– Asynchronous, filtered events– Topology information (IGP, BGP, VPN, active/potential)

• Easy encoding of data– Parsable– Extensible

• Standardised

Page 16: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

16 of 23

IRS Work in Progress in the IETF• Nine Internet-Drafts for IRS• IETF-85 Atlanta, Georgia, 3-9 November 2012

– IRS Birds of a Feather (BoF)– Establish architectural view– Investigate use cases and requirements– Determine level of support to do real work

• Form an IETF Working Group– Need to select the key use cases– Agree a charter– Appoint chairs– Target date early 2013

• Rename to stop frightening the Cousins– I2RS

Page 17: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

17 of 23

IRS Working Group - Scope and Work

• Architecture• Requirements• Details of selected use cases• Information models for use cases• Analysis of existing tools and protocols• Re-Charter required before further work

– Work on protocols (extensions or new protocols)– Select or invent encoding language– Develop data models

• Join the discussions and contribute to the work– http://www.ietf.org/mailman/irs-discuss

Page 18: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

18 of 23

Integrating the Toolkit• Re-use of tools is efficient and timely

– Leverage existing developments• SDN problem space demands many functions

– Make use of all the tools in the toolkit– Build new tools to fill the gaps

• Application-Based Network Operation (ABNO)– An SDN Toolbox Architecture– Facilitate high-function network operation– Integrate all of the existing features– Create a framework for IRS

Page 19: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

19 of 23

Application-Based Network Operation

• SDN tools provide high-function, but low granularity• There is a need to coordinate SDN operation to provide

service-level features• Some components already exist or are proposed

– Orchestrators– OpenFlow Controllers– Routing protocols– Config daemons– IRS Client– Virtual Network Topology Manager

• Need a wider architecture to pull the tools together– A framework in which the SDN components operate

Page 20: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

20 of 23

ABNO Framework

IRS

Config/Netconf

OpenFlow/Forces

Routers

Network

PCE

TEDResource Manager

PCEPOpenFlow/Forces

IRS Agent

Virtual Network Topology Manager

BGP-LS

ABNO Controller

Network Policy

NMS/OSS Application/Service Requester

IRS/PCEPOff-

BoardRouting Protocol

Page 21: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

21 of 23

Toolbox Example : Virtual Topology• Cannot address a service request in IP/MPLS network• Create a connection in an under-lying optical network

– Make a virtual link to enable the service

PCE

Traffic demandService request

VNTM

TEDB

PCE

BGP-LS

PCEP

PCEP

RSVP-TE

GMPLS

IGP-TE

IRS

IRS

OpenFlow & ForCES

Virtual Link

PCEP

TEDB

IRSPolicy

IGP-TE

ABNO Controller

Page 22: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

22 of 23

Summary• Basic SDN function available today

– OpenFlow, ForCES• Existing tools for advanced SDN function

– PCE, BGP-LS, VNTM, Netconf• Advanced SDN function

– Programmable access to core router function– Available as the Interface to the Routing System (IRS)

• Integration of the toolkit– Chiefly and architectural task– Application-Based Network Operation (ABNO)

Page 23: Interface to the Routing System Adrian Farrel adrian@olddog.co.uk afarrel@juniper.net.

23 of 23

Questions?

[email protected]@juniper.net