Thursday, February 01, 2018

Friday, January 19, 2018

SDN Based Traffic Engineering


In my previous post i mention one of WAN SDN use case is Traffic Engineering (TE). This post will reveal what improvement that SDN based TE can offer compared to classical TE.

Classical Traffic Engineering in many WAN network, RSVP based TE is commonly used to accommodate a data path that not following the calculation of routing protocol.
However RSVP-TE also have shortcoming, hence not optimal solution.
  • The CSFP alogrithm contained in oane IGP area.
  • N-Squared, RSVP requires to established complete full mesh LSP between all PE
  • Hold the state of RSVP session in the node, consume more CPU and memory resources
  • Relatively complex control plane, small router could have an issue if it joining a big network.
Although many workaround is provided to overcome the issues mentioned, but it just introduce more complexity inter term of network design as well as operation. Hence all this problem lead the birth of new simpler protocol, Segment Routing.

Segment Routing is tunneling protocol which based on the Source Routing paradigm, the source node know the path to tail-end node, encode the segments (which form the path) in packet header and use OSPF/ISIS extension to carried segment information. 

                               
The segment is encoded as:
  • MPLS label or an ordered list of hops represent by a stack of MPLS labels, similar like regular MPLS data plane.
  • IPv6  address or an ordered list of hops represent by a number of IPv6 addresses in the IPv6 extension header.

We can think a segment as a set of information from ingress PE to dictate how is the packet is going, whether follow the shortest path to node N, follow the shortest path for prefix P, or explicitly define which link/node/ to go node N. The application of Segment Routing for Shortest path application is illustrate below


PE2 advertises Node Segment into IGP (Prefix-SID Sub-TLV Extension to IS-IS/OSPF) then all routers in SR domain install the node segment to PE2 in the MPLS data-plane - a segment is actually an LSP, in this process no LDP or RSVP control-plane involved. Traffic that going from PE1 to PE2, PE1 pushes on node segment {800} and uses shortest IGP path to reach PE2. Active segment is the top of the stack for MPLS, P1 and P2 implement CONTINUE (swap) action in MPLS data-plane, P3 implements NEXT (pop) action. No state held in network with the exception of segment list for tunnel held at PE1. 


For the Traffic Engineering application, the path can be computed either distributed in each router involved along the path - similar like classic RSVP-TE or centralised by external computation engine.

Path Computation Element, One of WAN Controller component is The Path Computation Element (PCE) which has the concept to separates between path computation and path signaling function which will gives operators more control of their networks, adds ability to apply network operator policies, address multi-vendor integration considerations. 

Before PCE can compute the path it has to understand the view network topology to built Traffic-Engineering Database (TED) in which WAN controller can ease this by establishing BGP sessions to one or more router or path computation Client (PCC). Through this sessions PCE receives link-state prefixes via BGP-LS NLRI.

After the network topology can be discovered, WAN Controller can perform path computation and asked routers of the network to established, re-signal or tear-down where Path Computation Element Protocol (PCEP) facilitated this.



All in all, the protocols explained are introduced to addressing the problem space happed in most of WAN network, become a building block for SDN Based Traffic Engineering. Segment Routing, which expected to replace RSVP-TE because its comes with low overhead. And with PCEP, the calculation of path is off-loaded to WAN SDN Controller which in turn can reduce manual path provisioning also provide also the abstraction of network resources hence more complex path calculation objective and constraint can applied easily.