第五章 传输层

上传人:飞*** 文档编号:51575756 上传时间:2018-08-15 格式:PPT 页数:33 大小:220KB
返回 下载 相关 举报
第五章 传输层_第1页
第1页 / 共33页
第五章 传输层_第2页
第2页 / 共33页
第五章 传输层_第3页
第3页 / 共33页
第五章 传输层_第4页
第4页 / 共33页
第五章 传输层_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《第五章 传输层》由会员分享,可在线阅读,更多相关《第五章 传输层(33页珍藏版)》请在金锄头文库上搜索。

1、第五章 传输层是整个协议层次结构的核心。其任务是为从源端机到目 的机提供可靠的、价格合理的数据传输一、 传输服务 提供给高层的服务传输实体传输层中完成向用户提供有效、可靠服务的硬件和(或)软件 称为传输实体传输服务的两种类型 面向连接的传输服务 无连接的传输服务注:传输层的存在使传输服务远比其低层的网络服务更可靠传输服务提供者与传输服务用户 服务质量传输层的主要功能使增强网络层提供的服务质量传输层服务质量的主要参数 连接建立延迟 吞吐率参数 传输延迟 优先级参数注:服务质量参数是传输用户在请求建立连接时设定的选项协商传输服务用户1传输实体1传输实体2传输服务用户2Q1Q0Q3Q0Q4Q0Q4Q

2、0Q2 Q0Q4 Q0 传输服务原语比较网络服务与传输服务 前者倾向于将实际网络提供的服务模型化,提供的服务不太可 靠;面向连接的传输服务必须是可靠的 网络层服务和传输层服务的服务对象不同。前者作用于传输实 体;传输原语可能被许多用户看到,因此传输服务必须简单易 用简单的传输服务原语 侦听 LISTEN 建连 CONNECT 数据交换 SEND、RECEIVE二、 传输协议的要素传输服务是通过建立连接的两个传输实体之间的传输 协议来实现的 对比数据链路层协议与传输协议在数据链路层不必为一个路由器指明它要与哪个路由 器通话;在传输层,需要显式给出目的端地址在数据链路层环境中建立连接的过程比较简单

3、;而在 传输层则比较复杂传输层需要的数据缓冲与流量控制比数据链路层要大 和多,需要不同的处理方法 寻址一般方法:定义进程可以侦听连接请求的传输地址在面向连接的网络层上建立一个传输连接,其过程如下 主机B上的定时器服务进程将自己连到TSAP2上,等待即将到来的请求 主机A上的一个应用程序想知道现在的时间,于是发出一个 CONNECT 请求,并将 TSAP1 设为源地址,将 TSAP2 设为目的地址 主机A上的传输实体选择一个网络地址并在它们之间建立一个网络连 接。使用该连接,主机A 的传输实体便能与主机B的传输实体通话了 主机A上的传输实体就请求将自己的TSAP1与对应的TSAP2建立连接 主机

4、B 上的传输实体询问 TSAP2 是否愿意接受一个新连接,如果同意 ,传输连接便建立成功用户进程如何知道服务进程是连接到哪个TSAP 上的? 服务进程长年与固定的某个TSAP 相连,并且所有网络用户都 逐步了解了这一点 服务器主机执行初始连接协议TSAP用户进程服务器定时 服务器向远端用户提供服务的机器运行一个特殊的进程服务器。它侦听 一系列端口,等待 TCP 连接请求需要某种服务的用户通过执行 CONNECT 请求开始,然后设定 它们所需服务的 TSAP 地址。如果没有服务器在等待它的到来, 它将会连接到进程服务器上当进程服务器收到传入的请求后,交给用户请求的服务器,并将 已建立的与用户的连

5、接转交给它新的服务器开始执行用户请求的任务,而进程服务器又恢复侦听 新的用户连接请求 使用名录服务器为了找到与一个给定服务名称相对应的 TSAP 地址,用户要与该 名录服务器建立一个连接。用户向名录服务器发送一个报文,指 明服务的名称,而名录服务器将响应的 TSAP 地址返回给用户关键:名录服务器的 TSAP 地址应该是用户熟悉的TSAP地址结构 层次型地址 平面型地址 建立连接由于网络可能出现丢失、延时、重发分组等情况,所 以必须在传输层上建立连接,保证可靠传输建立连接的过程 发送传输实体发出传输连接请求的 TPDU 接收传输实体收到此 TPDU 后,发出确认连接请求的 TPDU 发送传输实

6、体收到此确认后传输连接就建立完毕上述过程成为两次握手传输实体必须能够识别重复的 TPDU: 方法一给每一个连接分配一个连接标识符,即一个随连接而递增的顺序 号。该标识符由请求连接方选择,并放进包括连接请求在内的每 个 TPDU 中。当每个连接释放后,各传输实体可以更新一张表, 列出所有过时的连接对。当收到一个连接请求时便查看此表,看 该连接是否属于以前所释放的连接不足:要求传输实体能长时间保持一定量的历史信息。如果某机 器发生崩溃而丢失了信息,那么它将无法再获知哪些连接标识符 是用过的 方法二确保任何一个分组在子网中存留的时间都不超过某个已知的时间 ,即设定分组的生命周期对分组生命周期的限制方

7、法: 限制通信子网设计,防止分组进入循环回路,并限制延时不超过可 能的最长路径延时 在每个分组内设置一个站段计数器。当经过一个转发点,分组的站 段计数器就加1。数据链路层协议会丢弃那些站段计数器超过某个预 先设定值的分组 为每个分组加时间戳。由路由器负责丢弃超过预定时间的旧分组。 因此要求路由器的时钟同步 解决系统崩溃后计算机丢失信息的问题:在每台主机增设一个 计时时钟,时钟一直在运转(即使主机停机)。此方法的基本 思想是确保同一时刻永远不会出现两个编号相同的 TPDU。当 一个连接建立后,时钟的低 k 位作为初始序号。这样每个连接 都以不同的序号开始对其 TPDU 进行编号另一种情况:当 T

8、PDU 由于延迟而在连接释放后到达 ,从而产生差错 解决方法:三次握手 CR ACC B,ADT A,BCR 传输连接请求 CC 确认,对CR TPDU 的确认 REJ 拒绝,拒绝接收数据 TPDU DT 数据,要传输的数据 释放连接主要释放连接的方式 非对称方式相互连接的传输用户中的任何一方都能执行 DISCONNECT,传输 实体发送释放连接的 TPDU,一旦该 TPDU 到达,连接即被释放 对称方式当一方执行了 DISCONNECT 后,它就不再发送数据,但仍然可以 接收对方的数据;只有当连接双方都执行了 DISCONNECT 时,才 能释放连接发送DR,并 启动计时器释放连接发送 AC

9、K发送DR并 启动计时器DRDRACK主机1主机2 发送DR,并 启动计时器释放连接发送 ACK发送DR,并 启动计时器(超时)释放连接DRDRACK 丢失主机1主机2注:DR 释放连接,要求释放与对应的传输实体间的连接ACK 确认,对数据 TPDU 的确认发送DR,并 启动计时器(超时) 发送DR,并 启动计时器释放连接发送 ACK发送DR,并 启动计时器发送DR,并 启动计时器释放连接DRDR 丢失DRDRACK发送DR,并 启动计时器(超时) 发送DR,并 启动计时器(N 个超时)释放连接发送DR,并 启动计时器(超时)释放连接DRDR 丢失DR 丢失 主机1主机1主机2主机2三、一个简

10、单的传输协议 服务原语举例CONNECTLISTENSEND,RECEIVEDISCONNECT 传输实体举例传输实体一般可以是操作系统的一部分或是一组运行 在用户地址空间内的库例程举例:listen 过程 如果没有连接请求,传输实体被挂起(调用 sleep( ) ) 当一个建立连接请求到达时,判断该请求是否处于排队状态 若是, 则置该连接请求状态为已经建立, 并对该连接的计时器 清零 通过 to- net 告诉网络层接受该连接连接的七种状态 IDLE 连接未建立 WAITING 已执行了 CONNECT 原语并发送了CALL REQUEST QUEUED CALL REQUEST 到达,但没

