Open ggiamarchi opened 6 years ago
Hi and thanks for the feedback.
A little bit of context first:
There are really two sets of port numbers - the numbers on the front panel ports (which you're looking for) and the numbers on the Broadcom chip. Unfortunately, on most platforms due to the way they optimize board layout (e.g., to minimize trace lengths, minimize EMF interference, etc.), the front panel ports do not map 1:1 with the Broadcom chip ports.
If you look at the portId field in the PortInfoThrift structure (which is what's being read by the list_ports command), that's reporting the Broadcom port Ids. The name, however (e.g., eth1/1/1), should match the port you care about.
Does that help?
FYI: https://github.com/facebook/fboss/blob/master/fboss/agent/if/ctrl.thrift#L262
Of course it helps. Thank you for your response, that makes sense. I was expecting this kind of explanation.
By the way, in my case the field name
is always empty. How it is supposed to be populated ?
@ggiamarchi I cannot answer authoritively, but when making LLDP output useful stuff we had to set a port name ourselves and we resorted to this: https://github.com/dhtech/fboss/blob/f8c87a0d2855acdcf92e358bc900200cfa1a31bf/etc/wedge.json#L57. Maybe that works here as well?
Yes it works, thank you @bluecmd. I didn't pay attention to this attribute in the configuration spec...
Hello,
On a Wedge 16x I'm running FBOSS version a376ab2 compiled from sources and running ONL-DEB8 with kernel 3.16.53. I'm using the configuration fboss/agent/configs/sample1.json.
When running the command
fboss_route.py list_ports
, I see that port numbers in the output does not match the actual port numbers of the switch. In the output logical ports 1, 2, 3, 4 matches physical port 2, Ports 5, 6, 7, 8 matches physical port 1. Ports 3 and 4 are swapped as well and so on.Does someone have an explanation for that ? Is it configurable somewhere ?
Of course I could implement the mapping on the client side. But if there is a better solution I would prefer to do it in a clean way.