1、电路交换(Circuit Switching)
要让所有的电话机都两两相连接是不现实的
可以将需要通信的任意两部电话的电话线路按需接通,从而大大减少了连接的电话线数量。
当电话线数量增多时候,就要使用很多彼此连接起来的电话交换机来完成全网的交换任务。
- 电路交换
- 电话交换机接通电话线的方式
- 从通信资源的分配角度来看,交换(Switching)就是按照某种方式动态地分配传输线路的资源;
- 电话交换的三个步骤
- 建立连接(分配通信资源)
- 例如:
- 在使用电路交换打电话之前,必须先拨号请求建立连接。当被叫用户听到电话交换机送过来的拨号音并摘机后,从主叫端到被叫端就建立了一条连接
- 也就是一条专用的物理通路,这条连接保证了双方通话时所需的通信资源,而这些资源在双方通信时不会被其他用户占用
- 通话(一直占用通信资源)
- 也就是主叫和被叫双方互相通电话
- 在整个通话期闻。第一步建立莲接航配的通信资源始终被占用。
- 释放连接(归还通信资源)
- 也就是通话完毕挂机后。电话交换机释放刚才使用的这条专用的物理通路
- 换句话说,是把刚才占用的所有通信资源归还给电信网
- 当使用电路交换来传送计算机数据时,其线路的传输效率往往很低。
- 这是因为计算机数据是突发式地出现在传输线路上的。
- 例如:
- 当用户正在输入和编辑一份待传输的文件时,用户所与用的通信资源暂时未被利用,该通信资源也不能被其他用户利用,宝贵的通信线路资源白白被浪费了。
- 因此,计算机网络通常采用分组交换,而不是电路交换
2、分组交换(Packet Switching)
在因特网中,最重要的分组交换机就是路由器
- 它负责将各种网络互联起来,并且对收到的分组进行转发,也就是进行分组交换。
例子:
- 假设主机H6的用户要给主机H2的用户发送条消息,通常我们把表示消息的整块数据称为一个报文。
- 在发送报文之前,先把较长的报文划分成为一个个更小的等长数据段。在每一个数据段前面,加上一些由必要的控制信息组成的首部后,就构成了一个分组,也可简称为
”包“
。相应的,首部也可以称为”包头“
。
- 首部中肯定包含了分组的目的地址。
- 否则分组传输路径中的各分组交换机(也就是各路由器)就不知道如何转发分组了
- 分组交换机收到一个分组后,先将分组暂时存储下来,在检查其首部,按照首部中的目的地址进行查表转发(路由器的存储器中维护者一个路径表,记录各个网络的逻辑地址),找到合适的转发接口
- 通过该接口将分组转发给下一个分组交换机
- 首先丢弃信息包的外层,解读信息包中的数据,获得目的网络的逻辑地址(从首部中获得,即包头)
- 使用复杂的程序来决定信息经由哪条路径发送最合适,然后重新打包并转发出去
- 主机H6将就构造出的各分组依次发送出去,各分组经过途中各分组交换机的存储转发。最终到达主机H2
- 主机H2收到这些分组后,去掉他们的首部,将个数据段组合还原出原始报文
在本例中。我们只演示出了分组传输过程中的两种情况:
- 一种是各分组从源站到达目的站可以走不同的路径(也就是不同的路由)(虚电路服务)
- 另一种是分组乱序(数据报服务)
- 也就是分组到达目的站的顺序不一定与分组在源站的发送顺序相同
- 对于可能出现的分组丢失、误码、重复等问题并没有演示
发送方
- 构造分组
- 发送分组
路由器(存储转发)
- 缓存分组
- 转发分组
接受方
- 接受分组
- 还原分组
2.1、虚电路服务
虚电路服务
- 这只是原节点和目标节点建立的一条逻辑连接。可以不写地址,如从H1到H2的逻辑连接是固定了。如果虚电路的网断开了则H1和H2将无法通信,但是两个通信设备可以建立多个虚电路连接
① 虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而不是真正建立一条物理连接
② 需要注意的是电路交换的电话通信是先建立了一条真正的连接,因此分组交换的虚连接和电路交换的连接只是类似,但并不完全一样。
③ 对于虚电路服务,如果目标主机处理不过来可以通知发送主机发停止发送,处理完成后通知其继续发送
2.2、数据报服务
数据报写上ip地址,由路由器选择下一次怎么走。更灵活。
路由器不管数据发送过程是否出错,反正处理不过来就丢,比如路由器的口只能接受20个数据包,来了100个排队站不下则丢失了。
传送过程走哪条路径也是路由器根据路由表临时决定的。如果某条网线断了可以自动选择另一条路径。
对于数据报服务
① 网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。
② 网络在发送分组的时候不需要先建立连接,每个分组(IP数据报)独立发送,与其前后的分组无关(不进行编号)
③ 网络层不提供服务质量的承诺,即传送的分组可能出现出错、丢失、重复和失序(不按顺序到达终点)
尽最大努力交付
① 由于传输网路不提供端到端的可靠传输服务,这就使网络中路由器可以做的比较简单,而且价格低廉(与电信网的交换机相比)
② 如果主机(端系统)中的进程之间的通信需要可靠传输那么就由网络主机中的运输层负责可靠交付(包括差错控制,流量控制等)
2.3、二者对比
对比方面 | 虚电路服务 | 数据报服务 |
思路 | 可靠通信应当由网络来保证 | 可靠通讯应当由用户主机来保证 |
连接的建立 | 必须有 | 不需要 |
终地址 | 仅在连接建立阶段使用,每个分组使用短的虚电路号 | 每个分组都有终点的完整地址 |
分组的转发 | 属于同一条虚电路的分组均按照同一路由进行转发 | 每个分组独立选择路由进行转发 |
当结点出故障时 | 所有通过出故障的结点的虚电路均不能工作 | 出故障的结点可能会丢失分组,一些路由可能会发生变化 |
分组的顺序 | 总是按发送顺序到达终点 | 到达终点时不一定按发送顺序 |
差错处理和流量控制 | 由网络负责,也可以由用户主机负责 | 由用户主机负责 |
现在的计算机使用的就是数据报服务而不是虚电路服务
3、报文交换(Message Switching)
- 与分组交换类似,报文交换中的交换结点也采用存储转发方式
- 但是报文交换对报文的大小没有限制,这就要求交换节点需要有较大的缓存空间
注意
- 报文交换主要用于早期的电报通信网。
- 现在较少使用。通常被较先进的分组交换方式所取代。
- 因此,我们不在详细介绍报文交换了
4、三者对比
假设A,B,C,D是分组传输路径上所要经过的4个结点交换机
纵坐标为时间
4.1、电路交换
- 通信之前首先建立连接
- 连接建立好之后。就可以使用已建立好的连接进行数据传送;
- 数据传送结束后,就需要释放连接,归还之前建立连接所占用的通信线路资源
- 一旦建立连接,中间的各结点交换机就是直通形式的,比特流可以直达终点;
优点
- 通信时延小
- 这是因为通信线路为通信双方用户专用,数据直达,因此通信时延非常小
- 当连续传输大量数据时,这一优点非常明显
- 有序传输
- 这是因为通信双方之间只有一条专用的通信线路
- 数据只在这一条路线上传输,因此不存在失序问题
- 没有冲突
- 不同的通信双方拥有不同的信道。不会出现争用物理信道的问题。
- 适用范围广
- 电路交换既适用于传输模拟信号。也适用于传输数字信号。
- 控制简单
- 电路交换的结点交换机及其控制都比较简单。
模拟信号与数字信号
- 模拟信号
- 是指信息参数在给定范围内表现为连续的信号。
- 或在一段连续的时间间隔内,其代表信息的特征量可以在任意瞬间呈现为任意数值的信号。
- 其分布于自然界的各个角落,如每天的温度变化,连续的山峰。
- 数字信号
- 是指人们抽象出来的时间上不连续的信号
- 其幅度的取值是离散的,且幅值被限制在有限个数值之内。
- 例如二进制码就是一种数字信号。
- 模拟信号和数字信号的最主要的区别是:数字信号是离散的,而模拟信号是连续的。
- 数字信号只有“0”和“1”两种状态,摸拟信号则可以是任意数值状态
缺点
- 建立连接时间长
- 电路交换的平均连接建立时间对计算机通信来说太长
- 线路独占,使用效率低
- 电路交换一旦建立连接,物理通路就被通信双方独占。
- 即使通信线路空闲,也不能共其他用户使用,因而信道利用率很低
- 灵活性差
- 只要连接建立的物理通路中的任何一点出现了故障
- 就必须重新拨号建立新的连接
- 这对十分紧急和重要的通信是很不利的。
- 难以规格化
- 电路交换时,数据直达
- 不同类型、不同规格、不同速率的终端很难相互进行通信。
- 也准以在通信过程中进行差错掺制。
4.2、报文交换
- 可以随时发送报文,而不需要事先建立连接
- 整个报文先传送到相邻节点交换机
- 全部存储下来后进行查表转发,转发到下一个节点交换机
- 整个报文需要在各节点交换机进行存储转发,由于不限制报文的大小,因此各节点交换机需要较大的缓存空间
优点
- 无需建立连接
- 报文交换不需要为通信双方预先建立一条专用的通信线路。
- 不存在建立连接的时延。用户可以随时发送报文。
- 动态分配线路
- 当发送方把报文传送给结点交换机时。
- 结点交换机先存储整个报文
- 然后选择一条合适的空闲线路。将报文发送出去。
- 提高线路可靠性。
- 如果某条传输路径发生故障
- 会重新选择另一条路径传输数据,
- 因此提高了传输的可靠性。
- 提高线路利用率
- 通信双方不是固定占用一条通信线路,
- 而是在不同的时间段部分占用物理线路
- 因而大大提高了通信线路的利用率
- 提供多目标服务
- —个报文可以同时发送给多个目的地址。
- 这在电路交换中是很难实现的
缺点
- 引起了转发时延
- 这是因为报文在结点交换机上要经历存储转发的过程。
- 需要较大存储缓存空间
- 因为不限制报文的大小
- 需要存储额外的信息量
- 这是因为报文需要携带目标地址。源地址等信息。
4.3、分组交换
- 可以随时发送分组。而不需要事先建立连接
- 构成原始报文的一个个分组。依次在各结点交换机上存储转发。
- 各节点交换机在发送分组的同时,还缓存接受到的分组
- 相比报文交换,减少了转发时延,还可以避兔过长的报文长时间占用链路。
- 同时也有利于进行差错控制
优点
- 无需建立连接
- 报文交换不需要为通信双方预先建立一条专用的通信线路。
- 不存在建立连接的时延。用户可以随时发送报文。
- 线路利用率高
- 通信双方不是固定占用一条通信线路,
- 而是在不同的时间段部分占用物理线路
- 因而大大提高了通信线路的利用率
- 简化了存储管理
- 相对于报文交换而言
- 因为分组的长度固定,相应的缓冲区的大小也固定,管理起来也相对容易
- 加速传输
- 由于分组是逐个传输的
- 这就使得后一个分组的存储操作与前一个分组的转发操作可以同时进行。
- 减少了出错概率和重发数据量
- 因为分组比报文小,因此出错概率必然减小
- 即便分组出错,也只需重传分组的部分
- 这比重传整个报文的数据量很多。
- 这样不仅提高了回靠性。也减少了传输时延
缺点
- 引起了转发时延
- 这是因为分组在结点交换机上要经历存储转发的过程。
- 需要传输额外的信息
- 将原始报文分割成等长的数据块
- 每个数据块都要加上源地址、目的地址等控制信息,
- 因此使得传送的信息量增大了
- 对于数据报服务,存在失序、丢失或重复分组的问题;
- 对于虚电路服务,存在呼叫建立、数据传输和虚电路释放三个过程