-
Notifications
You must be signed in to change notification settings - Fork 4
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
Just a question :-) #1
Comments
That's a good question. Currently, the latte matching logic works for traffic patterns where there is at most one Packet_In in flight from every switch. MTCbench working in "latency" mode is such a case, where switches send Packet_In's and wait for responses before sending the next ones. For traffic that does not follow this pattern and out-of-order replies are possible, we have to inspect deeper in each Packet_In and find fields against we will match it with a Flow_Mod (e.g. src_mac, dst_mac). I am currently investigating this. As regards lost Packet_In's, there is no code to track them yet but it should be relatively simple to implement: the idea is to declare a packet as lost, either when its Flow_Mod is too late (based on a Tmax value), or when the same Packet_In has arrived in the meantime as a result of a retransmission from the switch but has found the previous one still in its bucket. |
Hi Nikos, When I searched this time, I found a OF controller which is https://github.com/hkwi/gopenflow this should have code that will help, but I haven’t located the From: Nikos Anastopoulos [mailto:[email protected]] That's a good question. Currently, the latte matching logic works for traffic patterns where there is at most one Packet_In in flight from every switch. MTCbench working in "latency" mode is such a case, where switches send Packet_In's and wait for responses before sending the next ones. For traffic that does not follow this pattern and out-of-order replies are possible, we have to inspect deeper in each Packet_In and find fields against we will match it with a Flow_Mod (e.g. src_mac, dst_mac). I am currently investigating this. As regards lost Packet_In's, there is no code to track them yet but it should be relatively simple to implement: the idea is to declare a packet as lost, either when its Flow_Mod is too late (based on a Tmax value), or when the same Packet_In has arrived in the meantime as a result of a retransmission from the switch but has found the previous one still in its bucket. — |
Thanks Al, I will check it out! |
I think this is just the initial steps - and I never read go before, so...
In the final section:
you use the switch port as an index, and match the packet_in time
to the response packet and calculate latency. So, do you assume
only one packet from the switch is being served at a time?
Or, will the match find the first packet in the packet_in list?
And what if there is no response packet from the controller (lost packet_in)?
The text was updated successfully, but these errors were encountered: