计算机网络(传输层)
一.传输服务 二.传输协议 三.TCP协议 四.UDP协议
传输层
4/12/2020 5:35:08 AM
1
一、传输服务 控制单元
传输服务
• 传输层实体运行在用户主机中,利用通信子网提供的服务,向用户(应用 进程或会话层实体)提供端到端的通信服务。
• 面向连接的传输服务:这种服务具有基于连接的流量控制、差错控制和分 组排序功能,因而面向连接意味着可靠和有序的提交。然而实现这种服务 必须付出建立、维护和终止逻辑连接的开销。
4/12/2020 5:35:08 AM
12
传输协议(续)
多路复用
• TP2~TP4类传输协议都提供多路复用功能,即由多个传输连接共享同一 网络连接。由于在虚电路存续期间每个网络结点都要为之分配一定的缓冲 资源,所以网络连接通常是按连接时间计费的。在单个网络连接提供的吞 吐率足够的情况下,把多个传输连接复用到一条网络连接上可合理地分担 费用。这种方式的多路复用可以称为向上的多路复用。
加急投送服务仅用于需要紧急传送的少量数据,例如终端发出的中断字符 或是告警状态指示等,而优先服务只是通过资源分配和信道参数的调整使 得优先级高的数据比普通数据传送得更快一些。
4/12/2020 5:35:08 AM
5
传输服务(续)
连接管理服务
传输实体要对连接的建立和释放进行管理。建立连接的过程可以是对称的,即 允许任何一方用户启动建立连接的过程;也可以是非对称的,即仅允许一方提 出连接请求,另一方只能接受(或不接受)对方提出的连接请求。非对称方式 用于建立单向连接。
传输实体 网络服务
传输实体
网络服务 14
传输协议(续)
传输层流控方案
(1)接收端传输实体拒绝接受网络实体送来的TPDU; 这是利用网络层流控实现传输层流控。当传输实体缓冲区充满时拒绝接受网络 服务送来的数据,就触发了网络中的流控过程,从而引起发送端的网络服务不 再接受它上面的传输实体发来的TPDU。当多个传输连接复用在一个网络连接 上时,这种机制就完全失效了,因为网络流控无法对各个传输连接分别提供流 控。
1)接收端用户来不及接收数据;
传输用户
2)接收端传输实体来不及接收数据。
发送端
传输用户 接收端
接收端传输实体为传输连接维持一定 数量的缓冲区,用于存放TPDU。缓 冲区可能溢出,所以实施流控是必要 的。 传输层对等实体之间不直接相连,传 输实体之间的延迟大,而且延迟是变 化的。所以流控难度大
4/12/2020 5:35:08 AM
A 根据收到的信贷数调整窗口
DT5
DT6
DT7
01 234 5670 12 34 567
A 收到新的信贷数扩大了窗口 4/12/2020 5:35:08 AM
ACK 0,CDT7
01 23 45 670 12 345 67
B 应答了5 个,准备接收7 个 TPDU
16
传输协议(续)
信贷滑窗协议
接收方发出增加信贷数的时机和数量值得进一步讨论。
4/12/2020 5:35:08 AM
11
传输协议(续)
如何获取对方传输用户的地址? • 有些进程提供公共服务,其地址是众所周知的。 • 网络中可以配置一个名字服务器,请求服务的用户可以查找名字服务器。 • 发起端的用户进程向地址已知的远端系统特权进程发出请求,特权进程
派生出新的临时进程,并被分配给一个临时的端口地址。 例如网络中有一个分时系统提供公共服务,它的地址是众所周知的,任 何用户终端都可以登录在分时系统上;又例如为了均衡负载,数据输入 进程可能在局域网中从一个站移动到另一个站,这个进程的名字必须保 存在名字服务器中,当它移动时名字服务器随时更新其地址;在大型主 机上运行一个仿真程序,则可作为一个临时进程的例子,终端用户首先 向主机上的远程作业管理进程发出请求,管理进程派生出仿真进程并返 回它的端口地址。
传输实体B
Байду номын сангаас
传输协议(续) 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
DT0
01 23 45 670 12 345 67
A 可连续发送7个TPDU
DT1
B 准备接收7个TPDU
信贷(credit)DT滑2 动窗口协议
第三种流控方案在控制数据流动速率D方T3 面给接收方提供了更大的自由度,
• 无连接的传输服务(数据报服务)不保证可靠的顺序提交,这个缺点有时 显得不很重要。例如通过网络定期地进行数据采集时,偶然丢失数据是允 许的,因为后来的数据可以弥补以前的损失。又例如向网络用户广播消息 或发布实时消息时,也不在乎个别用户没有收到不很重要的报文。特别是 在分布式事务处理环境中.通常采用请求—响应的工作方式,如果某个用 户的请求没有得到服务器的响应,这种错误往往由用户进程处理,传输协 议不必做差错恢复工作。
4/12/2020 5:35:08 AM
7
传输协议(续)
5种传输协议 • TP0协议适用于A型网络,它是CCITT为智能用户电报(Teletex)开发的协
议。TP0为请求的传输连接建立一条对应的网络连接,并假定网络连接完 全可靠,不再另外进行流控和排序。
• TP1协议适用于B型网络,它在TP0协议的基础上增加了差错恢复功能。差 错恢复功能表现在对传输协议数据单元(TPDU)编号,当X.25复位命令出 现后可以重新取得同步,或者在X.25重启动之后再建传输连接,流控功能 仍然由网络层协议实现。这种协议也提供加急投送服务。
4/12/2020 5:35:08 AM
9
传输协议(续)
寻址问题 • 统一的全局编址方案不可行:
① 有的通信实体是移动的,它的地址会改变; ② 有的通信设备连接到多个网络上,每个网络独立地为其指定地址。 • 分层名字:采用<网络><系统><实体名>的形式。优点是容易增加新 的名字,因为每一个通信实体的名字只在它所属的局部系统有效,分层名 字还可提供地址信息,因而具有路由功能 • 扁平名字:在整个通信环境中有全局意义,这要求整个名字空间足够大, 并且预先把统一的名字空间分配给各个通信系统。增加一个新的扁平名字 得考虑是否与其他全局名字相冲突,扁平名字不能指示通信实体属于哪个 网络或主机系统。
4/12/2020 5:35:08 AM
4
传输服务(续)
加急投送服务
这种服务类似于高优先级服务,但是有所区别。由于传输层要向上层提供 可靠顺序的提交服务,所以对各种协议数据单元都要进行流量控制,但是 加急投送数据不受流控影响。加急投送服务的数据包可以赶上和超过前边 的数据包,传输实体调动可用的设施尽快地传送加急数据。在接收端,传 输实体用中断方式通知用户立即接收加急数据,并用加急的协议数据单元 返回应答。
4/12/2020 5:35:08 AM
10
传输协议(续)
寻址问题
• 传输用户必须能够从名字中推导出通信对方的网络编号、站地址、传输实体 标识和用户标识。
• 站地址表示主机系统,就是网络层服务访问点NSAP;端口号与具体的用户 相联系,对应于传输层服务访间点TSAP。这种地址结构中没有传输实体标 识字段,通常一个站仅包含一个传输实体,所以站地址就代表了该站上的传 输实体。即使一个站有几个传输实体,则各个传输实体应用的传输协议类型 不同,只要指明传输协议的类型(例如 TP0或 TP1)就可以区分了。
连接的终止可以是突然的或平稳的,当连接突然终止时,正在传输中的数据就 丢失了,而平稳终止连接则可以保证所有在传输途中的数据完整提交之前任何 一方不会释放资源,不会关闭连接。
4/12/2020 5:35:08 AM
6
二、传输协议
传输协议的分类 ISO定义了三种网络服务: • A型:网络连接具有可接受的残留差错率和可接受的失效通知率。 • B型:网络连接具有可接受的残留差错率和不可接受的失效通知率。 • C型:网络层提供无连接的服务,这种服务具有不可接受的残留差错率。 所谓差错是指有丢失或重复的网络层协议数据单元。如果差错被网络协 议捕获并得到纠正,则这种差错对传输实体是透明的。如果网络层检测 到了差错,但不能恢复,则必须通知传输实体,这叫失效通知。例如在 X.25网络中发生复位时就会通知上层协议。还有的差错既没有得到纠正, 也没有通知传输实体,这就是残留差错。
在基础网络可靠的情况下,这种控制D策T4 略能产生平滑的数据流动,在基础
网信号络与不流可控靠信时号,分它开还处是理一种,差不错像控固制定ACK手大3, 段小CDT的。5 滑这0B窗种1应协控2答议制了3 3那技4个,样术5准备6对把接7两接收05者收个1用方T2P同D的3U一应4 个答5 6 7 0 信1 号2 控3 制4 。5 6 7 0 1 2 3 4 5 6 7
• 向下的多路复用也叫分流,即把一个传输连接分配到多个网络连接上,这 样可以获得较高的吞吐率,并增加可靠性。TP4协议提供了分流功能。
4/12/2020 5:35:08 AM
13
传输协议(续)
流量控制
通过传输连接的数据流动过程为:发送端用户—>发送端传输实体—>发送端 网络服务—>接收端网络服务—>接收端传输实体—>接收端用户。接收端传输 实体要求限制数据流动的速率可能是出于下面的原因;
保守的策略是当B已有空闲缓冲区时才增加信贷,信贷数的多少正好等于已有 的自由缓冲区的数量。
更为大胆一些的策略是B虽然没有自由缓冲区,但考虑到端到端的传输延迟, 估计当要求的TPDU来到时就可释放出新的自由缓冲区,这时也可增加信贷数。 在传输延迟时间很长的网络中,提前增加信贷数能改善吞吐率。
如果提前的时间和发出信贷的数量掌握得不够准确,可能会在TPDU来到时还 没有得到预期的自由缓冲区,从而不得不丢弃数据,这时又需要重传机制的 协助,所以要优化吞吐率必然使协议操作更复杂
4/12/2020 5:35:08 AM