但是由于交换机本身没有 MAC 地址,所以数量超过一定时,每台交换机维护的 MAC 地址表将会变得无法维护——事实上也无法存储这么大数据的 MAC 地址表。
所以我们需要一种拥有独立 MAC 地址,帮助我们做转发的设备——路由器由此诞生。
路由器的每一个端口,都有一个独立的 MAC 地址。
这样就有效减少了每台设备需要维护的 MAC 地址表的数量,但同时随着网络的扩展,新的问题又出现了。
上面说到,MAC 地址就像我们的身份证一样,虽然具有唯一性,但就像人和身份证的关系一样,小范围内,我能轻易的找到你,一旦范围扩大 (或者说环境变复杂),身份证这样的信息似乎对于「快速找到你」这件事来说,帮助很小。
我们需要另外一种信息,来帮助定位——这就是 IP 地址,类似于你写在快递单上的地址一样,它能帮助我们在网络中定位到你的终端。
为了适应这一改变,我们发送的数据需要添加上更多的信息:
同样的,路由器也对应需要额外的记录 IP 地址与 MAC 地址的对应关系:
IP 地址的发明把纷繁复杂的网络世界 (主要是不同网络硬件设备) 统一规划到了一个整齐的网络中。
由于 IP 地址是跟地域挂钩的,所以在网络中找到你的设备就容易多了 (就像你买淘宝需要先填写自己的收货地址一样),我们也能够使用路由器搭建起更大的网络:
互联网上面的网络非常接近我们所谓的 Internet,但是我们缺少一些东西。
我们不太可能在世界的每个地方之间都铺设上电缆,事实上,电话基础设施已经先于网络基础设施连接起了全世界,这是我们需要完美的电线。
为了将我们的网络连接到电话基础设施,我们需要一种称为调制解调器 (俗称"猫") 的特殊设备,这个设备可以将来自我们网络的信息转换为可由电话基础架构管理的信息,反之亦然。
(相信不少小伙伴都还记得需要「拨号上网」的日子,这就是把网络接入电话基础设施的过程,现在已经优化了)
到此,我们的网络已经连上了电话基础架构。
但我们的目的是把消息发送给我们要到达的其他网络——目前为止,这一整套网络都是基于自己的目的搭建的——为此,我们还需要把网络连接到 Internet 服务提供商(ISP)。
ISP 是管理一些特殊路由器的公司,这些路由器都链接在一起,并且还可以访问其他 ISP 的路由器。
(中国的 ISP 服务商耳熟能详:电信、网通、移动、联通、铁通等。)
因此,来自我们网络的消息将通过这么多 ISP 网络搭建的基础网络架构来传送到目标网络——互联网的基础结构也由这个网络组成。
现在经过一系列的发展,已经形成了三层 ISP 结构的因特网了:
由此,整个互联网基础架构就搭设好了。(实际更复杂)
寻找目标终端如果要把消息发送到计算机,则必须要指定 IP 地址,它是由一系列由点分割的四个数字组成,例如:192.168.2.10。
这对于计算机来说完全是可以的,但我们人类却很难记住这种地址。
于是我们给 IP 地址加上了一个易于理解的名字,即 域名 domain name。
例如 google.com 是作为 IP 地址 173.194.121.32 的域名使用,访问这两个地址是访问的同一服务器,这也是我们访问 Internet 的简便方法。
虽然我们通常使用域名来访问网站,但 Internet 和 Web 却并不等同,网络是基础设施,在互联网之上还有许多不同于 Web 的其他服务,例如电子邮件。
这两者的转换需要互联网的域名系统服务来支撑,我们会在后续详细说到。
另外我们可以给微信好友发送消息,也是因为我们通过微信 App 连入了腾讯的服务器,以此为桥梁互相知道了 IP 地址。
总之,我们通信必须指定 IP 地址。
后记本篇文章,我们从最初两台互连的计算机一步一步发展到搭建起了整个互联网的基础通信架构:
通过交换机、路由器、调制解调器、ISP、跨洋电缆物理桥接;
通过 MAC 地址、IP 地址的发展让整个网络的网络设备逻辑互连;
至少对于这个复杂的 Internet 黑盒有了一定的了解和认识。