文章目录
01. 计算机网络体系结构
1.1 计算机网络概述
1.1.1 概念
- 计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统
- 计算机网络互连的、自治的计算机系统的集合
- 互连:通过通信链路互联互通
- 自治:无主从关系
- 三类定义
- 广义观点:物理结构上具有计网的雏形,但资源共享能力弱(低级阶段)
- 资源共享观点
- 目的:资源共享
- 组成单元:分布在不同地理位置的多台独立的“自治计算机”
- 网络中的计算机必须遵循的同一规则:网络协议
- 用户透明性观点:描述了一个分布式系统,是网络未来发展追求的目标
1.1.2 组成
-
两大类通信方式
- 客户-服务器方式(C/S方式)
-
客户程序:需知道服务器程序的地址;无需特殊硬件及复杂OS
-
服务器程序:可同时处理多个请求;无需知道客户程序地址;一般需要强大硬件和高级OS支持
-
通信可以双向
-
对等方式(P2P方式)
- 只要两台主机都运行了对等连接软件(P2P软件)
- 本质仍是客户-服务器方式,每台主机既是客户又是服务器
-
- 客户-服务器方式(C/S方式)
1.1.3 功能
- 数据通信:最基本、最重要
- 资源共享:硬件共享、软件共享、数据共享
- 分布式处理
- 提高可靠性:计算机网络中的各台计算机可以通过网络互为替代机
- 负载均衡
1.1.4 分类
-
按分布范围
- 广域网(WAN、
核心
)、城域网(MAN)、局域网(LAN)、个人区域网(PAN)
广域网基本都属于点对点网络,使用交换技术,其中的无线、卫星通信网络也采用广播技术
局域网使用广播技术
目前局域网接入广域网主要是通过路由器的互连设备来实现的
广域网和局域网的差异不仅在于他们所覆盖的范围不同,还在于他们所采用的协议和网络技术不同
- 广域网(WAN、
-
按传输技术
- 广播式网络、点对点网络
广播式网络不需要网络层,也不存在路由选择的问题
是否使用分组存储转发与路由选择机制是广播式网络、点对点网络的重要区别
-
按拓扑结构:网络拓扑结构指网中结点与通信线路之间的集合关系表示的几何结构,主要指通信子网的拓扑结构
- 总线型(通常用于
局域网
)、星型、环形(单环/双环,环中信号单向传输)、网状型(通常用于广域网
)
- 总线型(通常用于
-
按使用者
- 公用网、专用网
-
按交换技术
-
电路交换网络
-
包括建立连接、传输数据、断开连接三个阶段
-
主要特点:整个报文的比特流连续地从源点直达终点
-
优点:数据直接传送、时延小
缺点:线路利用率低,不能充分利用路线容量、不便于差错控制
-
-
报文交换网络 / 存储-转发网络
- 存储转发技术
- 主要特点:整个报文先传送到相邻结点,全部存储后查找转发表,转发到下一个结点
- 优点:较为充分的利用线路容量,实现不同链路之间不同数据传输速率的转换,可以实现格式转换,可以一对多、多对一的访问,可以实现差错控制
- 缺点:增大了资源开销,增加了缓冲时延,需要额外的控制机保证多个的报文的顺序不乱序,缓冲区难以管理
-
分组交换网络 / 包交换网络
- 存储转发技术
- 主要特点:单个分组 / 包(报文分段加上首部)先传送到相邻结点,全部存储后查找转发表,转发到下一个结点
- 优点:报文交换网络的优点 + 易于缓冲管理,包的平均时延更小,网络占用的平均缓冲区更少,更易于标准化,更适合应用
分组的重组由网络层完成,分组的排序由传输层完成
-
1.1.5 性能指标
-
带宽:表示网络中某信道传送数据的能力
- 单位时间内网络中某信道所能通过的**“最高数据率”**;bit/s
-
时延:数据从网络的一端传送到另一端所需时间
-
发送时延:主机或路由器发送数据帧所需时间
发送时延 = 数据帧长度 ( b i t ) 发送速率 ( b i t / s ) 发送时延=\frac{数据帧长度(bit)}{发送速率(bit/s)} 发送时延=发送速率(bit/s)数据帧长度(bit) -
传播时延:电磁波在信道中传播一定距离所需时间
传播时延 = 信道长度 ( m ) 电磁波在信道上的传播速率 ( m / s ) 传播时延=\frac{信道长度(m)}{电磁波在信道上的传播速率(m/s)} 传播时延=电磁波在信道上的传播速率(m/s)信道长度(m) -
处理时延:主机/路由器收到分组时花费一定时间进行处理
-
排队时延:分组进入路由器后要先在输入队列中排队等待
【注】高速链路提高的仅是数据发送速率(减少发送时延)
-
-
时延带宽积/以比特为单位的链路长度:发送端发送的第一个比特到达终点时,发送端已经发出多少个比特
时延带宽积 = 传播时延 × 信道带宽 时延带宽积=传播时延×信道带宽 时延带宽积=传播时延×信道带宽 -
往返时间RTT/往返时延:通常包括发送时延、处理时延、排队时延、发送时延
有效数据率 = 数据长度 发送时间 + R T T 有效数据率=\frac{数据长度}{发送时间+RTT} 有效数据率=发送时间+RTT数据长度 -
吞吐量:单位时间某个网络(/信道/接口)的实际数据量
- 受网络带宽或网络额定速率的限制
- 有时也可用每秒传送的字节数/帧数来表示
-
速率 / 数据率 / 比特率:bit/s(bps)
数据量单位 换算关系 速率的单位 换算关系 比特 b 基本单位 比特/秒 b/s 基本单位 字节mB 1B = 8bit 千字节 KB KB = 210 B 千比特/秒 kb/s kb/s = 103 b/s 兆字节 MB MB = K·KB = 220 B 兆比特/秒 Mb/s Mb/s = k·kb/s = 106 b/s 吉字节 GB GB = K·MB = 230 B 吉比特/秒 Gb/s Gb/s = k·Mb/s = 109 b/s 太字节 TB TB = K·GB = 240 B 太比特/秒 Tb/s Tb/s = k·Gb/s = 1012b/s -
信道利用率:指某条链路有百分之几的时间是被利用的(即有数据通过)
信道利用率 = 有数据通过的时间 ( 有 + 无 ) 数据通过的时间 信道利用率=\frac{有数据通过的时间}{(有+无)数据通过的时间} 信道利用率=(有+无)数据通过的时间有数据通过的时间 -
网络利用率:网络中所有链路的链路利用率的加权平均
1.2 计算机网络体系结构与参考模型
1.2.1 分层结构
-
计算机网络的体系结构:计算机网络的各层及其协议的集合
换言之,即这个计算机网络及其所应完成的功能的精确定义(独立于具体的实现方法),是计算机网络中的层次、各层的协议及层间接口的集合。
体系结构是抽象的,实现是具体的。
-
分层的原则
- 各层相互独立,每层实现一种相对独立的功能
- 各层之间界面自然清晰,易于理解,相互交流尽可能少
- 各层的功精确功能定义独立于具体的实现方法,可采用最合适的技术来实现
- 保持下层对上层的独立性,上层单向使用下层提供的服务
- 整个分层结构能促进标准化工作
-
实体:第 n 层中的活动元素称为 n 层实体。同一层的实体称对等实体
-
SDU 服务数据单元:为完成用户所要求的功能而应传送的数据
PCI 协议控制单元:控制协议操作的信息
PDU 协议数据单元:对应层次之间传送的数据单位
n-SDN + n-PCI = n-PDU = (n-1)-SDU
1.2.2 网络协议、接口、服务的概念
-
(网络)协议:为进行网络中对等实体的数据交换而建立的规则、标准或约定
- 水平
- 由语法、语义、同步三部分组成
- 语法:规定传输数据的格式
- 语义:规定所要完成的功能(发出什么控制信息、完成什么动作、做出什么应答)
- 同步:规定各种操作的条件、时序关系
- 一个完整的协议通常具有线路管理(建立、释放)连接、差错控制、数据转换等功能
-
接口 / 服务访问点SAP:同一结点内相邻两层交换信息的连接点,是一个系统内部的规定
- 是上层使用相邻下层服务的入口,每层只能为紧邻的层次之间定义接口,不能跨层定义接口
各层的服务访问点:数据链路层 → “类型”;网络层 → “协议”; 传输层 → “端口号”;应用层 → “用户界面”
-
服务:下层为相邻上层提供的功能调用
-
垂直
-
在一层内完成的全部功能并非都称为服务,只有上一层实体“看得见”的功能才称为服务
-
上层使用下层提供的服务时使用的服务原语:请求、指示、响应、证实
- 有应答服务包括全部 4 种原语,无应答服务只有请求和指示两种
-
分类
-
协议 VS 服务
- 只有本层协议的实现才能保证向上一层提供服务。下层的协议对上层的服务用户是透明的
- 协议是“水平的”(对等实体之间);服务是“垂直的”,通过接口提供
1.2.3 ISO/OSI参考模型和TCP/IP模型
1. OSI 参考模型
- 国际标准化组织(ISO)提出的网络体系结构模型,称为开放系统互连参考模型(OSI / RM),简称 OSI 参考模型
-
物理层
-
传输单位:bit
-
功能:在物理媒体上为数据端设备透明传输原始比特流
-
功能:定义接口特性;定义传输模式;定义传输速率;比特同步;比特编码
-
协议:如 Rj45、802.3
-
传输信息所利用的一些物理媒体(如双绞线、光缆、无线信道)在物理层之下(有人称第 0 层)
-
-
数据链路层
- 传输单位:帧
- 主要任务:把网络层传下来的 IP 数据报组装成帧
- 功能:成帧;差错控制;流量控制(相邻结点之间);传输管理(访问/接入控制)
- 协议:如 SDLC、HDLC、PPP、STP、帧中继
- 访问介质子层:数据链路层的特殊子层,为处理如何控制对共享信道的访问的问题,控制对物理传输介质的访问
-
网络层
-
传输单位:数据报 / 分组
-
主要任务:把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务
-
功能:路由选择(关键问题);流量控制;
拥塞控制
;差错控制;网际互连 -
协议:如 IP、IPX、ICMP、IGMP、ARP、RARP、OSPF
Internet 的主要网络层协议是无连接的网际协议(IP)和许多路由选择协议,因此 Internet 的网络层也称网际层/IP层
-
-
传输层
-
传输单位:报文段(TCP)或用户数据报(UDP)
-
主要任务:负责主机中两个进程间的通信,即端到端的通信
-
功能:可靠传输、不可靠传输;流量控制;差错控制;服务质量;数据传输管理;复用分用
复用:多个应用层进程可同时使用下面运输层的服务
分用:运输层把收到的信息分别交付给上面应用层中相应的进程
-
协议:如 TCP、UDP
-
-
会话层
-
主要任务:向表示层实体/用户进程提供建立连接并在连接上有序地传输数据,即会话,也称建立同步(SYN)
-
功能:建立、管理、终止会话;使用使通信绘画在通信失效时从校验点恢复通信,实现数据同步
-
-
表示层
- 主要任务:处理两个通信系统中交换信息的表示方式(语法和语义)
- 功能:数据格式变换;数据加密解密;数据压缩和恢复
- 协议:如 JPEG、ASCII
-
应用层
- 用户与网络的界面
- 最复杂一层,使用的协议最多:如文件传输 FTP、电子邮件 SMTP、万维网 HTTP
层次 | 流量控制 |
---|---|
数据链路层 | 相邻结点之间 |
网络层 | 整个网络 |
传输层 | 端到端 |
2. TCP/IP模型
- 网络层接口:类似 OSI 模型的物理层和数据链路层
- 作用:从主机或结点接受 IP 分组,并把他们发送到指定的物理网络上
- 网际层(主机 - 主机):关键部分
- 将分组发往任何网络,并为之独立地选择合适的路由
- 不保证各分组有序到达,各分组的有序交付由高层负责
- 传输层:提供端到端的通信,负责差错检测和流量控制,可以提供面向连接的服务或不可靠的无连接服务
- 应用层
3. OSI参考模型 VS TCP/IP模型
-
相同
- 分层
- 基于独立的协议栈
- 都可以解决异构网络的互连
-
差异
-
OSI 参考模型定义了服务、协议、接口三个主要概念;TCP/IP 模型无
-
OSI 参考模型先于协议发明,不偏向特定协议;TCP/IP 实际是对已有协议的描述,不适用于任何其他非 TCP/IP 的协议栈
-
OSI 参考模型在网络层划出一个子层来完成类似于 TCP/IP 模型中 IP 的功能;TCP/IP 模型设计之初就考虑到异构网互联问题,将 IP 作为重要层次
-
OSI 参考模型 TCP/IP 模型 网络层 无连接 + 面向连接 无连接 传输层 面向连接 无连接 + 面向连接
-
4. 五层协议
Notes
-
计算机网络 vs 分布式计算机系统:区别主要是软件的不同
- 分布式系统:整个系统中的各个计算机对用户都是透明的
- 计算机网络:用户必须先登录欲运行程序的计算机,按照计算机的地址,将程序通过计算机网络传送到该计算机中运行,最后根据用户命令将结果传送到指定计算机