# 基本概念

# 信道

  • 信道 (Channel): 是指进行信息传输的媒介或路径。这可能是一个物理的媒介,例如电缆,或者是无线的,如无线电波。
  • 信号 (Signal): 是载有信息的物理现象。例如,电信号、光信号或无线电波。
  • 信源 (Source): 产生或发送信息的设备或实体。
  • 信宿 (Sink or Destination): 是指接收信息的设备或实体。

# 码元

码元(Symbol)是一个脉冲信号,一个脉冲信号有可能携带 1bit 数据,也有可能携带 2bit 数据、4bit 数据。

怎么实现一个脉冲信号就能携带多个 bit 数据

我们可以通过 调制技术 来实现,比如设置模拟信号中信号的频率、相位、振幅等。

举个例子:把 振幅 分成四种,低(00)、中(01)、高(10)、很高(11);
这样我发一个脉冲信号,它的振幅是低,那就说明发送的是 00(也就是 2bit),它的振幅是中(01),发送的就是 01(也就是 2bit)… 以此类推

# 波特

波特(Baud)是数据通信中的一个术语,用来表示符号(或码元)传输速率。具体来说,波特率(Baud rate)指的是每秒钟传输的码元(symbol)的数量。

码元和波特率: 一个码元可以携带一个或多个比特的信息。波特率是指每秒钟传输多少个这样的码元。例如,如果 波特率 为 1000 波特,这意味着每秒可以传输 1000 个码元。

波特率与比特率: 波特率和比特率的关系取决于每个码元携带的比特数。

  • 一个码元能携带 1bit 数据,那么 比特率 = 1 倍的波特率。
  • 一个码元能携带 2bit 数据,那么 比特率 = 2 倍的波特率。
  • 一个码元能携带 4bit 数据,那么 比特率 = 4 倍的波特率。

波特率与比特率

# 速率

速率(Rate)是指连接到计算机网络上的节点在数字信道上传送数据的速率,也称数据传输速率、数据率或比特率,单位为比特每秒(bit/s 或 b/s, bps)。

当数据率较高时,可用 kb/s(k = 10310^{3} )、Mb/s(M = 10610^{6} )或 Gb/s(G = 10910^{9} )表示。

速率可以用两种指标来衡量:

  • 比特率:每秒传输的比特数量
  • 波特率:每秒传输的波特数量

一个码元可以包含多个比特,如果一个码元携带 nn 比特的信息量,则 波特率 MM 对应的 比特率 为 M×nM \times n bit/s

# 带宽

带宽(Bandwidth)有多种定义,

在通信领域中,指通信线路能够通过的信号频率范围,单位为赫兹(Hz)。

在计算机网络中,带宽通常被引申为通信线路的数据传输能力,即数字信道所能达到的 最大数据传输速率,其单位为比特每秒(b/s)。

如果家里的宽带带宽是 100Mb/s,表示网络在理想情况下,每秒最多可以传输 100MBit 的数据,相当于 12.5MB/s 的下载速度。

带宽 和 吞吐量

在考题中偶尔涉及到带宽和吞吐量的区别:

  • 带宽:理论上的最大传输速率,就像是一条高速公路的最大车道数。
  • 吞吐量:实际传输速率,受到网络拥塞、协议开销、设备性能等因素影响,往往低于带宽。

举例:虽然网络带宽是 100Mb/s,但在高峰时段可能只能达到 70Mb/s,这 70Mb/s 就是实际的吞吐量。

# 时延

时延(Delay)指数据(一个报文或分组)从网络(或链路)的一端传送到另一端所需要的总时间,它由 4 个部分构成:

  1. 发送时延(传输时延)
    • 节点将分组的所有比特推向(传输)链路所需的时间;
    • 即从发送分组的第一个比特算起,到该分组的最后一个比特发送完毕所需的时间;
    • 发送时延 = 分组长度 (bit) / 发送速率 (bit/s)
  2. 传播时延
    • 电磁波在信道(传输介质)中传播一定的距离需要花费的时间;
    • 即一个比特从链路的一端传播到另一端所需的时间;
    • 传播时延 = 信道长度 (m) / 电磁波在信道上的传播速率 (m/s)
  3. 处理时延
    • 数据在交换结点为存储转发而进行的一些必要的处理所花费的时间。
    • 例如,分析分组的首部、从分组中提取数据部分、进行差错检验或查找适当的路由等。
  4. 排队时延
    • 分组在进入路由器后要先在输入队列中排队等待处理。
    • 路由器确定转发端口后,还要在输出队列中排队等待转发,这就产生了排队时延。

需要区分 传输时延传播时延

传输时延是路由器将分组推出所需的时间,是分组长度和链路传输速率的函数。

传播时延是一个比特从一台路由器传播至另一台路由器所需的时间,是两台路由器之间距离的函数,而与分组长度或链路传输速率无关。

# 时延带宽积

时延带宽积(Bandwidth-Delay Product, BDP)指发送端发送的第一个比特即将到达终点时,发送端已经发出了多少个比特,因此又称以比特为单位的链路长度。

时延带宽积=传播时延×信道带宽\mathrm{时延带宽积}=\mathrm{传播时延}\times\mathrm{信道带宽}

如下图所示,考虑一个代表链路的圆柱形管道,其长度表示链路的传播时延,横截面积表示链路带宽,则 时延带宽积 表示该管道可以容纳的比特数量。

# 奈奎斯特定理

奈奎斯特定理 说明了在 无噪声干扰、带宽有限 的理想低通信道中的数据极限传输速率。当实际传输速率小于等于该速率时,可以实现无码间串扰的数据传输

核心思想:

即使在没有噪声的理想信道中,信道的带宽仍然限制了其数据传输能力。为了避免相邻码元之间的干扰(即码间串扰),每秒钟最多只能传输有限数量的码元,这个数量与带宽直接相关。

奈奎斯特用一个公式精确地描述了信道的极限传输速率:

C=2W×log2VC = 2W \times \log{2}{V}

其中:

  • CC 是信道容量,单位是比特每秒 (bps),表示无噪声条件下的最大传输速率;
  • WW 是信道带宽,单位是赫兹 (Hz),表示信道允许通过的最高频率范围;
    • 2W2W 表示每秒最多传输的码元数 (波特率,Baud/s);
  • VV 是每个码元可采用的不同离散电平数量;
    • log2V\log{2}{V} 表示每个码元可以携带的比特数(因为 VV 种电平可以表示 log2V\log{2}{V} 比特信息);

因此:在理想无噪声信道中,极限传输速率取决于带宽和码元的离散电平数。

  • 带宽 WW 越大,单位时间内可传输的码元数越多;
  • 每个码元的电平数 VV 越多,所携带的信息量越大。

# 香农定理

香农定理 说明了在 有噪音干扰、带宽有限 的信道中的数据极限传输速率,当实际传输速率小于等于该速率时,可以做到不产生误差

核心思想:

即使信道中存在噪声,只要信息传输速率低于某个极限值(即信道容量),就一定可以通过某种编码方式实现几乎无差错的传输。这个极限值取决于信道的带宽和信噪比。

香农用一个公式精确地描述了信道极限传输速率:

C=B×log2(1+SN)C = B \times \log{2}{(1+\frac{S}{N})}

其中:

  • CC 是信道容量,单位是比特每秒 (bps),表示信道理论上的最大传输速率。
  • BB 是信道带宽,单位是赫兹 (Hz),表示信道可用的频率范围。
  • SS 是信号功率,表示信号的强度。
  • NN 是噪声功率,表示信道中噪声的强度。
    • S/NS/N 是信噪比(Signal-to-Noise Ratio, SNR),通常以线性形式表示(不是分贝 dB)。

因此:

  • 带宽 BB 越大,信道容量 CC 越大:这意味着更宽的信道可以传输更多的数据。
  • 信噪比 S/NS/N 越大,信道容量 CC 越大:这意味着信号相对于噪声越强,传输速率就越高。

出现在香农公式中的 S/NS/N线性比值,不是分贝
S/NS/N 信噪比有 线性比值分贝(dB) 两种形式:

  1. 线性比值:

SN=信号功率噪声功率\frac{S}{N} = \frac{\mathrm{信号功率}}{\mathrm{噪声功率}}

  1. 分贝形式(dB):

S/NdB=10log10SNS/N_{dB} = 10\cdot\log{10}{\frac{S}{N}}

# 编码和调制

在计算机网络中,编码调制 是数据传输的两个关键过程,它们的目标都是为了让 数字信息(如二进制的 01 )能够有效、准确地在 物理介质(如双绞线、光纤、无线电波等)上传输。

# 数字信号编码

编码(encoding)指的是把 数字信号01 )转换成适合在 传输介质 上传输的电信号或光信号。常见的编码方式有以下几种:

编码

