Uploaded image for project: 'vpp'
  1. vpp
  2. VPP-471

In-band OAM active probe

XMLWordPrintable

    • Icon: Epic Epic
    • Resolution: Done
    • Icon: Medium Medium
    • 17.04
    • None
    • IOAM
    • In-band OAM active probe

      Efficient trace route. Adapt active probing as done by Facebook (Petr Lapukhov) to use iOAM:
      Approach is similar to what we've done for iOAM ping in IOS - send and receive path will be recorded in the packet, and a flag will tell the destination node to flip source and destination IP addresses.

      See also:
      https://code.facebook.com/posts/1534350660228025/netnorad-troubleshooting-networks-via-end-to-end-probing/
      https://www.nanog.org/sites/default/files/Lapukhov_Move_Fast_Unbreak.pdf
      https://github.com/facebook/UdpPinger/
      https://github.com/facebook/fbtracert
      https://tools.ietf.org/html/draft-lapukhov-dataplane-probe-01

      Design:

      Packet Format to be followed:
      IPv6 Header ---- > HBH (iOAM) ---> UDP ---> Probe data(Follows header format as in draft-lapukhov-dataplane-probe-01)

      2 new VPP nodes are added:

      udp_ping_process

      This will accept UDP ping configurations required - Source IPv6 address, Destination IPv6 address, Source port range, Destination port range and interval for which probes need to be sent. For each combination of source/destination ports, probe packets are sent.

      udp-ping-local

      This node registers with ip6_local to receive every local IPv6 packet with next header as HBH. If the packet is a udp probe(checked matching probe markers in udp payload), then sends a probe reply back to Source node. If its a Probe Reply, then analyses the reply and stores per flow data - Path map of packet traversal, Number of packets sent/received, Number of lost packets.

      Refer to attached doc for more details.

            AkshayaNadahalli Akshaya Nadahalli
            brockners Frank Brockners
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: