osx - Java Sockets: Socket.close() terminates connection different on Windows and Mac? -
situation follows: have java application, communicates on tcp microcontroller tcp stack on it. stack on controller works fine, can sort out.
problem is: when terminate connection controller, use socket.close()
, connection terminated, no problem. on mac, works too, when check wireshark, there regular termination process [fin,ack]
- [ack]
, followed [tcp dup ack]
packet, that, claimed wireshark, belongs [fin,ack]
packet. happens on mac , not happen on windows machine on vm on mac or on netbook...
are there tweaks use not letting dup-ack packet transmitted? jerks stack in controller claiming closed session still active , after 10 times connecting controller, stack has no more space accept new connections.
i'd thankful if give me hint!
well, if problem in os-provided tcp stack (which believe is) may try telnet mac device , close connection. see whether dup ack still emitted. if is, swapping java versions/vendors (for example) won't good...
...oh, , maybe you'd able filter offending packet firewall? that's wild guess, know nothing firewalling macos...
Comments
Post a Comment