2008.02.20 NANOG 42 Morpheus, flexible interdomain routing

Two more sets of notes to go. :slight_smile:


2008.02.20 Morpheus, enabling flexible
interdomain routing policies

Yi Wang, Princeton, along with Ioannis and

Goal is to get feedback from operators on
how useful this would be for getting more
usage out of links.

Large ISPs have rich path diversity
top 2% ASes have 10 or more AS paths for many
5-10 router-level paths for many destinations

Different paths have different security levels
prefix/subprefix hijacking is a concern
avoid an undesirable AS on a path for better

today, customers may want different paths;
finance wants security, content wants high
bandwidth, voip wants low latency/jitter.
No "one-size-fits-all"
but today, we just have 'one route fits all'

routing control platform that enables a single
ISP to flexibly pick paths for different customers.

intra-AS routing architecture
it's backward compatible
no changes to the routers

Use separate morpheus servers to pick the best
routes for the routers.
Not all routers have to have full set of

Use MPLS tunnels or IP-in-IP to carry information.

Support for multipath already available
virtual routing and forwarding on Cisco
virtual router on Juniper

Limitations of current BGP attributes
1) overloading of BGP attributes
   localpref used for both business relationships and
   traffic engineering

2) difficult to incorporate side information
   (measurement data, business relationships, registry
    information, history of prefix/origin, route stability)

Inside morpheus server: policy objectives as independent

Each module tags routes in separate spaces
(solves limitation 1)
easy to add side information (solves limitation 2)
different modules can be implemented independently
(eg by third parties) -- evolvability
This way, you can take best from multiple vendors
or third parties and wrap them together.

3) BGP strictly ranks attributes one over the next;
   no way to make tradeoffs between policy objectives

Use weighted sum instead of strict ranking
After a set of classifiers applied, you specify a
weight to see which set of heuristics get used.

Allow for multiple decision processes running in
each with a different set of requirements, and a
different set of weights, resulting in different
path selections.

Prototype implementation in XORP
pipeline of classifier modules

Classifier works very efficiently
total decisiontime graph
Morpheus is faster than the standard BGP decision
process, when there are multiple alternative
routes for a prefix.

Evaluation environment
40 pops, 1 morpheus server in each pop
each morphous server with 240 peers

Morpheus can support a large number of
decision processes in parallel; tested up to
40 DP in parallel.

no threat to stability
only announce non-default routes to stub customers
a significant portion of customers are stubs.

provides a simple, extensible, flexible way for
ISPs to practically control traffic.

He has questions for operators on how they
set weights, and adjust policies for customers,
and how much control they might be willing to
give to customers; send feedback to

Q: Todd asks how you have upstream routers making
decisions based on differences in source information?
customers; so you tunnel to outgoing interfaces
to direct your traffic to where you want it.

Q: Randy Bush, IIJ, after years of trying to get
resiliency over the networks; what happens when
the central server fails? Does it revert back
to normal routing?
has a complete view of your routing information.
Use multiple servers for a given edge router;
so every edge router peers with two different
Morpheus servers.
But what happens when both fail?
The engineers will work hard to bring them back up.
And probability of both failing will be much lower
than if just one fails.

Q: He mentions connections between Morpheus servers;
how is that handled--is it proprietary?
extension, and use BGP as the framework for it.