Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

generateifrequired not regenerating traffic items #66

Closed
pwlodawi opened this issue Jun 24, 2019 · 4 comments
Closed

generateifrequired not regenerating traffic items #66

pwlodawi opened this issue Jun 24, 2019 · 4 comments
Assignees

Comments

@pwlodawi
Copy link

What is .../ixnetwork/traffic/operations/generateifrequired supposed to do ? I know it should regenerate "dirty" traffic but what does it mean exactly ? Does it recognize NexGen protocols ?

My case is like follows:

  1. I load config. It has some NexGen protocols and traffic items between them configured
  2. I start all protocols
  3. When protocols are up I do: post - http://10.10.0.222:11019/api/v1/sessions/1/ixnetwork/traffic/operations/generateifrequired - {'json': {'arg1': '/api/v1/sessions/1/ixnetwork/traffic'}} and get 202 success
  4. I apply and start traffic but traffic fails (100% loss).

If I go to API browser and generate each traffic item one by one using
ixnetwork/traffic/trafficItem//operations/generate and then apply and run traffic it works fine (0% loss)

Best Regards,
PW

@therkong
Copy link
Collaborator

therkong commented Jun 24, 2019 via email

@therkong therkong self-assigned this Jun 24, 2019
@pwlodawi
Copy link
Author

API browser shows that generateifrequired doesn't accept traffic item as parameter.
Shouldn't generateifrequired generate all traffic items if needed ?

@therkong
Copy link
Collaborator

Yes, I see that generateifRequierd() is for traffic level.
dirty traffic means the traffic item was marked as Regenerate Required (for example, when editing some traffic option that requires traffic to be regenerated in order to take effect). However, traffic item is detected as regenerate required in a subset of cases only, not for all possible cases. It will not catch cases when user makes protocol changes that might impact traffic for example.
You should do generate() on traffic item in order to ensure the learned info fields from the protocols are propagated to traffic items.

@pwlodawi
Copy link
Author

Ok. I see it's better to forget about generateifrequired and simply loop through traffic items and call generate on each one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants