Copyright © Arista 2017. All rights reserved.Copyright © Arista 2017. All rights reserved.1
OpenConfig
Shishio Tsuchiya
shtsuchi@arista.com
Copyright © Arista 2017. All rights reserved.
• What is OpenConfig?
• OpenConfig is an informal working group of network operators sharing the goal of moving our networks
toward a more dynamic, programmable infrastructure by adopting software-defined networking principles
such as declarative configuration and model-driven management and operations.
• Common data models
• Our initial focus in OpenConfig is on compiling a consistent set of vendor-neutral data models (written in
YANG) based on actual operational needs from use cases and requirements from multiple network
operators.
• Streaming telemetry
• Streaming telemetry is a new paradigm for network monitoring in which data is streamed from devices
continuously with efficient, incremental updates. Operators can subscribe to the specific data items they
need, using OpenConfig data models as the common interface.
OpenConfig
http://openconfig.net/
Copyright © Arista 2017. All rights reserved.
• Already model Defined for BGP configuration, operation /ACL and streaming telemetry
• https://github.com/openconfig/public/tree/master/release/models
• Transport and RPC(Remote Procedure Call) Protocol
• Data model, transport and RPC are independent , so can choice any protocol as you like
• NETCONF and REST CONF
• gNMI(gRPC Network Management Interface) which use common gRPC protocol between Telemetry and
Configuraiton.
OpenConfig
http://openconfig.net/
Copyright © Arista 2017. All rights reserved.
• Provide common data model which is independent of vendors,
generation for configuration and streaming telemetry
Target of Openconfig
- - -
.
.
" " " " "
" /
. -
- -
. .
.
.
:
OpenConfig data model
Telemetry collector
OpenConfig data motel
Copyright © Arista 2017. All rights reserved.
Demonstration openconfig
vEOS1#show running-config | section management api
management api http-commands
protocol http
no shutdown
!
management api openconfig
transport grpc default
vEOS1#show running-config | section router bgp
router bgp 65000
bgp listen range 10.100.1.0/24 peer-group DC peer-filter Leaf
neighbor DC peer-group
neighbor DC maximum-routes 12000
network 10.255.255.1/32
https://youtu.be/satbCzrMjk0
Copyright © Arista 2017. All rights reserved.
Demonstration openconfig
arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get
/network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global
{"openconfig-bgp-global:config": {"as": 65000, "router-id": "0.0.0.0"}, "openconfig-bgp-global:default-route-
distance": {"config": {"external-route-distance": 200, "internal-route-distance": 200}}, "openconfig-bgp-
global:graceful-restart": {"config": {"restart-time": 0, "stale-routes-time": "+Inf.0"}}, "openconfig-bgp-
common:route-selection-options": {"config": {"advertise-inactive-routes": false, "always-compare-med": false,
"external-compare-router-id": true}}}
arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get
/network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config
{"openconfig-bgp-global:as": 65000, "openconfig-bgp-global:router-id": "0.0.0.0"}
Copyright © Arista 2017. All rights reserved.
Demonstration openconfig
arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get
/network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config | python -m json.tool
{
"openconfig-bgp-global:as": 65000,
"openconfig-bgp-global:router-id": "0.0.0.0"
}
Copyright © Arista 2017. All rights reserved.
Demonstration openconfig
arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get
/network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config/router-id
"0.0.0.0"
arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -set
/network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config/router-
id='"10.255.255.1"'
arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get
/network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config | python -m json.tool
{
"openconfig-bgp-global:as": 65000,
"openconfig-bgp-global:router-id": "10.255.255.1"
}
Copyright © Arista 2017. All rights reserved.
Demonstration openconfig
vEOS1#show running-config | section router bgp
router bgp 65000
router-id 10.255.255.1
bgp listen range 10.100.1.0/24 peer-group DC peer-filter Leaf
neighbor DC peer-group
neighbor DC maximum-routes 12000
network 10.255.255.1/32
Copyright © Arista 2017. All rights reserved.
Demonstration telemetry
https://youtu.be/uc5EllVedU8
Copyright © Arista 2017. All rights reserved.
Demonstration telemetry
Copyright © Arista 2017. All rights reserved.
Demonstration telemetry
Copyright © Arista 2017. All rights reserved.Copyright © Arista 2016. All rights reserved.
www.arista.com
Thank You

