Hi,

 

All folks on this mailer are a VPP crew.  So, even if I release a binary of the 
P4toVPP compiler, would anyone in VPP land even use the compiler?  

 

One would have to write P4 programs first.  Not that writing a P4 program is 
rocket science – there is a Slack channel and mailer for P4 with very helpful 
crew.  I don’t see an online repo of P4 programs just yet.  VPP scripts 
generate a skeleton for a VPP plugin including API for plugin enable-disable.  
The compiler my company has developed generates CLI, API, and API handlers for 
plugin enable-disable and also for table entry add/delete/show tables.  We are 
optimizing the compiler for better traffic performance as we speak.  At least, 
if anyone uses the compiler, one doesn’t have to write CLI, API, and API 
handlers any more for a VPP plugin.

 

Please let me know if anyone has any interest?

 

Thanks,

 

Hemant 

 

From: Andrew 👽 Yourtchenko <[email protected]> 
Sent: Thursday, September 17, 2020 2:21 AM
To: [email protected]
Cc: [email protected]
Subject: Re: [vpp-dev] run existing plugin in VPP

 

Excellent!

 

So would my guess be right that you plan to autogenerate the tests as well ?

--a





On 17 Sep 2020, at 02:54, [email protected] <mailto:[email protected]>  wrote:



I did a “ps -ef | grep -I vpp” and found a few vpp processes (?) running.  I 
killed them and then the single cdp test ran fine on using “sudo make test 
TEST=test_cdp” from vpp root directory.  

 

==============================================================================

CDP Test Case 

==============================================================================

test_cdp_overflow_tlv (test_cdp.TestCDP)                             0.28 OK

test_cdp_underflow_tlv (test_cdp.TestCDP)                            0.29 OK

test_enable_cdp (test_cdp.TestCDP)                                   0.23 OK

test_send_cdp_packet (test_cdp.TestCDP)                              0.28 OK

 

==============================================================================

TEST RESULTS:

     Scheduled tests: 4

      Executed tests: 4

        Passed tests: 4

==============================================================================

 

Hemant

 

From: [email protected] <mailto:[email protected]>  <[email protected] 
<mailto:[email protected]> > 
Sent: Wednesday, September 16, 2020 7:43 PM
To: '[email protected]' <[email protected] <mailto:[email protected]> >
Cc: '[email protected]' <[email protected] <mailto:[email protected]> >
Subject: RE: [vpp-dev] run existing plugin in VPP

 

Andrew,

 

Thanks.  I will have to play more with VPP because “sudo make test 
TEST=test_cdp” fails.  If anyone else is able to run this test, then I know I 
have some issues with my VPP setup or dependencies.

 

I found the CSIT reports – thanks!

 

Regarding my p4 to vpp compiler, it’s work in progress.  I will update you all 
when something is ready for use.

 

Hemant  

 

From: [email protected] <mailto:[email protected]>  <[email protected] 
<mailto:[email protected]> > On Behalf Of Andrew Yourtchenko
Sent: Wednesday, September 16, 2020 7:10 PM
To: [email protected] <mailto:[email protected]> 
Cc: [email protected] <mailto:[email protected]> 
Subject: Re: [vpp-dev] run existing plugin in VPP

 

Hemant,

 

On 17 Sep 2020, at 00:43, [email protected] <mailto:[email protected]>  wrote:



Andrew,

 

Thanks!  Yes, I am a developer trying to get started with VPP.  

 

 

Cool! So my “find the answer” quiz was on target :-)

 

I run VPP using “make run-release” and get to the “vpp#” prompt.  I could do a 
“cdp enable” and thus I know this plugin has been loaded.  

 

Now how to I run the packet testing in vpp/src/plugins/cdp/test/?  There is a 
test_cdp.py in the path.  I am familiar with PTF.

 

“Make test-help” will give more info.

 

Once I can run test.py for a plugin, I’d like to learn how to run performance 
testing to see how many packets/sec of a certain size I can achieve for a 
plugin.  What would be a good plugin to test performance with?

 

That’s trickier... look around  https://wiki.fd.io/view/CSIT - basically, perf 
testing the VPP is a separate project :-) but the good thing is some reports 
might be already there..

 

 

I love the fact that you (and perhaps others) have added lua examples to 
vpp-api.

 

Lua didn’t get much love for quite a while and I think would need some 
resuscitations to work :-)

That said, last time I had a half a day to toy  with it, in half a day I had 
something sorta working... but don’t expect what is in the tree to be up to 
date... it’s waiting for the folks to help it :-)

 

 

I am developing a compiler which ingests P4 code and outputs a VPP plugin.  
First, I will make the compiler functionally correct to support as many P4 
features and as many VPP features.  Then I will worry about performance which 
is a hard problem.

 

This is a fun idea!

 

 

If you see a VPP plugin, several files can be auto-generated by compiler or 
script.  My compiler is already generating these files:

 

-rw-rw-r--  1 hemant hemant   1498 Sep 16 18:38 tmp_test.c

-rw-rw-r--  1 hemant hemant  10577 Sep 16 18:38 tmp.h

-rw-rw-r--  1 hemant hemant  79257 Sep 16 18:38 tmp.c

-rw-rw-r--  1 hemant hemant    412 Sep 16 18:38 tmp.api

-rw-rw-r--  1 hemant hemant    250 Sep 16 18:38 CMakeLists.txt

 

Nice! There is the lisp script somewhere in the tree that asks questions and 
spits out the plugin, but it’s a skeleton, with P4 one could probably go quite 
a good bit further...

 

Is your compiler gonna be open source ?

 

—a

 

 

 

Best wishes,

 

Hemant

 

 

 

From: Andrew 👽 Yourtchenko <[email protected] <mailto:[email protected]> > 
Sent: Wednesday, September 16, 2020 4:12 PM
To: [email protected] <mailto:[email protected]> 
Cc: [email protected] <mailto:[email protected]> 
Subject: Re: [vpp-dev] run existing plugin in VPP

 

Hey Hemant,

 

Welcome! :-)


Most of the plugins load automatically (default), some don’t by default.. (see 
src/plugins/unittest/unittest.c on how it’s overridden).

 

You can take a look at the config required to change the defaults in 
test/framework.py, line 422)

 

Looking at those places, as well as the CDP plugin, should answer the question.

 

(I am assuming you are a developer trying to get started with VPP so trying to 
give the pointers I myself would have found useful).

 

--a






On 16 Sep 2020, at 19:11, hemant via lists.fd.io <[email protected] 
<mailto:[email protected]> > wrote:



Folks,

 

I am new to VPP.  I see several plugins in vpp/src/plugins.  How do I run an 
existing plugin in VPP such as cdp? 

 

Regards,

 

Hemant

Attachment: smime.p7s
Description: S/MIME cryptographic signature

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#18513): https://lists.fd.io/g/vpp-dev/message/18513
Mute This Topic: https://lists.fd.io/mt/76892185/21656
Group Owner: [email protected]
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to