TCP套接字选项

getsockopt和setsockopt函数

#include <sys/socket.h>

int  getsockopt(int  sockfd,  int  level,  int  optname,  void  *optval,  socklen_t   *optlen);

int  setsockopt(int  sockfd,  int  level,  int  optname,  const void  *optval,  socklen_t  optlen);


通用套接字选项

1)SO_BROADCAST 本选项开启或禁止进程发送广播消息的能力,只有数据报套接字支持广播,并且还必须是在支持广播消息的网络上

2)SO_DEBUG 本选项仅由TCP支持,当TCP开启该选项时,内核将为TCP在该套接字发送和接收的所有分组保留详细跟踪信息,这些信息保存在内核的某个环形缓冲区中,并可用trpt程序进行检查

3)SO_DONTROUTE 本选项规定外出的分组将绕过底层协议的正常路由机制,路由守护进程(routed和gated)经常使用本选项来绕过路由表

4)SO_ERROR 当一个套接字上发生错误时,源自Berkeley的内核中的协议模块将该套接字的明文so_error的变量设为标准的Unix_Exxx值中的一个,我们称它为该套接字的待处理错误,内核能够以下面两种方式之一立即通知该错误:

a)如果进程阻塞在对该套接字的select调用上,那么无论是检查可读条件还是可写条件,select均返回并设置其中一个或所有两个条件;

b)如果进程使用信号驱动式I/O模型,那就给进程或进程组产生一个SIGIO信号

5)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值