AGG-NANOG-02-00 1


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

AGG-NANOG-02-00 1

  1. 1. IP Network Traffic Engineering Albert Greenberg Internet and Networking Systems Research Lab AT&T Labs - Research; Florham Park, NJ See (to appear in IEEE Network Magazine, special issue on Internet Traffic Engineering, March 2000). Joint work with Anja Feldmann, Carsten Lund, Nick Reingold and Jennifer Rexford.
  2. 2. IP Network Traffic Engineering <ul><li>Goal? In operational IP networks, improve performance and make more efficient use of network resources, by better matching the resources with traffic demands </li></ul><ul><li>How? By integrating </li></ul><ul><ul><li>traffic measurement </li></ul></ul><ul><ul><li>network modeling </li></ul></ul><ul><ul><li>selection and configuration of network management and control mechanisms. </li></ul></ul><ul><li>Time Scale? Tens of minutes, hours, days, … </li></ul><ul><li>Applications? </li></ul><ul><ul><li>Troubleshooting performance problems. </li></ul></ul><ul><ul><ul><li>Why is this link congested? </li></ul></ul></ul><ul><ul><li>Incremental load balancing </li></ul></ul><ul><ul><ul><li>How to tune intradomain (OSPF, IS-IS) routing weights, or interdomain (BGP) import policies? </li></ul></ul></ul><ul><ul><li>Capacity planning and optimization </li></ul></ul><ul><ul><ul><li>How to estimate facilities cost from forecasted demands and optimal design? </li></ul></ul></ul><ul><li>Focus of this talk: ISP backbone networks </li></ul><ul><li>(See framework draft of new IETF, Traffic Engineering Working Group) </li></ul>
  3. 3. Traffic Engineering in IP Networks <ul><li>Topology </li></ul><ul><ul><li>Connectivity and capacity of routers and links </li></ul></ul><ul><li>Demands </li></ul><ul><ul><li>Expected load between points in the network </li></ul></ul><ul><li>Routing </li></ul><ul><ul><li>Tunable rules for selecting a path for each traffic flow </li></ul></ul><ul><li>Performance objective </li></ul><ul><ul><li>Balanced load, low latency, service level agreements, … </li></ul></ul><ul><li>Question: Given the topology and traffic demands in an IP network, how do you decide which routes to use? </li></ul>
  4. 4. Short Answer? <ul><li>The desired detailed, up to date, network-wide views of the topology are unavailable </li></ul><ul><li>The prevailing traffic demands are unknown </li></ul><ul><li>The network doesn’t adapt path selection to the load </li></ul><ul><li>The static routes aren’t necessarily optimized to the traffic </li></ul><ul><li>These challenges arise because IP networks are </li></ul><ul><li>Decentralized </li></ul><ul><li>Self-configuring </li></ul><ul><li>Connectionless </li></ul><ul><li>Operating in loose confederation with peers </li></ul><ul><li>Attributes that contributed to success and dominance of IP </li></ul>
  5. 5. Example: Congested Link <ul><li>Detecting that a link is congested </li></ul><ul><ul><li>Utilization statistics every five minutes from SNMP </li></ul></ul><ul><ul><li>Active probes suffer degraded performance </li></ul></ul><ul><ul><li>Customers complain </li></ul></ul><ul><li>Reasons why the link might be congested </li></ul><ul><ul><li>Increase in demand between some set of source-destination pairs </li></ul></ul><ul><ul><li>Failed router/link in our network causes change in our routes </li></ul></ul><ul><ul><li>Failure or policy change in another ISP changes traffic flow </li></ul></ul><ul><li>How to determine why the link is congested? </li></ul><ul><li>How to relieve the congestion on the link? </li></ul>
  6. 6. Long Answer! <ul><li>Derive topology from network configuration information </li></ul><ul><li>Compute traffic demands from edge measurements </li></ul><ul><li>Model path selection achieved by IP routing protocols </li></ul><ul><li>Build a query and visualization environment for “what-if” analysis </li></ul>Measurements Configuration Information Model Reporting Configuration Debugging Provisioning Capacity Planning Network Evolution Performance Debugging
  7. 7. Toolkit Architecture Analysis/Visualization Routing Model Info Model Configuration Measurements Important to separate models from methods and data used to populate models
  8. 8. Configuration <ul><li>Information </li></ul><ul><ul><li>Backbone topology, link capacities, and router locations </li></ul></ul><ul><ul><li>Layer 2 and layer 3 links (e.g., ATM PVCs) </li></ul></ul><ul><ul><li>Intra-domain and inter-domain routing (e.g., OSPF weights) </li></ul></ul><ul><ul><li>Customer location and IP addresses; external IP addresses </li></ul></ul><ul><ul><li>Administrative policies, conventions </li></ul></ul><ul><li>Construct </li></ul><ul><ul><li>Unified views of the network topology, and of customer and peer reachability </li></ul></ul><ul><ul><li>Main sources: router configuration files, forwarding tables </li></ul></ul>
  9. 9. Measurements <ul><li>Performance statistics </li></ul><ul><ul><li>Impact of traffic demands on the network </li></ul></ul><ul><ul><ul><li>delay, loss, throughput from active probes between edge systems </li></ul></ul></ul><ul><ul><ul><li>Utilization, loss statistics from passive monitoring of links, nodes </li></ul></ul></ul><ul><ul><li>Mapping of statistics onto the network topology </li></ul></ul><ul><li>Traffic Demands </li></ul><ul><ul><li>An accurate view of the demands themselves is extremely useful for effective traffic engineering </li></ul></ul><ul><ul><li>A large fraction of the traffic is interdomain, and a large number of customers are multihomed </li></ul></ul><ul><ul><ul><li>Model traffic demands as loads from an edge interface to a set of candidate edge interfaces </li></ul></ul></ul>
  10. 10. Information Model <ul><li>Abstraction of IP networks </li></ul><ul><ul><li>Different views </li></ul></ul><ul><ul><ul><li>router complexes, router, physical (layer 2), abstract (for routing) </li></ul></ul></ul><ul><ul><li>Objects representing </li></ul></ul><ul><ul><ul><li>routers, links, and traffic demands </li></ul></ul></ul><ul><ul><li>Methods for manipulating objects </li></ul></ul><ul><ul><ul><li>finding and selection of objects </li></ul></ul></ul><ul><ul><ul><li>linkage of objects, e.g., router complexes to routers </li></ul></ul></ul><ul><ul><ul><li>statistics: histogram, tables, etc. </li></ul></ul></ul><ul><li>Salient features </li></ul><ul><ul><li>Captures important global network properties </li></ul></ul><ul><ul><li>Supports routing simulation (e.g., change of OSPF weights) </li></ul></ul><ul><ul><li>Trade off between accuracy and simplicity of model </li></ul></ul>
  11. 11. Visualization of Link Utilization and Delay in Backbone Utilization (from passive measurement): link color ( high to low ) Delay (from active probes): link width ( high to low )
  12. 12. Routing Model <ul><li>Capture: selection of shortest paths to/from (multihomed) customers and peers; splitting of traffic across multiple shortest paths; multiplexing of layer 3 links over layer 2 trunks </li></ul>access links Backbone peering links X 1 X 4 X 3 X 2 Y 1 Y 2 Y 3 Y 4 Y 5
  13. 13. Routing Model (continued) <ul><li>Intradomain (OSPF) routing emulator </li></ul><ul><ul><li>Extract backbone topology and link weights </li></ul></ul><ul><ul><li>Compute all shortest paths (Dijkstra’s algorithm) </li></ul></ul><ul><ul><li>Split load evenly along all shortest paths </li></ul></ul><ul><ul><li>Emulates Cisco-style use of multiple routes </li></ul></ul>0.5 0.5 0.5 0.5 0.25 0.25 0.25 0.25 1.0 1.0
  14. 14. Visualization of Traffic Flow in Backbone Color/size of node: proportional to traffic to this router ( high to low ) Color/size of link: proportional to traffic carried ( high to low )
  15. 15. Systems <ul><li>Configuration </li></ul><ul><ul><li>construction of network topology: layer 2, 3 connectivity, capacity, OSPF weights, customer and peer IP addresses, router locations </li></ul></ul><ul><li>Measurements </li></ul><ul><ul><li>Performance (active – delay, loss, throughput; passive – link and node utilization) </li></ul></ul><ul><ul><li>Traffic demands </li></ul></ul><ul><li>Information model </li></ul><ul><ul><li>physical level, IP level, router-complex level, abstract level </li></ul></ul><ul><ul><li>router attributes, link attributes </li></ul></ul><ul><li>Routing model </li></ul><ul><ul><li>shortest-path routing, OSPF tie-break, multi-homing, interdomain routing </li></ul></ul><ul><ul><li>bookkeeping to accumulate traffic load on each link </li></ul></ul><ul><li>Visualization/analysis environment </li></ul><ul><ul><li>querying to subselect links and nodes; histograms; what-if capabilities </li></ul></ul><ul><ul><li>coloring and sizing to illustrate link and node statistics </li></ul></ul>
  16. 16. Key Ideas <ul><li>data (configuration, routing, measurement) | models (topology, demands, routing) | analysis </li></ul><ul><ul><li>Generate accurate global views of the network, and provide mechanisms to infer network-wide implications of changes in traffic, configuration and control </li></ul></ul><ul><ul><li>Architecture—separate systems for measurement, models, methods to populate models, analysis </li></ul></ul><ul><ul><ul><li>Can and must evolve with change to underlying infrastructure and network architecture </li></ul></ul></ul><ul><ul><li>Interfaces for modules above </li></ul></ul><ul><ul><ul><li>E.g., design and optimization (e.g., Bernard Fortz and Mikkel Thorup, &quot;Internet Traffic Engineering by Optimizing OSPF Weights,&quot; Proc. IEEE INFOCOM, March 2000. ) </li></ul></ul></ul><ul><li>… | (informed) provisioning and reconfiguration </li></ul><ul><ul><li>Closing the loop… </li></ul></ul><ul><ul><li>Improving performance and making more efficient use of network resources </li></ul></ul>