|
5–4–1 分组交换(什么是分组、什么是交换、“分组交换”与公路)
我们已经学习了Internet中提供的Email,WWW,Newsgroup,FTP等服务。我们之所以能够使用这些服务,是因为连接在Internet中的一台计算机可以通过Internet到达指定的另一台计算机。那么,这些数据是怎样达到目的地的呢?
Internet与其它各种计算机网络一样,是一个分组交换系统。
什么是分组
“分组”是指具有固定大小、固定格式的一组数据,我们也常称之为“包”。
在每一个分组中都需要说明一些特征,如该分组要被传送到哪台计算机等。分组的大小是固定的,因此较大的数据文件会被分为一系列“分组”,每个分组分别传送。
当我们通过网络传送数据时,发送方的网络软件会自动将数据分成分组,而接收方的网络软件则会把收到的分组重新组装成完整的数据。这个过程我们是感觉不到的。
(back)
什么是交换
首先,让我们来看看最典型的交换系统——普通的电话系统。
在电话系统中,任何两部电话机之间都没有直接的连线。当你想通话时,电话交换机会在通话双方之间临时建立起一条电路。在这次通话结束后,这条临时建立起来的电路就会被自动拆除。这就是“交换”的一种——电路交换。
“交换”的好处是显而易见的。例如:假如要把三部电话机互相连接起来,如果不用交换系统的话,就需要把每两部电话机之间用线路连接起来,每部电话都独占了两条电话线路,如图5-86所示。
而使用交换系统,则可以把每部电话机分别与交换系统相连,由交换系统根据需要建立起临时的连接,如图5-87所示。
根据同样的原理,交换系统可以利用较少的线路把成千上万部电话连接起来,大大提高了线路的使用率。
与电话系统类似,计算机网络也是一个交换系统。但计算机网络交换的不是“电路”,而是“分组”,它是一个“分组交换”系统。
与电话系统不同,“分组交换”系统传送一个分组时,并不会在通信双方之间建立起一条临时的线路,只是利用原有的线路把这个分组传送出去。在“分组”被“交换”的一瞬间,它占用了分组交换系统的带宽,但它却不会独占任何通信资源,而总是和其它分组一起共享通信线路。
分组通常比较小,而且网络传送的速度很快,因此网络可以在短时间内传送大量的分组。 (back)
“分组交换”与公路
“分组交换”的原理与公路系统类似。
假如每辆在公路上行驶的汽车都是一个分组,那么想象一下,如果每辆汽车行驶时都要独占一条线路,在这辆汽车没有到达目的地之前其它汽车不能使用这条线路的话,公路的使用效率会有多么低!幸好在实际生活中,每辆汽车都不会独占某一个路段,它们总是与其它车辆共享一条路。这样,每辆汽车都会沿着公路到达目的地。
如果公路上的车辆非常多,那么你只能排着队慢慢前进;而当车少的时候,你就可以走得快一些。在分组交换系统中也是一样,如果网络上有很多分组需要传送而带宽又不够的话,就会出现“网络拥堵”。(back)(top)
|
|
当国内用户访问位于国外的Internet资源(如浏览国外WWW站点)时,必须要经过国际出口。如果有很多人同时浏览国外信息的话,网络速度就会显得“很慢”,这实际上就是因为网上需要传送的信息(分组)太多、而国际出口带宽不够造成的。
|
5–4–2 路由器
我们已经知道,计算机网络是分组交换系统。本部分将介绍Internet如何实现多个分组交换网络的互联,从而形成一个庞大的、整体运作的Internet。
在Internet中,网络之间的互联是通过一种叫作“路由器”的设备完成的。路由器可以把局域网与局域网、局域网与广域网、广域网与广域网互联起来,同时它也可与其它路由器相连。路由器的主要任务是把分组从一个网络送到另外一个网络。
|
|
路由器实际上也是一种计算机,也具备CPU、内存和网络接口等设备,但它只用于处理网络之间的互联。
|
路由器的工作有点象邮局:当你把一封信投递给邮局后,工作人员会根据邮寄地址决定下一步把信送往哪一个邮局;后一个邮局也会根据一定的原则把信继续向后投递;直到把信送到收信人手中。
当路由器收到数据分组时,它首先会分析该分组中包含的目的IP地址信息,并且按一定的规则把这个分组传递到下一个路由器。
如果路由器仅仅和另外一台路由器相连接,这个过程是非常简单的,只需要简单地转发即可。但在Internet中,一台路由器往往和其它很多台路由器连接,因此当一个数据分组在Internet上传输时,可能会有数十条甚至上百条传输路径,这就需要路由器为分组选择更合理的路径。这个过程被称为“路由选择”。
在图5-88所示的网络模型中,LAN1,LAN2,LAN3,LAN4分别是四个局域网络,它们分别通过路由器A,B,C,D与广域主干网互联,而且路由器A与B也是互联的。如果要把LAN1中的数据发送到LAN3,就会有多条路径:
1. LAN1→A→B→LAN3;
2. LAN1→A→广域主干网中的路由器→B→LAN3。
在这个例子中,显然,数据分组从第一条路径走更为快捷。
|
|
在第一章的“Internet起源”中,我们提到:美国国防部希望能够建立一种网络,即使网络中的某条线路被损坏,网络仍然能够正常工作。实现这个功能就要靠路由器的“路由选择”功能。
|
有趣的是:Internet是一个分组交换网络,而每一个分组在传输的过程中,都有可能有多条路径,因此在Internet中有一个有趣的现象:先发出的分组不一定能够最先达到目的地。不过,TCP可以理解各个分组的实际顺序,它会把这些分组重新正确地组合在一起。
从路由器的观点来看,Internet实际上是由通过路由器连接在一起的网络组成的。因此,路由器可以说是Internet的“发动机”。(top)
5–4–3 客户机/服务器
我们已经知道:Internet提供了众多的服务,每种服务都需要使用相应的软件。例如:使用电子邮件服务需要Outlook
Express等Email软件,使用万维网服务需要Internet Explorer等浏览器软件,使用新闻组服务需要Outlook
Express等新闻阅读软件,使用文件传送服务需要LeapFTP等FTP软件。
实际上,这些软件只是在我们的计算机中所运行的软件,称为“客户端软件”。在服务器中还要运行相应的服务器端软件才能为客户端软件提供服务。
一般来说,提供服务的程序被称为“服务器”,而请求服务的程序被称为“客户机”。我们前面所用过软件(如Outlook
Express和IE)等都是客户机,也叫“客户端软件”。
我们可以通过客户端软件发出命令,客户端软件则根据命令按一定的协议向服务器发出请求,并等待回答;服务器端软件在收到请求后,就会分析其请求,并给予相应的回答,回答的信息再通过网络发到客户端软件。这种模式被称为“客户机/服务器(Client/Server)”模式。所有的Internet服务都使用客户机/服务器模式。(top)
图5-89中显示的是“客户机/服务器”模式的示意图。
5–4–4 WWW的工作过程
与其它Internet应用程序一样,WWW系统也使用客户机/服务器模式。WWW系统中的客户机就是浏览器。
下面我们以WWW为例,概述一下Internet的工作过程。
当用户在浏览器(如IE)中输入一个URL时,浏览器程序就会把用户的要求转换成一系列信息查询请求,并通过Internet发送给提供信息服务的服务器。而服务器则执行一个服务器程序与客户机进行通信。WWW的客户机程序与服务器程序之间必须要通过超文本传输协议(http)进行通信。
当我们输入一个WWW地址(如:http://www.peopledaily.com.cn)并按回车键后,在IE窗口下方的信息条中会依次显示出如下信息:
·“正在查找站点:www.peopledaily.com.cn”。此时,WWW客户机正在通过DNS把该域名转换为IP地址。
·“正在连接202.99.23.239”。此时,已经把域名转换为IP地址。
·“Web地址已经找到,请等待回应”。此时,WWW客户机正在请求与该主机进行连接。
·“正在打开网页http://www.peopledaily.com.cn”。此时,WWW客户机已经与该服务器建立起连接,并且开始传送网页的文件。在传送文件时,会被自动分成许多分组,经过多个路由器的转发到达我们的计算机,再由我们的计算机自动把这些分组合并成一个个完整的文件,最后再由浏览器识别并显示在屏幕上。
|