Subject: RE: [PWE3] Re: Issues with draft-kompella-ppvpn-vpls-01.txt

From: Ali Sajassi <[email-masked]>
Date: Mon, 14 Apr 2003 11:33:42 -0700

Hamid,

In case of RFC2547 that you are giving as an example of using BGP for 
delivery of MPLS label, it was done for a different PW type. RFC 2547 uses 
multipoint signaling mechanism for the setup of MPtP PW; whereas, for VPLS 
we are talking about using a multipoint signaling to setup PtP PW which 
frankly doesn't make sense to me. Also, we shouldn't use the argument that 
if in the past we have developed multiple standards for doing the same 
thing, we should keep doing it in the future.

-Ali

At 01:37 PM 4/14/2003 -0400, Hamid Ould-Brahim wrote:

>Ali,
>
>[clipped...]
>
> >
> > That is not a good analogy. MPLS and IP are two different
> > technologies;
> > however, within the same MPLS technology having two different
> > ways of doing
> > the same thing is at best redundant and at worst useless.
> >
>
>Maybe a good analogy (within the same MPLS technology)
>is to look at the existence of multiple ways of distributing
>MPLS label that includes the use of BGP (and even RFC3031
>captured that:
>
>"THE ARCHITECTURE DOES NOT ASSUME THAT THERE IS ONLY A SINGLE LABEL
>    DISTRIBUTION PROTOCOL.  In fact, a number of different label
>    distribution protocols are being standardized.  Existing protocols
>    have been extended so that label distribution can be piggybacked on
>    them (see, e.g., [MPLS-BGP], [MPLS-RSVP-TUNNELS]).  New protocols
>    have also been defined for the explicit purpose of distributing
>    labels (see, e.g., [MPLS-LDP], [MPLS-CR-LDP].").
>
>Although one may conclude that having multiple ways of
>distributing labels can be redundant, I don't think it was useless
>(since later on such approach - of using BGP - was useful
>in rfc2547).
>
>Hamid.
>
>
>
>

---

From: "Ju, Yu" <[email-masked]>
Date: Thu, 17 Apr 2003 18:53:49 -0400

Kireeti/Eric,

I understand that the pupose of label block is to determine from which PE
(or more precisely CE-id) the packet come from for MAC learning purpose. If
for some reason a label our of a label block is not available any more, a
label, say 1001, used by CE-id 5 may be used by CE-id 9 according to the
algorithm in the draft. As a result, this may trigger some changes.

What do you think about the following?

BGP advertises a single label for a L2VPN NRLI to all PEs along with the
CE-id. When a PE tunnels a L2 packet through MPLS, it push three labels
instead of two. The top is the LSP label, the second is the label advertised
by BGP, and the bottom label is the CE-id. This way, the receiving PE can
infer from the label it advertised that there is going to be another bottom
label which is the CE-id. From the CE-id, the PE knows which PE the packet
come from. 

Thanks,

Yu

-----Original Message-----
From: Kireeti Kompella [mailto:[email-masked]]
Sent: Thursday, April 17, 2003 4:48 PM
To: Eric Rosen
Cc: Mourad BERKANE; [email-masked]
Subject: Re: [PWE3] Re: Issues with draft-kompella-ppvpn-vpls-01.txt

On Thu, 17 Apr 2003, Eric Rosen wrote:

> Mourad> If a  vendor could explain me  how using 2  differents protocols
for
> Mourad> Control Plane (signaling and  auto-discovery) will be more
efficient
> Mourad> (technical  argumentations please and  not philosophical  ones)
than
> Mourad> when using only one protocol (MP-BGP).
>
> I don't  know why the one  who explains this needs  to be a  vendor ;-),
but
> there are a large number of inefficiences in using BGP for the signaling.
>
> Suppose that 100 PEs participate in a particular VPLS, and suppose that
PE17
> has some information to signal to PE43.
>
> With point-to-point  signaling, PE17 sends  a message to PE43,  PE43
replies
> (if necessary), and we're done.

Sure.  N*(N-1) is small when N = 2.

> With BGP-based signaling, PE17 sends a message to the route reflector,
which
> then  resends it to  PEs 1-16,  and PEs  18-99.  So  instead of  sending
one
> message, you  send 100.   Ninety-eight of the  PEs that receive  the
message
> will parse it and find it irrelevant. Efficient?

Excuse me, but are you not an author of rfc2547bis and
draft-ietf-ppvpn-bgpvpn-auto-03.txt?

In both of the above, you send 100 messages to all the PEs, even if the
only other member of the VPN is PE43.

So, for a more accurate picture (since BGP is *not* only for signaling),
PE17 sends a message to the route reflector, saying essentially, "I'm
in VPN foo, and btw, these are the labels to use".  The RR then sends
100 messages to all other PEs.  Most of these PEs ignore the message
(they are not part of VPLS foo); the ones who are find out, with one
message, that PE17 is part of VPLS foo, and which labels to use.

Summary: one NLRI per PE per VPLS.

Efficient?

With BGP+LDP, the flow would be: PE17 sends a message to the route
reflector, saying essentially, "I'm in VPN foo" (no labels).  The RR
then sends 100 messages to all other PEs.  Most of these PEs ignore
the message (they are not part of VPLS foo); the ones who are find
out that PE17 is part of VPLS foo.

So far, not much difference -- except: no labels.  Now, the PEs who
are in VPLS foo must kick off a separate interaction -- a new LDP
session if needed, and new messages for the exchange of labels.  And
each PE in VPLS foo must do this independently.

Summary: one NLRI per PE per VPLS plus N*(N-1) LDP label exchanges
per VPLS with N members.

Efficient?  Certainly when N = 2.

As for the "label block hack", sure, call it a hack, that should scare
people away -- argumentum ad hominem always works.

Efficient block allocation is a solved problem.  Ask anyone who does
memory management, or any number of allocation problems.

> To  get the  best  use out  of  the label  block hack,  it  is advisable
to
> overprovision, so  that all  the PEs which  are on-line allocate  in
advance
> label space  for PEs that are  not yet on-line.  Now  you're wasting
labels;
> each wasted label  corresponds to a real piece of high  speed memory in
your
> forwarding  engine, i.e.,  this is  real  resources being  wasted, not
just
> "numbers".  E.g.,  each wasted  label is  one less L3VPN  route that  can
be
> supported.  Efficient?

You certainly can do it this way.  We don't.  As for "wasting" labels,
it amazes me that a vendor that allocates individual labels for each IP
VPN prefix from the same PE keeps harping on this.

To give credit where credit is due, the idea of using BGP for both
auto-discovery and signaling came from RFC 2547.  I thought this was
clear; but I'll state it for the record.  The one issue was that for
IP VPNs, a single label per site suffices; for VPLS, you need several.
Hence label blocks.

Kireeti.

---

From: Mourad BERKANE <[email-masked]>
Date: Fri, 18 Apr 2003 12:07:24 +0200

Hi Eric,

Eric> Suppose that 100 PEs participate in a particular VPLS, and suppose
that
Eric> PE17 has some information to PE43.

Mourad> Assuming that VPLS is a broadcast domain, when a PE (PE17) need to
Mourad> seed an information to another PE only (PE43) and will not to
sharing this control information
Mourad> to other PEs registered in this VPLS domain
(PE1-PE16,PE18-PE42,PE44-PE100)?

Mourad> Your supposition is not applicable to VPLS applications, isn't it?
Mourad> A topology with 2 PEs routers only is not what i call a broadcast
domain, your reflexion may
Mourad> refer to a Hub and Spoke architecture (different import/export route
target values) which i think
Mourad> is not applicable to VPLS. Do you share this view?
Mourad> Furthermore a CE site could be members of N differents VPLS domain,
he could share restricted infos
Mourad> in VPLS A (PE17,PE43 only) and could be member of another less
restricted VPLS domain B (PE1-PE100).

Thanks & Best Regards,
Mourad

-----Message d'origine-----
De : Eric Rosen [mailto:[email-masked]]
Envoyé : jeudi 17 avril 2003 19:29
À : Mourad BERKANE
Cc : [email-masked]
Objet : Re: [PWE3] Re: Issues with draft-kompella-ppvpn-vpls-01.txt 

Mourad> If a  vendor could explain me  how using 2  differents protocols for
Mourad> Control Plane (signaling and  auto-discovery) will be more efficient
Mourad> (technical  argumentations please and  not philosophical  ones) than
Mourad> when using only one protocol (MP-BGP). 

I don't  know why the one  who explains this needs  to be a  vendor ;-), but
there are a large number of inefficiences in using BGP for the signaling. 

Suppose that 100 PEs participate in a particular VPLS, and suppose that PE17
has some information to signal to PE43. 

With point-to-point  signaling, PE17 sends  a message to PE43,  PE43 replies
(if necessary), and we're done. 

With BGP-based signaling, PE17 sends a message to the route reflector, which
then  resends it to  PEs 1-16,  and PEs  18-99.  So  instead of  sending one
message, you  send 100.   Ninety-eight of the  PEs that receive  the message
will parse it and find it irrelevant. Efficient?