摘要: 1. Nagle 算法 在一个 Rlogin 连接上客户一般每次发送一个字节到服务器,这就产生了一些 41 字节长的分组:20 字节的 IP 首部、20 字节的 TCP 首部和 1 个字节的数据。在局域网上,这些小分组(被称为微小分组(tinygram))通常不会引起麻烦,因为局域网一般不会出现拥塞 阅读全文
posted @ 2018-05-26 23:45 季末的天堂 阅读(632) 评论(0) 推荐(2) 编辑
摘要: TCP 首部中的 RST 比特是用于 "复位" 的。一般来说,无论何时一个报文段发往基准的连接(referenced connection)出现错误,TCP 都会发出一个复位报文段("基准的连接" 指由目的 IP 地址和目的端口号以及源 IP 地址和源端口号指明的连接)。 1. 到不存在的端口的连接 阅读全文
posted @ 2018-05-26 22:57 季末的天堂 阅读(4559) 评论(0) 推荐(1) 编辑
摘要: 1. TCP 之11种状态变迁 TCP 为一个连接定义了 11 种状态,并且 TCP 规则规定如何基于当前状态及在该状态下所接收的分节从一个状态转换到另一个状态。如,当某个应用进程在 CLOSED 状态下执行主动打开时,TCP 将发送一个 SYN,且新的状态是 SYN_SENT。如果这个 TCP 接 阅读全文
posted @ 2018-05-26 21:43 季末的天堂 阅读(2074) 评论(0) 推荐(0) 编辑
摘要: 1. 连接的建立 TCP 连接建立的三次握手 如上图所示,TCP 连接的建立会发生如下述情形: 1. 服务器必须准备好接受外来的连接。这通常通过调用 socket、bind 和 listen 这 3 个函数来完成,我们称之为被动打开(passive open)。 2. 客户通过调用 connect 阅读全文
posted @ 2018-05-26 17:50 季末的天堂 阅读(500) 评论(0) 推荐(0) 编辑
摘要: 1. TCP 的服务 TCP 通过下列方式提供可靠性: 应用数据被分割成 TCP 认为最适合发送的数据块。与 UDP 不同,UDP 应用程序产生的数据报长度将保持不变。由 TCP 传递给 IP 的信息单位称为报文段或段(segment)。 当 TCP 发出一个段后,它启动一个定时器,等待目的端确认收 阅读全文
posted @ 2018-05-26 11:29 季末的天堂 阅读(424) 评论(0) 推荐(0) 编辑