freeswitch网卡 网卡switch有啥用_电路交换


根据之前提及到的,N台设备组建全双工通道,至少需要N(N-1)/2的线路,但是上图的网络的连接线数量明显低于45条,这是因为引入了交换机/集线器。交换机可以将设备的连接线数量大大简化。这种物理设备是数据链路层乃至网络层的应用体现,下面我们先来介绍交换机/集线器的核心功能——信息交换。

Switching—交换

下面是本章重点:

通信中的交换方式:

freeswitch网卡 网卡switch有啥用_freeswitch网卡_02


三种交换方式:

  • Circuit SW:电路交换。当我们打电话时,有时候通话中可能会沉默,这种时候仍然保持连接的情况。电路交换可以理解为只有物理意义上的线直接连接时才会出现该应用。
  • Packet SW:分组交换。使用时建立连接,不使用时释放连接。
  • Message SW:报文交换。典例:电子邮件

现在我们以第二种为主要应用手段,特别是数据报方式。第一种也在使用,但是在数字通信越来越发达的当下,我们的各种应用都偏向于使用分组交换。报文交换目前已经被淘汰。

物理层交换

  • 只有电路交换
  • 允许信号在一个路径或另一个传播

在链路层切换

  • 分组交换
  • 在这种情况下,术语包意味着帧或单元。以太网,5G,WIFI,LTE都是这种交换方式。

在网络层切换

  • 分组交换
  • 虚电路方式(ATM)或可以使用数据报方法。
  • 目前互联网使用数据报的方法

SW在应用层

  • 只有信息交换
  • 使用电子邮件是一种message-switched沟通沟通

Circuit SW-电路交换

freeswitch网卡 网卡switch有啥用_freeswitch网卡_03


电路交换网络由一组由物理链路连接的交换机组成。两站之间的连接是一个专用的路径由一个或多个链接。然而,每个连接在每个链接只使用一个专用通道。每个链接通常分为n通道并采用FDM或TDM。

freeswitch网卡 网卡switch有啥用_freeswitch网卡_04


电路交换分为三个阶段:

  1. 准备阶段/Setup phase:
    建立连接 (connection establishment):当终端系统A需要与终端系统M通信时,系统A需要请求到M的连接,该连接必须被所有交换机以及M本身接受。在双方(或电话会议中的多方)进行通信之前,需要建立专用电路(链路中的信道组合并在交换机之间创建专用通道。在建立连接的下一步中,接收端要返回一个确认信息给发送端。只有发送端接收到接收端的确认信息后才能建立连接。
    每个链路上都保留了一个电路(信道),电路或信道的组合定义了专用路径。这一个信道快于通过波分复用或频分复用实现多个信号在同一信道中传输。
    资源:如渠道(FDM的带宽和TDM的[time slot]时隙),上下文切换缓冲区,上下文切换处理时间,SW输入/输出端口。
  2. 数据传输阶段: 传输数据的阶段,两站之间传输的数据没有分组,没有任何附加信息。
  3. 拆卸阶段(连接终止):Teardown phase (connection termination)
    所有数据传输完毕后,电路就被拆除了

freeswitch网卡 网卡switch有啥用_电路交换_05


例1:上图中交换机如图所示,可以保证左右两端的设备任何时间点可以与对面的一个空闲中的人通话。但是当试图去与通话中的人建立连接时会出现冲突问题。或者在一段再追加一个设备,也会出现占线问题。

freeswitch网卡 网卡switch有啥用_freeswitch网卡_06


例2:4x8交换是指4输入8输出,其中4输出端口接外部信道而4输出端口接本地环回线路。保证对外和内部通信的畅通。

freeswitch网卡 网卡switch有啥用_通信原理_07

效率:虽然能够保证通话质量,但是由于会出现两个用户占线但是不说话这种浪费资源的情况,所以效率上不好。但是网络延迟最小,每次切换没有等待时间。总延迟是由于创建连接、传输数据和断开电路所需的时间。
延迟种类:Tx请求在信道中传输的时间,Tx发起请求的时间,Rx发起确认的时间,Rx的确认在信道中传输的时间+数据在信道中传输的时间+连接释放的时间

Packet SW–分组交换

freeswitch网卡 网卡switch有啥用_虚电路_08


分组交换,将要传输的数据以数据包的形式传递。基于计算机网络的特性,TCP/IP协议中的尽最大可能交付,传输过程中可能会出现丢包(数据丢失)的情况。将数据分割为多个小的数据体(如果数据量足够小可以不分割),然后在计算机网络中传播,计算机网络横跨多个网段,也就说对于每个数据包他们到达目的地的所经过的路径可以不同且到达顺序也是可变的。这就要求分割数据时,要为数据包提供顺序编号,令接收端收到N个数据包后能够按顺序重组并获得想要的信息。

这个过程中,丢包由传输层来保证可靠传输,丢失的数据包会重发,如果实在有问题,则会报错。该网络中不同路径的选择基于路由器,路由器有路由功能,即选择路径的功能。路由器中可以识别到达的数据包其来源与最终目的,并为其分配一条带宽相对宽裕的路径让数据包在此上传输。

freeswitch网卡 网卡switch有啥用_网络_09


路由表:路由器选择路径的凭据。每个路由器根据最终目的地记录了应该去往哪一个方向。简单的举例,当你去到一个非常大的博物馆,你想看恐龙标本,但是你不知道该去哪,然后你去问工作人员,他会告诉你先往左或者右走。即路由器也是先告知数据包下一步应该去哪,到达下一个站点只需要再次询问那个站点的工作人员接下来该往哪个方向走走。每个工作人员就是路由器的功能,提供根据最终目的地来分配前往的途径,如果某条路现在因为热门展出导致非常拥挤,工作人员也会推荐你走一条其他的路,人相对少一些,着完美体现了路由器的择址功能。对于数据包本身,就像游客一样,你要知道自己来自哪里,要去哪里,这是最基本的。

freeswitch网卡 网卡switch有啥用_虚电路_10

由于分组交换不存在电路交换那种站着资源不用的情况,所以数据效率上比电路交换好,但是延迟比电路交换大得多,一般不适用于实时通讯。但是最近其实实时通讯也开始逐渐应用了,根据Qos设定数据包的优先等级,让优先等级高的数据包优先占用带宽从而保证服务质量。

Virtual-Circuit Networks

freeswitch网卡 网卡switch有啥用_网络_11


该方式与数据报网络最大的不同是两个通信主机在通信之前会事先建立一条通道,如上述图片中的通道,所有的分组都将沿着这条线路有序可靠的传输。但是这个线路上的某个路由器或者链路也可以为其他用户进行服务,如 某一段链路可以是A和B之间虚拟电路的一部分同时又是C和D虚拟电路的一部分,并不是A和B专门占用一条完整的通信线路,所以这样的电路称为虚拟电路(电信网中的物理线路是被A和B单独占用的),只是逻辑上看去A和B通过该专用线路进行通信,事实上是该线路的某一部分也在为别人工作。

freeswitch网卡 网卡switch有啥用_freeswitch网卡_12


每条虚电路包括:

  • 从源主机到目的主机的一条路径
  • 虚电路号(VCID) , 沿路每段链路一个编号
  • 沿路每个网络层设备(如路由器), 利用路由表记录经过的每条虚电路

沿某条虚电路传输的分组,携带对应虚电路的VCID,而不是目的地址。同一条VC ,在每段链路上的VCID通常不同,路由器转发分组时依据路由表表改写/替换虚电路号。路由表将数据包的目标地址改成了对应的虚电路ID——VCI。当一个帧到达一个交换机,它有一个VCI;当它离开时,它有一个不同的VCI。

freeswitch网卡 网卡switch有啥用_网络_13


也是分为三个阶段,建立连接-传输-释放连接。所有交换机都需要为这个虚拟电路提供一个表条目,每个交换机切换都会改变VCI和路由帧。交换机的过程对于消息的每一帧都是相同的。这个过程在源和目标之间创建一个虚拟电路,而不是真实的电路。

freeswitch网卡 网卡switch有啥用_通信原理_14


上图是例图。准备阶段,需要首先建立源与目标的连接,需要根据请求-响应报文来建立连接。建立连接需要在Tx收到Rx的确认后。

请求:设置请求帧从源发送到目标;在设定阶段,该路由器充当分组路由;它有一个与交换表不同的路由表

确认:一个特殊的框架,称为确认框架,完成交换表中的条目。确认携带全局源和目标地址,因此交换机知道要完成表中的哪项。

在更新完路由表后,整个网络按照新的路由表来转发数据包。

释放:发送一个称为teardown请求的特殊帧,然后回应与拆解确认帧

freeswitch网卡 网卡switch有啥用_电路交换_15

在虚拟电路交换中,属于同一源和目的的所有数据包都沿同一路径行进,但如果资源分配是按需进行的,则数据包到达目的地的时延可能不同。

时延:设置的一次性延迟和拆卸的一次性延迟,如果资源分配在设置阶段,没有单个数据包等待时间

二者的异同:

freeswitch网卡 网卡switch有啥用_通信原理_16


freeswitch网卡 网卡switch有啥用_freeswitch网卡_17