TCP与UDP挖掘机(二)套接字选项

上回主要梳理了TCP和UDP的相关知识点,这一篇主要梳理一些套接字选项,以作备忘。

套接字选项

  • 用于IP层的套接字选项(IPPROTO_IP)

    参数 解释
    IP_ADD_MEMBERSHIP 加入组播(广播)组。<Br>每个套接字最多可以连接一组IP_ADD_MEMBERSHIPS组。
    IP_ADD_SOURCE_MEMBERSHIP 加入特定于源的组播组。
    每个套接字最多可以连接一组IP_MAX_MEMBERSHIPS组。
    IP_BLOCK_SOURCE 阻止从给定源到给定多播组的数据。
    IP_UNBLOCK_SOURCE 取消阻止从给定源到给定多播组的数据。
    IP_DONTFRAG 设置或重置IP标头中的do not fragment标志。
    IP_DROP_MEMBERSHIP 离开组播(广播)组。
    IP_DROP_SOURCE_MEMBERSHIP 离开特定于源的组播组。
    IP_MULTICAST_IF 设置应发送传出多播数据报的接口。
    IP_MULTICAST_IF2 设置应发送传出多播数据报的IPV6接口。
    IP_MULTICAST_LOOP 指定应将 传出的多播数据报的副本 回传到发送主机,只要它是多播组的成员即可。
    IP_MULTICAST_TTL 在传出的 多播数据报的IP头中设置生存时间(TTL)。
    IP_OPTIONS 设置IP标头选项。
    IP_RECVLCLIFADDR 指示是否应返回要接收的数据报的本地接口。
    IP_TOS 在IP标头中设置服务类型(TOS)和优先级。
    IP_TTL 在IP标头中设置生存时间(TTL)。
  • 用于TCP层的套接字选项(IPPROTO_TCP

    参数 解释
    TCP_KEEPALIVE 指定TCP在将报文发送到连接的另一端之前所需要等待的特定于套接字的活动时间。此设置是特定于套接字,将用于替代TCP属性TCOKEEPALV。仅在套接字上启用了<font color=red>SO_KEEPALIVE</font>时才会使用它。
    TCP_NODELAY 指定TCP是否遵循<font color=#35b998>Nagle算法</font> 决定何时发送数据。Nagle算法代表通过减少必须发送包的个数来增加网络软件系统的效率。即尽可能发送大块数据避免网络中充斥着大量的小数据块。如果要追求高实时性,需要设置关闭Nagle算法;如果需要追求减少网络交互次数,则设置开启Nagle算法。
  • 用于套接字层的套接字选项(SOL_SOCKET)

    参数 解释
    SO_ACCEPTECONNABORTED 启用侦听套接字,以便在accept()之前重置侦听backlog上的连接时,阻塞的accept() 将会返回ECONNABORTED。
    SO_BROADCAST 将消息发送到广播地址。
    如果目标中指定的接口支持广播数据包,则启用此选项可让应用程序发送广播消息。
    SO_DEBUG 指定低级别调试是否处于活动状态。
    SO_DONTROUTE 绕过标准的路由机制,即不查找路由。
    根据目标地址的网络部分定向到相应的网络接口。启用后,此选项允许将数据包发送到直接连接的网络(主机具有接口的网络)。
    SO_ERROR 返回套接字上的任何挂起错误,并清除错误状态。
    可以使用它来检查连接的数据报套接字上的异步错误或其他异步错误(其中一个套接字调用未明确返回的错误)。
    SO_KEEPALIVE 保持连接。
    在空闲套接字上发送探测,以验证套接字是否仍处于活动状态。
    SO_LINGER 延迟关闭连接。
    启用此选项,在调用close时如果存在未发送的数据时,在close期间将阻止调用应用程序,直到数据被传输或连接超时。
    SO_OOBINLINE 切换带外数据的接收。
    启用此选项会导致带外数据在接收时放入正常数据输入队列,使其可用于recvfrom和recv,而无需在这些调用中指定MSG_OOB标志。
    禁用此选项会导致带外数据在接收时放入优先级数据输入队列,只有通过在这些函数中指定MSG_OOB标志才能使其可用于recvfrom和recv。
    什么是带外数据
    SO_RCVBUF 获取接收缓冲区的大小。
    SO_RCVLOWAT 获取接收缓冲区的下限。
    这是在成功完成read,recv,recvfrom,activate_on_receipt或activate_on_receipt_with_length函数之前必须接收的最小数据量。
    SO_RCVTIMEO 获取接收超时值。
    该值是系统在超时操作之前等待read,recv,recvfrom,tpf_read_TCP_message,activate_on_receipt,activate_on_receipt_with_length,activate_on_receipt_of_TCP_message,accept,activate_on_accept或connect函数成功完成的时间。返回值0表示系统不会超时。
    SO_REUSEADDR 允许本地地址复用。
    启用此选项允许绑定已使用的本地地址。
    SO_SNDBUF 设置发送缓冲区的大小。
    SO_SNDLOWAT 获取发送缓冲区的下限。
    启用此选项即代表这是发送缓冲区的必须可用最小空间量。以允许处理select函数。
    SO_SNDTIMEO 获取发送超时值。
    该值是系统在超时操作之前等待发送,发送,写入或写入功能完成的时间。
    SO_TCPDELAY 返回获取TCP延迟确认计时器值。<Br>该值是z / TPF系统在发送独立确认(ACK)以确认此TCP套接字上的数据之前等待的时间。
    SO_TCPDUACK 获取快速重传值的重复确认(ACK)。
    SO_TYPE 获取套接字的类型。
    SO_UDPMPSIZ 获取套接字的最大数据包大小。
    此选项进队UDP套接字有效。

参考文献:getsockopt


Ending......

请关注微信公众号:进击的阿黑,谢谢。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,569评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,499评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,271评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,087评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,474评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,670评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,911评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,636评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,397评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,607评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,093评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,418评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,074评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,092评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,865评论 0 196
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,726评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,627评论 2 270

推荐阅读更多精彩内容