Guys,
Anyone have any thoughts on this?

Ed


On September 20, 2018 at 12:01:05 PM, Bly, Mike (m...@ciena.com) wrote:

Ed/Keith, et al,



What Vijay is digging into is trying to understand how to provide the
following sub-interface setup on a common/single physical NIC. I am hoping
you can shed some light on the feasibility of this, given the current code
to date.



Our goal is to provide proper separation of untagged vs. explicit-vlan
(EVPL) vs. default (all remaining vlans) vs. EPL as needed on a given NIC,
independent of any choice of forwarding mode (L2 vs L3).



GigabitEthernet5/0/0 à “not used to forward traffic” (see next three
sub-if’s), calling it sub_if_0 for reference below (seen as possible EPL
path, but not covered here, since already “working”)

GigabitEthernet5/0/0.untagged à all untagged traffic on this port goes to
sub_if_1

GigabitEthernet5/0/0.vid1 à all traffic arriving with outer tag == 1 goes
to sub_if_2

GigabitEthernet5/0/0.default à all other tagged traffic goes to sub_if_3



The only way we seem to be able to get sub_if_3 to process traffic is to
disable sub_if_0 (set mode to l3).



Additionally, the current configuration checking in
src/vnet/ethernet/node.c does not seem amenable to allowing the actual
configuration and support of untagged vs default as two distinct sub-if’s
processing traffic at the same time (my sub_if_1 and sub_if_3 above). Are
we missing something here in how this is supposed to work? We would be fine
with letting “sub_if_0” carry the untagged traffic (in place of sub_if_1),
but we have yet to figure out how to do that while still having sub_if_3
processing “all other tagged frames”. We can say in all of our testing that
we in fact do correctly see sub_if_2 working as expected.



Here is a simple configuration showing our current efforts in this area:



create bridge-domain 1

create bridge-domain 2

create bridge-domain 3



set interface l2 bridge GigabitEthernet5/0/0 1

set interface l2 bridge GigabitEthernet5/0/1 1



create sub-interfaces GigabitEthernet5/0/0 4095 default

create sub-interfaces GigabitEthernet5/0/1 4095 default

set interface l2 bridge GigabitEthernet5/0/0.4095 2

set interface l2 bridge GigabitEthernet5/0/1.4095 2



create sub-interfaces GigabitEthernet5/0/0 1

create sub-interfaces GigabitEthernet5/0/1 1

set interface l2 bridge GigabitEthernet5/0/1.1 3

set interface l2 bridge GigabitEthernet5/0/0.1 3





set interface state GigabitEthernet5/0/0 up

set interface state GigabitEthernet5/0/1 up

set interface state GigabitEthernet5/0/0.4095 up

set interface state GigabitEthernet5/0/1.4095 up

set interface state GigabitEthernet5/0/0.1 up

set interface state GigabitEthernet5/0/1.1 up



As noted above, the only way to get GigabitEthernet5/0/0.4095 to process
frames is to do the following, but doing so drops all untagged traffic.



set interface l3 GigabitEthernet5/0/0



Let us know next steps in resolving this.



Best Regards,

Mike



---------- Forwarded message ----------
From: *Chandra Mohan, Vijay Mohan* <vijch...@ciena.com>
Date: Tue, Sep 18, 2018 at 8:35 PM
Subject: Re: [vpp-dev] Failing to create untagged sub-interface
To: "vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io>



typedef struct

{

  u32 sw_if_index;

  u32 flags;

  // config entry is-valid flag

  // exact match flags (valid if packet has 0/1/2/3 tags)

  // L2 vs L3 forwarding mode

#define SUBINT_CONFIG_MATCH_0_TAG (1<<0)

#define SUBINT_CONFIG_MATCH_1_TAG (1<<1)

#define SUBINT_CONFIG_MATCH_2_TAG (1<<2)

#define SUBINT_CONFIG_MATCH_3_TAG (1<<3)

#define SUBINT_CONFIG_VALID       (1<<4)

#define SUBINT_CONFIG_L2          (1<<5)

#define SUBINT_CONFIG_P2P         (1<<6)



} subint_config_t;





