Re: [nvo3] Suggested additional requirement to be added to "draft-ietf-nvo3-nve-nva-cp-req-00"

Lucy yong <lucy.yong@huawei.com> Tue, 24 September 2013 21:17 UTC

Return-Path: <lucy.yong@huawei.com>
X-Original-To: nvo3@ietfa.amsl.com
Delivered-To: nvo3@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 284BC21F942D for <nvo3@ietfa.amsl.com>; Tue, 24 Sep 2013 14:17:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.983
X-Spam-Level:
X-Spam-Status: No, score=-5.983 tagged_above=-999 required=5 tests=[AWL=-0.385, BAYES_00=-2.599, HTML_MESSAGE=0.001, J_BACKHAIR_33=1, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ImfQ7IfOh+XW for <nvo3@ietfa.amsl.com>; Tue, 24 Sep 2013 14:17:49 -0700 (PDT)
Received: from lhrrgout.huawei.com (lhrrgout.huawei.com [194.213.3.17]) by ietfa.amsl.com (Postfix) with ESMTP id B1E0C21F9BDB for <nvo3@ietf.org>; Tue, 24 Sep 2013 14:17:44 -0700 (PDT)
Received: from 172.18.7.190 (EHLO lhreml204-edg.china.huawei.com) ([172.18.7.190]) by lhrrg01-dlp.huawei.com (MOS 4.3.7-GA FastPath queued) with ESMTP id AYF08639; Tue, 24 Sep 2013 21:17:39 +0000 (GMT)
Received: from LHREML401-HUB.china.huawei.com (10.201.5.240) by lhreml204-edg.china.huawei.com (172.18.7.223) with Microsoft SMTP Server (TLS) id 14.3.146.0; Tue, 24 Sep 2013 22:16:50 +0100
Received: from DFWEML406-HUB.china.huawei.com (10.193.5.131) by lhreml401-hub.china.huawei.com (10.201.5.240) with Microsoft SMTP Server (TLS) id 14.3.146.0; Tue, 24 Sep 2013 22:17:35 +0100
Received: from DFWEML509-MBX.china.huawei.com ([169.254.11.209]) by dfweml406-hub.china.huawei.com ([10.193.5.131]) with mapi id 14.03.0146.000; Tue, 24 Sep 2013 14:17:24 -0700
From: Lucy yong <lucy.yong@huawei.com>
To: Linda Dunbar <linda.dunbar@huawei.com>, "Larry Kreeger (kreeger)" <kreeger@cisco.com>, Thomas Narten <tnarten@us.ibm.com>, "Black, David" <david.black@emc.com>
Thread-Topic: [nvo3] Suggested additional requirement to be added to "draft-ietf-nvo3-nve-nva-cp-req-00"
Thread-Index: Ac62SL4xwwjc8aK2RUKjnHZNKjuTFADIkoOg
Date: Tue, 24 Sep 2013 21:17:23 +0000
Message-ID: <2691CE0099834E4A9C5044EEC662BB9D452D1712@dfweml509-mbx.china.huawei.com>
References: <4A95BA014132FF49AE685FAB4B9F17F645BCD831@dfweml509-mbx.china.huawei.com>
In-Reply-To: <4A95BA014132FF49AE685FAB4B9F17F645BCD831@dfweml509-mbx.china.huawei.com>
Accept-Language: en-US, zh-CN
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.47.138.214]
Content-Type: multipart/alternative; boundary="_000_2691CE0099834E4A9C5044EEC662BB9D452D1712dfweml509mbxchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Cc: "nvo3@ietf.org" <nvo3@ietf.org>
Subject: Re: [nvo3] Suggested additional requirement to be added to "draft-ietf-nvo3-nve-nva-cp-req-00"
X-BeenThere: nvo3@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Network Virtualization Overlays \(NVO3\) Working Group" <nvo3.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nvo3>, <mailto:nvo3-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/nvo3>
List-Post: <mailto:nvo3@ietf.org>
List-Help: <mailto:nvo3-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nvo3>, <mailto:nvo3-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 24 Sep 2013 21:17:54 -0000

Agree. The draft should highlight NVA characteristics as well, which may influence the protocol between NVE and NVA.
Lucy

From: nvo3-bounces@ietf.org [mailto:nvo3-bounces@ietf.org] On Behalf Of Linda Dunbar
Sent: Friday, September 20, 2013 4:31 PM
To: Larry Kreeger (kreeger); Thomas Narten; Black, David
Cc: nvo3@ietf.org
Subject: [nvo3] Suggested additional requirement to be added to "draft-ietf-nvo3-nve-nva-cp-req-00"

Larry, Thomas, and David,
Going through your current "draft-ietf-nvo3-nve-nva-cp-req-00" to enhance our "http://www.ietf.org/id/draft-dunbar-nvo3-nva-gap-analysis-01.txt", I noticed that there are several detailed NVE<->NVA control plane requirement not yet identified in your draft.
Some requirements of TRIL/LISP directory mechanism described in "draft-dunbar-nvo3-nva-gap-analysis" are applicable to NVE<->NVA control plane requirement because TRILL/LISP directory mechanisms are also about distributing "inner-outer" address mapping to edge nodes .
Here are the some suggested additions to the current "draft-ietf-nvo3-nve-nva-cp-req-00", to make the NVE-NVA requirement draft more complete and easier for gap analysis.

1.       The first paragraph of Section 4 describes the characteristics of NVEs. Since this draft is about control plane requirement between NVE and NVA, it is beneficial to add some description for the characteristics of NVAs. Here is my suggested addition after the first paragraph of Section 4:
"NVAs can be centralized or distributed with each NVA holding the mapping information for a subset of VNs. Centralized NVA could have multiple entities for redundancy purpose. A NVA could be instantiated on a server/VM attached to a NVE, very much like a TS attached to a NVE, or could be integrated with a NVE. When a NVA is a standalone server/VM attached to a NVE, it has to be reachable via the attached NVE by other NVEs. A NVA can also be instantiated on a NVE that doesn't have any TSs attached. The NVE-NVA control plane for NVA being attached to NVE will require additional functions on NVEs than NVA being instantiated on NVE."



2.       Section 4 should add the following additional requirement on how NVEs and NVAs discover each others, and which NVA for NVE to send pulling or pushing requests.

*         NVEs requesting for Push Services after restart: In the Push Model, it is necessary to have a way for NVE to request NVAs to start the pushing process, e.g. when the NVE is initialized or re-started.  Or it can be like a routing protocol where it just happens automatically. The request for Push Service from NVE should be VN scoped, i.e. including the range of VNs that are enabled on the NVE.

*         NVAs should advertise their VN-scoped availability to the NVEs who participate in the VN. There could be multiple NVAs, with each having mapping information for a subset of VNs. For each VN, there could be multiple NVAs that have the mapping information.

*         When there are multiple NVAs holding mapping information for a particular VN, a pull request can be sent to any of them that is reachable but it is RECOMMENDED that Pull requests be sent to a NVA that is least cost from the requesting NVE.







3.       Bullet 2 of Section 4:  More detailed requirements are needed when "inner address that NVE doesn't have a mapping for". I suggest adding the following detailed requirement when inner address is not available on the NVE's mapping database:
"If the destination of a data frame arriving at the Ingress NVE can't be found in NVE's inner-outer mapping database, the Ingress NVE should be configured with one or more of the following policies:

*         simply drop the data frame,

*         Using legacy method(s) to forward the data frames to other edges, or

*         start the "pull" process to get information from Pull NVA
When the edge is waiting for reply from Pull process, the edge can either drop or queue the packet."



4.       Section 4 Bullet 3 has requirement on "fast detection/update of stale cache". It would be clearer to add additional requirement on incremental update in Push Model. Here is the proposed text for "Incremental update"



*         Whenever there is any change in TS' association to an edge (NVE), which can be triggered by TS being added, removed, or de-commissioned, an incremental update can be sent to the edges that are impacted by the change. It is desirable for incremental update to only include the changed mapping entries. However per mapping entry incremental update can cause complexity of NVA in maintaining the state of each entry. A good balance between amount of data in each incremental update and the complexity of maintaining status of entries should be considered.



5.       Section 4 should add the following additional requirement on what NVE should do when there is no response from Pull request. Here is my suggested text:



*         There are several possibilities of the Pull Response:

o   Valid inner-outer address mapping, coupled with the valid timer indicating how long the entry can be cached by the edge (NVE).
The timer for cache should be short in an environment where VMs move frequently. The cache timer can also be configured.

o   The target being queried is not available. The response should include the policy if requester should forward data frame in legacy way, or drop the data frame.

o   The requestor is administratively prohibited from getting an informative response.

If no response is received to a Pull request within a configurable timeout, the request should be re-transmitted with the same Sequence Number up to a configurable number of times.
If errors occur at the query level, they MUST be reported in a response message separate from the results of any successful queries. If multiple queries in a request have different errors, they MUST be reported in separate response messages. If multiple queries in a request have the same error, this error response MAY be reported in one response message.

6.       Section 4 should add the following additional requirement on the proper behavior on NVE when it loses its connection to its Push NVA. Here is my suggested addition:
If an NVE notices that a Push NVA is no longer reachable, it MUST ignore any Push mapping entries from that NVA because it is no longer being updated and may be stale.
There may be transient conflicts between mapping information from different Push NVAs, some kind of confidence level information with mapping entries can be considered in case of such conflicts. Information with a higher confidence value is preferred over information with a lower confidence.

Thanks, Linda Dunbar