传输层和数据链路层的几个重大差别

传输服务由传输协议实现,两个传输实体之间的通信必须使用传输协议。传输协议在有些方面类似于数据链路协议。这两种协议都要处理:

错误控制
顺序性
流量控制
以及其他一些问题

然而,两者之间也存在重大差别,这些差别是因为这两种协议的运行环境不同而造成的,如下图所示

首先,在点到点链路上,无论是电缆还是光纤,路由器不必指定它要与哪一台路由器进行通话---每条出境线路直接通向一台特定的路由器。而在传输层,必须显示地指定接收方的地址。

其次,在一条线路上建立一个连接的过程非常简单:另一端总是在那里。两边都不需要做很多事情。即使在无线链路上,建立过程也没有多大的不同,只要发出的消息足够到达所有的其他接收方。如果因发生错误而消息没有被确认,可以再次重发。而在传输层中,初始的连接建立过程非常复杂,比如TCP三次握手四次挥手。

再次,网络存在着潜在的存储容量,且网络具有延迟和重复数据包的 特性所产生的后果有时是灾难性的,因此这要求使用特殊的协议,以便正确地传输信息。

最后,这两层都需要缓冲和流量控制,当一帧到达时,链路总是有缓冲区可用。在传输层中,由于必须要管理大量的连接并且每个连接获得的带宽却又是可变的,因此,为每条线路分配多个缓冲区的思路不再有吸引力。

posted @ 2019-09-03 16:41  james_cai  阅读(1728)  评论(0编辑  收藏  举报