On Sep 25, 2012:10:51 PM, at 10:51 PM, Aldrin Isaac <[email protected]> 
wrote:

> Although a common messaging layer is useful, the messaging protocol is just a 
> means of transporting application specific data between the AUTHORITY and the 
> NVE.  There might be some room to define "objects" (say a common schema for 
> encapsulation with sub schema for a each specific encapsulation -- ex: label 
> stacking in MPLS) but it must be the application that should define the 
> overall schema/contents of the messages that are exchanged for it's purpose.  
> Let's be careful not to call or treat the messaging part an "application".
> 
> Additionally there are plenty of things that are available with BGP that 
> would need to be available as part of the "common capabilities" of a common 
> control-plane message layer including capabilities such as graceful restart 
> (purge or keep state if CP session is lost and for how long), keep-alive/BFD, 
> etc.  I hope folks on this list are careful not to disregard (or even worse, 
> to not know) what many years of control-plane engineering have produced in 
> the IETF.
> 
> Best regards -- aldrin

        And also to that end, we should note that we are working on such a 
"minimum capabilities" appendix section in the next revision of the draft. 

        --Tom


> 
> 
> 
> On Tuesday, September 25, 2012, Sunny Rajagopalan wrote:
> Hi, Aldrin 
> I agree & share your thoughts below. I picked XMPP just because it seems to 
> be the one most talked about here, any messaging format that is open will do. 
> 
> Note that something similar happens today in PE routers - the control plane 
> is usually running on a separate CPU from the forwarding plane, but the 
> messaging between the two is proprietary. Making the messaging format open 
> allows for the control plane to be implemented in different ways depending on 
> the scenario. This is important because in some networks it might make sense 
> to have a directory-based name resolution, and BGP based end location 
> distribution would make sense in others. As you pointed out, these two could 
> even co-exist, (for example if you run one application over the short haul 
> and another over the long haul). In such a hybrid application scenario,  the 
> directory could talk to both,  local NVEs and  the BGP route reflectors using 
> XMPP, with the directory being the entity that uploads endpoint information 
> into the BGP route reflector. 
> 
> To take this one step further, if you define the messaging [XMPP] format 
> generically, you should be able to use the encapsulation method of your 
> choice (MPLS, NVGRE, VXLAN) as well. This gives us a system with a completely 
> decoupled control and forwarding plane. 
> -- 
> Sunny 
> 
> 
> 
> 
> From:        Aldrin Isaac <[email protected]> 
> To:        Sunny Rajagopalan/Santa Clara/IBM@IBMUS, 
> Cc:        "NAPIERALA, MARIA H" <[email protected]>, Thomas Nadeau 
> <[email protected]>, Yakov Rekhter <[email protected]>, "[email protected]" 
> <[email protected]>, Thomas Nadeau <[email protected]>, "Stiliadis, Dimitrios 
> (Dimitri)" <[email protected]>, [email protected] 
> Date:        09/25/2012 08:54 AM 
> Subject:        Re: [nvo3] BGP + XMPP (was Re: 
> draft-drake-nvo3-evpn-control-plane) 
> 
> 
> 
> Hi Sunny,
> 
> Although I don't see any reason why BGP cannot be implemented on an
> NVE (hypervisor, ToR, etc), I'm beginning to see why something other
> than BGP might be an appropriate choice for transporting
> network-control data to/from the NVE.  The idea of
> NVE<->MESSAGING<->AUTHORITY where MESSAGING is standardized and
> AUTHORITY can take different forms might indeed be a useful
> decoupling.  It would probably be appropriate to spend a few cycles to
> determine if XMPP is the best choice among available messaging options
> (ex: AMQP).
> 
> Once we get past the choice of a common messaging transport, IMHO we
> need to be talking a lot more (more sooner than later) about the
> network as a set of one or more distributed applications (might be
> centralized under one NVO3 domain, but distributed across multiple).
> For a distributed application, the AUTHORITY is essentially the sum of
> the application instances in that NVO3 domain.  This point is being
> raised by others but doesn't seem to have "clicked".  In this view of
> things, E-VPN, RFC 4364, etc would be considered "applications".  The
> operator can choose one or more of these.  The difference between this
> notion and what is proposed by others (SDN, openflow, etc) is that the
> IETF standardizes applications as well in addition to data-plane
> formats, etc.  This ensures that operators will have choice to select
> a particular implementation of an application (versus a proprietary
> application).
> 
> Taking this a little further using E-VPN as an example -- generally
> E-VPN is thought of as being an application that is implemented in a
> distributed manner at NVE/PE, however there is no rule that says it
> can't be implemented in a centralized or hybrid (ex: semi-distributed)
> manner (as Maria points out).  For example, an E-VPN application
> running on a centralized server can implement all the procedures
> specified in draft-ietf-l2vpn-evpn on behalf of NVE and either
> distribute the resulting forwarding rules to NVE (ex: using openflow
> over XMPP, etc) or make the results available for on-demand lookup
> (directory mode) by slightly more intelligent NVE.  The rules of how
> to construct E-VPN L2 VN, however, should remain the same regardless
> of whether it's implemented in a distributed, centralized or hybrid
> fashion.  In this model, it makes more sense to define a provisioning
> schema per application (versus a generic all-encompassing schema) --
> in E-VPN the provisioning schema would outline import/export RT and
> the schema would need to be defined as part of the specification of
> the application (as well as schema for other application specific
> data).
> 
> At a data-plane level, NVE that support the E-VPN application should
> support certain data-plane constructs as specified in
> draft-ietf-l2vpn-evpn such that it is possible for E-VPN instances on
> NVE under other AUTHORITY to send frames directly to it (ex: to
> maximize network utilization) or otherwise the local AUTHORITY might
> direct other AUTHORITY toward interconnecting gateways.  Likewise for
> other applications.
> 
> Best regards -- aldrin
> 
> 
> P.S.    I'm using AUTHORITY here as I am still struggling with the term 
> ORACLE.
> 
> 
> 
> On Mon, Sep 24, 2012 at 1:22 PM, Sunny Rajagopalan
> <[email protected]> wrote:
> > I strongly agree with this. XMPP is a query format, not a routing protocol,
> > and is better suited for hypervisor implementations. NVE implementations in
> > hypervisors will find supporting xmpp easy - its just a query format for
> > them, without substantial compute or memory requirements.
> > I prefer the approach in draft-marques-l3vpn-end-system, where NVEs talk to
> > route servers using XMPP, and the router servers act as BGP route reflectors
> > and are tasked with peering with other BGP instances. This approach has a
> > couple of advantages:
> > 1) It reduces the memory and compute requirements of hypervisor NVEs.
> > 2) It makes it easier to replace NVE<->XMPP<->BGP with
> > NVE<->XMPP<->Directory, if needed for certain implementations.
> >
> > Note that BGP goes away only on the NVE; the rest of the network could still
> > possibly run BGP to exchange end point information.
> >
> > The way I read it, draft-drake-nvo3-evpn-control-plane will still work fine
> > if you do NVE<->XMPP<->BGP[EVPN]. However, I would like to see this called
> > out in the draft.
> > --
> > Sunny
> >
> >
> >
> >
> > From:        "NAPIERALA, MARIA H" <[email protected]>

_______________________________________________
nvo3 mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/nvo3

Reply via email to