您的位置:首页 > 理论基础 > 计算机网络

我们一起学网络(三)——数据链路层(以太网)

2013-10-21 09:51 253 查看
没想到突发奇想的开始写博客,但是写起来那么累。。。。计算机网络的内容太多了,一个数据链路分了3次写,这次应该是数据链路层的最后一章了。

我们先来回顾一下,前两个内容讲述的是PPP协议和CSMA/CD协议。广播信道主要是用在局域网,现在的局域网绝大多数都是以太网,随着计算机科学技术的发展,咱们这个以太网越来越强大了,速度越来越快,稳定性越来越好,反正就是各种好就对了。

【基本以太网】

现在的以太网,基本都是 使用集线器的星形拓扑结构 每个站点都用两对双绞线,还是看图吧~~~~~~~(画图好麻烦。。。)

看到了没?所有站点的数据都要发送到集线器上,然后集线器统一发送给其他的所有站点(貌似上一篇说过了?TAT)

基于这种结构的,划时代的,里程碑式的以太网出现了,它就是 【10BASE-T】 10代表10Mb/s的数据率,BASE表示连线上的信号是基带信号,T代表双绞线。这种以太网每个站点到集线器的距离不能超过100m,但是,他依然使以太网中占据了不可动摇的地位。

集线器有一些特点:

(1)由于集线器的以太网在逻辑上还是一个总线网(貌似上次也讲过?),使用的依然是CSMA/CD协议,所以,我们又把10BASE-T以太网叫做 【星型总线】或【盒中总线】

(2)从上面的图我们可以看出,集线器上有很多接口,因此,集线器很想一个多接口的转发器。

(3)集线器工作在物理层,仅仅只转发bit。

再然后,讨论这个【信道利用率】的问题(这个地方我完全抄袭于某书……){

我们假定:

总线上共有 N 个站,每个站发送帧的概率都是 p。

争用期长度为 2t,即端到端传播时延的两倍。检测到碰撞后不发送干扰信号。

帧长为 L (bit),数据发送速率为 C (b/s),因而帧的发送时间为 L/C =T0 (s)。

        


一个帧从开始发送,经碰撞后再重传数次,到发送成功且信道转为空闲(这里考虑最极端的情况,发送站在传输媒体的一端,即再经过时间t使得信道上无信号在传播)时为止,共需平均时间为Tav

我们应当注意到,成功发送一个帧需要占用信道的时间是T0 + t,比这个帧的发送时间要多一个单程端到端时延t。这是因为当一个站发送完最后一个比特时,这个比特还要在以太网上传播。如果这时有其他站发送数据,就必然产生碰撞。因此,必须在T0 +t以后才允许其他站发送数据。
要提高以太网的信道利用率,就必须减小t与T0之比。在以太网中定义了参数a,它是以太网单程端到端时延t与帧的发送时间T0之比:
a=t/T0
当a→0时,表示只要一发生碰撞,就立即可以检测出来(其实我这里没看太懂啊,按照我的理解,就是 t 越小,或者T0越大,发送碰撞以后受影响的部分就短),并立即停止发送,因而信道资源不会被浪费。反之,参数a越大,表明争用期所占的比例增大,这就使得信道利用率降低。因此,以太网的参数a的值应当尽可能小些
从上式可看出,这就要求分子t的数值要小些,分母T0的数值要大些。这就是说,当数据传输速率一定时,以太网的连线的长度受到限制(否则t的数值会太大),同时以太网的帧长不能太短(否则T0的值会太小)。
现在考虑一种理想化的情况。假定以太网上的各站发送数据都不会产生碰撞(这显然已经不是CSMA/CD而是需要使用一种特殊的调度方法),并且能够非常有效地利用网络的传输资源,即总线一旦空闲就有某一个站立即发送数据。这样,发送一帧占用线路的时间是T0 +t,而帧本身的发送时间是T0。于是我们可计算出极限信道利用率Smax为:
Smax=T0/(T0+t)=1/(1+a)
 该式指出了参数a远小于1才能得到尽可能高的极限信道利用率。反之,若参数a远大于1,则极限信道利用率就远小于1,而这时实际的信道利用率就更小了。
 
100BASE-T以太网的新标准
100BASE-T以太网的新标准改动了原10Mb/s以太网的某些规定。这里最主要的原因是要在数据发送速率提高时使参数a仍保持不变(或保持为较小的数值)。
a=t/T0=t/(L/C)=tC/L
可以看出,当数据率C提高10倍时,为了保持参数a不变,可以将帧长L(bit)也增长到10倍,也可以将网络电缆长度(因而使t)减小到原有数值的十分之一。
在100Mb/s的以太网中采用的方法是保持最短帧长不变,但把一个网段的最大电缆长度减少到100m。但最短帧长仍为64字节,即512比特。因此100Mb/s以太网的争用期是5.12us,帧间最小间隔现在是0.96us,都是10Mb/s以太网的1/10。
}
【MAC层】

MAC这个东西,前面已经讲过了,现在我们再详细说一次,可见其重要性。

MAC地址就是物理地址,又叫硬件地址。固化在适配器(网卡)的ROM中,是48位的全球地址,每一个网卡的MAC地址都是全球唯一的。

MAC帧格式:

                                           


MAC帧看图就一目了然了,2字节的类型 那个地方标志的是上一层使用什么协议,比如说0x0800代表上层使用的是IP数据报。

数据那个地方,有一点要注意,就是数据的长度范围在46~1500字节之间。

最后呢,就是前面多出来的8个字节了,为什么会多8个字节呢?

当一个站刚刚开始接收MAC帧的时候,由于适配器时钟尚未与到达的比特流同步,前面的几位MAC帧就可能接收不到。所以MAC帧多了8位(由硬件生成)。这8位的前7位叫做前同步码,没啥用,就是为了让接收方调整时钟频率的,8位的最后一位,叫帧开始定界符,就说,定义为10101011,就说,当遇到最后两个11的时候,就是在告诉接收方,MAC帧马上就来了,做好接收准备。

 

【扩展的以太网】

随着科技的进步,社会的发展…………之类的。人们觉得以太网范围太小了,不够用啊,然后我们就要把它覆盖范围扩展大。扩展分两步:

(1)物理层扩展(2)数据链路层扩展

【物理层扩展】

前面说了,10BASE-T的范围一般只有100m,如果我们有两个集线器,咱用光纤把集线器连接起来会怎样?

所以,物理扩展以太网,咱就可以把很多个星型以太网集合成一个更大的星型以太网。

                                         

 

(不会用visio,大家将就看吧。。。。。)这样的布局增大了以太网的范围。

 

【数据链路层扩展】

数据链路层拓展就简单了,就是用一个叫【网桥】的东西。

                                         


懒得画,网上找了个图。 网桥就是这样的,把每个以太网称为一个【网段】,网桥就是用来连接各个网段的。

网桥依靠转发表来转发帧,转发表是通过网桥的【自学习】得到的。自学习就是每个经过网桥发送的站都经过记录(记录源地址和进入网桥的端口),然后……其实这个不难,要了解自学习的,请百度【自学习算法】。

 

网桥有几个优点:(1)过滤通信量,增大吞吐量

(2)扩大了物理范围

(3)提高了可靠性

(4)可互连不同物理层,不同MAC子层和不同速率的以太网

当然,网桥只适用于用户数不多的以太网,如果用户太多,就容易形成【广播风暴】

 

第二种扩展方式是【交换机】

多接口的网桥——以太网交换机

交换机和集线器区别在哪?

集线器特点:这种局域网在逻辑上仍然是一个总线网,局域网上的各主机共享逻辑上的总线,使用的还是CSMA/CD协议(别忘了CSMA/CD协议是半双工方式工作的)。网络中各主机必须竞争传输媒体的控制,同一时刻至多只允许一个主机发送数据

交换机特点:交换机的每个接口都直接与一个主机或另一个集线器相连,并且一般以全双工方式工作。

用以太网交换机的话就可以把各种速率的以太网就都连到一起。并且以太网交换机可以轻松的实现【虚拟局域网VLAN】

【虚拟局域网】是由一些局域网网段构成的与物理位置无关的逻辑组,这些网段都有某些共同的需求。实现虚拟局域网的方式就是在以太网帧格式中插入一个4字节的标识符。

 

【高速以太网】

关于高速以太网,速率达到100Mb/s的以太网就是高速以太网。现在又发展处了速度可达1Gb/s的吉比特以太网。

其他貌似也没什么好说的了。

最后提一下PPPOE吧,这个协议是把PPP协议中的PPP帧封装到以太网中传输。意思是在以太网上运行PPP。

 

数据链路层就写那么多吧,待我融会贯通IP层又来分享
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: