计算机网络的分层结构
三种最常见的计算机网络体系结构
- 不同类型的节点,实现的功能层次可能不一样。
- 分层的设计并不唯一,可根据实际需求增加或减少层次。
- 同一个功能可在不同层次中反复出现。
TCP/IP 模型事实上只有四层:
- 网络接口层
- IP 层
- 传输层
- 应用层
- 网络的体系结构是计算机网络的各层及其协议的集合:有几层、每一层有哪些功能等。
TIP
体系结构是抽象的,而实现是具体的。
- 实体:第 n 层中的活动元素(软件 + 硬件)通常被称为第 n 层实体。不同机器上的同一层被称为对等层,同一层的实体称为对等实体。
- 网络协议:控制对等实体之间进行通信的规则的集合,是水平的。
- 接口:同一节点内相邻两层的实体交换信息的逻辑结构,又称为服务访问点。
- 服务:下层为紧邻的上层提供的功能调用,是垂直的。
协议的三要素
再回顾一遍:
TIP
协议是控制对等实体之间进行通信的规则的集合,是水平的。
协议由语法、语义和同步三部份组成:
- 语法:数据与控制信息的格式。例如,协议控制信息(首部)占几个字节、每个字节是什么含意、协议的数据部份最多有多少字节。
- 语义:需要发出什么种类的控制信息、完成哪种动作以及做出那种应答。如,协议中需要明确规定:发送方发送完数据后,接收方是否需要应答,以及应答的种类有哪些(如传输成功、传输失败)。
- 同步/时序:通信双方执行各种操作的条件、时序关系等,即事件实现顺序的详细说明。例如:发送方发送完数据后,接收方需要立即应答,如果发送方在十秒内未收到传输成功应答,则会再次发送数据。
OSI 参考模型
“物联网叔会使用”
- 物理层:实现相邻节点之间的比特(0 或 1)传输。
- 这种传输是有可能出错的,而且接收方无法发现这种错误。
- 数据链路层:确保相邻节点之间的链路逻辑上无差错,以帧为单位。
- 差错控制:检错 + 纠错 + 重传。
- 流量控制:协调两个节点的速率。
- 网络层:把分组从源节点转发到目的节点,以分组/数据报(Packet)为单位。
- 路由选择:构造并维护路由表,决定分组到目的节点的最佳路径。
- 分组转发:将分组从合适的端口转发出去。
- 拥塞控制:发现网络拥塞,采取措施缓解拥塞。
- 网际互联:实现异构网络互连。
- 其他:差错控制、流量控制、连接建立与释放、可靠传输管理(接收方需返回分组确认消息)等。
- 传输层:实现端到端通信,即进程到进程的通信,“端”指“端口”。以报文段为单位。
- 复用和分用
- 其他:差错控制、流量控制、连接建立与释放、可靠传输管理(接收方需返回分组确认消息)等。
TCP/IP 模型
网络层“尽最大努力”交付数据,因此网络层的传输不可靠,可靠传输的任务交给传输层。