###########################################################
SCTP套接字编程相关库函数
######################################################
新的传输层协议,需要安装库函数来支持。
SCTP的流是关联内部具有先后顺序的消息队列。
SCTP的多流特性可以减少头端阻塞,同一个流中的数据会延缓,不影响其他流。
SCTP的函数是第三方库函数,不在内核中。
sctp需要安装:
sudo apt-get install libsctp-dev libsctp1 lksctp-tools
编译sctp程序需要链接sctp库:
-lsctp
sctp有两种接口形式:
一到一(类似于TCP);主要为了一直TCP应用程序到SCTP。
一到多(类似于UDP);大多数sctp使用一到多接口。
客户端用socket函数来获取一个未命名套接字描述符:
服务端用socket函数来获取一个监听套接字描述符:
int listenfd = int socket(int family, int type, intprotocol);
socket的参数都是和协议相关的。
family:(网络层协议)
分两种,一般用地址族。
bsd和linux:(AF:地址族)
AF_INET(ipv4域)
AF_INET6(ipv6域)
AF_LOCAL(unix域)=AF_UNIX
AF_ROUTE(路由域)
AF_KEY(秘钥域)
svr4:(PF:协议族)
P