计算机通信网第6章 传输层

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

12008SPLENG计算机通信网ComputerNetworks第6章传输层本教案参考资料:《计算机网络》Tanenbaum第3、4版《计算机网络》谢希仁第4版马立香,段景山,毛玉明老师课件22008SPLENG传输层环境及面临的问题传输实体传输实体进程x进程y进程x进程y网络层及下层网络传输层传输层网络层及下层端——端通信向高层进程提供服务希望可靠希望高效希望廉价利用网络提供的服务问题是:网络能提供可靠的服务吗?可能丢失分组可能乱序可能重复因此传输层需要自己采用措施,才能向用户提供可靠服务★32008SPLENG传输层服务屏蔽具体网络细节和不同网络差异,为上层提供与具体网络无关的通信服务。功能各种网络的适配,网络通信的分流和复用、多个并发通信的管理、流量控制等。协议TCPUDPTP4分流:用多个网络通信来实现一个传输层的通信,提高传输层的通信速度复用:多个传输层的通信复用到一个网络通信上,可降低费用。传输层网络层传输层网络层★42008SPLENG6.1传输服务向用户(应用层进程)提供有效、可靠且价格合理的服务面向连接的服务无连接的服务★52008SPLENG为什么需要传输层数据链路层面向连接的服务无连接的服务网络层面向连接的服务无连接的服务传输层面向连接的服务无连接的服务——相连机器间——网络间——用户间通信子网差异大用户无法控制增强服务质量(QoS)将通信子网的技术、设计和缺陷与上层相隔离适合多任务系统的进程间通信控制★62008SPLENG传输层服务质量QoS(QualityofService)典型参数实现方式用户传输数据前设定希望值和最小可接受的值选项协商连接建立延迟连接建立失败的概率吞吐率传输延迟误码率(安全)保护优先级恢复功能72008SPLENG传输服务与网络服务网络服务由实际网络决定不直接面向用户传输服务由用户假定,隐藏网络服务的缺陷直接面向用户,必须简便、易用传输服务原语——用户访问传输服务简单传输服务原语P411图6-2BerkeleySocket原语(TCP)P414图6-5★82008SPLENG简单服务与套接字服务92008SPLENG面向连接的传输服务原语简单原语套接字原语发送的TPDU含义-SOCKET-创建一个通信端点-BIND-套接字附加本地地址-LISTEN-宣布愿意接受连接,给出队列大小LISTENACCEPT-阻塞至连接尝试到达CONNECTCONNECTCONN_REQ建立连接的尝试SENDSENDDATA在连接上发送数据RECEIVERECEIVE-在连接上接收数据DISCONNECTCLOSEDISCONN_REQ释放连接102008SPLENG一个简单连接管理模式的状态图112008SPLENG6.2传输协议的要素与数据链路层的类似之处差错控制、流量控制、连接管理等与数据链路层的差异数据传输通道数据链路层:物理通信信道传输层:子网目的端地址数据链路层:不一定显式指定传输层:必须显式指定连接建立过程数据链路层:简单,与直接相连的对方传输层:复杂,穿越网络通信子网的存储能力对传输层通信产生很大影响连接数量的差异数据链路层:少,固定分配缓冲区大小传输层:多且动态变化,必须采用特定的缓冲策略★路由器物理通信信道链路层运行环境路由器子网主机传输层运行环境122008SPLENG6.2.1寻址传输服务访问点TSAP——标识应用程序当主机1的某个应用进程希望与主机2的某个应用进程建立连接时,如何指明该应用进程?通过TSAP主机1上的应用进程如何知道主机2上服务器进程的TSAP?主机2上的服务器进程如何接收来自主机1应用进程的数据?★132008SPLENG服务器进程如何接收?方案各种服务预置固定不变的TSAP例:Telnet—23,SMTP—25,HTTP—80服务器进程在相应的TSAP上侦听问题服务器进程很多,但大多数很少使用,所有服务器进程全天候侦听——浪费解决进程服务器:侦听一系列TSAP名字服务器:侦听一个TSAP★142008SPLENG进程服务器进程服务器为其他服务器提供代理同时监听一组端口,等待外来的连接当用户请求的TSAP无专门服务器等待时,则指向一个进程无服务器进程服务器请求对应的服务器,然后新服务器执行用户的请求★152008SPLENG名字(目录)服务器查号台服务器登记?★162008SPLENG应用进程如何发送?问题传输实体怎么知道哪个网络层地址用来与TSAP对应的远程传输实体建立网络连接?解决——TSAP地址结构层次型结构例:地址=星系恒星行星国家网络主机端口Internet:(IP地址,本地端口)平面型结构——二级映射名字服务器广播查询★172008SPLENG6.2.2建立连接问题由通信子网不可靠造成的丢失、存储、重复分组问题问题的关键通信子网中存在延迟的重复分组你将离开我吗?嫁给我吧!不好啊嗯?嗯?不182008SPLENG端到端连接的问题问题的关键通信子网中可能存在延迟的重复分组崩溃恢复:假设链路层采用重传机制,当RA发送一帧P后链路出错,RA另选路径,并因为没有收到应答而重传P,在收端就得到重复分组路由器RA子网主机★192008SPLENG端到端连接的解决问题的关键通信子网中可能存在延迟的重复分组尤其糟糕的是前一连接的数据延迟到下一连接中出现解决初探每次连接都使用新的TSAP将导致进程服务器失效为每个连接分配一个连接标识符(递增的序列号)将导致每个传输实体长时间保持一定量的历史信息限制分组的生命周期★202008SPLENG限制分组的生命周期限制子网规模防止分组进入回路在每个分组内设置一个站段计数器丢弃站段计数器值超过某个特定值的分组为每个分组加上时间戳丢弃超过预定时间的旧分组-要求时钟同步212008SPLENG限制延迟的重复分组实际应用中,需要确定分组已无效对该分组的确认也已无效基本思想:确保在同一时刻永远不会出现两个序号相同的TPDU。222008SPLENG数据TPDU:基于时钟的方法传输实体在发送每个TPDU之前必须检查该TPDU是否将进入禁止区域措施:延迟T秒,或重新同步序号232008SPLENG连接TPDU:三次握手★242008SPLENG6.2.3释放连接非对称释放任意一方均可释放整个连接结果:可能导致数据丢失应用:电话系统中一方挂机,丢失数据对称释放每个方向独立释放本方连接结果:仍能继续接收数据应用:固定的发送量,并知道何时发送完毕问题:两军问题★252008SPLENG非对称释放★262008SPLENG对称释放两军问题连接的双方在确信对方也准备释放连接之前都不准备断开连接,那么连接将永远也得不到释放272008SPLENG对称释放连接的4种情况(a)(b)★282008SPLENG对称释放连接的4种情况(c)(d)★292008SPLENG对称释放:半连通的连接产生的原因A的DR和所有N次重发均丢失时,A放弃重发并释放连接B对A的释放连接企图一无所知,而处于连接有效状态消除的方法A直到收到一个应答后才能释放连接问题:如果B超时释放连接,A将无法释放连接任意一方在一段时间内没有收到任何TPDU,则自动释放连接302008SPLENG6.2.4流量控制和缓冲策略312008SPLENG6.2.4流量控制和缓冲策略与数据链路层的比较相似:滑动窗口等机制,实现收发速率匹配不同:缓冲策略(主机可以有多个连接)、子网容量缓冲策略发送方缓存:网络服务不可靠、低速突发信息接收方缓存:网络服务可靠、高速平稳的信息缓冲区大小——固定、可变、循环动态缓冲区管理发送方在对方申请缓冲空间从确认中分离接收方缓存子网的运载容量——动态调整滑窗大小可变大小的窗口★322008SPLENG缓冲区大小固定大小可变大小•最大TPDU:空间浪费•小于最大TPDU:长TPDU需占用多个缓冲区,维护复杂•提高内存利用率•缓冲区管理更复杂循环缓冲区•轻负荷时内存利用率低★332008SPLENG6.2.5多路复用需要价格因素(长时间占用虚电路):向上多路复用(a)传输技术(提高传输带宽):向下多路复用(b)342008SPLENG6.2.6崩溃恢复通信子网崩溃无连接服务:主机重传丢失的TPDU面向连接服务:网络层建立新的虚电路服务器崩溃服务器以广播方式向客户发送一个TPDU,说明自己的崩溃并要求客户通告所有已建立的连接所处的状态★352008SPLENG服务器崩溃恢复服务器有3种可能的事件发送确认(A)写数据到输出进程(W)崩溃(C)TPDUACKCSS0S1发确认写操作TPDUCSS1发确认写操作AC(W)丢失一个TPDUWC(A)重复一个TPDU★362008SPLENG服务器崩溃恢复服务器有3种可能的事件发送确认(A)写数据到输出进程(W)崩溃(C)第N层崩溃只能由第N+1层来恢复条件:第N+1层保留有足够的状态信息★

1 / 36
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功