Andrew Stone -- Colorado State University Slide 1 Andrew Stone, Michelle Strout, Steven DiBenedetto, and Daniel Massey December 5, 2009 FRACTAL Workshop.

Slides:



Advertisements
Similar presentations
ABSTRACT Due to the Internets sheer size, complexity, and various routing policies, it is difficult if not impossible to locate the causes of large volumes.
Advertisements

Price Of Anarchy: Routing
Chapter 4 Distributed Bellman-Ford Routing
CSC 600 Internetworking with TCP/IP Unit 6a: IP Routing and Exterior Routing Protocols (Ch. 14, 15) Dr. Cheer-Sun Yang Spring 2001.
© 2007 Cisco Systems, Inc. All rights reserved.ICND2 v1.0—3-1 Medium-Sized Routed Network Construction Reviewing Routing Operations.
Visualization of Mobile Agents Project Update Ken Deeter CPSC 533C.
1 Tutorial 5 Safe “Peering Backup” Routing With BGP Based on:
Practical and Configuration issues of BGP and Policy routing Cameron Harvey Simon Fraser University.
1 Policy Disputes in Path-Vector Protocols A Safe Path-Vector Protocol Zacharopoulos Dimitris
Tutorial 5 Safe Routing With BGP Based on: Internet.
Internet Networking Spring 2004 Tutorial 5 Safe “Peering Backup” Routing With BGP.
Improving BGP Convergence Through Consistency Assertions Dan Pei, Lan Wang, Lixia Zhang UCLA Xiaoliang Zhao, Daniel Massey, Allison Mankin, USC/ISI S.
The Border Gateway Protocol (BGP) Sharad Jaiswal.
Slide -1- February, 2006 Interdomain Routing Gordon Wilfong Distinguished Member of Technical Staff Algorithms Research Department Mathematical and Algorithmic.
CMPE 80N - Introduction to Networks and the Internet 1 CMPE 80N Winter 2004 Lecture 13 Introduction to Networks and the Internet.
Shortest path algorithm. Introduction 4 The graphs we have seen so far have edges that are unweighted. 4 Many graph situations involve weighted edges.
Interdomain Routing Establish routes between autonomous systems (ASes). Currently done with the Border Gateway Protocol (BGP). AT&T Qwest Comcast Verizon.
Wireless Sensor Network for Tracking the Traffic in INTERNET Network Routers Part 2 Supervisor:Mark Shifrin Students:Yuri Kipnis Nir Bar-Or Date:30 September.
© 2006 Cisco Systems, Inc. All rights reserved. Implementing Secure Converged Wide Area Networks (ISCW) Module 4: Frame Mode MPLS Implementation.
Routing.
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—6-1 Connecting an Enterprise Network to an ISP Network Considering the Advantages of Using BGP.
Routing Protocol Pertemuan 21 Matakuliah: H0484/Jaringan Komputer Tahun: 2007.
Relating Two Formal Models of Path-Vector Routing March 15, 2005: IEEE INFOCOM, Miami, Florida Aaron D. Jaggard Tulane University Vijay.
Stevenson and Ozgur First Edition Introduction to Management Science with Spreadsheets McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies,
WAN Technologies.
A Lightweight Infrastructure for Graph Analytics Donald Nguyen Andrew Lenharth and Keshav Pingali The University of Texas at Austin.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Routing in the Internet Internal Routing Protocols.
ROUTING ON THE INTERNET COSC Aug-15. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
Computer Networks Layering and Routing Dina Katabi
Delivery, Forwarding and
CECS 474 Computer Network Interoperability WAN Technologies & Routing
Towards a Logic for Wide- Area Internet Routing Nick Feamster Hari Balakrishnan.
Routing and Routing Protocols Dynamic Routing Overview.
Lecture 8 Page 1 Advanced Network Security Review of Networking Basics: Internet Architecture, Routing, and Naming Advanced Network Security Peter Reiher.
1 Introducing Routing 1. Dynamic routing - information is learned from other routers, and routing protocols adjust routes automatically. 2. Static routing.
M.Menelaou CCNA2 ROUTING. M.Menelaou ROUTING Routing is the process that a router uses to forward packets toward the destination network. A router makes.
WAN technologies and routing Packet switches and store and forward Hierarchical addresses, routing and routing tables Routing table computation Example.
1 Routing. 2 Routing is the act of deciding how each individual datagram finds its way through the multiple different paths to its destination. Routing.
Lecture 4: BGP Presentations Lab information H/W update.
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
Example: Sorting on Distributed Computing Environment Apr 20,
1 Internet Routing. 2 Terminology Forwarding –Refers to datagram transfer –Performed by host or router –Uses routing table Routing –Refers to propagation.
Border Gateway Protocol (BGP) W.lilakiatsakun. BGP Basics (1) BGP is the protocol which is used to make core routing decisions on the Internet It involves.
© 2015 Mohamed Samir YouTube channel All rights reserved. Samir Agenda Instructor introduction 1. Introduction toEldarin 2.
1 University of California, Irvine Done By : Ala Khalifeh (Note : Not Presented)
Topics Paths and Circuits (11.2) A B C D E F G.
Introducing a New Concept in Networking Fluid Networking S. Wood Nov Copyright 2006 Modern Systems Research.
COS 420 Day 15. Agenda Finish Individualized Project Presentations on Thrusday Have Grading sheets to me by Friday Group Project Discussion Goals & Timelines.
ITI-510 Computer Networks ITI 510 – Computer Networks Meeting 3 Rutgers University Internet Institute Instructor: Chris Uriarte.
(How the routers’ tables are filled in)
Routing Protocols Brandon Wagner.
Mix networks with restricted routes PET 2003 Mix Networks with Restricted Routes George Danezis University of Cambridge Computer Laboratory Privacy Enhancing.
Succinct Analysis Specification with Automatic May/Must Determination The DFAGEN Tool Slide 1 SCAM 2008 Conference September 29 th Andrew Stone, Michelle.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
TensorFlow– A system for large-scale machine learning
CMPT 371 Data Communications and Networking Routing in the Internet
(How the routers’ tables are filled in)
COS 561: Advanced Computer Networks
State your reasons or how to keep proofs while optimizing code
Net 323 D: Networks Protocols
© 2002, Cisco Systems, Inc. All rights reserved.
Routing.
Metarouting (SIGCOMM 2005) T. G. Griffin and J. L. Sobrinho
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
BGP Instability Jennifer Rexford
Computer Networks Protocols
Routing.
Presentation transcript:

