Re: [vpp-dev] VPP IPsec queries

2023-02-28 Thread Mrityunjay Kumar
Can you send your queries in sort mail, it's too long mail.



On Wed, 1 Mar, 2023, 4:43 am Srikanth Akula,  wrote:

> Hi Team,
>
> Any help is appreciated on this topic.
> We are trying to do a POC with IPSec+Ikev plugin of vpp , any
> suggestions/pointers would be helpful in this regard.
>
> Regards,
> Srikanth
>
> On Sat, Feb 25, 2023 at 9:53 AM Varun Tewari 
> wrote:
>
>> Hello Team,
>>
>> I am new to VPP and probing this technology to build an IPSec responder
>> for our use-cases.
>> Our initial tests do show the performance might of VPP.
>> However on probing this further in depth, I noticed a few limitations and
>> I am dropping this rider seeking clarification around these.
>> All my observations are for VPP 23.02 and am using VPP’s Ikev2 plugin.I
>> am using a linux with strongswan as the peer for my tests.
>>
>> My observations:
>>
>> 1.
>> VPP seems doesn’t support multiple child-sa (phase 2 sa, ipsec sa) within
>> the same tunnel.
>> Single IPsec SA works fine. An interface ipip0 gets created and SPD shows
>> the correct binding (show ipsec all).
>> However ,when I bring up the second child-sa for a different TS, I se the
>> SPD gets overwritten for the interface and the new child-sa gets installed
>> overwriting the previous one.
>> For sure this is leading to traffic drop for the traffic hitting the
>> first TS.
>>
>> Q: Is this by design or have I got my config wrong in some way.
>>
>> Here the quick output from the VPP and strongswan
>> sudo swanctl --list-sas
>> net-1: #11, ESTABLISHED, IKEv2, abb046c62a60c38a_i* dc95e079629854ca_r
>>   local  'roadwarrior.vpn.example.com' @ 17.17.17.1[500]
>>   remote 'vpp.home' @ 17.17.17.2[500]
>>   AES_CBC-256/HMAC_SHA1_96/PRF_HMAC_SHA1/MODP_2048
>>   established 848s ago, reauth in 84486s
>>   net-1: #16, reqid 16, INSTALLED, TUNNEL,
>> ESP:AES_CBC-192/HMAC_SHA1_96/ESN
>> installed 848s ago, rekeying in 84690s, expires in 85552s
>> in  cec3d263,  24717 bytes,   107 packets,   687s ago
>> out a1816d8f, 179718 bytes,   778 packets, 0s ago
>> local  16.16.16.0/24
>> remote 18.18.18.0/24
>>   net-2: #17, reqid 17, INSTALLED, TUNNEL,
>> ESP:AES_CBC-192/HMAC_SHA1_96/ESN
>> installed 686s ago, rekeying in 84831s, expires in 85714s
>> in  cd14add0, 122199 bytes,   529 packets, 2s ago
>> out de989d78, 122199 bytes,   529 packets, 2s ago
>> local  16.16.15.0/24
>> remote 18.18.18.0/24
>>
>> vpp# show ipsec all
>> [0] sa 2181038080 (0x8200) spi 3468939875 (0xcec3d263) protocol:esp
>> flags:[esn anti-replay ]
>> [1] sa 3254779904 (0xc200) spi 2709613967 (0xa1816d8f) protocol:esp
>> flags:[esn anti-replay inbound ]
>> [2] sa 2181038081 (0x8201) spi 3440684496 (0xcd14add0) protocol:esp
>> flags:[esn anti-replay ]
>> [3] sa 3254779905 (0xc201) spi 3734543736 (0xde989d78) protocol:esp
>> flags:[esn anti-replay inbound ]
>> SPD Bindings:
>> ipip0 flags:[none]
>>  output-sa:
>>   [2] sa 2181038081 (0x8201) spi 3440684496 (0xcd14add0) protocol:esp
>> flags:[esn anti-replay ]
>>  input-sa:
>>   [3] sa 3254779905 (0xc201) spi 3734543736 (0xde989d78) protocol:esp
>> flags:[esn anti-replay inbound ]
>> IPSec async mode: off
>> vpp#
>>
>> All 4 SAs exist, however the SPD binding shows the latest 2, that
>> overwrote the SAs for the previous TS leading to traffic drop.
>>
>>
>> 2.
>> Overlapping subnets between different Ipsec tunnel
>>
>> When Ikev2 completes, I see, it creates an pip interface and relevant
>> Child-SAs and ties them to the interface to protect traffic.
>> So far all is good.
>> Now, we add an route into VPP to route the traffic via this ipip
>> interface for each of the source subnet that are expected to be protected
>> by the tunnel.
>> This works fine as long as I keep the subnets distinct.
>>
>> Q: What’s the usual strategy when we have overlapping subnets in two
>> distinct tunnels ?
>> T1: SrcSubnet1 DestinationSubnet1
>> T2: SrcSubnet1 DestinationSubnet2
>>
>> When T1 is brought up, we add a FIB entry for SrcSubnet1 via ipipT1 and
>> things works fine.
>> When T2 comes up, ipipT2 is created and now I need to add FIB entry for
>> SrcSubnet1 via ipipT2 and as expected things break here.
>>
>>
>> 3.
>> IpIp vs Ipsec interface
>> For Route based VPP IPsec, I see two options as per the documentation.
>> The doc says, Ikev2 will create an ipsec interface, however it creates an
>> ipip interface. Is this expected ?
>> The interface works okay for me, but wasn’t sure why the difference.
>> Further on probing the code, I do see Ikev2 plugin is creating an ipip
>> interface not ipsec interface as the doc says.
>>
>>
>> Thank you in advance for all your comments here.
>>
>> *शुभ कामनाएँ*,
>> Varun Tewari
>>
>>
>>
>>
>>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#22635): https://lists.fd.io/g/vpp-dev/message/22635
Mute This Topic: https://lists.fd.io/mt/97230775/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: 

Re: [vpp-dev] Increase memif from 10G to 100G

2021-11-16 Thread Mrityunjay Kumar
Memif based on share memory communication.  There is concept of slave /
master, where one folk involve one copy.


Can you check and share unidirectional max speed without pkt processing?


BTW, I am not impressed with memif library,  hence idea is look for better
aproach for share memory instead high cost of pkt buff translation.






On Tue, 16 Nov, 2021, 4:38 pm Felipe P.,  wrote:

> Hi,
>
> We are running 100G tests in our new dev hardware and found out yesterday
> that memif are coming up with 10G speed.
>
> Is there any way to increase this to 100G speed?
>
> Thanks,
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20495): https://lists.fd.io/g/vpp-dev/message/20495
Mute This Topic: https://lists.fd.io/mt/87092449/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: Recommended NICs and drivers (was Re: [vpp-dev] About Risc-V Porting)

2021-11-09 Thread Mrityunjay Kumar
Thanks ben,
Inline please,




On Tue, 9 Nov, 2021, 7:24 pm Benoit Ganne (bganne) via lists.fd.io,  wrote:

> Hi Ben,
>
> DPDK is definitely supported in VPP but it has performance impacts


In case, we have performance bench marking, please share with us.


and also carries a lot of dependencies (see for example the discussion on
> RISC-V: if DPDK was mandatory, we'd have to have both DPDK and VPP on
> RISC-V, but as VPP have native drivers too, we can get away without DPDK).
>

Nice,  please share wiki link,  I sm not aware about that,


VPP currently have native drivers for the following physical NICs:
>  - avf: Intel with AVF support (Fortville and Columbiaville)
>  - rdma: Mellanox mlx5 (ConnectX-4/5/6)
>

In case, the support are,  please share wiki link,


Thanks for details
//MJ




> Best
> ben
>
> > -Original Message-
> > From: vpp-dev@lists.fd.io  On Behalf Of Ben
> McKeegan
> > Sent: mardi 9 novembre 2021 11:38
> > To: vpp-dev@lists.fd.io
> > Subject: Recommended NICs and drivers (was Re: [vpp-dev] About Risc-V
> > Porting)
> >
> > Hi,
> >
> > On 08/11/2021 19:15, Damjan Marion via lists.fd.io wrote:
> > >
> > > and that VPP works better when DPDK is not involved.
> > >
> >
> >
> > Apologies for hijacking the thread but as a new VPP user who has spent
> > many many hours reading through every scrap of documentation I can find,
> > this statement comes as a surprise to me.   Unfortunately a lot of the
> > VPP documentation seems a bit out of date.  Indeed, the documentation
> > for most the recent release still says it 'Leverages best-of-breed open
> > source driver technology: DPDK':
> >
> > https://s3-docs.fd.io/vpp/21.10/whatisvpp/performance.html
> >
> > So if DPDK isn't the best option any more, what do the people of this
> > list recommend as a NIC and driver combination, and why?
> > (Unfortunately, I don't have a huge budget at my disposal, so I'm
> > looking for some best value-for-money options.)
> >
> > Thanks,
> > Ben.
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20468): https://lists.fd.io/g/vpp-dev/message/20468
Mute This Topic: https://lists.fd.io/mt/86928356/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] About Risc-V Porting

2021-11-08 Thread Mrityunjay Kumar
Let me close this.

I am not paid by dpdk Or vpp.

It my indivisual thoughts.



Sorry if I *...




On Tue, 9 Nov, 2021, 1:30 am Damjan Marion,  wrote:

>
>
> > On 08.11.2021., at 20:21, Mrityunjay Kumar  wrote:
> >
> > Thank you for the clarification.
> >
> > Inline please,
> >
> >
> >
> >
> > On Tue, 9 Nov, 2021, 12:45 am Damjan Marion,  wrote:
> > >
> > > >
> > > >
> > > >
> > > > On Mon, 8 Nov, 2021, 10:18 pm Damjan Marion via lists.fd.io,
>  wrote:
> > > >
> > > > No, I didn’t bother… Not using DPDK for a long time...
> > >
> > > We know that,
> >
> > Who are “We”?
> >
> > Dpdk users as older than VPP as open source.
>
> DPDK users are not the only people on this list and even if you have
> mandate to represent all of them I don't think you have
> a right to dictate what people are allowed to say on this list.
>
> Also, it is not clear to me why it matters which one is older in
> open-source.
> This sounds to me like “my dad is stronger than yours” kind of
> argumentation.
>
> >
> >
> > >  not required to say, but many of us following DPDK and VPP.
> >
> > I disagree, i think it is important to say as many people is not aware
> that VPP is not DPDK application
> > and that VPP works better when DPDK is not involved.
> >
> > May be, but for me still it's magic,
> >
> >
> > I am saying let have respect of both users.
>
> I absolutely have respect for both users and I didn’t do anything
> disrespectful.
> I simply said that i didn’t bother to compile dpdk as it doesn’t bring any
> value to me.
>
> —
> Damjan
>
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20458): https://lists.fd.io/g/vpp-dev/message/20458
Mute This Topic: https://lists.fd.io/mt/86312689/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] About Risc-V Porting

2021-11-08 Thread Mrityunjay Kumar
Thank you for the clarification.

Inline please,




On Tue, 9 Nov, 2021, 12:45 am Damjan Marion,  wrote:

> >
> > >
> > >
> > >
> > > On Mon, 8 Nov, 2021, 10:18 pm Damjan Marion via lists.fd.io,  me@lists.fd.io> wrote:
> > >
> > > No, I didn’t bother… Not using DPDK for a long time...
> >
> > We know that,
>
> Who are “We”?
>

Dpdk users as older than VPP as open source.


> >  not required to say, but many of us following DPDK and VPP.
>
> I disagree, i think it is important to say as many people is not aware
> that VPP is not DPDK application
> and that VPP works better when DPDK is not involved.
>

May be, but for me still it's magic,


I am saying let have respect of both users.







> >  Let someone reply answer of exact inline question,
>
> Exact question was addressed to me, so please explain how “someone” can
> reply.
>
> —
> Damjan

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20456): https://lists.fd.io/g/vpp-dev/message/20456
Mute This Topic: https://lists.fd.io/mt/86312689/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] About Risc-V Porting

2021-11-08 Thread Mrityunjay Kumar
Damjan,
Inline,





On Tue, 9 Nov, 2021, 12:03 am Damjan Marion,  wrote:

>
> Sorry, I don’t understand your question.
>
> Are you asking me to forward Hrishikesh’s question if I compiled VPP with
> DPDK on RISC-V5 board to DPDK team?
> How they should know if I compiled VPP with DPDK or not?
>
> Even if it is valid question for dpdk community, I dont feel like I am
> e-mail relay agent.
> Everybody have a freedom to go and ask question on the DPDK mailing list.
>



> —
> Damjan
>
>
>
> > On 08.11.2021., at 19:18, Mrityunjay Kumar  wrote:
> >
> > Damjan, hi again
> >
> > Is it possible to share comunity queries to DPDK team?
> >
> >
> > DPDK: it's self is very big code base.
> >
> > I am only users of both open source. Knowledge exchange are appreciated.
> >
> >
> >
> > /MJ
> >
> >
> >
> >
> > On Mon, 8 Nov, 2021, 10:18 pm Damjan Marion via lists.fd.io,  me@lists.fd.io> wrote:
> >
> > No, I didn’t bother… Not using DPDK for a long time...
>

