《TCP协议分析》PPT课件.ppt

上传人:小飞机 文档编号:5453936 上传时间:2023-07-08 格式:PPT 页数:34 大小:4.34MB
返回 下载 相关 举报
《TCP协议分析》PPT课件.ppt_第1页
第1页 / 共34页
《TCP协议分析》PPT课件.ppt_第2页
第2页 / 共34页
《TCP协议分析》PPT课件.ppt_第3页
第3页 / 共34页
《TCP协议分析》PPT课件.ppt_第4页
第4页 / 共34页
《TCP协议分析》PPT课件.ppt_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《《TCP协议分析》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《TCP协议分析》PPT课件.ppt(34页珍藏版)》请在三一办公上搜索。

1、TCP协议分析,组员:檀卫杰 201012301067(组长)黄 苹 201012301079 欧阳鹏 202012301074 朱宏波 201012301073 潘任哲 20091230XXXX,2012年12月24日,2012年12月24日,(一)TCP协议概述,1.TCP是一个面向连接的可靠的协议2.TCP提供了具有序列号、出错恢复、滑动窗口机制的面向连接的服务3.TCP主机使用握手过程简历相互之间的虚拟连接4.TCP协议是面向字节的,以连续字节流方式传输数据,依靠缓存来实现,最大的TCP数据段长度为65495字节5.由于TCP端到端的可靠性及灵活性,对于传输大量数据以及要求可靠交付服务

2、的应用程序来说,TCP是首选的传输方法,(二)TCP启动连接过程,1.TCP启动连接过程从两台主机之间握手开始。一台主机向另一台主机发起一次握手:(a)确保目标主机是可用的;(b)确保目标主机正在监听目的端口号;(c)通知目标主机发起方的序列号,以便双方在数据传输的过程中能够跟踪它,2.TCP握手是三个数据包交换的过程:(1)主机1向主机2发送一个TCP数据包(2)主机2使用它自己的起始序列号和最大数据段的长度指示作为响应(3)主机1确认收到了主机2的序列号和数据段长度信息,半开连接,TCP半开连接,在握手过程没有以最后一个ACK结束时,就发生了半开连接,(三)TCP保持活动过程,一旦建立了T

3、CP连接,保持活动过程能够在没有数据在线路上发送时维持连接。维持连接免除了对线路上发送每一位数据都重复执行握手过程的需要,(四)TCP连接终止,TCP连接终止过程需要4个数据包终止过程:(1)主机1发送一个带有FIN和ACK标志设置的TCP数据包(2)主机2在应答中发送一个ACK(3)主机2发送一个带有FIN和ACK标志设置的TCP数据包(4)主机1返回一个ACK应答,(五)TCP协议的连接状态,(六)TCP序列和确认过程,序列和确认过程确保了数据包被适宜排序,并防止丢失分段。在握手的过程中,连接的每一方都选择自己的起始序列号。每一方都增加其序列号值,增加量是出站数据包中包含的数据的长度。公式

4、:收到的序列号+收到数据的字节数=发送的确认号,主机1,序列号为10,携带35个字节的数据确认号字段=100,主机2,序列号为100,没有携带任何数据(ACK)确认号字段=15(10+5个字节的数据),主机1,序列号为1,携带了9个字节的数据确认号字段=100,序列号为100,没有携带任何数据(ACK)确认号字段=10(1+9个字节的数据),主机2,序列号为100,没有20个字节的数据确认号字段=15(10+5个字节的数据),主机2,主机1,序列号为15,没有携带任何数据(ACK)确认号字段=120(100+20个字节的数据),主机2向主机1发送数据,(六)TCP阻塞控制,阻塞控制的四种机制:

