Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Andrew Stone -- Colorado State University Slide 1 Andrew Stone, Michelle Strout, Steven DiBenedetto, and Daniel Massey December 5, 2009 FRACTAL Workshop."— Presentation transcript:

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

2 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 1 1 3 3 2 2 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: 4 4 4 To 1: 2 To 2: 2 To 3: 3 Andrew Stone -- Colorado State University Slide 2

3 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

4 Nodes = autonomous systems Edges = connections Edge labels describe the connection and influence policy 1 1 4 4 3 3 6 6 2 2 5 5 7 7 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

5 Nodes propagate routes to neighbors. Neighbors update their routing tables based on the propagated information. 3 3 1 1 2 2 4 4 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.

6 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. 3 3 1 1 2 2 4 4 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

7 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 3 3 1 1 2 2 4 4 c r p p p r r c Andrew Stone -- Colorado State University Slide 7

8 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

9 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

10 Map files list the edges in the network graph and the policies (labels) that are on those edges. 1 1 3 3 2 2 5 5 4 4 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

11 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

12 Andrew Stone -- Colorado State University Slide 12

13 Andrew Stone -- Colorado State University Slide 13

14 Andrew Stone -- Colorado State University Slide 14

15 Andrew Stone -- Colorado State University Slide 15

16 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


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

Similar presentations


Ads by Google