openNetVM icon indicating copy to clipboard operation
openNetVM copied to clipboard

Bug fix: Flow Directory. (test_flow_dir)

Open bdevierno1 opened this issue 4 years ago • 15 comments

Test flow directory NF bug fix.

Summary:

NF was crashing when attempting to add a new rule to the shared sdn_nf flow table.

Usage: As described in readme.

This PR includes
Resolves issues
Breaking API changes
Internal API changes
Usability improvements
Bug fixes
New functionality
New NF/onvm_mgr args
Changes to starting NFs
Dependency updates
Web stats updates

Merging notes:

  • Dependencies: None

TODO before merging :

  • [x] PR is ready for review

This resolves issue #247

Test Plan:

Run NF with Pktgen. Test that NF does not crash as before. As I made a change to the fill key functionality. All NFs that add/remove/lookup keys to a flow table need to be tested.

Review:

Anyone.

bdevierno1 avatar Jul 14 '20 09:07 bdevierno1

In response to PR creation

CI Message

Your results will arrive shortly

onvm avatar Jul 14 '20 09:07 onvm

In response to PR creation

CI Message

Error: Failed to parse Pktgen stats

onvm avatar Jul 14 '20 09:07 onvm

@onvm Hello HAL, do you read me?

bdevierno1 avatar Jul 17 '20 04:07 bdevierno1

@onvm Hello HAL, do you read me?

CI Message

Your results will arrive shortly

onvm avatar Jul 17 '20 04:07 onvm

@onvm Hello HAL, do you read me?

CI Message

Error: Failed to fetch results from nimbnode23

onvm avatar Jul 17 '20 04:07 onvm

In my last commit I have added a new feature/example populating service chains to the flow table #60 . You can then use this to test the onvm flow dir API by starting up up to four test_flow_dir NFs. Another way is to run this NF to populate the flow table then subsequently use the simple forward NF; but first modifying the packet handler to use the action next instead.

I have made further changes to the flow table api as it was printing the keys I had pre-defined backwards.

I have reverted the flow_entry variable to initialize to NULL. However, I had to allocate memory within the packet handler which will probably be slower. I will update this soon as there is probably a better way to do this.

bdevierno1 avatar Jul 20 '20 09:07 bdevierno1

image This is ready for review. If users set destination to 255 it will use the next action. Notable changes in last few commits involve using onvm's rss hash during table lookup.

bdevierno1 avatar Jul 28 '20 09:07 bdevierno1

@onvm Hello HAL, do you read me?

bdevierno1 avatar Jul 28 '20 15:07 bdevierno1

@onvm Hello HAL, do you read me

CI Message

Your results will arrive shortly

onvm avatar Jul 28 '20 16:07 onvm

@onvm Hello HAL, do you read me

CI Message

Your results will arrive shortly

onvm avatar Jul 28 '20 16:07 onvm

@onvm is it really slow?

kevindweb avatar Jul 28 '20 20:07 kevindweb

@onvm is it really slow?

CI Message

Your results will arrive shortly

onvm avatar Jul 28 '20 20:07 onvm

@onvm Test please.

bdevierno1 avatar Jul 29 '20 03:07 bdevierno1

@onvm Test please.

CI Message

Your results will arrive shortly

onvm avatar Jul 29 '20 03:07 onvm

Ran two tests using c220g1 nodes in Wisconsin site. Noticed about a 2% performance drop. Screen Shot 2020-08-03 at 3 59 31 PM Without setting 255 as next action. Screen Shot 2020-08-03 at 4 01 07 PM

bdevierno1 avatar Aug 03 '20 08:08 bdevierno1