您的位置:首页 > 其它

IP,MAC,数据链路层,以太网

2013-01-10 15:25 246 查看
这篇博客主要围绕以下几个问题进行展开:

1.IP v.s MAC

2. MAC v.s LAN

3. 以太网技术(IEEE802.3) v.s 点对点技术

学习网络的童鞋们也许会问,为什么有了IP,还需要mac地址,或者是有了mac,还需要ip呢?

首先ip地址是网络层的组成部分,mac地址是数据链路层的组成部分。ip地址是逻辑地址,是可发生变化的。mac地址就是适配器(网卡)的地址,是不变的。做个比喻,mac地址就想我们的身份证号,ip地址像是邮编号,是分层的。在日常生活中,两者是不可缺少的。为什么是不可或缺的呢?这里给出一些理由:

a.网络层不只有ip协议,还有其它的协议。如果适配器只要获取ip地址,那么遇到不同的网络层协议,怎么办?

b.如果适配器是ip地址,那么ip地址需要存储在适配器的ram中,对于一个新的网络环境,适配器都要改变其ip地址。麻烦。

c. 如果适配器没有地址,那么又有一个问题:对于以太网技术而言,一个主机向链路发送了数据,其它局域网的主机都会接收到。都要解析ip,然后和自己ip匹配。浪费时间。如果有mac,只需要比对一下mac就行了。

所以,需要mac地址。

mac地址就是LAN地址,也是物理地址。应该如何理解这句话呢?

首先物理地址,因为mac地址是一成不变的,所以不是逻辑的,易变灵活,是物理的。然后LAN地址。在一个局域网网中通信,那以太网而言,它是采用广播信道。一个主机采用广播的形式传输报文。局域网中的每个主机都可以接收到该报文。需要mac地址进行过滤。所以把mac地址也叫局域网地址。反过来说也可以。利用mac地址来过滤报文,所以把LAN地址叫做mac地址。

以太网技术采用广播方式。因为是广播,所以会遇到多址访问的问题。所谓多址访问,一个信道被多个发送发和接收方共享。不加管理,大家都发送数据,这样一个特定的节点将会接收到许多数据。数据与数据碰撞。通常,在发生碰撞时,接受节点不能获得有意义的任何数据。碰撞帧的信号缠在一起,无法解开。所以需要一种规则来约束大家,不能想发送数据就发送数据,主要存在以下3种方式:

a.信道划分协议

可以将信道按时间片进行划分。如果该信道有n个负载,将单位时间划分为n个时间片。这样每个负载在一个特定的时间片发送数据;

可以将信道按频率进行划分。如果该信道有n个负载,将信道划分为n个带宽,每个带宽是原信道带宽的1/n就可以了;

以上两种方法有它们的确定。现在有一种技术是码分多址技术。成功解决了这个问题。它同样是信道划分的一种。

b.随机访问协议

这里随机访问有3种方法:时隙ALOHA,纯ALOHA和载波监听多址访问(CSMA)。因为以太网技术采用了CSMA/CD(带冲突检测的载波监听多址访问技术),这里对CSMA进行介绍。

什么是载波监听多址访问技术?什么又是带冲突检测的载波监听多址访问技术?

载波监听多址访问技术核心是:在一个节点发送帧之前,先监听链路上是否有数据正在传输。如果有,等待。如果没有,发送数据。这一步是载波监听。在发送数据的过程中,同样监听链路,如果发生冲突,终止帧传输。这一步是冲突检测。在节点试图重传之前,网卡会试图等待一段时间,然后传输数据。

在IEEE802.11(wi-fi)无线局域网中,它使用的技术是带有冲突避免的载波监听多址访问技术(csma/ca)。袁老师在课堂上详细讲述了为什么无线局域网不能使用csma/cd,而是使用csma/ca。

c.轮流发送协议

轮流发送是比较简单的。这里给出令牌的方式。对共享链路的主机进行编号1,2,3,4,...,n。有一令牌可以从1传给2,2传给3,...,n传给1.只有拿到令牌的主机可以拥有该链路。如果令牌传到了4手中,4没有要发送的数据,就将令牌传递给5.4有数据发送,发送数据,然后将令牌传递给5.这样循环下去。当然,这是有问题的。

其实作者有一个问题:以太网为什么不使用信道划分协议下的码分多址技术呢?它的效率是非常高的。

以上讲述的链路层的知识都是广播信道。也许对于一个大楼,大家组成一个局域网,然后通过一个路由器,连接到互联网,我们可以上网了。但是对于一个普通的家庭用户(拨号上网)呢?它是将自己的拨号调制解调器直接连接到isp的路由器的呀。ow,普通家庭用户不能上网了。这是多么悲惨。还好存在点对点链路协议。

在链路信道上,还存在一种点对点信道。大家要明确以太网是有线局域网,而点对点知识单纯的链路层协议。

下面讲述点对点信道(它不再用于局域网)。在讲该协议之前,大家要意识到这个协议是非常重要的。没有它,我们自己的家庭就不能拨号上网了。

点对点链路协议,顾名思义,就是链路两端是接收方和发送方。它们直接传输数据。例如拨号调制解调器到isp路由器链路,路由器与路由器链路等。想一想,既然是点对点,一定是建立连接,然后发送数据,最后拆除连接。当然,任何一个链路协议一定有组帧的功能,PPP也不例外。下面图展示了PPP的一个应用:



在家拨号拨号上网使用了该技术。想想也是,拨号上网似乎不存在局域网的概念。大家都是想电信或移动等网络提供商交钱,通过自己本地的调制解调器,电话线传输到isp的路由器的调制解调器就可以了。

写到这里,发现一个有趣的问题,就是自己家的pc机访问一个远程的服务器,中间需要很多跳。自己家通过拨号上网,而目标服务器在一个局域网中。这样在通信过程中经过了多种不同的链路层协议。并且不同的链路协议提供不同的服务,提供不同的组帧方式等等。很有意思。

在最后,顺便提一下,以上内容主要参考了《计算机网络·自顶向下方法与Internet特色》中文版这本书。这本书很值得学网络的童鞋们一读,中文版翻译的也非常优秀。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: