Polynomial-Time What-If Analysis for Prefix-Manipulating MPLS Networks
|
|
- Leonard Cooper
- 6 years ago
- Views:
Transcription
1 Polynomial-Time What-If Analysis for Prefix-Manipulating MPLS Networks Stefan Schmid University of Vienna, Austria and Segment Routing!... Jiri Srba Aalborg University, Denmark
2 Polynomial-Time What-If Analysis for Prefix-Manipulating MPLS Networks Stefan Schmid University of Vienna, Austria Jiri Srba Aalborg University, Denmark Teaser: Can we verify reachability under k failures without trying exponentially many options? Yes. MUCH FASTER!
3 Polynomial-Time What-If Analysis for Prefix-Manipulating MPLS Networks Stefan Schmid University of Vienna, Austria Jiri Srba Aalborg University, Denmark Teaser: Can we verify reachability under k failures without trying exponentially many options? Yes. MUCH FASTER! An Automata-Theoretic Approach
4 Polynomial-Time What-If Analysis for Prefix-Manipulating MPLS Networks Stefan Schmid University of Vienna, Austria Jiri Srba Aalborg University, Denmark Kudos to collaborators: Jesper Stenbjerg Jensen, Jonas Sand Madsen, Troels Beck Krøgh at Aalborg University, Denmark
5 Configuring Networks is Hard Datacenter, enterprise, carrier networks: mission-critical infrastructures. But even techsavvy companies struggle to provide reliable operations. We discovered a misconfiguration on this pair of switches that caused what's called a bridge loop in the network. A network change was [ ] executed incorrectly [ ] more stuck volumes and added more requests to the re-mirroring storm Service outage was due to a series of internal network events that corrupted router data tables Experienced a network connectivity issue [ ] interrupted the airline's flight departures, airport processing and reservations systems Credits: Nate Foster 1
6 Datacenter Especially Under Failures Example: BGP in Datacenter Internet X Y C D G H A B E F G1 G2 P1 P2 Credits: Beckett et al. (SIGCOMM 2016): Bridging Networkwide Objectives and Device-level Configurations. 2
7 Datacenter Especially Under Failures Example: Cluster BGP with in Datacenter services that should be globally reachable. X Internet Y Cluster with services that should be accessible only internally. C D G H A B E F G1 G2 P1 P2 Credits: Beckett et al. (SIGCOMM 2016): Bridging Networkwide Objectives and Device-level Configurations. 2
8 Datacenter Especially Under Failures X and Y announce to Internet what is from G* (prefix). Example: BGP in Datacenter Internet X and Y block what is from P*. X Y C D G H A B E F G1 G2 P1 P2 Credits: Beckett et al. (SIGCOMM 2016): Bridging Networkwide Objectives and Device-level Configurations. 2
9 Datacenter Especially Under Failures X and Y announce to Internet what is from G* (prefix). Example: BGP in Datacenter Internet X and Y block what is from P*. X Y C D G What can go wrong? H A B E F G1 G2 P1 P2 Credits: Beckett et al. (SIGCOMM 2016): Bridging Networkwide Objectives and Device-level Configurations. 2
10 Datacenter Especially Under Failures X and Y announce to Internet what is from G* (prefix). Example: BGP in Datacenter Internet X and Y block what is from P*. X Y C D G H If link (G,X) fails and traffic from G is rerouted via A Y and BC to X: X announces E (does F not block) G and H as it comes from C. (Note: BGP.) G1 G2 P1 P2 Credits: Beckett et al. (SIGCOMM 2016): Bridging Networkwide Objectives and Device-level Configurations. 2
11 Network Administration Today Policy ok? A B C Many forwarding tables with many rules, distributed across network Sysadmin responsible for: Reachability: Can traffic from ingress port A reach egress port B? Loop-freedom: Are the routes implied by the forwarding rules loop-free? Non-reachability: Is it ensured that traffic originating from A never reaches B? Waypoint ensurance: Is it ensured that traffic from A to B is always routed via a node C (e.g., a firewall)? 3
12 Network Administration Today Policy ok? A B C Many forwarding tables with many rules, distributed across network Sysadmin responsible for: Reachability: Can traffic from ingress port A reach egress port B? Loop-freedom: Are the routes implied by the forwarding rules loop-free? Non-reachability: Is it ensured that traffic originating from A never reaches B? Waypoint ensurance: Is it ensured that traffic from A to B is always routed via a node C (e.g., a firewall)? 3
13 Network Administration Today What if...?! A B C Many forwarding tables with many rules, distributed across network Sysadmin responsible for: Reachability: Can traffic from ingress port A reach egress port B? Loop-freedom: Are the routes implied by the forwarding rules loop-free? Non-reachability: Is it ensured that traffic originating from A never reaches B? Waypoint ensurance: Is it ensured that traffic from A to B is always routed via a node C (e.g., a firewall)? even under (multiple) failures! 3
14 Network Administration Today k failures = ( n k ) possibilities A B C Many forwarding tables with many rules, distributed across network Sysadmin responsible for: Reachability: Can traffic from ingress port A reach egress port B? Loop-freedom: Are the routes implied by the forwarding rules loop-free? Non-reachability: Is it ensured that traffic originating from A never reaches B? Waypoint ensurance: Is it ensured that traffic from A to B is always routed via a node C (e.g., a firewall)? even under (multiple) failures! 3
15 The Good News Networks are becoming more programmable and logically centralized, have open interfaces, are based on formal foundations researchers develop high-level specification languages such as NetKAT. Enables a more automated network operation and verification! 4
16 The Bad News For many traditional networks (still predominant!), such benefits are not available yet Many existing tools cannot deal with failures Super-polynomial runtime, verification PSPACE-hard Other limitations: e.g., fixed header size 4
17 Tractability of Verification Reachability is undecidable in SDN: Can emulate a Turing machine. Self-loop: could be replaced by dummy switch. in out in out 5
18 Tractability of Verification Reachability is undecidable in SDN: Idea: packet header stores Can emulate a Turing machine. Turing machine configuration (tape, head, state). in out in out 5
19 Tractability of Verification Reachability is undecidable in SDN: Can emulate a Turing machine. in out in out Switch action: each time packet arrives, performs one Turing machine step and updates header. 5
20 Tractability of Verification Reachability is undecidable in SDN: Can emulate a Turing machine. in Only if accept or reject, forwarded to out. Is it ever reached? Undecidable! out in out 5
21 Our Contribution Polynomial-Time What-if Analysis for Prefix Rewriting Networks 6
22 Our Contribution Independently of the number of failures! No need to try combinations. Reachability, loopfreedom, waypointing, etc.! Polynomial-Time What-if Analysis for Prefix Rewriting Networks e.g., MPLS networks or Segment Routing networks Support arbitrary header sizes! 6
23 MPLS Networks MPLS: forwarding based on top label of label stack in v 1 v 2 v 3 v 4 out 1 in 2 22 v 5 v 6 v 7 v 8 out 2 Default routing of two flows 7
24 MPLS Networks MPLS: forwarding based on top label of label stack push swap swap pop in v 1 v 2 v 3 v 4 out 1 in 2 22 v 5 v 6 v 7 v 8 out 2 Default routing of two flows pop 7
25 MPLS Networks MPLS: forwarding based on top label of label stack in v 1 v 2 v 3 v 4 out 1 in 2 22 v 5 v 6 v 7 v 8 out 2 Default routing of two flows 7
26 MPLS Networks: 1 Failure MPLS: forwarding based on top label of label stack in v 1 v 2 v 3 v 4 out 1 in 2 22 Default routing of two flows v 5 v 6 v 7 v 8 out 2 For failover: push and pop label in 1 12 v 1 v 2 v 3 v 4 out 1 in v 5 v 6 v 7 v 8 21 out 2 One failure: push 30: route around (v 2,v 3 ) 8
27 MPLS Networks: 1 Failure MPLS: forwarding based on top label of label stack in v 1 v 2 v 3 v 4 out 1 in 2 22 Default routing of two flows If (v 2,v 3 ) vfailed, 5 v 6 v 7 v 8 out 2 push 30 and forward to v 6. For failover: push and pop label in 1 12 v 1 v 2 v 3 v 4 out 1 in 2 Normal swap v 5 v 6 v 7 v 8 21 Pop out 2 One failure: push 30: route around (v 2,v 3 ) 8
28 MPLS Networks: 1 Failure MPLS: forwarding based on top label of label stack in v 1 v 2 v 3 v 4 out 1 in 2 22 Default routing of two flows If (v 2,v 3 ) vfailed, 5 v 6 v 7 v 8 out 2 push 30 and forward to v 6. What about multiple link failures? For failover: push and pop label in 1 12 v 1 v 2 v 3 v 4 out 1 in 2 Normal swap v 5 v 6 v 7 v 8 21 Pop out 2 One failure: push 30: route around (v 2,v 3 ) 8
29 MPLS Networks: 2 Failures in v 1 v 2 v 3 v 4 out 1 in 2 22 Original Routing v 5 v 6 v 7 v 8 out 2 in v 1 v 2 v 3 v 4 out 1 in v 5 v 6 v 7 v out 2 in Push v40 1 v 2 v 3 v 4 out 1 in v 5 v 6 v 7 v Push 30 out 2 One failure: push 30: route around (v 2,v 3 ) Two failures: first push 30: route around (v 2,v 3 ) Push recursively 40: route around (v 2,v 6 )
30 MPLS Networks: 2 Failures in v 1 v 2 v 3 v 4 out 1 in 2 22 Original Routing v 5 v 6 v 7 v 8 out 2 in v 1 v 2 v 3 v 4 out 1 in v 5 v 6 v 7 v in Push v40 1 v 2 v 3 v 4 out 1 in v 5 v 6 v 7 v Push 30 out 2 One failure: push 30: route around (v 2,v 3 ) out But masking links one-byone can be inefficient: 2 (v 7,v 3,v 8 ) could be shortcut to (v 7,v 8 ). Two failures: first push 30: route around (v 2,v 3 ) Push recursively 40: route around (v 2,v 6 )
31 MPLS Networks: 2 Failures in v 1 v 2 v 3 v 4 out 1 in 2 22 v 5 v 6 v 7 v 8 out 2 in v 1 v 2 v 3 v 4 out 1 in v 5 v 6 v 7 v in Push v40 1 v 2 v 3 v 4 out 1 in v 5 v 6 v 7 v Push 30 out 2 Original Routing More efficient but also more complex! How complex? One failure: push 30: route around (v 2,v 3 ) out But masking links one-byone can be inefficient: 2 (v 7,v 3,v 8 ) could be shortcut to (v 7,v 8 ). Two failures: first push 30: route around (v 2,v 3 ) Push recursively 40: route around (v 2,v 6 )
32 Forwarding Tables for Our Example Protected link Alternative link Label Failover Tables Flow Table 10
33 Polynomial-Time Verification: An Automata-Theoretic Approach What if...?! Compilation Interpretation px qxx px qyx qy ryy ry r rx px MPLS configurations, Segment Routing etc. Pushdown Automaton and Prefix Rewriting Systems Theory 11
34 Polynomial-Time Verification: Use cases: Sysadmin issues queries An Automata-Theoretic test certain properties, Approach or do it on a regular basis automatically! What if...?! Compilation Interpretation px qxx px qyx qy ryy ry r rx px MPLS configurations, Segment Routing etc. Pushdown Automaton and Prefix Rewriting Systems Theory 11
35 Questions with Answers in Polynomial Time Interface Connectivity Problem Can a packet arriving at interface A with label-stack header h reach an interface B, assuming that at most k links fail at the same time? Does the route avoid a given set of nodes? Push/pop/ swap Blacklisted: avoid D B Will the packet always traverse a given waypoint? A What subset of headers guarantees that a given interface is not reachable under at most k link failures? And everything for up to k failures! Label stack: C: with firewall Waypoint: use! 12
36 Questions with Answers in Polynomial Time Transparency MPLS: transit networks! B Label stack: empty? Will a packet with empty labelstack arriving at ingress interface A always leave at egress interface B also with the empty label-stack? Label stack: empty A Also under k failures? Cyclic and repeated routing Will some server receive a given packet more than r-times during the routing? What is the max stack size during the routing? Under failures as well A B Label stack: size? 13
37 Our Approach The clue: exploit the specific structure of MPLS rules OpenFlow rules: arbitrary rewriting in x L* out x L* vs Header size not fixed! (Simplified) MPLS rules: prefix rewriting FT: in x L out x OP, where OP = {swap,push,pop} FFT: out x L out x OP, where OP = {swap,push,pop} 14
38 A Network Model A general network Links Outgoing interfaces Nodes Incoming interfaces Set of labels in packet header 15
39 A general network A Network Model Interface function Interface function: maps outgoing interface to next hop node and incoming interface to previous hop node That is: and 16
40 A general network A Network Model Routing function Routing function: for each set of failed links routing function, the defines, for all incoming interfaces and packet headers, outgoing interfaces together with modified headers. 17
41 Routing in Network Packet routing sequence can be represented using tuples: on interface forwards it to live next hop given that these links are down. Node receives packet with header with new header.. Packet routing is then (in)finite sequence of tuples 18
42 MPLS Network Model MPLS supports following operations on header sequences: The local routing table can then be defined as Interface + label Maps to next hop and operation Local link protection function suggests backup interface protected backup typically: push 19
43 MPLS Pushdown Prefix Rewriting System Prefix rewriting system is set of rewriting rules We write for generates a transition system such that iff Replace prefix Prefix rewriting system is called pushdown system if and for all Second symbol of v: top of stack label. First symbol of v and w: control state of pushdown system. pop swap push 20
44 MPLS Pushdown Prefix Rewriting System Control states: and Labels: stack symbols and at bottom How many times have we tried to reroute at this node already? Packet with header arriving at interface in at represented as pushdown configuration: Packet to be forwarded at node represented by configuration: to outgoing interface 21
45 Example Rules: Regular Forwarding on Top-Most Label Push: Push label on stack Swap: Swap top of stack Pop: Pop top of stack 22
46 Example Failover Rules Failover-Push: Emumerate all rerouting options Failover-Swap: Failover-Pop: Example rewriting sequence: Try default Try first backup Try second backup 23
47 Why Polynomial Time?! k failures = ( n k ) possibilities Arbitrary number k of failures: How can I avoid checking all 2 k options?! Even if we reduce to push-down automaton: simple operations such as emptiness testing or intersection on push-down automata is computationally nontrivial and sometimes even undecidable! 24
48 Why Polynomial Time?! k failures = ( n k ) possibilities The Clue: this is not how we will use the PDA! Arbitrary number k of failures: How can I avoid checking all 2 k options?! Even if we reduce to push-down automaton: simple operations such as emptiness testing or intersection on push-down automata is computationally nontrivial and sometimes even undecidable! 24
49 Why Polynomial Time?! k failures = ( n k ) possibilities The Clue: this is not how we will use the PDA! Arbitrary number k of failures: How can I avoid checking all 2 k options?! Even if we reduce to push-down automaton: simple operations such as emptiness testing or intersection on push-down automata is computationally nontrivial and sometimes even undecidable! The words in our language are sequences of pushdown stack symbols, not the labels of transitions. 24
50 Time for Automata Theory! Classic result by Büchi 1964: the set of all reachable configurations of a pushdown automaton a is regular set Hence, we can operate only on NFAs when reasoning about the pushdown automata The resulting regular operations are all polynomial time Julius Richard Büchi Swiss logician Important result of model checking 25
51 Preliminary Query Language: Example Question: Beginning with an empty header [], can we get from s1 to s7 in any number of steps, and end with an empty header []? Output: Yes and witness trace (excerpt)! Query: []s1 >> s7[] Take multiple steps Empty header! 26
52 Example 2: Traversal Testing Traversal test: Can traffic starting with [] go through s3, under up to k=1 failures? 1 failure Query: k=1 [] s1 >> s3 >> s7 [] push pop YES! Down! swap swap swap 27
53 Example 3: Traversal with 2 Failures Traversal test with k=2: Can traffic go through s5, under up to k=2 failures? stack size! pop 2 failures Query: k=2 [] s1 >> s5 >> s7 [] push pop YES! push 28
54 Example 4: Transparency Violation Transparency with k=3: Can transparency be violated under up to k=3 failures? 3 failures Query: k=3 [] s1 >> s7 [+] empty non-empty YES! Root cause is a misconfiguration in s5, causing it to swap to 11 instead of popping when doing the failover on s5-s4. 29
55 Preliminary Tool Part 1: Parses query and constructs Push- Down System (PDS) In Python 3 Part 2: Reachability analysis of constructed PDS Using Moped tool query processing flow 30
56 Preliminary Evaluation For small queries fast: 1000s of links, within seconds 100,000s 1000s secs The bottleneck currently are large queries 31
57 Summary Polynomial-time verification of MPLS reachability and policyrelated properties like waypointing For arbitrary number of failures (up to linear in n)! Supports arbitrary header sizes ( infinite ) Also allows to compute headers which do (not) fulfill a property Allows to support a constant number of stateful nodes as well Extends to Segment Routing networks based on MPLS (SR-MPLS) Leveraging theory from Prefix Rewriting Systems and Büchi s classic result 32
58 Future Work Other networks and properties which can be verified in polynomial time? Good tradeoff expressiveness vs polynomial-time verifiability? We re looking for industrial case studies and collaborations Thank you! Questions? 33
Automating Communication Networks
Case Study: Fast What-If Analysis Tool of MPLS and SR Networks! Automating Communication Networks Stefan Schmid (Uni Vienna) Communication networks: Critical infrastructure: stringent dependability requirements
More informationPolynomial-time what-if analysis for communication networks: An automata-theoretic approach
Polynomial-time what-if analysis for communication networks: An automata-theoretic approach Stefan Schmid et al.* * most importantly: Jiri Srba (Aalborg University) and Chen Avin (Ben Gurion University)
More informationPredictable Data Communications with (Self-)Adjusting Networks. Stefan Schmid (University of Vienna, Austria)
Predictable Data Communications with (Self-)Adjusting Networks Stefan Schmid (University of Vienna, Austria) Predictable Data Communications with (Self-)Adjusting Networks Stefan Schmid et al., ideas from,
More informationIntroduction to Computers & Programming
16.070 Introduction to Computers & Programming Theory of computation 5: Reducibility, Turing machines Prof. Kristina Lundqvist Dept. of Aero/Astro, MIT States and transition function State control A finite
More informationFinal Course Review. Reading: Chapters 1-9
Final Course Review Reading: Chapters 1-9 1 Objectives Introduce concepts in automata theory and theory of computation Identify different formal language classes and their relationships Design grammars
More informationMIT Specifying Languages with Regular Expressions and Context-Free Grammars. Martin Rinard Massachusetts Institute of Technology
MIT 6.035 Specifying Languages with Regular essions and Context-Free Grammars Martin Rinard Massachusetts Institute of Technology Language Definition Problem How to precisely define language Layered structure
More informationMIT Specifying Languages with Regular Expressions and Context-Free Grammars
MIT 6.035 Specifying Languages with Regular essions and Context-Free Grammars Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology Language Definition Problem How to precisely
More informationThe Big Picture. Chapter 3
The Big Picture Chapter 3 Examining Computational Problems We want to examine a given computational problem and see how difficult it is. Then we need to compare problems Problems appear different We want
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2018 http://cseweb.ucsd.edu/classes/sp18/cse105-ab/ Today's learning goals Sipser Section 2.2 Define push-down automata informally and formally Trace the computation
More informationBit Index Explicit Replication (BIER) Multicasting in Transport Networks
Bit Index Explicit Replication (BIER) Multicasting in Transport Networks A. Giorgetti(1), A. Sgambelluri(1), F. Paolucci(1), N. Sambo(1), P. Castoldi(1), F. Cugini(2) (1) Scuola Superiore Sant Anna, Pisa,
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2016
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2016 Lecture 15 Ana Bove May 23rd 2016 More on Turing machines; Summary of the course. Overview of today s lecture: Recap: PDA, TM Push-down
More informationA Characterization of the Chomsky Hierarchy by String Turing Machines
A Characterization of the Chomsky Hierarchy by String Turing Machines Hans W. Lang University of Applied Sciences, Flensburg, Germany Abstract A string Turing machine is a variant of a Turing machine designed
More informationLimitations of Algorithmic Solvability In this Chapter we investigate the power of algorithms to solve problems Some can be solved algorithmically and
Computer Language Theory Chapter 4: Decidability 1 Limitations of Algorithmic Solvability In this Chapter we investigate the power of algorithms to solve problems Some can be solved algorithmically and
More informationOn the Complexity of Verifying Stateful Networks. A. Panda S. Shenker Y. Velner K. Alpernas A. Rabinovich M. Sagiv
On the Complexity of Verifying Stateful Networks A. Panda S. Shenker Y. Velner K. Alpernas A. Rabinovich M. Sagiv Alice Classical Networking Ted Stevens was right Bob Mallory Trent Networks provide end-to-end
More informationCS5371 Theory of Computation. Lecture 8: Automata Theory VI (PDA, PDA = CFG)
CS5371 Theory of Computation Lecture 8: Automata Theory VI (PDA, PDA = CFG) Objectives Introduce Pushdown Automaton (PDA) Show that PDA = CFG In terms of descriptive power Pushdown Automaton (PDA) Roughly
More informationIntroduction to Segment Routing
Segment Routing (SR) is a flexible, scalable way of doing source routing. Overview of Segment Routing, page 1 How Segment Routing Works, page 2 Examples for Segment Routing, page 3 Benefits of Segment
More informationPathlet Routing. P. Brighten Godfrey, Igor Ganichev, Scott Shenker, and Ion Stoica SIGCOMM (maurizio patrignani)
Pathlet Routing P. Brighten Godfrey, Igor Ganichev, Scott Shenker, and Ion Stoica SIGCOMM 2009 (maurizio patrignani) Reti di Calcolatori di Nuova Generazione http://www.dia.uniroma3.it/~rimondin/courses/rcng1011/
More informationMPLS Egress Protection Framework draft-shen-mpls-egress-protectionframework-02
MPLS Egress Protection Framework draft-shen-mpls-egress-protectionframework-02 Yimin Shen (yshen@juniper.net) Minto Jeyananth (minto@juniper.net) Bruno Decraene (bruno.decraene@orange.com) Updates New
More informationEnforcing Customizable Consistency Properties in Software-Defined Networks. Wenxuan Zhou, Dong Jin, Jason Croft, Matthew Caesar, Brighten Godfrey
Enforcing Customizable Consistency Properties in Software-Defined Networks Wenxuan Zhou, Dong Jin, Jason Croft, Matthew Caesar, Brighten Godfrey 1 Network changes control applications, changes in traffic
More informationModel checking pushdown systems
Model checking pushdown systems R. Ramanujam Institute of Mathematical Sciences, Chennai jam@imsc.res.in Update Meeting, IIT-Guwahati, 4 July 2006 p. 1 Sources of unboundedness Data manipulation: integers,
More informationShim6: 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 informationSoftware 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 informationUMass Amherst Cornell Princeton
The Frenetic Network Controller Arjun Guha, Nate Foster, Mark Reitblatt, Cole Schlesinger, and others: www.github.com/frenetic- lang/frenetic/contributors UMass Amherst Cornell Princeton 1 networks today
More informationFOUNDATIONS OF INTENT- BASED NETWORKING
FOUNDATIONS OF INTENT- BASED NETWORKING Loris D Antoni Aditya Akella Aaron Gember Jacobson Network Policies Enterprise Network Cloud Network Enterprise Network 2 3 Tenant Network Policies Enterprise Network
More information1 Parsing (25 pts, 5 each)
CSC173 FLAT 2014 ANSWERS AND FFQ 30 September 2014 Please write your name on the bluebook. You may use two sides of handwritten notes. Perfect score is 75 points out of 85 possible. Stay cool and please
More informationCSE 123: Computer Networks
CSE 123: Computer Networks Homework 2 Out: 10/18, Due: 10/25 Total points - 50 Question 1 Consider the network shown below, wherein horizontal lines represent transit providers and numbered vertical lines
More informationLARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF
LARGE SCALE IP ROUTING LECTURE BY SEBASTIAN GRAF MODULE 05 MULTIPROTOCOL LABEL SWITCHING (MPLS) AND LABEL DISTRIBUTION PROTOCOL (LDP) 1 by Xantaro IP Routing In IP networks, each router makes an independent
More informationMPLS MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE
MPLS Multiprotocol MPLS Label Switching MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE Peter R. Egli 1/21
More informationImplementing Cisco IP Routing
ROUTE Implementing Cisco IP Routing Volume 3 Version 1.0 Student Guide Text Part Number: 97-2816-02 DISCLAIMER WARRANTY: THIS CONTENT IS BEING PROVIDED AS IS. CISCO MAKES AND YOU RECEIVE NO WARRANTIES
More informationONE-STACK AUTOMATA AS ACCEPTORS OF CONTEXT-FREE LANGUAGES *
ONE-STACK AUTOMATA AS ACCEPTORS OF CONTEXT-FREE LANGUAGES * Pradip Peter Dey, Mohammad Amin, Bhaskar Raj Sinha and Alireza Farahani National University 3678 Aero Court San Diego, CA 92123 {pdey, mamin,
More informationCS 5114 Network Programming Languages Control Plane. Nate Foster Cornell University Spring 2013
CS 5 Network Programming Languages Control Plane http://www.flickr.com/photos/rofi/0979/ Nate Foster Cornell University Spring 0 Based on lecture notes by Jennifer Rexford and Michael Freedman Announcements
More informationA Segment Routing (SR) Tutorial. R. Bonica NANOG70 June 6, 2017
A Segment Routing (SR) Tutorial R. Bonica NANOG70 June 6, 2017 AKA: SPRING IETF Standardization Source Packet Routing In Networking (SPRING) WG ISIS, OSPF, IDR and MPLS WGs What is SR? A tunneling technology
More informationENTERPRISE 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 informationRouting Basics ISP/IXP Workshops
Routing Basics ISP/IXP Workshops 1 Routing Concepts IPv4 Routing Forwarding Some definitions Policy options Routing Protocols 2 IPv4 Internet uses IPv4 addresses are 32 bits long range from 1.0.0.0 to
More informationTheory of Programming Languages COMP360
Theory of Programming Languages COMP360 Sometimes it is the people no one imagines anything of, who do the things that no one can imagine Alan Turing What can be computed? Before people even built computers,
More informationlecture 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 informationConfiguring Static MPLS
This chapter contains information on how to configure static multiprotocol label switching (MPLS). About Static MPLS, page 1 Licensing Requirements for Static MPLS, page 4 Prerequisites for Static MPLS,
More informationSoftware-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 informationDesign and development of the reactive BGP peering in softwaredefined routing exchanges
Design and development of the reactive BGP peering in softwaredefined routing exchanges LECTURER: HAO-PING LIU ADVISOR: CHU-SING YANG (Email: alen6516@gmail.com) 1 Introduction Traditional network devices
More informationCSC 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 informationCourse Project 2 Regular Expressions
Course Project 2 Regular Expressions CSE 30151 Spring 2017 Version of February 16, 2017 In this project, you ll write a regular expression matcher similar to grep, called mere (for match and echo using
More informationDa t e: August 2 0 th a t 9: :00 SOLUTIONS
Interne t working, Examina tion 2G1 3 0 5 Da t e: August 2 0 th 2 0 0 3 a t 9: 0 0 1 3:00 SOLUTIONS 1. General (5p) a) Place each of the following protocols in the correct TCP/IP layer (Application, Transport,
More informationProduction OpenFlow Switches Now Available -Building CORD Using OpenFlow Switches CORD Build
Production OpenFlow Switches Now Available -Building CORD Using OpenFlow Switches CORD Build November, 2017 1 Nothing That Lasts Is Built In A Day One doesn t know everything in the beginning Takes time
More informationMPLS/RSVP/BGP lab KTH CSC. Juniper version. Group Nr. Name1. Name2. Name3. Name4. Name5. Grade. Instructor s Signature
KTH CSC MPLS/RSVP/BGP lab Juniper version Group Nr Name1 Name2 Name3 Name4 Name5 Grade Instructor s Signature Table of Contents 1Goals...3 2 Preparations...3 3 Initial configuration...5 4 RSVP-signalled
More informationProgramme Outcome COURSE OUTCOMES MCA
Programme Outcome PO1: To provide trained human resource for the IT industry. COURSE OUTCOMES MCA MCA 101 : Object Oriented Programming CO1 The students develops a sound approach to problem solving using
More informationTag Switching. Background. Tag-Switching Architecture. Forwarding Component CHAPTER
CHAPTER 23 Tag Switching Background Rapid changes in the type (and quantity) of traffic handled by the Internet and the explosion in the number of Internet users is putting an unprecedented strain on the
More informationPutting it all together
Putting it all together What happens when a user shows up to a new network and wants to access a web site? (These are new slides. Please stop and ask questions if anything is unclear!) Scenario Scenario
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 3 Data Structures Graphs Traversals Strongly connected components Sofya Raskhodnikova L3.1 Measuring Running Time Focus on scalability: parameterize the running time
More informationForwarding 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 informationComputer Sciences Department
1 Reference Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER 3 D E C I D A B I L I T Y 4 Objectives 5 Objectives investigate the power of algorithms to solve problems.
More informationMulti-Protocol Label Switching
Rheinisch-Westfälische Technische Hochschule Aachen Lehrstuhl für Informatik IV Prof. Dr. rer. nat. Otto Spaniol Multi-Protocol Label Switching Seminar: Datenkommunikation und Verteilte Systeme SS 2003
More informationLanguages and Automata
Languages and Automata What are the Big Ideas? Tuesday, August 30, 2011 Reading: Sipser 0.1 CS235 Languages and Automata Department of Computer Science Wellesley College Why Take CS235? 1. It s required
More informationCSE450. Translation of Programming Languages. Lecture 20: Automata and Regular Expressions
CSE45 Translation of Programming Languages Lecture 2: Automata and Regular Expressions Finite Automata Regular Expression = Specification Finite Automata = Implementation A finite automaton consists of:
More informationTheory of Computations Spring 2016 Practice Final Exam Solutions
1 of 8 Theory of Computations Spring 2016 Practice Final Exam Solutions Name: Directions: Answer the questions as well as you can. Partial credit will be given, so show your work where appropriate. Try
More informationAutomata-Theoretic LTL Model Checking. Emptiness of Büchi Automata
Automata-Theoretic LTL Model Checking Graph Algorithms for Software Model Checking (based on Arie Gurfinkel s csc2108 project) Automata-Theoretic LTL Model Checking p.1 Emptiness of Büchi Automata An automation
More informationConfiguring Basic MPLS Using OSPF
Configuring Basic MPLS Using OSPF Document ID: 13736 Contents Introduction Prerequisites Requirements Components Used Conventions Mechanism Configure Network Diagram Quick Configuration Guide Configurations
More informationConfiguring MPLS, MPLS VPN, MPLS OAM, and EoMPLS
CHAPTER 43 Configuring MPLS, MPLS VPN, MPLS OAM, and EoMPLS This chapter describes how to configure multiprotocol label switching (MPLS) and Ethernet over MPLS (EoMPLS) on the Cisco ME 3800X and ME 3600X
More informationTheory of Computation
Theory of Computation For Computer Science & Information Technology By www.thegateacademy.com Syllabus Syllabus for Theory of Computation Regular Expressions and Finite Automata, Context-Free Grammar s
More informationMultihoming with BGP and NAT
Eliminating ISP as a single point of failure www.noction.com Table of Contents Introduction 1. R-NAT Configuration 1.1 NAT Configuration 5. ISPs Routers Configuration 3 15 7 7 5.1 ISP-A Configuration 5.2
More informationScalable Multipath Routing (towards)
Scalable Multipath Routing (towards) 71st Meeting of the IFIP WG 10.4 Working Group on Dependability and Security Ian Welch, School of Engineering and Computer Science; Victoria University of Wellington
More informationTrident. Toward a Unified SDN Programming Framework with Automatic Updates. Kai Gao 1 Taishi Nojima 2 Y. Richard Yang 2, 3 August 23, 2018
Trident Toward a Unified SDN Programming Framework with Automatic Updates Kai Gao 1 Taishi Nojima 2 Y. Richard Yang 2, 3 August 23, 2018 1 Tsinghua University 2 Yale University 3 Tongji University Software-Defined
More informationOpenADN: A Case for Open Application Delivery Networking
OpenADN: A Case for Open Application Delivery Networking Subharthi Paul, Raj Jain, Jianli Pan Washington University in Saint Louis {Pauls, jain, jp10}@cse.wustl.edu International Conference on Computer
More informationImplementing MPLS Forwarding
All Multiprotocol Label Switching (MPLS) features require a core set of MPLS label management and forwarding services; the MPLS Forwarding Infrastructure (MFI) supplies these services. Feature History
More informationLanguages 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 informationMPLS EM MPLS LSP Multipath Tree Trace
MPS EM MPS SP Multipath Tree Trace ast Updated: December 12, 2011 The MPS EM--MPS SP Multipath Tree Trace feature provides the means to discover all possible equal-cost multipath (ECMP) routing paths of
More informationOpenNWA: A Nested-Word-Automaton Library
OpenNWA: A Nested-Word-Automaton Library Evan Driscoll 1, Aditya Thakur 1, and Thomas Reps 1,2 1 Computer Sciences Department, University of Wisconsin Madison {driscoll,adi,reps}@wisc.edu 2 GrammaTech,
More informationTAFL 1 (ECS-403) Unit- V. 5.1 Turing Machine. 5.2 TM as computer of Integer Function
TAFL 1 (ECS-403) Unit- V 5.1 Turing Machine 5.2 TM as computer of Integer Function 5.2.1 Simulating Turing Machine by Computer 5.2.2 Simulating Computer by Turing Machine 5.3 Universal Turing Machine 5.4
More informationVerifying Liveness Properties of ML Programs
Verifying Liveness Properties of ML Programs M M Lester R P Neatherway C-H L Ong S J Ramsay Department of Computer Science, University of Oxford ACM SIGPLAN Workshop on ML, 2011 09 18 Gokigeny all! Motivation
More information100 GBE AND BEYOND. Diagram courtesy of the CFP MSA Brocade Communications Systems, Inc. v /11/21
100 GBE AND BEYOND 2011 Brocade Communications Systems, Inc. Diagram courtesy of the CFP MSA. v1.4 2011/11/21 Current State of the Industry 10 Electrical Fundamental 1 st generation technology constraints
More informationCT32 COMPUTER NETWORKS DEC 2015
Q.2 a. Using the principle of mathematical induction, prove that (10 (2n-1) +1) is divisible by 11 for all n N (8) Let P(n): (10 (2n-1) +1) is divisible by 11 For n = 1, the given expression becomes (10
More informationImplementation of Lexical Analysis
Implementation of Lexical Analysis Outline Specifying lexical structure using regular expressions Finite automata Deterministic Finite Automata (DFAs) Non-deterministic Finite Automata (NFAs) Implementation
More informationFatTire: Declarative Fault Tolerance for SDN
FatTire: Declarative Fault Tolerance for SDN Mark Reitblatt Marco Canini Arjun Guha Nate Foster (Cornell) (TU Berlin UC Louvain) (Cornell UMass Amherst) (Cornell) 1 In a Perfect World... 2 But in Reality...
More informationCan t Touch This: Consistent Network Updates for Multiple Policies
Can t Touch This: Consistent Network Updates for Multiple Policies Szymon Dudycz Arne Ludwig Stefan Schmid,3 University of Wroclaw, Poland Technical University Berlin, Germany 3 Aalborg University, Denmark
More informationPushdown Automata. A PDA is an FA together with a stack.
Pushdown Automata A PDA is an FA together with a stack. Stacks A stack stores information on the last-in firstout principle. Items are added on top by pushing; items are removed from the top by popping.
More informationProfessor 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 Today Outline What this course is about Logistics Course structure,
More informationSegment Routing MPLS data plane. Clarence Filsfils Kris Michielsen
Segment Routing MPLS data plane Clarence Filsfils Kris Michielsen Segment Routing MPLS data plane Segment Routing leverages existing MPLS data plane How to verify Segment Routing MPLS forwarding 2 Segment
More informationRouting Basics ISP/IXP Workshops
Routing Basics ISP/IXP Workshops 1 Routing Concepts IPv4 Routing Forwarding Some definitions Policy options Routing Protocols 2 IPv4 Internet uses IPv4 addresses are 32 bits long range from 1.0.0.0 to
More informationIntroduction to the Active Everywhere Database
Introduction to the Active Everywhere Database INTRODUCTION For almost half a century, the relational database management system (RDBMS) has been the dominant model for database management. This more than
More informationFormal Languages and Automata Theory, SS Project (due Week 14)
Formal Languages and Automata Theory, SS 2018. Project (due Week 14) 1 Preliminaries The objective is to implement an algorithm for the evaluation of an arithmetic expression. As input, we have a string
More informationENDEAVOUR: Towards a flexible software-defined network ecosystem
ENDEAVOUR: Towards a flexible software-defined network ecosystem Project name ENDEAVOUR Project ID H2020-ICT-2014-1 Project No. 644960 Working Package Number 2 Deliverable Number 2.2 Document title Design
More informationMulti Protocol Label Switching
MPLS Multi-Protocol Label Switching Andrea Bianco Telecommunication Network Group firstname.lastname@polito.it http://www.telematica.polito.it/ Network Management and QoS Provisioning - 1 MPLS: introduction
More informationComputer Science 461 Final Exam May 22, :30-3:30pm
NAME: Login name: Computer Science 461 Final Exam May 22, 2012 1:30-3:30pm This test has seven (7) questions, each worth ten points. Put your name on every page, and write out and sign the Honor Code pledge
More informationMPLS Multi-Protocol Label Switching
MPLS Multi-Protocol Label Switching Andrea Bianco Telecommunication Network Group firstname.lastname@polito.it http://www.telematica.polito.it/ Computer Networks Design and Management - 1 MPLS: introduction
More informationTop-Down Network Design
Top-Down Network Design Chapter Seven Selecting Switching and Routing Protocols Original slides by Cisco Press & Priscilla Oppenheimer Selection Criteria for Switching and Routing Protocols Network traffic
More informationProPed. Tool for Symbolic Verification of Probablistic Recursive Programs. University of Missouri Columbia, Missouri, USA
ProPed Tool for Symbolic Verification of Probablistic Recursive Programs Rohit Chadha 1 Umang Mathur 2 Stefan Schwoon 3 1 Computer Science Department University of Missouri Columbia, Missouri, USA 2 Department
More informationMPLS Ping and Traceroute for BGP and IGP Prefix-SID
MPLS Ping and Traceroute for BGP and IGP Prefix-SID MPLS Ping and Traceroute operations for Prefix SID are supported for various BGP and IGP scenarios, for example: Within an IS-IS level or OSPF area Across
More informationSegment Routing MPLS OAM Support
Segment Routing Operations, Administration, and Maintenance (OAM) helps service providers to monitor label-switched paths (LSPs) and quickly isolate forwarding problems to assist with fault detection and
More informationTuring Machines. A transducer is a finite state machine (FST) whose output is a string and not just accept or reject.
Turing Machines Transducers: A transducer is a finite state machine (FST) whose output is a string and not just accept or reject. Each transition of an FST is labeled with two symbols, one designating
More informationLexical Analysis. Chapter 2
Lexical Analysis Chapter 2 1 Outline Informal sketch of lexical analysis Identifies tokens in input string Issues in lexical analysis Lookahead Ambiguities Specifying lexers Regular expressions Examples
More informationRouting Concepts. IPv4 Routing Forwarding Some definitions Policy options Routing Protocols
Routing Basics 1 Routing Concepts IPv4 Routing Forwarding Some definitions Policy options Routing Protocols 2 IPv4 Internet uses IPv4 Addresses are 32 bits long Range from 1.0.0.0 to 223.255.255.255 0.0.0.0
More informationMigration Strategies for IP Service Growth: Cell-switched MPLS or IP-routed MPLS
White Paper Migration Strategies for IP Service Growth: Cell-switched MPLS or IP-routed MPLS Chuck Semeria Marketing Engineer Juniper Networks, Inc. 1194 North Mathilda Avenue Sunnyvale, CA 94089 USA 408
More informationRewriting Models of Boolean Programs
Rewriting Models of Boolean Programs Javier Esparza University of Stuttgart Joint work with Ahmed Bouajjani Automatic verification using model-checking Initiated in the early 80s in USA and France. 25
More informationEquivalence of NTMs and TMs
Equivalence of NTMs and TMs What is a Turing Machine? Similar to a finite automaton, but with unlimited and unrestricted memory. It uses an infinitely long tape as its memory which can be read from and
More informationSpecifying Syntax COMP360
Specifying Syntax COMP360 The most important thing in the programming language is the name. A language will not succeed without a good name. I have recently invented a very good name and now I am looking
More informationRouting Basics. Routing Concepts. IPv4. IPv4 address format. A day in a life of a router. What does a router do? IPv4 Routing
Routing Concepts IPv4 Routing Routing Basics ISP/IXP Workshops Forwarding Some definitions Policy options Routing Protocols 1 2 IPv4 IPv4 address format Internet uses IPv4 addresses are 32 bits long range
More informationSome Complexity Results for Stateful Network Verification
Some Complexity Results for Stateful Network Verification Yaron Velner 1, Kalev Alpernas 1, Aurojit Panda 2, Alexander Rabinovich 1, Mooly Sagiv 1, Scott Shenker 2, and Sharon Shoham 3 1 Tel Aviv University,
More informationIntroduction to Lexing and Parsing
Introduction to Lexing and Parsing ECE 351: Compilers Jon Eyolfson University of Waterloo June 18, 2012 1 Riddle Me This, Riddle Me That What is a compiler? 1 Riddle Me This, Riddle Me That What is a compiler?
More informationLogic Model Checking
Logic Model Checking Lecture Notes 17:18 Caltech 101b.2 January-March 2005 Course Text: The Spin Model Checker: Primer and Reference Manual Addison-Wesley 2003, ISBN 0-321-22862-6, 608 pgs. checking omega
More informationRegular Languages (14 points) Solution: Problem 1 (6 points) Minimize the following automaton M. Show that the resulting DFA is minimal.
Regular Languages (14 points) Problem 1 (6 points) inimize the following automaton Show that the resulting DFA is minimal. Solution: We apply the State Reduction by Set Partitioning algorithm (särskiljandealgoritmen)
More informationTowards a Logic for Wide-Area Internet Routing
Towards a Logic for Wide-Area Internet Routing Nick Feamster and Hari Balakrishnan M.I.T. Computer Science and Artificial Intelligence Laboratory {feamster,hari}@lcs.mit.edu ; #, $. ', - -, * - ' * 4 *
More information