Thanks a lot for the clarification! Raj
On Tue, Dec 17, 2019 at 7:43 PM John Lo (loj) <l...@cisco.com> wrote: > > Hi Raj, > > A sub-interface with "dot1q inner any" can only work with L2 forwarding via > cross-connect or bridging where packets are forwarded using MAC header > without any changes to MAC header nor VLAN IDs in VLAN tags. > > For L3 IP forwarding, any VLAN tags on a packet must be exact match to a > sub-interface which means both outer and inner VLAN tag IDs must be > exact-matched to specific values defined of that sub-interface. Without > exact match on a L3 sub-interface, VPP has no mechanism to know what VLAN > tags to use for packet output, such as ARP request packets or IP packets, on > that sub-interface. Thus, sub-interface with "inner-dot1q any" is not an > exact match sub-interface by definition since no match is present on inner > tag. > > I suppose the CLI: > >> create sub-interfaces GigabitEthernet3/0/3 50 dot1ad 50 inner-dot1q any > >> exact-match > should have been rejected as exact match cannot be supported on the > sub-interface. This is something we should ideally fix in the CLI to avoid > any confusion with the meaning of exact match. > > Regards, > John > > -----Original Message----- > From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of Raj > Sent: Tuesday, December 17, 2019 4:39 AM > To: vpp-dev <vpp-dev@lists.fd.io> > Subject: [vpp-dev] QinQ and dot1ad any > > Hello all, > > When an interface is created using a command like: > > create sub-interfaces GigabitEthernet3/0/3 50 dot1ad 50 inner-dot1q any > exact-match > > I can see that dual tagged packets with outer vlan 50 will be accepted by > that interface. > > But how does a packet goes out from this interface? Is there a means by which > I can say that a given IP is with a specific S_VLAN:C_VLAN? > > During testing VPP could receive an ARP packet, but when it sends it out, > entire Ethernet header was missing. I guess there must be some means to add > adjacency information so that correct headers can be added. > > The trace is as follows: > > > 00:01:04:749110: dpdk-input > GigabitEthernet3/0/3 rx queue 0 > buffer 0x4c7d: current data 0, length 60, free-list 0, clone-count 0, > totlen-nifb 0, trace 0x1 > ext-hdr-valid > l4-cksum-computed l4-cksum-correct > PKT MBUF: port 0, nb_segs 1, pkt_len 60 > buf_len 2176, data_len 60, ol_flags 0x180, data_off 128, phys_addr > 0x26b31fc0 > packet_type 0x0 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0 > rss 0x0 fdir.hi 0x0 fdir.lo 0x0 > Packet Offload Flags > PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid > PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid > ARP: 40:7b:1b:00:11:aa -> ff:ff:ff:ff:ff:ff 802.1ad vlan 50 802.1ad vlan 51 > request, type ethernet/IP4, address size 6/4 > 40:7b:1b:00:11:aa/192.168.25.1 -> 00:00:00:00:00:00/192.168.25.2 > 00:01:04:749112: ethernet-input > frame: flags 0x3, hw-if-index 1, sw-if-index 1 > ARP: 40:7b:1b:00:11:aa -> ff:ff:ff:ff:ff:ff 802.1ad vlan 50 802.1ad vlan 51 > 00:01:04:749113: arp-input > request, type ethernet/IP4, address size 6/4 > 40:7b:1b:00:11:aa/192.168.25.1 -> 00:00:00:00:00:00/192.168.25.2 > 00:01:04:749116: GigabitEthernet3/0/3-output > GigabitEthernet3/0/3.50 > 0x1235: 00:02:40:7b:1b:00 -> 00:01:08:00:06:04 > 00:01:04:749116: GigabitEthernet3/0/3-tx > GigabitEthernet3/0/3 tx queue 0 > buffer 0x4c7d: current data 22, length 38, free-list 0, clone-count 0, > totlen-nifb 0, trace 0x1 > ext-hdr-valid > l4-cksum-computed l4-cksum-correct vlan-2-deep l2-hdr-offset > 0 l3-hdr-offset 22 > PKT MBUF: port 0, nb_segs 1, pkt_len 38 > buf_len 2176, data_len 38, ol_flags 0x180, data_off 150, phys_addr > 0x26b31fc0 > packet_type 0x0 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0 > rss 0x0 fdir.hi 0x0 fdir.lo 0x0 > Packet Offload Flags > PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid > PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid > 0x1235: 00:02:40:7b:1b:00 -> 00:01:08:00:06:04 > > btw, if inner VLAN is specified, everything works fine. > > > Thanks and Regards, > > Raj
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#14917): https://lists.fd.io/g/vpp-dev/message/14917 Mute This Topic: https://lists.fd.io/mt/68757125/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-