IP地址与MAC地址的区别

相信很多人都对这两个地址有所迷惑,为啥要有两个地址呢?一个行不行?下面是些个人的想法,欢迎讨论。

IP地址和MAC地址

本科的时候老师讲到这两个地址的时候说过这样一句话:IP地址就像家里的门牌号,MAC地址就像你的身份证号,只知道MAC地址是无法知道你在什么位置的,除非是有个超大功率的扩音器,世界上所有人都能听到:*你在哪?然后你再用着一个扩音器喊:我在这。然后通信才能这样进行。而IP地址呢?不管你人去了哪?总会有个邮件地址,比如北京市海淀区闵庄路87号一样,很容易就会定位到你的位置。
这样理解起来很清楚,但是我们还是要深入的对这两个地址探讨一下。

MAC地址是什么

首先,说明一下MAC地址是啥?MAC地址是MAC(Media Access Control)协议所使用的地址,最早是在以太网中使用的,后来在IEEE中定义的802协议中被广泛使用,但也不是全部。因此,MAC地址只在802协议的网络中才有,MAC协议是数据链路层的子层,并不能说MAC地址就是数据链路层地址。什么是802协议,就是IEEE定义的一些协议,常见的由802.3(以太网)802.11(无线局域网)等等。那难道还有其他类型的吗?当然!比如移动蜂窝网络、ATM网络、IBM开发的SAN网络等等,这些都是没有MAC地址的。

所以,这也就解释了为啥有了IP,IP是网络层的地址,而网络层的出现目的之一就是屏蔽底层硬件的差异化,也就是在LAN上,到底用什么样的方式来找到目标主机并发送消息,IP是不管的。

所以,这个问题也变得容易回答了,可不可以没有MAC地址,答案是可以的。只要你能有种方式可以准确无误的将数据传送给目标主机即可。由于现在LAN中以太网占据了统治地位,所以MAC地址也相应的水涨船高了。

IP地址是什么

上面提到了IP地址的一个用途是屏蔽底层的差异化,实际上却远不止如此,IP地址包含两部分,一部分是网络号,一部分是主机号。对于中间路由器而言,并不关心它的主机号,而只关注网络号,在路由表中有如下对应<网络号,输出端口>(路由表由路由算法生成),然后转发。路由通过一些算法,如距离矢量协议和链路状态协议来更新路由表,这些在协议通过在路由器之间交换信息,使得路由器对整个网络拓扑有个清楚的认识。IP协议还有很多其他方面,比如拥塞控制(当路由器检测到拥塞时,可以发送源端抑制的ICMP分组,请求降低发送速度,不过现在更多在传输层做)、分段等方面。

猜你喜欢

转载自blog.csdn.net/u010358168/article/details/82631833