# 非归零编码

非归零编码 (Non-Return Zero, NRZ) 编码的原理是高电平表示 1 ,低电平表示 0

  • 优点:实现简单
  • 缺点:无法判断一位的开始与结束,例如:无法从持续的高电平中解析出 1 的个数,需要外加时钟信号

# 曼彻斯特编码

曼彻斯特编码 (Manchester Encoding) 又称裂相码、双向码,是一种用电平跳变来表示 10 的编码方法。

每个码元均用两个不同相位的电平信号表示,0 和 1 的相位正好相反。

由于曼彻斯特在每个时钟位都必须有一次变化,因此,其编码的效率仅可达到 50% 左右。

记忆方法:

  • 在时钟周期内由高电平跳到低电平表示 1 ,由低电平跳到高电平表示 0
  • 每比特的周期 T 分为前 T/2 与后 T/2 两部分,前 T/2 传送该比特的原码,通过后 T/2 传送该比特的反码

# 差分曼彻斯特编码

差分曼彻斯特编码 (Differential Manchester Encoding) 保留了曼彻斯特编码作为 “自含时钟编码” 的优点,仍将每比特中间的跳变作为同步之用,但是每比特的取值则根据其 相邻时钟周期间电平跳变的差异 来决定。

记忆方法:

  • 电平变化与上一个时钟周期相反表示 1 ,与上一个时钟周期相同表示 0
  • 一个时钟周期开始处不发生跳变表示 1 ,开始处发生跳变表示 0

差分曼彻斯特编码的第一个电平如何确定?

标准定义中,差分曼彻斯特的第一个半周期电平没有固定要求,可以为高或低,实际编码只依赖相邻比特间的 “是否跳变” 关系。

但在考试与教材中,为便于绘图与判定,一般会按照曼彻斯特编码的方向规则来确定第一个比特的波形: 例如,若题目给出的第一个比特是
1,则绘制为 “高 → 低”;若是 0,则绘制为 “低 → 高”。 在确定了初始半周期后,后续比特再严格遵循差分曼彻斯特的规则进行编码即可。

# 调制编码

调制 指的是把 编码后数字信号 转换为 模拟信号(如正弦波),以适应 物理信道(如无线电波)的传输。

调制需要一种称之为载波信号的连续的、频率恒定的信号,载波可用 Acos(ωt+ϕ)A\cos(\omega t + \phi) 表示,通过调制载波的特性来对数字数据进行模拟转换。

  1. 幅移键控法(Amplitude Shift Keying, ASK)
    • 按照数字信号的值来调制载波的振幅AA
    • 即用载波频率的两个不同的振幅来表示两个二进制数字
    • 常见于光纤通信
  2. 频移键控法(Frequency Shift Keying, FSK)
    • 按照数字信号的值来调制载波的频率ω\omega
    • 即用载波频率附近的两个不同频率来表示两个二进制值
    • 常见于低速无线通信、电话系统
  3. 相移键控法(Phase Shift Keying, PSK)
    • 按数字信号的值来调制载波的相位ϕ\phi
    • 即利用载波的两个不同相位来表示两个二进制值。
    • 常见于高速无线通信,例如 Wi-Fi

调制

# 交换方式

交换方式 是指在通信网络中,数据从发送方传输到接收方时,网络节点(如交换机、路由器)处理和转发数据的方式。它决定了数据传输的路径、资源分配和效率。交换方式是通信网络设计的核心,直接影响网络的性能、时延和资源利用率。

电路交换报文交换分组交换 是三种主要方式,其中分组交换又可以进一步分为 数据报和虚电路 两种方式

# 电路交换

电路交换(Circuit Switching)是一种传统的通信方法,在进行数据传输前,两个结点之间必须先建立一条专用 (双方独占) 的物理通信路径 (由通信双方之间的交换设备和链路逐段连接而成),该路径可能经过许多中间结点。

这一路径在整个数据传输期间一直被独占,直到通信结束后才被释放。因此,电路交换技术分为三个阶段:

  1. 连接建立: 发送方发起请求,通过交换设备(如电话交换机)在网络中为通信双方寻找并分配一条固定路径,建立端到端的专用电路。这需要信令系统协调。
  2. 数据传输: 电路建立后,数据(语音、视频等)通过这条固定路径连续传输。整个通信期间,路径保持独占,即使没有数据传输,资源也不会释放。
  3. 连接释放: 通信结束后,发送方或接收方发出终止信号,交换设备拆除电路,释放占用的资源(如带宽、端口)供其他用户使用。

