计算机网络复习
1.1 计算机网络概述
1.1.1 计算机网络的组成
a) 从组成部分看:由 硬件、软件、协议(网络传输数据时需要遵循的规范)三大部分组成。
b) 从工作方式看:分为 边缘部分 和 核心部分 。
c) 从功能组成看:由 通信子网 和 资源子网 组成。
1.1.2 计算机网络的功能:
a) 数据通信:网络 最基本 和 最重要 的功能,实现 信息传输。
b) 资源共享:计算机网络 分工协作,互通有无。
c) 分布式处理:将复杂任务 分配 给其他计算机系统。
d) 提高可靠性:计算机网络中的各台计算机通过网络 互为替代机。
e) 负载均衡:将工作 均衡地分配 给计算机网络中地各台计算机。
1.1.3 计算机网络的分类
a) 按 分布范围 分:
广域网(WAN):几十千米 - 几千千米
城域网(MAN):几个街区或整个城市
局域网(LAN):几十米到几千米
个人区域网(PAN):直径约10米
b) 按 传输技术 分:
广播式网络:所有计算机共享一个公共通信信道(直播、电视)
点对点网络:点对点网络,每条物理线路连接一对计算机(电话)
c) 按 拓扑结构 分:
总线形、星形(n 个节点 n-1 条链路)、环形、网状形
d) 按 交换技术 分:
电路交换网络:在发送、接收双方建立 一条 专用的 通路 用于数据传输。
报文交换网络:将数据 加上地址等信息,进行转发,每个报文自行选择路线。
分组交换网络:将数据 分成小数据块,类似报文传播。
e) 按 传输介质 分:有线网络、无线网络
1.1.4 计算机网络的性能指标
a) 时延:
发送时延:从分组的 第一个bit 算起,到该组 最后一个bit 发送完毕所需时间。
传播时延:一个 bit 从链路 一端 到 另一端 所需的时间。
处理时延:分析 地址部分、进行差错 检验 等花费的时间。
排队时延:在进入路由器后 等待处理 的时间。
往返时延:从 发送端发送数据 开始,到 发送端收到 来自接收端的 确认,总共经历的时间。
b) 吞吐量:单位时间 通过某个网络(或接口)的数据量。
c) 速率:连接到计算机网络上的主机在数字信道上 传送数据的速率,也称为数据率或比特率。通常把 最高数据率 称为 带宽。
d) 时延带宽积:指发送端第一个 bit 即将到达终点时,发送端已经发出了多少个 bit。 时 延 带 宽 积 = 传 播 时 延 ∗ 信 道 带 宽 时延带宽积 = 传播时延 * 信道带宽 时延带宽积=传播时延∗信道带宽
1.2 结构
1.2.1 分层结构
基本原则:
(i) 每层都实现一种相对 独立 的功能,降低大系统的复杂度,各层之间界面自然清晰,易于理解,相互交流 尽可能少。
(ii) 各层功能的精确定义独立于具体的实现方法可以采用最适合的技术来实现。
(iii) 保持下层对上层的 独立性,上层 单向 使用下层提供的服务,整个分层结构 应能促进标准化工作。
(iv) 两个主机通信时,同一层在 逻辑 上有一条直接信道,表现为不经过下层就把信息传送到对方。
1.2.2 协议、接口与服务
a) 协议:协议即 规则的集合,由 语法、语义、同步 三部分组成。 语法 规定了传输数据的格式;语义 规定了所要完成的功能;同步 规定了执行各种操作的时序关系等。
b) 接口:是 相邻两层 交换信息的连接点。
c) 服务:指 下层 为 紧邻的上层 提供功能调用。
(HINT:只有本层协议的实现才能保证向上层提供服务)
d) 计算机网络的服务:
(i) 面向连接服务 与 无连接服务:
面向连接服务:通信前双方必须 先建立连接,分配资源,再数据传输,传输结束 释放连接。
无连接服务,通信双方 不需要先建立连接,需要发送数据时可 直接发送,通常被称为“尽最大努力交付”。
(ii) 可靠服务 与 不可靠服务:
可靠服务:网络具有 纠错、检错机制,保证数据正确可靠。
不可靠服务:网络的正确性、可靠性由应用或用户来保障。
(iii) 有应答服务 与 无应答服务:
有应答服务:接收方在收到数据后向发送方 给出相应 的应答。(消息已读)
无应答服务:接收方在收到数据后 不自动 给出相应的应答。
1.2.3 ISO/OSI 模型
物理层(bit):透明地传输比特流
数据链路层(帧):将网络层传来地 IP 数据报 组装成帧。功能 包括 成帧、差错控制、流量控制、传输管理等。
网络层(数据报):把网络层地分组从源端传到目的端,为分组交换网上地不同主机 提供通信服务。
传输层(报文段TCP、用户数据报UDP):负责主机中两个 进程 之间的通信。
会话层:允许 不同主机上的各个进程 之间进行会话。利用传输层提供的端到端服务,为表示层实体或用户进程建立连接并 有序 传输数据,也称建立同步。
表示层:处理两个通信系统中交换信息的表示方式,具有 数据表示变换功能(数据压缩、加密、解密)。
应用层:用户与网络的界面。
1.2.4 TCP/IP 模型
网络接口层、网际层、传输层、应用层
OSI 和 TCP/IP 的区别:
a) OSI模型定义了三个主要概念:服务、协议、接口;TCP/IP则没有明确区分。
b) OSI模型在 网络层 支持 无连接 和 面向连接 的通信,但在传输层仅有 面向连接 的通信;TCP/IP在 网际层 仅有一种 无连接 的通信模式,但在传输层支持 无连接 和 面向连接 两种模式。
2.1 物理层
2.1.1 通信基础
a) 数据:传送信息的实体。
b) 信号:数据的电气或电磁表现。
c) 码元:指用一个固定时长的信号波形表示一位 k 进制数字,代表不同离散数值的基本波形。
d) 信源:产生和发送数据的源头。
e) 信道:信号传输媒介。
f) 信宿:接收数据的终点。
g) 单工通道:只有一个方向 的通信而没有反方向的交互,仅需一条信道(电视广播)。
h) 半双工通道:通信双方都可以发送和接受信息,但不能 同时 发送和接受信息,此时需要两条信道。
i) 全双工通道:通信双方可以 同时 发送和接受信息,也需要两条信道。信道的 极限容量 是指信道的 最高码元传输速率 或 信道的极限信息传输速率。
2.1.2 奈奎斯特定理
规定:在 理想低通(没有噪声、带宽有限)的信道中,为了避免码间串扰,极限码元传输速率 为 2W 波特,其中 W 是理想低通信道的带宽, V 表示 每个码元离散电平的数目。
理
想
低
通
信
道
下
的
极
限
数
据
传
输
速
率
=
2
W
l
o
g
2
V
(
b
∗
s
−
1
)
理想低通信道下的极限数据传输速率=2Wlog_2V~(b*s^{-1})
理想低通信道下的极限数据传输速率=2Wlog2V (b∗s−1)
结论:
(i) 在任何信道中,码元传输速率 是有上限的。若传输速率超过上限,会出现严重的 码间串扰 问题,使得接收端不可能完全正确识别码元。
(ii) 信道的频带越宽(通过的信号高频分量越多),就可用更高的速率进行码元的有效传输。
(iii) 奈氏准则给出了码元传输速率的限制,但并未对信息传输速率给出限制,即未对 一个码元可以对应多少个二进制位 给出限制。
(HINT:一个码元就是一个波形)
2.1.3 香农定理
规定:香农定理给出了 带宽受限 且有 高斯白噪声干扰 的信道的 极限数据传输速率,当用此速率进行传输时,可以做到不产生误差。
信
道
的
极
限
数
据
传
输
速
率
=
W
l
o
g
2
(
1
+
S
/
N
)
(
b
∗
s
−
1
)
信道的极限数据传输速率=Wlog_2(1+S/N)~(b*s^{-1})
信道的极限数据传输速率=Wlog2(1+S/N) (b∗s−1)
结论:
(i) 信道的带宽或信道中的 信噪比越大,信息的 极限传输速率越高。
(ii)对一定的传输带宽和 一定的信噪比,信息 传输速率的上限 是 确定 的,只要信息传输速率低于信道的极限传输速率,就能找到某种方法来实现 无差错 的传输。
(iii) 香农定理得出的是极限信息传输速率,实际 信道能达到的传输速率要比它 低不少。
2.1.4 编码与调制
a) 编码:数据变换为数字信号的过程。
(i) 归零编码:所有数据后半段归零
(ii) 非归零编码:1为1,0为0
(iii) 反向归零编码:1保持不变,0取反信号
(iv) 曼彻斯特编码:高电平变低电平表示1,低电平变高电平表示0
(v) 差分曼彻斯特编码:遇到1不变,遇到0取反
b) 调制:数据变换为模拟信号的过程 。
2ASK:幅度调整
2FSK:频率调整
2PSK:相位调整
模拟数据编码为 数字信号:采样、量化、编码。
(i) 采样定理:
采
样
频
率
≥
2
∗
原
始
信
号
最
大
频
率
采样频率\ge2*原始信号最大频率
采样频率≥2∗原始信号最大频率
(ii) 量化:把采样取得的 电平幅度值 按照一定的分级标度转发为对应数字值并取整数,连续的电平幅值转换为离散的 数字量。
(iii) 编码:把量化的结果转换为与之对应的 二进制 编码。
2.1.5 交换
a) 电路交换:两个结点之间必须先建立一条专用的物理通信路径,直到通信结束后才被释放。
三个阶段:连接建立、数据传输、连接释放。
优点:通信时延小、有序传输、没有冲突(不同结点之间不同信道)、适用范围广(数字信号、模拟信号)、实用性强、控制简单。
缺点:建立连接时间长、线路独占、使用效率低、灵活性差、难以规格化。
2.1.6 分组交换
b) 报文交换:数据交换的单位是 报文,保温写道目标地址、源地址等信息。报文交换在交换结点采用 存储转发 的传输方式。
优点:无需建立连接(用户随时发送报文)、动态分配线路(交换设备可暂存报文再发报文)、提高线路可靠性、提高线路利用率(通信双方不固定占有一条通信线路)。
缺点:转发时延、缓存空间限制。
c) 分组交换:也采用 存储转发 方式,儋县志每次传送的数据块大小的上限,把大的数据块划分为合理的小数据块。
优点:相对于报文交换简化了存储管理、减少了出错概率和重发数据量。
缺点:需要传输更多额外的信息量、目的结点需要对分组按编号排序(可能出现失序、丢失或重复分组的问题)
分组交换根据通信子网向端点系统提供的服务,可进一步分为面向连接的 虚电路 方式和无连接的 数据报 方式。
(i) 虚电路:试图将 数据报 方式与 电路交换 方式结合起来,充分发挥两种方法的优点。在分组发送之前,要求在发送方和接收方建立一条 逻辑上 相连的虚电路,连接一旦建立,就 固定了 虚电路对应的物理路径。
三个阶段:虚电路建立、数据传输、虚电路释放。
建立和拆除需要时间开销、提供了可靠的通信功能、虚电路容易遭到破坏、分组首部只包含虚电路标识符。
(ii) 数据报:在网络层加上地址等信息后形成的数据报分组,在中间结点存储的分组寻找最优路由,可以走 不同的路径,也可以按不同的顺序到达 目的结点。
不需要建立连接、不保证可靠性、需要排队等候处理、对故障的适应能力强、不独占某条链路。
2.2 传输介质
双绞线:屏蔽双绞线、无屏蔽双绞线
同轴电缆:基带同轴电缆、宽带同轴电缆
光纤:单模光纤、多模光纤
无线传输介质:无线电波、微波、红外线、激光
a) 接口特性:
(i) 机械特性:接口的形状、尺寸、引脚数目、排列等。
(ii) 电气特性:接口电缆的各条线上的电压范围。
(iii) 功能特性:指明某条线上的某一电平的电压表示何种意义。
(iv) 过程特性(规程特性):不同功能的各种可能事件的出现顺序。
b) 中继器:将信号 整形并放大 再转发,以消除信号经过一长段电缆而产生的失真和衰减,使信号的波形和强度达到所需的要求,进而 扩大网络传输的距离,原理是 信号再生。
c) 集线器:实质上是一个 多端口的中继器,如果同时有两个或多个端口输入,那么输出时会产生冲突,导致数据无效。
3.数据链路层
OSI体系结构:
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
TCP/IP体系结构:
应用层(应用层协议:DNS、HTTP、SMTP等)
传输层
网络层
网络接口层
五层协议的体系结构:
应用层
传输层
网络层
数据链路层
物理层
服务:自下而上提供
实体:对等
协议:DNS、HTTP、SMTP、PPP协议
点对点信道:一对一点对点的通信方式
广播信道:一对多的广播通信方式
点对点协议(PPP):用户到ISP的链路使用PPP协议。(包含数据链路层、物理层、网络层的内容)
需要:
首要要求:简单须规定特殊的字符作为帧定
封装成帧:必界符
透明性:必须保证数据传输的透明性
多种网络层协议:能够在同一条物理链路上同时支持多种网络层协议
多种类型链路:能够在多种类型的链路上运行
差错检测:能过对接收端收到的帧进行检测,并立即丢弃有差错的帧
检测连接状态:能够及时自动检测出链路是否处于正常工作状态
最大传送单元:必须对每一种类型的点对点链路设置最大传送单元MTU的标准默认值,促进各种实现之间的互操作性
数据压缩协商:必须提供一种方法来协商使用数据压缩算法
不需要:
纠错、流量控制、序号、多点线路、半双工或单工链路
三个组成部分:
将IP数据报分装到穿行链路的方法
链路控制协议LCP
网络控制协议NCP
帧格式:
首部4个字段,尾部2个字段
标志字段 F = 0x7E("01111110")
地址字段A只置为0xFF,地址字段实际上并不起作用
控制字段C通常置为0x03。
PPP是面向字节的,所有的PPP帧的长度都是整数字节。
PPP异步传输时,采用特殊的字符填充法
PPP同步传输时,采用硬件来完成零比特填充:只要发现5个连续1.填入一个0
将信息字段中出现的每一个 0x7E 字节转变成为 2 字节序列 (0x7D, 0x5E)。
若信息字段中出现一个 0x7D 的字节, 则将其转变成为 2 字节序列 (0x7D, 0x5D)。
若信息字段中出现 ASCII 码的控制字符(即数值小于 0x20 的字符),则在该字符前面要加入一个 0x7D 字节,同时将该字符的编码加以改变。
PPP协议不适用序号和确认机制原因:
在数据链路层出现差错的概率不大时,使用比较简单的PPP协议较为合理
在因特网环境下,PPP的信息字段放入的数据时IP数据报。数据链路层的可靠传输并不能够保证网络层的传输是可靠的。
帧检验序列FCS字段可保证无差错接受。
CSMA/CD协议(载波监听多点接入/碰撞检测):
多点接入:表示许多计算机以多点接入的方式连接在一根总线上
载波监听:每一个站在发送数据之前先检测一下总线上是否有其他计算机在发送数据,如果有暂时不发送数据,以免发生碰撞。(电子技术检测)
碰撞检测:计算机边发送数据边检测信道上的信号电压大小,当电压超过一定门限值就认为总线上至少有两个站在同时发送数据,表面产生了碰撞(冲突)。
每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,等待一段随机时间后再次发送。
争用期:
二进制指数类型退避算法:
争用期长度:
最短有效帧长:
重要性:
4.网络层
面向连接服务(通信之前建立虚电路)、无连接服务
IP协议:配套使用的还有 地址解析协议ARP、网际控制报文协议ICMP、网际组管理协议IGMP
中继系统:
物理层中继系统:转发器 (repeater)。
数据链路层中继系统:网桥。
网络层中继系统:路由器 (router)。
网桥和路由器的混合物:桥路器 (brouter)。
网络层以上的中继系统:网关 (gateway)。
网络互连都是指用路由器进行网络互连和路由选择。
IP协议:使这些性能各异的网络从用户看起来好像是一个统一的网络
IP地址:唯一的32位的标识符
IP地址的编制方法:
分类的IP地址:将IP地址划分为若干个固定类,每一类地址由 网络号 + 主机号 组成
子网的划分(改进):增加子网号字段
减少IP地址的浪费,网络组织更灵活,便于维护
构成超网(无分类编制方法):使用各种长度的“网络前缀”来代替分类地址中的网络号和子网号,网络号和子网号是一个随机的长度
地址解析协议ARP:从网络层使用的IP地址,解析出在数据链路层使用的MAC地址
TTL:地址映射有效时间
主机A向主机B发送IP数据报时,先在ARP高速缓存中查看有无主机B的IP地址。
有,查出对应MAC地址,将硬件地址写入MAC帧,通过局域网将MAC帧发送此MAC地址。
无,ARP进程在本局域网广播发送一个ARP请求分组。收到ARP响应分组后,将得到的IP地址到MAC地址的映射写入ARP高速缓存。
ARP请求分组:发送方MAC地址/发送方IP地址/目标方MAC地址(位置填0)/目标方IP地址
本地广播ARP请求
ARP响应分组:发送方MAC地址/发送方IP地址/目标方MAC地址/目标方IP地址
ARP分组组装咋子物理网络的帧中传输
ARP高速缓存:存放最近获得的IP地址到MAC地址的绑定,以减少ARP广播的数量
ARP用于解决同一个局域网上的主机或路由器的IP地址和MAC地址的映射问题
IP数据报:首部(20字节) + 数据
版本(4):ipv4、ipv6
首部长度(4):最大60字节
区分服务(8):
总长度(16):首部 + 数据总长度 最大为65535,不超过最大传送单元MTU
标识(16):计数器,产生IP数据报的标识
标志(3):前两位有意义,最低位MF(是否有分片),DF(不允许分片)
片偏移(13):较长的分组在分片后某片在原分组中的相对位置。以8个字节为偏移单位
生存时间(8):TTL,数据报在网络中可通过的路由器数的最大值
协议(8):此数据报携带的数据使用何种协议
首部检验和(16):只检验数据报的首部,不检验数据部分(16位二进制反码求和,0保留
源地址,目的地址(32,32)
根据目的网络地址确认下一跳路由器,中间多次间接交付,最终直接交付
ICMP:允许主机或路由器报告差错情况和提供有关异常情况的报告
ICMP报文分:ICMP差错报告报文(终点不可达、时间超过、参数问题、改变路由)、ICMP询问报文(回送请求和回答报文、时间戳请求和回答报文)
5.运输层
面向连接的TCP协议:相当于一条全双工的可靠信道
无连接的UDP协议:是一条不可靠信道
TCP(传输控制协议):
UDP(用户数据报协议):
两个对等运输实体在通信时传送的数据单位叫作运输协议数据单元
UDP:复用和分用的功能,差错检测的功能
UDP 是无连接的,发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延。
UDP 使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表。
UDP 是面向报文的。UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。UDP 一次交付一个完整的报文。
UDP 没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率降低。这对某些实时应用是很重要的。很适合多媒体通信的要求。
UDP 支持一对一、一对多、多对一和多对多的交互通信。
UDP 的首部开销小,只有 8 个字节,比 TCP 的 20 个字节的首部要短。