Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[vlan multiplexing] handle kernel mechanism set with vlan parameter #346

Merged
merged 1 commit into from
Oct 19, 2021

Conversation

pperiyasamy
Copy link
Member

@pperiyasamy pperiyasamy commented Oct 1, 2021

update inject and connectioncontextkernel chain elements when kernel mechanism set with vlan parameter.

  1. Move out parent interface out of nse container when last client is deleted.
  2. do not configure ip/route/neighbor/mtu on the parent interface

Signed-off-by: Periyasamy Palanisamy [email protected]

@pperiyasamy
Copy link
Member Author

/cc @JanScheurich

@JanScheurich
Copy link

JanScheurich commented Oct 1, 2021 via email

@pperiyasamy
Copy link
Member Author

@edwarnicke @Bolodya1997 @denis-tingaikin I had a discussion with Jan on this and came up with following approach to avoid this unconditional creation of vlan sub interface.

  1. Introduce ParentInterfaceName parameter in kernel mechanism (This needs a PR in api repo) which would be set from endpoint and InterfaceName parameter is used for vlan sub interface name.
  2. when only parentInterfaceName is set and InterfaceName is set with a predefined string constant like "no-sub-interface", then forwarder just injects parent interface into endpoint pod and doesn't create any vlan sub interface on the container. This would cover DPDK case.
  3. When Endpoint pod is started with single VF, then vlan tag server would be chosen and parent interface name is derived from service name (withParentInterface Option) itself.
  4. There would an env config option provided in Endpoint container to choose DPDK scenario.

@edwarnicke
Copy link
Member

@pperiyasamy Could you say a bit more... I don't quite follow the benefit in adding ParentInterfaceName... I am really really loath to introduce the 'subinterface' concept unnecessarily here... we are just describing the mechanism of encap, not how it represents in whatever system is providing it.

@pperiyasamy
Copy link
Member Author

@edwarnicke The purpose of having parent interface name is to have proper naming convention like parent interface name derived from service name whereas sub interface derived from service name + connection id. yes, mechanim encaps parent interface name, interface name and vlan parameter.
The inject chain element (for kernel mechanism) is a place for realising it via VLAN sub interfaces. This PR just attempts to implement it on top of further sdk/api changes. do you have some other thoughts ?

@pperiyasamy pperiyasamy changed the title [vlan multiplexing] update inject client with vlan sub interface case [vlan multiplexing] handle kernel mechanism set with vlan parameter Oct 13, 2021
@pperiyasamy
Copy link
Member Author

@edwarnicke @JanScheurich It was a good discussion and thanks for your inputs. Based on the discussion, I have now updated relevant kernel chain elements to handle kernel mechanism set with vlan parameter. please take a look now.

@edwarnicke edwarnicke merged commit 35d3cf7 into networkservicemesh:main Oct 19, 2021
nsmbot pushed a commit to networkservicemesh/sdk-vpp that referenced this pull request Oct 19, 2021
…k-kernel@main

PR link: networkservicemesh/sdk-kernel#346

Commit: 35d3cf7
Author: Ed Warnicke
Date: 2021-10-19 08:28:31 -0500
Message:
  - Merge pull request #346 from Nordix/vlan-sub-interface
Signed-off-by: NSMBot <[email protected]>
nsmbot pushed a commit to networkservicemesh/sdk-sriov that referenced this pull request Oct 19, 2021
…k-kernel@main

PR link: networkservicemesh/sdk-kernel#346

Commit: 35d3cf7
Author: Ed Warnicke
Date: 2021-10-19 08:28:31 -0500
Message:
  - Merge pull request #346 from Nordix/vlan-sub-interface
Signed-off-by: NSMBot <[email protected]>
@pperiyasamy pperiyasamy deleted the vlan-sub-interface branch October 19, 2021 13:31
edwarnicke pushed a commit to networkservicemesh/sdk-sriov that referenced this pull request Oct 19, 2021
…k-kernel@main

PR link: networkservicemesh/sdk-kernel#346

Commit: 35d3cf7
Author: Ed Warnicke
Date: 2021-10-19 08:28:31 -0500
Message:
  - Merge pull request #346 from Nordix/vlan-sub-interface
Signed-off-by: NSMBot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants