getsockopt()
setsockopt()
optval中的返回值,0表示选项关闭,1表示选项打开
SO_BROADCAST套接口选项:
能或禁止进程发送广播消息的能力。防止进程在应用程序未设计完成能广播时就发送广播信息。
SO_DEBUG套接口选项:
内核对TCP在此套接口所发送和接受的全部分组跟踪详细信息。
SO_DONTROUTE套接口选项:
规定发出的分组将旁路底层协议的正常路由机制。对于IPV4,分组指向本地接口
SO_ERROR套接口选项:
当套接口上发生错误时,内核经过下面两种方式通知进程:
1 进程阻塞于select调用,select返回并设置其中的一个或者两个条件
2 进程使用驱动IO模型,给进程或进程组生成信号SIGIO
SO_KEEPALIVE套接口选项:
为了检测对方主机是否崩溃
若是设置存活选项后,若两个小时内都没有数据交换,则自动发送给对方一个保持存活探测分节。
1 对方以指望的ACK响应,一切正常
2 对方以RST响应,告知已经崩溃,并重启
3 若是一直没有反应,套接口关闭
SO_LINGER套接口选项:
指定函数close对面向链接的协议如何操做。
TCP_KEEPALIVE套接口选项:
指定TCP发送保持存活探测分节前以秒为单位的链接空闲时间。缺省为7200秒
TCP_MAXRT套接口选项:
指定一旦TCP开始重传数据,链接断开以前需经理的时间总量。
TCP_MAXSEG套接口选项:
获取或设置TCP链接的最大分节大小MSS
TCP_NODELAY套接口选项:
禁止TCP的Nagle算法
TCP_STDURG套接口选项
影响对TCP紧急指针的解释
fcntl ---- file control文件控制,进行各类描述字控制操做。