paul.reynolds at redcom.com
Tue May 5 00:22:33 UTC 2020
My apologies if this is not the right mailing list for this question. I am hoping to get some suggestions on how to debug an sctp issue I have been having.
I have a set of programs that use sctp for communication. For now these processes are all running on the same machine. They are using SEQPACKET mode to send messages back and forth. Each process has multiple threads, but only one socket. The threads are mutex protected such that the socket cannot be accessed by more than one thread at a time. Very occasionally one of the sockets will become permanently blocked on an sctp send or receive call and I am trying to figure out why. In the cases where it has become blocked on a send call, the corresponding receive process is not blocked and can send/receive data to other destinations. These processes can run fine for months and then suddenly run into this problem. I have been able to reproduce this once or twice by subjecting the system to unrealistically high levels of traffic, but it still takes several days or more to reproduce the problem. I now have a system that is stuck in this mode and am trying to gather as much information as possible.
How should I go about debugging this? The output of sockstat and netstat have not been very helpful up to this point.
Thanks for any help you might be able to provide,
More information about the freebsd-transport