We know that,  not required to say, but many of us following DPDK and VPP.
Let someone reply answer of exact inline question,




>
> > —
> > Damjan
> >
> >> On 08.11.2021., at 16:51, Hrishikesh Karanjikar <
> hrishikesh.karanji...@gmail.com> wrote:
> >>
> >> Hi,
> >>
> >> One more thing.
> >> Did you compile with DPDK?
> >> I compiled with DPDK. I have ported DPDK for Risc-V. Not upstreamed yet.
> >> I had to compile without rdma-core.
> >>
> >>
> >>
> >> Thanks,
> >> Hrishikesh
> >>
> >> On Mon, Nov 8, 2021 at 8:19 PM Hrishikesh Karanjikar <
> hrishikesh.karanji...@gmail.com> wrote:
> >> Hi,
> >>
> >> This is great.
> >> Thanks a lot.
> >> Let me try that.
> >>
> >> Hrishikesh
> >>
> >> On Mon, Nov 8, 2021 at 8:00 PM Damjan Marion  wrote:
> >> I compiled directly on the Unmatched board. I also submitted series of
> patches which are fixing all
> >> issues you are referring to.
> >>
> >> you can use both clang and gcc, problem with clang is that some parts of
> >> VPP  unconditionally turn address sanitiser on and there is no ASAN
> shared libraries available for risc-v.
> >> You can bypass this temporarely by commenting out test_pnat, test_vat
> and test_vat2 targets.
> >>
> >> I also managed to cross-compile vpp on ubuntu system by using debian
> multiarch libs.
> >>
> >> # dpkg --add-architecture riscv64
> >>
> >> Update sources.list:
> >>
> >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/
> impish main restricted universe multiverse
> >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/
> impish-updates main restricted universe multiverse
> >> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/
> impish-backports main restricted universe multiverse
> >>
> >> # apt update
> >>
> >> # apt install crossbuild-essential-riscv64 libssl-dev:riscv64
> uuid-dev:riscv64 libnl-3-dev:riscv6 libnl-route-3-dev:riscv64
> libbpf-dev:riscv64
> >>
> >>
> >> $ cmake \
> >>   -DCMAKE_SYSTEM_NAME=Linux \
> >>   -DCMAKE_SYSTEM_PROCESSOR=riscv64 \
> >>   -DCMAKE_C_COMPILER=riscv64-linux-gnu-gcc \
> >>   -DCMAKE_CXX_COMPILER=riscv64-linux-gnu-gcc \
> >>   -DCMAKE_C_COMPILER_TARGET=riscv64-linux-gnu \
> >>   -DCMAKE_CXX_COMPILER_TARGET=riscv64-linux-gnu \
> >>   -DCMAKE_ASM_COMPILER_TARGET=riscv64-linux-gnu \
> >>   -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
> >>   -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH \
> >>   -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH \
> >>   -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY \
> >>   -DCMAKE_FIND_ROOT_PATH=/usr/riscv64-linux-gnu \
> >>   -DCMAKE_INSTALL_PREFIX=/usr/local \
> >>   -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON \
> >>   -DCMAKE_BUILD_TYPE:STRING=debug \
> >>   -G Ninja \
> >>   -S src \
> >>   -B .
> >>
> >> $ ninja
> >>
> >> $ file bin/vpp
> >> bin/vpp: ELF 64-bit LSB executable, UCB RISC-V, version 1 (SYSV),
> dynamically linked, interpreter /lib/ld-linux-riscv64-lp64d.so.1,
> BuildID[sha1]=51ac741e44727379a0fbb5936acea4d7b8bdd624, for GNU/Linux
> 4.15.0, with debug_info, not stripped
> >>
> >> And run with qemu:
> >>
> >> $ qemu-riscv64-static ./bin/vpp unix interactive
> >

Re: [vpp-dev] About Risc-V Porting

2021-11-08 Thread Mrityunjay Kumar
Damjan, hi again

Is it possible to share comunity queries to DPDK team?


DPDK: it's self is very big code base.

I am only users of both open source. Knowledge exchange are appreciated.



/MJ




On Mon, 8 Nov, 2021, 10:18 pm Damjan Marion via lists.fd.io,  wrote:

>
> No, I didn’t bother… Not using DPDK for a long time...
>
> —
> Damjan
>
> On 08.11.2021., at 16:51, Hrishikesh Karanjikar <
> hrishikesh.karanji...@gmail.com> wrote:
>
> Hi,
>
> One more thing.
> Did you compile with DPDK?
> I compiled with DPDK. I have ported DPDK for Risc-V. Not upstreamed yet.
> I had to compile without rdma-core.
>
>
>
> Thanks,
> Hrishikesh
>
> On Mon, Nov 8, 2021 at 8:19 PM Hrishikesh Karanjikar <
> hrishikesh.karanji...@gmail.com> wrote:
>
>> Hi,
>>
>> This is great.
>> Thanks a lot.
>> Let me try that.
>>
>> Hrishikesh
>>
>> On Mon, Nov 8, 2021 at 8:00 PM Damjan Marion  wrote:
>>
>>> I compiled directly on the Unmatched board. I also submitted series of
>>> patches which are fixing all
>>> issues you are referring to.
>>>
>>> you can use both clang and gcc, problem with clang is that some parts of
>>> VPP  unconditionally turn address sanitiser on and there is no ASAN
>>> shared libraries available for risc-v.
>>> You can bypass this temporarely by commenting out test_pnat, test_vat
>>> and test_vat2 targets.
>>>
>>> I also managed to cross-compile vpp on ubuntu system by using debian
>>> multiarch libs.
>>>
>>> # dpkg --add-architecture riscv64
>>>
>>> Update sources.list:
>>>
>>> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/
>>> impish main restricted universe multiverse
>>> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/
>>> impish-updates main restricted universe multiverse
>>> deb [arch=arm64,armhf,riscv64] http://ports.ubuntu.com/ubuntu-ports/
>>> impish-backports main restricted universe multiverse
>>>
>>> # apt update
>>>
>>> # apt install crossbuild-essential-riscv64 libssl-dev:riscv64
>>> uuid-dev:riscv64 libnl-3-dev:riscv6 libnl-route-3-dev:riscv64
>>> libbpf-dev:riscv64
>>>
>>>
>>> $ cmake \
>>>   -DCMAKE_SYSTEM_NAME=Linux \
>>>   -DCMAKE_SYSTEM_PROCESSOR=riscv64 \
>>>   -DCMAKE_C_COMPILER=riscv64-linux-gnu-gcc \
>>>   -DCMAKE_CXX_COMPILER=riscv64-linux-gnu-gcc \
>>>   -DCMAKE_C_COMPILER_TARGET=riscv64-linux-gnu \
>>>   -DCMAKE_CXX_COMPILER_TARGET=riscv64-linux-gnu \
>>>   -DCMAKE_ASM_COMPILER_TARGET=riscv64-linux-gnu \
>>>   -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER \
>>>   -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH \
>>>   -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH \
>>>   -DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY \
>>>   -DCMAKE_FIND_ROOT_PATH=/usr/riscv64-linux-gnu \
>>>   -DCMAKE_INSTALL_PREFIX=/usr/local \
>>>   -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON \
>>>   -DCMAKE_BUILD_TYPE:STRING=debug \
>>>   -G Ninja \
>>>   -S src \
>>>   -B .
>>>
>>> $ ninja
>>>
>>> $ file bin/vpp
>>> bin/vpp: ELF 64-bit LSB executable, UCB RISC-V, version 1 (SYSV),
>>> dynamically linked, interpreter /lib/ld-linux-riscv64-lp64d.so.1,
>>> BuildID[sha1]=51ac741e44727379a0fbb5936acea4d7b8bdd624, for GNU/Linux
>>> 4.15.0, with debug_info, not stripped
>>>
>>> And run with qemu:
>>>
>>> $ qemu-riscv64-static ./bin/vpp unix interactive
>>> buffer  [warn  ]: numa[0] falling back to non-hugepage backed buffer
>>> pool (vlib_physmem_shared_map_create: pmalloc_map_pages: failed to mmap 19
>>> pages at 0x404fc0 fd 4 numa 0 flags 0x11: Invalid argument)
>>> buffer  [warn  ]: numa[1] falling back to non-hugepage backed buffer
>>> pool (vlib_physmem_shared_map_create: pmalloc_map_pages: failed to set
>>> mempolicy for numa node 1: Function not implemented)
>>> vlib_physmem_shared_map_create: pmalloc_map_pages: failed to set
>>> mempolicy for numa node 1: Function not implementedsvm_queue_init:57:
>>> mutex_init: No such file or directory (errno 2)
>>> svm_queue_init:57: mutex_init: No such file or directory (errno 2)
>>> svm_queue_init:57: mutex_init: No such file or directory (errno 2)
>>> svm_queue_init:57: mutex_init: No such file or directory (errno 2)
>>> svm_queue_init:57: mutex_init: No such file or directory (errno 2)
>>> svm_queue_init:57: mutex_init: No such file or directory (errno 2)
>>> svm_queue_init:57: mutex_init: No such file or directory (errno 2)
>>> vat-plug/load  [error ]: vat_plugin_register: oddbuf plugin not
>>> loaded...
>>> _____   _  ___
>>>  __/ __/ _ \  (_)__| | / / _ \/ _ \
>>>  _/ _// // / / / _ \   | |/ / ___/ ___/
>>>  /_/ /(_)_/\___/   |___/_/  /_/
>>>
>>> DBGvpp#
>>>
>>>
>>> —
>>> Damjan
>>>
>>>
>>>
>>> > On 08.11.2021., at 14:59, Hrishikesh Karanjikar <
>>> hrishikesh.karanji...@gmail.com> wrote:
>>> >
>>> > Hi,
>>> >
>>> > Thanks for this patch. I will check it out. Which compile did you use?
>>> Did you cross compile or locally compiled it on Qemu or any other platform?
>>> > I was able to compile VPP using GCC10 locally on Qemu but I had to do
>>> other modifications.
>>> > At many places I was able to put 

Re: [vpp-dev] Using Option 82 inside bridge-domains

2021-10-28 Thread Mrityunjay Kumar
On Thu, 28 Oct, 2021, 11:17 pm Roger Garcia Ferre,  wrote:

> Hi MJ,
>
> Thanks for your reply. I don't know what m/c means. Those experiments are
> tested in a Linux Ubuntu 20.04 Virtual Machine using SR-IOV (Virtual
> Functions) in a X710 Intel Card.
>
> I use latest master branch (updated just today) and compiled within the
> machine.
>
> If you need more information, just ask.
>
> ​​​
>
> El Jueves, Octubre 28, 2021 18:45 CEST, "Mrityunjay Kumar" <
> kumarn...@gmail.com> Ha escrito:
>
>
> Roger Hi,
>
> I tried to understand the problem, but sorry lost by watching long mail
> content,
>
>
> I would like to ask 1 line Q?
>
> Is this your experiments work in linux m/c?
>
> m/c :  machine  [it's internal to team abbreviation and by practice typo
mismatched] ,

>
> If yes, then we will start evaluation your requirement.
>
> ) MJ
>
>
> On Thu, 28 Oct, 2021, 7:55 pm Roger Garcia Ferre, 
> wrote:
>
>> Hi,
>>
>> I'm a newbie in this project and maybe my question seem obvious for most
>> experimented people.
>>
>> I'm trying to put in a bridge different vlans form an interface trying to
>> simulate a common case in Bitstream ISPs which every single customer has a
>> different VLAN. Then I create a bvi to route traffic from vpp to another
>> gateway.
>>
>> I also configure dhcp proxy to an external DHCP server with option 82
>> support. I always get the same circuit-id in option 82 which matches to bvi
>> index interface. I don't know if it's possible to configure option 82 for
>> every interface inside the bridge domain.
>>
>> My configuration is here:
>>
>> ```
>>
>> set interface mtu 1500 VirtualFunctionEthernet0/10/0
>> set interface mtu 1500 VirtualFunctionEthernet0/11/0
>> set interface state VirtualFunctionEthernet0/10/0 up
>> set interface state VirtualFunctionEthernet0/11/0 up
>> lcp create VirtualFunctionEthernet0/10/0 host-if vf0
>> create sub-interface VirtualFunctionEthernet0/10/0 69
>> set interface ip address VirtualFunctionEthernet0/10/0.69
>> 192.168.69.18/24
>> set interface state VirtualFunctionEthernet0/10/0.69 up
>>
>> create sub-interface VirtualFunctionEthernet0/11/0 303
>> create sub-interface VirtualFunctionEthernet0/11/0 304
>> set interface l2 bridge VirtualFunctionEthernet0/11/0.303 10
>> set interface l2 bridge VirtualFunctionEthernet0/11/0.304 10
>> set interface l2 tag-rewrite VirtualFunctionEthernet0/11/0.303 pop 1
>> set interface l2 tag-rewrite VirtualFunctionEthernet0/11/0.304 pop 1
>> set interface state VirtualFunctionEthernet0/11/0.303 up
>> set interface state VirtualFunctionEthernet0/11/0.304 up
>> bvi create
>> set interface mtu 1500 bvi0
>> set interface l2 bridge bvi0 10 bvi
>> set interface ip address bvi0 185.132.88.1/24
>> set interface state bvi0 up
>>
>> set dhcp option-82 vss table 0
>> set dhcp proxy server 192.168.69.19 src-address 192.168.69.18
>>
>> ```
>>
>> If this can be implemented we are interested in contribute to this
>> feature.
>>
>> Thanks in advance,
>> --
>> Roger Garcia Ferré
>>
>> CEO & Cofounder
>>
>> Glutec
>>
>>
>> [image: logo_glutec]
>>
>>
>> [image: telf_icon] +34 93 016 00 32 <+34%2093%20016%2000%2032> | +34 618
>> 24 67 33 <+34%20618%2024%2067%2033>
>> [image: message_icon] ro...@glutec.net
>> [image: link_icon] www.glutec.net
>>
>>
>>
>>
>
>
>
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20397): https://lists.fd.io/g/vpp-dev/message/20397
Mute This Topic: https://lists.fd.io/mt/86653350/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Using Option 82 inside bridge-domains

