48-拒绝服务型攻击(Denial-of-Service Attacks)

拒绝服务型攻击(Denial-of-Service Attacks),简称 dos 攻击。它针对服务器漏洞,使用特殊手段消耗服务器资源,从而达到服务器无法正常为其它客户端提供正常服务的目的。 是的,...
焦点IT 2018/03/31 324

47-将多进程并发服务器改成 IO 复用

只有趟过各种坑,解决了各种离奇古怪的网络编程异常,才能一步一步的提升,其次再学习新的技术,就不会感觉困惑。前面的程序,我们只是先拿客户端进行了开刀,将其修改成了 IO 多路复用模型,因为它最简单。后面...
焦点IT 2018/03/31 328

51-套接字选项(概述)

相信你学过前面的 TCP 协议也知道,里头的算法非常多,有些算法你可以开启,有些你可以关闭。比如你可以设置发送和接收缓冲区大小,也可以设置是否打开 Nagle 算法等等。这些是如何做到的呢? 有很多...
焦点IT 2018/03/31 262

50-使用 epoll 改写服务器

使用 epoll 改写服务器,会让我们的程序变得更加简单、高效。 1. 程序路径 代码托管在 gitos 上,请使用下面的命令获取: git clone https://git.osch...
焦点IT 2018/03/31 557

53-套接字选项(SO_REUSEADDR)

SO_REUSEADDR 是非常常用的选项之一,它有四个功能,我待会再写,接下来先看实验。 1. 程序路径 代码托管在 gitos 上,请使用下面的命令获取: git clone https...
焦点IT 2018/03/31 328

52-打印套接字选项

为了方便套接字选项的学习,打印套接字选项的值,让我们直观的去感受它的存在是很有必要的。 1. 程序路径 代码托管在 gitos 上,请使用下面的命令获取: git clone https:/...
焦点IT 2018/03/31 293

55-套接字选项(TCP_NODELAY)

开启本选项,将禁止 Nagle 算法。有关 Nagle 算法的细节,请参考《TCP 协议(Nagle) 》。 1. 程序路径 代码托管在 gitos 上,请使用下面的命令获取: git ...
焦点IT 2018/03/31 238

54-套接字选项(SO_LINGER)

SO_LINGER 是相当复杂的选项之一,它主要影响 close 和 shutdown 函数的行为(参考 man 手册),为了方便讨论,后面我以 close 为例。 在不同的平台上,SO_LINGE...
焦点IT 2018/03/31 335

57-其它套接字选项

还有很多套接字选项,比如 SO_KEEPALIVE,SO_RCVBUF, SO_SNDBUF 等,这些就不打算在博客里详细去实验,大家可以自己使用 opt 程序进行实验。以后如果我们遇到了非得用它的时...
焦点IT 2018/03/31 272

56-套接字选项(TCP_CORK)

Nagle 算法尽量减少小分组出现在网络上,而 TCP_CORK 是完全避免小分组出现在网络上。该选项是在 Linux 2.2 才引入的。 cork 这个单词,意为“塞子”,我们把 TCP 发送缓冲...
焦点IT 2018/03/31 296

友情链接