跳转至

概述

约 3071 个字 7 张图片 预计阅读时间 15 分钟

Internet与internet

  • Internet: 专有名词,指当前全球最大的互联网,即因特网,采用TCP/IP协议

  • internet: 互联的网络, 例如: 局域网, 城域网, 广域网等

电路交换、分组交换和报文交换

电路交换

电路交换的一般过程是: 建立连接 -> 数据传输 -> 断开连接

电路交换

在进行数据传输前, 两个用户之间必须先建立一条专用的物理通信路径. 该路径在通信过程中一直保持连接状态, 直到通信结束后才断开.

在电路交换中,电路建立后,除源节点和目的节点外,电路上的任何节点都采取“直通方式” 发送数据和接收数据,即不存在存储转发所耗费的时间。在电路交换的整个通信阶段,比特流连续地从源节点直达目的节点,就好像在一个管道中传送。

在这样的设计下,电路交换的优点是:

  • 信时延小。因为通信线路为通信双方专用,数据直达,所以传输速率高。

  • 有序传输。双方通信时按发送顺序传送数据,不存在失序问题。

  • 没有冲突。不同的通信双方拥有不同的信道,不会出现争用物理信道的问题。

  • 实时性强。通信双方之间的物理通路一旦建立,双方就可随时通信。

其缺点也很明显:

  • 资源利用率低。通信线路在通信双方之间是专用的,即使在通信过程中没有数据传输,该线路也不能被其他用户使用,造成资源的浪费。

  • 建立连接时间长。通信双方在进行数据传输前,必须先建立连接,这需要一定的时间。

  • 灵活性差。物理通路中的任何一点出现故障, 就必须重新拨号建立新的连接。

计算机之间的数据传送是突发式的,当使用电路交换来传送计算机数据时,其线路的传输效率一般都会很低,线路上真正用来传送数据的时间往往不到\(10\%\)甚至\(1\%\)

报文交换

报文是数据交换的基本单位

用户数据加上源地址、目的地址等信息后,封装成报文(Message)。报文交换采用存储转发技术:整个报文先传送到相邻节点,全部存储后查找转发表,再转发到下一个节点,如此重复,直到到达目的节点。每个报文都可单独选择到达目的端的路径。

报文交换的优点: 1. 无建立连接时延:通信前无需建立连接,用户可随时发送报文。 2. 灵活分配线路:交换节点存储整个报文后,选择合适的空闲线路转发。若某条路径故障,可重新选择路径。 3. 线路利用率高:报文在一段链路上传送时才占用该链路资源。 4. 支持差错控制:交换节点可对缓存的报文进行差错检验。

报文交换的缺点: 1. 转发时延高:节点需将报文整体接收完后,才能查找转发表并转发到下一个节点。 2. 缓存开销大:报文大小无限制,要求节点有较大缓存空间。 3. 错误处理低效:报文较长时,发生错误概率大,重传整个报文代价高。

分组交换

分组交换也就是在报文交换的基础上,将报文划分为若干个较小的分组(或称为数据包)进行传送.

源主机在发送之前,先把较长的报文划分成若干较小的等长数据段,在每个数据段前面添加一些由必要控制信息(如源地址、目的地址和编号信息等)组成的首部,构成分组(Packet)

分组结构

下图展示了分组交换的工作过程.

分组交换

分组交换的优点:

  1. 存储空间小:分组较小,对交换节点的缓存要求较低.

  2. 传输效率高: 多个分组之间可以并行传输

缺点:

  1. 存在存储转发时延。尽管分组交换比报文交换的传输时延小,但相对于电路交换仍存在存储转发时延,且其节点交换机必须具有更强的处理能力。

  2. 信息量大。分组交换中每个分组都要携带源地址、目的地址等控制信息,这些控制信息占用了一定的信道资源,降低了信道的有效利用率。

三种交换对比

计算机网络的分类

按分布范围分类的计算机网络

计算机网络按照覆盖范围的不同,主要分为以下几类:

  1. 广域网(WAN, Wide Area Network)
    广域网覆盖范围广泛,通常可达几十公里到几千公里,主要用于实现远距离的数据通信。广域网是互联网的核心部分,各节点之间通常通过高速链路互联,具备较大的通信容量。

  2. 城域网(MAN, Metropolitan Area Network)
    城域网的覆盖范围一般为5~50公里,可以跨越几个街区甚至整个城市。城域网多采用以太网等技术,有时也被归入局域网的讨论范畴。

  3. 局域网(LAN, Local Area Network)
    局域网覆盖范围较小,通常在几十米到几千米之间。局域网一般通过高速线路将主机相连,传统上采用广播技术,而广域网则多采用交换技术。

  4. 个人区域网(PAN, Personal Area Network)
    个人区域网主要用于个人工作或生活空间内的设备互联,如平板电脑、智能手机等,通常采用无线技术连接,也称为无线个人区域网(WPAN)。

按传输技术分类的计算机网络

计算机网络根据其传输技术的不同,可以分为以下两类:

  1. 广播式网络
    广播式网络中,所有联网的计算机共享同一个公共通信信道。当某台计算机通过该信道发送报文分组时,网络中的所有其他计算机都能“收听”到这个分组。每台计算机会检查分组的目的地址,决定是否接收该分组。局域网(LAN)基本上都采用广播式通信技术,广域网中的无线和卫星通信网络也常用此方式。

  2. 点对点网络
    点对点网络中,每条物理线路仅连接一对计算机。如果通信双方之间没有直接的物理连接,则数据分组需要经过中间节点的存储和转发,最终到达目标主机。广域网(WAN)大多采用点对点的通信方式。