2021-10-28 Thread Mrityunjay Kumar
Roger Hi,

I tried to understand the problem, but sorry lost by watching long mail
content,


I would like to ask 1 line Q?

Is this your experiments work in linux m/c?

If yes, then we will start evaluation your requirement.

) MJ


On Thu, 28 Oct, 2021, 7:55 pm Roger Garcia Ferre,  wrote:

> Hi,
>
> I'm a newbie in this project and maybe my question seem obvious for most
> experimented people.
>
> I'm trying to put in a bridge different vlans form an interface trying to
> simulate a common case in Bitstream ISPs which every single customer has a
> different VLAN. Then I create a bvi to route traffic from vpp to another
> gateway.
>
> I also configure dhcp proxy to an external DHCP server with option 82
> support. I always get the same circuit-id in option 82 which matches to bvi
> index interface. I don't know if it's possible to configure option 82 for
> every interface inside the bridge domain.
>
> My configuration is here:
>
> ```
>
> set interface mtu 1500 VirtualFunctionEthernet0/10/0
> set interface mtu 1500 VirtualFunctionEthernet0/11/0
> set interface state VirtualFunctionEthernet0/10/0 up
> set interface state VirtualFunctionEthernet0/11/0 up
> lcp create VirtualFunctionEthernet0/10/0 host-if vf0
> create sub-interface VirtualFunctionEthernet0/10/0 69
> set interface ip address VirtualFunctionEthernet0/10/0.69 192.168.69.18/24
> set interface state VirtualFunctionEthernet0/10/0.69 up
>
> create sub-interface VirtualFunctionEthernet0/11/0 303
> create sub-interface VirtualFunctionEthernet0/11/0 304
> set interface l2 bridge VirtualFunctionEthernet0/11/0.303 10
> set interface l2 bridge VirtualFunctionEthernet0/11/0.304 10
> set interface l2 tag-rewrite VirtualFunctionEthernet0/11/0.303 pop 1
> set interface l2 tag-rewrite VirtualFunctionEthernet0/11/0.304 pop 1
> set interface state VirtualFunctionEthernet0/11/0.303 up
> set interface state VirtualFunctionEthernet0/11/0.304 up
> bvi create
> set interface mtu 1500 bvi0
> set interface l2 bridge bvi0 10 bvi
> set interface ip address bvi0 185.132.88.1/24
> set interface state bvi0 up
>
> set dhcp option-82 vss table 0
> set dhcp proxy server 192.168.69.19 src-address 192.168.69.18
>
> ```
>
> If this can be implemented we are interested in contribute to this feature.
>
> Thanks in advance,
> --
> Roger Garcia Ferré
>
> CEO & Cofounder
>
> Glutec
>
>
> [image: logo_glutec]
>
>
> [image: telf_icon] +34 93 016 00 32 <+34%2093%20016%2000%2032> | +34 618
> 24 67 33 <+34%20618%2024%2067%2033>
> [image: message_icon] ro...@glutec.net
> [image: link_icon] www.glutec.net
>
>
>
> 
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20395): https://lists.fd.io/g/vpp-dev/message/20395
Mute This Topic: https://lists.fd.io/mt/86653350/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Linking DPDK libs to plugins

2021-10-25 Thread Mrityunjay Kumar
Damjon Hi,

I am users of DPDK since August 2011, and VPP guess it was Jan 2017,

Not sure, about contributor but we should think to take dpdk as main frame
in VPP,

For this, we need to deprecate vlib_buffer_t,  marry entire VPP with
rte_mbuf,


This can lead to avoid extra overhead to translate the dpdk vs VPP
metadata.


I am sure, we can get significant performance count as well.

What is your input.




On Mon, 25 Oct, 2021, 9:37 pm Damjan Marion via lists.fd.io,  wrote:

>
> Ok, i’m affraid that to implement this you will need to introduce lot of
> mess.
> At the end probably will be easier to implement that functionality
> natively.
>
> Which exact implementation of the dpdk mempool you are looking to use
> (ring, stack, bucket, ...)?
>
> —
> Damjan
>
>
>
> > On 25.10.2021., at 17:39,  
> wrote:
> >
> > Hi Damjan,
> >
> > Thanks for the reply
> >
> > Here are the  details:
> >
> > 1. We want to use only the rte_mempool infrastructure for lockless
> global memory pools. We will not be using any mbuf infrastructure from dpdk
> > 2. We want to use this infra across our multiple plugins
> > 3. We want to be able to include rte_mempool data structures from our
> multiple header files (.h files )
> > 4. We want to be able to make calls to rte_mempool apis from our source
> code ( .c files )
> >
> > -Original Message-
> > From: Damjan Marion 
> > Sent: Monday, October 25, 2021 5:22 AM
> > To: bjerem...@gmail.com
> > Cc: vpp-dev@lists.fd.io
> > Subject: Re: [vpp-dev] Linking DPDK libs to plugins
> >
> >
> >
> >
> >> On 25.10.2021., at 01:13, bjerem...@gmail.com wrote:
> >>
> >> Greetings,
> >>
> >> Let me preface this by saying that I really do not know much about the
> CMake utility. But I am trying to see if there is a way to make the DPDK
> libs accessible to other plugins (aside from the dpdk plugin) that are in
> their own project/subdirectory similar. I am working with v20.05 currently
> (although we are upgrading to 21.06 if that make a difference).
> >>
> >> Initially it was suggested to me that I could just add a couple lines
> >> to my CMakeLists to link the dpdk_plugin.so to my own plugin.. but I
> >> have not been able to get this to work.. It never seems to recognize
> >> the path to the .so, even if I give the absolute path
> >>
> >> set(DPDK_PLUGIN_LINK_FLAGS "${DPDK_PLUGIN_LINK_FLAGS} -L  >> plugins> -ldpdk_plugin.so")
> >>
> >> add_vpp_plugin(my_plugin
> >> ….
> >>  LINK_FLAGS
> >>  “${ DPDK_PLUGIN_LINK_FLAGS }”
> >>
> >> Another approach suggested was to maybe use dlsym to dynamically load
> symbols… Anyway, I was thinking that someone has to have had done this
> before, or maybe have more of a clue as to how to do this then I currently
> do.
> >>
> >
> >
> >
> > Please note that VPP is not DPDK application, DPDK is just optional
> device driver layer for us.
> >
> > Even if you manage to get your plugin linked against DPDK libs, there is
> no guarantee that you will be able to use all dpdk data structures. Most
> obvious example, rte_mbuf structure for a packet buffer may not be
> populated for you.
> >
> > Also use of DPDK comes with a performance cost, we need to copy buffer
> metadata left and right on both RX and TX side.
> >
> > What specific DPDK library you would like to use? We may have
> alternative proposal….
> >
> > —
> > Damjan
> >
> >
>
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20385): https://lists.fd.io/g/vpp-dev/message/20385
Mute This Topic: https://lists.fd.io/mt/86565585/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Does memif zero-copy work ?

2021-10-24 Thread Mrityunjay Kumar
Well, almost VPP experts/users are familiar about dpdk.

But dollor price question,  which one is stable one and less effort to
marry with VPP over shared memory,


I suggest, VPP user have both option open,  let them decide, which one is
better and convenient for them.




On Sun, 24 Oct, 2021, 4:28 pm Damjan Marion,  wrote:

>
> And what is the benefit of doing that?
>
> —
> Damjan
>
>
>
> On 24.10.2021., at 11:24, Mrityunjay Kumar  wrote:
>
> Well, I can dump my opinion regarding this.  we can disable memif plugin
> and  same feature can be achieved using dpdk EAL option.  For details
> please refer bellow link.
>
> https://doc.dpdk.org/guides/nics/memif.html
>
>
>
> This required small patch by adding a new statrup.conf section under dpdk
> { --vdev=net_memif0, net_memif1, … } , to handle this we need to
> translate this in dpdk plugin to inject EAL in rte_eal_init.
>
>
>
> On Sun, 24 Oct, 2021, 5:16 am Damjan Marion,  wrote:
>
>> What is your suggestion? Which part of the plugin is wrongly written?
>>
>> —
>> Damjan
>>
>> On 24.10.2021., at 00:16, Mrityunjay Kumar  wrote:
>>
>> 
>> Damjan,
>>
>> I think you are trying to explain one copy always occurs in memif
>> communication,
>>
>>
>> Currently VPP memif plugin is wrongly/misleadingly written and it also
>> misguiding to VPP users.
>>
>> When I look this code long back,  it also misleading me.
>>
>>
>>
>> On Sat, 23 Oct, 2021, 11:52 pm Damjan Marion via lists.fd.io, > me@lists.fd.io> wrote:
>>
>>>
>>> Please note that “zero copy memif” doesn’t exist.
>>>
>>> Long time ago I possibly wrongly/misleadingly added VPP feature with
>>> name “zero-copy slave”.
>>>
>>> It is vpp internal feature which avoids 2nd memcopy by exposing VPP
>>> (slave only) buffers directly to master.
>>> In such scenario still one memcpy exists….
>>>
>>>
>>> —
>>> Damjan
>>>
>>>
>>>
>>> > On 22.10.2021., at 13:19, Satya Murthy 
>>> wrote:
>>> >
>>> > Thanks MJ for the quick reply.
>>> > Will try this and check.
>>> >
>>> > --
>>> > Thanks & Regards,
>>> > Murthy
>>> >
>>> >
>>>
>>>
>>> 
>>>
>>>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20372): https://lists.fd.io/g/vpp-dev/message/20372
Mute This Topic: https://lists.fd.io/mt/86509719/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Does memif zero-copy work ?

2021-10-24 Thread Mrityunjay Kumar
Well, I can dump my opinion regarding this.  we can disable memif plugin
and  same feature can be achieved using dpdk EAL option.  For details
please refer bellow link.

https://doc.dpdk.org/guides/nics/memif.html



This required small patch by adding a new statrup.conf section under
dpdk { --vdev=net_memif0,
net_memif1, … } , to handle this we need to translate this in dpdk plugin
to inject EAL in rte_eal_init.



On Sun, 24 Oct, 2021, 5:16 am Damjan Marion,  wrote:

> What is your suggestion? Which part of the plugin is wrongly written?
>
> —
> Damjan
>
> On 24.10.2021., at 00:16, Mrityunjay Kumar  wrote:
>
> 
> Damjan,
>
> I think you are trying to explain one copy always occurs in memif
> communication,
>
>
> Currently VPP memif plugin is wrongly/misleadingly written and it also
> misguiding to VPP users.
>
> When I look this code long back,  it also misleading me.
>
>
>
> On Sat, 23 Oct, 2021, 11:52 pm Damjan Marion via lists.fd.io,  me@lists.fd.io> wrote:
>
>>
>> Please note that “zero copy memif” doesn’t exist.
>>
>> Long time ago I possibly wrongly/misleadingly added VPP feature with name
>> “zero-copy slave”.
>>
>> It is vpp internal feature which avoids 2nd memcopy by exposing VPP
>> (slave only) buffers directly to master.
>> In such scenario still one memcpy exists….
>>
>>
>> —
>> Damjan
>>
>>
>>
>> > On 22.10.2021., at 13:19, Satya Murthy 
>> wrote:
>> >
>> > Thanks MJ for the quick reply.
>> > Will try this and check.
>> >
>> > --
>> > Thanks & Regards,
>> > Murthy
>> >
>> >
>>
>>
>> 
>>
>>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20370): https://lists.fd.io/g/vpp-dev/message/20370
Mute This Topic: https://lists.fd.io/mt/86509719/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Are INPUT and PROCESS nodes considered for CPU util calculations?

