Hello @andyfingerhut, sorry for the late reply.
I’ve followed your suggestion but unfortunately, I still didn’t figure it out. So I think I need to provide you the context of my situation and what steps that I’ve done so that you may better understand it. And also, I’m totally a newbie in this field, so I hope that you’ll understand if I have too many naive questions and my limited capabilities. Thank you!
I’m using the latest “Development VM” (2023-Apr-03), I have cloned the tutorials repo from Github and working on the basic.p4 exercise.
What I want to do is to create 2 queues per port on each switch in the topology. I’ve opened the MakeFile, and it said that I’m using simple_switch_grpc
I go to the basic exercise directory in the terminal and
make build the program. You’ve said if I use the tutorials repo, I need to find a Python file and modify it to add the
--priority-queues option. But when I go to the build folder and type in
simple_switch_grpc --help and I see the
--priority-queues command. So I assume that it is not necessary, also because I’m not familiar with the suggest of modifying some Python file.
Then I type in the following:
make run the program on a second terminal and I got this error:
This is the s1-log
So I guess the command I have typed earlier (
simple_switch_grpc basic.json -- --priority-queues 2) is not related to switches in the basic exercise, they’re just two different processes.
I try to change the
grpc-server-addr to the one to which s1 connects, which is
And I got this result:
My questions are:
Does finding and modifying the specific Python file you’ve mention is a must, because I was able to type in the command
simple_switch_grpc basic.json -- --priority-queues 2 in the basic exercise directory?
This is the content of the utils folder in the tutorials repo:
More important, how can I “implement” the
--priority-queues <number of queue> on switches in the basic exercise? I’ll be able to do that just by the command above if everything is configured properly or I need to do something else.
I went into the
/home/vagrant/behavioral-model/targets/simple_switch_grpc and opened
switch_runner.h file. I saw this:
Am I supposed to change the
default_nb_queues_per_port to another value, does that make any different?
Thank you for taking the time to read this post, I know this is a very long post, but I really need this problem to be solved. And if I have some misconception, it would be great if you could point out them to me.
I’m looking forward to hearing your answers, they will mean the world to me.