Difference between revisions of "NSH SFC/Meeting"

From fd.io
Jump to: navigation, search
(Information From Past Meetings)
(Information From Past Meetings)
Line 29: Line 29:
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
  
1) 17.01 Release  
+
1) 17.01 Release
 +
 
 
1.a Patches for NSH Proxy and NSH Classifier have been merged to both NSH_SFC and HC, after performing unit test. Integration with ODL SFC ongoing.
 
1.a Patches for NSH Proxy and NSH Classifier have been merged to both NSH_SFC and HC, after performing unit test. Integration with ODL SFC ongoing.
 
1.b Get some request from FD.io STV team about what tests need to be performed for NSH_SFC 17.01 release, will ask them to do integration test below:
 
1.b Get some request from FD.io STV team about what tests need to be performed for NSH_SFC 17.01 release, will ask them to do integration test below:
Line 39: Line 40:
 
1.c Hongjun is working on creating a Docker image that includes VPP 17.01 and NSH_SFC 17.01 as well as virtio_user PMD (based on DPDK 16.11) to enable easy-to-deploy NSH SFC ingredients (Classifier, SFF, Proxy, etc). In the future, the ODL and NSH-aware VNFs (co-locating Proxy and SFs) will be packaged the same way to enable an all-in-one setup, which includes a Vagrant image within several Docker images to create a SFC setup that has all ingredients specified in RFC 7665.
 
1.c Hongjun is working on creating a Docker image that includes VPP 17.01 and NSH_SFC 17.01 as well as virtio_user PMD (based on DPDK 16.11) to enable easy-to-deploy NSH SFC ingredients (Classifier, SFF, Proxy, etc). In the future, the ODL and NSH-aware VNFs (co-locating Proxy and SFs) will be packaged the same way to enable an all-in-one setup, which includes a Vagrant image within several Docker images to create a SFC setup that has all ingredients specified in RFC 7665.
  
2) 17.04 release discussion  
+
2) 17.04 release discussion
 +
 
 
2.a Targeted new features for 17.04 release:
 
2.a Targeted new features for 17.04 release:
 
     * Co-locate Proxy with SF  
 
     * Co-locate Proxy with SF  
 
     * Basic MD Type 2 support, such as encap/decap NSH within MD Type 2
 
     * Basic MD Type 2 support, such as encap/decap NSH within MD Type 2
  
3) Planned new features for 17.07 release:
+
3) Planned new features for 17.07 release
 +
 
 
     * Release NSH-aware SFs being able to consume context header embedded in the NSH via  
 
     * Release NSH-aware SFs being able to consume context header embedded in the NSH via  
 
       per-packet metadata
 
       per-packet metadata
Line 50: Line 53:
  
 
4) Open: P4 for VPP and NSH_SFC
 
4) Open: P4 for VPP and NSH_SFC
 +
 
Idea is to develop a "compiler" that dynamically generate graph nodes from P4 program' HLIR, each node on the P4' parse graph will be mapped to a graph node of VPP and the graph node is responsible for extracting header defined in P4 and determine next graph nodes. This way, supporting new protocols such as VxLAN-GPE and NSH will be much easier. In addition, a "compiler" for ODL will be introduced to convert P4 program to Yang model for NETCONF SB plugin and HC to consume, so ODL could control VPP based P4 switch via RPC. Note: there is no need to support Openflow and OVSDB for this case.  
 
Idea is to develop a "compiler" that dynamically generate graph nodes from P4 program' HLIR, each node on the P4' parse graph will be mapped to a graph node of VPP and the graph node is responsible for extracting header defined in P4 and determine next graph nodes. This way, supporting new protocols such as VxLAN-GPE and NSH will be much easier. In addition, a "compiler" for ODL will be introduced to convert P4 program to Yang model for NETCONF SB plugin and HC to consume, so ODL could control VPP based P4 switch via RPC. Note: there is no need to support Openflow and OVSDB for this case.  
  

Revision as of 01:20, 3 January 2017

Meeting Details

Weekly on Monday, 60min, from 16:00 - 17:00 PDT.

Join Skype Meeting

Join by phone +1(916)356-2663 (or your local bridge access #) Choose bridge 5. (Global) English (United States)

Conference ID: 133570463

Find a local number

Agenda

The next NSH_SFC meeting is scheduled for Monday 2rd Jan, 2017

  • 1701 release (features, unit and integration tests, easy-to-use docker image)
  • 1704 feature discussion (collocate proxy with SF, MD Type 2 support)

Information From Past Meetings

2017-01-02

1) 17.01 Release

