c - 如何从 SCTP 消息中检索(RTO、MTU 和 SRTT)信息?

标签 c client protocols sctp

如何从收到的 SCTP 消息的 struct sctp_rcvinfo 中检索更多信息(例如 RTO、MTU 和 SRTT)?

每次通过回调函数接收和处理 SCTP 消息时

静态整数 receive_cb(struct socket *sock, union sctp_sockstore addr, void *data, size_t datalen、struct sctp_rcvinfo rcv、int 标志、void *ulp_info) {...

struct sctp_rcvinfo 充满了这些附加信息(我想)。

您可以找到example-client here .

但我需要将其转换为类似

的数据

struct sctp_paddrinfo 更多信息; moreInfo.spinfo_rto ..等等。

如何才能实现这一目标?

最佳答案

RTO、MTU 和 SRTT 不是 SCTP 消息的一部分。端点不交换此信息。每一方计算自己的SRTT和RTO,并有自己的MTU。

从您的端点您无法获取另一方的 SRTT、RTO 和 MTU 信息。

你方对端的SRTT、RTO和MTU值可以在sctp_info structure中找到.

您可以通过以下 API 调用获取此结构: int sctp_get_sctp_info(结构 sock *sk, 结构 sctp_association *asoc, 结构 sctp_info *info); 请参阅 sctp_get_sctp_info 的定义 sctp.h

关于c - 如何从 SCTP 消息中检索(RTO、MTU 和 SRTT)信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47312506/

相关文章:

javascript - JavaScript 文件中的 Node.js 敏感信息?

c++ - 为什么我的 DCOM 客户端会锁定对 SendMessage 的调用?

javascript - 我可以将 CORS 任何地方的代码嵌入到我的 javascript/jquery 中吗?

java - 高效更改字符串中的 EOL 字符

android - 套接字错误 : Permission Denied

arrays - SwiftUI 中的同一个 ForEach 中是否可以有 2 个数组?

c - 访问 union 内结构内的点 - C

c - dup2 一个文件的套接字

c - 不兼容的编译错误内置函数 ‘execl’

c - MSP430 I2C 读取 SDP610 差压传感器问题