typedef struct

{

  subint_config_t untagged_subint;

  subint_config_t default_subint;

  u16 dot1q_vlans;      // pool id for vlan table

  u16 dot1ad_vlans;     // pool id for vlan table

} main_intf_t;



Each main interface has untagged_subint and default_subint. The sw_if_index
in untagged_subint is same as the sw_if_index of the physical interface and
the ‘flags’ has ‘SUBINT_CONFIG_VALID’ set. Since, by default, physical
interface forwards untagged traffic, is the physical interface itself is
being treated as untagged sub-interface ? is my understanding correct ?



-vijay







*From: *"Chandra Mohan, Vijay Mohan" <vijch...@ciena.com>
*Date: *Tuesday, September 18, 2018 at 3:52 PM
*To: *"vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io>
*Subject: *Re: Failing to create untagged sub-interface



Fd.io pages states following in the “create sub-interfaces” section:

Example of how to created a subinterface to process untagged packets:

*vpp# create sub-interfaces GigabitEthernet2/0/0 5 untagged*



I am trying to do exactly same thing mentioned above and it fails. Is this
a known issue (a bug) ??



-vijay





*From: *"Chandra Mohan, Vijay Mohan" <vijch...@ciena.com>
*Date: *Tuesday, September 18, 2018 at 2:37 PM
*To: *"vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io>
*Subject: *Failing to create untagged sub-interface



Was not sure if this email is being delivered properly or not, so, sending
a new email with the old email trail:





Looking to understand the significance of “SUBINT_CONFIG_VALID” flag. When
is it set and why ? untagged sub-interface creation fails when this flag is
set. Question is when is this flag being set at first place ?? Does this
flag indicate that a valid vlan is configured on this interface ? Still
looking in to the code but, so far,  did not find any instance in the
configuration code path (up until “*ethernet_sw_interface_add_del”*)  where
this flag is being set.



-vijay



*From: *"Chandra Mohan, Vijay Mohan" <vijch...@ciena.com>
*Date: *Wednesday, September 12, 2018 at 10:16 AM
*To: *"vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io>
*Subject: *Re: Unable to create sub-interface with 'untagged' option



Just wanted to check if you anyone got a chance to look at this ? Am I
missing some configuration here before creating a sub-interface for
untagged frames ?



-Vijay

*From: *"Chandra Mohan, Vijay Mohan" <vijch...@ciena.com>
*Date: *Thursday, September 6, 2018 at 3:57 PM
*To: *"vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io>
*Subject: *Re: Unable to create sub-interface with 'untagged' option



Did anyone get a chance to take a look at this ?



-vijay



*From: *"Chandra Mohan, Vijay Mohan" <vijch...@ciena.com>
*Date: *Wednesday, September 5, 2018 at 1:35 PM
*To: *"vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io>
*Subject: *Unable to create sub-interface with 'untagged' option



Hi All,



Creation of a sub-interface with ‘untagged’ option fails with the message “
create sub-interfaces: vlan is already in use” . Any idea what I am missing
here ? There is no other configs present and trying to create sub-interface
for the first time.



vpp# create sub-interfaces GigabitEthernet5/0/0 1 untagged

create sub-interfaces: vlan is already in use





Thanks,

Vijay




-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#10559): https://lists.fd.io/g/vpp-dev/message/10559
Mute This Topic: https://lists.fd.io/mt/25750421/675607
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [aws.ism...@gmail.com]
-=-=-=-=-=-=-=-=-=-=-=-


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#10579): https://lists.fd.io/g/vpp-dev/message/10579
Mute This Topic: https://lists.fd.io/mt/25812529/464962
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [hagb...@gmail.com]
-=-=-=-=-=-=-=-=-=-=-=-
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#10581): https://lists.fd.io/g/vpp-dev/message/10581
Mute This Topic: https://lists.fd.io/mt/25812529/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to