UDP Multicast

22 views
Skip to first unread message

Serge Robitaille

unread,
May 29, 2023, 3:45:37 AM5/29/23
to kplex
Hi,
I having problem using UDP to Broadcast all nmea data on a specific port.

[udp]
address=192.168.8.255
port=10112
direction=out

Debug shows this:
kplex DEBUG: _udp-id5: output address 192.168.8.255, port 10112

I can confirm Kplex receive data and re-transmit it to the TCP server ports also in the setup.

Problem:
The problem is on my second device on the the network, I only get one data string (that may even be partial ?) and not the normal flow of data.

sergio@bug:~$ nc -ul 10112
$GPRMC,073026.00,A,4117.25171,S,17400.59169,E,0.036,239.03,290523,22.36,E,D*1A

The TCP channel as well as the point-to-point UDP are working fine.
I have tried but get the same interrupted data flow on the receiving end:
[udp]
Device=eno1
port=10112
direction=out

Maybe I don't understand correctly how this works? My goal is to broadcast in UDP on the local network to multiple devices.

Any hints would greatly be appreciated. I have been using Kplex aboard my small yacht while traveling around the world very successfully but now expanding a bit my network and devices.

Thanks




Keith Young

unread,
Jun 2, 2023, 3:43:54 PM6/2/23
to kplex
your config looks ok.  2 possibilities:
1.  Is this wireless?  Wireless can be insanely lossy.  Folks don't normally notice that because there's reliability build into the datalink layer which is great for unicast ump and tcp but doesn't apply to multicast and broadcast.  I once measured something like 90% packet loss between a mk 1 raspberry pi and a Mac on my boat.  Much may depend on the radio though...wireless is dark magic which is beyond my knowledge.

2. Does nectat buffer?  I honestly don't know but might be worth checking it isn't just buffering incoming packets.  As well as nectat for testing there's always another instance of kplex, ie kplex -f - file: udp:address=192.168.8.255,port=10112,direction=in

Keith Young

unread,
Jun 2, 2023, 3:47:44 PM6/2/23
to kplex
On the sending device sudo tcpdump -I en01 -s 0 udp port 10112
...might confirm that you are indeed sending the data you think you're sending.  If you see it on the sending device but not the receiver it may be packet loss.  Maybe try a different wifi frequency?
Reply all
Reply to author
Forward
0 new messages