unix网络编程-第九章-小结

来源:互联网 发布:淘宝第三方合作 编辑:程序博客网 时间:2024/05/22 17:46

SCTP中的通知使得一个应用程序能够知晓用户数据到达意外的重要协议事件

一对多的形式给应用程序开发人员提供这样的能力:编写的服务器程序无需管理大量的套接字描述符。

一到多式的套接字上,用于标识单个关联的是一个关联标识。

当一个客户关闭其关联时,其服务器也将自动关闭同一个关联,服务器主机内核不再有该关联的状态。

可用于致使在四路握手的第三个或第四个分组中捎带用户数据的唯一办法就是使用一对多形式。

用户必须使用sendto,sendmsg或sctp_sendmsg这三个分组发送函数

任何时候调用其中任何一个分组发送函数时,所用的目的地址是由系统在关联建立阶段选定的主目的地址。

关联事件可能被启用,因此要是应用进程不希望收到这些事件,就得使用SCTP_EVENT套接字选项显式禁止它们。

sctp_peeloff函数用于从一个一到多套接字剥离出某个特定的关联,独自构成一个一到一套接字。

剥离出的关联所在的一到一套接字随后就可以遣送到它自己的线程或进程。

主线程继续在原来的套接字上以迭代方式处理剩余关联的消息。

sctp_bind允许SCTP套接字绑定一个特定地址子集。

如果在一个监听套接字上执行sctp_bindx调用,那么将来产生的关联将使用新的地址配置,已经存在的关联不受影响。

动态特性操作要求两个端点都支持这个特性。

知道对端地址:sctp_getpaddrs

知道本端地址:sctp_getladdrs

sctp_opt_info替代getsocketopt

sctp_peeloff返回一个所请求关联对应的一到一式套接字描述符

SCTP端点对shutdown调用的反应不同于TCP端点。当相互通信的两个SCTP端点中任何一个发起关联终止序列时,这两个端点都得把已排队的任何数据发送掉,然后关闭关联。同一个关联可用于连接到一个新的对端端点。shutdown结束后,这个端点就可以重用原套接字连接到新的对端。

使用SCTP_EVENTS套接字选项可以预订8个事件。7个为通知事件的额外数据。用户数据和通知将在套接字缓冲区中交错出现。

部分递送应用程序接口用于经由套接字缓冲区向用户发送大消息。发送最后一部分数据时把msg_flags字段设置为MSG_EOR

整体上接受短期请求偶尔需要长期会话的应用系统可以利用sctp_peeloff。

原创粉丝点击