提高linux服务器性能的一些socket选项

本文探讨了如何使用特定的socket选项来提升Linux服务器的性能,特别是TCP_CORK和TCP_NODELAY的组合使用,以及它们在FreeBSD下的实现。还提到了SO_ACCEPTFILTER和SO_RCVTIMEO选项,用于控制连接完成的最大尝试次数和接收操作的超时时间。这些设置有助于提高数据传输效率并管理连接等待时间。
摘要由CSDN通过智能技术生成
 TCP_CORK

              If  set,  don't send out partial frames.  All queued partial frames are sent when the option is cleared again. 

             This  is useful for prepending headers before calling sendfile(2), or for throughput optimization.  

             As  currently  imple-mented,  there  is a 200 millisecond ceiling on the time for which output is corked by TCP_CORK. 

             If this ceiling is reached, then queued data is automatically transmitted.  This option can be combined  with

             TCP_NODELAY  only  since  Linux 2.5.71.  This option should not be used in code intended to be portable.



TCP_DEFER_ACCEPT

              Allows  a  listener to be awakened only when data arrives on the socket.  Takes an integer value (seconds),

              this can bound the maximum number of attempts TCP will make to complete the connection.  

             This option should not  be  used  in code intended to be portable.

               针对这个选项,在freebsd下,是SO_ACCEPTFILTER

SO_RCVTIMEO
      Sets  the  timeout  value  thatspecifies the maximum amount of time an input function waits until itcompletes. It accepts a timeval structure with the number of seconds andmicroseconds specifying the limit on how long to wait for an input operationto  complete. If a receive operation has blocked for this much timewithout receiving additional data, it shall return with apartial count or errnoset to [EAGAIN] or [EWOULDBLOCK] if no data is received. The default for thisoption  is  zero,  which  indicates  that  areceive operation shall not time out. This option takes a timeval structure.Note that not all implementa- tions allow this option to be set


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值