2021-10-23 Thread Mrityunjay Kumar
Satya Hi,

INPUT node and Process node has its diffrent culture and uses.

Input nodes are siblings of ethernet input but process nodes are light
weight threads which run always on main threads.

In case you have any workers cpu configured,  main thread never went for
polling until not configured as rx placement,


I think you may dump more as damjan asking,


We can try to give more input



On Mon, 18 Oct, 2021, 7:50 pm Satya Murthy, 
wrote:

> Hi VPP Experts,
>
> We have an issue at hand, where we are seeing non-uniform CPU utilizations
> showing up for workers from "show threads".
> We are doing lot of work as part of some timer node, which periodically
> does maintenance of flows.
> However, this maintenance activity, which is run as part of this INPUT
> node ( timer node), is not considered into CPU utilizations.
>
> Basically, this timer node does not have any vector as its input.
> So, is this load not considered in the worker CPU utilization ?
>
> --
> Thanks & Regards,
> Murthy
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20367): https://lists.fd.io/g/vpp-dev/message/20367
Mute This Topic: https://lists.fd.io/mt/86414816/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Does memif zero-copy work ?

2021-10-23 Thread Mrityunjay Kumar
Damjan,

I think you are trying to explain one copy always occurs in memif
communication,


Currently VPP memif plugin is wrongly/misleadingly written and it also
misguiding to VPP users.

When I look this code long back,  it also misleading me.



On Sat, 23 Oct, 2021, 11:52 pm Damjan Marion via lists.fd.io,  wrote:

>
> Please note that “zero copy memif” doesn’t exist.
>
> Long time ago I possibly wrongly/misleadingly added VPP feature with name
> “zero-copy slave”.
>
> It is vpp internal feature which avoids 2nd memcopy by exposing VPP (slave
> only) buffers directly to master.
> In such scenario still one memcpy exists….
>
>
> —
> Damjan
>
>
>
> > On 22.10.2021., at 13:19, Satya Murthy 
> wrote:
> >
> > Thanks MJ for the quick reply.
> > Will try this and check.
> >
> > --
> > Thanks & Regards,
> > Murthy
> >
> >
>
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20366): https://lists.fd.io/g/vpp-dev/message/20366
Mute This Topic: https://lists.fd.io/mt/86509719/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Does memif zero-copy work ?

2021-10-22 Thread Mrityunjay Kumar
On Fri, 22 Oct, 2021, 2:44 pm Satya Murthy, 
wrote:

> Hi VPP experts,
>
> We are using memif for communication between an APP and VPP.
> We recently tried moving to zero-copy memif based on the
> example icmp_responder-zero-copy-slave.
>
> This example shows the code for the APP being in SLAVE mode.
> So, to go along with this, we made VPP as memif-MASTER and APP as SLAVE.
>
> But, the VPP memif create interface code is restricting the VPP to be
> memif-SLAVE when we use Zero-copy.
>
> So, few questions of interest are:
>
> - Does VPP latest release support zero-copy-memif with VPP being MASTER ?
>
[MJ]- For zero copy in VPP, it should be in slave mode.

- Is there any example zero-copy code for APP side being in MASTER

[MJ]-  Yes,  you can try, icmp_resp-epoll Or other example,  in case it
hard-code, you just change the flag from slave to master.


> Please let us know.
> Current example only shows APP being SLAVE for zero-copy.
>
>
> --
> Thanks & Regards,
> Murthy
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20359): https://lists.fd.io/g/vpp-dev/message/20359
Mute This Topic: https://lists.fd.io/mt/86509719/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Calling system("foo.ksh") from main thread

2021-10-01 Thread Mrityunjay Kumar
*System call is nondeterministic, so why we call it from main, *

*But alternate solution can be disscus. Let me know what exactly you need
to think of vpp can be modified. *



On Fri, 1 Oct, 2021, 9:22 pm Prashant Upadhyaya, 
wrote:

> Hi,
>
> Wanted to find out if it is safe to call a shell script like
> system("foo.ksh") in VPP from the main thread, say, periodically. The
> foo.ksh does some simple operations and does not block for a long
> time.
>
> Reason I ask is that I have noticed that the fastpath seems to stop
> working once I do the above. Before I dig further, wanted to check if
> something is already known around this.
>
> Regards
> -Prashant
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20269): https://lists.fd.io/g/vpp-dev/message/20269
Mute This Topic: https://lists.fd.io/mt/86003206/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] IPv6 unnumbered interface

2021-09-16 Thread Mrityunjay Kumar
Hi Artem
What is your use case.  Do you want to ping from vpp1 to vpp2 via memif or ?
*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Thu, Sep 16, 2021 at 4:55 PM Artem Glazychev 
wrote:

> Hello,
>
> I have a problem - unnumbered IPv6 interface is not working.
>
> *Configuration*
>
> For example, let's create memifs, one of them will be IPv6 unnumbered.
>
> *vpp1:*
>
> create interface memif id 0 master
> set int ip address memif0/0 fc00::1/120
> set int state memif0/0 up
>
> *vpp2:*
>
> create loopback interface
> set int ip address loop0 fc00::2/120
> set int state loop0 up
>
> create interface memif id 0 slave
> set int unnumbered memif0/0 use loop0
> ip route add fc00::1/128 via memif0/0
> set int state memif0/0 up
> trace add memif-input 10
>
> If we look at the traces:
>
> Packet 1
>
> 00:00:15:424691: memif-input
>   memif: hw_if_index 2 next-index 4
> slot: ring 0
> 00:00:15:435043: ethernet-input
>   IP6: 02:fe:1a:fa:94:43 -> 33:33:ff:00:00:02
> 00:00:15:435050: ip6-input
>   ICMP6: fc00::1 -> ff02::1:ff00:2
> tos 0x00, flow label 0x0, hop limit 255, payload length 32
>   ICMP neighbor_solicitation checksum 0xcf5c
> target address fc00::2
> 00:00:15:435055: ip6-mfib-forward-lookup
>   fib 0 entry 4
> 00:00:15:435057: ip6-mfib-forward-rpf
>   entry 4 itf -1 flags
> 00:00:15:435063: ip6-drop
> fib:0 adj:4 flow:0
>   ICMP6: fc00::1 -> ff02::1:ff00:2
> tos 0x00, flow label 0x0, hop limit 255, payload length 32
>   ICMP neighbor_solicitation checksum 0xcf5c
> target address fc00::2
> 00:00:15:435070: error-drop
>   rx:memif0/0
> 00:00:15:435087: drop
>   ip6-input: drops due to concurrent reassemblies limit
>
> IPv6 sends packets to mcast node, but:
>
> DBGvpp# show mfib entry
> FIB Entries:
> 0@(*, 0.0.0.0/0):  flags:Drop,
>   Interfaces:
>   multicast-ip4-chain
>   [@0]: dpo-drop ip4
> 1@(*, 224.0.0.1/32):
>   Interfaces:
>   multicast-ip4-chain
>   [@1]: dpo-replicate: [index:0 buckets:1 flags:[has-local ] to:[0:0]]
> [0] [@1]: dpo-receive
> 2@(*, 224.0.0.2/32):
>   Interfaces:
>   multicast-ip4-chain
>   [@1]: dpo-replicate: [index:1 buckets:1 flags:[has-local ] to:[0:0]]
> [0] [@1]: dpo-receive
> 3@(*, ::/0):  flags:Drop,
>   Interfaces:
>   multicast-ip6-chain
>   [@0]: dpo-drop ip6
> 4@(*, ff02::1:ff00:0/104):
>   Interfaces:
>loop0: Accept,
>   multicast-ip6-chain
>   [@1]: dpo-replicate: [index:2 buckets:1 flags:[has-local ] to:[0:0]]
> [0] [@1]: dpo-receive
> 5@(*, ff02::2/128):
>   Interfaces:
>loop0: Accept,
>   multicast-ip6-chain
>   [@1]: dpo-replicate: [index:3 buckets:1 flags:[has-local ] to:[0:0]]
> [0] [@1]: dpo-receive
> 6@(*, ff02::1/128):
>   Interfaces:
>loop0: Accept,
>   multicast-ip6-chain
>   [@1]: dpo-replicate: [index:4 buckets:1 flags:[has-local ] to:[4:288]]
> [0] [@1]: dpo-receive
> 7@(*, ff02::16/128):
>   Interfaces:
>loop0: Accept,
>   multicast-ip6-chain
>   [@1]: dpo-replicate: [index:5 buckets:1 flags:[has-local ] to:[1:136]]
> [0] [@1]: dpo-receive
>
> Entry 4 has *loop0* interface...
>
> Is there a way to make the configuration correct?
>
>
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20144): https://lists.fd.io/g/vpp-dev/message/20144
Mute This Topic: https://lists.fd.io/mt/85649127/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] getting high throughput from VPP

2021-09-16 Thread Mrityunjay Kumar
*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Thu, Sep 16, 2021 at 1:43 PM Mohsen Meamarian 
wrote:

> Hello to all dear friends,
>
> I have trouble getting high throughput from VPP. Where and how can I apply
> configurations that make the throughput as much as possible? I have
> attached a photo of the amount of throughput I should have (green) and the
> amount of throughput I have now (blue). I use 2 CPUs that each have 20
> cores. I see "htop" command results and all CPU cores almost are in 100%
> usage. I use VPP in Multi-thread mode. How can I apply effective settings
> on DPDK via VPP? For example, increasing the size of huge pages. I
> appreciate any help you can provide.
>
> Well ! If you can share, startup.conf and vppctl show threads, vppctl show
cpu , vppctl show interface ,and vppctl show hardware-interfce,  then we
can give some input for your use case.



> best regards,
> Mohsen Memariyan
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20141): https://lists.fd.io/g/vpp-dev/message/20141
Mute This Topic: https://lists.fd.io/mt/85647105/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Regarding assert in vlib_buffer_advance

2021-09-06 Thread Mrityunjay Kumar
*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Mon, Sep 6, 2021 at 6:57 PM Prashant Upadhyaya 
wrote:

> Hi,
>
> I am using VPP21.06
> In vlib_buffer_advance there is the following assert --
> ASSERT ((b->flags & VLIB_BUFFER_NEXT_PRESENT) == 0 ||
>   b->current_length >= VLIB_BUFFER_MIN_CHAIN_SEG_SIZE);
>
> The above is problematic as I have a usecase where I construct a chained
> packet.
> The first packet in the chain is containing just an ip4/udp/gtp header
> and the second packet in the chain is an IP4 packet of arbitrary
> length -- you can see that I am trying to wrap the packet into gtp via
> chaining.
> As a result this assert hits and brings the house down.
> My usecase works fine when I use the non-debug build of VPP.




> Prashant sir,  with due respect, I would like to reply your post, it may
> be debug build and release build behave in diffrent way, please ignore. we
> can post issue on formum as minor bug.
>



> Perhaps this assert should be removed ?
>
> Regards
> -Prashant
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20083): https://lists.fd.io/g/vpp-dev/message/20083
Mute This Topic: https://lists.fd.io/mt/85411974/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Regarding VPP IPSec pipeline

2021-09-06 Thread Mrityunjay Kumar
*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Mon, Sep 6, 2021 at 2:35 PM Prashant Upadhyaya 
wrote:

> Hi,
>
> I am using VPP21.06.
> I have successfully created an IPSec tunnel between VPP and a Strong Swan
> peer.
> Packets from VPP are going into ESP towards the peer, the peer is
> responding back with ESP as well (inner cleartext packets are ICMP)
>
> Now then, I have a node of my own which is sitting on the ip4-unicast
> arc and has a runs before clause like thus --
> .runs_before = VNET_FEATURES ("ip4-lookup")
>
> I am expecting that when the ESP packet lands at VPP, it will undergo
> decryption and the inner IP packet would go again to ip4-input and
> from there hit my node on the ip4-unicast arc. However this does not
> happen. It appears that the packet is going to ip4-lookup bypassing my
> node.
>
> [MJ] : IPsec decryption usually happens after IP4/IP6 protocol lookup.
Protocol lookup should hit after , ip4_input /ip6_input. If you are trying
to hijack the packet just after ip4_ipput/ip6_input. then probably you will
shee ESP packet in your custom node.




> So the question is how do I get the decrypted inner packet on ESP to my
> node.




> [MJ]: Probably this is not a good idea to hijack inner packets based on
> IP4/IP6 input.
> Just an input, you can try like, ip4_register_protocol(udp/tcp/sctp/,
> your_node_index) . then after the decryption, you will get a packet and can
> do anything as u need.
>
> Regards
> -Prashant
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20078): https://lists.fd.io/g/vpp-dev/message/20078
Mute This Topic: https://lists.fd.io/mt/85408250/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] TX Queue Placement

2021-09-03 Thread Mrityunjay Kumar
Please find the comment inline below.
*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Fri, Sep 3, 2021 at 9:52 PM Damjan Marion  wrote:

