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