I don't think this is a Mikrotik-specific issue, but a CSS610 is involved and it's an obscure networking question, thought I'd ask the brain trust.
I have a network where we are using a 10G fiber backhaul to connect two sites:
Code: Select all
[Various Linux clients] <-> [CSS610-8G-2S+] <-> 10G fiber <-> [industrial smart switch] <-> [embedded PC]
One of the libraries we're using is based on [Lightweight Communication and Marshaling](https://lcm-proj.github.io), which uses UDP multicast to broadcast data. After figuring out some minor details we have good communication between all nodes.
The majority of LCM packets are small (less than 1500 bytes). However there are a few message types which produce larger messages. These are IP fragmented and generally work.
But one message type in particular has one of its packets dropped consistently -- the third of four fragments. Moreover, if we run Wireshark on other clients on the network ... including both clients attached to the CSS610 and the embedded PC on the other end of the fiber ... we see the same behavior -- the third packet is dropped consistently on any of those machines.
The message contents are constant, and I get repeatable results, though I haven't tested if/how the behavior changes if I make minor changes to the packet contents. What I think I'm seeing:
1. Of all of the fragmented LCM UDP multicast messages, only this one message is "damaged" in transit
2. This message is always damaged in transit and the third packet is always the one dropped
3. This behavior of the third packet disappearing can be observed on Linux and Mac computers attached to the CSS610 and on the embedded Linux PC
After all that, I reduced the MTU on the transmitting computer from 1500 to 1400 and the issue appeared to resolve itself. ???
As I said, it's a weird issue. I don't have a clue where to start looking for a real solution.... help!?!