>
>
> On 03.09.2021., at 12:05, Mrityunjay Kumar  wrote:
>
> Damjan Hi,
>
>
> I’m so sorry for pointing but I’d like to make sure I understood you
> correctly. Since I don’t have specific case of tx-placement but please help
> vpp-dev <https://lists.fd.io/g/vpp-dev/message/19192> mail readers.
> · tx queues are statically mapped by vpp.
> · main thread always maps to queue 0. of each interface in vpp.
> · For the dpdk interfaces by default, number of vlib_mains [main
> thread + workers] is equal to the number of tx queues if the dpdk driver
> support such limit.
> · Tx queues limit can be controlled by startup.conf section dpdk { 
> num-tx-queues
> #abc }. But it might leads to spinlock on workers threads, refer the code.
> if (xd->tx_q_used < tm->n_vlib_mains)
> clib_spinlock_init (_elt
> (xd->tx_queues, j).lock);
>
>
> So I think, we can’t generalised workers to tx queue mapping as because,
> different vpp interface can have different number of tx queues.
>
>
> If VPP have more worker threads than number of TX queues on the specific
> interace, then VPP will share 1 queue between multiple workers for that
> interface.
>
> With the new tx queue infra (not yet enabled for dpdk). we allow dynamic
> mapping of tx queues and also sharing single queue between multiple
> workers. I.e. you can have 8 workers sharing 4 queues (2:1 mapping).
>

[MJ]: Why should we implement some features to allow an user to configure
less TX queues than worker threads? In case of hardware limitation, that's
ok.  If the number of threads is more than TX Queue , it leads to lock on
thread. Being a decade old user of dpdk, we recommend a lock-less
mechanism.
[MJ]: Why do we think of implementing tx-placemats in VPP?  If someone
shares a use case, it will definitely help me to improve my knowledge.

//MJ


> —
> Damjan
>
>
>  //MJ
>
>
> *Regards*,
> Mrityunjay Kumar.
> Mobile: +91 - 9731528504
>
>
>
> On Wed, Apr 14, 2021 at 4:54 PM Damjan Marion via lists.fd.io  me@lists.fd.io> wrote:
>
>>
>>
>> On 14.04.2021., at 13:21, Marcos - Mgiga  wrote:
>>
>> Hello,
>>
>> I increased VPP rx/tx queues in order to enable RSS on VPP instance.
>> Since VPP is running on a NUMA system with two threads with 8 cores each, I
>> would like to pin TX / RX queue to proper NUMA nodes.
>>
>> Using set interface rx-placement I was able to associate rx queue to
>> desired cores, so I would like to know if is there any possibility to pin
>> tx queue to a certain workers as well.
>>
>>
>>
>> Not at the moment. tx queues are statically mapped (0 to main thread, 1
>> to worker 0, 2 to worker 1, etc.).
>> There are some plans to implement such capability…..
>>
>>
>>
>>
>>
>>
> 
>
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20068): https://lists.fd.io/g/vpp-dev/message/20068
Mute This Topic: https://lists.fd.io/mt/82088483/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[vpp-dev] TX Queue Placement

2021-09-03 Thread Mrityunjay Kumar
Damjan Hi,



I’m so sorry for pointing but I’d like to make sure I understood you
correctly. Since I don’t have specific case of tx-placement but please help
vpp-dev <https://lists.fd.io/g/vpp-dev/message/19192> mail readers.

· tx queues are statically mapped by vpp.

· main thread always maps to queue 0. of each interface in vpp.

· For the dpdk interfaces by default, number of vlib_mains [main
thread + workers] is equal to the number of tx queues if the dpdk driver
support such limit.

· Tx queues limit can be controlled by startup.conf section
dpdk { num-tx-queues
#abc }. But it might leads to spinlock on workers threads, refer the code.

if (xd->tx_q_used < tm->n_vlib_mains)

clib_spinlock_init (_elt
(xd->tx_queues, j).lock);



So I think, we can’t generalised workers to tx queue mapping as because,
different vpp interface can have different number of tx queues.





 //MJ


*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Wed, Apr 14, 2021 at 4:54 PM Damjan Marion via lists.fd.io  wrote:

>
>
> On 14.04.2021., at 13:21, Marcos - Mgiga  wrote:
>
> Hello,
>
> I increased VPP rx/tx queues in order to enable RSS on VPP instance. Since
> VPP is running on a NUMA system with two threads with 8 cores each, I would
> like to pin TX / RX queue to proper NUMA nodes.
>
> Using set interface rx-placement I was able to associate rx queue to
> desired cores, so I would like to know if is there any possibility to pin
> tx queue to a certain workers as well.
>
>
>
> Not at the moment. tx queues are statically mapped (0 to main thread, 1 to
> worker 0, 2 to worker 1, etc.).
> There are some plans to implement such capability…..
>
>
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20065): https://lists.fd.io/g/vpp-dev/message/20065
Mute This Topic: https://lists.fd.io/mt/82088483/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Does VPP IPSec support inner fragementation

2021-07-16 Thread Mrityunjay Kumar
VPP supports fragmentation in ipsec, but overall  buffer size limit is 2048,

If mtu is 1500, then you can effort 2 fragment,

Not other than that as owe current role of vpp

On Fri, 16 Jul, 2021, 3:30 pm Vijay Kumar,  wrote:

> Hi,
>
> Does VPP IPSec support fragmentation of the traffic. I mean if VPP finds
> that the size of the inner IP datagram with or without adding ESP headers
> is going to be greater than the size of MTU then does VPP fragment packet?
>
>
>
> Regards
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#19816): https://lists.fd.io/g/vpp-dev/message/19816
Mute This Topic: https://lists.fd.io/mt/84245445/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] VPP 2005 crash : How to get DPDK lib source code/symbol info in back-trace

2021-06-30 Thread Mrityunjay Kumar
You can build vpp in debug mode, and also add in startup.conf -> unix
section + full-core-dump***

MJ

On Wed, 30 Jun, 2021, 4:02 pm chetan bhasin, 
wrote:

> Hi,
>
> I am using VPP 2005 with DPDK enabled. If the application crashes under
> dpdk library api , We won't be getting proper symbols information in the
> frame of rte_api using gdb.
>
> Will dynamically linking dpdk lib resolve this ?
> Any other suggestions?
>
> Thanks,
> Chetan
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#19654): https://lists.fd.io/g/vpp-dev/message/19654
Mute This Topic: https://lists.fd.io/mt/83889120/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[vpp-dev] IPSec between VPP and Linux, tunneling IPv4 over IPv6

2021-06-28 Thread Mrityunjay Kumar
Hi Expert
I have quick question. Does vpp support IPv4 over IPv6 ipsec tunnel?

If yes, then might be we are missing something. If no then is there any
patch available for same.

We are using vpp vesrion: 20.01

/MJ

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#19641): https://lists.fd.io/g/vpp-dev/message/19641
Mute This Topic: https://lists.fd.io/mt/83842461/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Forwarding packets from an external application to VPP Node

2021-06-25 Thread Mrityunjay Kumar
Akash Hi,
In VPP, we have different types of input nodes. for example, dpdk_input /
memif_input / af_packet_input and so on.. each input node is siblings of
ethernet_input node of vpp. Each sibling of ethernet_input has its own
property. for example, dpdk_input node uses to poll on dpdk based driver,
memif_input node poll on share memory, af_packet_input node rx packet from
the host interface.

Basically, first, you need to design your communication medium from your
application to vpp. It can be anything and create a node as siblings of
ethernet_input. your_input_node will be a consumer and the application will
be the producer. This can be achieved by multiple way but need to put a
huge amount of effort.

I will suggest trying to explore memif library and your can send your
packet to vpp vai memif_input node.

:)

*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Fri, Jun 25, 2021 at 6:37 PM Akash S R  wrote:

> Hi All,
>
> Just a Quick Question on Sending packets from an External Application
> Developed to VPP. How can a packet be sent like the above mentioned
> statement? How can the VLIB_NODE_FUNCTION of a particular protocol on VPP
> be hit so that the packet is sent to egress out?
>
> Let us consider the packet reaches dpdk-input from Spirent/NIC.How is that
> node function HIT? Can it be possible to make the same node function HIT
> from the application?
>
> Please help us with the above queries.
>
> Thanks in Advance!
>
> Regards,
> Akash
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#19637): https://lists.fd.io/g/vpp-dev/message/19637
Mute This Topic: https://lists.fd.io/mt/83783521/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] Mentorship program applicant Introduction

2021-04-16 Thread Mrityunjay Kumar
Shubh* Hi,

Nice to hear,,  but better you start contribution before your warning of
contribution.

Contribution appreciate but not advice and promotion.

Good Luck爛


On Sat, 17 Apr, 2021, 2:01 am ,  wrote:

> Hi everyone,
>
> I am Shubham Mishra, A student from India, I am fascinated by modern
> networking technologies.  I have past open-source contribution experiences
> with KDE, also worked little for Anuket. I get to know about VPP a couple
> of years ago. I found it interesting also gave a talk on VPP in our local
> community talk group. I am looking forward to applying to project Go lang
> binding for VPP TCP stack
> .
> I already have the local setup of VPP, currently looking to start with
> https://wiki.fd.io/view/VPP#Dive_Deeper section. is there anything you
> would like to suggest?
> Is there any slack channel for VPP, I didn't find anything except mailing
> list and irc?
>
> Thanks,
> Shubham Mishra
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#19236): https://lists.fd.io/g/vpp-dev/message/19236
Mute This Topic: https://lists.fd.io/mt/82152363/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] #vpp #vpp-dev

2021-03-12 Thread Mrityunjay Kumar
Hi Nikhil
Share me all CLI commands which you have triggered to vpp. I am sure you
forgot to set your interface to your IP table.

*"set interface ip table  "*

Use this and enjoy the weekend

*//MJ*







*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Thu, Mar 11, 2021 at 11:43 PM nikhil subhedar 
wrote:

> Hi All,
>
> Today i found a strange thing on my  POD on which VPP is running.  Can
> anyone please shed some light on this?
> Thanks.
> *Config:*
>
> 1) I created a loopback interface on VPP using confd CLI. on fib-index 1
> *loop2 (up):*
>
> *  L3 50.50.50.50/32 <http://50.50.50.50/32> ip4 table-id 1 fib-idx 1*Also
> , on the top of this i  am having physical/ connected interface.
>
>
>
>
>
> *VirtualFuncEthernet0/6/0.900 (up):  L3 20.20.146.226/24
> <http://20.20.146.226/24> ip4 table-id 1 fib-idx 12) *On ubuntu VM i have
> created a loopback,
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> *lo:mobile: flags=73  mtu 65536inet
> 60.60.60.60  netmask 255.255.255.255loop  txqueuelen 1000  (Local
> Loopback)And i have a connected interface ens5.900:
> flags=4163  mtu 1500inet
> 20.20.146.216 route on VM.root@vmsrvrlnx-strongswan-216:~# route -nKernel
> IP routing tableDestination Gateway Genmask Flags
> Metric RefUse Iface0.0.0.0 10.163.64.1 0.0.0.0
> UG0  00 ens32.1.75.00.0.0.0 255.255.255.252
> U 0  00 gre110.163.64.0 0.0.0.0 255.255.224.0
> U 0  00 ens320.20.146.0 0.0.0.0 255.255.255.0
> U 0  00 ens5.90050.50.50.50 20.20.146.226
> 255.255.255.255 UGH   0  00 ens5.900*
> 3) I am  trying to ping from VM to vpp.
> using command
>
> * ping 50.50.50.50 -I  ens5.900.*4)  This icmp packet is reached to VPP
> on fib index 1, but when VPP is trying to send the echo-reply it is using
> fib index 0  and because of this icmp reply packet
> is not reaching to my VM.
> Below is o/p of show trace command.
>
> Packet 1
>
> 03:50:52:603829: dpdk-input
>   VirtualFuncEthernet0/6/0 rx queue 0
>   buffer 0x4c2f16: current data 0, length 102, buffer-pool 0, ref-count 1,
> totlen-nifb 0, trace handle 0x100
>ext-hdr-valid
>l4-cksum-computed l4-cksum-correct
>   PKT MBUF: port 0, nb_segs 1, pkt_len 102
> buf_len 2176, data_len 102, ol_flags 0x180, data_off 128, phys_addr
> 0x7b0bc600
> packet_type 0x591 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
> Packet Types
>   RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
>   RTE_PTYPE_L3_IPV4_EXT_UNKNOWN (0x0090) IPv4 packet with or without
> extension headers
>   RTE_PTYPE_L4_ICMP (0x0500) ICMP packet
>   IP4: fa:16:3e:08:4c:1d -> fa:16:3e:78:ca:96 802.1q vlan 900
>   ICMP: 20.20.146.216 -> 50.50.50.50
> tos 0x00, ttl 64, length 84, checksum 0x3d88 dscp CS0 ecn NON_ECN
> fragment id 0xf1d0, flags DONT_FRAGMENT
>   ICMP echo_request checksum 0x4303
> 03:50:52:603840: ethernet-input
>   frame: flags 0x3, hw-if-index 3, sw-if-index 3
>   IP4: fa:16:3e:08:4c:1d -> fa:16:3e:78:ca:96 802.1q vlan 900
> 03:50:52:603847: ip4-input
>   ICMP: 20.20.146.216 -> 50.50.50.50
> tos 0x00, ttl 64, length 84, checksum 0x3d88 dscp CS0 ecn NON_ECN
> fragment id 0xf1d0, flags DONT_FRAGMENT
>   ICMP echo_request checksum 0x4303
> 03:50:52:603853: ip4-lookup
>   *fib* 1 dpo-idx 22 flow hash: 0x
>   ICMP: 20.20.146.216 -> 50.50.50.50
> tos 0x00, ttl 64, length 84, checksum 0x3d88 dscp CS0 ecn NON_ECN
> fragment id 0xf1d0, flags DONT_FRAGMENT
>   ICMP echo_request checksum 0x4303
> 03:50:52:603857: ip4-local
> ICMP: 20.20.146.216 -> 50.50.50.50
>   tos 0x00, ttl 64, length 84, checksum 0x3d88 dscp CS0 ecn NON_ECN
>
>
>
>  ICMP echo_request checksum 0x4303
> 03:50:52:603859: ip4-icmp-input
>   ICMP: 20.20.146.216 -> 50.50.50.50
> tos 0x00, ttl 64, length 84, checksum 0x3d88 dscp CS0 ecn NON_ECN
> fragment id 0xf1d0, flags DONT_FRAGMENT
>   ICMP echo_request checksum 0x4303
> 03:50:52:603860: ip4-icmp-echo-request
>   ICMP: 20.20.146.216 -> 50.50.50.50
> tos 0x00, ttl 64, length 84, checksum 0x3d88 dscp CS0 ecn NON_ECN
> fragment id 0xf1d0, flags DONT_FRAGMENT
>   ICMP echo_request checksum 0x4303
> 03:50:52:603863: ip4-load-balance
>   *fib* 0 dpo-idx 9 flow hash: 0x
&g

