下图为电路交换的示意图。为简单起见,图中没有区分市话交换机和长途电话交换机。应当注意的是,用户线是电话用户到所连接的市话交换机的连接线路,是用户独占的传送模拟信号的专用线路,而交换机之间拥有大量话路的中继线(这些传输线路早已都数字化了)则是许多用户共享的,正在通话的用户只占用了中继线里面的一个话路。电路交换的个重要特点就是在通话的全部时间内,通话的两个用户始终占用端到端的通信资源。
当使用电路交换来传送计算机数据时,其线路的传输效率往往很低。这是因为计算机数据是突发式地出现在传输线路上的,因此线路上真正用来传送数据的时间往往不到10%甚至1%。已被用户占用的通信线路资源在绝大部分时间里都是空闲的。例如,当用户阅读终端屏幕上的信息或用键盘输入和编辑一份文件时,或计算机正在进行处理而结果尚未返回时,宝贵的通信线路资源并未被利用而是白白被浪费了。
分组交换的特点分组交换则采用存储转发技术。图1-11表示把一个报文划分为几个分组后再进行传送。通常我们把要发送的整块数据称为一个报文( message)。在发送报文之前,先把较长的报文划分成为一个个更小的等长数据段,例如,每个数据段为1024bit。在每一个数据段前面,加上一些由必要的控制信息组成的首部 Header)后,就构成了一个分组( packet)。分组又称为“包”,而分组的首部也可称为“包头”。分组是在互联网中传送的数据单元。分组中的“首部”是非常重要的,正是由于分组的首部包含了诸如目的地址和源地址等重要控制信息,每一个分组才能在互联网中独立地选择传输路径,并被正确地交付到分组传输的终点。
图1-12(a)强调互联网的核部分是由许多网络和把它们相互连接起来的路由器组成。而主机处于互联网的边缘部分。在互联网核心部分的路由器部分一般采用告高速链路相连接,而在网络边缘的主机接入到核心部分则通常以相对较低速率的链路相连。
位于网络边缘的主机和位于网络核心部分的路由器都是计算机,但它们的作用却很不一样。主机是为用户进行信息处理的,并且可以和其他主机通过网络交换信息。路由器则是用来转发分组的,即进行分组交换的。路由器收到一个分组,先暂时存储一下,检查其首部,查找转发表,按照首部中的目的地址,找到合适的接口转发出去,把分组交给下一个路由器。这样一步一步地(有时会经过几十个不同的路由器)以存储转发的方式,把分组交付最终的目的主机。各路由器之间必须经常交换彼此掌握的路由信息,以便创建和动态维护路由器中的转发表,使得转发表能够在整个网络拓扑发生变化时及时更新。当我们讨论互联网的核心部分中的路由器转发分组的过程时,往往把单个的网络简化成一条链路,而路由器成为核心部分的结点,如图1-12(b)所示。这种简化图看起来可以更加突出重点,因为在转发分组时最重要的就是要知道路由器之间是怎样连接起来的。现在假定图1-12(b)中的主机H1向主机H发送数据。主机H1先将分组逐个地发往与它直接相连的路由器A。此时,除链路H1-A外,其他通信链路并不被目前通信的双方所占用。需要注意的是,即使是链路H1-A,也只是当分组正在此链路上传送时才被占用。在各分组传送之间的空闲时间,链路H1-A仍可为其他主机发送的分组使用。路由器A把主机H1发来的分组放入缓存。假定从路由器A的转发表中查出应把该分组转发到链路A-C。于是分组就传送到路由器C。当分组正在链路AC传送时,该分组并不占用网络其他部分的资源。路由器C继续按上述方式查找转发表,假定査出应转发到路由器E。当分组到达路由器E后,路由器E就最后把分组直接交给主机H假定在某一个分组的传送过程中,链路AC的通信量太大,那么路由器A可以把分组沿另一个路由传送,即先转发到路由器B,再转发到路由器E,最后把分组送到主机H5。在网络中可同时有多台主机进行通信,如主机H2也可以经过路由器B和E与主机H6通信。