![Page 1: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/1.jpg)
An Algebraic Approach to Internet RoutingDay 2
Timothy G. Griffin
[email protected] Laboratory
University of Cambridge, UK
School of Mathematical Sciences ColloquiumThe University of Adelaide
23 June, 2011
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 1 / 39
![Page 2: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/2.jpg)
Path Weight with functions on arcs?
For graph G = (V , E), and path p = i1, i2, i3, · · · , ik .
Semiring Path WeightWeight function w : E → S
w(p) = w(i1, i2)⊗ w(i2, i3)⊗ · · · ⊗ w(ik−1, ik ).
How about functions on arcs?Weight function w : E → (S → S)
w(p) = w(i1, i2)(w(i2, i3)(· · ·w(ik−1, ik )(a) · · · )),
where a is some value originated by node ik
How can we make this work?
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 2 / 39
![Page 3: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/3.jpg)
Algebra of Monoid Endomorphisms ([GM08])
A homomorphism is a function that preserves structure. Anendomprhism is a homomorphism mapping a structure to itself.
Let (S, ⊕, 0) be a commutative monoid.
(S, ⊕, F ⊆ S → S, 0, i , ω) is a algebra of monoid endomorphisms(AME) if
∀f ∈ F ∀b, c ∈ S : f (b ⊕ c) = f (b)⊕ f (c)
∀f ∈ F : f (0) = 0∃i ∈ F ∀a ∈ S : i(a) = a∃ω ∈ F ∀a ∈ S : ω(a) = 0
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 3 / 39
![Page 4: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/4.jpg)
Solving (some) equations over a AMEsWe will be interested in solving for x equations of the form
x = f (x)⊕ b
Letf 0 = i
f k+1 = f ◦ f k
and
f (k)(b) = f 0(b) ⊕ f 1(b) ⊕ f 2(b) ⊕ · · · ⊕ f k (b)
f (∗)(b) = f 0(b) ⊕ f 1(b) ⊕ f 2(b) ⊕ · · · ⊕ f k (b)⊕ · · ·
Definition (q stability)
If there exists a q such that for all b f (q)(b) = f (q+1)(b), then f isq-stable. Therefore, f (∗)(b) = f (q)(b).
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 4 / 39
![Page 5: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/5.jpg)
Key result (again)
LemmaIf f is q-stable, then x = f (∗)(b) solves the AME equation
x = f (x) ⊕ b.
Proof: Substitute f (∗)(b) for x to obtain
f (f (∗)(b)) ⊕ b= f (f (q)(b)) ⊕ b= f (f 0(b) ⊕ f 1(b) ⊕ f 2(b) ⊕ · · · ⊕ f q(b)) ⊕ b= f 1(b) ⊕ f 1(b) ⊕ f 2(b) ⊕ · · · ⊕ f q+1(b) ⊕ b= f 0(b)⊕ f 1(b) ⊕ f 1(b) ⊕ f 2(b) ⊕ · · · ⊕ f q+1(b)
= f (q+1)(b)
= f (q)(b)
= f (∗)(b)
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 5 / 39
![Page 6: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/6.jpg)
AME of Matrices
Given an AME S = (S, ⊕, F ), define the semiring of n × n-matricesover S,
Mn(S) = (Mn(S), ⊕, G),
where for A,B ∈Mn(S) we have
(A⊕ B)(i , j) = A(i , j)⊕ B(i , j).
Elements of the set G are represented by n× n matrices of functions inF . That is, each function in G is represented by a matrix A withA(i , j) ∈ F . If B ∈Mn(S) then define A(B) so that
(A(B))(i , j) =⊕∑
1≤q≤n
A(i , q)(B(q, j)).
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 6 / 39
![Page 7: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/7.jpg)
Here we go again...
Path WeightFor graph G = (V , E) with w : E → FThe weight of a path p = i1, i2, i3, · · · , ik is then calculated as
w(p) = w(i1, i2)(w(i2, i3)(· · ·w(ik−1, ik )(ω⊕) · · · )).
adjacency matrix
A(i , j) =
{w(i , j) if (i , j) ∈ E ,ω otherwise
We want to solve equations like these
X = A(X)⊕ B
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 7 / 39
![Page 8: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/8.jpg)
Why do we need Monoid Endomorphisms??
Monoid Endomorphisms can be viewed as semiringsSuppose (S, ⊕, F ) is a monoid of endomorphisms. We can turn it intoa semiring
(F , ⊕̂, ◦)
where (f ⊕̂ g)(a) = f (a)⊕ g(a)
Functions are hard to work with....All algorithms need to check equality over elements of semiring,f = g means ∀a ∈ S : f (a) = g(a),S can be very large, or infinite.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 8 / 39
![Page 9: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/9.jpg)
Convolution Product [GM08]
(S, ⊕, ⊗, 0, 1) a semiring(T , •, 1T ) a monoidF ⊆ T → S (suitably closed)
Construct a semiring (F , ⊕̂, ?)(f ⊕̂ g)(a) = f (a)⊕ g(a)
(f ? g)(a) =⊕
a=b•cf (b)⊗ g(c)
Note : when S is a ring and T is a commutative semigroup, thisconstruction results in a ring called a commutative semigroup ring (R.Gilmer, 1984). Thanks to Snigdhayan Mahanta for pointing this out.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 9 / 39
![Page 10: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/10.jpg)
Lexicographic product of AMEs
(S, ⊕S, F ) ~× (T , ⊕T , G) = (S × T , ⊕S ~×⊕T , F ×G)
Theorem ([Sai70, GG07, Gur08])
D(S ~× T ) ⇐⇒ D(S) ∧ D(T ) ∧ (C(S) ∨ K(T ))
WhereProperty DefinitionD ∀a,b, f : f (a⊕ b) = f (a)⊕ f (b)C ∀a,b, f : f (a) = f (b) =⇒ a = bK ∀a,b, f : f (a) = f (b)
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 10 / 39
![Page 11: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/11.jpg)
Functional Union of AMEs
(S, ⊕, F ) +m (S, ⊕, G) = (S, ⊕, F + G)
Fact
D(S +m T ) ⇐⇒ D(S) ∧ D(T )
WhereProperty DefinitionD ∀a,b, f : f (a⊕ b) = f (a)⊕ f (b)
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 11 / 39
![Page 12: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/12.jpg)
Left and Rightright
right(S,⊕,F ) = (S,⊕, {i})
left
left(S,⊕,F ) = (S,⊕,K (S))
where K (S) represents all constant functions over S. For a ∈ S, definethe function κa(b) = a. Then K (S) = {κa | a ∈ S}.
FactsThe following are always true.
D(right(S))D(left(S)) (assuming ⊕ is idempotent)C(right(S))K(left(S))
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 12 / 39
![Page 13: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/13.jpg)
Scoped Product
SΘT = (S ~× left(T )) +m (right(S) ~× T )
Theorem
D(SΘT ) ⇐⇒ D(S) ∧ D(T ).
Proof.
D(SΘT )
D((S ~× left(T )) +m (right(S) ~× T ))
⇐⇒ D(S ~× left(T )) ∧ D(right(S) ~× T )
⇐⇒ D(S) ∧ D(left(T )) ∧ (C(S) ∨ K(left(T )))
∧ D(right(S)) ∧ D(T ) ∧ (C(right(S)) ∨ K(T ))
⇐⇒ D(S) ∧ D(T )
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 13 / 39
![Page 14: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/14.jpg)
How do we represent functions?
Definition (transforms (indexed functions))A set of transforms (S, L, B) is made up of non-empty sets S and L,and a function
B ∈ L→ (S → S).
We normally write l B s rather than B(l)(s). We can think of l ∈ L asthe index for a function fl(s) = l B s, so (S, L, B) represents the set offunction F = {fl | l ∈ L}.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 14 / 39
![Page 15: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/15.jpg)
Example 3 : mildly abstract description of BGP’sASPATHs
Let apaths(X ) = (E(Σ∗) ∪ {∞}, Σ× Σ, B) where
E(Σ∗) = finite, elementary sequences over Σ (no repeats)(m, n) B ∞ = ∞
(m, n) B l =
{n · l (if m 6∈ n · l)∞ (otherwise)
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 15 / 39
![Page 16: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/16.jpg)
Minimal Sets
Definition (Min-sets)Suppose that (S, .) is a pre-ordered set. Let A ⊆ S be finite. Define
min.(A) ≡ {a ∈ A | ∀b ∈ A : ¬(b < a)}
P(S, .) ≡ {A ⊆ S | A is finite and min.(A) = A}
Definition (Min-Set Semigroup)Suppose that (S, .) is a pre-ordered set. Then
P∪min(S, .) = (P(S, .), ⊕.min)
is the semigroup where
A ⊕.min B ≡ min.(A ∪ B).
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 16 / 39
![Page 17: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/17.jpg)
Min-Set-Map construction
DefinitionSuppose that S = (S, ., F ) a routing algebra in the style ofSobrinho [Sob03, Sob05]. Then
minsetmap(S) ≡ (P(S, .), ⊕.min, F.
min)
where F.min = {gf | f ∈ F} and
gf (A) ≡ min.({f (a) | a ∈ A}).
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 17 / 39
![Page 18: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/18.jpg)
Let’s turn to BGP MED’s — First, hot potato
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 18 / 39
![Page 19: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/19.jpg)
Cold Potato
The (4) represents a MED value.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 19 / 39
![Page 20: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/20.jpg)
The System MED-EVIL [MGWR02, Sys].
The values (0) and (1) represent MED values sent by AS 4. The othervalues are IGP link weights.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 20 / 39
![Page 21: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/21.jpg)
Best route selection at nodes A and B.
rC , rD and rE denote routes received from routers C, D, and E,respectivelyA receives route rE through route reflector BB receives routes rC and rD through route reflector A
u S BGP best of S at u due toA {rC , rD} rD IGPA {rD, rE} rE MEDA {rE , rC} rC IGPA {rC , rD, rE} rC MED, IGPB {rD, rE} rE MEDB {rE , rC} rC IGP
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 21 / 39
![Page 22: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/22.jpg)
There is not stable routing!
Assume A always has routes rC and rD, so only two cases:A knows the routes {rC , rD, rE} and so selects rC . This impliesthat B has chosen rE , and this is a contradiction, since B wouldhave {rE , rC} and select rC .A has only {rC , rD} and selects rD. Since A does not learn a routefrom B, we know that B must have selected rC . This is acontradiction since B would learn rD from A and then pick rE .
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 22 / 39
![Page 23: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/23.jpg)
What’s going on with MED?
Assume MEDs are represented by pairs of the form (a, m), wherea is an ASN and m is an integer metric.The partial order on MEDs is defined as
(α1, m) .M (α2, n) ≡ α1 = α2 ∧m . n.
We can think abstractly of BGP routes as elements of
(P, .P) ~× (M, .M) ~× (S, .S),
where (P, .P) represents the prefix of attributes consideredbefore MED, and (S, .S) represents the suffix of attributesconsidered after MED.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 23 / 39
![Page 24: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/24.jpg)
What is going on?
Suppose that we have the lexicographic product,
(A, .A) ~× (B, .B) ≡ (A× B,.),
and that W is a finite subset of A× B. We would like to exploreefficient (and correct) methods for computing the min-set min.(W ).
Let ∼A and ∼B be the preorders on A and B for which all elementsare related.
Pipeline methodWe say the pipeline method is correct when
min.A~×.B
(W ) = min∼A~×.B
( min.A~×∼B
(W )).
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 24 / 39
![Page 25: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/25.jpg)
PipelineClaimThe pipeline method is correct if and only if no two elements of B arestrictly ordered, or no two elements of A are incomparable.
Proof : For the the interesting direction, suppose that A does containtwo elements a1 and a2 with a1 ] a2, and B does contain two elementsb1 and b2 with b1 <B b2. Then
min.A~×.B
{(a1,b1), (a2,b2)} = {(a1,b1), (a2,b2)}
but
minωA×.B
( min.A×ωB
{(a1,b1), (a2,b2)})
= minωA×.B
{(a1,b1), (a2,b2)}
={(a1,b1)}.
So the pipelined decision process does work when we are dealingexclusively with total pre-orders. However, it fails to give all of correctresults when we move to general pre-orders.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 25 / 39
![Page 26: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/26.jpg)
Can we generalize the min-set constructions?
Pathfinding through CongruencesAlexander J. T. Gurney, Timothy G. Griffin12th International Conference on Relational and Algebraic
Methods in Computer Science (RAMiCS 12)June 2011
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 26 / 39
![Page 27: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/27.jpg)
Semigroup congruence
An equivalence relation ∼ on semigroup (S,⊕) is a congruence if
a ∼ b =⇒ (a⊕ c) ∼ (b ⊕ c) ∧ (c ⊕ a) ∼ (c ⊕ b)
(S/∼,⊕∼) is a semigroup
[a]⊕∼ [b] = [a⊕ b]
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 27 / 39
![Page 28: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/28.jpg)
Reductions [Won79]
If (S,⊕) is a semigroup and r is a function from S to S, then r is areduction if for all a and b in S
1 r(a) = r(r(a))
2 r(a⊕ b) = r(r(a)⊕ b) = r(a⊕ r(b))
For monoids the first axioms is not needed since r(a⊕ 0) = r(r(a)⊕ 0)from the second axiom.Similarly, the second axiom can be simplified to a single equality in thecase of a commutative semigroup.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 28 / 39
![Page 29: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/29.jpg)
Reductions on Semirings
A function on a semiring is called a reduction if it is a reduction withrespect to both of the semiring operations.Similarly, a reduction on a semigroup transform (S,⊕,F ) is a function rfrom S to itself, such that r is a reduction on (S,⊕) and
r(f (a)) = r(f (r(a))) (1)
for all a in S and f in F .
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 29 / 39
![Page 30: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/30.jpg)
Lemma
For any reduction r on (S,⊕), define a relation ∼r on S by
a ∼r b def⇐⇒ r(a) = r(b).
This ∼r is a congruence.
Proof.This is obviously an equivalence relation. To prove that it is acongruence, suppose that a ∼r b, so that r(a) = r(b). Then
r(a⊕ c) = r(r(a)⊕ c) = r(r(b)⊕ c) = r(b ⊕ c)
and likewise for r(c ⊕ a) = r(c ⊕ b). Hence ∼r is indeed acongruence.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 30 / 39
![Page 31: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/31.jpg)
Lemma
Let (S,⊕) be a semigroup, ∼ a congruence, and ρ\ the natural map. Ifθ : S/∼ −→ S is such that ρ\ ◦ θ = id, then θ ◦ ρ\ is a reduction; and ∼is equal to ∼θ◦ρ\ .
We can represent any reduction r as a pair (∼, θ)
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 31 / 39
![Page 32: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/32.jpg)
Specifically, for a given (S,⊕,F ) and reduction r : S −→ S we candefine the quotient S/r as follows.
1 The carrier consists of r -equivalence classes of elements of S; wecan choose the canonical representative of each class to be afixed point of r .
2 The semigroup operation is given by ρ\(a)⊕/r ρ\(b) = ρ\(a⊕ b).3 The functions in F are lifted: f (ρ\(a)) = ρ\(f (a)).
This can be verified to be a semigroup transform. The minsetconstruction is clearly a special case, where r is min, S is a set of sets,and ⊕ is set union.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 32 / 39
![Page 33: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/33.jpg)
Modeling Path Errors?
The same node is visited more than once.The path is intended to be filtered out.The path violates known economic relationships betweennetworks.The path is too long (exceeding a maximum size for routingannouncements).The origin is unexpected (given neighbours are only anticipated toadvertise certain addresses).Route data is otherwise malformed.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 33 / 39
![Page 34: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/34.jpg)
Only Simple Paths
S~×P(S,≤,F ) be an order transform for encoding the path weights.P be the algebra of paths (N∗,�,C), where p � q if and only if| p |≤| q |, and C consists of functions cn for all n in N, whichconcatenate the node n onto the given path.
Bad paths B ⊆ S × N∗
B ≡ {(s,p) ∈ S × N∗ | p is not simple} .
A reduction over subsets of S × N∗
r(A)def= min(A \ E); (2)
where min uses the lexicographic order on S × N∗.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 34 / 39
![Page 35: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/35.jpg)
The construction...
A semigroup transform can be constructed wherethe elements are those subsets of S ×N∗ which are fixed points ofr ;the operation ⊕ is given by A⊕ B def
= r(A ∪ B); andthe functions are pairs (f , cn) for f in F , where
(f , cn)(A)def= r({(f (s), cn(p)) | (s,p) ∈ A}).
It can be seen that this algebra implements the simple paths criterionin the case of multipath routing: if during the course of computation anon-simple path is computed, it and its associated S-value will beremoved from the candidate set.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 35 / 39
![Page 36: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/36.jpg)
Bibliography I
[GG07] A. J. T. Gurney and T. G. Griffin.Lexicographic products in metarouting.In Proc. Inter. Conf. on Network Protocols, October 2007.
[GM08] M. Gondran and M. Minoux.Graphs, Dioids, and Semirings : New Models andAlgorithms.Springer, 2008.
[Gur08] Alexander Gurney.Designing routing algebras with meta-languages.Thesis in progress, 2008.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 36 / 39
![Page 37: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/37.jpg)
Bibliography II
[MGWR02] D. McPherson, V. Gill, D. Walton, and A. Retana.BGP persistent route oscillation condition.Internet Draftdraft-ietf-idr-route-oscillation-01.txt ,Work In Progress, 2002.
[Sai70] Tôru Saitô.Note on the lexicographic product of ordered semigroups.Proceedings of the Japan Academy, 46(5):413–416, 1970.
[Sob03] Joao Luis Sobrinho.Network routing with path vector protocols: Theory andapplications.In Proc. ACM SIGCOMM, September 2003.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 37 / 39
![Page 38: An Algebraic Approach to Internet Routing Day 2 · An Algebraic Approach to Internet Routing Day 2 Timothy G. Griffin timothy.griffin@cl.cam.ac.uk Computer Laboratory University](https://reader036.vdocuments.us/reader036/viewer/2022070616/5d1b76b088c993dc468ce4be/html5/thumbnails/38.jpg)
Bibliography III
[Sob05] Joao Luis Sobrinho.An algebraic theory of dynamic network routing.IEEE/ACM Transactions on Networking, 13(5):1160–1173,October 2005.
[Sys] Cisco Systems.Endless BGP convergence problem in Cisco IOS softwarereleases.Field Note, October 10 2001,http://www.cisco.com/warp/public/770/fn12942.html.
[Won79] Ahnont Wongseelashote.Semirings and path spaces.Discrete Mathematics, 26(1):55–78, 1979.
T. Griffin (cl.cam.ac.uk) An Algebraic Approach to Internet Routing Day 2 T.G.Griffin c©2011 38 / 39