一、引言:计算机网络体系结构的必要性
计算机网络是一个庞大且复杂的系统,由众多硬件设备、通信链路和软件协议构成。为了设计、实现、管理和维护这样一个系统,必须采用一种结构化、模块化的方法,这就是计算机网络体系结构。它定义了网络各组成部分的功能、它们之间的关系以及信息交换的规则,是网络设计的蓝图和标准。
二、分层思想:解决复杂问题的核心方法论
分层思想是构建计算机网络体系结构的基石,其核心优势在于:
- 模块化设计:将庞大复杂的网络功能分解为一系列相对独立、功能明确的层次。每一层只专注于完成特定的功能,降低了系统设计和实现的复杂度。
- 接口清晰:每一层都为其上层提供服务,并调用其下层的服务。层与层之间通过定义良好的接口进行交互,只要接口不变,某一层内部的具体实现方法可以独立地升级或替换,增强了系统的灵活性和可维护性。
- 易于标准化:分层使得不同厂商可以专注于开发特定层的产品(如路由器工作在特定层,网卡工作在另一层),只要遵守共同的层间协议,就能实现互联互通,促进了网络技术的普及和发展。
三、常见的计算机网络体系结构
历史上和现实中存在多种网络体系结构模型,其中最著名和最具影响力的两种是:
- OSI参考模型(七层模型):
- 由国际标准化组织(ISO)提出,是一个理论上的标准框架,共分为七层:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
- 其贡献在于清晰地定义了各层的功能和服务,为理解和讨论网络协议提供了通用术语和概念模型。但由于标准制定过程复杂、实现较为繁琐,并未在现实中得到广泛应用。
- TCP/IP模型(四层模型):
- 起源于ARPANET,是互联网事实上的标准。它更侧重于实用性和简洁性,分为四层:网络接口层(或主机-网络层)、网际层(IP层)、传输层(TCP/UDP层)、应用层。
- 它将OSI的会话层、表示层功能合并到了应用层,将物理层和数据链路层合并为网络接口层。TCP/IP协议族(如IP、TCP、UDP、HTTP、FTP等)是互联网运行的基础。
- 五层教学/原理模型:
- 为了便于教学和理解,常将OSI的七层模型和TCP/IP的四层模型折中,形成一个五层模型:物理层、数据链路层、网络层、传输层、应用层(融合了OSI的应用层、表示层、会话层功能)。这是学习计算机网络原理时最常用的模型。
四、关键专业术语解析
理解体系结构,必须掌握以下核心术语:
- 实体与对等实体:任何能发送和接收信息的硬件或软件进程称为实体。位于不同系统的同一层次中的实体互称为对等实体(如主机A的传输层和主机B的传输层就是对等实体)。
- 协议:
- 语法:数据与控制信息的结构或格式(如数据分组的字段长度、顺序)。
- 语义:需要发出何种控制信息、完成何种动作以及做出何种响应(如分组首部某个字段值为1代表什么意思)。
- 时序(同步):事件实现顺序的详细说明(如通信的握手过程)。
- 服务、服务访问点与服务原语:
- 服务:在分层模型中,下层为紧邻的上层提供的功能调用。服务是通过层间接口实现的,上层是服务用户,下层是服务提供者。
- 服务访问点:相邻两层实体之间交互的逻辑接口,上层通过SAP使用下层提供的服务。例如,传输层的SAP是端口号。
- 服务原语:上层使用下层服务时,需要与下层交换的一些必要指令。常见的原语类型有:请求、指示、响应、证实。
- 服务数据单元与协议数据单元:
- 关系:在发送方,当前层的SDU加上本层的协议控制信息(PCI,即“头部”)就构成了本层的PDU,而这个PDU又会作为下一层的SDU,继续传递给下层。这个过程称为封装。在接收方则进行反向的解封装。
五、计算机系统服务:网络体系结构的终极目标
计算机网络体系结构的最终目的,是为上层的计算机系统(具体来说是应用进程) 提供高效、可靠、透明的通信服务。这些服务包括但不限于:
- 连接管理服务(如TCP的建立与释放连接)。
- 可靠数据传输服务(如TCP的确认、重传机制)。
- 流量控制与拥塞控制服务。
- 寻址与路由服务(如IP地址和路由选择)。
- 比特流传输服务(如物理层的信号编码)。
通过分层协作,复杂的网络通信任务被逐级分解和完成,最终使得位于不同地理位置的应用程序(如浏览器和Web服务器)能够像在本地一样方便地交换数据,这正是计算机网络体系结构设计的精妙之处与价值所在。