SCTP:发送数据延迟超过 100 毫秒时出现问题
我正在使用 SCTP 客户端通过 100m 秒延迟链路将 1000 字节数据发送到另一个 SCTP 服务器。延迟是使用 Linux 中提供的流量控制(tc)和 netem 配置的。
tc qdisc add dev eth0 root netem delay 100ms
我使用的代码来自 SCTP Multihoming 。我已将往返时间(最大)设置为 60 秒,心跳设置为 10 秒。现在我面临的问题是我可以正确发送大约 3 到 4 个 1000 字节的数据包。之后,“连接被对等方重置”发生,因此我无法发送更多数据包。您能否让我知道我需要做什么才能通过高延迟链路发送 SCTP 数据。感谢您的帮助。
I am using a SCTP client to send 1000byte data to another SCTP server over a 100m sec delay link. The delay is configured using traffic control(tc) and netem available in Linux
tc qdisc add dev eth0 root netem delay 100ms
The code I have used is from SCTP Multihoming. I have set roundtrip time(max) to 60 seconds and heartbeat to 10sec. Now the issue I am facing is that I can send around 3 to 4 packets of 1000 bytes properly. After that the "Connection reset by peer" happens and because of that I am not able to send any more packets. Can you please let me know what I need to do to send SCTP data over high latency link. Thanks for your help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
最后我可以解决这个问题。该问题是由 SCTP 客户端和服务器之间的 NAT 框引起的。 NAT 更改 IP 地址,并且在 SCTP 心跳消息交换期间,由于 IP 地址不同,客户端无法找到正确的 IP 地址,因此 SCTP 关联失败。因此 SCTP 服务器向客户端发送 ABORT。我删除了 NAT,一切正常。
Finally I could fix the issue. The issue is caused by a NAT box in between the SCTP client and server. The NAT changes the ip address and during the SCTP heart beat message exchange, since the ip address is different, the client cant find the right ip address and because of this SCTP association fails. So SCTP server sends an ABORT to the client. I removed the NAT and everything went fine.