(问题4-1:存在多种异构网络对不同网络之间的通信会造成一些麻烦。但为什么世界上还存在多种异构网络?
答:世界上之所以存在着多种异构网络,就是因为仅用一种体系结构的网络根本无法满足所有用户的所有需求。
OSI假定全世界所有的人都在网络层使用X.25协议,并希望使用X.75协议将全球所有的X.25网络互连起来,从而实现全球任意计算机之间的通信。然而大家并不愿意这样做,结果OSI失败了。这里的原因就是X.25网络并不能满足所有用户的需求,大量的用户还需要使用其他类型的网络。
在计算机网络发展初期,许多厂家都生产出具有自己独特体系结构的计算机网络。这些计算机网络就像一个个孤岛一样,它们是不能互相通信的。如果某公司的雇员需要同时接入到三个不同厂商的计算机网络,那么他就需要用三台终端(即观看三个不同的屏幕显示)分别连接到不同的计算机网络。这显然是很不方便的。
在客观上存在多种异构计算机网络的现实情况下,普遍服务(universalservice)的概念被提出来了。一个计算机通信系统若能够提供普遍服务就表明该系统中的任何一对计算机都能够很方便地进行通信。像全世界的电话网就是能够提供普遍服务的一个成功例子。在世界上存在大量异构计算机网络(它们的网络硬件和物理地址的编址方法都不一样)的现实情况下,要获得普遍服务,的确是相当困难的事。但IP协议成功地解决了这个难题。不管你使用的具体网络采用什么样的硬件结构,但只要你的网络使用IP协议并给连接在网络上的主机分配了合法的IP地址,那么连接到这种虚拟的IP互连网上的任何一对计算机都可以很方便地进行通信。
(问题4-2:“IP网关”和“IP路由器”是否为同义语?
答:当初发明TCP/IP的研究人员使用IPGateway作为网际互连的设备。我国的网络工作者曾使用过多种译名,如网间连接器、网闸、信关、联网机等,但最后由全国自然科学名词审定委员会(这个委员会现在改名为“全国科学技术名词审定委员会”)在[MINGCI94]中公布的Gateway标准译名为“网关“。
但是在美国在20世纪90年代初期一家厂商认为,将IPGateway改名为IPRouter似乎更加有利于设备的销售。后来其他厂家也跟着改变产品的名称。在[MINGCI94]中Router的标准译名是“路由器”。现在,大家就都基本上不再使用网关这一名词了。
我们可以认为“IP网关”和“IP路由器”是同义语。
(问题4-3:“互连网”和“互联网”有没有区别?
答:这是一个很难说清的问题,很多人都向我询问过这个问题。
在《现代汉语辞典》修订本(中国社会科学院语言研究所辞典编辑室编,商务印书馆1996年出版)第782页上有:“【连接】也作联接”。
在785页上有:“【联接】同‘连接’”。
这表明“连接”和“联接”是一样的意思。
在全国自然科学名词审定委员会公布的《计算机科学技术名词》一书[MINGCI94]中,Connection确定译为“连接”。Interconnection确定译为“互连”。Internetworking确定译为“网际互连”。这样的译名是很合适的。
到了1997年7月18日“全国科学技术名词审定委员会推荐名(一)”公布了。其中的第一个名词就是“互联网”,它对应的英文名为:internet,internetwork,interconnectionnetwork。在现有名一栏中有“互联网”、“互连网”、“网际网”和“网间网”,在注释栏中有这样几个字:“又称互连网”。
因此能否这样理解:“互联网”和“互连网”都是推荐名,都可以使用,不过建议优先使用前者,即优先使用“互联网”。
使用“互连网”的好处是这样可以和[MINGCI94]早已制定过的一些名词衔接得更好些。
不过请注意,把所有的“互连”统统改为“互联”则是错误的。
(问题4-4:在文献中有时会见到对等连网(peer-to-peernetworking),这是什么意思?
答:这表示在因特网中,任何两个计算机都可以进行平等地通信。这里可能一个计算机是很小的PC机,而另一个计算机是很大的巨型机。因特网对通信双方计算机的大小是不关心的。“对等”也有“对称”的意思。在早期的计算机网络是以计算机为中心,而远地的终端围绕中心的计算机进行通信。这些远地的终端和在中心的计算机并不是对等的,因为智能都集中在中心的计算机,复杂的计算都要在中心的计算机进行。但现在情况已经有了根本的变化。因此产生了对等连网这样的名词。
(问题4-.5:在一个互联网中,能否使用一个很大的交换机(switch)来代替互联网中很多的路由器?
答:不行。交换机和路由器的功能是很不一样的。
交换机可在一个单个的网络中和若干个计算机相连,并且可以将一个计算机发送过来的帧转发给另一个计算机。从这一点上看,交换机具有集线器的转发帧的功能。
但交换机比集线器的功能强很多。集线器在同一时间只允许一个计算机和其他计算机进行通信,但交换机允许多个计算机同时进行通信。
路由器连接两个或好几个网络。路由器可在网络之间转发分组(即IP数据报)。特别是,这些互连的网络可以是异构的。
因此,如果是许多相同类型的网络互连在一起,那么用一个很大的交换机(如果能够找得到)代替原来的一些路由器是可以的。但若这些互连的网络是异构的网络,那么就必须使用路由器来进行互连。
(问题4-6:为什么IP地址又称为“虚拟地址”?
答:这是因为IP地址是靠软件来维持的而不是硬件地址。我们好像构成了一个很大的互连网络,但这个网络是虚拟的网络系统,因为它的通信系统是抽象的。虽然许多硬件和软件的组合看起来好像构成了一个很大的网络,但这样的大网络实际上并不存在。
这种虚拟网络的地址也是虚拟的,因此IP地址又称为“虚拟地址”。
(问题4-7:有的文献上使用“虚拟分组”(virtualpacket)这一名词。虚拟分组是什么意思?
答:虚拟分组就是IP数据报。
因为因特网是由大量异构的物理网络互连而成的。这些物理网络的帧格式是各式各样的,它们的地址也可能是互不兼容的。路由器无法将一种格式的帧转发到另一种网络,因为另一种网络无法识别与自己格式不同的帧的地址。路由器也不可能对不同的地址格式进行转换。
为了解决这一问题,IP协议定义了IP数据报的格式。所有连接在因特网中的路由器都能识别IP数据报的IP地址,因此能够对IP数据报进行转发(在进行转发时当然要调用ARP协议以便获得相应的硬件地址)。我们知道,IP数据报是作为物理网络的帧的数据部分。各个物理网络在转发帧时是根据帧的首部中的硬件地址而不看帧的数据部分。因此所有的物理网络都看不见帧里面的IP数据报。这样就使得IP数据报得到“虚拟分组”这样的名称。
(问题4-8:如下图所示。五个网络用四个路由器(每一个路由器有两个端口)互连起来。能否改变这种连接方法,使用一个具有五个端口的路由器将这五个网络互连起来?
答:一般说来是不采用这样的连接方法。
这里有两个原因:
路由器中的CPU和存储器是用来对通过该路由器的每一个IP数据报进行处理的。假若一个路由器和许多个网络相连接,那么这个路由器的处理器很可能没有足够的能力来处理通过它的所有的IP数据报。
冗余度可以提高因特网的可靠性。路由器和网络都有可能出现故障。如果将所有的路由选择功能集中在一个路由器上,则一旦该路由器出故障,整个互连网就无法工作。
因此,在规划互连网时,互连网的具体拓扑结构取决于物理网络的带宽、期望的通信量、对可靠性的需求、以及路由器硬件的价格。
(问题4-9:当运行PING127.0.0.1时,这个IP数据报将发送给谁?
答:127.0.0.1是环回地址。主机将测试用的IP数据报发送给本主机的ICMP(而不是发送到因特网上)以便进行环回测试。
(问题4-10:网络前缀是指网络号字段(net-id)中前面的几个类别位还是指整个的网络号字段?
答:是指整个的网络号字段,即包括了最前面的几个类别位在内。网络前缀常常就简称为前缀。
例如一个B类地址,10100000000000000000000000010000,其类别位就是最前面的两位:10,而网络前缀就是前16位:1010000000000000。
(问题4-11:有的书(如[COME06])将IP地址分为前缀和后缀两大部分,它们和网络号字段及主机号字段有什么关系?
答:前缀(prefix)就是网络号字段net-id,而后缀(suffix)就是主机号字段host-id。下面的图是以C类地址为例来说明前缀和后缀是什么。
如果网络划分了子网,那么前缀还应包括子网号字段。
C类地址011net-id24bithost-id8bit前缀后缀主机号字段网络号字段用四个路由器连接五个网络用一个路由器连接五个网络 |
|