0

I have a controlled SDN lab scenario where I have a control plane and a data plane. The network is composed by:

  • A switch
  • 2 pc connected to the switch for the data plane
  • A controller pc connected to the control plane of the switch that can change network parameters

The network controller Is able to set bandwidth and queue priorities from pc1 and pc2.

I'm able to get timestamps when the controller starts sending new configuration to the SDN switch and when the SDN switch replies with an ack. I'm looking for a way to get timestamp on when the new network configuration is applied to the network. I tried using ping command, setting an interval of 0.001 seconds. It is possible to find the exact ping that shows a delay change but how can I get timestamp of that exact time? If I pass the ping output to a file, then I can read it with a Python script but it will not be a real-time process.

The same things happen if I try to monitor bandwidth with iperf from pc1 to pc2. In this case it is even worse because iperf only shows aggregate reports with average bandwidth over a time window.

Am I missing something? Is there a way to monitor that network change on my data plane?

2
  • 2
    If you're asking to measure the delay between the time the switch ACKs the command and actually changes the forwarding, that will depend on the specific command and possibly how busy the switch is. Is there a practical use for this information, or are you just curious.?
    – Ron Trunk
    Commented Mar 8, 2022 at 17:15
  • 1
    Ping only measures ICMP latency, not any protocols, such as TCP or UDP, that an application will use. Ping is just a tool to check for layer-3 connectivity, not a tool to measure network performance. Also, remember that product or resource recommendations are off-topic here, as are host/server configurations and products for which the manufacturer does not offer optional, paid support.
    – Ron Maupin
    Commented Mar 8, 2022 at 17:20

1 Answer 1

1

I tried using ping command, setting an interval of 0.001 seconds. It is possible to find the exact ping that shows a delay change but how can I get timestamp of that exact time?

ping is not an exact measurement of latency, processing delay or similar. ping uses an ICMP echo request and times the ICMP echo reply, so it measures that protocol/processing only. ping values may be close to the real values but they might just as well be off considerably.

For an acurate measurement you'll have to use a gauge on the forwarding device itself (e.g. over SNMP) or use specialized in-path devices. Port mirroring introduces new variations to delays (jitter) and throughput (bursts), so it won't necessarily resemble what you're looking for.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.