1.a Patches for NSH Proxy and NSH Classifier have been merged to both NSH_SFC and HC, after performing unit test. Integration with ODL SFC ongoing. 1.b Get some request from FD.io STV team about what tests need to be performed for NSH_SFC 17.01 release, will ask them to do integration test below:

    * Develops some CSIT test cases to test the dataplane and VPP CLI of NSH SFF, 
      NSH-Proxy and NSH Classifier.
    * Integrates  Honeycomb, VPP and NSH_SFC to test the HC NB API of NSH SFF, NSH-Proxy 
      and NSH Classifier.

1.c Hongjun is working on creating a Docker image that includes VPP 17.01 and NSH_SFC 17.01 as well as virtio_user PMD (based on DPDK 16.11) to enable easy-to-deploy NSH SFC ingredients (Classifier, SFF, Proxy, etc). In the future, the ODL and NSH-aware VNFs (co-locating Proxy and SFs) will be packaged the same way to enable an all-in-one setup, which includes a Vagrant image within several Docker images to create a SFC setup that has all ingredients specified in RFC 7665.

2) 17.04 release discussion

2.a Targeted new features for 17.04 release:

    * Co-locate Proxy with SF 
    * Basic MD Type 2 support, such as encap/decap NSH within MD Type 2

3) Planned new features for 17.07 release

    * Release NSH-aware SFs being able to consume context header embedded in the NSH via 
      per-packet metadata
    * Enable match-action for MD Type 2 NSH 

4) Open: P4 for VPP and NSH_SFC

Idea is to develop a "compiler" that dynamically generate graph nodes from P4 program' HLIR, each node on the P4' parse graph will be mapped to a graph node of VPP and the graph node is responsible for extracting header defined in P4 and determine next graph nodes. This way, supporting new protocols such as VxLAN-GPE and NSH will be much easier. In addition, a "compiler" for ODL will be introduced to convert P4 program to Yang model for NETCONF SB plugin and HC to consume, so ODL could control VPP based P4 switch via RPC. Note: there is no need to support Openflow and OVSDB for this case.

Will add this to JIRA and no resources are assigned for this story.

2016-12-12

1) NSH Proxy and NSH Classifier those two features are most done. Relevant NSH_SFC and HC patches are mostly merged, only two patches related to Yang model under review without impact to APIs. Those two patches will be merged soon if no critical comments.

2) Will send out API freeze mail this Thursday as planned.

3) Reviewed the investigation from Hongjun about enabling per-packet metadata for NSH-aware VNF implementation. There are two options: 1) Add vlib_buf_opaque2_t (64 bytes fit in a cache line) to vlib_buf_t to hold the metadata. 2) Add Service Path, Service Index and a pointer (pointing to NSH context header stored in the NSH_SFC graph node) to vlib_buf_opaque_t data struct.

The option 2 is preferred due to option 1 might introduce negative performance impact due to more data to store and two memory copies are needed. Hongjun will continue investigate which NSH specific fields and how many bits required in vlib_buf_opaque_t data struct, rough review shows it still has unused space for NSH.

4) No meetings in coming two weeks for Christmas holiday.

2016-12-05

1) NSH_SFC 1701 release plan updated on this wiki. The milestones will be one week post VPP' milestones.

2) NSH Proxy and NSH Classifier those two features are in good shape. Features implementation done after initial test, there is no dependency on VPP' API change, but it still needs to depend on Yang model change in HC to ensure they can be integrated with ODL SFC. HC API freeze is Dec 14th, and Hongjun is working to ensure the Yang model and API changes will be accepted before HC API freeze.

3) ODL SFC in Carbon release will support above two features, and the SFC 104 test will enable a working demo.

4) NSH-aware VNFs in current proposal could be treated as NSH Proxy collocates with SF, there are two issues problems raised by Joel need to address in the near future:

   a. We need SFs to be natively NSH-aware, meaning they can manipulate metadata inside the NSH. 
      Current implementation looks like NSH Proxy co-locate with SFs but SFs can only 
      see the original frames.
   b. How to handle NAT like or TCP Proxy like SFs after they change the headers 
      of the inner headers which are typically used as key to determine which 
      next graph node is?  The initial thought is to add some information to 
      per-packet metadata before packets go into the SF, and the metadata can 
      be used to determine if it needs to be re-encapsulated by NSH_SFC graph node. 

AR: Hongjun to investigate how to support NAT and TCP Proxy sort of SFs by leveraging per-packet metadata. Also, think about the framework and libraries to enable SF being able to manipulate NSH metadata.

2016-11-28

1) Hongjun to consolidate review comments to his patch https://gerrit.fd.io/r/3944 for enabling VPP Proxy

2) Keith mentioned VPP has included initial TLV support which could be used for enabling NSH MD Type 2, but seems there are only a few use cases (e.g. IOAM support by Frank and NSH timestamping support) demanding this feature. Implementing MD Type 2 is already in JIRA but mark it a a low priority item to be enabled post 1701 release unless there is solid requirement.

3) Rotating meeting every other week proposal is rejected due to people prefer consistent meeting time and it is hard to pick up a suitable time slot for three GEOs: US, Europe and PRC. Currently, 4:00pm PST every Monday is selected for two major code contributors Keith Burn and Hongjun Ni to attend, and Danny will reschedule the new weekly Lync meeting serious and figure out the way to sync up with Hakan and Markus on a regular basis.

4) Danny needs to update NSH_SFC Wiki page to reflect his role as new PTL and ensure this wiki is active.

5) Danny to work out release schedule for 1701 release and add stories to JIRA, below three ones are already added: a) https://jira.fd.io/browse/NSHSFC-15 NSHSFC-15 Enable NSH Proxy feature to support integrating NSH-unware SFs into SFC b) https://jira.fd.io/browse/NSHSFC-16 NSHSFC-16 NSH Classifier enablement c) https://jira.fd.io/browse/NSHSFC-17 NSHSFC-17 Enable VPP to be NSH-aware

6) Not able to review NSH_Aware SFs high level design diagram, so Danny/Hongjun need to upload the diagram to Google doc for NSH_SFC community to review offline, and probably discuss it in next weekly meeting.


2016-08-29

The following list of gerrit patches do the integration work:

(1).VPP:

https://gerrit.fd.io/r/#/c/2118/ jvpp support for nsh.


(2).Honeycomb:

https://gerrit.fd.io/r/#/c/2527/ HONEYCOMB-46: Add Nsh Map in Honeycomb

which depends on this patch:

https://gerrit.fd.io/r/#/c/2481/9 HONEYCOMB-46: Add Nsh Entry in Honeycomb


(3).ODL SFC:

https://git.opendaylight.org/gerrit/#/c/42699/ Add VPP Renderer



Actually, there are only two issues remained, but I think they won’t block the integration test.

(4).The building failure due to “mvn” commands are not supported in Jenkins.

       We have discussed this issue on weekly meeting, and Ed Warnicke will fix it.


(5). HC Plugin could not reuse the VxlanGpeCustomizer within the HC code base.

      I have sent an email to discuss this issue with Maros and Marek.
      The details are as follows:


In nsh-map Yang model, there is an augmentation:

 augment /vpp-nsh/nsh-maps/nsh-map {
   ext:augment-identifier vxlan-gpe-encap-augment;
   when "/encap-type = 'vpp-nsh:vxlan-gpe-encap-type' ";
   uses v3po:vxlan-gpe-base-attributes;
 }


How can I reuse the VxlanGpeCustomizer within the HC code base?

I tried to register VxlanGpeCustomizer into VppNshWriterFactory, but it failed.

2016-06-20

Agenda:

  • AIs from 6/6 meeting
  • Gerrit patch review by committers
  • Hongjun as committer

2016-06-06

Agenda:

  • Patch 1124
  • Release discussion - most of these topics will have to be covered on mailer
    • Best time for longer meeting.
    • Alignment to VPP releases
    • Timing
    • Features
    • Repo structure
    • Packaging
  • Jenkins
    • Need Jenkins verify job
  • CSIT
    • See ONE, their repo is all CSIT testing

Actions:

AI: Keith to document VM setup for testing traffic (SFF client and SF "proxy") Status: AI: Keith to schedule next TWS call (Jun13) for edwarnicke to do Jenkins TOI at TWS Status: Done AI: (sic CSIT) Keith to take this to the mailer looking for volunteers. Status: