传输协议的组成元素是什么?
为了在网络上的两台机器之间建立可靠的服务,需要实现传输协议,这在某种程度上类似于在第二层实现的数据链路协议。主要区别在于数据链路层使用两台路由器之间的物理通道,而传输层使用子网。
以下是实现传输协议的问题:
服务类型
传输层也确定了从会话层向用户提供的服务类型。无错误的点对点通信以发送的顺序传递消息是传输层的主要功能之一。
错误控制
错误检测和错误恢复是可靠服务不可或缺的一部分,因此,需要在端到端的基础上执行错误控制机制。为了控制丢失或重复分段造成的错误,传输层为消息的不同分组启用唯一的分段序列号,创建虚拟电路,每个会话只允许一个虚拟电路。
流量控制
流量控制的基本规则是在快速进程和慢速进程之间保持协同作用。传输层使快速进程能够与慢速进程保持同步。发送确认来管理端到端的流量控制。Go back N算法用于请求从分组编号N开始的分组重传。选择性重传用于请求重传特定分组。
连接建立/释放
传输层在网络上创建和释放连接。这包括一种命名机制,以便一台机器上的进程可以指示它希望与谁通信。传输层使我们能够在网络上建立和删除连接,以便将多个消息流多路复用到一个通信通道上。
多路复用/多路分解
传输层为会话层所需的每个传输连接建立一个单独的网络连接。为了提高吞吐量,传输层建立多个网络连接。当吞吐量问题不重要时,它将多个传输连接多路复用到同一个网络连接上,从而降低建立和维护网络连接的成本。
当多个连接被多路复用时,它们需要在接收端进行多路分解。在传输层的情况下,通信只发生在两个进程之间,而不是在两台机器之间。因此,传输层的通信也称为点对点或进程间通信。
分段和重组
当传输层从会话层接收大型消息时,它会根据需要将消息分解成更小的单元。此过程称为分段。然后,它被传递到网络层。相反,当传输层充当接收进程时,它会在将消息片段重新组装成消息之前重新排序消息片段。
寻址
传输层处理帧的寻址或标记。它还区分连接和事务。连接标识符是端口或套接字,它们标记每个帧,以便接收设备知道它是从哪个进程发送的。这有助于跟踪多个消息对话。端口或套接字可以处理同一位置的多个对话。