此外还有拓扑结构,如: 总线型, 星型, 环型, 树型, 网状型;使用者数, 如: 专用网, 公用网;传输介质, 如: 有线网, 无线网等分类方式.

计算机网络的性能指标

速率(Speed)

速率是指数据传输的快慢程度,通常用比特每秒(bps, bits per second)或者字节每秒(Bps, bytes per second)来表示。常见的速率单位有:

  • 1 Bps = 8 bps

  • 1 Kbps = \(10^3\) bps = 1,000 bps

  • 1 Mbps = \(10^6\) bps = 1,000,000 bps

  • 1 Gbps = \(10^9\) bps = 1,000,000,000 bps

  • 1 Tbps = \(10^{12}\) bps = 1,000,000,000,000 bps

和数据量的不同

数据量中的KB,MB换算关系为:

  • 1 KB = \(2^{10}\) B = 1,024 B

  • 1 MB = \(2^{20}\) B = 1,048,576 B

  • 1 GB = \(2^{30}\) B = 1,073,741,824 B

计算例子

有一个待发送的数据块,大小为100MB,网卡的发送速率为100Mbps,则网卡发送完该数据块需要多长时间?

解答

100MB = 100 × \(2^{20}\) B = 104,857,600 B = 838,860,800 b

100Mbps = 100 × \(10^6\) bps = 100,000,000 bps

发送时间 = 数据量 / 速率 = 838,860,800 b / 100,000,000 bps = 8.388608 s ≈ 8.39 s

带宽(Bandwidth)

带宽原本表示通信线路允许通过的信号频率范围,单位是赫兹(Hz)。但在计算机网络中,带宽表示网络的通信线路所能传送数据的能力,是数字信道所能传送的“最高数据传输速率”的同义语,单位是比特/秒(b/s)。

我们可以说:

\[ \text{数据传送速率} = \min \left\{ \text{主机接口速率},\ \text{线路带宽},\ \text{交换机或路由器的接口速率} \right\} \]

数据传送速率受限于路径中最慢的环节

吞吐量(Throughput)

带宽是高速公路上的车道数, 吞吐量是单位时间内通过的车辆数.

吞吐量是单位时间内通过某个网络(或信道、接口)的实际数据量。吞吐量常用于对实际网络的测量,以便获知到底有多少数据量能够通过网络。

吞吐量受网络带宽的限制。

时延(Delay)

时延(Delay)。指数据(一个报文或分组)从网络(或链路)的一端传送到另一端所需 的总时间,它由4部分构成:发送时延、传播时延、处理时延和排队时延。

  • 发送时延(Transmission Delay)
    发送时延是指将数据从主机的内存送到物理信道所需的时间。发送时延与数据量和信道带宽有关,其计算公式为:

    \[ \text{发送时延} = \frac{\text{分组长度(比特)}}{\text{发送速率(比特/秒)}} \]

    发送速率是\(min\{主机接口速率, 信道带宽, 交换机或路由器的接口速率\}\)

  • 传播时延(Propagation Delay)
    传播时延是指数据在信道上从发送端传播到接收端所需的时间。传播时延与信道的物理长度和信号在信道中的传播速度有关,其计算公式为:

    \[ \text{传播时延} = \frac{\text{信道长度(米)}}{\text{信号传播速度(米/秒)}} \]
  • 处理时延(Processing Delay)
    分组在交换节点为存储转发而进行的一些必要处理所花的时间。例如, 分析分组的首部、差错检验或查找合适的路由等。

  • 排队时延(Queuing Delay)
    分组在路由器的输入队列或输出队列中排队等待所花的时间。

数据的总延时就是以上之和.

一般计算中,不考虑处理时延和排队时延


数据传输时间示意图

例题

在下图所示的采用“存储-转发”方式的分组交换网中, 所有链路的数据传输速率为100Mbps,分组大小为1000B, 其中分组头大小为20B。若主机H1向主机H2发送一个大小为980 000B的文件,则在不考虑分组拆装时间和传播延迟的情况下,从H1发送开始到H2接收完为止,需要的时间至少是

Tip

共有\(\frac{980000}{(1000-20)}=1000\)个分组

由于并行性,最后一个分组传到第一个路由器时,倒数第二个分组正在传到第二个路由器,倒数第三个分组正在传到H2

因此总用时是:

\[ \text{总用时} = 2 \times \text{发送时延} + 1000 \times \text{发送时延} = 1002 \times \frac{1000 \times 8}{100 \times 10^6} s = 80.16 ms \]

数据块长度为100MB,信道带宽为1Mb/s,传送距离为1000KM,传输介质为光纤,计算发送时延和传播时延。

Tip

100MB = 100 × \(2^{20}\) B = 104,857,600 B = 838,860,800 b

1Mb/s = \(10^6\) bps = 1,000,000 bps

发送时延 = 数据量 / 速率 = 838,860,800 b / 1,000,000 bps = 838.8608 s ≈ 838.86 s

光纤中光速约为\(2 \times 10^8\) m/s

传播时延 = 距离 / 速度 = \(1000 \times 10^3\) m / \(2 \times 10^8\) m/s = 0.005 s = 5 ms

数据块长度为1B,信道带宽为1Mb/s,传送距离为1000KM,传输介质为光纤,计算发送时延和传播时延。

Tip

1B = \(2^0\) B = 1 B = 8 b

1Mbps = \(10^6\) bps = 1,000,000 bps

发送时延 = 数据量 / 速率 = 8 b / 1,000,000 bps = 0.000008 s = 8 μs

传播时延 = 距离 / 速度 = \(1000 \times 10^3\) m / \(2 \times 10^8\) m/s = 0.005 s = 5 ms

评论