MAC地址到底有什么用

最近因为研究P2P内容分发,想起LVS的虚拟服务器思想,进而想到LVS所使用的三种工作方式中的一种:直接路由。在网上搜了一天,才搞明白什么是路由,并专门写了一篇日志把思路记了下来。

总的来讲,路由是一个被逼无奈的选择。没有人喜欢把路由器这种只能增加网络延时的设备引入到网络里面来。就象没有人喜欢红灯一样,但是,在汽车学会飞以前,这个东西恐怕还要存在很长的一段时间。

自由是有代价的,就象广播也是有代价的一样。让自由存活的手段,是限制自由。让广播存活的手段,是限制广播。

我从来没有在任何网络类教科书中读到过广播在网络中的发展历史(我相信一定有)。但是,我了解到以太网与IP协议栈诞生于同一年,并且以太网的诞生时间在IP协议栈的前面。所以,我才敢作下面的设想。

最初的网络很可能是没有IP协议的,即大家都直接使用MAC地址进行交互。在没有IP地址的情况下,MAC地址作为在网络中唯一标识一台主机的号码,是必须的。之后IP协议的马上提出,很有可能是受又一种新网络的出现的影响,从而产生急于统一的思想。在网上有见过文章说之所以没有使用MAC地址作网络划分,是因为MAC采用了平坦的地址结构。我同意这个观点,但它不是为什么使用IP作网络划分的原因。用IP作网络划分,除了IP地址的结构化原因,更重要的原因,是为了满足统一网络的要求,需要在第二层以上再加上一层即第三层,以在兼容不同类型局域网技术的基础上提供网络的可扩展性与可用性。否则,直接将MAC地址改为使用IP地址就行了。不管在硬件上,还是软件上,这都是非常容易做到的。但是这样做只能解决以太网的问题,并不能解决其他网络的问题。因为当时甚至现在仍然有很多网络并不使用以太网。并且,从另一个角度讲,容许不同网络技术的存在,以及保持它相对于网络结构的独立,一方面可以促进竞争,一方面也是符合分层思想的。而分层思想本身又为IP网络提供了强大的推动能力。

所以说,IP地址的提出实现了下列功能:

1,实现了划分子网的目的,隔离了网络风暴;

2,实现了基于网络结构的地址标识。

3,分离了网络功能层与结构层;

总之,广播风暴迫使进行网络划分。但是因为各种已经存在的网络技术之间的差别太大,无法统一,又考虑到技术与结构分离的好处,所以催生了第三层。

第三层产生以后,广播受到限制,于是又催生了转发技术。其中选路技术为转发技术提供了优化的转发路径。

另外,在第三层地址产生以后,第二层地址其实已经成为一个废物。因为有了第三层地址,网络其实已经可以同时提供广播与单播技术,网络的规模化问题其实也迎刃而解了。事实上,第三层早已经将第二层的下半层吞食得差不多了。

比方说,在一个完全孤立的局域网中,其实本来完全没有第三层的事。但是几乎所有现在的局域网技术,都渗入了第三层的痕迹。ARP,RARP,DHCP,任何一个协议少了IP地址都不可能正常工作。这说明,现在的局域网,已经工作在第三层地址的基础上。

基本上,在现在的网络中,第二层地址已经没有用。

这就是我在电脑前又坐了一个晚上的原因。我本来只是想简单记一下,MAC地址是没有用的。没想到一坐竟然就坐了这么久(同情一下学网络的同学)。我想原因可能是在网上说话确实能使我更谨慎一点。

回到主题。基于第二层地址的功能已经基本上被第三层地址取代这样一个事实,第三层地址其实已经成为第二层地址的别名,而且对一台主机来说,除了离他最近的人,其实已经没有人知道他的真名。正是这个原因,使得第三层交换(或第二层路由、直连路由)成为可能。即在交换机上,其实是有办法同时得到所连主机的两种地址的。从一个ARP应答就可以得到这两个地址。

你可能感兴趣的:(MAC地址到底有什么用)