电路交换的典型应用是 传统电话网络(PSTN)。

优点:

  1. 低延迟: 由于通信线路为通信双方用户专用,数据直达,因此传输数据的时延非常小。当传输的数据量较大时,这一优点非常明显。
  2. 稳定性: 一旦建立连接,通信是连续且稳定的。
  3. 有序传输:双方通信时按发送顺序传送数据,不存在失序问题。
  4. 没有冲突:不同的通信双方拥有不同的信道,不会出现争用物理信道的问题。
  5. 适用范围广:电路交换既适用于传输模拟信号,又适用于传输数字信号。
  6. 实时性强:通信双方之间的物理通路一旦建立,双方就可以随时通信。
  7. 控制简单:电路交换的交换设备 (交换机等) 及控制均较简单。

缺点:

  1. 建立时延: 建立连接需要时间,初始延迟较高;平均连接建立时间对计算机通信来说太长。
  2. 资源浪费: 电路交换连接建立后,物理通路被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因而信道利用率低。
  3. 灵活性差。只要在通信双方建立的通路中的任何一点出了故障,就必须重新拨号建立新的连接,这对十分紧急和重要的通信是很不利的。
  4. 难以规格化。电路交换时,数据直达,不同类型、不同规格、不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制。

电路建立后,除源结点和目的结点外,电路上的任何结点都采取 “直通方式” 接收数据和发送数据,即不会存在存储转发所耗费的时间。

# 报文交换

报文交换(Message Switching)不需要建立专用路径,整个报文作为一个单元传输,节点存储并转发整个报文。

报文携带有目标地址、源地址等信息。

报文交换的过程:

  1. 报文发送: 发送方将完整的数据消息(大小可变,可能包含文本、文件等)发送到网络中的第一个节点(通常是交换机或路由器)。
  2. 存储转发: 每个节点接收整个报文,存储在缓冲区,检查目标地址后,选择下一跳节点转发。报文在网络中逐跳传输,直到到达接收方。
  3. 接收与处理: 接收方收到完整报文后,进行处理或存储。

报文交换技术的优点如下:

  1. 无须建立连接: 报文交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接时延,用户可以随时发送报文。连接时延,用户可以随时发送报文。
  2. 动态分配线路:当发送方把报文交给交换设备时,交换设备先存储整个报文,然后选择一条合适的空闲线路,将报文发送出去。
  3. 提高线路可靠性:如果某条传输路径发生故障,那么可重新选择另一条路径传输数据,因此提高了传输的可靠性。
  4. 提高线路利用率:通信双方不是固定占有一条通信线路,而是在不同的时间一段一段地部分占有这条物理通道,因而大大提高了通信线路的利用率。
  5. 提供多目标服务:一个报文可以同时发送给多个目的地址,这在电路交换中是很难实现的。

报文交换技术的缺点如下:

  1. 由于数据进入交换结点后要经历存储、转发这一过程,因此会引起转发时延 (包括接收报文、检验正确性、排队、发送时间等)。
  2. 报文交换对报文的大小没有限制,这就要求网络结点需要有较大的缓存空间

报文交换主要使用在早期的电报通信网中,现在较少使用,通常被较先进的分组交换方式所取代。

# 分组交换

分组交换(Packet Switching)将数据分成小的分组(或数据包),每个分组独立传输,并可能通过不同路径到达目的地。其过程如下:

  1. 数据分割: 发送方将消息拆分为多个分组,每个分组附带头部信息(如源地址、目标地址、序列号)。
  2. 分组传输: 每个分组独立在网络中传输,节点(路由器)根据头部信息选择最佳路径,分组可能走不同路径到达目的地(动态路由)。
  3. 存储转发: 每个节点接收分组,存储后快速转发到下一跳,分组大小小,处理速度快。
  4. 重组与接收: 接收方收到所有分组后,根据序列号重新组装成原始消息。如果有分组丢失,可请求重传。

报文(Message)和分组(Packet)的区别?

报文是一个完整的、不可再分的数据单元,通常包含一个完整的信息或者文件。

分组是将数据分割成较小的、固定大小的单位,每个单位可以独立传输。

如今互联网已经很少见到报文交换了,报文和分组是一种概念。IP 分组(Packet)就是分组的一种实现,如果没有网络层的话,UDP 的 Datagram 直接进入数据链路层,UDP 的 Datagram 就是一个报文(Message)。