《传输层之UDP协议简介ywu.pptx》由会员分享,可在线阅读,更多相关《传输层之UDP协议简介ywu.pptx(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、传 输 层 -UDP协议1主要内容:分布式进程通信传输层的基本功能网络服务质量用户报文协议UDP 2 传输层的位置传输层的位置 从通信和信息处理的角从通信和信息处理的角从通信和信息处理的角从通信和信息处理的角度看,传输层属于面向度看,传输层属于面向度看,传输层属于面向度看,传输层属于面向通信部分的最高层,同通信部分的最高层,同通信部分的最高层,同通信部分的最高层,同时也是用户功能中的最时也是用户功能中的最时也是用户功能中的最时也是用户功能中的最低层。低层。低层。低层。传输层为高层用户提供传输层为高层用户提供传输层为高层用户提供传输层为高层用户提供端到端的可靠的逻辑通端到端的可靠的逻辑通端到端的
2、可靠的逻辑通端到端的可靠的逻辑通信信信信ApplicationTransportTransportNetworkData LinkPhysical面向面向面向面向信息处理信息处理信息处理信息处理面向面向面向面向通信通信通信通信用户用户用户用户功能功能功能功能网络网络网络网络功能功能功能功能传输虚电路传输虚电路传输虚电路传输虚电路3OSI环境4TCP/IP 体系中的传输层协议 TCPUDPIP应用层与各种网络接口传输层网络层与传输层协议作用范围:6简化的网络协议体系7传输层与其上下层之间的关系的 OSI 表示法 传输实体传输实体传输协议传输层层接口 传输服务用户(应用层实体)传输服务用户(应用层
3、实体)层接口 网络层(或网际层)应用层主机 A主机 B传输层服务访问点TSAP网络层服务访问点NSAP传输层存在的必要性 对于网络用户来说:希望通信双方的主机能得到端到端的可靠通信服务。但是,网络层提供的分组传输服务往往是不可靠的。要保证数据既不丢失也不重复,传输层是必不可少的。9 了解在不同地理位置、受不同操作系统控制的、独立的计算机系统之间是如何实现协同工作的?学习传输层目的:10网络层及以下的各层实现了网络中主机之间的通信,但数据通信不是最终的目的;计算机网络最本质的活动是主机之间的进程通信,以实现网络服务功能;设置传输层的主要目的就是要实现分布式进程通信。网络环境中分布式进程通信的基本
4、概念11进程和进程通信是操作系统中的最基本的概念;程序是一个在时间上按照严格次序的前后相继的操作序列,是一个静态的概念;进程是一个动态的概念,它是一个程序对某个数据集的执行过程;12进程状态反映出进程执行过程的变化;要保证系统正常地工作,操作系统必须对进程的创建、撤消与状态转换进行控制;从进程的观点看,操作系统核心是控制和协调进程的运行,解决进程之间的通信。13在解决单机环境下操作系统的进程通信中:BSD UNIX 引入了管道(pipe)、命名管道(named pipe)和软中断信号(signal)机制;AT&T UNIX引入了消息(message)、共享存储区(shared memory)和
5、信号量(semaphore)等;UNIX系统的消息、共享存储区和信号量统称为进程通信(inter process communication,IPC)机制;IPC机制也不适应于网络环境中的进程通信。14 用最简单的语言描述计算机网络的功能:计算机网络最根本的目的是要实现网络环境中联网计算机之间的分布式进程通信,以实现各种网络服务功能。15网络环境中分布式进程通信的特点计算机网络是分布在不同地理位置的多台独立的计算机系统的集合;“独立的计算机系统”意味着连网的每一台计算机的操作与资源是由自己的操作系统所管理;用户共享的网络资源及网络所能提供的服务功能最终是通过网络环境中的分布式进程通信来实现的;
6、16网络环境中的进程通信与单机系统内部的进程通信的主要区别:网络中主机的高度自治性;不同的主机系统之间,没有一个统一的高层操作系统进行全局控制、调度与管理;网络中一台主机对其它主机的 活动状态 位于其它主机系统中的各个进程状态 这些进程什么时间参与网络活动 希望与网络中哪一台主机的什么进程通信 一概无从知道171.网络环境中分布式进程通信需要解决:进程命名与寻址方法多重协议的识别进程间相互作用的模式182.网络环境中进程标识在一台计算机中,不同的进程用进程号或进程标识(process ID)惟一地标识出来;网络环境中完整的进程标识应该是:本地主机地址-本地进程标识 远程主机地址-远程进程标识进
7、程地址也叫做端口号(port number)193.多重协议的识别UNIX操作系统的TCP/IP的传输层就有TCP协议和UDP协议;网络环境中一个进程的全网惟一的标识需要一个三元组来表示:协议,本地地址,本地端口号。20网络环境中一个完整的进程通信标识需要一个五元组来表示:协议 本地地址 本地端口号 远地地址 远地端口号在UNIX操作系统中:三元组又叫做半相关half-association 五元组叫做一个相关association21进程间相互作用模式:Client/Server模型1.Client/Server模型的基本概念网络中计算机既为本地用户提供服务,也为网络的其它主机的用户提供服务
8、;网络中计算机的硬件、软件与数据资源应该既是本地用户可以使用的资源,也是网络的其它主机的用户可以共享的资源;每一项网络服务都对应一个“服务程序”进程;“服务程序”进程要为每一个获准的网络用户请求执行一组规定的动作,以满足用户网络资源共享的需要;22在TCP/IP协议体系中,进程间的相互作用采用客户/服务器(Client/Server)模型;客户与服务器分别表示相互通信的两个应用程序的进程;客户向服务器发出服务请求,服务器响应客户的请求,提供客户机所需要的网络服务;232.为什么要采用客户/服务器模型?网络资源分布的不均匀性网络资源分布的不均匀性表现在硬件、软件和数据等三个方面;网络资源分布的不
9、均匀性是客观存在的,同时也是网络应用系统设计者的设计思想的体现;“资源共享”是因为网络不同结点之间在硬件配置、计算能力、存储能力,以及数据分布等方面存在着差距与不均匀性;能力强、资源丰富的充当服务器,能力弱或需要某种资源的成为客户。24网络环境中进程通信的异步性 不同主机系统中进程什么时间发出通信请求,希望和哪一台主机的哪一个进程通信,以及对方进程是否能接受通信请求是不确定的;网络分布式进程之间不存在一个高层、全局性的调度与协调机制;必须要建立一个机制,为准备通信的进程之间建立起连接,在进程交换数据的过程中维护连接,为数据交换提供同步等控制与协调功能。25注意的几个术语:客 户 一次进程通信中
10、发起的一方;服务器 接受进程通信的请求,提供服务的 一方;与硬件的区别:服务器 服务器级计算机与数据库的区别:client/server model client SQL server26进程通信中Client/Server模型实现方法客户/服务器模型的工作实质是“请求驱动”;在网络环境中,客户进程发出请求完全随机。为了实现服务器的功能,在服务器的设计中要解决服务器的:并发请求处理能力 并发服务器的进程标识 服务器安全27解决服务器处理并发请求的基本方案:并发服务器重复服务器28并发服务器(concurrent server)并发服务器的核心是使用一个守护程序(daemon);守护程序在系统启
11、动的时候随之启动,在没有客户的服务请求到达时,并发服务器处于等待状态;一旦客户机的服务请求到达,服务器根据客户的服务请求的进程号,去激活相应的子进程,而服务器回到等待状态;并发服务器叫做主服务器(master),把子服务器叫做从服务器(slave);主服务器必须拥有一个全网熟知的进程地址;网络中的客户进程可以根据服务器进程的熟知地址,向服务器提出服务请求。29客户与并发服务器建立传输连接的过程30传输层的基本功能传输层的端传输层的端-端通信端通信 31传输层协议的基本功能1.传输层在协议层次结构中的位置传输层的目标是向应用层应用程序进程之间的通信,提供有效、可靠、保证质量的服务;传输层在网络分
12、层结构中起着承上启下的作用;通过执行传输层协议,屏蔽通信子网在技术、设计上的差异和服务质量的不足,向高层提供一个标准的、完善的通信服务;322.传输协议数据单元传输层之间传输的报文叫做传输协议数据单元(Transport Protocol Unit,TPDU);TPDU有效载荷是应用层的数据;33网络服务与服务质量QoS 服务(Service)网络层次结构中,各层之间有严格的依赖关系各层次的分工和协作集中地体现在相邻层之间的界面上;服务是描述相邻层之间关系的重要概念;网络服务体现在低层向相邻上层提供的一组操作;低层是服务提供者,高层是服务的用户。34衡量网络服务质量的主要指标衡量网络服务质量的
13、主要指标连接建立延迟连接建立延迟连接建立失败的概率连接建立失败的概率传输传输延迟延迟吞吐量吞吐量优先级优先级残留差错率残留差错率故障告知率故障告知率从传输服务用户要求建立连接到收到连接从传输服务用户要求建立连接到收到连接确认之间所经历的时间;确认之间所经历的时间;它包括了远端传输实体的处理延迟;它包括了远端传输实体的处理延迟;连接建立延迟越短,服务质量越好。连接建立延迟越短,服务质量越好。在最大连接建立延迟时间内,连接未能在最大连接建立延迟时间内,连接未能建立的可能性;建立的可能性;由于网络拥塞,缺少缓冲区或其他原因由于网络拥塞,缺少缓冲区或其他原因造成的失败。造成的失败。传输延迟是指从源主机
14、传输用户发送报文传输延迟是指从源主机传输用户发送报文开始到目的主机传输用户接收到报文为止开始到目的主机传输用户接收到报文为止的时间;的时间;每个方向的传输延迟是不同的。每个方向的传输延迟是不同的。吞吐量是在某个时间间隔内测得的每秒钟吞吐量是在某个时间间隔内测得的每秒钟传输的用户数据的字节数;传输的用户数据的字节数;每个传输方向的吞吐量可能不同。每个传输方向的吞吐量可能不同。用以表明哪些传输连接更为重要;用以表明哪些传输连接更为重要;当发生拥塞事件时,确保高优先级的连接当发生拥塞事件时,确保高优先级的连接先获得服务。先获得服务。网络的残留差错指网络协议没有检测到的报文网络的残留差错指网络协议没有
15、检测到的报文丢失、乱序或误码,从而未能纠正的差错。丢失、乱序或误码,从而未能纠正的差错。残留差错率是未检出的差错报文数占整个发送残留差错率是未检出的差错报文数占整个发送的报文数的百分比。的报文数的百分比。网络协议检测出的无法纠正的故障,应通知传网络协议检测出的无法纠正的故障,应通知传输实体予以纠正。输实体予以纠正。网络的故障告知率是指无法纠正的故障占所有网络的故障告知率是指无法纠正的故障占所有可检测出的故障的百分比。可检测出的故障的百分比。35用户报文协议UDPUDP协议的主要特点UDP是一种无连接的、不可靠的传输层协议;在完成进程到进程的通信中提供了有限的差错检验功能;设计比较简单的UDP协
16、议的目的是希望以最小的开销来达到网络环境中的进程通信目的;进程发送的报文较短,同时对报文的可靠性要求不高,那么可以使用UDP协议。36UDP的基本工作过程UDP用户数据报传输过程中的封装与拆封用户数据报传输过程中的封装与拆封 37UDP端口号TCP/IP协议族中用端口号来标识进程;协议族中用端口号来标识进程;端口号是在端口号是在0到到65535之间的整数;之间的整数;客户程序随机选取的临时端口号;客户程序随机选取的临时端口号;每一种服务器程序被分配了确定的全局一致的每一种服务器程序被分配了确定的全局一致的熟知端口号;熟知端口号;每一个客户进程都知道相应的服务器进程的熟每一个客户进程都知道相应的
17、服务器进程的熟知端口号。知端口号。38UDP使用的熟知端口号39UDP数据报格式40UDP检验和的检验范围检验和的检验范围:伪头部伪头部+UDP头头+应用层数据应用层数据 41计算 UDP 检验和的例子 10011001 00010011 153.1900001000 01101000 8.10410101011 00000011 171.300001110 00001011 14.1100000000 00010001 0 和 1700000000 00001111 1500000100 00111111 108700000000 00001101 1300000000 00001111 1500000000 00000000 0(检验和)01010100 01000101 数据01010011 01010100 数据01001001 01001110 数据01000111 00000000 数据和 0(填充)10010110 11101011 求和得出的结果01101001 00010100 检验和 153.19.8.104171.3.14.1112 字节伪首部8 字节UDP 首部7 字节数据填充按二进制反码传算求和将得出的结果求反码全 0 17 15 1087 13 15 全 0数据 数据 数据 数据数据 数据 数据 全 0Thank you43
限制150内