ONOS BMv2 app not loading the expected flows

Hello community,

I’m trying to implement basic packet forwarding in a GNS3 topology, using a Stratum BMv2 switch and ONOS. I’m trying the easiest example with two Alpine Linux connected to the switch so they can be reachable by ICMP between one another. I’m activating the following apps from ONOS controller:

  • org.onosproject.fwd
  • org.onosproject.drivers.bmv2

When I activate bmv2 app, the connectivity is possible between the hosts only if I manually indicate each Alpine Linux the ARP entry to find the other device. The only flow that I see active in the web GUI is ipv4. I am expecting flows that look like this so the ping can work directly without manual intervention:

Among the ONOS logs, this is the warning that concerns me the most (can’t see what’s wrong after exploring the Java classes involved):
WARN | MeterDriverProvider-0 | ReadRequestImpl | 228 - org.onosproject.onos-protocols-p4runtime-ctl - 2.5.10.SNAPSHOT | Unable to read cells for meter ‘ingress.host_meter_control.host_meter’ from device:s1: No such meter in P4Info with name ‘ingress.host_meter_control.host_meter’

My meters are the default ones provided with ONOS (onos/pipelines/basic/src/main/resources/p4c-out/bmv2/basic_p4info.txt) and the meter ‘ingress.host_meter_control.host_meter’ is there.

Best regards,
Juan

Hi Juan,

You should also activate the ONOS host provider application and the proxy arp application. In this way the SDN controller is capable to find the hosts and resolve the ARP

1 Like

Hello Davide now it works, thank you! :slight_smile: