问题标签 [sctp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sctp - SCTP 多宿主问题
我们现在开发了多宿主应用程序,同时测试我的设置是:
Eth4 作为主要接口背靠背连接到另一台机器。Eth5 作为辅助接口背靠背连接到另一台机器。
我现在在发送 INIT 时关闭我的主接口,它到达对等机器似乎使用辅助接口,但保留的源 IP 地址仅属于主接口,因为当对等机器尝试响应 INIT_ACK 时,它会尝试在主接口上发送ip 已关闭,由于 ICMP,它会丢弃数据包。
我在路由方面不太好,但似乎有些路由没有正确配置,为什么总是使用主 ip ?
当我通过路由器连接主接口和辅助接口时,我已经测试了相同的部分,但同样的问题。
c - 使用已经处于 TIME_WAIT 状态的选项 SO_REUSEADDR 重用端口是个好主意吗?
我知道关于 SO_REUSEADDR 已经有很多问题了。我仍然无法得到它的缺点并且几乎没有问题。
1]当我们不使用任何延迟选项时,与 SO_REUSEADDR 相关的危险是什么。
2]会不会有丢包的情况?
3]如果我在端口上得到及时等待状态的东西会怎样?
4]在TIME_WAIT收到的数据包会发生什么?
最后但非常重要
5]在任何时间点有很多端口处于 TIME_WAIT 状态是否会对性能产生影响?
java - lk-sctp 在关联建立时发送 ABORT
我在一台机器上使用 lksctp-tools-1.0.6-3.el5(Red Hat Enterprise Linux Server 版本 5.8 (Tikanga))和 lksctp-tools-1.0.10-7.el6.x86_64(Red Hat Enterprise Linux Server 版本6.5(圣地亚哥))在另一台机器上。我正在尝试通过 JAVA 应用程序建立 SCTP 关联。SCTP 服务器(172.16.150.14)正在机器(lksctp-tools-1.0.6-3.el5)上运行,我的 JAVA SCTP 客户端(172.16.150.69)正在通过机器(lksctp-tools-1.0.10-7)创建关联.el6.x86_64)。我们在建立阶段本身获得了多次 ABORT。我正在提供 pcap 详细信息以供参考。
请帮助我。
linux-kernel - linux 内核在 LXC/docker 的容器中支持 sctp 协议了吗?
我正在使用 docker 在容器中设置一个应用程序,该应用程序将使用 sctp 进行通信。网络连接很好,我可以互相 ping 通,但我从 lksctp_tools 运行 sctp-test 并遇到以下问题:
我做了一点谷歌,从 lxc 邮件列表中的帖子中找到了原因,这是因为内核不支持 linux 容器中的 sctp 协议。详情请参考以下帖子:
https://www.mail-archive.com/lxc-users@lists.sourceforge.net/msg03826.html
但那是两年前的事了,我想知道现在内核是否支持它。我使用的内核版本是2.6.32-431.29.2.el6.x86_64,我需要使用其他内核吗?或者你们中的任何人遇到了和我一样的问题并且碰巧在这里有一些解决方法?
提前致谢。
visual-c++ - C++ usrsctp 回调参数 null
我目前正在创建一个在 Windows 上使用 usrsctp 库的网络应用程序,当参数不应该在回调函数上时,我遇到了一个奇怪的问题,即参数显示为 null。我不确定这是否是特定的 usrsctp 问题还是我做错了什么,所以我想先在这里检查一下。
创建新的 sctp 套接字时,您传递一个函数作为您希望在接收到数据时调用的参数之一,如下面的代码所示
跟踪库我可以看到在调用回调之前所有参数都是正确的
一旦我踏入它,它们就会变为空
我不知道是什么原因造成的,回调函数直接取自官方示例,所以那里应该没有错。
c++ - 无法打开套接字类型 SOCK_DGRAM 的 SCTP 套接字
在 CentOS 3.2.63 上返回的错误是 93,在 windows 8 上返回的错误是 10043,这意味着不支持协议。但是我可以使用套接字类型 SOCK_RAW,SOCK_STREAM 成功打开套接字。在 Windows 8 中无法使用 SOCK_SEQPACKET 打开,但可以在 CentOS 中打开。
c - usrsctp 数据接收回调的参数值变成了废话
我最近正在研究一个基于usrsctp的项目。
在创建新的 SCTP 套接字时,可以指定一个回调函数,当有新数据可用时调用该回调函数,如下面的代码所示。
创建一个新的 SCTP 套接字:
回调函数:
这个回调函数调用得当,但它的参数值只是一派胡言。上面代码的输出就像
Data of length 675381504 received on stream 31504 with SSN 34835, TSN 32651, PPID 8470824
应该是这样的
Data of length 18 received on stream 0 with SSN 0, TSN 4117987333, PPID 50
我阅读了usrsctp的源代码,发现调用回调的地方:
将其更改为下面的代码并重新编译库
我可以得到预期的输出:
[LIB] Data of length 18 received on stream 0 with SSN 0, TSN 4117987333, PPID 50
为什么回调函数中的参数值变成了废话?
我在这里找到了一个类似的问题,但无法理解它的答案。我很确定这是同一个问题。
[更新1]
usrsctp.h中usrsctp_socket的原型:
[更新2]
我很确定不需要像旧的类似线程中建议的额外技巧,因为我在官方示例中没有看到奇怪的铸件,而且它们运行良好。
例如在 echo_server.c 中:
java - 如何检测 SCTP 连接失败
我正在使用 mobicents CAP 实现为 CAMEL 充电构建 CAP 应用程序;我的应用程序运行良好,我可以在 SSF 和 SCF 之间发送和接收消息。我正在寻找的是:如何检测客户端和服务器之间的 SCTP 链接已断开?因为当我故意停止服务器并保持客户端运行时,发送时CAPDialog
不会引发任何错误。
当我停止服务器时,在控制台上我看到以下异常:
在此期间,如果我尝试发送一个 CAPDialog,例如发送一个 oAnswer 事件,它简单地不会告诉请求是否成功(在我的情况下,理想情况下应该返回失败)
c - 与 SCTP 建立 M3UA 关联
我想使用 Lksctp linux 开发一个 M3UA 关联,我也认为可以使用 openSS7 M3UA,但我不知道该怎么做。还有什么想法???谢谢你的帮助。
java - SCTP connection very slow
I am using the built in implementation of SCTP found in java 1.7. I am using it to write a client server application. I am using the following code:
sc referenced in the code is a SctpChannel object. The readMessage method just grabs a message off the wire, and puts it in a buffer. Then sc.recieve populates MessageInfo until the complete message has been captured. Profiling this with jvisualvm shows that the readMessage method is the slowest by far. I can't really see anything to optimise as there is not much code as it is. Ideas would be greatly appreciated.