以太网发明出来的时候,IP还没有垄断网络层协议,那时还有Novell网的IPX/SPX协议、DEC公司开发的CLNP网络协议,以及Apple公司开发的Apple Talk协议,以太网需要支持这所有的网络层协议,如果没有MAC地址,势必需要网卡解读网络层协议头的地址信息,而每一种网络层的地址都大相径庭,所以增加了以太网卡的实现复杂度。
而网卡有了MAC地址,可以不依赖于任何网络层协议,可以独立判断一个以太帧是否接收(依据MAC地址匹配),这样大大简化了网卡的实现。
即使以后出现更多的网络层协议,网卡也无需太多的改变,这就是网络分层的精髓,一层的内部实现无需知晓其上层、或下层协议字段。
1、去除MAC之后不再有链路层,包最多只能经过一跳,因为没有地方存储路径中间节点信息。
2、去除MAC之后用IP作为链路层标识符,实现也是可行的,但是分层不清晰,路由会很麻烦。