Compiling Path Queries

Size: px
Start display at page:

Download "Compiling Path Queries"

Transcription

1 Compiling Path Queries Princeton University Srinivas Narayana Mina Tahmasbi Jen Rexford David Walker

2 Management = Measure + Control Network Controller Measure Control Software-Defined Networking (SDN) 2

3 Enabling Easier Measurement Matters Networks are asked to do a lot! Partition-aggregate applications Growth in traffic demands Stringent performance requirements Avoid expensive outages Difficult to know where things go wrong! Humans are slow in troubleshooting Human time is expensive Can we build programmatic tools to help? 3

4 Example: Where s the Packet Loss? Suspect: Faulty network device(s) along the way. A B 1000 pkts 850 pkts L 4

5 Example: Where s the Packet Loss? Idea: Follow the path of packets through the network. ip.src==a & ip.dst==b Packet rewrite ip.src==a & ip.dst==b A B 1000 pkts 850 pkts L Switch ACL counters ip.src==a & ip.dst==b à count ip.dst==b à fwd port 2 NetFlow Sampling Inaccuracy 5

6 Example: Where s the Packet Loss? Complex & Inaccurate Join with multiple datasets: traffic, forwarding, topology High Overhead of collecting (unnecessary) data to answer a given question 6

7 Example: Where s the Packet Loss? Complex & Inaccurate Join with multiple datasets: traffic, forwarding, topology High Overhead of collecting (unnecessary) data to answer a given question 7

8 Pattern: Combining Traffic & Forwarding Traffic matrix Uneven load balancing DDoS source identification Port-level traffic matrix Congested link diagnosis Slice isolation Loop detection Middlebox traversal order Incorrect NAT rewrite Firewall evasion... Resource management Policy enforcement Problem diagnosis 8

9 Our Approach Path Query System Declarative Query Specification Independent of Forwarding Independent of Other Measurements Independent of Hardware Details Path Query Language Query-Driven Measurement Accurate Answers Pay Exactly For What You Query Commodity ( Match-Action ) Hardware Query Run-Time System 9

10 Our Approach 1. Path Query Language Query Expressions Forwarding Statistics 2. Query Run-Time System SDN controller Payloads Statistics 10

11 How to design general measurement primitives that are efficiently implemented in the network? 11

12 Measurement Use Cases Traffic matrix Uneven load balancing DDoS source identification Port-level traffic matrix Congested link diagnosis Slice isolation Loop detection Middlebox traversal order Incorrect NAT rewrite Firewall evasion... What are the common patterns? 12

13 (I) Path Query Language Test predicates on packets at single locations: srcip= port=3 & dstip= Combine tests with regular expression operators! sw=1 ^ sw=4 srcip=a ^ true* ^ sw=3 ingress() ^ ~(sw=firewall)* ^ egress() ingress egress ingress egress ingress egress 13

14 (I) Path Query Language Aggregate results with SQL-like grouping operators in_group(ingress(), [sw]) ^ true* ^ out_group(egress(), [sw]) ingress() switch #pkts S S2 500 S (ingress(), egress()) switch pairs #pkts (S1, S2) 800 (S1, S5) 200 (S2, S5) Return packets, counters, or samples (NetFlow/sFlow)

15 Language: More examples in paper... 15

16 How do we implement path queries efficiently? In general, switches don t know prior or future packet paths. 16

17 How to observe packet paths? Analyze packet paths in the data plane itself Write path information into packets! [{sw: S1 port: 1 srcmac:... srcip:......}] [{sw: S1,...}, {sw: S2 port: 3 srcmac:......}] [{sw: S1,...}, {sw: S2,...}, {sw: S3 port: 2...}] Pros: accurate trajectory information J Cons: too much per-packet information L 17

18 Reducing Path Information on Packets Observation 1: Queries already tell us what s needed! Only record path state needed by queries Observation 2: Queries are regular expressions Regular expressions è Finite automaton (DFA) Distinguish only paths corresponding to DFA states 18

19 Reducing Path Information on Packets Record only DFA state on packets (1-2 bytes) Use existing tag fields! (e.g., VLAN) 19

20 (II) Query Run-Time System (sw=1 & srcip=a) ^ (sw=4 & dstip=b) Q0 sw=1 & srcip=a Q1 sw=4 & dstip=b Q2 Switch 1: state=q0 & srcip=a è state=q1 Switch 4: state=q1 & dstip=b è state=q2 AND count!

21 (II) Query Run-Time System Each packet carries its own DFA state Query DFA transitions distributed to switches as match-action rules! Packet satisfies query iff it reaches accepting states Pay for what you query 21

22 (II) Run-Time: Juicy details in paper Packet forwarding shouldn't be affected by DFA rules No unnecessary duplicate traffic should be created Handle query overlap Predicates can also overlap srcip=a ^ dstip=b sw=1 ^ true* ^ sw=4 Handle groupby aggregation Capture upstream or downstream of queried path Test predicates before or after forwarding on switch Optimizations: to make the system practical 22

23 Evaluation Prototype on Pyretic + NetKAT + OpenVSwitch Publicly available: Queries: traffic matrix, DDoS detection, per-hop packet loss, firewall evasion, slice isolation, congested link Results on Stanford backbone (all queries together): Compile time: 5 seconds (from > 2 hours) # Rules: ~ 650 # State bytes: 2 bytes 23

24 Evaluation: Scaling Interactive problem solving (~ 15s) Miller, Response time in man-computer conversational transactions 24

25 Summary We need good abstractions to measure networks Abstractions must be efficiently implementable We implemented declarative queries on packet paths: Packet state akin to a deterministic automaton Path queries can simplify network management! Queries? J

26 26

27 (I) Language: Related Work Primitive Description Prior Work Our Extensions Atomic Predicates Packet Trajectories Result Aggregation Capture Location Capture Result Boolean tests on located packets Regular expressions on atomic predicates Group results by location or header fields Get packets before or after queried path Actions on packets satisfying queries [Foster11] [Monsanto13] [Tarjan79], [Handigol14] SQL groupby, [Foster11] -- N/A [Monsanto13] Switch input and output differentiation Additional regex operators (&, ~) Group anywhere along a path Sampling (sflow) 27

28 (I) Capture locations Capture upstream, downstream or midstream Upstream Midstream Downstream Packet flow on query path 28

29 (II) Run-Time: Data Plane Rule Layout In table >> Forwarding >> Out table state=q_i & pred: state ß Q_j AND in_capture forwarding state=q_i & pred: state ß Q_j AND out_capture 29

30 (II) Query Compilation ( DFA- >> Forwarding ) + Transitioning DFA- Accepting All acting on the same data plane packets! Use policy composition operators and compiler Composing software-defined networks. Monsanto et al.,

31 (II) Query Compilation ( DFA- >> Forwarding ) + Transitioning DFA- Accepting state=q0 & switch=s1 & srcip= è stateß Q1 state=q1 & switch=s2 & dstip= è stateß Q2 >> dstip= è fwd(1) dstip= è fwd(2) dstip= è fwd(3)... state=q0 & switch=s1 & srcip= & dstip= è stateß Q1, fwd(2) Composing software-defined networks. Monsanto et al.,

32 (II) Query Compilation (DFA-Ingress-Transitioning >> Forwarding >> DFA-Egress-Transitioning) + (DFA-Ingress-Accepting) + (DFA-Ingress-Transitioning >> Forwarding >> DFA-Egress-Accepting) 32

33 (II) Detecting Query Overlaps Predicate overlaps: q1: srcip= ;; q2: dstip= Automaton can only have one state! Query overlaps: q1: sw=1 ^ sw=2 q2: srcip= ^ dstip= q1: in_atom(srcip= ) q2: out_atom(srcip= ) Automaton states must distinguish all possibilities! 33

34 (II) Detecting Query Overlaps Predicate overlaps: Generate orthogonal predicates! q1: srcip= ;; q2: dstip= Generated predicates: srcip= & dstip= srcip= & ~dstip= ~srcip= & dstip=

35 (II) Detecting Query Overlaps Query Overlaps: Convert in_ and out_ atoms to in_out_atoms: in_atom(srcip= ) è in_out_atom( srcip= , true) out_atom(dstip= ) è in_out_atom(true, dstip= ) 35

36 (II) Detecting Query Overlaps Query Overlaps: Build one DFA for many expressions together in_atom(srcip=h1 & sw=1) ^ out_atom(sw=2 & dstip=h2) in_atom(sw=1) ^ in_out_atom(true, sw=2) Q0 a d Q1 [ceg] Q2 [ceg] [adf] [adf] Q3 c Q5 e Q8 [ce] Q6 Q7 Q4 36

37 Optimizations: Summary Optimization # Rules? Time? # States? Separate query & forwarding actions into separate stages Optimize conditional policy compilation Integrate tagging and capture policies Pre-partition predicates by flow space Cache predicate overlap decisions Decompose query predicates into multiple stages Detect predicate overlaps with Forwarding Decision Diagrams 37

38 Benefit of Optimizations (Stanford) Cumulative Optimization Time (s) # Rules # State Bits None > 7900 DNF DNF Separate query & forwarding actions into separate stages Optimize conditional policy compilation Integrate tagging and capture policies Pre-partition predicates by flow space Cache predicate overlap decisions Decompose query predicates into multiple stages > 4920 DNF DNF > 4080 DNF DNF

39 Demo: Where s the Packet Loss? A B 1000 pkts 850 pkts L 39

40 Demo: Where s the Packet Loss? 40

41 Downstream Query Compilation (3/3) ( DFA- >> Forwarding ) + Transitioning DFA- Accepting All acting on the same data plane packets! Use policy composition operators and compiler Composing software-defined networks. Monsanto et al.,

42 Downstream Query Compilation (3/3) ( DFA- >> Forwarding ) + Transitioning DFA- Accepting state=q0 & switch=s1 & srcip= è stateß Q1 state=q1 & switch=s2 & dstip= è stateß Q2 >> dstip= è fwd(1) dstip= è fwd(2) dstip= è fwd(3)... state=q0 & switch=s1 & srcip= & dstip= è stateß Q1, fwd(2) Composing software-defined networks. Monsanto et al.,

43 Downstream Query Compilation (3/3) (DFA-Ingress-Transitioning >> Forwarding >> DFA-Egress-Transitioning) + (DFA-Ingress-Accepting) + (DFA-Ingress-Transitioning >> Forwarding >> DFA-Egress-Accepting) 43

44 II. Rule Count Switch TCAM capacity: 2K-4K rules 44

45 III. Packet State Bits MPLS VLAN 45

Compiling Path Queries in Software-Defined Networks

Compiling Path Queries in Software-Defined Networks Compiling Path Queries in Software-Defined Networks Srinivas Narayana, Jennifer Rexford and David Walker Princeton University {narayana, jrex, dpw}@cs.princeton.edu ABSTRACT Monitoring the flow of traffic

More information

Composing Software-Defined Networks

Composing Software-Defined Networks Composing Software-Defined Networks Chris Monsanto*, Joshua Reich* Nate Foster^, Jen Rexford*, David Walker* www.frenetic- lang.org/pyretic Princeton* Cornell^ Software Defined Networks (SDN) Enable network

More information

Professor Yashar Ganjali Department of Computer Science University of Toronto

Professor Yashar Ganjali Department of Computer Science University of Toronto Professor Yashar Ganjali Department of Computer Science University of Toronto yganjali@cs.toronto.edu http://www.cs.toronto.edu/~yganjali Some slides courtesy of J. Rexford (Princeton), N. Foster (Cornell)

More information

States on a (Data) Plane. Jennifer Rexford

States on a (Data) Plane. Jennifer Rexford States on a (Data) Plane Jennifer Rexford Traditional data planes are stateless 1 Software Defined Networks (SDN) Program your network from a logically central point! 2 OpenFlow Rule Tables Prio match

More information

Languages for Software-Defined Networks

Languages for Software-Defined Networks Languages for Software-Defined Networks Nate Foster, Michael J. Freedman, Arjun Guha, Rob Harrison, Naga Praveen Katta, Christopher Monsanto, Joshua Reich, Mark Reitblatt, Jennifer Rexford, Cole Schlesinger,

More information

Languages for SDN (Frenetic)

Languages for SDN (Frenetic) Languages for SDN (Frenetic) Software Defined Networking: The Data Centre Perspective Seminar Informatikdienste A. Pantelopoulos 20.05.2016 1 SDN is useful Direct network control. Enables new applications,

More information

Network Programming Languages. Nate Foster

Network Programming Languages. Nate Foster Network Programming Languages Nate Foster We are at the start of a revolution! Network architectures are being opened up giving programmers the freedom to tailor their behavior to suit applications!

More information

Bringing SDN to the Internet, one exchange point at the time

Bringing SDN to the Internet, one exchange point at the time Bringing SDN to the Internet, one exchange point at the time Joint work with: Arpit Gupta, Muhammad Shahbaz, Sean P. Donovan, Russ Clark, Brandon Schlinker, E. Katz-Bassett, Nick Feamster, Jennifer Rexford

More information

HY436: Modular Network Programming with Pyretic

HY436: Modular Network Programming with Pyretic HY436: Modular Network Programming with Pyretic Xenofontas Dimitropoulos 27/10/2014 Credits: Slides modified from Joshua Reich s (Princeton) NSDI 13 talk on Composing Software Defined Networks Running

More information

SNAP: Stateful Network-Wide Abstractions for Packet Processing

SNAP: Stateful Network-Wide Abstractions for Packet Processing SNAP: Stateful Network-Wide Abstractions for Packet Processing Mina Tahmasbi Arashloo1, Yaron Koral1, Michael Greenberg2, Jennifer Rexford1, and David Walker1 1 Princeton University, 2 Pomona College Early

More information

Building Efficient and Reliable Software-Defined Networks. Naga Katta

Building Efficient and Reliable Software-Defined Networks. Naga Katta FPO Talk Building Efficient and Reliable Software-Defined Networks Naga Katta Jennifer Rexford (Advisor) Readers: Mike Freedman, David Walker Examiners: Nick Feamster, Aarti Gupta 1 Traditional Networking

More information

SDX: A Software Defined Internet Exchange

SDX: A Software Defined Internet Exchange SDX: A Software Defined Internet Exchange @SIGCOMM 2014 Laurent Vanbever Princeton University FGRE Workshop (Ghent, iminds) July, 8 2014 The Internet is a network of networks, referred to as Autonomous

More information

Programmable Software Switches. Lecture 11, Computer Networks (198:552)

Programmable Software Switches. Lecture 11, Computer Networks (198:552) Programmable Software Switches Lecture 11, Computer Networks (198:552) Software-Defined Network (SDN) Centralized control plane Data plane Data plane Data plane Data plane Why software switching? Early

More information

Temporal NetKAT. Ryan Beckett Michael Greenberg*, David Walker. Pomona College* Princeton University

Temporal NetKAT. Ryan Beckett Michael Greenberg*, David Walker. Pomona College* Princeton University Temporal NetKAT Ryan Beckett Michael Greenberg*, David Walker Princeton University Pomona College* Software-Defined Networking Controller Software-Defined Networking Controller Match Action dst=1.2.3.4

More information

Practical Network-wide Packet Behavior Identification by AP Classifier

Practical Network-wide Packet Behavior Identification by AP Classifier Practical Network-wide Packet Behavior Identification by AP Classifier NETWORK-WIDE PACKET BEHAVIOR IDENTIFICATION o An control plane application identifying forwarding behaviors of packets in a flow:

More information

Scalable Enterprise Networks with Inexpensive Switches

Scalable Enterprise Networks with Inexpensive Switches Scalable Enterprise Networks with Inexpensive Switches Minlan Yu minlanyu@cs.princeton.edu Princeton University Joint work with Alex Fabrikant, Mike Freedman, Jennifer Rexford and Jia Wang 1 Enterprises

More information

SDN SEMINAR 2017 ARCHITECTING A CONTROL PLANE

SDN SEMINAR 2017 ARCHITECTING A CONTROL PLANE SDN SEMINAR 2017 ARCHITECTING A CONTROL PLANE NETWORKS ` 2 COMPUTER NETWORKS 3 COMPUTER NETWORKS EVOLUTION Applications evolve become heterogeneous increase in traffic volume change dynamically traffic

More information

Formal Verification of Computer Switch Networks

Formal Verification of Computer Switch Networks Formal Verification of Computer Switch Networks Sharad Malik; Department of Electrical Engineering; Princeton Univeristy (with Shuyuan Zhang (Princeton), Rick McGeer (HP Labs)) 1 SDN: So what changes for

More information

Automatic Test Packet Generation

Automatic Test Packet Generation Automatic Test Packet Generation Hongyi Zeng, Peyman Kazemian, Nick McKeown University, Stanford, CA, USA George Varghese UCSD, La Jolla Microsoft Research, Mountain View, CA, USA https://github.com/eastzone/atpg/wiki

More information

Srinivas Narayana: Statement of Research Interests

Srinivas Narayana: Statement of Research Interests Srinivas Narayana: Statement of Research Interests For modern computer networks to support novel high-performance applications, the underlying infrastructure (ranging from data centers to carrier backbones

More information

Language-Directed Hardware Design for Network Performance Monitoring

Language-Directed Hardware Design for Network Performance Monitoring Language-Directed Hardware Design for Network Performance Monitoring Srinivas Narayana, Anirudh Sivaraman, Vikram Nathan, Prateesh Goyal, Venkat Arun, Mohammad Alizadeh, Vimal Jeyakumar, and Changhoon

More information

IQ for DNA. Interactive Query for Dynamic Network Analytics. Haoyu Song. HUAWEI TECHNOLOGIES Co., Ltd.

IQ for DNA. Interactive Query for Dynamic Network Analytics. Haoyu Song.   HUAWEI TECHNOLOGIES Co., Ltd. IQ for DNA Interactive Query for Dynamic Network Analytics Haoyu Song www.huawei.com Motivation Service Provider s pain point Lack of real-time and full visibility of networks, so the network monitoring

More information

Software Defined Networking

Software Defined Networking Software Defined Networking Daniel Zappala CS 460 Computer Networking Brigham Young University Proliferation of Middleboxes 2/16 a router that manipulatees traffic rather than just forwarding it NAT rewrite

More information

Securizarea Calculatoarelor și a Rețelelor 32. Tehnologia MPLS VPN

Securizarea Calculatoarelor și a Rețelelor 32. Tehnologia MPLS VPN Platformă de e-learning și curriculă e-content pentru învățământul superior tehnic Securizarea Calculatoarelor și a Rețelelor 32. Tehnologia MPLS VPN MPLS VPN 5-ian-2010 What this lecture is about: IP

More information

HEADER SPACE ANALYSIS

HEADER SPACE ANALYSIS HEADER SPACE ANALYSIS Peyman Kazemian (Stanford University) George Varghese (UCSD, Yahoo Labs) Nick McKeown (Stanford University) 1 July 17 th, 2012 Joint Techs 2012 TODAY A typical network is a complex

More information

SNAP: Stateful Network-Wide Abstractions for Packet Processing. Collaboration of Princeton University & Pomona College

SNAP: Stateful Network-Wide Abstractions for Packet Processing. Collaboration of Princeton University & Pomona College SNAP: Stateful Network-Wide Abstractions for Packet Processing Collaboration of Princeton University & Pomona College Brief Overview: Motivation Introduction to SNAP/Example(s) of SNAP SNAP Syntax Overview

More information

Slicing a Network. Software-Defined Network (SDN) FlowVisor. Advanced! Computer Networks. Centralized Network Control (NC)

Slicing a Network. Software-Defined Network (SDN) FlowVisor. Advanced! Computer Networks. Centralized Network Control (NC) Slicing a Network Advanced! Computer Networks Sherwood, R., et al., Can the Production Network Be the Testbed? Proc. of the 9 th USENIX Symposium on OSDI, 2010 Reference: [C+07] Cascado et al., Ethane:

More information

It's the last COS 326 class!

It's the last COS 326 class! It's the last COS 326 class! David Walker COS 326 Princeton University COS 326 Final Exam Logistics: Friday Jan 26 1:30pm McCosh 46 Note: If you are doing study abroad, make sure that you email Chris Moretti

More information

Application of SDN: Load Balancing & Traffic Engineering

Application of SDN: Load Balancing & Traffic Engineering Application of SDN: Load Balancing & Traffic Engineering Outline 1 OpenFlow-Based Server Load Balancing Gone Wild Introduction OpenFlow Solution Partitioning the Client Traffic Transitioning With Connection

More information

Multiprotocol Label Switching (MPLS)

Multiprotocol Label Switching (MPLS) 36 CHAPTER Prerequisites for MPLS, page 36-1 Restrictions for MPLS, page 36-1 Information About MPLS, page 36-2 Default Settings for MPLS, page 36-7 How to Configure MPLS Features, page 36-7 Configuration

More information

Computer Networks. Sándor Laki ELTE-Ericsson Communication Networks Laboratory

Computer Networks. Sándor Laki ELTE-Ericsson Communication Networks Laboratory Computer Networks Sándor Laki ELTE-Ericsson Communication Networks Laboratory ELTE FI Department Of Information Systems lakis@elte.hu http://lakis.web.elte.hu Based on the slides of Laurent Vanbever. Further

More information

Configuring Tap Aggregation and MPLS Stripping

Configuring Tap Aggregation and MPLS Stripping This chapter contains the following sections: Information About Tap Aggregation, page 1 Information About MPLS Stripping, page 3 Configuring Tap Aggregation, page 4 Verifying the Tap Aggregation Configuration,

More information

Frenetic: Functional Reactive Programming for Networks

Frenetic: Functional Reactive Programming for Networks Frenetic: Functional Reactive Programming for Networks Nate Foster (Cornell) Mike Freedman (Princeton) Rob Harrison (Princeton) Matthew Meola (Princeton) Jennifer Rexford (Princeton) David Walker (Princeton)

More information

Network Verification: Reflections from Electronic Design Automation (EDA)

Network Verification: Reflections from Electronic Design Automation (EDA) Network Verification: Reflections from Electronic Design Automation (EDA) Sharad Malik Princeton University MSR Faculty Summit: 7/8/2015 $4 Billion EDA industry EDA Consortium $350 Billion Semiconductor

More information

CSC 4900 Computer Networks: Network Layer

CSC 4900 Computer Networks: Network Layer CSC 4900 Computer Networks: Network Layer Professor Henry Carter Fall 2017 Chapter 4: Network Layer 4. 1 Introduction 4.2 What s inside a router 4.3 IP: Internet Protocol Datagram format 4.4 Generalized

More information

Software Defined Networking

Software Defined Networking Software Defined Networking Jennifer Rexford COS 461: Computer Networks Lectures: MW 10-10:50am in Architecture N101 http://www.cs.princeton.edu/courses/archive/spr12/cos461/ The Internet: A Remarkable

More information

NetKAT: Semantic Foundations for Networks. Nate Foster Cornell University

NetKAT: Semantic Foundations for Networks. Nate Foster Cornell University NetKAT: Semantic Foundations for Networks Nate Foster Cornell University Team NetKAT Carolyn Anderson Nate Foster Arjun Guha Jean-Baptiste Jeannin Dexter Kozen Cole Schlesinger David Walker Carbon Software-Defined

More information

MPLS VPN. 5 ian 2010

MPLS VPN. 5 ian 2010 MPLS VPN 5 ian 2010 What this lecture is about: IP CEF MPLS architecture What is MPLS? MPLS labels Packet forwarding in MPLS MPLS VPNs 3 IP CEF & MPLS Overview How does a router forward packets? Process

More information

OpenFlow: What s it Good for?

OpenFlow: What s it Good for? OpenFlow: What s it Good for? Apricot 2016 Pete Moyer pmoyer@brocade.com Principal Solutions Architect Agenda SDN & OpenFlow Refresher How we got here SDN/OF Deployment Examples Other practical use cases

More information

CS 4226: Internet Architecture

CS 4226: Internet Architecture Software Defined Networking Richard T. B. Ma School of Computing National University of Singapore Material from: Scott Shenker (UC Berkeley), Nick McKeown (Stanford), Jennifer Rexford (Princeton) CS 4226:

More information

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013 CS 5114 Network Programming Languages Data Plane http://www.flickr.com/photos/rofi/2097239111/ Nate Foster Cornell University Spring 2013 Based on lecture notes by Jennifer Rexford and Michael Freedman

More information

I Know What Your Packet Did Last Hop: Using Packet Histories to Troubleshoot Networks.

I Know What Your Packet Did Last Hop: Using Packet Histories to Troubleshoot Networks. I Know What Your Packet Did Last Hop: Using Packet Histories to Troubleshoot Networks. Paper by: Nikhil Handigol, Brandon Heller, Vimalkumar Jeyakumar, David Mazières, and Nick McKeown, Stanford University

More information

MPLS, THE BASICS CSE 6067, UIU. Multiprotocol Label Switching

MPLS, THE BASICS CSE 6067, UIU. Multiprotocol Label Switching MPLS, THE BASICS CSE 6067, UIU Multiprotocol Label Switching Basic Concepts of MPLS 2 Contents Drawbacks of Traditional IP Forwarding Basic MPLS Concepts MPLS versus IP over ATM Traffic Engineering with

More information

Configuring TAP Aggregation and MPLS Stripping

Configuring TAP Aggregation and MPLS Stripping This chapter describes how to configure TAP aggregation and MPLS stripping on Cisco NX-OS devices. This chapter contains the following sections: About TAP Aggregation, page 1 About MPLS Stripping, page

More information

CellSDN: Software-Defined Cellular Core networks

CellSDN: Software-Defined Cellular Core networks CellSDN: Software-Defined Cellular Core networks Xin Jin Princeton University Joint work with Li Erran Li, Laurent Vanbever, and Jennifer Rexford Cellular Core Network Architecture Base Station User Equipment

More information

Infinite CacheFlow : A Caching Solution for Switches in Software Defined Networks. Omid Alipourfard

Infinite CacheFlow : A Caching Solution for Switches in Software Defined Networks. Omid Alipourfard Infinite CacheFlow : A Caching Solution for Switches in Software Defined Networks by Omid Alipourfard A Thesis Presented in Partial Fulfillment of the Requirement for the Degree Masters of Science Approved

More information

Network Processors. Nevin Heintze Agere Systems

Network Processors. Nevin Heintze Agere Systems Network Processors Nevin Heintze Agere Systems Network Processors What are the packaging challenges for NPs? Caveat: I know very little about packaging. Network Processors What are the packaging challenges

More information

Advanced Computer Networks. Network Virtualization

Advanced Computer Networks. Network Virtualization Advanced Computer Networks 263 3501 00 Network Virtualization Patrick Stuedi Spring Semester 2014 1 Oriana Riva, Department of Computer Science ETH Zürich Outline Last week: Portland VL2 Today Network

More information

Configuring TAP Aggregation and MPLS Stripping

Configuring TAP Aggregation and MPLS Stripping This chapter describes how to configure TAP aggregation and MPLS stripping on Cisco NX-OS devices. This chapter contains the following sections: About TAP Aggregation, page 1 About MPLS Stripping, page

More information

Software-Defined Networking (SDN) Overview

Software-Defined Networking (SDN) Overview Reti di Telecomunicazione a.y. 2015-2016 Software-Defined Networking (SDN) Overview Ing. Luca Davoli Ph.D. Student Network Security (NetSec) Laboratory davoli@ce.unipr.it Luca Davoli davoli@ce.unipr.it

More information

Techniques and Protocols for Improving Network Availability

Techniques and Protocols for Improving Network Availability Techniques and Protocols for Improving Network Availability Don Troshynski dtroshynski@avici.com February 26th, 2004 Outline of Talk The Problem Common Convergence Solutions An Advanced Solution: RAPID

More information

Software Defined Networks and OpenFlow. Courtesy of: AT&T Tech Talks.

Software Defined Networks and OpenFlow. Courtesy of: AT&T Tech Talks. MOBILE COMMUNICATION AND INTERNET TECHNOLOGIES Software Defined Networks and Courtesy of: AT&T Tech Talks http://web.uettaxila.edu.pk/cms/2017/spr2017/temcitms/ MODULE OVERVIEW Motivation behind Software

More information

Network Verification Using Atomic Predicates (S. S. Lam) 3/28/2017 1

Network Verification Using Atomic Predicates (S. S. Lam) 3/28/2017 1 Network Verification Using Atomic Predicates 1 Difficulty in Managing Large Networks Complexity of network protocols o unexpected protocol interactions o links may be physical or virtual (e.g., point to

More information

Chapter 5 Network Layer: The Control Plane

Chapter 5 Network Layer: The Control Plane Chapter 5 Network Layer: The Control Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you

More information

Forwarding Architecture

Forwarding Architecture Forwarding Architecture Brighten Godfrey CS 538 February 14 2018 slides 2010-2018 by Brighten Godfrey unless otherwise noted Building a fast router Partridge: 50 Gb/sec router A fast IP router well, fast

More information

Incremental Update for a Compositional SDN Hypervisor

Incremental Update for a Compositional SDN Hypervisor Incremental Update for a Compositional SDN Hypervisor Xin Jin Princeton University xinjin@cs.princeton.edu Jennifer Rexford Princeton University jrex@cs.princeton.edu David Walker Princeton University

More information

lecture 18: network virtualization platform (NVP) 5590: software defined networking anduo wang, Temple University TTLMAN 401B, R 17:30-20:00

lecture 18: network virtualization platform (NVP) 5590: software defined networking anduo wang, Temple University TTLMAN 401B, R 17:30-20:00 lecture 18: network virtualization platform (NVP) 5590: software defined networking anduo wang, Temple University TTLMAN 401B, R 17:30-20:00 Network Virtualization in multi-tenant Datacenters Teemu Koponen.,

More information

Managing and Securing Computer Networks. Guy Leduc. Chapter 2: Software-Defined Networks (SDN) Chapter 2. Chapter goals:

Managing and Securing Computer Networks. Guy Leduc. Chapter 2: Software-Defined Networks (SDN) Chapter 2. Chapter goals: Managing and Securing Computer Networks Guy Leduc Chapter 2: Software-Defined Networks (SDN) Mainly based on: Computer Networks and Internets, 6 th Edition Douglas E. Comer Pearson Education, 2015 (Chapter

More information

Stateless Multicast with Bit Indexed Explicit Replication

Stateless Multicast with Bit Indexed Explicit Replication Stateless Multicast with Bit Indexed Explicit Replication IJsbrand Wijnands, Distinguished Engineer Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find

More information

Optimizing the One Big Switch Abstraction in Software-Defined Networks

Optimizing the One Big Switch Abstraction in Software-Defined Networks Optimizing the One Big Switch Abstraction in Software-Defined Networks Nanxi Kang, Zhenming Liu, Jennifer Rexford, and David Walker Computer Science Department, Princeton University ABSTRACT Software Defined

More information

Network Configuration Example

Network Configuration Example Network Configuration Example Configuring Private VLANs on a QFX Switch Using Extended Functionality Modified: 2016-08-01 Juniper Networks, Inc. 1133 Innovation Way Sunnyvale, California 94089 USA 408-745-2000

More information

Sweet Little Lies: Fake Topologies for Flexible Routing

Sweet Little Lies: Fake Topologies for Flexible Routing Sweet Little Lies: Fake Topologies for Flexible Routing Stefano Vissicchio University of Louvain HotNets 27th October 2014 Joint work with Laurent Vanbever (Princeton) and Jennifer Rexford (Princeton)

More information

CoVisor: A Composi,onal Hypervisor for So6ware- Defined Networks

CoVisor: A Composi,onal Hypervisor for So6ware- Defined Networks CoVisor: A Composi,onal Hypervisor for So6ware- Defined Networks Xin Jin Jennifer Gossels, Jennifer Rexford, David Walker 1 So6ware- Defined Networking Centralized control with open APIs OpenFlow Applica,on

More information

Basic Concepts. Network Management. Spring Bahador Bakhshi CE & IT Department, Amirkabir University of Technology

Basic Concepts. Network Management. Spring Bahador Bakhshi CE & IT Department, Amirkabir University of Technology Basic Concepts Network Management Spring 2018 Bahador Bakhshi CE & IT Department, Amirkabir University of Technology This presentation is based on the slides listed in references. Outline Introduction:

More information

Life on the Edge: Unraveling Policies into Configurations

Life on the Edge: Unraveling Policies into Configurations Life on the Edge: Unraveling Policies into Configurations Shrutarshi Basu Cornell University Paparao Palacharla Fujitsu Labs of America Nate Foster Cornell University Christian Skalka University of Vermont

More information

A Policy-aware Switching Layer for Data Centers

A Policy-aware Switching Layer for Data Centers A Policy-aware Switching Layer for Data Centers Dilip Joseph Arsalan Tavakoli Ion Stoica University of California at Berkeley 1 Problem: Middleboxes are hard to deploy Place on network path Overload path

More information

Cisco Nexus Data Broker for Network Traffic Monitoring and Visibility

Cisco Nexus Data Broker for Network Traffic Monitoring and Visibility Guide Cisco Nexus Data Broker for Network Traffic Monitoring and Visibility Solution Implementation Guide 2015 Cisco and/or its affiliates. All rights reserved. This document is Cisco Public Information.

More information

Software Defined Networking

Software Defined Networking Software Defined Networking 1 2 Software Defined Networking Middlebox Switch Controller Switch Switch Server Server Server Server Standardization: switches support a vendor-agnostic, open API Off-device

More information

Virtual Network Diagnosis as a Service

Virtual Network Diagnosis as a Service Virtual Network Diagnosis as a Service Wenfei Wu, Guohui Wang, Aditya Akella, Anees Shaikh Abstract Today s cloud network platforms allow tenants to construct sophisticated virtual network topologies among

More information

Cybersecurity was nonexistent for most network data exchanges until around 1994.

Cybersecurity was nonexistent for most network data exchanges until around 1994. 1 The Advanced Research Projects Agency Network (ARPANET) started with the Stanford Research Institute (now SRI International) and the University of California, Los Angeles (UCLA) in 1960. In 1970, ARPANET

More information

PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES

PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES Greg Hankins APRICOT 2012 2012 Brocade Communications Systems, Inc. 2012/02/28 Lookup Capacity and Forwarding

More information

Special Loop Address draft-turaga-lmap-special-loop-address. Partha Turaga & Robert Raszuk Bloomberg L.P.

Special Loop Address draft-turaga-lmap-special-loop-address. Partha Turaga & Robert Raszuk Bloomberg L.P. Special Loop Address draft-turaga-lmap-special-loop-address Partha Turaga & Robert Raszuk Bloomberg L.P. Background-I Applications get affected badly when there is a link issue between any two points in

More information

Enforcing Network- Wide Policies in the Presence of Dynamic Middlebox Ac>ons using FlowTags

Enforcing Network- Wide Policies in the Presence of Dynamic Middlebox Ac>ons using FlowTags Enforcing Network- Wide Policies in the Presence of Dynamic Middlebox Ac>ons using FlowTags Seyed K. Fayazbakhsh *, Luis Chiang, Vyas Sekar *, Minlan Yu, Jeffrey Mogul * CMU, Deutsche Telekom, USC, Google

More information

MPLS AToM Overview. Documentation Specifics. Feature Overview

MPLS AToM Overview. Documentation Specifics. Feature Overview MPLS AToM Overview This document provides an introduction to MPLS AToM and includes the following sections: Documentation Specifics, page 14 Feature Overview, page 14 Benefits, page 26 What To Do Next,

More information

VXLAN Overview: Cisco Nexus 9000 Series Switches

VXLAN Overview: Cisco Nexus 9000 Series Switches White Paper VXLAN Overview: Cisco Nexus 9000 Series Switches What You Will Learn Traditional network segmentation has been provided by VLANs that are standardized under the IEEE 802.1Q group. VLANs provide

More information

Shim6: Network Operator Concerns. Jason Schiller Senior Internet Network Engineer IP Core Infrastructure Engineering UUNET / MCI

Shim6: Network Operator Concerns. Jason Schiller Senior Internet Network Engineer IP Core Infrastructure Engineering UUNET / MCI Shim6: Network Operator Concerns Jason Schiller Senior Internet Network Engineer IP Core Infrastructure Engineering UUNET / MCI Not Currently Supporting IPv6? Many parties are going forward with IPv6 Japan

More information

Multiprotocol Label Switching (MPLS) on Cisco Routers

Multiprotocol Label Switching (MPLS) on Cisco Routers Multiprotocol Label Switching (MPLS) on Cisco Routers Feature History Release 11.1CT 12.1(3)T 12.1(5)T 12.0(14)ST 12.0(21)ST 12.0(22)S Modification The document introduced MPLS and was titled Tag Switching

More information

CoVisor: A Compositional Hypervisor for Software-Defined Networks

CoVisor: A Compositional Hypervisor for Software-Defined Networks CoVisor: A Compositional Hypervisor for Software-Defined Networks Xin Jin, Jennifer Gossels, Jennifer Rexford, David Walker Princeton University Abstract We present CoVisor, a new kind of network hypervisor

More information

Programmable NICs. Lecture 14, Computer Networks (198:552)

Programmable NICs. Lecture 14, Computer Networks (198:552) Programmable NICs Lecture 14, Computer Networks (198:552) Network Interface Cards (NICs) The physical interface between a machine and the wire Life of a transmitted packet Userspace application NIC Transport

More information

Felix: Implementing Traffic Measurement on End Hosts Using Program Analysis

Felix: Implementing Traffic Measurement on End Hosts Using Program Analysis Felix: Implementing Traffic Measurement on End Hosts Using Program Analysis Haoxian Chen Tsinghua University hc865@cornell.edu Michael Whittaker Cornell University mjw297@cornell.edu Nate Foster Cornell

More information

Configuring NetFlow. Understanding NetFlow CHAPTER

Configuring NetFlow. Understanding NetFlow CHAPTER 50 CHAPTER This chapter describes how to configure NetFlow statistics collection on the Cisco 7600 series routers. Note For complete syntax and usage information for the commands used in this chapter,

More information

openstate.p4 Supporting Stateful Forwarding in P4 Antonio Capone, Carmelo Cascone

openstate.p4 Supporting Stateful Forwarding in P4 Antonio Capone, Carmelo Cascone openstate.p4 Supporting Stateful Forwarding in P4 Antonio Capone, Carmelo Cascone 2 nd P4 Workshop, Stanford, November 18, 2015 Stateless dataplane Stateless model (e.g. OpenFlow) global states Controller

More information

Software-Defined Networking (SDN) Now for Operational Technology (OT) Networks SEL 2017

Software-Defined Networking (SDN) Now for Operational Technology (OT) Networks SEL 2017 Software-Defined Networking (SDN) Now for Operational Technology (OT) Networks SEL 2017 Traditional Ethernet Challenges Plug-and-play Allow all ROOT D D D D Nondeterministic Reactive failover Difficult

More information

Configuring MPLS L3VPN

Configuring MPLS L3VPN Contents Configuring MPLS L3VPN 1 MPLS L3VPN overview 1 Introduction to MPLS L3VPN 1 MPLS L3VPN concepts 2 MPLS L3VPN packet forwarding 5 MPLS L3VPN networking schemes 5 MPLS L3VPN routing information

More information

Using Flexible NetFlow Flow Sampling

Using Flexible NetFlow Flow Sampling This document contains information about and instructions for configuring sampling to reduce the CPU overhead of analyzing traffic with Flexible NetFlow. NetFlow is a Cisco technology that provides statistics

More information

On the Practical Applicability of SDN Research

On the Practical Applicability of SDN Research On the Practical Applicability of SDN Research Roberto di Lallo Gabriele Lospoto Massimo Rimondini Mirko Gradillo Claudio Pisa IEEE/IFIP Network Operations and Management Symposium Istanbul Turkey 25/29

More information

Using Flexible NetFlow Flow Sampling

Using Flexible NetFlow Flow Sampling This document contains information about and instructions for configuring sampling to reduce the CPU overhead of analyzing traffic with Flexible NetFlow. NetFlow is a Cisco technology that provides statistics

More information

Software-Defined Networking (SDN)

Software-Defined Networking (SDN) EPFL Princeton University 2 5 A p r 12 Software-Defined Networking (SDN) Third-party Enables new functionality through mability 2 1 at the risk of bugs 3 Software Faults Will make communication unreliable

More information

Configuring Access and Trunk Interfaces

Configuring Access and Trunk Interfaces Configuring Access and Trunk Interfaces Ethernet interfaces can be configured either as access ports or trunk ports. Trunks carry the traffic of multiple VLANs over a single link and allow you to extend

More information

Configuring multicast VPN

Configuring multicast VPN Contents Configuring multicast VPN 1 Multicast VPN overview 1 Multicast VPN overview 1 MD-VPN overview 3 Protocols and standards 6 How MD-VPN works 6 Share-MDT establishment 6 Share-MDT-based delivery

More information

Heavy-Hitter Detection Entirely in the Data Plane

Heavy-Hitter Detection Entirely in the Data Plane Heavy-Hitter Detection Entirely in the Data Plane VIBHAALAKSHMI SIVARAMAN SRINIVAS NARAYANA, ORI ROTTENSTREICH, MUTHU MUTHUKRSISHNAN, JENNIFER REXFORD 1 Heavy Hitter Flows Flows above a certain threshold

More information

Configuring MPLS L3VPN

Configuring MPLS L3VPN Contents Configuring MPLS L3VPN 1 MPLS L3VPN overview 1 MPLS L3VPN concepts 2 MPLS L3VPN packet forwarding 4 MPLS L3VPN networking schemes 5 MPLS L3VPN routing information advertisement 8 Inter-AS VPN

More information

ENTERPRISE MPLS. Kireeti Kompella

ENTERPRISE MPLS. Kireeti Kompella ENTERPRISE MPLS Kireeti Kompella AGENDA The New VLAN Protocol Suite Signaling Labels Hierarchy Signaling Advanced Topics Layer 2 or Layer 3? Resilience and End-to-end Service Restoration Multicast ECMP

More information

Configuring Firewall Filters (J-Web Procedure)

Configuring Firewall Filters (J-Web Procedure) Configuring Firewall Filters (J-Web Procedure) You configure firewall filters on EX Series switches to control traffic that enters ports on the switch or enters and exits VLANs on the network and Layer

More information

Pronto: Efficient Test Packet Generation for Dynamic Network Data Planes

Pronto: Efficient Test Packet Generation for Dynamic Network Data Planes Pronto: Efficient Test Packet Generation for Dynamic Network Data Planes Yu Zhao, Huazhe Wang, Xin Li, Tingting Yu and Chen Qian University of Kentucky, U.S. University of California at Santa Cruz, U.S.

More information

CoVisor: A Compositional Hypervisor for Software-Defined Networks

CoVisor: A Compositional Hypervisor for Software-Defined Networks CoVisor: A Compositional Hypervisor for Software-Defined Networks Xin Jin, Jennifer Gossels, Jennifer Rexford, and David Walker, Princeton University https://www.usenix.org/conference/nsdi5/technical-sessions/presentation/jin

More information

Internetwork Expert s CCNP Bootcamp. Hierarchical Campus Network Design Overview

Internetwork Expert s CCNP Bootcamp. Hierarchical Campus Network Design Overview Internetwork Expert s CCNP Bootcamp Hierarchical Campus Network Design Overview http:// Hierarchical Campus Network Design Overview Per Cisco, a three layer hierarchical model to design a modular topology

More information

DoS Attacks. Network Traceback. The Ultimate Goal. The Ultimate Goal. Overview of Traceback Ideas. Easy to launch. Hard to trace.

DoS Attacks. Network Traceback. The Ultimate Goal. The Ultimate Goal. Overview of Traceback Ideas. Easy to launch. Hard to trace. DoS Attacks Network Traceback Eric Stone Easy to launch Hard to trace Zombie machines Fake header info The Ultimate Goal Stopping attacks at the source To stop an attack at its source, you need to know

More information

MPLS OAM Technology White Paper

MPLS OAM Technology White Paper MPLS OAM Technology White Paper Issue 01 Date 2012-10-30 HUAWEI TECHNOLOGIES CO., LTD. 2012. All rights reserved. No part of this document may be reproduced or transmitted in any form or by any means without

More information

HIP Host Identity Protocol. October 2007 Patrik Salmela Ericsson

HIP Host Identity Protocol. October 2007 Patrik Salmela Ericsson HIP Host Identity Protocol October 2007 Patrik Salmela Ericsson Agenda What is the Host Identity Protocol (HIP) What does HIP try to solve HIP basics Architecture The HIP base exchange HIP basic features

More information