Why Would You Need BGP-LS and PCEP?
My good friend Tiziano Tofoni (the organizer of wonderful autumn seminars in Rome) sent me these questions after attending the BGP-LS and PCEP Deep Dive webinar, starting with:
Are there real use cases for BGP-LS and PCEP? Are they really useful? Personally I do not think they will ever be used by ISP in their (large) networks.
There are some ISPs that actually care about the network utilization on their expensive long-distance links.
A bit of history
When Cisco rolled out the dismal **** called MPLS-TE in IOS release 12.0(5)T (the manual hop-by-hop stuff that had to be configured on the tunnel head-end router), they told me they already had people who took traffic matrix, fit the traffic to best paths and created hop-by-hop tunnels via CLI. As weird as it sounds, people were doing centralized traffic engineering before controllers became popular and Google started talking about it.
Back to traffic engineering
Anyway, you have to have complex network with expensive links to care. You don't need PCEP as long as bandwidth upgrade is cheaper that continuous network optimization (see also: Terastream), or if you have a monopoly so you don't have to care about customer experience
Then there are the applications that everyone talks about and rarely anyone uses like bandwidth calendaring (reserving the bandwidth for fixed amount of time). The only use case I've heard so far were animation companies or movie studios doing huge file transfer (OK, maybe the CERN scientists would be in the same category, but they probably value money more than time).
As for BGP-LS, every time you care about network topology and run OSPF or IS-IS you could use BGP-LS to extract it. You don't need Northstar controller to do it, people are using BGP-LS with OpenDaylight.
And I do not think that a (large) Data Center needs these techniques.
Absolutely not. DC bandwidth is cheaper than QoS, let alone PCEP.
PCEP is - Path Computation Element (PCE) Communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a PCE, or between two PCEs. It is not limited to TE only!
The role of PCEP is to provide bidirectional communication channel between client and server with well defined semantics, negotiated features, etc
We are also extending PCEP to provide a more generic container to trigger an action and/or pass some opaque data, take a look at draft-sivabalan-pce-policy-identifier.
Let's move to SDN world :)
The role of a network (SDN) controller is to take business logic NB and transform it into networking instantiated over variety of SBI's (no, not OF only ;-))
PCE computation result is the product of:
complete topology graph with all the attributes, this is were stateful PCE and BGP-LS come into play with business logic, represented as set of constrains applied to.
It doesn't have to be directly relevant to traditional TE, weather forecast for mW, cost in $$ for a capacity broker, etc
PCEP is a rather good candidate for a SBI, to create/modify an ephemeral state, provide telemetry (reports), many other... This is the reason it has been implemented in ODL day 1
IETF stuff to look up:
RFC5440
draft-sivabalan-pce-policy-identifier
draft-pkd-pce-pcep-yang
draft-ietf-pce-stateful-pce
If you are interested in SR:
draft-ietf-pce-segment-routing
Leg me know if there are any questions
Cheers,
Jeff
As an example, we have done modeling on our network to show how it can be made more efficient using global concurrent optimization, and while it's not mind blowing, there is a difference.
Well, so, could you give some use case examples? I still cant clear see how/why using it and I am very interested in knowing more :)