5、(1)慢启动(2)阻塞避免(3)快速重传/快速恢复,当网络介质中存在太多的数据时,就会发生网络过载,一般说来,我们总是希望数据传输得更快一些。但如果发送方把数据发送得过快,接收方就可能来不及接收,这就会造成数据的丢失。流量控制:就是让发送方的发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞。,(七)滑动窗口,折中方法:滑动窗口协议个主机在缓存上各使用一个窗口,由该窗口决定可以发送而不必考虑确认的数据量。窗口有左沿和右沿,都可以滑动。,TCP首部,20 字节的固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认

6、 号,保 留,FIN,32 位,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,TCP 数据部分,TCP 首部,TCP 报文段,IP 数据部分,IP 首部,发送在前,(八)TCP 报文段的首部格式,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,源端口和目的端口字段各占 2 字节。端口是传输层与应用层的服务接口。传输层的复用和分用功能都要通过端口才能实现。,TCP首部,2

7、0字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,序号字段占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24

8、31,填 充,确认号字段占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。,TCP首部,20字节固定首部,目 的 端 口,首部长度,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,首部长度占 4 位,指出 TCP首部共有多少个4字节字,首部长度在20-60字节之间,所以,该字段值在5-15之间。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认

9、 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,保留字段占 6 位,保留为今后使用,但目前应置为 0。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,紧急 URG 当 URG 1 时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项

10、(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,确认 ACK 只有当 ACK 1 时确认号字段才有效。当 ACK 0 时,确认号无效。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,推送 PSH(PuSH)接收 TCP 收到 PSH=1 的报文段,就尽快地交付接收应用进程,而不再

11、等到整个缓存都填满了后再向上交付。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,推送 PSH(PuSH)接收 TCP 收到 PSH=1 的报文段,就尽快地交付接收应用进程,而不再等到整个缓存都填满了后再向上交付。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PS

12、H,ACK,URG,位 0 8 16 24 31,填 充,同步 SYN 同步 SYN=1 表示这是一个连接请求或连接接受报文。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,终止 FIN(FINis)用来释放一个连接。FIN 1 表明此报文段的发送端的数据已发送完毕,并要求释放传输连接。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号

13、,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,窗口字段 占 2 字节,用来让对方设置发送窗口的依据,单位为字节。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,检验和 占 2 字节。检验和字段检验的范围包括首部和数据这两部分。在计算检验和时,要在 TCP 报文段的前面加上 12 字节的伪首部。,TCP首部,20字节

14、固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,检验和 占 2 字节。检验和字段检验的范围包括首部和数据这两部分。在计算检验和时,要在 TCP 报文段的前面加上 12 字节的伪首部。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填

15、充,紧急指针字段 占 16 位,指出在本报文段中紧急数据共有多少个字节(紧急数据放在本报文段数据的最前面)。,TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,比特 0 8 16 24 31,填 充,选项字段 长度可变。TCP 最初只规定了一种选项,即最大报文段长度 MSS。MSS 告诉对方 TCP:“我的缓存所能接收的报文段的数据字段的最大长度是 MSS 个字节。”,MSS(Maximum Segment Size)是 TCP 报文段中的

16、数据字段的最大长度。数据字段加上 TCP 首部才等于整个的 TCP 报文段。注意和MTU的区别(MTU是能够放在MAC首部数据的数据量),TCP首部,20字节固定首部,目 的 端 口,数据偏移,检 验 和,选 项(长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,FIN,SYN,RST,PSH,ACK,URG,位 0 8 16 24 31,填 充,填充字段 这是为了使整个首部长度是 4 字节的整数倍。,(九)TCP安全性,(1)拒绝服务攻击(DoS)目的:终止或完全中断网络设备间的正常通信本质:破坏网络通信(2)SNY泛洪攻击利用TCP协议缺陷,发送大量伪造的TCP连接请求,使得被攻击方资源耗尽,无法及时回应或处理正常的服务请求,既无法进行正常通信(3)TCP会话劫持:结合了嗅探以及欺骗技术在内的攻击手段例如:在一次正常的会话过程中,他可以在正常数据包中插入恶意数据,也可以在双方的会话当中进行监听,甚至可以代替某一方主机接管会话,谢 谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号