引言
由于不同物理网络的异构性,存定了各自寻址方式、网络接入机制等存在差异性。如果要把全世界范围内数以百万计的网络都互联都互连起来,并且能够相互通信,那么这样的任务一定非常复杂。而虚拟互联网络,提供了解决思路
现实问题
如果要在全世界范围内把数以百万计的网络都互联起来,并且能够互相通信,其中会遇到许多问题需要解决
- 不同的寻址方案
- 不同的最大分组长度
- 不同的网络接入机制
- 不同的超时控制
- 不同的差错恢复报告
- 不同的状态报告方法
- 不同的路由选择技术
- 不同的用户接入控制
- 不同的服务(面向连接服务和无连接服务)
能不能让大家都使用相同的网络,这样可使网络互连能够变得比较简单,答案是不行的。因为用户的需求是多种多样的,没有一种单一的网络能够适应用所有用户的需求。另外网络技术是不断发展的,网络的制造厂家也要推出新的网络,在竞争中求生存。因此在市场上总是有很多种不同性能、不同网络协议的网络,供不同的用户使用
网络互连的中间设备
- 物理层中继系统:转发器(repeater)
- 数据链路层中继系统:网桥或桥接器(bridge)
- 网络层中继系统:路由器(router)
- 网络层以上的中继系统:网关(gateway)
需要注意的是,当中间设备是转发器或者网桥时,仅仅是把一个网络扩大了,而从网络层的角度看,这仍然是一个网络,一般并不称之为网络互连。网关由于比较复杂,目前使用较少。因此,当我们讨论网络互连时,都是指路由器进行网络互连和路由选择。路由器起始就是一台专用计算机,用来在互联网中进行路由选择
由于历史原因,许多有关TCP/IP的文献将网络层使用的路由器称为网关
可以看到上图的三台计算机,网关都是192.168.1.1也就是路由器的接口地址,这三台计算机要想访问其他网段的计算机,必须要将数据包发送给网关,由网关进行转发。如果某台计算机不设置网关,则无法访问其他网段的计算机,但是可以访问本网段的计算机
TCP/IP虚拟互连方式
TCP/IP体系在网络互连上采用的做法是在网络层(即IP层)采用了标准化协议,但相互连接的网络可以是异构的。图a表示有许多计算机网络通过一些路由器进行互连。由于参加互连的计算机网络都使用相同的网际协议IP(Internet Protocal),因此可以把互连以后的计算机网络看成图b所示的一个虚拟互连网络(internet)
所谓虚拟互连网络,它的意思就是互连起来的各种物理网络的异构性本来是客观存在的,但是我们利用IP协议就可以把这些性能各异的网络在网络层看起来好像是一个统一的网络。这种使用IP协议的虚拟互连网络可简称为IP网。使用IP网通信的好处是:当IP网上的主机进行通信时,就好像在一个单个网络上通信一样,他们看不见互连的各网络的具体异构细节(如具体的编址方案、路由选择协议、等等)
一个实际例子
当很多异构网络通过路由器互连起来时,如果所有网络都使用相同的IP协议,那么在网络层讨论就很方便。现在以一个例子说明:
在上图所示的互联网中,源主机H1要把一个IP数据报发送给目的主机H2,根据分组交换的存储转发概念,主机H1先要查找自己的路由表,看目的主机是否就在本网络上。如是,则不需要经过路由器而是直接交付,任务就完成了。如不是,则必须把IP数据报发送给某个路由器(图中R1)。R1在查找了自己的路由表后,知道应把数据报转发给R2进行交接交付,这样一直转发下去,最后由路由器R5知道自己是和H2连接在一个网络上,不需要再使用别的路由器转发了,于是就把数据报直接交付到目的主机H2
图中画出了源主机、目的主机以及各路由器的协议栈。我们注意到,主机的协议栈共有五层,但路由器的协议栈只有下三层。图中还画出了数据在各协议栈中流动的方向,另外在R4和R5之间使用了卫星链路,而R5所连接的是个无线局域网。在R1和R4之间的三个网络可以是任意类型的网络。总之,这里强调的是:互连网可以由多个异构网络组成
如果我们只从网络层考虑问题,那么IP数据报就可以想象是在网络层中传送,其传送路径是:H1—>R1—>R2—>R3—>R4—>R5—>H2.有了虚拟互连的概念,我们再讨论在这样的虚拟互联网络上如何寻址
备注:如何理解当IP网上的主机进行通信时,就好像在一个单个网络上通信一样,他们看不见互连的各网络的具体异构细节?
在IP层使用了标准化协议但相互连接的网络可以是异构的。许多异构计算机网络可以通过一个路由器互连。由于参加互连的网络都使用相同的网际协议IP,因此可以把互连以后的网络看成是一个虚拟互联网珞。虚拟互连网络的意思是互连起来的各物理网络的异构性本来就是客观存在的,但是使用IP协议就可以使这些性能各异的网络看起来像是一个统一的网络
网络层四个协议之间层次
- ARP协议负责解析对方主机的MAC地址
- ICMP协议负责报告网络故障
- IGMP协议:Internet组播管理协议
位置高的协议依赖于位置相对低的协议