第2章+TCPIP协议分析-7+传输层协议.ppt
《第2章+TCPIP协议分析-7+传输层协议.ppt》由会员分享,可在线阅读,更多相关《第2章+TCPIP协议分析-7+传输层协议.ppt(90页珍藏版)》请在三一文库上搜索。
1、网 络 协 议,第2章 TCP/IP协议分析,TCP/IP协议族 编址与地址解析 网际协议 网际控制消息协议 IP路由协议 IP组播协议 传输层协议 应用层协议,2.7 传输层协议,一.传输层基本概念,克服通信子网自身难以克服的问题,改善和优化通信子网的服务质量,使得通信子网对网络用户是透明的。,衡量通信子网服务质量的指标: 连接建立延时 / 释放延时; 连接建立失败概率 / 释放失败概率; 传输延时; 吞吐率; 残留误码率; 传输失败概率;,物 理 层:比特流的传输; 数据链路层:将有差错的物理链路变成无差错的数据链路; 网络层:如何使报文分组以适当的路径通过通信子网; 传输层:如何实现分布
2、式进程之间的通信;,二、为什么要设置传输层?,单机系统内的进程通信的解决办法,进程 程序、程序操作的数据与进程控制块; 进程间的同步与互斥关系的解决; 进程间的通信方法 信号量与P、V操作; 消息缓冲区; 原语; 进程间发送与接收数据: 发送原语(Send primitive); 读取原语(Read primitive); 所以的过程都是在一个操作系统的管理下进行的;,在网络环境中:两台计算机之间的进程通信如何实现?,网络环境中计算机之间的进程通信的特点,计算机网络:分布在不同地理位置的多台独立的计算机系统的集合; 独立的计算机系统:存在独立的操作系统; 各自的自主性 很多问题的不确定性; 各
3、个主机的活动状态? 各个主机的内部进程的状态? 每个进程什么时间参与网络活动? 参与网络活动时希望与网中哪个进程通信?,分布式进程通信,* 进程的命名与寻址; * 进程连接的建立与通信管理;,为每一个用户进程分配一个传输地址; 每一个传输地址在全网应该是惟一的;,IP地址+端口号,端口是一个16bit的地址,由操作系统分配给调用的应用程序的惟一号码。 端口号分为两类: 熟知端口(well-known port),0-255。 一般的端口号,用来随时分配给请求通信的客户进程。,在进程通信开始之前需要解决: 双方进程要有共同的起始状态: 一方处于发出通信要求的状态; 另一方要处于接受通信连接的“倾
4、听”状态; 双方进程要有共同认可的通信环境: 是否提供差错控制; 是否提供流量控制; 双方之间建立起双向的逻辑通道;,传输连接建立的条件,TCP(transmission control protocol)即传输控制协议,是一个面向连接的协议,它提供双向的、可靠的、有流量控制的字节流的服务。,三、传输控制协议,传输层协议与数据链路层协议的区别,网络,物理信道,数据链路层的环境,传输层的环境,结点1,结点2,主机A,主机B,环境不同:点到点物理信道与整个通信子网,传输层协议与网络层协议的区别,TCP的主要目的是为驻留在不同主机的进程之间提供可靠的、面向连接的数据传送服务。如果要让低可靠性的Int
5、ernet提供较为可靠的服务,TCP必须提供以下方面的业务:,基本数据传送; 可靠性; 流量控制; 多路复用; 连接。,(1) 基本数据传送,在两台主机的TCP软件之间传送的基本单元是段(Segment)。TCP将数据流看成是字节序列,或者是组合成段用于传送的字节。除非途经的小型数据包网络要求分段,否则每个段将作为单个IP数据报的数据字段通过Internet传送。连接中的每个TCP视自己的情况决定何时阻塞数据或者转发数据给IP以便传送。,(2) 可靠性,TCP为所传送的每个字节指定一个序列编号,并要求目的TCP返回一个肯定的确认(ACK)。如果在指定的时间内没有收到ACK,就会重传数据。 目的
6、节点用序列编号正确排列在传送时可能打乱了顺序的数据段,并消除重复问题。 利用在所传送的每个段中包含一个校验和来处理被破坏的数据。接收主机检查校验和,并丢弃任何被破坏的段。由于被丢弃的段不能得到确认,因此必须由源节点重发。,TCP必须能够恢复被破坏、丢失、重复或者不按顺序传送的数据。,(3)流量控制,TCP为目的节点提供了一种控制源节点发送数据数量的机制。 伴随每个确认(ACK)返回的接收窗口表明目的节点还能从源节点接收多少字节。 随着接收缓冲器的不断填充,接收窗口表示的空间不断缩小。 当接收缓冲器的空间增加时,接收窗口表示的空间也随之增加。,(4) 多路复用,TCP利用端口合并方法来识别计算机
7、中的最终目的节点。TCP在每台主机上提供了一组端口,允许一台主机上的多个进程同时使用TCP通信服务。,TCP 使用“连接”(而不仅仅是“端口”)作为最基本的抽象,同时将 TCP 连接的端点称为插口(socket),或套接字、套接口。 插口和端口、IP 地址的关系是:,(5)连接,可靠性和流量控制要求TCP为每个数据流进行初始化并维护重要的状态信息。连接就是这些状态信息的组合,它包括插口编号、序列编号和大量窗口管理信息。每个连接由一对标识虚拟线路各端的插口来惟一标识。 在数据的传送过程中,每台主机上的TCP通过交流信息验证数据接收没有错误或损失。如果网络问题导致建立的连接失败,两台计算机都将检测
8、到失败并将其报告给相应的应用程序。,面向连接(Connection Orientation) 点对点通信(Point-To-Point Communication) 完全可靠性(Complete Reliability) 全双工通信(Full Duplex Communication) 流接口(Stream Interface) 可靠的连接建立(Reliable Connection Startup) 友好的连接终止(Graceful Connection Shutdown),TCP提供的服务有七个主要特征:,(确 认 号),四、TCP报文格式,TCP 首部,20 字节 固定 首部,目 的 端
9、 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,源端口和目的端口字段各占 2 字节。端口是传输层与应用层的服务接口。传输层的复用和分用功能都要通过端口才能实现。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0
10、8 16 24 31,填 充,序号字段占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,确认号字段占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检
11、 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,数据偏移占 4 bit,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。“数据偏移”的单位不是字节而是 32 bit 字(4 字节为计算单位)。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,
12、A C K,U R G,比特 0 8 16 24 31,填 充,保留字段占 6 bit,保留为今后使用,但目前应置为 0。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,紧急比特 URG 当 URG 1 时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移
13、,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,确认比特 ACK 只有当 ACK 1 时确认号字段才有效。当 ACK 0 时,确认号无效。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,推送比特
14、 PSH (PuSH) 接收 TCP 收到推送比特置 1 的报文段,就尽快地交付给接收应用进程,而不再等到整个缓存都填满了后再向上交付。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,复位比特 RST (ReSeT) 当 RST 1 时,表明 TCP 连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立传输连接。,TCP 首部,20 字节
15、 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,同步比特 SYN 同步比特 SYN 置为 1,就表示这是一个连接请求或连接接受报文。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8
16、16 24 31,填 充,终止比特 FIN (FINal) 用来释放一个连接。当FIN 1 时,表明此报文段的发送端的数据已发送完毕,并要求释放传输连接。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,窗口字段 占 2 字节。窗口字段用来控制对方发送的数据量,单位为字节。TCP 连接的一端根据设置的缓存空间大小确定自己的接收窗口大小,然后通知对方以确定对方的发送
17、窗口的上限。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,检验和 占 2 字节。检验和字段检验的范围包括首部和数据这两部分。在计算检验和时,要在TCP 报文段的前面加上 12 字节的伪首部。,为了计算校验和,TCP引入了伪首部,其中添加了若干比特的0,使得整个报文段的长度为16的整数倍,然后计算带有伪首部的整个报文段的校验和。 TCP不把伪首部和填充比特计入到
18、报文段的长度中,也不传输它们。 TCP也是把校验和字段先置为0再对整个对象,包括伪首部、TCP的首部和用户数据,计算一个16比特的二进制反码和。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,紧急指针字段 占 16 bit。紧急指针指出在本报文段中的紧急数据的最后一个字节的序号。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选
19、项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,选项字段 长度可变。TCP 只规定了一种选项,即最大报文段长度 MSS (Maximum Segment Size)。MSS 告诉对方 TCP:“我的缓存所能接收的报文段的数据字段的最大长度是 MSS 个字节。”,MSS 是 TCP 报文段中的数据字段的最大长度。 数据字段加上 TCP 首部 才等于整个的 TCP 报文段。,选项域,指定了公认的段大小、段的时间戳、选项字段的末端,以及一个定义了段头
20、字段中选项边界的选项。,TCP 首部,20 字节 固定 首部,目 的 端 口,数据 偏移,检 验 和,选 项 (长 度 可 变),源 端 口,序 号,紧 急 指 针,窗 口,确 认 号,保 留,F I N,S Y N,R S T,P S H,A C K,U R G,比特 0 8 16 24 31,填 充,填充字段 这是为了使整个首部长度是 4 字节的整数倍。,帧,IP头部,TCP头部,TCP头部,应用数据,应用数据,应用数据,IP头部,TCP头部,应用数据,TCP报文段的封装,TCP报文段 segment,连接建立 服务器:LISTEN,ACCEPT 客户机:CONNECT 三次握手( thr
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- TCPIP 协议 分析 传输
链接地址:https://www.31doc.com/p-2908634.html