一、三大类数据交换发展
数据传输的发展历史:
有三种方式人们借鉴于作用在网络数据传输上:【电路交换】【报文交换】【分组交换】
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处理,进行转发。