《计算机网络技术基础课程课件设计传输层.ppt》由会员分享,可在线阅读,更多相关《计算机网络技术基础课程课件设计传输层.ppt(59页珍藏版)》请在三一办公上搜索。
1、计算机网络 第7章 传输层,1,第7章 传输层,计算机网络 第7章 传输层,2,本章学习要求:,了解:网络环境中分布式进程通的基本概念。掌握:进程相互作用的Client/Server模型。掌握:传输层的基本功能与服务质量。掌握:用户数据报协议UDP。掌握:传输控制协议TCP。,计算机网络 第7章 传输层,3,7.1 网络环境中分布式进程通信的基本概念,计算机网络 第7章 传输层,4,网络层及以下的各层实现了网络中主机之间的通信,但是数据通信不是最终的目的;计算机网络最本质的活动是分布在不同地理位置的主机之间的进程通信,以实现各种网络服务功能;设置传输层的主要目的就是要实现分布式进程通信。,计算
2、机网络 第7章 传输层,5,7.1.1 单机系统中的进程通信方法,进程和进程通信是操作系统中的一个最基本的概念;程序是一个在时间上按照严格次序的前后相继的操作序列,是一个静态的概念;进程是一个动态的概念,它是一个程序对某个数据集的执行过程;,计算机网络 第7章 传输层,6,正在运行的进程叫做运行态;等待分配CPU的进程叫做就绪态;等待其他的条件的进程叫做等待态;进程状态反映出进程执行过程的变化;要保证系统正常地工作,操作系统必须对进程的创建、撤消与状态转换进行控制;从进程的观点看,操作系统的核心则是控制和协调这些进程的运行,解决进程之间的通信。,计算机网络 第7章 传输层,7,在解决单机环境下
3、操作系统的进程通信中:BSD UNIX 引入了管道(pipe)、命名管道(named pipe)和软中断信号(signal)机制;AT&T UNIX引入了消息(message)、共享存储区(shared memory)和信号量(semaphore)等;UNIX系统的消息、共享存储区和信号量统称为进程通信(inter process communication,IPC)机制;IPC机制也不适应于网络环境中的进程通信。,计算机网络 第7章 传输层,8,7.1.2 网络环境中分布式进程通信的特点,用一句最简单的话去描述计算机网络,那就是:“计算机网络是分布在不同地理位置的多台独立的计算机系统的集合”
4、。“独立的计算机系统”意味着连网的每一台计算机的操作与资源是由自己的操作系统所管理;用户共享的网络资源及网络所能提供的服务功能最终是通过网络环境中的分布式进程通信来实现的。,计算机网络 第7章 传输层,9,网络环境中的进程通信与单机系统内部的进程通信的主要区别:网络中主机的高度自治性;不是在同一个主机系统之中,没有一个统一的高层进行控制与管理;网络中一台主机对其他主机的 活动状态;位于其他主机系统中的各个进程状态;这些进程什么时间参与网络活动;希望与网络中哪一台主机的什么进程通信一概无从知道。,计算机网络 第7章 传输层,10,1.网络环境中分布式进程通信需要解决:,进程命名与寻址方法多重协议
5、的识别进程间相互作用的模式,计算机网络 第7章 传输层,11,2.网络环境中进程标识,在一台计算机中,不同的进程用进程号或进程标识(process ID)惟一地标识出来。网络环境中完整的进程标识应该是:本地主机地址-本地进程标识;远程主机地址-远程进程标识。进程地址也叫做端口号(port number)。,计算机网络 第7章 传输层,12,3.多重协议的识别,UNIX操作系统的TCP/IP的传输层就有TCP协议和UDP协议;网络环境中一个进程的全网惟一的标识需要一个三元组来表示:协议,本地地址,本地端口号。,计算机网络 第7章 传输层,13,网络环境中一个完整的进程通信标识需要一个五元组来表示
6、:协议 本地地址 本地端口号 远地地址 远地端口号在UNIX操作系统中:三元组又叫做半相关half-association 五元组叫做一个相关association,计算机网络 第7章 传输层,14,7.1.3 进程间相互作用模式:Client/Server模型1.Client/Server模型的基本概念,网络中每台联网的计算机既为本地用户提供服务,也为网络的其他主机的用户提供服务;每台联网的计算机的硬件、软件与数据资源应该既是本地用户可以使用的资源,也是网络的其他主机的用户可以共享的资源;每一项网络服务都是对应一个“服务程序”进程;“服务程序”进程要为每一个获准的网络用户请求执行一组规定的动
7、作,以满足用户网络资源共享的需要;,计算机网络 第7章 传输层,15,网络环境中进程通信要解决的进程间相互作用的模式;在TCP/IP协议体系中,进程间的相互作用采用客户/服务器(Client/Server)模型;客户与服务器分别表示相互通信的两个应用程序的进程;客户向服务器发出服务请求,服务器响应客户的请求,提供客户机所需要的网络服务。,计算机网络 第7章 传输层,16,2.为什么要采用客户机/服务器模型?,网络资源分布的不均匀性网络资源分布的不均匀性表现在硬件、软件和数据等三个方面;网络资源分布的不均匀性是客观存在的,同时也是网络应用系统设计者的设计思想的体现;“资源共享”就是因为网络不同结
8、点之间在硬件配置、计算能力、存储能力,以及数据分布等方面存在着差距与不均匀性;能力强、资源丰富的充当服务器,能力弱或需要某种资源的成为客户。,计算机网络 第7章 传输层,17,网络环境中进程通信的异步性 分布在不同主机系统中的进程什么时间发出通信请求,希望和哪一台主机的哪一个进程通信,以及对方进程是否能接受通信请求是不确定的;网络分布式进程之间不存在一个高层的调度与协调;必须要建立一个体制,为准备通信的进程之间建立起连接,在进程交换数据的过程中维护连接,为数据交换提供同步。,计算机网络 第7章 传输层,18,客 户 一次进程通信中发起的一方;服务器 接受进程通信的请求,提供服务的 一方;每一次
9、通信由客户进程随机启动;服务器进程处于等待状态,及时响应客户服务请求。,计算机网络 第7章 传输层,19,7.1.4 进程通信中Client/Server模型实现方法,客户机/服务器模型的工作实质是“请求驱动”;在网络环境中,客户进程发出请求完全随机。在同一个时刻,可能有多个客户进程向一个服务器发出服务请求;为了实现服务器的功能,在服务器的设计中要解决服务器的:并发请求处理能力 并发服务器的进程标识 服务器安全,计算机网络 第7章 传输层,20,解决服务器处理并发请求的基本方案:设计一个并发服务器;采用重复服务器的方法。,计算机网络 第7章 传输层,21,并发服务器(concurrent se
10、rver),并发服务器的核心是使用一个守护程序(daemon);守护程序在系统启动的时候随之启动,在没有客户的服务请求到达时,并发服务器处于等待状态;一旦客户机的服务请求到达,服务器根据客户的服务请求的进程号,去激活相应的子进程,而服务器回到等待状态;并发服务器叫做主服务器(master),把子服务器叫做从服务器(slave);主服务器必须拥有一个全网公认的进程地址;网络中的客户进程可以根据服务器进程的公认地址,向服务器提出服务请求。,计算机网络 第7章 传输层,22,客户与并发服务器建立传输连接的过程,计算机网络 第7章 传输层,23,重复服务器(interative server),通过设
11、置一个请求队列来存储客户机的服务请求;服务器采用先来先服务的原则来顺序处理客户机的服务请求。,计算机网络 第7章 传输层,24,比较,并发服务器:并发服务器可以处理多个客户的服务请求;从服务器不依赖主服务器而独立处理客户服务请求;不同的从服务器可以分别处理不同的客户的服务请求;系统的实时性好。重复服务器:处理客户的服务请求的数量受到请求队列长度的限制,但可以有效地控制请求处理的时间并发服务器适应于面向连接的服务类型;重复服务器适应于无连接的服务类型。,计算机网络 第7章 传输层,25,讨论,主动启动与服务器进程通信的程序叫做客户;服务器是一个用来提供某种服务的,有特殊权限的专用程序;服务器程序
12、在网络中一台计算机上运行,接受来自远程客户的服务请求,提供一种服务;服务器程序需要硬件配置较高的计算机和操作系统的支持;客户/服务器是软件设计中进程间相互作用关系的模型。,计算机网络 第7章 传输层,26,7.2 传输层的基本功能7.2.1 传输层的端-端通信,计算机网络 第7章 传输层,27,7.2.2 传输层协议的基本功能1.传输层在协议层次结构中的位置,传输层的目标是向应用层应用程序进程之间的通信,提供有效、可靠、保证质量的服务;传输层在网络分层结构中起着承上启下的作用,通过执行传输层协议,屏蔽通信子网在技术、设计上的差异和服务质量的不足,向高层提供一个标准的、完善的通信服务;从通信和信
13、息处理的角度看,应用层是面向信息处理的,而传输层是为应用层提供通信服务的。,计算机网络 第7章 传输层,28,2.传输协议数据单元,传输层之间传输的报文叫做传输协议数据单元(Transport Protocol Unit,TPDU);TPDU有效载荷是应用层的数据。,计算机网络 第7章 传输层,29,7.2.3 网络服务与服务质量QoS,服务(Service)网络层次结构中,各层之间有严格的依赖关系各层次的分工和协作集中地体现在相邻层之间的界面上;服务是描述相邻层之间关系的重要概念;网络服务体现在低层向相邻上层提供的一组操作;低层是服务提供者,高层是服务的用户。,计算机网络 第7章 传输层,3
14、0,衡量服务质量QoS的主要指标连接建立延迟/连接释放延迟;连接建立/释放失败概率;传输时延;吞吐率;残留误码率;传输失败概率。,计算机网络 第7章 传输层,31,连接建立延迟从传输服务用户要求建立连接到收到连接确认之间所经历的时间;它包括了远端传输实体的处理延迟;连接建立延迟越短,服务质量越好。连接建立失败的概率在最大连接建立延迟时间内,连接未能建立的可能性;由于网络拥塞,缺少缓冲区或其他原因造成的失败。,计算机网络 第7章 传输层,32,吞吐率吞吐率是在某个时间间隔内测得的每秒钟传输的用户数据的字节数;每个传输方向分别用各自的吞吐率来衡量。传输延迟传输延迟是指从源主机传输用户发送报文开始到
15、目的主机传输用户接收到报文为止的时间;每个方向的传输延迟是不同的。,计算机网络 第7章 传输层,33,残余误码率残余误码率用于测量丢失或乱序的报文数占整个发送的报文数的百分比;理论上残余误码率应为零,实际上它可能是一较小的值。安全保护安全保护为传输用户提供了传输层的保护,以防止未经授权的第三方读取或修改数据。,计算机网络 第7章 传输层,34,优先级为传输用户提供用以表明哪些连接更为重要的方法;当发生拥塞事件时,确保高优先级的连接先获得服务。恢复功能当出现内部问题或拥塞情况下,传输层本身自发终止连接的可能性。,计算机网络 第7章 传输层,35,在讨论传输层服务质量参数时需要注意以下几个问题:,
16、服务质量参数是传输用户在请求建立连接时设定的,表明希望值和最小可接受的值;传输层通过检查服务质量参数可以立即发现其中某些值是无法达到的,传输层可以不去与目的主机连接,而直接通知传输用户连接请求失败与失败的原因;有些情况下,传输层发现不能达到用户希望的质量参数,但可以达到稍微低一些的要求,然后再请求建立连接;并非所有的传输连接都需要提供所有的参数,大多数仅仅是要求残余误码,而其他参数则是为了完善服务质量而设置的。,计算机网络 第7章 传输层,36,7.3 用户报文协议UDP7.3.1 UDP协议的主要特点,UDP是一种无连接的、不可靠的传输层协议;在完成进程到进程的通信中提供了有限的差错检验功能
17、;设计比较简单的UDP协议的目的是希望以最小的开销来达到网络环境中的进程通信目的;进程发送的报文较短,同时对报文的可靠性要求不高,那么可以使用UDP协议。,计算机网络 第7章 传输层,37,7.3.2 UDP的基本工作过程,UDP用户数据报传输过程中的封装与拆封,计算机网络 第7章 传输层,38,UDP报文传输队列,计算机网络 第7章 传输层,39,UDP的复用和分用,计算机网络 第7章 传输层,40,7.3.3 UDP端口号,TCP/IP协议族中用端口号来标识进程;端口号是在0到65535之间的整数;客户程序随机选取的临时端口号;每一种服务器程序被分配了确定的全局一致的熟知端口号;每一个客户
18、进程都知道相应的服务器进程的熟知端口号。,计算机网络 第7章 传输层,41,UDP使用的熟知端口号,计算机网络 第7章 传输层,42,7.3.4 UDP数据报格式,计算机网络 第7章 传输层,43,UDP检验和的检验范围:伪头部 UDP头 应用层数据,计算机网络 第7章 传输层,44,7.4 传输控制协议TCP7.4.1 TCP协议的主要特点,TCP是一种面向连接的、可靠的传输层协议;TCP协议建立在不可靠的网络层IP协议之上,IP不能提供任何可靠性机制,TCP的可靠性完全由自己实现;TCP采用的最基本的可靠性技术是:确认与超时重传;流量控制。,计算机网络 第7章 传输层,45,TCP协议与其
19、他协议的层次关系,计算机网络 第7章 传输层,46,7.4.2 TCP的端口号分配和Socket地址,TCP常用的熟知端口号,计算机网络 第7章 传输层,47,7.4.3 TCP报文段格式,计算机网络 第7章 传输层,48,7.4.4 TCP传输连接建立与连接释放,TCP传输连接建立过程示意图,计算机网络 第7章 传输层,49,TCP在传输连接释放过程中4次握手过程,计算机网络 第7章 传输层,50,7.4.5 TCP流量与拥塞控制,TCP的数据编码与确认,计算机网络 第7章 传输层,51,TCP窗口概念,计算机网络 第7章 传输层,52,窗口与TCP的流量控制,计算机网络 第7章 传输层,5
20、3,7.4.6 TCP差错控制,差错检测和纠正检验和确认超时,针对的几种情况受损伤的报文段丢失的报文段重复的报文段乱序的报文段丢失的确认,计算机网络 第7章 传输层,54,传输出错报文段的处理,计算机网络 第7章 传输层,55,丢失的报文段,计算机网络 第7章 传输层,56,确认丢失,计算机网络 第7章 传输层,57,7.4.7 TCP的计时器,重传计时器为了控制丢失的或丢弃的报文段,TCP使用了处理报文段的确认的等待重传时间的重传计时器。坚持计时器TCP为每一个连接使用一个坚持计时器;当发送方的TCP收到一个窗口大小为零的确认时,就需要启动坚持计时器;当坚持计时器期限到时,发送方的TCP就发
21、送一个特殊的探测报文段。,计算机网络 第7章 传输层,58,保持计时器保持计时器又叫做激活计时器,它是用来防止在两个TCP之间的连接处以长时期空闲。时间等待计时器时间等待计时器是在连接终止期间使用的;当TCP关闭一个连接时,它并不认为这个连接马上就真正地关闭了。在时间等待期间中,连接还处于一种过渡状态;时间等待计时器的值通常设置为一个报文段的寿命期待值的两倍。,计算机网络 第7章 传输层,59,小结,网络最本质的活动是实现分布在不同地理位置的主机之间的进程通信;传输层的主要功能就是为网络环境中分布式进程通信提供服务;网络中应用程序进程间相互作用的模式是客户/服务器(client/server)模式;Internet传输层采用了TCP协议与UDP协议;TCP是一种面向连接的、可靠的传输层协议,它在网络层IP服务的基础上,向应用层提供面向连接、可靠的流传输;UDP是一种无连接的、不可靠的传输层协议。,