Re: [vpp-dev] VPP hanging and running out of memory due to infinite loop related to nat44-hairpinning

2020-12-02 Thread Mrityunjay Kumar
Guys, I am not sure , my input is helpful or not but the same issue was
triggered to me and we concluded it in a different way.
In your packet trace , it seems pkt is triggering to vpp node
ip4-sv-reassembly-feature. I suggest first try to enable reassembly on the
interface,

*set interface reassembly  on*

Maybe some experts can say by default reassembly is enabled on the
interface but it's not.

try it once, let us know , still u r facing problems. ??


*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Wed, Dec 2, 2020 at 9:10 PM Elias Rudberg 
wrote:

> Hello VPP experts,
>
> For our NAT44 usage of VPP we have encountered a problem with VPP
> running out of memory, which now, after much headache and many out-of-
> memory crashes over the past several months, has turned out to be
> caused by an infinite loop where VPP gets stuck repeating the three
> nodes ip4-lookup, ip4-local and nat44-hairpinning. A single packet gets
> passed around and around between those three nodes, eating more and
> more memory which causes that worker thread to get stuck and VPP to run
> out of memory after a few seconds. (Earlier we speculated that it was
> due to a memory leak but now it seems it was not.)
>
> This concerns the current master branch as well as the stable/2009
> branches and earlier VPP versions as well.
>
> One scenario when this happens is when a UDP (or TCP) packet is sent
> from a client on the inside with a destination IP address that matches
> an existing static NAT mapping that maps that IP address on the inside
> to the same IP address on the outside.
>
> Then, the problem can be triggered for example by doing this from a
> client on the inside, where DESTINATION_IP is the IP address of such a
> static mapping:
>
> echo hello > /dev/udp/$DESTINATION_IP/3
>
> Here is the packet trace for the thread that receives the packet at
> rdma-input:
>
> --
>
> Packet 42
>
> 00:03:07:636840: rdma-input
>   rdma: Interface179 (4) next-node bond-input l2-ok l3-ok l4-ok ip4 udp
> 00:03:07:636841: bond-input
>   src d4:6a:35:52:30:db, dst 02:fe:8d:23:60:a7, Interface179 ->
> BondEthernet0
> 00:03:07:636843: ethernet-input
>   IP4: d4:6a:35:52:30:db -> 02:fe:8d:23:60:a7 802.1q vlan 1013
> 00:03:07:636844: ip4-input
>   UDP: SOURCE_IP_INSIDE -> DESTINATION_IP
> tos 0x00, ttl 63, length 34, checksum 0xe7e3 dscp CS0 ecn NON_ECN
> fragment id 0x50fe, flags DONT_FRAGMENT
>   UDP: 48824 -> 3
> length 14, checksum 0x781e
> 00:03:07:636846: ip4-sv-reassembly-feature
>   [not-fragmented]
> 00:03:07:636847: nat44-in2out-worker-handoff
>   NAT44_IN2OUT_WORKER_HANDOFF : next-worker 8 trace index 41
>
> --
>
> So it is doing handoff to thread 8 with trace index 41. Nothing wrong
> so far, I think.
>
> Here is the beginning of the corresponding packet trace for the
> receiving thread:
>
> --
>
> Packet 57
>
> 00:03:07:636850: handoff_trace
>   HANDED-OFF: from thread 7 trace index 41
> 00:03:07:636850: nat44-in2out
>   NAT44_IN2OUT_FAST_PATH: sw_if_index 6, next index 3, session -1
> 00:03:07:636855: nat44-in2out-slowpath
>   NAT44_IN2OUT_SLOW_PATH: sw_if_index 6, next index 0, session 11
> 00:03:07:636927: ip4-lookup
>   fib 0 dpo-idx 577 flow hash: 0x
>   UDP: SOURCE_IP_OUTSIDE -> DESTINATION_IP
> tos 0x00, ttl 63, length 34, checksum 0x5eee dscp CS0 ecn NON_ECN
> fragment id 0x50fe, flags DONT_FRAGMENT
>   UDP: 63957 -> 3
> length 14, checksum 0xb40b
> 00:03:07:636930: ip4-local
> UDP: SOURCE_IP_OUTSIDE -> DESTINATION_IP
>   tos 0x00, ttl 63, length 34, checksum 0x5eee dscp CS0 ecn NON_ECN
>   fragment id 0x50fe, flags DONT_FRAGMENT
> UDP: 63957 -> 3
>   length 14, checksum 0xb40b
> 00:03:07:636932: nat44-hairpinning
>   new dst addr DESTINATION_IP port 3 fib-index 0 is-static-mapping
> 00:03:07:636934: ip4-lookup
>   fib 0 dpo-idx 577 flow hash: 0x
>   UDP: SOURCE_IP_OUTSIDE -> DESTINATION_IP
> tos 0x00, ttl 63, length 34, checksum 0x5eee dscp CS0 ecn NON_ECN
> fragment id 0x50fe, flags DONT_FRAGMENT
>   UDP: 63957 -> 3
> length 14, checksum 0xb40b
> 00:03:07:636936: ip4-local
> UDP: SOURCE_IP_OUTSIDE -> DESTINATION_IP
>   tos 0x00, ttl 63, length 34, checksum 0x5eee dscp CS0 ecn NON_ECN
>   fragment id 0x50fe, flags DONT_FRAGMENT
> UDP: 63957 -> 3
>   length 14, checksum 0xb40b
> 00:03:07:636937: nat44-hairpinning
>   new dst addr DESTINATION_IP port 3 fib-index 0 is-static-mapping
> 00:03:07:636937: ip4-lookup
>   fib 0 dpo-idx 577 flow hash: 0x
>   UDP: SOURCE_IP_OUTSIDE -> DESTINATION_IP
> tos 0x00, ttl 6

Re: [vpp-dev] pktgen- vpp-error

2020-11-20 Thread Mrityunjay Kumar
VPP is receiving the packet and drop in application look up.
Packet gen sending to 10.99.204.8, that is one of the vpp interface.

Now tell me what you are trying to achieve here,

/MJ


On Fri, 20 Nov, 2020, 4:09 pm Merve,  wrote:

> Hi everyone,
> I use dpdk-pktgen for packet generate. Then I send packets to vpp. But in
> vpp all received packets dropped.
> rx packets464384
> drops 464384
>
> when i see errors:
>
> DBGvpp# show errors
>Count  Node
> Reason  Severity
> 464384   ip4-udp-lookupNo listener for dst
> port   error
> 464384   ip4-icmp-error  destination unreachable
> response se   error
>
> configuration in vpp:
> DBGvpp# set int ip address TenGigabitEthernet1/0/1 10.99.204.8/24
> DBGvpp# set int state TenGigabitEthernet1/0/1 up
> DBGvpp#  set ip neighbor TenGigabitEthernet1/0/1 10.99.204.3
> ac:1f:6b:ab:99:f2
> DBGvpp# set interface mac address TenGigabitEthernet1/0/1 44:ec:ce:c1:a8:20
>
> configuration in pktgen:
>
> Pktgen:/> stop 0
> Pktgen:/> set 0 rate 0.1
> Pktgen:/> set 0 ttl 10
> Pktgen:/> set 0 proto udp
> Pktgen:/> set 0 dst mac 44:ec:ce:c1:a8:20
> Pktgen:/> set 0 dst ip 10.99.204.8
> Pktgen:/> set 0 src ip 10.99.204.3/30
> Pktgen:/> set 0 size 64
> Pktgen:/> start 0
>
> Why does vpp drop packages? Does anyone have a suggestion?
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#18107): https://lists.fd.io/g/vpp-dev/message/18107
Mute This Topic: https://lists.fd.io/mt/78386404/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] #vpp-memif Send packets out on physical interface controlled by vpp(DPDK) once they are received through memif

2020-08-14 Thread Mrityunjay Kumar
Hi Techi,
let me try to help you.
Inline please :)

*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Sat, Aug 15, 2020 at 12:16 AM  wrote:

> [Edited Message Follows]
> Hello all, Thank you for your inputs.
>
> Let me elaborate my use case. I currently have DPDK router pipeline where
> DPDK-APP-A controls intel NICs through DPDK drivers. DPDK-APP-A is also
> responsible for routing between multiple physical interfaces(NICs).
> DPDK-APP-B is a packet inspection application which does not have(need)
> control over NICs and hence receives packets from DPDK rte_ring(s).
> Current working > After rx on NICs, DPDK-APP-A sends packets(after
> processing for defrag, conntrack) to DPDK-APP-B through rte_ring and waits
> for packets on rte_ring (DPDK-APP-B should send them back after
> inspection). Once packets are received through rte_ring then DPDK-APP-A
> sends them out through one of the chosen NICs (according to destination
> address). This operation is inline i.e. if APP-B wants to drop some
> packets, it can, so that packets won't  traverse further through APP-A.
>
> APP-B does not listen/wait on any particular address since it needs to
> inspect all the traffic.
> Now I want to replace DPDK-APP-A with VPP(DPDK) and need a mechanism with
> inline support to send packets to APP-B for inspection. VPP standalone is
> working perfectly with my NAT, static routing etc requirements.
>

[MJ]: from [your dpdk-app as part of vpp]-> send IP offset to APP-B. [do
xyz in app-B], when sending back tx on memif as IP packet towards VPP [No
MAC address required]. vpp will take care about ARP and l2 header stuff.



>
> I have explored VPP-plugins a bit but APP-B won't fit as plugin (.so) for
> some internal reasons. Hence I started looking into memif (shared memory
> packet interfaces)
>

[MJ] : you can look on VPP process node, Hope this input is helpful if you
are planning to add APP-B as part of VPP. :)



>
> Hope this clears my requirement. 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


Re: [vpp-dev] #vpp-memif Send packets out on physical interface controlled by vpp(DPDK) once they are received through memif

2020-08-14 Thread Mrityunjay Kumar
Hi Techiek
*If you are clear about routing & Networking then below is the advice that
can work for you.*

*Create mem interface in IP mode. when you are sending n/w packet from your
non-vpp application to vpp, send an IP packet on mem interface. rest thing
VPP will take care. *

*Hope this will work for you. *
*:)*
*//MJ *




*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Mon, Aug 10, 2020 at 11:03 AM  wrote:

> Hello Team,
>
> How do I send packets out on a physical interface after I received them
> through libmemif in non-vpp application from VPP(DPDK)? Do I need to send
> them back to vpp so that VPP can send them out on a physical interface.
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


Re: [vpp-dev] Can one memif have multiple sockets

2020-07-02 Thread Mrityunjay Kumar
No!
Currently vpp does not support if my code understanding is correct. Can you
share me, why you need this?  Can't you achieve this by others ways. ???
/MJ


On Thu, 2 Jul 2020, 02:17 RaviKiran Veldanda,  wrote:

> Hi Team,
> I realized that memif and corresponding sockets are tightly coupled.
> Means for example memif1 --> /run/vpp/memif1.sock --> application.
> We can not have multiple sockets for memif1, is my understanding correct?
> memif1 --> /run/vpp/memif1.sock if its already mapped, then we can not
> create memif1-->/run/vpp/memif2.sock
>
> please let me know if my understanding wrong and we can create multiple
> sockets for single interface?
> //Ravi 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


