int sock = socket(AF_INET, SOCK_DGRAM, IPPROTO_SCTP);
在CentOS 3.2.63上返回的错误是93,在Windows 8上的返回错误是10043,这意味着不支持协议。但我可以使用套接字类型SOCK_RAW,SOCK_STREAM成功打开套接字。在Windows 8中无法使用SOCK_SEQPACKET打开,但可以在CentOS中打开。
答案 0 :(得分:2)
SCTP必须与SOCK_SEQPACKET或SOCK_STREAM一起使用。有关如何使用SCTP的更多详细信息,请参阅Sockets API Extensions for the Stream Control Transmission Protocol (SCTP), RFC 6458。
并非所有操作系统支持SCTP甚至现有支持都可能会遗漏某些功能。