Andrew Stone -- Colorado State University Slide 1 Andrew Stone, Michelle Strout, Steven DiBenedetto, and Daniel Massey December 5, 2009 FRACTAL Workshop Colorado State University

People who create/research networks are interested in the routing problem. Particularly they want to know: - how policy affects routing tables - how topology affects routing tables Especially interested on large scale networks (10k – 100k nodes) Policies today are more complicated than they used to be. No longer just shortest path. ISPs consider economic factors. Solution: Create a routing simulator that can solve what routing tables converge to when there are different policies and topologies We’ve created such a Simulator: Mr. Sim To 1: 1 To 2: 1 To 4: 4 To 2: 2 To 3: 3 To 4: 2 To 1: 1 To 3: 1 To 4: To 1: 2 To 2: 2 To 3: 3 Andrew Stone -- Colorado State University Slide 2

This talk is all about a programming model for writing routing policies We use this model in our simulator. Specifically I’ll talk about: How our simulator models a network How policies are modeled How topologies are modeled What performance issues are there with simulation and how do we overcome these Metarouting is a technique to formalize routing policies There is an analogy to be drawn between data-flow analysis and metarouting (MR has something similar to a meet and transfer function) Data-flow analysis has lattice theoretic frameworks Metarouting has routing algebras For data-flow analysis people have built implementation frameworks In Mr. Sim we attempt to do the same for metarouting. What I'll talk about: what a routing simulation looks like how routing algebras are formalized how our implementation framework is used to specify policies Andrew Stone -- Colorado State University Slide 3

