第7章传输层协议.ppt
上传人:天马****23 上传时间:2024-09-11 格式:PPT 页数:29 大小:198KB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

第7章传输层协议.ppt

第7章传输层协议.ppt

预览

免费试读已结束,剩余 19 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

7.1传输层基本原理7.1.2传输层端口端口实际上是一个抽象的软件结构(包括一些数据结构和I/O缓冲区)。(1)端口号分配全局分配:本地分配或动态联编:(2)Internet端口号分配Internet将端口分为两部分,一部分是保留端口,另一部分是自由端口。TCP和UDP的保留端口如图7-1所示。图7-1端口号7.2UDP协议7.2.1UDP报文UDP报文包括UDP报头和高层用户数据两部分,其格式如图7-2所示。各字段含义如下:(1)源端口:标识源进程的端口号;(2)目的端口:标识目的进程的端口号;(3)长度:UDP报文的长度;(4)校验和:用来防止UDP报文在传输中出错;(5)数据:高层用户数据。7.2.2UDP多路复用UDP采用了基于端口的复用和分用机制,即通过在传输的UDP报文中使用端口号来区分主机中对应不同进程的多路数据流。TCP多路复用的实现如图7-3所示。图7-3多路复用7.3TCP协议图7-4TCP报文各字段含义如下:(1)源端口:标识源进程的端口号;(2)目的端口:标识目的进程的端口号;(3)序号:发送报文包含的数据的第一个字节的序号;(4)确认号:接收方期望下一次接收的报文中数据的第一个字节的序号;(5)报头长度:TCP报头的长度;(6)保留:保留为今后使用,目前置0;(7)标志:用来在TCP双方间转发控制信息,包含有URG、ACK、PSH、RST、SYN和FIN位;(8)窗口:用来控制发方发送的数据量,单位为字节;(9)校验和:TCP计算报头、报文数据和伪头部(同UDP)的校验和;(10)紧急指针:指出报文中的紧急数据的最后一个字节的序号;(11)可选项:TCP只规定了一种选项,即最大报文长度。7.3.2TCP连接端点TCP是面向连接的协议。一个TCP连接由它的两个端点来标识,而每一个端点又是由IP地址和端口号决定的。TCP连接端点称为套接字(socket),定义为(host,port),其中host是主机的IP地址,而port则是该主机上的TCP端口号。若使用无连接的UDP,虽然在相互通信的两个进程之间没有一条虚连接,但发送端UDP一定有一个发送端口而在接收端UDP也一定有一个接收端口,因而也同样可使用套接字的概念。这样才能区分多个主机中同时通信的多个进程。7.3.3TCP可靠传输TCP提供面向连接的、可靠的字节流传输。TCP连接是全双工和点到点的。全双工意味着可以同时进行双向传输,点到点的意思是每个连接只有两个端点,TCP不支持组播或广播。为保证数据传输的可靠性,TCP使用三次握手的方法来建立和释放传输的连接,并使用确认和重传机制来实现传输差错的控制,另外TCP采用窗口机制以实现流量控制和拥塞控制。7.3.4TCP连接的建立和释放为确保连接建立和释放的可靠性,TCP使用了三次握手的方法。图7-5三次握手在TCP协议中,连接的双方都可以发起释放连接的操作。为了保证在释放连接之前所有的数据都可靠地到达了目的地,TCP再次使用了三次握手。一方发出释放请求后并不立即释放连接,而是等待对方确认。只有收到对方的确认信息,才能释放连接。7.3.5TCP差错控制TCP建立在IP协议之上,IP协议提供不可靠的数据传输服务,因此,数据出错甚至丢失可能是经常发生的。TCP使用确认和重传机制实现数据传输的差错控制。图7-7差控机制7.3.6TCP流量控制TCP使用窗口机制进行流量控制。当一个连接建立时,连接的每一端分配一块缓冲区来存储接收到的数据,并将缓冲区的大小发送给另一端。当数据到达时,接收方发送确认,其中包含了它剩余的缓冲区大小。这里将剩余缓冲区空间的数量叫做窗口,接收方在发送的每一确认中都含有一个窗口通告。如果接收方应用程序读取数据的速度与数据到达的速度一样快,接收方将在每一确认中发送一个非零的窗口通告。但是,如果发送方操作的速度快于接收方,接收到的数据最终将充满接收方的缓冲区,导致接收方通告一个零窗口。发送方收到一个零窗口通告时,必须停止发送,直到接收方重新通告一个非零窗口。图7-8TCP利用窗口进行流量控制的过程7.3.7TCP拥塞控制最初的TCP协议只有基于窗口的流量控制机制而没有拥塞控制机制。流量控制作为接收方管理发送方发送数据的方式,用来防止接收方可用的数据缓存空间的溢出。流量控制是一种局部控制机制,其参与者仅仅是发送方和接收方,它只考虑了接收端的接收能力,而没有考虑到网络的传输能力;而拥塞控制则注重于整体,其考虑的是整个网络的传输能力,是一种全局控制机制。正因为流量控制的这种局限性,从而导致了拥塞崩溃现象的发生。拥塞控制就由这4个核心部分组成。近几年又出现TCP的改进版本如NewReno和选择性应答等。正是这些拥塞控制机制