11、执行 LISTIN 原语 ESTABLISHED 连接已经建立 SENDING 用户等待发送数据分组许可 RECEIVEING 执行了 RECEIVE 原语 DISCONNECTING 本地执行了 DISCONNECT 原语每个连接总是处于上述七种状态之一,当任何一个事 件出现时,会发生状态的改变。例如,执行了一条原 语、一个分组的到来或计时器超时等本节例子中的过程分为两种类型 多数过程可以由用户程序直接调用 packet arrival 和 clock 过程是由外部事件自动触发的四、因特网传输协议(TCP 和 UDP) 传输控制协议(Transmission Control Protocol

12、,TCP )目的:在不可靠的网络层上提供可靠的端到端的通信TCP 服务模型 通过在发送方和接收方创建一个称为套接字的通信端点来获得 TCP 服务 每个套接字有一个套接字序号(地址),它包含主机的 IP 地 址以及一个主机本地的 16 位号码,称为端口。端口是 TSAP 的 TCP 名称 两个或更多的连接有可能同时连接到一个套接字上。连接由两 端的套接字标识符来识别,即(sock1,sock2) 所有的 TCP 连接均是全双工的和点到点的 TCP 连接是字节流而非报文流 紧急数据与中断响应TCP 协议 发送方和接收方 TCP 实体以数据段的形式交换数据 一个数据段包含了一个固定的 20 字节的头

13、及 0 字节或多字节 的数据 对数据段的大小有两个限制每个数据段必须适合 IP 的载荷能力,不能超过 65535 字节 (P114)每个网络都存在最大传送单元 MTU,要求每个数据段必须适合 MTU TCP 实体所用的基本协议是滑动窗口协议TCP 数据段头 不带任何数据的数据段也是合法的,一般用于确认报文和控制 报文 源端口和目的端口字段标识出本地和远端的连接点。每个主机 都可以自行决定如何分配自己的端口,一般端口号从 256 开始 。端口号加上其主机的 IP 地址构成一个 48 位的唯一的 TSAP PSH 表示是带有 PUSH 标志的数据。接收方在数据段一旦到来 就送往应用程序而不必等到缓

14、冲区装满才传送 RST 用于复位,当由于主机崩溃或其他原因而出现错误连接时 SYN 用于建立连接 FIN 用于释放连接TCP 连接和释放管理 TCP 建立连接可采用三次握手的方法服务器端,通过执行 LISTEN 和 ACCEPT 原语被动的等待一个 到达的连接请求客户端,执行 CONNECT 原语,发送一个 SYN = 1,ACK = 0 的 数据段到目的端,并等待对方响应。同时指明它想连接到的 IP 地址和端口号,设置它能接受的 TCP 数据段的最大值及一些可 选的用户数据。该数据段到达目的端后,那里的 TCP 实体查看是否有进程在侦 听目的端口字段指定的端口。如果没有,则发送一个 RST

15、=1 的 应答,拒绝建立连接;如果有,则将到达的 TCP 数据段交给该 进程,它可以接受或拒绝建立连接。若接受,便发回一个确认数 据段。注:呼叫碰撞的情形 TCP 连接的释放虽然 TCP 连接是双工的,但最好将其看作是一个双单工的连接 ,每个单工连接都独立释放为了释放连接,每方均可发送一个 FIN = 1 的 TCP 数据段,表明 本方已无数据发送。当 FIN 数据段被确认后,那个方向的连接即 可关闭。但它仍可以接收数据为避免两军问题,使用定时器计时。如果对 FIN 数据段的应答在 两个最大分组生命周期内未到达,FIN 数据段的发送方便可以释 放连接。另一方最终会发现已无人在侦听它的任何消息,从而也 会因超时而释放连接 TCP 连接管理有限状态机TCP 传输策略 TCP 中的滑动窗口管理不直接受制于确认信息 接收方声明的窗口大小是根据现在缓冲区大小而定的 当滑动窗口为 0 时(虽然数据已被确认,但应用程序还没从缓 冲区中取走数据),发送方一般不能再发送数据段 特殊情况下,发送方在滑动窗口为 0 时仍可发送数据段发送的是紧急数据,如:允许用户终止在远端机上的运行程序可以发送一个 1 字节的数据段通知接收方重新声明它所希望接收 的下一个字节以及窗口大小 图

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号