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

Solution for ipv4_forward doesn't run => other problems? #38

Closed
jyu911 opened this issue Jun 5, 2017 · 3 comments
Closed

Solution for ipv4_forward doesn't run => other problems? #38

jyu911 opened this issue Jun 5, 2017 · 3 comments

Comments

@jyu911
Copy link

jyu911 commented Jun 5, 2017

Hi,

VM was copied from USB during P4 Developer Day 2017, so it should be good.
My problem is the solution doesn't run. After examining the logs, the LPM lookup
resulted in a miss (used the correct ipv4.dstAddr). The table for S1 was populated
during runtime. However, for all the switches, there were errors similar to:

No handlers could be found for logger "thrift.transport.TSlocket"
Could not connect to thrift client on port 909x (x = 0-2)

right after all the table_adds. Search for similar problems only pointed to
a previous deprecation issue, but this should all be the latest. Could there
be some other problems (setup) with VirtualBox I'm using?

Thanks for any pointers. BTW, solution for other exercises don't run
either, so it's probably my setup instead of the code itself. Sorry for
the submission here, if this is the wrong place.

James

@antoninbas
Copy link
Member

I don't think the warning No handlers could be found for logger "thrift.transport.TSlocket" is relevant.
Also I don't think this is correct: "The table for S1 was populated during runtime". If the CLI cannot connect to the Thrift server, there is no way the table can be populated...

Did you check if you could run some of these older exercises: https://github.com/p4lang/tutorials/tree/master/examples ?

Our Pythons scripts actually check that the Thrift server can be reached when starting the switches (see https://github.com/p4lang/tutorials/blob/master/P4D2_2017/utils/mininet/p4_mininet.py#L98), so I'm surprised that this error is even possible. Do you see that log message in the output: https://github.com/p4lang/tutorials/blob/master/P4D2_2017/utils/mininet/p4_mininet.py#L146
If you do see it, it means that we were able to connect to the TCP server at some point.

You seem to imply in your question that the switches didn't crash. I don't see how it is possible for the switches to be running without their respective Thrift servers being available.
I think you want to make the switches are running. If they are, you want to make sure that the TCP ports 909x are open, e.g. using netstat. If they are, try to telnet to one of them. If you can go this far, then it should be straightforward to debug. If the ports are not open on the other hand, I have no idea what the problem could be.

@jyu911
Copy link
Author

jyu911 commented Jun 8, 2017 via email

@gopchandani
Copy link

Having the exact same issue with the VM that has been uploaded for P4D2_2017 (http://p4.org/p4-developer-day-2017/).

Tried telnetting the switches at ports 9090, 9091, 9092, and it gets through.
Still seeing the same error (could not connect to thrift client on port 9090) coming out of simple_switch_CLI.

@jnfoster jnfoster closed this as completed Jun 3, 2020
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

4 participants