考研408《计算机网络》复习笔记,第二章《网络数据交换形式3大类》

一、三大类数据交换发展

数据传输的发展历史:

有三种方式人们借鉴于作用在网络数据传输上:【电路交换】【报文交换】【分组交换】

1、电路交换

电路交换实现了人们电话通信,使用的是实际物理上的线路连接,各个地方有专门的大型线路连接机器,A想打给B就要先拨号到接线中心,接线员问他打给谁,然后再分配路线连接上B。

主要就三大特点:

  • 1、通信双方必须建立物理意义上的连接
  • 2、短途线路便宜、长途线路贵
  • 3、每条线路独立,因此A跟B通信时会占用线路通信资源(占线),C没办法同时跟B通信,直到A跟B聊完释放通信资源。

电路交换的优点:

  • 以为通信双方是直接建立线路连接。数据直送,传输速率高(电路交换更适用于: 低频次、大量地传输数据)

电路交换的缺点:

  • 必须建立/释放连接,需要额外的时间开销线路被通信双方独占,利用率低(计算机之间数据往往是"突发式"传输,即往往会高频次、少量地传输数据。)
  • 线路分配的灵活性差。
  • 交换节点不支持"差错控制"(无法发现传输过程中的发生的数据错误)

2、报文交换

电报机诞生,数据也诞生一种新的形式------------【报文】

报文有两个部分组成:【控制信息 】和【用户数据

控制信息】表明这个数据是 "谁发给谁?"

用户数据】就是发送方实际想发给别人的内容

报文转发用到的思想就是------------【存储转发】

【存储转发】把传送的数据单元先存储进中间节点,再根据目的地址转发至下一节点。每个节点拥有内存来存储各个信息

特点:

  • 1、无需建立实际连接!!是一种**"存储转发"方式**(间接传信息),所以不用连接
  • 2、通信资源不占用,各个线路可以同时传输多个 "报文数据"
  • 3、可以 "控制差错",每个信息到了一个结点之后,就用 "校验技术" 检查信息的差错
  • 4、报文交换节点还可以控制更灵活的线路分配,那条线路不拥堵、负载少,就走那条

报文交换的优点

  • 通信前无需建立连接
  • 数据以"报文"为单位被交换节点间"存储转发",通信线路可以灵活分配
  • 在通信时间内,两个用户无需独占一整条物理线路。相比于电路交换,线路利用率高
  • 交换节点支持"差错控制"(通过校验技术)

报文交换的缺点

  • 报文不定长,不方便存储转发管理(比如有的数据2KB,有的20GB,那交换节点内存到底要多大够用?)
  • 长报文的存储转发时间开销大、缓存开销大
  • 长报文容易出错,重传代价高(比如20GB的报文对应更多bit的大小报文,要么检查个半天、要么打回重新传,很麻烦)

3、分组交换

【分组交换】是在【报文交换】的基础上改进,是目前计算机网络一直用的技术

他将一个完整的**"不定长"的【报文】的【用户数据】** 部分,拆分成各个**"定长"的【分组】**

每个【分组】信息又包含了【首部(也叫"头信息")】和【数据】,【首部】是各个分组自己的"控制信息",【数据】就是原报文的用户数据的拆分

特点就是:以**"分组"为单位** ,在各个交换节点之间用"存储方式"进行数据交换、传输,也就是在【报文交换】的基础上优化了"报文不定长"、不方便"存储转发"的问题

分组交换的传输流程大致如下图:

首先将一个完成信息可能拆分成【分组0】【分组1】【分组2】

然后各个【分组交换机】会灵活分配传输路线,比如如果【分组0】【分组1】都走了上面的路线,那么上面路线拥堵了,【分组2】就可以走下面畅通无阻的路线

因为下面畅通无阻,所以【分组2】可能优先到达接收方主机,然后是【分组0】【分组1】

最后,接收方主机会将乱序到达的【分组2】【分组0】【分组1】根据【分组号】排序好,然后去掉【首部】,最后拼接回一个完整的信息


分组交换的优点:

  • 通信前无需建立连接
  • 数据以"分组"为单位被交换节点间"存储转发",通信线路可以灵活分配
  • 在通信时间内,两个用户无需独占一整条物理线路。相比于电路交换,线路利用率高
  • 交换节点支持"差错控制"(通过校验技术)

分组交换的缺点:

  • 相比于报文交换,控制信息占比增加(因为每一个分组信息还有"首部(头信息)")
  • 相比于电路交换,依然存在存储转发时延
  • 报文被拆分为多个分组,传输过程中可能出现失序、丢失等问题,增加处理的复杂度(比如上面例子,分组2提前到达主机,然后才是分组0、分组1,而且这些分组还有可能在中途就丢失、变错了)

相比于报文交换,分组交换改进了如下问题:

  • 分组定长,方便存储转发管理
  • 分组的存储转发时间开销小、缓存开销小
  • 分组不易出错,重传代价低

4、拓展:"虚电路交换"

虚电路交换技术是基于"分组"的基础上,创建 "虚拟电路" ,从而让分组信息能够【有序】的在虚拟电路上传输

而且在此期间,这条线路资源还是可以被共享的,被不会被占用

但是这并不是当前网络常用的技术,因为:

分组交换 是将 "分组信息" 排序合并的步骤交给各个终端主机来完成,各个主机具备有这种强大的功能

而**"虚电路"** 是将这些任务交给了网络的【核心部分】,那么这就会影响核心部分的网络传输速率

二、3者具体性能分析

三个时序图来分析三种网络传输的性能

电路交换性能分析

报文交换性能分析

分组交换性能分析

【总结】

例题

解析题目信息。

10Mb/s表述链路带宽。35us表示存储转发时延,10000bit表示数据量

计算

1)作为单个分组。

发送时延:10000bit/10Mb/s = 1000us.

2)作为两个分组

发送时延:5000bit/10Mb/s = 500us.

画图

1)

2)

**注意:**当A发送完第1个分组后继续发送第二个分组。

S接受到第1个分组的全部数据后,经过35us处理,进行转发。

相关推荐
美式小田1 小时前
ADS学习笔记 7. 超外差接收机设计
笔记·学习·射频工程
_不会dp不改名_1 小时前
HCIA笔记6--路由基础
网络·笔记
waterme1onY1 小时前
由于导包而引发的错误
java·开发语言·笔记·后端
A懿轩A3 小时前
C/C++ 数据结构与算法【线性表】 顺序表+链表详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·考研·算法·链表·线性表
落霞的思绪3 小时前
mybatis笔记01——初始配置
java·笔记·mybatis
kkbca5 小时前
计算机网络:IP协议详细讲解
网络·tcp/ip·计算机网络
LuckyLay5 小时前
Rust学习笔记_06——控制流(2)
笔记·学习·rust
LuckyLay11 小时前
Rust学习笔记_03——元组
笔记·学习·rust
DKPT13 小时前
数据结构逻辑结构有哪些
开发语言·数据结构·笔记·学习·算法