Re: [vpp-dev] VPP - DPDK - No ARP learning on VPP and no ARP reply sent.

2020-05-15 Thread Mrityunjay Kumar
Hi  Balaji
Its working for me. I was just trying to help "Laurent Dumont"

--
@Laurent Dumont ,   can try it, even this arp
issue, is it working for you if you are adding neghbor IP?

 set ip neighbor  set ip neighbor [del] 
  [static] [no-fib-entry] [count ] [fib-id
] [proxy  - ]
vpp#

Please try it with adding route and arp.

you can also use this, to set vlan on vf.
#ip link set eth0 vf 18 valn 101  --> u not required to create vlan
interface in vpp.



*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Fri, May 15, 2020 at 6:59 PM Balaji Venkatraman (balajiv) <
bala...@cisco.com> wrote:

> Hi Mrityunjay,
>
>
>
> Could you try adding an ip route and recheck.
>
>
>
> I think ARP is enabled once ip routing is enabled.
>
>
>
> Thanks
>
>
>
> --
>
> Regards,
>
> Balaji.
>
>
>
>
>
> *From: * on behalf of Laurent Dumont <
> laurentfdum...@gmail.com>
> *Date: *Friday, May 15, 2020 at 4:57 AM
> *To: *Mrityunjay Kumar 
> *Cc: *vpp-dev 
> *Subject: *Re: [vpp-dev] VPP - DPDK - No ARP learning on VPP and no ARP
> reply sent.
>
>
>
> Hi everyone!
>
>
>
> Thank you for the tips
>
>
>
> The VF is created with the Trust On and spoofcheck disabled during the
> instance creation.
>
>
>
> vf 18 MAC fa:16:3e:92:30:f1, spoof checking off, link-state auto, trust on
>
>
>
> I had a change to test this a bit more. It looks like the issue is
> specifically with passing tagged traffic between the TOR and VPP.
>
>
>
> I've added the VLAN101 on the TOR and the following on the VPP side.
>
>
>
> set interface state VirtualFunctionEthernet0/5/0 up
> create sub-interfaces VirtualFunctionEthernet0/5/0 101
> set interface state VirtualFunctionEthernet0/5/0.101 up
> set interface ip address VirtualFunctionEthernet0/5/0.101 100.100.101.2/24
>
>
>
> vpp# show int address
> VirtualFunctionEthernet0/5/0 (up):
> VirtualFunctionEthernet0/5/0.101 (up):
>   L3 100.100.101.2/24
> local0 (dn):
>
>
>
> But now, if I look at the packets in error.
>
>
>
> vpp# show error
>CountNode      Reason
>  5   dpdk-input   no error
>451  arp-disabled  ARP Disabled on this
> interface
>
>
>
> Is there a way to "enable" ARP on the l3 interface?
>
>
>
>
>
> On Fri, May 15, 2020 at 1:59 AM Mrityunjay Kumar 
> wrote:
>
>
>
> This issue, we have seen on centos as well. Just for work around,
>
>
>
> ip link set promisc on eth0   #[eth0 ---  PF interface]
> ip link set eth00 vf 0 spoofchk off   #[give your vf id ]
> ip link set eth0 vf 0 trust on,
>
>
>
> , But you will see other packet on vpp VF interface as well.
>
>
>
> Can you try with IPv6, you will see more surprises. :)
>
> //MJ
>
>
>
> *Regards*,
> Mrityunjay Kumar.
> Mobile: +91 - 9731528504
>
>
>
>
>
> On Fri, May 15, 2020 at 7:55 AM Laurent Dumont 
> wrote:
>
> Hi!
>
>
>
> I was doing some initial experimentation with VPP/SRIOV/DPDK and I just
> wanted to see if some of the things I was experiencing we're expected. I
> was looking at understanding the baseline behavior for something like VPP +
> DPDK.
>
>
>
> I have a small test POC with the following topology.
>
>
>
> VM Ubuntu 18.04( with the "linux-image-extra-virtual" package)
> --->  (VPP + DPDK + IP address on the VPP interface) ---> VF ---> PF
> (compute with SRIOV on X710 cards) ---> TOR interface - untagged.
>
>
>
> What I am seeing :
>
>1. VPP is telling me I have both RX and TX packets.
>2. That said, no ARP entry for the TOR is seen on VPP
>3. The interface on the TOR is also not seeing any ARP entry for the
>VPP interface. The TOR is also indicating that RX and TX packets are
>present.
>
> Are there any inherent limitations to the ARP with VPP/DPDK?
>
>
>
> One weird thing is that trying to show the ARP from VPP doesn't seem to be
> a valid command :
>
> vpp# sh ip arp
> show ip: unknown input `arp'
>
>
>
> Here are some more debugging output.
>
>
> vpp# show version
> vpp v20.01-release built by root on 980ae64453f3 at 2020-01-29T22:13:47
>
>
>
> vpp# show int address
> VirtualFunctionEthernet0/5/0 (up):
>   L3 1.2.3.4/31
>
>
>
>
> vpp# show hardware-interfaces
>   NameIdx   Link  Hardware
> VirtualFunctionEthernet0/5/0   1 up   VirtualFunctionEthernet0/5/0
>   Link speed: 10 Gbps
>   Ethernet address fa:16

Re: [vpp-dev] VPP - DPDK - No ARP learning on VPP and no ARP reply sent.

2020-05-14 Thread Mrityunjay Kumar
This issue, we have seen on centos as well. Just for work around,

ip link set promisc on eth0   #[eth0 ---  PF interface]
ip link set eth00 vf 0 spoofchk off   #[give your vf id ]
ip link set eth0 vf 0 trust on,

, But you will see other packet on vpp VF interface as well.

Can you try with IPv6, you will see more surprises. :)
//MJ

*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Fri, May 15, 2020 at 7:55 AM Laurent Dumont 
wrote:

> Hi!
>
> I was doing some initial experimentation with VPP/SRIOV/DPDK and I just
> wanted to see if some of the things I was experiencing we're expected. I
> was looking at understanding the baseline behavior for something like VPP +
> DPDK.
>
> I have a small test POC with the following topology.
>
> VM Ubuntu 18.04( with the "linux-image-extra-virtual" package)
> --->  (VPP + DPDK + IP address on the VPP interface) ---> VF ---> PF
> (compute with SRIOV on X710 cards) ---> TOR interface - untagged.
>
> What I am seeing :
>
>1. VPP is telling me I have both RX and TX packets.
>2. That said, no ARP entry for the TOR is seen on VPP
>3. The interface on the TOR is also not seeing any ARP entry for the
>VPP interface. The TOR is also indicating that RX and TX packets are
>present.
>
> Are there any inherent limitations to the ARP with VPP/DPDK?
>
> One weird thing is that trying to show the ARP from VPP doesn't seem to be
> a valid command :
> vpp# sh ip arp
> show ip: unknown input `arp'
>
> Here are some more debugging output.
>
> vpp# show version
> vpp v20.01-release built by root on 980ae64453f3 at 2020-01-29T22:13:47
>
> vpp# show int address
> VirtualFunctionEthernet0/5/0 (up):
>   L3 1.2.3.4/31
>
>
> vpp# show hardware-interfaces
>   NameIdx   Link  Hardware
> VirtualFunctionEthernet0/5/0   1 up   VirtualFunctionEthernet0/5/0
>   Link speed: 10 Gbps
>   Ethernet address fa:16:3e:92:30:f1
>   Intel X710/XL710 Family VF
> carrier up full duplex mtu 9206
> flags: admin-up pmd maybe-multiseg tx-offload intel-phdr-cksum
> rx-ip4-cksum
> Devargs:
> rx: queues 1 (max 16), desc 1024 (min 64 max 4096 align 32)
> tx: queues 1 (max 16), desc 1024 (min 64 max 4096 align 32)
> pci: device 8086:154c subsystem 103c: address :00:05.00 numa 0
> max rx packet len: 9728
> promiscuous: unicast off all-multicast on
> vlan offload: strip off filter off qinq off
> rx offload avail:  vlan-strip ipv4-cksum udp-cksum tcp-cksum
> qinq-strip
>outer-ipv4-cksum vlan-filter jumbo-frame scatter
> rx offload active: ipv4-cksum jumbo-frame scatter
> tx offload avail:  vlan-insert ipv4-cksum udp-cksum tcp-cksum
> sctp-cksum
>tcp-tso outer-ipv4-cksum qinq-insert vxlan-tnl-tso
>gre-tnl-tso ipip-tnl-tso geneve-tnl-tso multi-segs
> tx offload active: udp-cksum tcp-cksum multi-segs
> rss avail: ipv4-frag ipv4-tcp ipv4-udp ipv4-sctp ipv4-other
> ipv6-frag
>ipv6-tcp ipv6-udp ipv6-sctp ipv6-other l2-payload
> rss active:none
> tx burst function: i40e_xmit_pkts
> rx burst function: i40e_recv_scattered_pkts_vec_avx2
>
> tx frames ok  36
> tx bytes ok 1512
> rx frames ok  26
> rx bytes ok 3014
> extended stats:
>   rx good packets 26
>   tx good packets 36
>   rx good bytes 3014
>   tx good bytes 1512
>   rx bytes  3014
>   rx broadcast packets26
>   tx bytes  1512
>   tx broadcast packets36
> local0 0down  local0
>   Link speed: unknown
>   local
>
>
> vpp# show interface
>   Name   IdxState  MTU (L3/IP4/IP6/MPLS)
> Counter  Count
> VirtualFunctionEthernet0/5/0  1  up  9000/0/0/0 rx
> packets26
> rx
> bytes2910
> tx
> packets36
> tx
> bytes1512
>

Re: [vpp-dev] Performance on the Macchiatobin

2020-05-14 Thread Mrityunjay Kumar
  >  We measured IPv4 forwarding performance in the beginning of 2019 (with
VPP Master branch) and got 5.77 MPPS with single core @ 1.6 GHz
---
Friends, what was the packet size with this MPPS. Good if you share some
more details.

*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Fri, May 15, 2020 at 12:20 AM Christian Hopps  wrote:

> We've also seen good numbers from these boxes; however, we have had issues
> with connecting them back-to-back (they don't work that way the interfaces
> flap), they seem to work when connected through a *non-marvel* based
> switch. IOW there's something weird going on with the marvel chip talking
> to itself (or the parts they use).


> Then we experienced problems with the HW encryption offload, getting into
> non-recoverable failures. This could be sw bugs either in DPDK or in the
> marvell mvsam support code, or perhaps in the HW, who knows.
>

-> can you dump the details of issue over the group? if bug with dpdk, will
try to address.


>
> Not seeing any recent development and being unable to get support from
> anyone for the boxes caused us to stop using them. It's a shame the
> performance was fantastic with the encryption HW so it was a hard choice to
> make.
>
> If you have time to debug these issues then they might be good HW,
> otherwise ...
>
> Thanks,
> Chris.
>
>
>
> > On May 14, 2020, at 2:07 PM, Govindarajan Mohandoss <
> govindarajan.mohand...@arm.com> wrote:
> >
> > Hi Shmuel,
> >  We measured IPv4 forwarding performance in the beginning of 2019 (with
> VPP Master branch) and got 5.77 MPPS with single core @ 1.6 GHz. We used
> Marvell I/O Plugin (PMD) and not DPDK. We don’t have the latest performance
> numbers.  Currently, our Macchiatobin boards are not functional.  Please
> contact Nitin Saxena for latest updates.
> >
> > Thanks
> > Govind
> >
> >> -Original Message-
> >> From: vpp-dev@lists.fd.io  On Behalf Of Shmuel H.
> via
> >> lists.fd.io
> >> Sent: Thursday, May 14, 2020 9:53 AM
> >> To: vpp-dev@lists.fd.io
> >> Subject: [vpp-dev] Performance on the Macchiatobin
> >>
> >> Hi,
> >>
> >> I have noticed that there has been some work on the Macchiatobin on vpp
> >> (as a part of the aarach64 project).
> >>
> >> However, I have not managed to find any performance results for the
> >> Macchiatobin as it is not a part of CSIT.
> >>
> >> I have found this related(?) [1] JIRA task from 2019/2018, but with no
> actual
> >> results.
> >>
> >> If someone has some information about what performance I should expect
> >> from the Macchiatobin, I would appreciate it a lot.
> >>
> >> [1]: https://jira.fd.io/browse/VPP-1267
> >>
> >> Regards,
> >> --
> >> - Shmuel Hazan
> >>
> >> mailto:s...@tkos.co.il | tel:+972-523-746-435 | http://tkos.co.il
> >
> >
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


[vpp-dev]: Buffer Memory Allocation on 2 NUMA socket platform

2020-05-14 Thread Mrityunjay Kumar
Hi Team

Please correct me if I understood wrongly.

I believe, socket-mem inside dpdk { .. } section has been deprecated. Now
in latest VPP release , there is no option to specifying socket-mem
manually. VPP has taken forcefully ownership on platform and allocating
memory from both NUMA socket.

