摘要:
当我们拥有多台通信设备时,就想要使各个设备之间能完成一对一的通信。比如建立每对设备之间的直接一对一连接(网状拓扑),或者用一台中心设备来建立与其他设备之间的一对一连接(星形拓扑)等。然而,高昂的实现代价,微小的成本效益,极低的链路使用率导致我们寻求更好的切合实际的解决方案,而目前令人比较满意的方案是交换。本文将阐述和分析交换的基本概念,分析发生在物理层中的电路交换以及发生在数据链路层和网络层中的分组交换的思想。最后将对实现交换的交换机和路由器进行讨论。
1.概述:
网络是一组连接的设备的集合,而实现连接的方法中,能比较好的建立点对点连接又能拥有较好的效益和效率的方案是交换(switching)。交换是以交换网络为基础实现的。交换网络由一系列互连的称为交换机(switch)的节点构成。交换机能够使连接到交换机的两台或多台设备之间建立临时连接。在交换网络中,一些节点连接到端系统(end system)(例如,计算机或电话),而另一些只是用于路由。交换有三种实现方式:电路交换(circuit switching)、分组交换(packet switching)和报文交换(message switching),其中分组交换又有虚电路方案(virtual-circuit network)和数据报方案(datagram network)。
关键词:交换、电路交换、分组交换、虚电路方案、数据报方案。
2.点对点连接的几种方式简要说明:
.网状拓扑结构:这种拓扑结构主要指各节点通过传输线互联连接起来,并且每一个节点至少与其他两个节点相连·网状拓扑结构具有较高的可靠性,但其结构复杂,实现起来费用较高,不易管理和维护,不常用于局域网。
优点:
a. 网络可靠性高,一般通信子网中任意两个节点交换机之间,存在着两条或以上的通信路径,这样,当一条路径发生故障时,还可以通过另一条路径把信息送至节点交换机。
b. 网络可组建成各种形状,采用多种通信信道,多种传输速率。
c. 网内节点共享资源容易。
d. 可改善线路的信息流量分配。
e. 可选择最佳路径,传输延迟小。
缺点:
a. 控制复杂,软件复杂。
b. 线路费用高,不易扩充。
.星形拓扑结构:在星型拓扑结构中,网络中的各节点通过点到点的方式连接到一个节点(又称转接站,一般是集线器或交换机)上,由该节点向目的节点传送信息。节点执行集中式通信控制策略,因此节点相当复杂,负担比各节点重得多。在星型网中任何两个节点要进行通信都必须经过节点控制。
优点:
a. 控制简单。任何一站点只和节点相连接,因而介质访问控制方法简单,致使访问协议也十分简单。易于网络监控和管理。
b. 故障诊断和隔离容易。节点对连接线路可以逐一隔离进行故障检测和定位,单个连接点的故障只影响一个设备,不会影响全网。
c. 方便服务。节点可以方便地对各个站点提供服务和网络重新配置。
缺点:
a. 需要耗费大量的电缆,安装、维护的工作量也骤增。
b. 节点负担重,形成“瓶颈”,一旦发生故障,则全网受影响。
c. 各站点的分布处理能力较低。
.电路交换网络(circuit-switched network):在物理层,我们只能有电路交换,而没有数据包交换。在物理层的交换机允许信号沿一个路径或另一个路径传输。电路交换网络是由物理链路连接的一组交换机组成的。两个站点间的连接是由一条或多条链路组成的专用路径来实现。然而,每个连接仅使用每条链路上的一专用通道。通常每条链路用FDM或TDM划分成n个通道。
当端系统A需要与端系统M通信时,系统A需要向M发送一个连接请求,这个连接请求必须被所有相关交换机接受包括M本身的交换机。这称为建立阶段(setup phase);在每条链路上预定一个电路(通道),并将这些电路或通道组合起来定义一条专用路径。当建立了这些连接的电路(或通道)的专用路径后,数据传输阶段(data-transfer phase)才可以进行。所有数据传送完以后,拆除这些电路。
电路交换网实际通信的三个阶段:
建立阶段:在双方(或会议电话中多方)通信之前,需要建立一条专用电路(链路中的通道的组合)。端系统通常通过专用线路连接到交换机,于是连接建立的意思就是交换机之间建立一些专用通道。
数据传输阶段:专用电路(通道)建立后,双方可传输数据。
拆除阶段:当任何一方要撤销连接,就向每台交换机发送一个信号释放资源。
说明:
a. 电路交换是在物理层。
b. 通信开始前,站点必须预留通信所用的资源。这些资源,如通道(FDM的带宽和TDM的时隙)、交换机的缓冲区、交换机处理时间和交换机输入/输出端口,在整个数据传输期间必须保留专用直到拆除阶段(teardown phase)为止。
c. 两个站点之间数据传输不打包(物理层传输信号)。尽管可能存在有间隙,但源站点发送连续的数据流,由目的站接收这些数据流。
d. 数据传输期间没有寻址,交换机基于它们占有频带(FDM)或时隙(TDM)发送数据。当然,在建立阶段,存在端到端的寻址。
传输效率:因为资源在整个连接期间都被占用,这些资源不能被其他连接所用,所以电路交换网的效率不及其他两类网络类型的效率。允许拥有专用资源的意思是不能用于其他连接。
延迟:由于是专用的通路,所以没有等待时间。整个延迟时间是建立连接需要的时间、数据传输时间和拆除电路时间。
.分组交换网(packet-switched network):在数据通信中,我们需要从一个端系统发送报文到另一个端系统。如果经过分组交换网传送报文,则报文必须划分为一些固定长的分组或可变长的分组,且分组长度由网络和控制协议决定。分组交换网可划分为两个子类:虚电路方案和数据报方案。在数据链路层进行的分组交换中,术语分组(packet)意味着帧(frame)或信元(cell),通常的做法是使用一个虚电路。在网络层进行的分组交换中,要么是虚拟电路的方法,要么是数据报的方法,两者都可以用。在分组交换中,对分组不存在资源分配。即没有预留的带宽,对每个分组没有预定的处理时间,资源按需分配,先来先服务。
1). 数据报网络(datagram network):通常发生在网络层。每个分组处理,与其他分组无关。即使某个分组是多分组传输的一个部分,网络处理它好像它是单独存在一样。这种方法的分组称为数据报(datagram)。
如下图所示,站点A如何传递4个分组到站点X的数据报方法。所有4个分组(或数据报)都属于同一报文,但可能经过不同的路径到达目的端。这是由于链路可能需要承载来自其他源端发送的分组,而没有必要的带宽携带从A到X的所有分组。这种方法可能引起传输数据报到达目的端后,由于分组之间延迟不同而失序。也可能由于缺乏资源,引起分组丢失或丢弃。在多数协议中,在传送给应用之前,由上层负责数据报重新排序或请求丢失的数据报。在处理过程中,交换机(分组交换机)不保存有关连接状态的信息,没有连接建立阶段和拆除阶段。每个分组不管源和目的都由交换机同样处理。
路由表:指的是路由器或者其他互联网网络设备上存储的表,该表中存有到达特定网络终端的路径,在某些情况下,还有一些与这些路径相关的度量。记录目的地址和相应的转发端口。
目的地址:数据报网络中每个分组有一个头部,除其他信息外,包括分组的目的地址。当交换机接收到分组时,检查目的地址,查阅路由表找到对应的输出端口,然后转发出去。
效率:数据报网的效率比电路交换网高。仅当有分组需要传输时,才分配资源。如果源端发送一个分组后,在另一个分组可发送前,有几分钟时间间隔,则在这几分钟里面该资源可以重新被分配给来自不同源的分组。
延迟:数据报网的延迟比虚电路网络长。虽然数据报网没有建立阶段与拆除阶段,但每个分组在转发前在交换机中可能需要等待。另外,由于一个报文中所有分组不需要通过同一个交换机传送,因此报文的分组延迟不一致。
分组通过两个交换机传送,存在3个传输时间(3T),3个传播延迟(线的斜度3τ)和2个等待时间(w1 + w2)。不计每个交换机处理时间,则总延时为:
总延迟时间 = 3T + 3τ+ w1 + w2
2). 虚电路网络(virtual-circuit network):虚电路又称为虚连接或虚通道。在两个节点或应用进程之间建立起一个逻辑上的连接或虚电路后,就可以在两个节点之间依次发送每一个分组,接受端收到分组的顺序必然与发送端的发送顺序一致,因此接受端无须负责在收集分组后重新进行排序。虚电路协议向高层协议隐藏了将数据分割成段,包或帧的过程。
特征:
a. 除数据传输阶段外,如同电路交换网络一样有建立阶段与拆除阶段。
b. 同电路交换网络一样,在建立阶段分配资源,或者与数据报网络一样,按需分配资源。
c. 同数据报网络一样,数据被封装成分组,每一分组的头部含有地址。但是,该地址只具有本地的权限(它定义下一个交换机以及该交换机上传送分组的通道),而不是端到端的权限。读者可能会问,如果分组没有携带最终目的地址,中间交换机如何知道应该将分组发送到何处。在下一节讨论虚电路标识时,答案将会清楚。
d. 同电路交换网络一样,所有分组沿着连接期间建立的同一路径传送。
e. 虚电路网络通常在数据链路层实现,而电路交换网络是在物理层实现,数据报网络在网络层实现。但在将来这可能会变化。
寻址:在虚电路网络中,有两类寻址:全局的和本地的(虚电路标识符)。
全局寻址:源或目的需要有一个全局地址,该地址是一个广域网范围内或者国际范围内(如果这个广域网是一个国际网络的一个部分)唯一地址。虚电路网络中的全局地址仅用于建立虚电路标识符。
虚电路标识符(virtual circuit identifier,VCI):实际用于数据传输的标识符。VCI是一个仅在交换机范围内的小编号,由两个交换机之间的帧来使用。当一帧到达一个交换机时,它有一个VCI,当它离开时,它有不同的VCI。如下图:
三个阶段:建立连接、数据传输和拆除连接。
建立阶段:在建立阶段,一个交换机为一条虚电路生成一个表项。需要两个步骤:建立请求和确认。
A.请求:建立请求帧从源端发送到目的端。
a. 源端A向交换机1发送一个建立请求帧。
b. 交换机1接收这个建立请求帧。它知道从A到B的帧要经过端口3。交换机如何知道这个信息是下一章讨论的一个问题。在建立连接阶段,交换机担当分组交换机的作用;它有一个和交换表不同的路由表。暂时假设它知道输出端口。交换机为这个虚电路在表中建立一个表项,但它只能填四列中的三列。交换机分配输入端口(1),选择可用输入VCI(14)和输出端口(3)。它仍然不知道输出VCI, VCI将在确认步骤中找到。然后,这个交换机通过端口3向交换机2转发该帧。
c. 交换机2接收这个建立请求帧。与在交换机1中发生的情况一样,完成表的三列:在这个情形中是输入端口(1)、输入VCI(66)和输出端口(2)。
d. 交换机3接收这个建立请求帧。同样完成了三列:输入端口(2)、输入VCI(22)和输出端口(3)。
e. 目的端B接收这个建立请求帧。如果它准备好接收从A发来的帧,它就分配一个VCI给从A来的输入帧,这里是77。这个VCI让目的端知道帧是从A发出的,而不是从其他源端发出的。
B.建立:一个称为确认帧的特殊帧可以完成交换表中的表项。
a. 目的端给交换机3发送一个确认。这个确认帧携带有全局源端地址和目的端地址,因此交换机知道该完成交换表中的哪个表项。这个帧还携带有VCI 77,这是由目的端选择的作为从A来的帧的输入VCI。交换机3使用这个VCI来完成这个表项的输出VCI列。注意,77是目的端B的输入VCI,但也是交换机3的输出VCI。
b. 交换机3向交换机2发送一个确认帧,这个帧包含有在前一步骤中选择的、自己表中的输入VCI。交换机2使用这个VCI作为自己表中的输出VCI。
c. 交换机2向交换机1发送一个确认帧,这个帧包含在前一步骤中选择的、自己表中的输入VCI。交换机1使用这个VCI作为自己表中的输出VCI。
d. 最后,交换机1向源端A发送一个确认帧,这个帧包含在前一步骤中选择的、自己表中的输入VCI。
e. 源端使用这个VCI作为准备发送给目的端B的数据帧的输出VCI。
数据传输阶段:为了从源端向目的端传输帧,所有交换机需要为这个虚电路建立表项。这个表,最简单的形式有4列。这意味着交换机需要为已经建立的每条虚电路保留4个信息。
数据传输阶段一直保持激活,直到源端向目的端发送完所有的帧。对报文的所有帧来说,交换机的这个程序都是一样的。这个过程在源端和目的端之间建立虚电路,而不是实际电路。
拆除阶段:在这个阶段中,当源端A向B发送完所有的帧后,再发送一个称为拆除请求的特殊帧。目的端B用一个拆除确认帧来响应。所有的交换机从各自的表中删除相应的表项。
虚电路网络延迟:在虚电路网络中,建立阶段有一个时间延迟,拆除阶段有一个时间延迟。如果在建立阶段分配资源,那么单独分组没有等待时间。
分组经过两个交换机(路由器)传送,有三个传输时间(3T)、三个传播时间(3τ),数据传输由斜线描述,建立阶段延迟(包括两个方向传输与传播)和拆除阶段延迟(包括一个方向传输与传播)。我们不计每个交换机处理时间。总的延迟时间是
总延迟= 3T + 3τ+ 建立阶段延迟+拆除阶段延迟
3.总结:
交换网络由一系列互连称为交换机的互连节点构成。传统上有三种重要的交换方法:电路交换、分组交换和报文交换。
交换网络也分为三类:电路交换网、分组交换网和报文交换网。分组交换网络又可分为两类:虚电路网络和数据报网络。电路交换网是由物理链路连接一组交换机组成,每条链路划分成n个通道。电路交换在物理层进行。在电路交换中,建立阶段期间必须预留资源,整个数据传输期间资源保留专用直到拆除阶段。在分组交换中,对分组不存在资源分配,每个分组没有预定处理时间,资源按需分配。在数据报网络中,每个分组处理,与其他分组无关,没有建立阶段和拆除阶段。虚电路网络是结合电路交换网络与数据报网的产物。
从以上列举出的几种实现点对点连接的方法上看,交换的方式都将链路利用率提高了很多。
4.参考文献:
.网状拓扑结构,2014-3-28
http://baike.baidu.com/link?url=a7MtIl5qoGfvfNfoBdHNDTxwmVEWhyH8KebYEsI6CmL6-nZ-nUn624USI67GYbX5
.新型拓扑结构,2014-3-28
http://baike.baidu.com/link?url=f9MELr42lqQfmpqYkm2HkuuBpU7ekOgYRhd9iTOZ_c37pu_Fs6SSAK3eq_5s_N_Z
.Behrouz A. Forouzan . Data Communications and Networking(第五版)8.2[M].机械工业出版社
.Behrouz A. Forouzan . Data Communications and Networking(第五版)8.3[M].机械工业出版社
.Behrouz A. Forouzan . Data Communications and Networking(第五版)8.3.1[M].机械工业出版社
.Behrouz A. Forouzan . Data Communications and Networking(第五版)8.3.2[M].机械工业出版社