传输控制议TCP.ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
传输控制议TCP

RFC793:ISN是32比特的计数器,每4ms + 1 ISN:系统初始化时不能设置为‘1’ 4.4 BSD和多数Berkeley实现版中ISN初始化为‘1’ 每0.5秒增加64000,每隔9.5小时归‘0’(对应每8ms + 1) 每建立一个连接增加64000 问题:Windows如何实现? 2. TCP端口扫描 TCP实现的基本规则:若SYN或者FIN数据包到达一个关闭的端口,TCP丢弃数据包同时发送一个RST数据包。 ① 全连接扫描 扫描主机用三次握手与目的机指定端口建立正规连接。 实现方式:connect( )函数调用,若端口打开则连接成功,否则失败。 优点:实现简单 缺点:很容易被发现,目前通常被禁止 ② 半开扫描(SYN扫描) (1)发SYN报文到目的主机的目标端口 (2)若目标返回SYN+ACK,则端口开放,否则回RST (3)若端口开放,则发送RST给目标,从而终止连接 半开的含义:全连接尚未建立 缺点:不能用socket编程实现,优点:不容易被发现 ③ Fin扫描 (1)发送FIN报文到目标主机的目标端口 (2)若返回RST,则端口关闭,否则端口打开 缺点:不能用socket编程实现, 优点:不容易被发现 (1) TCP服务器的设计 并发特性:可处理多个呼入连接请求!每到达一个请求,调用一个进程处理。 Berkeley的服务器TCP实现规则: ◆ 设置长度固定的连接队列,其中的连接已被TCP接受,但没有被应用接受;TCP接受连接是将其写入该队列,应用层接受该连接是将其从队列中移出。 ◆应用层指明队列的最大长度 ◆连接请求(SYN)到达时,若队列中还有空间,则接收这个连接并确认; ◆若无空间,不理会该请求,也不作回应。 3.SYN Flood (DoS、DDoS) (2) SYN Flood的原理 发送大量伪造的TCP请求,填满呼入请求队列,则服务器无法响应正常的连接请求,并且CPU和内存资源最终被耗尽。 * * * * * * * * * * * * * * * * * * * SEQ = 1 SEQ = 201 SEQ = 401 SEQ = 301 SEQ = 101 SEQ = 501 ACK = 201, WIN = 300 ACK = 601, WIN = 0 ACK = 501, WIN = 200 主机 A 主机 B 允许 A 再发送 300 字节 A 还能发送 200 字节 A 还能发送 200 字节 A 还能发送 300 字节 A 还能发送 100 字节 A 超时重发,但不能发送序号 500 以后的数据 允许 A 再发送 200 字节(序号 501 至 700) A 还能发送 100 字节(序号 601 至 700) 不允许 A 再发送(到序号 600 的数据都已收到) 利用可变窗口大小进行流量控制 双方确定的窗口值是 400 SEQ = 201 丢失! 1.什么是SWS? 接收方的小窗口通告造成发送方发送一系列小的报文段,严重浪费网络带宽。 2.启发式的避免策略: 接收方: (1)避免小窗口通告 ,在零窗口通告之后,只在可用缓冲区显著增加(缓冲区空间的一半或一个MSS)后才发送新的窗口通告 (2)推迟确认(最多500ms),窗口大小不到避免SWS策略所需的尺寸时,不确认。 为了使发送方正确估计RTT,至少每隔一个报文段要进行正常的确认。 4. 糊涂窗口综合症SWS 发送方:避免小报文段发送 Nagle算法:自适应推迟传输以便将数据组块 (1)连接建立后,最初的数据会立即发送。 (2)当缓冲区中数据不足一个报文段,则推迟发送。等到一个确认来到(确认触发)时,发送缓冲区中的小报文段。 3.说明 ① Nagle算法的两个优点: 自适应:确认到达得越快,数据也就发送得越快 ; 计算简单:不需要定时器。 ② 可关闭Nagle算法,应用程序接口一般提供选项TCP-NODELAY来关闭Nagle算法。 拥塞:交换节点(如路由器)数据报负载过重的现象 。 回顾:IP层的拥塞控制技术: (ICMP源站抑制报文),是一种被动机制。 TCP拥塞控制的必要性:在TCP层,拥塞造成时延增加,这又会造成超时重传,控制不当会进一步加重拥塞。 7.6 TCP拥塞控制技术 TCP控制拥塞的两个变量 每一个TCP连接需要有以下两个状态变量: 接收端窗口 (receiver window) ,又称为通知窗口(advertised window)。 接收端根据其目前的接收缓存大小向发送方所许诺的最新的窗口值 来自接收端的流量控制 拥塞窗口 (congestion window)。 发送端根据自己估计的

文档评论(0)

189****1013 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档