Traffic Engineering Flashcards
What is Traffic Engineering
Process of reconfiguring the network in response to changing traffic loads, to achieve some operational goal
What are key application requirements that traffic eng accounts for
Avoid congested links satisfy applicationrequirements
Link weight allow?
Operators to control the flow of data trough the network
Link weight influences which alogorithm
Shortest path
Way link weight are set in practice
Inversely proportional to capacity, Proportional to propagation delay, Network-wide optimization
3 steps of traffic engineering
Measure, model, control
Input for intradomain TE optimization
Input: Graph G(R, L) R= routers {e: routers}, L = links {e : links}, Ce = capacity of L
Also considered the traffic load matrix Mij
What is the output of intradomain optimization
W = {e: link weights}
How is utilization defined
UL = amount of traffic on the link, CL = capacity, UL/CL is the amount of traffic divided by capacity
Objective of intradomain optimization
Minimize sum of F(UL/CL) I assume they mean find the best parameters to fit an ideal curve (lecture says it is NP-Complete)
Since minimizing the sum of utilizations is NP what is done in practice?
- Change a few link weights, Resistant to failure, Robust to measurement of noise, Minimize number of changes to network
Intradomain routing
Within a domain (e.g. ISP, Campus, data center)
Interdomain routing
Between domains
Interdomain Traffic engineering
Alleviate congestion on edge links, Using new/upgraded edge links, Changing end-to-end paths
What mechanism is used for interdomain traffic engineering
Reconfigure of BGP
Three goals of interdomain TE
Predictability, Limit influence of neighbors, reduce overload of routing changes
How is predictability achieved
Avoid globally visible changes that are broadcast outside of an AS
How is limiting influence of neighbors achieved
Consider neighbors with a similar path length as a group (I guess we used some minimal distance or distance threshold to determine this?)
Can also enforce consistent advertisements
How is reducing overload of routing changes achieved
Group prefixes and move traffic in terms of these prefixes
ECMP
Equal cost multipath
One way to achieve Traffic spliting
The router could have multiple forwarding entries with different next hops
Data center characteristics
- Multi-tenancy (Pro amortization of cost, Con Security, resource isolation) 2. Elastic resources 3. Flexible service management Workload movement migration
What mechanism makes Data center objectives achevable
Virtualization
Data center challenges
Traffic load balancing, Support for virtual machine migration, Power saving, Provisioning, Security
3 layers of historic data center
Access (servers) are below this, Next above this is Aggregation, and then connected to the internet is the Core
Historically data centers used what topology
Layer 3 topology now they use layer 2
What are the benefits of Layer 2
Migration, load balacing
Draw backs for layer2 topology for data centers
Scale
When moving from the bottom to the top of the classic data center topology how much is the increase in traffic?
200X
What is the data center scale problem
every switch must store a forwarding table for every mac address
What is one solution to the data center scale problem?
Group servers together as pods and assign a pseudo mac address to each pod
What problem is faced when dealing with pseudo mac addresses?
Mapping pseudo mac to real mac, Intercepting ARP
How is ARP handled by pseudo MAC?
The switch intercepts the query, sends it to an entity called the fabric manager which returns the pmac
What is the objective of VL2
Abstraction of big L2 switches
Goals of valiant load balacing
1 spread traffic, 2 Locate independance
How does valiant load balancing work?
The traffic is forwarded to a random indirection point (switch) and then forwarded to the correct location
Goals of Jellyfish
High throughput, Incremental expadability
What is Jellyfish’s topology?
Random Regular Graph
In Jellyfish where does the random selection come from?
From a regular graph
What is a regular graph
Each node has same degree
What makes up the graph
switches are nodes
Jellyfish construction formula
i = number of switches, Ki = total ports, ri = ports used to connect to other switches, Ki - ri = ports connected to servers, N = number of racks, N(Ki - ri) servers are supported.
Jellyfish construction algorithm
- Pick a random switch pair with free ports that are not already neighbors, 2. Next join them with a link, 3. Repeat until no other links can be added
What is the capacity increase of Jellyfish
25% more servers
Higher capacity is achieved how?
Shorter paths
Open Question related to Jellyfish
Topology Desigh: How close are random graphs to optimal, What about heterogeneous switches?
System Design: Cabling? Routing?