0

How can you retrieve furhter information (like RTO, MTU and SRTT) from a struct sctp_rcvinfo of a received SCTP message?

Everytime a SCTP-message is reveived and processed via a callback function like

static int receive_cb(struct socket *sock, union sctp_sockstore addr, void *data, size_t datalen, struct sctp_rcvinfo rcv, int flags, void *ulp_info) {...

struct sctp_rcvinfo is filled with these additional information (I suppose).

You can find an example-client here.

But I need to convert this to data like

struct sctp_paddrinfo moreInfo; moreInfo.spinfo_rto .. and so on.

How can you achive this?

user1511417
  • 1,880
  • 3
  • 20
  • 41

1 Answers1

0

RTO, MTU and SRTT are not part of SCTP messages. Endpoints do not exchange this information. Each side calculates its own SRTT and RTO and has it is own MTU.

From your endpoint you cannot obtain information about SRTT, RTO and MTU another side has.

SRTT, RTO and MTU values of your side for the peer can be found in sctp_info structure.

You can obtain this structure with following API call: int sctp_get_sctp_info(struct sock *sk, struct sctp_association *asoc, struct sctp_info *info); See definition of sctp_get_sctp_info at sctp.h