Openconfig

  • 1.
    Copyright © Arista2017. All rights reserved.Copyright © Arista 2017. All rights reserved.1 OpenConfig Shishio Tsuchiya shtsuchi@arista.com
  • 2.
    Copyright © Arista2017. All rights reserved. • What is OpenConfig? • OpenConfig is an informal working group of network operators sharing the goal of moving our networks toward a more dynamic, programmable infrastructure by adopting software-defined networking principles such as declarative configuration and model-driven management and operations. • Common data models • Our initial focus in OpenConfig is on compiling a consistent set of vendor-neutral data models (written in YANG) based on actual operational needs from use cases and requirements from multiple network operators. • Streaming telemetry • Streaming telemetry is a new paradigm for network monitoring in which data is streamed from devices continuously with efficient, incremental updates. Operators can subscribe to the specific data items they need, using OpenConfig data models as the common interface. OpenConfig http://openconfig.net/
  • 3.
    Copyright © Arista2017. All rights reserved. • Already model Defined for BGP configuration, operation /ACL and streaming telemetry • https://github.com/openconfig/public/tree/master/release/models • Transport and RPC(Remote Procedure Call) Protocol • Data model, transport and RPC are independent , so can choice any protocol as you like • NETCONF and REST CONF • gNMI(gRPC Network Management Interface) which use common gRPC protocol between Telemetry and Configuraiton. OpenConfig http://openconfig.net/
  • 4.
    Copyright © Arista2017. All rights reserved. • Provide common data model which is independent of vendors, generation for configuration and streaming telemetry Target of Openconfig - - - . . " " " " " " / . - - - . . . . : OpenConfig data model Telemetry collector OpenConfig data motel
  • 5.
    Copyright © Arista2017. All rights reserved. Demonstration openconfig vEOS1#show running-config | section management api management api http-commands protocol http no shutdown ! management api openconfig transport grpc default vEOS1#show running-config | section router bgp router bgp 65000 bgp listen range 10.100.1.0/24 peer-group DC peer-filter Leaf neighbor DC peer-group neighbor DC maximum-routes 12000 network 10.255.255.1/32 https://youtu.be/satbCzrMjk0
  • 6.
    Copyright © Arista2017. All rights reserved. Demonstration openconfig arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get /network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global {"openconfig-bgp-global:config": {"as": 65000, "router-id": "0.0.0.0"}, "openconfig-bgp-global:default-route- distance": {"config": {"external-route-distance": 200, "internal-route-distance": 200}}, "openconfig-bgp- global:graceful-restart": {"config": {"restart-time": 0, "stale-routes-time": "+Inf.0"}}, "openconfig-bgp- common:route-selection-options": {"config": {"advertise-inactive-routes": false, "always-compare-med": false, "external-compare-router-id": true}}} arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get /network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config {"openconfig-bgp-global:as": 65000, "openconfig-bgp-global:router-id": "0.0.0.0"}
  • 7.
    Copyright © Arista2017. All rights reserved. Demonstration openconfig arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get /network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config | python -m json.tool { "openconfig-bgp-global:as": 65000, "openconfig-bgp-global:router-id": "0.0.0.0" }
  • 8.
    Copyright © Arista2017. All rights reserved. Demonstration openconfig arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get /network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config/router-id "0.0.0.0" arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -set /network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config/router- id='"10.255.255.1"' arista@ubuntu:~/OpenConfig$ ./grpcli_linux_386 -addr 10.10.1.1:6030 -username "admin" -password "admin" -get /network-instances/network-instance/default/protocols/protocol/"BGP BGP"/bgp/global/config | python -m json.tool { "openconfig-bgp-global:as": 65000, "openconfig-bgp-global:router-id": "10.255.255.1" }
  • 9.
    Copyright © Arista2017. All rights reserved. Demonstration openconfig vEOS1#show running-config | section router bgp router bgp 65000 router-id 10.255.255.1 bgp listen range 10.100.1.0/24 peer-group DC peer-filter Leaf neighbor DC peer-group neighbor DC maximum-routes 12000 network 10.255.255.1/32
  • 10.
    Copyright © Arista2017. All rights reserved. Demonstration telemetry https://youtu.be/uc5EllVedU8
  • 11.
    Copyright © Arista2017. All rights reserved. Demonstration telemetry
  • 12.
    Copyright © Arista2017. All rights reserved. Demonstration telemetry
  • 13.
    Copyright © Arista2017. All rights reserved.Copyright © Arista 2016. All rights reserved. www.arista.com Thank You