如何从收到的 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/