-

What if I don’t want to share memory from both NUMA socket.  I have one use
case, where  we are running our docker container on different NUMA socket.
VPP is failing when we are trying to bring up on NUMA 1.

-

With few lines of fixes, we are able to run VPP successfully. If someone
can point me, how to bring up VPP on specific NUMA socket without any
changes in VPP 20.01, it will really appreciated.



//MJ



 *Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


Re: [vpp-dev] Forwarding packet from kernel interface to VPP srv6 policy

2020-05-13 Thread Mrityunjay Kumar
Hi Chinmaya
Run vpp services and fire the below cmd from on your linux host.

*ip link add veth-vpp type veth peer name veth-linux*
*ifconfig veth-vpp up*
*ifconfig veth-linux up*

*ip addr add 192.168.1.2/24 <http://192.168.1.2/24> dev veth-linux  *

*vppctl create host-interface name veth-vpp hw-addr 00:a0:a5:c5:ef:d8*

* vppctl set interface ip address host-veth-vpp 192.168.1.1/24
<http://192.168.1.1/24>*
* vppctl set interface state host-veth-vpp up*
*vppctl ping 192.168.1.2 #pinging from vpp to kernel*
*ping 192.168.1.1  #pinging from kerbel to vpp*

I am not sure your exact use case, but you can also try tap interface.
use cmd, create tap ? ..


*vpp# create tap ?  create tap
  create tap {id } [hw-addr ]
[rx-ring-size ] [tx-ring-size ] [host-ns ] [host-bridge
] [host-ip4-addr ] [host-ip6-addr ]
[host-ip4-gw ] [host-ip6-gw ] [host-mac-addr
] [host-if-name ] [host-mtu-size ]
[no-gso|gso|csum-offload]*

*cheers! *
*//MJ*










*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Wed, May 13, 2020 at 11:18 AM Chinmaya Aggarwal 
wrote:

> Hi,
> We have a use case where on a VPP machine, we want to generate ping
> request from kernel, which is then forwarded to VPP and then according to
> the policy configured, VPP add SRH into it and act on that packet
> accordingly.
> Can anyone please suggest how we can can achieve this?
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


Re: [vpp-dev] Chelsio CXGBE crash on startup #dpdk

2020-05-10 Thread Mrityunjay Kumar
Hi Mohammed
I guess, If you are lucky, then below patch will work for you.  Hope
your firmware version >= 1.17.14.0.


diff --git a/build/external/packages/dpdk.mk b/build/external/packages/
dpdk.mk
index a068210..49fcc5a 100644
--- a/build/external/packages/dpdk.mk
+++ b/build/external/packages/dpdk.mk
@@ -200,6 +200,7 @@ $(B)/custom-config: $(B)/.dpdk-patch.ok Makefile
$(call set,RTE_LIBRTE_PMD_TAP,$(DPDK_TAP_PMD))
$(call set,RTE_LIBRTE_GSO,$(DPDK_TAP_PMD))
$(call set,RTE_LIBRTE_PMD_FAILSAFE,$(DPDK_FAILSAFE_PMD))
*+   $(call set,RTE_LIBRTE_CXGBE_PMD,y)*
@# not needed
$(call set,RTE_ETHDEV_RXTX_CALLBACKS,n)
$(call set,RTE_LIBRTE_CFGFILE,n)


*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Sun, May 10, 2020 at 4:48 PM Mohammed Alshohayeb 
wrote:

> I am facing crash issue on startup running Chelsio T6 NIC (cxgb pmd)
>
> Also tested with v19.08.2 and v18.10
>
> OS:
> CentOS 7
>
> Config:
> unix { interactive } dpdk { dev :18:00.4 }
>
> Backtrace:
> #0  0x7f87a15f0387 in raise () from /lib64/libc.so.6
> #1  0x7f87a15f1a78 in abort () from /lib64/libc.so.6
> #2  0x0040748d in os_exit (code=1) at
> /opt/vpp-src/vpp/src/vpp/vnet/main.c:379
> #3  0x7f87a2f9b492 in unix_signal_handler (signum=11,
> si=0x7f8760e39ef0, uc=0x7f8760e39dc0) at
> /opt/vpp-src/vpp/src/vlib/unix/main.c:187
> #4  
> #5  0x7f875e36d453 in cxgbe_poll () from
> /opt/vpp-src/vpp/build-root/install-vpp_debug-native/vpp/lib/vpp_plugins/dpdk_plugin.so
> #6  0x7f875e35a3e0 in cxgbe_dev_link_update () from
> /opt/vpp-src/vpp/build-root/install-vpp_debug-native/vpp/lib/vpp_plugins/dpdk_plugin.so
> #7  0x7f875e29933d in rte_eth_link_get_nowait () from
> /opt/vpp-src/vpp/build-root/install-vpp_debug-native/vpp/lib/vpp_plugins/dpdk_plugin.so
> #8  0x7f875f675fd4 in dpdk_lib_init (dm=0x7f875fed7000 ) at
> /opt/vpp-src/vpp/src/plugins/dpdk/device/init.c:281
> #9  0x7f875f67df5e in dpdk_process (vm=0x7f87a31d4640
> , rt=0x7f8760e1a000, f=0x0) at
> /opt/vpp-src/vpp/src/plugins/dpdk/device/init.c:1632
> #10 0x7f87a2f341f4 in vlib_process_bootstrap (_a=140219410963408) at
> /opt/vpp-src/vpp/src/vlib/main.c:1475
> #11 0x7f87a23b1ee4 in clib_calljmp () at
> /opt/vpp-src/vpp/src/vppinfra/longjmp.S:123
> #12 0x7f87602e5ba0 in ?? ()
> #13 0x7f87a2f342fc in vlib_process_startup (vm=0x7f87a31d4640
> , p=0x7f8760e1a000, f=0x0) at
> /opt/vpp-src/vpp/src/vlib/main.c:1497
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


Re: [vpp-dev] How to match a specific packet to the outbound direction of a specified interface #vpp

2020-05-09 Thread Mrityunjay Kumar
which vpp version are you heading? If you r using 19.05 or less, you can
create ipsec tunnel, and route your packet to ipsec0 interface,

create ipsec tunnel local-ip  local-spi  remote-ip 
remote-spi 
set interface ipsec key ipsec0 local crypto aes-gcm-128
2b7e151628aed2a6abf7158809cf4f3d
set interface ipsec key ipsec0 remote crypto aes-gcm-128
2b7e151628aed2a6abf7158809cf4f3d
set interface state ipsec0 up
set interface unnumbered ipsec0 use 
ip route add 192.168.200.10/24 via ipsec0

if your are using >= 19.08, best practice, you can create policy based
tunnel.

ipsec policy add spd 1 priority 100 inbound action bypass protocol 50
ipsec policy add spd 1 priority 100 outbound action bypass protocol 50
ipsec policy add spd 1 outbound action bypass local-ip-range
10.168.4.0-10.168.4.255 remote-ip-range 10.168.2.0-10.168.2.255
ipsec sa add 10 spi 3391172682 esp crypto-alg aes-gcm-256 crypto-key
523a88fa4ad8c0325d75c933d9e567c23879ea701355207551bc2cf7d963c3dac8dcdca2
tunnel-src 10.168.2.4 tunnel-dst 10.168.4.11
ipsec sa add 20 spi 3443809241 esp crypto-alg aes-gcm-256 crypto-key
6062e3e9a9d578f58527242e9fbd48aeef7a0f8b4adc4569e7a84cda19c14ae21aa0a2b4
tunnel-src 10.168.4.11 tunnel-dst 10.168.2.4
ipsec policy add spd 1 priority 10  inbound action protect sa 10
local-ip-range 10.168.3.11 - 10.168.3.11 remote-ip-range 10.168.2.4 -
10.168.2.4
ipsec policy add spd 1 priority 10 outbound action protect sa 20
local-ip-range 10.168.3.11 - 10.168.3.11 remote-ip-range 10.168.2.4 -
10.168.2.4



cheers!   enjoy
//MJ



*Regards*,
Mrityunjay Kumar.
Mobile: +91 - 9731528504



On Sat, May 9, 2020 at 12:16 PM  wrote:

> Hi VPP hackers,
> My program and vpp communicate through the memif interface.
> I want to make vpp match specific packets(such as ospf packet), and then
> redirect to the outbound direction of the memif interface.
>
> I don't know how to match a specific packet to the outbound direction of a
> specified interface.
>
> Can someone provide an example of configuration.
> Thanks in advance!
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


Re: [vpp-dev] VPP 19.04:: 14 bytes extra Overhead on memif, from master to slave direction

2019-07-31 Thread Mrityunjay Kumar
Hi Damjan Marion

I have small query as below. let me know if I am missing some things


commit cef1db9c13f57a1fc49c9e500adffafa0b9ca728
Author: Damjan Marion 
Date:   Wed Mar 28 18:27:38 2018 +0200

memif: zero copy slave

Change-Id: I65306fb1f8e39221dd1d8c00737a7fb1c0129ba8
Signed-off-by: Damjan Marion 



Regards

Mrityunjay


From: Mrityunjay Kumar
Sent: Wednesday, July 31, 2019 2:28:54 PM
To: i...@fd.io ; vpp-dev@lists.fd.io 
Cc: kmrityunj...@altiostar.com 
Subject: VPP 19.04:: 14 bytes extra Overhead on memif, from master to slave 
direction


Hi

I have observed that, there are 14 bytes extra overhead added in packet in case 
of route from memif [master, mode: IP] to memif [salve, Mode:IP].

This 14 bytes overhead has been added by salve after receiving the packet from 
mem interface.



To fix this issue, I have added/modified the code as below.



VPP-19.04

diff --git a/src/plugins/memif/node.c b/src/plugins/memif/node.c

index 07ce76d..dabf083 100644

--- a/src/plugins/memif/node.c

+++ b/src/plugins/memif/node.c

@@ -595,7 +595,8 @@ memif_device_input_zc_inline (vlib_main_t * vm, 
vlib_node_runtime_t * node,

   d0 = >desc[s0];

   hb = b0 = vlib_get_buffer (vm, bi0);

   b0->current_data = start_offset;

-  b0->current_length = start_offset + d0->length;

+  //b0->current_length = start_offset + d0->length;

+  b0->current_length =  d0->length;

   n_rx_bytes += d0->length;



   if (0 && memif_desc_is_invalid (mif, d0, buffer_length))

@@ -618,7 +619,8 @@ memif_device_input_zc_inline (vlib_main_t * vm, 
vlib_node_runtime_t * node,

  /* current buffer */

  b0 = vlib_get_buffer (vm, bi0);

  b0->current_data = start_offset;

- b0->current_length = start_offset + d0->length;

+ //b0->current_length = start_offset + d0->length;

+  b0->current_length =  d0->length;

  hb->total_length_not_including_first_buffer += d0->length;

  n_rx_bytes += d0->length;





Please correct me if I am missing some configuration.



Regards

Mrityunjay


=
Please refer to https://northamerica.altran.com/email-disclaimer
for important disclosures regarding this electronic communication.
=
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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


[vpp-dev] VPP 19.04:: 14 bytes extra Overhead on memif, from master to slave direction

2019-07-31 Thread Mrityunjay Kumar
Hi

I have observed that, there are 14 bytes extra overhead added in packet in case 
of route from memif [master, mode: IP] to memif [salve, Mode:IP].

This 14 bytes overhead has been added by salve after receiving the packet from 
mem interface.



To fix this issue, I have added/modified the code as below.



VPP-19.04

diff --git a/src/plugins/memif/node.c b/src/plugins/memif/node.c

index 07ce76d..dabf083 100644

--- a/src/plugins/memif/node.c

+++ b/src/plugins/memif/node.c

@@ -595,7 +595,8 @@ memif_device_input_zc_inline (vlib_main_t * vm, 
vlib_node_runtime_t * node,

   d0 = >desc[s0];

   hb = b0 = vlib_get_buffer (vm, bi0);

   b0->current_data = start_offset;

-  b0->current_length = start_offset + d0->length;

+  //b0->current_length = start_offset + d0->length;

+  b0->current_length =  d0->length;

   n_rx_bytes += d0->length;



   if (0 && memif_desc_is_invalid (mif, d0, buffer_length))

@@ -618,7 +619,8 @@ memif_device_input_zc_inline (vlib_main_t * vm, 
vlib_node_runtime_t * node,

  /* current buffer */

  b0 = vlib_get_buffer (vm, bi0);

  b0->current_data = start_offset;

- b0->current_length = start_offset + d0->length;

+ //b0->current_length = start_offset + d0->length;

+  b0->current_length =  d0->length;

  hb->total_length_not_including_first_buffer += d0->length;

  n_rx_bytes += d0->length;





Please correct me if I am missing some configuration.



Regards

Mrityunjay


=
Please refer to https://northamerica.altran.com/email-disclaimer
for important disclosures regarding this electronic communication.
=
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

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