0

I am currently trying to communicate using NMOS protocol over my network. This is a /30 network.

The issue I am seeing is that when I send an http request from my computer to my device over the network the response will be "lost" if the packet size is greater than 1500 bytes. I mean "lost" because when I wireshark the traffic on my computer, I can see all the TCP fragmented packets that make up the expected response and yet my computer thinks it never received them. Then if I let my computer sit there, I can see a bunch of retransmissions of the fragmented packet, over and over.

I can't seem to figure out why my computer doesn't see the full response because in wireshark I can clearly see that my computer received all the JSON data.

What could be causing this sort of TCP retransmission behavior for packets over 1500 bytes?

I increased the mtu size on my computer and the device and the cisco switch and still no luck...

RAZ_Muh_Taz
  • 105
  • 1
  • 7
  • Are you sure the TCP packets sent by your device are completely valid? Checksums are right, IP fragmentation settings are right etc.? – Tero Kilkanen Apr 20 '19 at 10:06
  • I believe the TCP packets sent by my device are valid because when I hook up my device to another network, it works fine. Should I look at fragmentation settings for my device or the switch? – RAZ_Muh_Taz Apr 22 '19 at 14:50
  • Have you checked possible firewall interference? – Tero Kilkanen Apr 22 '19 at 19:48
  • So I have been debugging this and I have found that my linux kernel corrupts the TCP packet when it gets fragmented but not sure why... I can see exactly what I get from the linux kernel right before it goes out and it gets corrupted before it's sent out and not sure why... – RAZ_Muh_Taz Apr 22 '19 at 20:17

0 Answers0