欢迎大家订阅【计算机网络】学习专栏,开启你的计算机网络学习之旅!
文章目录
- 前言
- 1 分层设计
- 2 网络体系结构
- 2.1 基本概述
- 2.2 常见的三种网络体系结构
- 3 各层之间的关系
- 3.1 水平关系
- 3.2 垂直关系
- 4 数据传输过程
- 4.1 水平视角
- 4.2 垂直视角
前言
在当今数字化时代,计算机网络作为信息交流的重要基础,其复杂性与日俱增。为了有效管理这种复杂性,分层结构的设计思想应运而生。通过将庞大而复杂的问题分解为若干较小的局部问题,分层结构使得网络的设计、实现和管理变得更加高效与灵活。
本文参考: 【王道计算机考研 计算机网络】
1 分层设计
①定义
分层设计是一种将复杂系统划分为多个层次的设计方法。
在计算机网络、软件开发和系统架构中,每一层都承担特定的功能,层与层之间通过定义好的接口进行交互。这种设计使得系统的各个部分可以独立开发、测试和维护。
②核心思想
将庞大而复杂的问题,转化为若干较小的局部问题。
③优点
- 模块化:每一层可以独立开发和维护,减少了系统的复杂性。
- 可重用性:某一层的功能可以在不同的系统中复用,降低了开发成本。
- 易于理解:层次化的结构使得系统更易于理解和学习,便于新成员的加入。
- 灵活性:可以在不影响其他层的情况下对某一层进行修改或替换,增强了系统的灵活性和适应性。
- 简化故障排查:可以更容易地定位问题,因为可以逐层检查,识别故障所在。
- 并行开发:不同团队可以同时开发不同层的功能,提高开发效率。
【情景引入】
快递网络是一个复杂的系统,需要完成诸多功能。
例如:
- 货物打包
- 取件、派件
- 冷链存储
- 包裹“路由”
- 运输包裹
运用分层设计的思想将复杂的快递网络在逻辑上划分为多个层次,并将各种“功能”安排在合适的层次中。
【同理】
计算机网络是一个复杂的系统,要完成诸多功能。
例如:
- 差错控制:确保数据在传输过程中不出错。
- 流量控制:发送端的发送速率必须使接收端来得及接收,不可过快。
- 分段和重装:发送端将要发送的数据块划分为更小的单位,并在接收端将其还原。
- 复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
- 连接建立和释放:交换数据前先建立一条逻辑连接,数据传送结束后释放连接。
这种分层设计不仅提升了网络的可维护性,还使得不同类型的节点可以实现不同的功能层次,满足各种
【注意】
- 不同类型的节点,实现的功能层次可能不一样。
- 分层结构的设计并不唯一,可以根据实际需求增加或减少层次
- 同一个功能可以在多个层次中重复出现
2 网络体系结构
2.1 基本概述
网络的体系结构定义了计算机网络及其构件应完成的功能(不涉及实现),是一种抽象的设计规范。而实现则是在这一体系结构框架下,使用何种硬件或软件来完成这些功能。通过清晰的层次划分,网络的复杂性得以管理,功能的实现也变得更加明晰。
【注意】
体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。
2.2 常见的三种网络体系结构
常见的三种网络体系结构包括 OSI 模型、TCP/IP 模型和五层模型。
①OSI模型(开放系统互联模型)
OSI 模型是国际标准化组织(ISO)提出的理论模型,通常分为七个层次:
- 物理层:负责物理介质的传输,包括电缆、信号传输等。
- 数据链路层:负责节点之间的数据帧传输,处理错误检测和纠正,提供链路控制。
- 网络层:负责数据包的路由选择和转发,管理IP地址,确保数据从源到目的地。
- 运输层:提供端到端的通信服务,确保数据完整性和顺序,常用的协议有TCP和UDP。
- 会话层:管理会话和连接,处理会话的建立、维护和终止。
- 表示层:负责数据格式转换、加密解密等,以便于不同系统间的互操作性。
- 应用层:提供网络服务给用户和应用程序,如HTTP、FTP、SMTP等。
优点:
- 提供清晰的分层结构,有助于理解和开发。
- 各层功能独立,便于维护和升级。
②TCP/IP模型
TCP/IP 模型是互联网的基础,通常分为四个层次:
- 网络接口层:对应于 OSI 的物理层和数据链路层,处理物理传输和链路控制。
- 网际层:负责IP地址和路由选择,主要协议是IP(Internet Protocol)。
- 传输层:提供端到端的传输服务,常用协议有TCP(面向连接)和UDP(无连接)。
- 应用层:为用户应用程序提供网络服务,支持多种协议,如HTTP、FTP、DNS等。
优点:
- 设计简洁,实际应用广泛。
- 强调实用性和灵活性,适应快速变化的网络环境。
③五层模型
五层模型是一种简化的网络结构,通常用于教学和简化理解,通常分为五个层次:
- 物理层:与 OSI 和 TCP/IP 模型相同,负责数据的物理传输。
- 数据链路层:负责节点间的数据传输和错误检测。
- 网络层:与互联网层相同,负责数据包的路由和转发。
- 传输层:处理端到端的通信,确保数据的完整性和顺序。
- 应用层:提供网络服务给最终用户和应用。
优点:
- 简化了模型,便于理解。
- 足够用于基本的网络通信分析和设计。
这三种网络体系结构在功能和层次上有所不同,但它们都旨在提高网络通信的效率和可管理性。OSI模型提供了最详细的框架,而TCP/IP模型则更为实用,五层模型则是一个更简单的表示。
3 各层之间的关系
在计算机网络的分层结构中,各层通过协议和接口进行通信。
3.1 水平关系
①实体:每一层的活动元素(包括软件和硬件)。
②第n层实体:第n层的活动元素(包括软件和硬件)。
③对等层:在同一层次上的不同设备之间进行通信的层称为对等层。
④对等实体:位于对等层中的各个实体,负责处理相同层级的协议。
⑤协议:网络协议(Network Protocol)是一组控制对等实体之间通信的规则。这种关系是水平的。
在网络分层中,实体是指每一层的活动元素,包括软件和硬件为了实现有效的通信,同一层次上的不同设备之间通过对等层进行交互。此时,这些设备的相应部分称为对等实体,它们负责处理相同层级的协议。协议是这一层次交流的核心,它定义了对等实体之间的通信规则。这些网络协议确保了数据在不同设备间的可靠传输,同时降低了网络管理的复杂性。
3.2 垂直关系
①接口:同一节点内相邻两层的实体之间交换信息的逻辑接口,称为服务访问点(Service Access Point,SAP)。
②服务:服务是指下层为紧邻的上层提供的功能调用。这种关系是垂直的。
在分层结构中,接口起着至关重要的作用。它定义了不同层级之间的信息交换方式,使得上层能够调用下层提供的功能。这种垂直关系不仅简化了网络设计,还增强了各层之间的独立性,允许每一层在不影响其他层的情况下进行优化和更新。
【注意】
4 数据传输过程
4.1 水平视角
在水平视角中,数据在同一层级的两个主机之间传输,其中一台主机数据传输过程如下:
- 应用层:用户发起请求(如发送电子邮件),数据被打包成应用层报文。
- 运输层:应用层报文被封装为段(TCP)或数据报(UDP),并添加头部信息(如端口号)。
- 网络层:运输层段被封装为数据包,添加IP头部信息(源和目标IP地址)。
- 数据链路层:数据包被封装为帧,包含物理地址(MAC地址)。
- 物理层:帧转化为比特,通过物理媒介(如电缆或无线信号)传输。
另一台主机接收到通过物理媒介传输的比特后,数据传输过程如下:
- 物理层:接收的比特被转换回帧,物理层将比特信号解码为数据帧。
- 数据链路层:帧中的头部信息被去掉,提取出数据包,并进行错误检查(如校验和)。
- 网络层:数据包中的IP头部被去掉,提取出运输层段。
- 运输层:运输层段的头部信息被去掉,最终还原为应用层报文。
- 应用层:最后,应用层处理还原后的数据,用户就能看到或接收到发送的内容。
4.2 垂直视角
在垂直视角中,数据在不同层级之间传输时,每一层都会对数据进行封装和解封装,具体过程如下:
①发送端
- 数据从应用层开始向下传递,逐层封装。
- 每层添加相应的头部信息,最终在物理层以比特形式发送。
②接收端
- 接收端的物理层接收到比特,逐层向上传递。
- 每层去掉相应的头部信息,将数据交给上层,最终还原为应用层报文。
【同理】
通过这种方式,数据在网络中被有效地传输和处理,确保了通信的完整性与可靠性。