Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Launch Mininet

    Code Block
    $ sudo -E $ONOS_ROOT/tools/test/topos/bmv2-demo.py --onos-ip=127.0.0.1 --pipeconf-id=org.onosproject.pipelines.int
  • Launch the collector

    Code Block
    $ sudo systemctl start influxdb
    $ sudo python BPFCollector/InDBClient.py veth_2
  • Activate In-band telemetry control application 

    Code Block
    $ onos-app localhost activate org.onosproject.inbandtelemetry
    Info

    You may see the following WARN log right after activating the INT control application.

    Code Block
    2019-02-15T11:23:30,143 | WARN  | onos-shared-scheduled-onos-pool-executor-2 | SimpleIntManager                 | 231 - org.onosproject.onos-apps-inbandtelemetry-impl - 2.1.0.SNAPSHOT | Missing INT config, aborting programming of INT device device:bmv2:s22

    It will be disappeared when you add collector configuration.

    Please note that the INT monitoring works only after the collector configuration is done.

  • Add mirroring configuration on the switch for telemetry report

    Code Block
    $ simple_switch_CLI --thrift-port `cat /tmp/bmv2-s12-thrift-port` 
    RuntimeCmd: mirroring_add 500 5 
    (500: REPORT_MIRROR_SESSION_ID defined in int_definitions.p4) 
    (5: port number to send mirrored packet, in this case veth_1)
  • Add collector configuration
    • Connect to ONOS web interface (http://localhost:8181/onos/ui/)
    • Open "In-band Telemetry Control" in the menu
    • Type 127.0.0.1 to "IPv4 address" field and 54321 to "port" field in "INT Collector Configuration" section
    • Clink "Apply Configuration" button

  • Add IntIntent to specify traffic to monitor
    • Open "In-band Telemetry Control" in the ONOS GUI menu
    • Fill in "Source IP address", "Destination IP address", "Source port", "Destination port" and "Protocol" field
      • Source and Destination IP address fields accepts IP address with mask (e.g., 10.0.0.0/24)
      • Source and Destination port number requires exact port number
      • Protocol supports either TCP or UDP
      • Any field remained empty, except Protocol field, means wildcard.
    • Choose metadata to collect
      • Switch Id and Egress timestamp must be chosen so as to make the collector to work properly.
      • "Egress Port Tx Utilization" are not supported in current version of BMv2 software switch yet.
    • Click "Apply Watchlist Rule" button below the metadata to deploy INT Intent.
    • Created INT Intent will be appeared in the table below.
  • Generate some traffic to monitor

    Code Block
    mininet> h11 iperf -c h22 -u -t 10000