第八章 运输层要点课件.ppt
《第八章 运输层要点课件.ppt》由会员分享,可在线阅读,更多相关《第八章 运输层要点课件.ppt(38页珍藏版)》请在三一办公上搜索。
1、8.1运输协议概述,一、运输层在网络体系结构中的地位1、从面向通信和面向信息处理来划分,则运输层属于面向通信的低层中的最高层。 2、从网络功能和用户功能来划分,则运输层又属于用户功能的高层中的最低层。 3、通信子网中无运输层,它只存在于通信子网以外的主机中。,应用层,运输层,网络层,物理层,数据链路层,面向信息处理,面向通信,用户功能,网络功能,8.1运输协议概述,二、运输层的功能1、复用与分用:两个主机进行通信实际上是两个主机中的应用进程互相通信。IP协议虽然能把分组送到目的主机,但这个分组还停留在主机的网络层而没有交付给主机中的应用进程。因IP地址是标志在因特网中的一个主机,而不是标志主机
2、中的应用进程。由于通信的两个端点是源主机和目的主机中的应用进程,因此应用进程之间的通信又称为端到端的通信。,8.1运输协议概述,在一个主机中经常有多个应用进程同时分别和另一个主机中的多个应用进程通信。如,某用户在使用浏览器查找某网站的信息时,其主机的应用层运行浏览器客户进程。如果在浏览网页的同进,还要用电子邮件给网站发送反馈意见,则主机的应用层就还要运行电子邮件的客户进程。运输层一个很重要的功能就是复用和分用。应用层不同进程的报文通过不同的端口向下交到运输层,再往下就共用网络层提供的服务。当这些报文到达目的主机后,目的主机的运输层就使用其分用功能,通过不同的端口将报文分别交付到相应的进程。下图
3、示出了这个过程。,( ),( ),8.1运输协议概述,AP1,AP2,LAN1,AP3,AP4,WAN,LAN2,R1,R2,IP协议的作用范围,运输层协议TCP和UDP的作用范围,主机A,主机B,AP1,AP2,( ),( ),AP3,AP4,运输层提供应用进程间的逻辑通信,端口,应用进程,端口,应用进程,运输层为相互通信的应用进程提供了逻辑通信,8.1运输协议概述,运输层为应用进程之间提供端到端的逻辑通信,但网络层是为主机之间提供逻辑通信,如下图所示:,因特网,IP协议的作用范围(提供主机之间的逻辑通信),TCP和UDP协议的作用范围(提供进程之间的逻辑通信),应用进程,应用进程,运输层协
4、议和网络层协议的主要区别,8.1运输协议概述,2、运输层对收到的报文进行差错检测。在网络层,IP数据报首部中的检验和字段只检验首部是否出现差错而不检查数据部分。3、根据应用的不同,运输层需要有两种不同的运输协议,即面向连接的TCP和无连接的UDP,而网络层无法同时实现这两种协议。三、运输层与其上下层之间的关系,8.1运输协议概述,运输实体,运输实体,运输协议,应用层,网络层(或网际层),层接口运输层层接口,网络层服务访问点NSAP,运输层服务访问点TSAP,主机A运输服务用户(应用层实体),主机A运输服务用户(应用层实体),运输层中向应用层提供运输服务的是运输实体。使用运输服务的是运输服务用户
5、(即各应用进程或应用层实体)。运输层中两个对等实体之间的通信遵循运输协议。运输协议保证了运输层能够向应用层提供运输服务。运输服务也使用了下面网络层向上提供的网络服务,8.1运输协议概述,再次小结:物理层使链路上能透明地传送比特流。数据链路层使得各条链路能传送无差错的帧(按序、无丢失、不重复)。网络层又提供路由选择、流量控制和网络互连的功能,使主机A发送的分组能按照合理的路由到达主机B。运输层提供端到端的可靠通信服务。所谓端到端即从进程到进程。运输层向高层用户屏蔽了下面通信子网的细节,使高层用户看不见实现通信功能的物理链路是什么,看不见数据链路采用的是什么规程,也看不见下面到底有几个子网以及这些
6、子网是怎样互连起来的,运输层使高层用户看见的就是好像在两个运输层实体之间有一条端到端的可靠的通信通路。,8.2 TCP/IP体系中的运输层,一、TCP/IP体系运输层中的两个协议1、用户数据报协议UDP(User Datagram Protocol)UDP提供无连接、不可靠的服务。在传送数据之前,不需要先建立连接。远地主机的运输层在收到UDP数据报后,不需要给出任何应答。在某些情况下,这是一种最有效的工作方式。TCPIP体系中的应用服务,如TFTP和NFS就使用UDP这种运输方式。2、传输控制协议TCP(Transmission Control Protocol)提供面向连接的服务。不提供广播
7、或组播服务。由于TCP要提供可靠的运输服务,因此TCP就不可避免地增加了许多的开销,如应答、流量控制、定时器以及连接管理等。这不仅使协议数据单元的首部增大很多,还要占用许多的处理机资源。,8.2 TCP/IP体系中的运输层,这两个协议都使用IP协议。也就是说,在发送数据时,这两个协议的协议数据单元PDU,都作为下面IP数据报的数据。在接收数据时,IP数据报将首部去掉后,根据上层使用的是什么运输协议,把数据部分交给上面的UDP或TCP。,8.2 TCP/IP体系中的运输层,二、端口UDP和TCP都使用了端口(port)进行寻址。端口是一个很重要的概念,因为在通信时,只有找到了端口,才能最后找到我
8、们所要找的目的进程。1、概念:即运输层服务访问点TSAP,是UDP和TCP用来同上层的应用进程进行通信的接口,应用层的各种进程是通过相应的商品与运输实体进行交互的。2。功能:让应用层的各种应用进程都能将其数据通过端口向下交付给运输层,让运输层知道应当将其报文段中的数据向上通过端口交付给应用层的进程。因此,端口是用来标志应用层的进程的。如下图所示:,8.2 TCP/IP体系中的运输层,应用层,运输层,网络层,由于使用了复用和分用技术,在运输层与网络层的交互中已看不见各种应用进程,而只有TCP报文段或UDP用户数据报。,8.2 TCP/IP体系中的运输层,3。端口的表示:用一个16位的端口号表示。
9、但端口号只具有本地意义,它只标志本计算机中应用层中的各进程。Internet中不同计算机的相同端口号是没有联系的。4、端口的分类:熟知端口:TCP/IP体系确定并公布,所有用户进程都熟知的端口。数值为0-1023。当一种新的应用程序出现时,必须为它指派一个熟知端口,否则其它的应用进程就无法和它进行交互。在应用层中的各种不同的服务器进程不断地检测分配给它们的熟知端口,以便发现是否有某个客户进程要和它通信。常见的熟知端口如下:一般端口:用来随时分配给请求通信的客户进程。,8.2 TCP/IP体系中的运输层,5、TCP使用“连接”(而不是“端口”)作为最基本的抽象。一个连接由它的两个端点来标识。这样
10、的端点就叫做插口(socket),或套按字。插口的概念并不复杂,但非常重要。插口包括IP地址(32bit)和端口号码(16 bit),共48 bit。在整个Internet中,在运输层通信的一对插口必须是唯一的。如一条连接的一对插口可以为:(131.6.3.13,500)和(130.42.85.15,25)其中,25表示SMTP。,8.3用户数据报协议UDP,一、概述:用户数据报协议UDP只在IP的数据报服务之上增加了很少一点的功能,这就是端口的功能和差错检测的功能。虽然UDP用户数据报只能提供不可靠的交付,但UDP在某些方面有其特殊的优点,如:1、发送数据之前不需要建立连接(发送结束无连接需
11、释放),减少了开销和发送数据之前的时延。2、UDP不使用拥塞控制,也不保证可靠交付,因此主机不需要维持具有许多参数的、复杂的连接状态表。3、UDP用户数据报只有8个字节的首部开销,比TCP的20个字节的首部要短。4、由于UDP没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率降低。这对某些实时应用是很重要的。很多实时应用(如IP电话、实时视频会议等)要求源主机以恒定的速率发送数据。,8.3用户数据报协议UDP,二、UDP与应用层之间端口的实现机制:报文队列以应用层使用简单文件传送协议TFTP为例讨论。1、TFTP使用UDP传送报文,但TFTP服务器和TFTP客户所使用的端口是不一样的。2、
12、TFTP服务器进程是一直在运行着,等待TFTP客户进程的服务请求。因此,服务器的端口必须使用熟知端口号。TFTP服务器的熟知端口号是69。在TFTP客户端,当进程启动时,就向操作系统请求一个临时的一般端口号,如,5100。然后操作系统就为该进程创建两个队列:入队列和出队列。只要进程在执行,这两个队列就一直存在。当进程终止时,入队列和出队列及临时端口号就一起被撤消。如下图所示:,8.3用户数据报协议UDP,UDP端口5100,TFTP客户,出队列,入队列,应用层,运输层,UDP端口69,TFTP服务器,出队列,入队列,UDP用户数据报,3、客户进程将报文发送到出队列中。UDP按队列中报文的先后顺
13、序进行发送。在传送到IP层之前要给报文加上UDP首部,其中的目的端口号是TFTP的熟知端口69。然后UDP数据报就传送给IP层。,8.3用户数据报协议UDP,4、客户端收到来自IP层的报文时,UDP先检查报文中的目的端口号是否正确。若不正确,UDP就丢弃该报文,并请ICMP发送“端口不可达”差错报文给服务器端。若正确,UDP就将收到的报文放在入队列的队尾,客户进程按报文到达的先后顺序将其一一取走。5、服务器在收到报文时,UDP先检查到达的用户数据报的目的端口号是否为69。若是,将此用户数据报入进入队列队尾。若不是,丢弃此报文。6、服务要回答客户的请求时,将要发送的报文传送到出队列,并使用请求服
14、务的报文的源端口号作为回答报文的目的端口号。在添加上UDP首部后,将其传送给IP层。,8.3用户数据报协议UDP,三、UDP用户数据报的首部格式用户数据报UDP有两个字段:数据字段和首部字段。首部字段很简单,只有8个字节,由4个字段组成,每个字段都是两个字节。各字段意义如下:源端口字段,源端口号码目的端口字段,目的端口号码长度字段,UDP数据报的长度检验和字段,防止UDP数据报在传输中出错,UDP数据报首部中检验和的计算方法有些特殊。在计算检验和时在UDP数据报之前要增加12个字节的伪首部。“伪首部”是因为这种伪首部并不是UDP数据报真正的首部。只是在计算检验和时,临时和UDP数据报连接在一起
15、,得到一个新的UDP数据报。检验和就是按照这个新的UDP数据报来计算的。伪首部既不向下传送,也不向上递交。伪首部的第三个字段是全零,第四个字段是IP首部中的协议字段的值。对于UDP,此协议字段值为17。第五个字段是UDP数据报的长度。,8.4传输控制协议TCP,一、概述1、TCP是TCPIP体系中的运输层协议,是面向连接的,因而可提供可靠的、按序传送数据的服务。TCP提供的连接是双向的,即全双工的。2、TCP发送报文段的大致过程(1)TCP的通信是全双工的,因此TCP连接的任何一方(不论是客户端还是服务器)都能够发送和接收数据。(2)发送端的应用进程按照自己产生数据的规律,不断地将数据块陆续写
16、入到TCP的发送缓存中。(3)TCP从发送缓存中取出一定数量的数据,将其组成TCP报文段逐个传送给IP层,然后发送出去。如下图:,8.4传输控制协议TCP,发送端,TCP,发送缓存,向发送缓存写入数据块,端口,应用进程,接收端,TCP,接收缓存,从接收缓存读取数据块,端口,应用进程,报文段,报文段,报文段,(4)接收端从IP层收到TCP报文段后,先将其暂存在接收缓存中,然后让接收端应用进程从接收缓存中将数据块逐个读取。,8.4传输控制协议TCP,二、TCP报文段的首部一个TCP报文共分为首部和数据两个部分(见下页图)。TCP的全部功能都体现在它首部中各字段的作用。首部的前20个字节是固定的,后
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八章 运输层要点课件 第八 运输 要点 课件
链接地址:https://www.31ppt.com/p-1547372.html