2008.02.20 NANOG 42 Morpheus, flexible interdomain routing
Two more sets of notes to go. :) Matt 2008.02.20 Morpheus, enabling flexible interdomain routing policies Yi Wang, Princeton, along with Ioannis and Jennifer. 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 destinations 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 performance. 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' Morpheus 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 information. 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 modules. 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 parallel 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 yiwang@cs.princeton.edu Q: Todd asks how you have upstream routers making decisions based on differences in source information? A: Goal is to use different tunnels for different 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? A: It's a typical distributed system; every server 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? A: No, not proprietary, more like using BGP AddPath extension, and use BGP as the framework for it.
participants (1)
-
Matthew Petach