Streaming Network Analytics System

Slides:



Advertisements
Similar presentations
MPLS VPN.
Advertisements

Logically Centralized Control Class 2. Types of Networks ISP Networks – Entity only owns the switches – Throughput: 100GB-10TB – Heterogeneous devices:
Routing Basics.
1 Copyright  1999, Cisco Systems, Inc. Module10.ppt10/7/1999 8:27 AM BGP — Border Gateway Protocol Routing Protocol used between AS’s Currently Version.
CS540/TE630 Computer Network Architecture Spring 2009 Tu/Th 10:30am-Noon Sue Moon.
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
IPv4 and IPv6 Mobility Support Using MPLS and MP-BGP draft-berzin-malis-mpls-mobility-00 Oleg Berzin, Andy Malis {oleg.berzin,
Analysis of BGP Routing Tables
Bgpmon real-time collection and distribution of BGP updates Dave Matthews, Yan Chen, Dan Massey Department of Computer Science Colorado State University.
A Routing Control Platform for Managing IP Networks Jennifer Rexford Princeton University
Network Monitoring for Internet Traffic Engineering Jennifer Rexford AT&T Labs – Research Florham Park, NJ 07932
14 – Inter/Intra-AS Routing
Feb 12, 2008CS573: Network Protocols and Standards1 Border Gateway Protocol (BGP) Network Protocols and Standards Winter
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
MPLS L3 and L2 VPNs Virtual Private Network –Connect sites of a customer over a public infrastructure Requires: –Isolation of traffic Terminology –PE,
Class 3: SDN Stack Theophilus Benson. Outline Background – Routing in ISP – Cloud Computing SDN application stack revisited Evolution of SDN – The end.
SMUCSE 8344 MPLS Virtual Private Networks (VPNs).
Wireshark and TCP/IP Basics ACM SIG-Security Lance Pendergrass.
Scaling IXPs Scalable Infrastructure Workshop. Objectives  To explain scaling options within the IXP  To introduce the Internet Routing Registry at.
NetworkProtocols. Objectives Identify characteristics of TCP/IP, IPX/SPX, NetBIOS, and AppleTalk Understand position of network protocols in OSI Model.
Real-Time BGP Data Access 1 Mikhail Strizhov Colorado State University.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Connecting to the Network Networking for Home and Small Businesses.
Networks – Network Architecture Network architecture is specification of design principles (including data formats and procedures) for creating a network.
Using Measurement Data to Construct a Network-Wide View Jennifer Rexford AT&T Labs—Research Florham Park, NJ
NetFlow: Digging Flows Out of the Traffic Evandro de Souza ESnet ESnet Site Coordinating Committee Meeting Columbus/OH – July/2004.
1.4 Open source implement. Open source implement Open vs. Closed Software Architecture in Linux Systems Linux Kernel Clients and Daemon Servers Interface.
APNIC Internet Routing Registry An introduction to the IRR TWNIC Meeting, 3 December 2003 Nurani Nimpuno, APNIC.
More on Internet Routing A large portion of this lecture material comes from BGP tutorial given by Philip Smith from Cisco (ftp://ftp- eng.cisco.com/pfs/seminars/APRICOT2004.
MPLS Label Last Update Copyright 2011 Kenneth M. Chipps Ph.D. 1.
Evolving Toward a Self-Managing Network Jennifer Rexford Princeton University
1 | © 2015 Infinera Open SDN in Metro P-OTS Networks Sten Nordell CTO Metro Business Group
Evolving Toward a Self-Managing Network Jennifer Rexford Princeton University
Transport Layer3-1 Network Layer Every man dies. Not every man really lives.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—6-1 Scaling Service Provider Networks Scaling IGP and BGP in Service Provider Networks.
+ Routing Concepts 1 st semester Objectives  Describe the primary functions and features of a router.  Explain how routers use information.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—7-1 Optimizing BGP Scalability Improving BGP Convergence.
Text BGP Basics. Document Name CONFIDENTIAL Border Gateway Protocol (BGP) Introduction to BGP BGP Neighbor Establishment Process BGP Message Types BGP.
Border Gateway Protocol. Intra-AS v.s. Inter-AS Intra-AS Inter-AS.
Segment Routing: An Architecture build with SDN in mind and addressing the evolving network requirements Brian Meaney Cisco SP Consulting Team.
Atrium Router Project Proposal Subhas Mondal, Manoj Nair, Subhash Singh.
2016 Global Seminar 按一下以編輯母片標題樣式 Virtualization apps simplify your IoT development Alfred Li.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public 1 OSI network layer CCNA Exploration Semester 1 – Chapter 5.
MPLS Virtual Private Networks (VPNs)
SDN controllers App Network elements has two components: OpenFlow client, forwarding hardware with flow tables. The SDN controller must implement the network.
CompTIA Security+ Study Guide (SY0-401)
Multi Node Label Routing – A layer 2.5 routing protocol
Instructor Materials Chapter 1: LAN Design
Developing IoT endpoints with mbed Client
Poor Visibility I want to see more deeply into the router
Instructor Materials Chapter 5 Providing Network Services
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
Physics validation database
BGP Route Server Proof of Concept
Parcel Tracking Solution Parcel Tracking What to look for Architecture
Border Gateway Protocol
Chapter 4: Routing Concepts
BGP supplement Abhigyan Sharma.
Chapter 6: Network Layer
CompTIA Security+ Study Guide (SY0-401)
TASK 4 Guideline.
Lixin Gao ECE Dept. UMASS, Amherst
Topic 5: Communication and the Internet
An introduction to the organization of the Internet Lab
Chapter 8: Monitoring the Network
Cloud Web Filtering Platform
The real-time Internet routing observatory
Chapter 2 Network Models
An introduction to the organization of the Internet Lab
Cloud-Enabling Technology
Chapter 8 – Data switching and routing
Presentation transcript:

Streaming Network Analytics System Cisco Knowledge Network Presentation Serpil Bayraktar Distinguished Engineer 2/28/2018

Streaming Network Analytics System SNAS An open source project under Linux Foundation Networking Umbrella A framework to collect, track and access tens of millions of routing objects (routers, peers, prefixes) in real time Allows you to interact, visualize, and analyze routing data in a simple way Streaming Network Analytics System SNAS Short and relevant: Stay focused on what your audience cares about. Think about what you want them to know, feel and do. Then, say what you need to say and no more.  Bold and human: Be confident in your ideas and in the words you use to express them. Use clear, natural language to connect with your audience and make your message stick. Show what’s possible and make it real: We call this Dreaming and Doing. When we do it right it's powerful, inspiring, convincing and persuasive. To learn more, download the brand language guidelines: https://cisco.jiveon.com/docs/DOC-660269

Linux Foundation Open Source Networking Stack Svcs Application Layer / App Server Product, Services & Workloads Standards Management & Control Network Data Analytics Orchestration, Management, Policy Cloud & Virtual Management Network Control System Integration & Test Automation Infrastructure Operating Systems IO Abstraction & Data Path Disaggregated Hardware CI/CD Automation of Network + Infrastructure + Cloud + Apps + IOT Linux Foundation Hosted Outside Linux Foundation

Background

Network Analytics Data Types Types of data used for analytics: Device stats/logs/error counters/queue statistics etc. SNMP/Pull Model Telemetry/Push Model IP traffic information and statistics Netflow/sFlow/IPFIX Routing/control/topology data* IGP/Internal network topology BGP/Variety of reachability information (services) Network Analytics Data Types *SNAS

Device vs Network View Device View: Data is collected from each device after it is processed by the device Network View*: Data is collected from each device before it is processed (as received from the network) Device vs Network View *SNAS

Example: Device vs Network View Device View R3 Collector R1/AS1 = 10/8 R2/AS2 = 10/8 10/8 AS1 eBGP eBGP BGP Example: Device vs Network View Network View* R3 R1/AS1 = 10/8 R2/AS2 = 10/8 10/8 AS1 10/8 AS2 eBGP Collector eBGP BMP *SNAS

Stateful Nature of Routing Protocols Stateful = Processing data based on the state information of the client Routing protocols are session based Routers maintain the state and parameters of each session An initial exchange of full routing table is followed by individual updates as needed Routing data can be viewed as a “stream” between two devices which agreed on some session parameters and only during the life of the session* This is very different than “stateless” or snapshot data where data is not associated with session information. Stateful Nature of Routing Protocols *SNAS

SNAS

Collect, store, maintain, track and expose network centric routing data for analytics applications Make routing data application developer friendly Produce lightweight packages that can run on a small server Project Objectives

Collect Network Wide Routing Data Securely and Efficiently Egress Peers A Egress Peers B Edge1 Edge2 Collector RR Your Network We want Edge2 to stream all unfiltered routing packets as received from Egress Peers B Edge4 Edge3 Egress Peers C Egress Peers D

“BGP Monitoring Protocol” BMP “BGP Monitoring Protocol” Data Collection

What is BMP BGP Monitoring Protocol (BMP) encapsulates BGP messages from one or more BGP peers into a single TCP stream to one or more collectors Efficient, [near] real-time, low memory/CPU on router, little to no service impact with peering Simplified configuration (one-time setup) with granular controls per peer All address families supported https://tools.ietf.org/html/rfc7854 BMP Router XE/XR/JunOS BGP Peers BMP Collector Single stream eBGP/iBGP TCP BMP BGP IP BMP router is existing router, process runs on existing router. This is different than BGP peering… Pre-RIB, peer stat reports, open messages for the peer, peer down notifications,

Access to Multiple Monitoring Points via BMP Input filters/ Import policy Import from other protocols Best path selection process Output filters/ Export policy BGP Peer1 BGP Peer3 Prefix: 10/8 Med: 8 AS Path: 3356 28038 1 Prefix: 10/8 AS Path: 555 1239 28038 2 4 3 Prefix: 10/8 Med: 10 AS Path: 1239 28038 Unmodified Data Peer1: Prefix: 10/8 Med: 8 AS Path: 3356 28038 Peer2: AS Path: 1239 28038 After Filters Peer1: Prefix: 10/8 Med: 8 LocalPref: 99 AS Path: 3356 28038 Peer2: Med: 8 LocalPref: 100 AS Path: 1239 28038 After Best Path selection Prefix: 10/8 Med: 8 LocalPref: 99 AS Path: 3356 28038 After Filters Peer2: Prefix: 10/8 AS Path: 555 1239 28038 BGP Peer2

BMP Availability

SNAS Architecture Applications Collector MySQL DB Parsed, Conditioned Data BMP Enabled Router BGP Peers Monitored TCP Stream Kafka Message Bus MySQL Consumer Flat File SNAS UI Grafana Applications Other Apps SNAS Architecture

Collector Parses BGP data Conditions the data Produces the parsed (and raw) BGP data to Kafka using Kafka’s topic structure Data produced in tab delimited format Highly scalable, very small footprint IPv4, IPv6, Labeled IPv4/v6, BGP-LS (Segment Routing), L3VPN address families supported

Parsing BGP data requires deep knowledge of network packet format based on standards (RFCs) Anyone who wants to do analytics using BGP data has to figure out how to parse it SNAS does the parsing for you A Word About Parsing

Example Parsed Data (REST API)

Example Parsed Data (Kafka API) Tab-Delimited Converted to Json

Tracking Stateful Routing Data at Internet Speeds and Scales Maintaining state for a very large number of peers and prefixes: 100s – 1000s of peers A typical Internet peer carrying 700K+ IPv4 prefixes Multiple monitoring points Processing very high number of packets with minimum delay: Updates/sec during initialization (routing table dump) generates tens of thousands of updates/sec Tracking Stateful Routing Data at Internet Speeds and Scales

Getting Started

Start Here SNAS Webpage: https://www.snas.io SNAS Repositories: https://github.com/OpenBMP https://github.com/SNAS

Installation http://www.snas.io/gettingstarte d/getting_started/ Step 1: Install AIO Container Step 2: Install UI Container Step 3: Start Feeding Data Configure a router to send BMP data Use public BGP data, Install MRT2BMP Application or Installation

All-In-One (aio) Container Openbmpd - Latest collector (listening port is TCP 5000) MariaDB 10.2 – MySQL server (listening port TCP 3306) Apache Kafka 0.10.1 - High performing message bus (listening ports are TCP 2181 and 9092) Tomcat/DB_REST - Latest Rest interface into MySQL/MariaDB (listening port TCP 8001) SNAS MySQL Consumer - Latest Consumer that puts all data into MySQL

UI Container nginx - Web Server ui - SNAS UI

Router Configuration http://www.snas.io/docs/ Configuration: XR, XE, JUNOS Router Configuration

XR Configuration

Demo Servers http://www.snas.io/demo/ SNAS UI Grafana http://demo-rv.snas.io:8000/ Grafana http://demo-rv.snas.io:3000/ Demo Servers