计算机网络的分层结构
“分层”设计的思想
在计算机网络中需要实现的各种功能众多,为了使这些功能不过多耦合,便于实现和维护,计算机网络的设计者将计算机网络的功能划分为若干个层次,每个层次完成一种相对独立的功能。各层之间相互独立,通过接口进行通信。同一层中的各进程通过服务访问接口使用下层提供的服务,而层与层之间则通过服务访问点(SAP)进行通信。
将复杂的计算机网络在逻辑上划分为多个层次,并将各种“功能”安排在合适的层次中
不同类型的节点,实现的功能层次可能不一样
只要在功能安排合理的情况下,分层结构的设计可能并不唯一,可以根据实际需求来增加或减少层次
一个功能可能在多层内重复出现
三种常见的计算机网络体系结构
OSI/RM(Open System Interconnection Reference Model,开放式系统互联参考模型) 由国际标准化组织提出,是一个理论上的标准,目前还没有完全实现,目前法律上的标准
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议) 由美国国防部(APD)和其下属的ARPANET项目的后续成果,目前已经成为事实上的标准
五层模型 (教学用标准)
网络体系结构的概念
网络体系结构(Network Architecture) 是指计算机网络的各层及其协议的 集合,是计算机网络及其构件所应完成的 功能的精确定义(不涉及实现)。
实现(Implementation) 是遵循这种体系结构的前提下,用何种硬件或软件完成这些功能的问题。
体系结构是抽象的,实现是具体的
各层之间的关系
水平上来看:
实体:在计算机网络分层结构中,第 n 层中的活动元素(进程、软件、硬件等)称为第 n 层的实体。不同机器上的同一层称为对等层,同一层的实体称为对等实体。
协议:即网络协议(Network Protocol),是控制两个对等实体进行通信的规则的集合,是水平的。
垂直上来看:
接口:即同一节点内相邻两层的实体交换信息的逻辑接口,又称为服务访问点(Service Access Point,SAP)。
服务:服务指下层为紧邻的上层提供的功能调用,它是垂直的。
数据传输过程(水平)
为什么要分层?为什么要制定协议?
计算机网络功能复杂 -> 采用分层结构,将诸多功能合理地划分在不同层次 -> 对等层之间制定协议,以实现功能
每层实体对数据首部添加对应信息,对等层对数据对应首部进行解析,从而完成对数据在本层的处理
数据传输过程(垂直)
数据从顶层传入,每一层向数据添加一个首部,在里面按照该层协议写入信息,然后包括数据和首部作为一个整体传给下一层,下一层再添加一个首部直到物理层进行传输,到达下一节点后,该节点的每一层对对应首部进行解析并处理数据后拆除对应首部或尾部然后依次向上层传输,直到顶层
协议数据单元(PDU):对等层之间交换的数据单位。第 n 层的 PDU 称为第 n 层的协议数据单元(PDU)简写为 n-PDU。
服务数据单元(SDU):为完成上一层实体所要求的功能而传输的数据。第 n 层的 SDU 称为第 n 层的服务数据单元(SDU)简写为 n-SDU。
协议控制单元(PCI):控制协议操作的信息。第 n 层的 PCI 称为第 n 层的协议控制单元(PCI)简写为 n-PCI。
提示
三者关系可以表示为:
n-SDU + n-PCI = n-PDU = (n-1)-SDU
协议三要素
协议由语法、语义和同步三部分组成,称为协议的三要素。
语法:规定了数据与控制信息的格式。例如,协议控制信息(首部)占多少字节、每个字节是什么含义;协议的数据部分最多有多少字节。
语义:即需要发出何种控制信息、完成何种动作及做出何种应答。例如,协议中需要明确规定:发送方发送完数据后,接收方是否需要“应答”,以及应答的种类有哪些(如:传输成功、传输失败)。
同步(或时序):执行各种操作的条件、时序关系等,以即事件实现顺序的详细说明。例如:发送方发完数据后,接收方需要立即报告。如果发送方在10秒内未收到“传输成功”应答,则发送方会再次发送数据。
更新日志
1d8cb-于2cc8b-于77ead-于cd936-于a760c-于c582b-于92f50-于5816f-于