Nodes = autonomous systems Edges = connections Edge labels describe the connection and influence policy Examples of connections c: customer connection r: peer connection p: provider connection p p p p p p ccc c cc r r Andrew Stone -- Colorado State University Slide 4

Nodes propagate routes to neighbors. Neighbors update their routing tables based on the propagated information c r p p p r r c DestNhSig 11C Hey 4, I’ve got this route to 1 DestNhSig 1?? Great, I’ll update my table to include that. The sig changes to R though. DestNhSig 12R DestNhSig 11R Andrew Stone -- Colorado State University Slide 5 A route is: (destination, next-hop, signature) = {C, R, P} L = {c, r, p} Signature determines how C < R < P preferred a route is smaller is more preferred.

A route is: (destination, next-hop, signature) = {C, R, P} L = {c, r, p} Signature determines how C < R < P preferred a route is smaller is more preferred. When a route is propagated it is compared against any existing routes to the same destination. The table is only updated if the new route is more preferred than the current one c r p p p r r c DestNhSig 1?? DestNhSig 12R DestNhSig 11R Hey 4, do you want to use this route to 1? No way, the route that way will have a signature of P! I’ll keep what I’ve got. Andrew Stone -- Colorado State University Slide 6 DestNhSig 11C

In our example: Routes are assigned some signature (C, R, P, or ϕ). Edges have some label (c, r, or p). When propagating a new route, the signature is updated using the label operator. The label operator is a function: (signature) X (label) -> (signature) CRPϕ cCϕϕϕ rRRϕϕ pPPPϕ old signature label c r p p p r r c Andrew Stone -- Colorado State University Slide 7

Set of possible signatures Preference relation (partial ordering of sigs) Set of possible labels Label operator Originator set (possible signatures initial routes can have) Routing algebras can be composed. It’s been shown that if certain properties of the algebra hold convergence is guaranteed. Specifically that the operator is strictly monotonic. Andrew Stone -- Colorado State University Slide 8

The framework includes the following abstract classes: Signature Label PreferenceRelation LabelOperator NetworkReader Algebra Algebra is passed a PreferenceRelation, LabelOperator, and NetworkReader Mr. Sim model’s routing algebras in a C++ framework. Users override these classes to define various properties of the algebra. Andrew Stone -- Colorado State University Slide 9

Map files list the edges in the network graph and the policies (labels) that are on those edges p p p p cc cc r r SimpleNet.map 1 2 c 2 1 p 1 3 c 3 1 p 2 3 r 3 2 r 2 4 c 4 2 p 2 5 c 5 2 p Andrew Stone -- Colorado State University Slide 10

Doing all all-routes simulation on an internet- scale graph uses an enormous amount of memory. O(n^2) me requirement for tables. Swapping kills performance, so this is not a feasible way to solve the routing problem. First just find routes to these nodes: Then find routes to these nodes: networkmemory usage 1k nodes.8 GB 10k nodes6.88 GB 30k nodescould not test internet (33k nodes) could not test Due to how we model the routing problem it is possible to do a set of simulations that each only solve the problem for a set of routes. Andrew Stone -- Colorado State University Slide 11

Andrew Stone -- Colorado State University Slide 12

Andrew Stone -- Colorado State University Slide 13

Andrew Stone -- Colorado State University Slide 14

Andrew Stone -- Colorado State University Slide 15

What we have: A C++ library framework for writing routing algebras A way to do lexical compositions of routing algebras A simulator that can perform the simulation in a segmented fashion Future work adding parallelization and studying how we can improve performance further. Our Goal: To make it feasible to do an overnight simulation of an large scale (10k-100k) graph with a handful of machines. We have this for a simple policy, we need to look at more complex ones. Andrew Stone -- Colorado State University Slide 16