BroadbandForum / obudpst

OB-UDPST is a client/server utility to do UDP-based IP capacity measurements (see TR-471 for details).
BSD 3-Clause "New" or "Revised" License
41 stars 14 forks source link

Compatibility Issue Between UDPST Client and Server Versions #14

Open nidhi-collab opened 1 month ago

nidhi-collab commented 1 month ago

While testing with a real device, we found that the UDPST server is not backward compatible with the UDPST client version, and vice versa. To elaborate, the device running UDPST client version 7.4.0 was unable to communicate with the UDPST server version 8.1.0, resulting in the error message: "Timeout awaiting server response, exiting!". However, downgrading the UDPST server to version 7.4.0 resolved the issue.

How can we determine which versions are compatible with each other? Additionally, what should we do if a customer needs to use multiple versions simultaneously due to different devices running different versions of the tool? Could you please provide a compatibility matrix?

lc9892 commented 1 month ago

We're sorry, there are limits to what backward combability is reasonable to maintain. But when the software is run in server mode the banner will list what Protocol Versions it supports. For example...

UDP Speed Test Software Ver: 8.1.0, Protocol Ver: 10-10, Built: Jul 2 2024 14:15:16 Mode: Server, Payload Default[Max]: 1222[8972], Authentication: Available, Optimizations: SendMMsg()+GSO RecvMMsg()+Trunc

UDP Speed Test Software Ver: 8.2.0, Protocol Ver: 10-11, Built: Jul 22 2024 16:20:55 Mode: Server, Payload Default[Max]: 1222[8972], Auth: Available, Checksum: Off, Optimizations: SendMMsg()+GSO RecvMMsg()+Trunc

nidhi-collab commented 1 month ago

Thank you for the response. To clarify, does this mean that the server only supports the protocol versions listed in the banner and not any versions below them? Additionally, could you please share the compatibility matrix, including the supported versions and any limitations? This information would be extremely helpful for us to ensure compatibility across different devices and versions.

lc9892 commented 1 month ago

Yes, the server only supports those listed in banner. Regarding previous releases, here is the listing you requested (when running in server mode). In client mode, the latest (highest) protocol version is always used.

Software Protocol Version Version(s) v8.2.0 10-11 v8.1.0 10-10 v8.0.0 10-10 v7.5.1 8-9 v7.5.0 8-9 v7.4.0 8-9 v7.3.0 8-8