Fat PW Loadbalancing.
http://www.ietf.org/internet-drafts/draft-bryant-filsfils-fat-pw-00.txt
Authors:- Stewart Bryant, Cisco Systems- Clarence Filsfils, Cisco Systems- Ulrich Drafz, T-Com- Wilfried Maas, T-Systems- Joerg Kuechemann, T-Com
11/26/2007 3Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Fat PW Loadbalancing.Outline
• Problem Statement
• Solution Space
•Deep Packet Inspection
•Loadbalancing Label
•PW Label Range
• Changes
• Conclusion
11/26/2007 4Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Fat PW Loadbalancing.Problem Statement
1GBit/sec 1GBit/sec
2.5
GBit/se
c
2.5
GBit/se
c2.5 GBit/sec
2.5 GBit/sec
Data Flow
3
3
44
51
4242• Result of Hash
Algorithm will be always the same Thus Pseudo
Wires may lead to undesirable asymetric load
• Customers Traffic bound to PW Label 4242• Transport Label is chosen by Hash Algorithm
Hash = F{Loopback, PW-Label}
11/26/2007 5Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Fat PW Loadbalancing.Deep Packet Inspection
• DPI with PW is a difficult thing to do - if at all possible•The ´0000´ in first nibble does not mean IP so P routers have no clue what to make of the packet
• And if it was possible it would need a huge amount of computation power at all participating P and PE devices
11/26/2007 6Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Fat PW Loadbalancing.PW Label Range
1GBit/sec 1GBit/sec
2.5
GBit/se
c
2.5
GBit/se
c2.5 GBit/sec
2.5 GBit/sec
Traffic
3
3
44
51
4242
• Result of Hash Algorithm will be a Function of chosen PW-Label
• Customers Traffic bound to PW Label (4242...4243) which needs to be chosen at the Edge• Transport Label is chosen by Hash Algorithm
Hash = F{Loopback, PW-Label}
In Real World Implementations a Label Range of 8 – 16 Labels might be enough
424
3
11/26/2007 7Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Traffic
Ethernet IP (Payload)
MPLSLDP
Ethernet IP (Payload)L2Eth/Pos
Ethernet IP (Payload)L2Eth/Pos
Ethernet IP (Payload)
Primary HashVPWSVPLS
MPLS-PHPPop of LDP Label
Multiple Pseudwire Labels (Range needs to be defined)
Hash
HashVPWSVPLS
CE
PE
P
PE
CE
Fat PW Loadbalancing.PW Label Range
MPLSPW
MPLSPW
11/26/2007 8Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
•LB Label is chosen out of 2^20 for each flow identified by the Edge Device
Fat PW Loadbalancing.Load Balancing Label
1GBit/sec 1GBit/sec
2.5
GBit/se
c
2.5
GBit/se
c2.5 GBit/sec
2.5 GBit/sec
Data Flow
3
3
44
51
PW:4242
LB:1566
•Result of Hash Algorithm will be a Function of PW-Label and LB Label
•Customers Traffic bound to PW Label 4242
Hash = F{Loopback, LB Label, PW-Label}
In Real World Implementations a LB Label Space of smaller then 2^20 might still be good enough ;-)
PW:4
242
LB:2
022
11/26/2007 9Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Traffic
Ethernet IP (Payload)
MPLSLDP
MPLSPW
Ethernet IP (Payload)L2Eth/Pos
MPLSPW
Ethernet IP (Payload)L2Eth/Pos
Ethernet IP (Payload)
Hash (primary)
MPLS-PHPPop of LDP
Label
multiple LB Labels (potentially 2^20)
MPLSLB Label
MPLSLB Label
Hash
Hash
VPWSVPLS
VPWSVPLS
CE
PE
P
PE
CE
Fat PW Loadbalancing.Load Balancing Label
11/26/2007 10Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
• New TLVs for Pseudowire signaling• Label Block TLV (definition of Label Block)• LB Label TLV (LB Label is present)
• Per hop behavior needs only be changed at PEs
• PWE Signaling • Forwarding (ingress and egress)
Fat PW Loadbalancing.Needed Changes
11/26/2007 11Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Fat PW Loadbalancing.Conclusion
• We feel that we have a problem and need to get at least one solution
• So far as we can see there are two feasible solutions:•Label Range Solution
•Probably easy to implement and good enough to solve the current problem
•Changes only needed at the Edge •Load Balancing Label
•More generic solution and therefore the better one
•Changes only needed at the Edge
11/26/2007 12Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
Fat PW Loadbalancing.Further Steps
• Both approaches do not interwork with each other
•Shall we persue both in the same draft?•Shall we persue both in different drafts?•Shall we choose one?
•Our preference would be the Load Balancing Label but for the sake of backward compatibility we would be content with Label Block as well
11/26/2007 15Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
L2 ECMP for Pseudo Wire based ServicesProblem and Solution
PE-2B
PP
PP
Labelbinding
Traffic
PE-1
BB=Routerwithout L2 Flow detection for ECMP
CE
LDP 50
PW 30
PW 30
VPWSVPLS
Service
VPWSVPLS
Service
CE
LDP 60
PW 30
PHPNo LDP Label
PE-2A
PP
PP
Labelbinding
Traffic
PE-1
AA=Router with L2 Flow detection for ECMP
CE
LDP 50 LDP
50
LDP 51 LDP
51
VPWSVPLS
Service
VPWSVPLS
Service
CE
LDP 60
LDP 60 LDP
61
LDP 61
PHPNo LDP Label
Traffic can only use one path through the Network
In the Future the traffic
should se all ECMP paths through the
network
LDP 60Transport Label Pseudovire and Flow Label(s) Pseudovire path
11/26/2007 16Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
L2-ECMP ProposalFilter and Hash definition for VPLS/VPWS (simple use case)
Filtering and hashing function must become part of the VPWS/VPLS application at the PE. At the VPLS ingress PE all traffic is Ethernet traffic.
Number of VLAN Headers could be 0, 1 or 2
Filtering should only be don on IP-Version: 4 Protocol is IPv4
Hashing must be done on the IP-Address in the VPLS/VPWS Payload
11/26/2007 17Joerg Kuechemann (T-Com) & Wilfried Maas (T-Systems)
L2-ECMP ProposalFilter and Hash definition for VPLS/VPWS (complex use case)
Filtering and hashing function must become part of the VPWS/VPLS application at the PE. At the VPLS ingress PE all traffic is Ethernet traffic.
Number of VLAN Headers could be 0, 1 or 2
MPLS (Carriers Carrier) with up to two labels could be present
Filtering should only be don on IP-Version: 4 Protocol is IPv4
Hashing must be done on the IP-Address in the VPLS/VPWS Payload