Métaroutage
description
Transcript of Métaroutage
![Page 2: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/2.jpg)
Tutorial Outline• Motivation : shortage of routing protocols• Review of Metarouting paper [GS_MR]• Open problems
– Expressive power of “abstract metalanguage”– User-oriented languages– Compilation – Forwarding– Other applications? MANET routing.
![Page 3: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/3.jpg)
Architecture of Dynamic Routing
AS 1
AS 2
EGP (= BGP)
EGP = Exterior Gateway Protocol
IGP = Interior Gateway Protocol
Metric based: OSPF, IS-IS, RIP, EIGRP (cisco)
Policy based: BGP
The Routing Domain of BGP is the entire Internet
IGP
IGP
![Page 4: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/4.jpg)
• Topology information is flooded within the routing domain
• Best end-to-end paths are computed locally at each router.
• Best end-to-end paths determine next-hops.
• Based on minimizing some notion of distance
• Works only if policy is shared and uniform
• Examples: OSPF, IS-IS
• Each router knows little about network topology
• Only best next-hops are chosen by each router for each destination network.
• Best end-to-end paths result from composition of all next-hop choices
• Does not require any notion of distance
• Does not require uniform policies at all routers
• Examples: RIP, BGP
Link State Vectoring
Technology of Distributed Routing
![Page 5: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/5.jpg)
The Gang of FourLink State Vectoring
EGP
IGP
BGP
RIPIS-IS
OSPF
BGP !!
![Page 6: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/6.jpg)
The Joy of Interdomain Routing
A
B
CRBNet
AT&T
Cable & Wireless
CAIS
Above Net
Telefonica
A = HP Palo Alto
B =Intel Berkeley
C =Moscow State U A
B
C257 ms
201 ms4 ms
![Page 7: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/7.jpg)
http://www.larrysface.com/
![Page 8: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/8.jpg)
The Problem• Small number of routing protocols• Design, implementation, deployment,
standardization long, slow process• BGP is being pressed into service as an IGP
– No convergence guarantees– BGP Wedgies (RFC 4264)
• Endless stream of BGP extensions– Cost Communities– Use of BGP for VPN routing (RFC 2547)
![Page 9: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/9.jpg)
What is a BGP Wedgie? [RFC 4264]• BGP policies make sense locally• Interaction of local policies allows
multiple stable routings• Some routings are consistent with
intended policies, and some are not– If an unintended routing is installed (BGP is
“wedged”), then manual intervention is needed to change to an intended routing
• When an unintended routing is installed, no single group of network operators has enough knowledge to debug the problem
The halfwedgie
The fullwedgie
![Page 10: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/10.jpg)
Half Wedgie Example
• AS 1 implements backup link by sending AS 2 a “depref me” community.
• AS 2 implements this community so that the resulting local pref is below that of routes from it’s upstream provider (AS 3 routes)
AS 1
AS 2
AS 3 AS 4
customer
provider
peer peer
provider
customer
customer
providerbackup link
primary link
![Page 11: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/11.jpg)
And the Routings are…
AS 1
AS 2
AS 3 AS 4
Intended Routing
AS 1
AS 2
AS 3 AS 4
Unintended RoutingNote: This is easy to reach from the intended routing just by “bouncing”the BGP session on the primary link.
Note: this would be the ONLY routing if AS2 translated its “depref me” community to a “depref me” community of AS 3
![Page 12: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/12.jpg)
Recovery
AS 1
AS 2
AS 3 AS 4
AS 1
AS 2
AS 3 AS 4
AS 1
AS 2
AS 3 AS 4
Bring down AS 1-2 session Bring it back up!
• Requires manual intervention
• Can be done in AS 1 or AS 2
![Page 13: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/13.jpg)
What the heck is going on?
• There is no guarantee that a BGP configuration has a unique routing solution. – When multiple solutions exist, the (unpredictable) order of updates
will determine which one is wins.
• There is no guarantee that a BGP configuration has any solution!– And checking configurations NP-Complete– Lab demonstrations of BGP configs never converging
• Complex policies (weights, communities setting preferences, and so on) increase chances of routing anomalies.– … yet this is the current trend!
![Page 14: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/14.jpg)
Load Balancing Example
primary link for prefix P1backup link for prefix P2
AS 1
AS 2
AS 3 AS 4
provider
peer peer
provider
customer
AS 5customer
primary link for prefix P2backup link for prefix P1
Simple session reset my not work!!
![Page 15: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/15.jpg)
Can’t un-wedge with session resets!
1
2
3 4
5
1
2
3 4
5
1
2
3 4
5
1
2
3 4
5
1
2
3 4
5
1—2 down 1—5 down
1—2 up 1—5 up
P2wedged
P1wedged
INTENDED
Reset 1—2 Reset 1—5
1
2
3 4
5
BOTHP1 & P2wedged
1—2 & 1—5 down
1
2
3 4
5
1
2
3 4
5
1—2 & 1—5 down
all up all up
Note that when bringingall up we could actually landthe system in any one of the 4 stable states --- dependson message order….
![Page 16: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/16.jpg)
Recovery
1
2
3 4
5
1
2
3 4
5
1
2
3 4
5
1
2
3 4
5
1
2
3 4
5
1—2 down 1—5 down
1—2 up 1—5 up
P2wedged
P1wedged
INTENDED
Temporarilyfilter P2 from 1—5 session
Temporarilyfilter P1 from 1—2 session
Who among us could figure this one out? When 1—2 is in New York and 1—5 is in Tokyo?
![Page 17: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/17.jpg)
AS 1
AS 2
AS 3 AS 4
customer
provider
peer peer
provider
customer
customer
provider
primary link
Full Wedgie Example
AS 5
backup links
• AS 1 implements backup links by sending AS 2 and AS 5 a “depref me” communities.
• AS 2 implements its community so that the resulting local pref is below that of its upstream providers and it’s peers (AS 3 and AS 5 routes)
• AS 5 implements its community so that the resulting local pref is below its peers (AS 2) but above that of its providers (AS 3)
customer
peer peer
![Page 18: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/18.jpg)
And the Routings are…
AS 1
AS 2
AS 3 AS 4
AS 5
AS 1
AS 2
AS 3 AS 4
AS 5
Intended Routing Unintended Routing
![Page 19: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/19.jpg)
Resetting 1—2 does not help!!
AS 1
AS 2
AS 3 AS 4
AS 5
AS 1
AS 2
AS 3 AS 4
AS 5
Bring down AS 1-2 session
Bring up AS 1-2 session
![Page 20: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/20.jpg)
Recovery
AS 1
AS 2
AS 3 AS 4
AS 5
AS 1
AS 2
AS 3 AS 4
AS 5
Bring down AS 1-2 sessionAND AS 1-5 session
AS 1
AS 2
AS 3 AS 4
AS 5
A lot of “non-local” knowledge is required to arrive at this recovery strategy!
Try to convince AS 5 and AS 1 that their session has be reset (or filtered) even though it is not associated with an active route!
Bring up AS 1-2 sessionAND AS 1-5 session
![Page 21: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/21.jpg)
That Can’t happen in MY network!!
AU++
APEMEA
LA
NA
An “normal” global global backbone (ISP or Corporate Intranet) implemented with 5 regional ASes
![Page 22: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/22.jpg)
The Full Wedgie Example, in a new Guise
AU
EMEA
NA AP
LA
Intended Routing for some prefixes in AU,implementedwith communities.
DOES THIS LOOK FAMILIAR??
Message: Same problems can arisewith “traffic engineering” acrossregional networks.
![Page 23: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/23.jpg)
The Problem• Small number of routing protocols• Design, implementation, deployment,
standardization long, slow process• BGP is being pressed into service as an IGP
– No convergence guarantees– BGP Wedgies (RFC 4264)
• Endless stream of BGP extensions– Cost Communities– Use of BGP for VPN routing (RFC 2547)
![Page 24: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/24.jpg)
Is there a Betterer way?
![Page 25: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/25.jpg)
Metarouting= Let Operators Decide
• We don't know how to define generic IGPs for every network ----let the operators decide.
• We don't know how to define IBGPs for every network ---let the operators decide.
• We don't know how to fix EBGP or how to evolve it for changing requirements ---let the operators decide.
• Operators can decide, if only they are given the right tools.
![Page 26: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/26.jpg)
Central Dogma
• How routes are described
• How routes are compared
• How policy is described
• How policy is applied
Routing Protocol = Routing language + Routing Algorithms + Proof
• How routing solutions are computed
• How adjacencies are established and maintained
• …
• Does the protocol converge?
• Is resulting forwarding loop-free?
• …
![Page 27: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/27.jpg)
Basic Thesis
• Allow the operator community to define routing languages and routing protocols that fit the needs of their networks (IGPs, IBGPs).
• Allow the operator community to standardize and evolve interdomain routing languages.
Routing languages should not be hard-coded into protocols specifications and implementations.
![Page 28: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/28.jpg)
How?
Routing Protocol = Routing Language + Routing Algorithms + Proof
Define a metalanguage for the specificationof routing languages. This language must be carefully constructedto be highly expressiveness while at the same time allowing the automatic derivation of propertiesrequired for proofs. Standardize the metalanguage (IETF?)
Standardize (IETF) and implement a generic (routing language Independent) set of algorithms such as BGP-like hard state path vector, RIP-like soft-state path-vector, OSPF-like link stateflooding and generalized Dijkstra.
Proofs are automated: simplymatch the derived properties of the metalanguage specification withthe required propertiesof each algorithm used.
LIBERATE NETWORK OPERATORS
FROM THE IETF
![Page 29: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/29.jpg)
Routing Algebras [JS_Alg]
m + nm
n
GeneralizeShortest Paths
![Page 30: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/30.jpg)
Routing Algebras
),,( SA
),( S
)(
An ordered set of signatures
is a set of policy labels
Is the policy applicationfunction
))(( Note : the notations in this tutorial differ a bit from those in [JS_Alg, GS_MR].
![Page 31: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/31.jpg)
Important Properties
Non-decreasing Increasing
(ND)
(IN) )(
Monotonicity (M)
(SI) Strict Monotonicity
![Page 32: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/32.jpg)
What makes these algorithms work?
• Generalized Dijkstra (Think Link State)– Correctness proof uses M, – Loop-freedom for hop-by-hop forwarding uses
IN.
• Generalized Bellman-Ford (Vectoring)– Convergence proof uses IN, – Loop-freedom for hop-by-hop forwarding uses
strict IN
![Page 33: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/33.jpg)
An algebra for OSPF?
(1, )
v
v)
(1, v)
(1, v)
(2, )
(2, v)
(2, v)
v
v)
v v)
v v)
vv vv
vv
<1, …> = intra-area route <2, …> = inter-area route <{1,2}, > = “normal” route
<{1,2}, <1, v>, > = type I external <{1,2}, <2, v>, > = type II external
(hand-coded from careful reading of RFC 2328I’m not sure that it is correct, but that’s not the point….)
![Page 34: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/34.jpg)
Routing Algebras are a good start, but…
• The algebraic framework does not, by itself, provide a way of constructing new and complex algebras.– Algebra definition is hard…– Proofs are tedious…– Modifications to an algebra’s definitions are
difficult to manage…
![Page 35: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/35.jpg)
Routing Algebra Meta-Language
A ::= B (base algebras)
| Op(A) (unary operator)
| A Op A (binary operators)
• “Abstract syntax” for generating new Algebras• Key innovation: automatically derive properties (ND, IN, …) of
the algebra represented by an expression from properties of base algebras and preservation properties of operators
• Other goals – Simplicity– Expressiveness
![Page 36: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/36.jpg)
Some Examples: Lexicographic Product
),,(),,(),,( BABAAABBBAAA SSSS
),( ),( BBAA ),( BA
))()(()(),(),( 2121212211 BAA
![Page 37: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/37.jpg)
Property Preservation with Lex Product
BA
A BND
IN
ND
ND
IN
ND
IN
IN
A BEQ,SM
EQ,SM
M M
SM
BA
nii AAAAA
121
A design pattern:
SM
EQ EQEQ
All at least ND IN Don’t care!
IN
)( EQ
![Page 38: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/38.jpg)
Disjoint Label Union
),,(),,(),,( BLABABBLAA SSS
AA )( Aleft
)( Bright BB
Same order Structure
![Page 39: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/39.jpg)
Disjoint Union : Property Preservation
BA LA BND
IN
ND
IN
ND
ND
IN
IN
ND
ND
ND
IN
BA LA BM
SI
M
SM
M
M
SM
SM
M
M
M
SM
![Page 40: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/40.jpg)
Local Preference, Origin Preference
),,( AAASA
),,()( lAASALP l
)},{,()( rASAOP r(Always ND, M)
),( AAAS
(NOT NICE!)
![Page 41: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/41.jpg)
BGP-like Partition
GPIBEBGPBGP
A
BB
internal external internal
![Page 42: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/42.jpg)
Scoped Product
))(())(( BAOPBLPABA L
),(
),( AA),( Aleft
),( Bright ),( BB
![Page 43: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/43.jpg)
Scoped Product : Property Preservation
BAA BIN
IN
ND
IN
ND
IN
These rules can be automatically derived
![Page 44: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/44.jpg)
Area Product
))(())(( BAOPBOPABA L
),(
),( AA ),( Aleft
),( Bright ),( BB
IntraAreaInterAreaOSPF
![Page 45: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/45.jpg)
Area Product : Property Preservation
BAA BND
IN
ND
IN
ND
IN
These rules can be automatically derived
![Page 46: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/46.jpg)
Current work and Open Problems
• Current prototype implemented in Ocaml– Compilation : generating C code implementation – using Quagga and XORP code base
• Modeling – Forwarding, tunneling – Administrative distance – Protocol interaction– Protocol migration
• Design and implementation of routing metalanguage– Relational algebra vs. SQL
• Novel IGP design and testing • What is the right mathematical setting for the
metalanguage?
![Page 48: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/48.jpg)
Languages for defining Languages
A space of Routing Languages
Routing Languagesthat can be expressedin a fixed meta-language
Question: What is a good formalism for the space of routing languages?
![Page 49: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/49.jpg)
Mind the Gap
Maze Solving (1800’s)
Shortest paths (1950’s)
Semiring routing (1970’s …)
BGP analysis (mid 1990’s present)
Sobrinho’s QoSAlgebra (2002)
Sobrinho’s Routing Algebra (2003)
Metarouting. tgg & Sobrinho (2005)
![Page 50: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/50.jpg)
3 Basic Structures
set ordered-preO
semigroupS F),( S
),( OAntisymmetricTotal Bounded …
commutativeselectivehas identity elementhas absorbtive element …
Blue = optional properties
),( FT has identityclosed under compositionidempotent…
![Page 51: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/51.jpg)
Two Approaches to Path Weight
),(),(),()( 13221 kk iiwiiwiiwpw
1,21 ,,,path kk iiiip
1ki…3i ki2i1i
),( 21 iiw ),( 1kk iiw),( 32 iiwAlgebraic
Functional
))))(((()(21321 ,,, afffpw iiiiii kk
1ki…3i ki2i1i
21 ,iif1, kk ii
f32 ,iif
a
![Page 52: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/52.jpg)
Two Approaches to Path “Selection”
p
)()( qwpw
i jq
AlgebraicOrdered weights
?)()( qwpw
![Page 53: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/53.jpg)
Quadrants Model
),( SS
),( TS ),( TO
),( SO
Bisemigoup Order Semigroup
Semigroup Transforms Order Trasforms
![Page 54: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/54.jpg)
Coverage
Bisemigroup Order Semigroup
Semigroup Tranforms Order Transforms
Vast literature on semiringrouting, starting in 1970’s
Non-commutative structures
Monoid endomporphismsM. Minoux (1976)
Sobrinho Routing Algebras. SIGCOMM 2003.
Sobrinho QoS Algebras. ToN 2002.Ordered Semigroups
![Page 55: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/55.jpg)
CRASH COURSE in Semigroups
),( S
)()(:,, cbacbacba
)(:
is a semigroup
a nonempty set
a binary operation
This operation must be associative:
![Page 56: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/56.jpg)
Semigroup Examples
)},,({ FTB )},,({ FTBBoolean :
Powerset : ),2()( P ),2()(
P
Free semigroup: ),()(free
Projections: )left,()(left )right,()(right
aba left bba right
is concatenation
![Page 57: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/57.jpg)
Some (Optional) PropertiesCommutative (comm):
abbaba :,Idempotent (idem):
Selective (sel):
aaaa :
},{:, bababa
![Page 58: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/58.jpg)
Special Elements (Optional)
bbbb :Neutral element
bbb :
Absorbing element
If it exist, then it is unique.
If it exist, then it is unique.
Note: if , then the semigroup is trivial, }{
![Page 59: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/59.jpg)
Examples revisited
F
Name propertiesB },{ FT T comm idem sel
FB },{ FT T comm idem sel
2)(P
comm idem 2)(P comm idem
)(left left idem
)(right right idem
)(free
sel
sel
![Page 60: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/60.jpg)
More Examples!
}...0{ n min
1
}...0{ n max 0
n
min
max 0]1,0[
]1,0[
]1,0[
Name
1
properties
}{}...0{ n 0
comm idem sel
0
n
)min(n
)max(n
)(plus n
0
0
1
]1,0min[
]1,0max[
]1,0[
comm idem sel
comm idem sel
comm idem sel
comm
comm
![Page 61: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/61.jpg)
Natural Orders
)()( babba R
)()( baaba L
then
If S is a commutative and idempotent,
![Page 62: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/62.jpg)
Examples revisited
F
Name B },{ FT T
FB },{ FT T2)(P
2)(P
)()( babba R
R
TF FT
![Page 63: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/63.jpg)
examples
}...0{ n min
1
}...0{ n max 0
n
min
max 0]1,0[
]1,0[
Name 0
n
)min(n
)max(n
0
1
]1,0min[
]1,0max[
)()( babba R
R
![Page 64: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/64.jpg)
Special Elements
bbbb :Neutral element:
bbb :Absorbing element:
)()( babba R
RR bb :
LL bb ::
)()( baaba L
From
we get
![Page 65: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/65.jpg)
Property Translations
),( ),( S
associative transitive
idempotent reflexive
idempotent and commutative anti-symmetric
reflexive
bounded
selective total
![Page 66: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/66.jpg)
Cayley Maps
),( S
),( LC
),( RC
})(:,|{ abafabfC bbL
})(:,|{ baagabgC bbR
![Page 67: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/67.jpg)
Include mappings in metalanguage …
S
S
T
O
),,( ),,( L
),,( LC )C,,( LL
![Page 68: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/68.jpg)
… and property mappings
S
S
T
O
)( abaa )( aba L
)(afa L)(afaa
![Page 69: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/69.jpg)
Acknowledgements
• John Billings ([email protected])• Alex Gurney ([email protected])• Samuel Hym ([email protected]) • Peter Sewell ([email protected])• Joao Sobrinho ([email protected])
Financial support thanks to
![Page 70: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/70.jpg)
HELP WANTED • 1 Studentship.
3 year PhD. • 2 Post Doc
Research Positions.
![Page 71: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/71.jpg)
Suggested Reading (1)• [JS_QoS]
– "Algebra and Algorithms for QoS Path Computation and Hop-by-Hop Houting in the Internet," João L. Sobrinho. In Proc. IEEE INFOCOM 2001
– "Algebra and Algorithms for QoS Path Computation and Hop-by-Hop Routing in the Internet," João L. Sobrinho. IEEE/ACM Transactions on Networking , pp. 541-550, August 2002.
• [JS_Alg]– “Network Routing with Path Vector Protocols: Theory and
Applications” João L. Sobrinho. SIGCOMM 2003– "An Algebraic Theory of Dynamic Network Routing," João L.
Sobrinho. IEEE/ACM Transactions on Networking, pp. 1160-1173, October 2005.
• [GS_MR]– Metarouting. Griffin & Sobrinho. SIGCOMM 2005.
Metarouting project page: http://www.cl.cam.ac.uk/~tgg22/metarouting
![Page 72: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/72.jpg)
Suggested Reading (2)
• Chapitre 1: Pré-semi-anneaux, semi-anneaux et dioïdes
• Chapitre 2: Propriétés combinatoires des (pré-)semi-anneaux
• Chapitre 3: Topologies des ensembles ordonnés
• Chapitre 4: Résolution de systèmes linéaires dans les dioïdes
• Chapitre 8: Répertoire de (pré)-semi-anneaux et dioïdes
![Page 73: Métaroutage](https://reader035.fdocuments.us/reader035/viewer/2022070404/56813ad2550346895da30379/html5/thumbnails/73.jpg)
END