计算机网络(三)数据链路层

一、数据链路层的信道类型

点对点信道:这种信道一般使用一对一的点对点通信方式。

广播信道:这种信道使用一对多的广播方式,因此过程比较复杂。广播新信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。

二、链路与数据链路

链路:是一条点到点的物理线路段,中间没有任何其他的交换点。一条链路只是一条通路的一个组成部分。

数据链路:除了物理线路之外,还必须有通信协议来控制这些数据的传输。若实现这些协议的硬件和软件加到链路上,就构成了数据链路。

最常用的方法:使用适配器(网卡)来实现这些协议的硬件和软件。

一般适配器都包括了数据链路层和物理层两层的功能。

数据链路层传送的是帧,IP数据报加上校验和+头部+尾部 =数据帧

 

 三、数据链路层的三个基本问题

(1)封装成帧 :在一段数据的前后分别添加首部和尾部,然后构成了一个帧。确定帧的界限。首部和尾部的一个重要作用就是进行帧定界

(2)透明传输 

 (3)差错控制

 

模2除法:每一位除的结果不影响其它位,即不向上一位借位,所以实际上就是异或。在循环冗余校验码(CRC)的计算中有应用到模2除法。

如何确定模2除法的在商:CRC运算中,总能保证除数的首位为1,则模2除法运算的商是由余数首位与除数首位的模2除法运算结果确定。因为除数首位总是1,按照模2 除法运算法则,那么余数首位是1就商1,是0就商0。

帧检验序列FCS:在数据后面添加上的冗余码称为帧检验序列FCS,循环冗余检验CRC帧检验序列FCS并不等同。

CRC是一种常用的检错方法,而FCS是添加在数据后面的冗余码。

FCS可以用CRC这种方法得出,但CRC并非用来获得FCS的唯一方法。

接收端对接收到的每一帧进行CRC检验

小结:CRC差错检测技术

仅适用循环冗余检验CRC差错检验技术只能做到无差错接受(accept).

无差错接受:凡是接受的帧(即不包括抛弃的帧),我们都能以接近1的概率认为帧在传输过程中没有产生差错。

要做到可靠传输(即发送什么,接受什么):就必须加上重传确认机制。考虑:帧重复、帧丢失,帧乱序的情况。

CRC是一种无比特差错,而不是无传输差错的检测机制

四、点对点通信数据链路层PPP协议(广域网使用该协议)

全世界使用最多的链路层协议是点对点协议(PPP ,Piont-toPoint Protocol)

用户使用拨号电话线介入因特网时,一般使用PPP协议。

1.PPP协议的组成:

分为三个部分:

(1)数据链路层协议可以用于异步串行或者同步串行介质

(2)它使用LCP(链路控制协议)建立数据并维护数据链路层连接。(身份验证功能)

(3)网络控制协议(NCP)允许在点到点连接上使用多种网络层协议,如图所示:

PPP协议不使用序号和确认机制的思考

在数据链路层出现差错的概率不大时,使用较简单的PPP协议较为合理。

在因特网环境下,PPP的信息字段放入的数据是IP数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。

帧检验序列FCS字段可保证无差错接受。

PPP协议的工作状态:

五、使用广播信道的数据链路层的CSMA/CD协议(局域网使用)

总线上每一个工作的计算机都能检测到B发送的数据信号。由于只有计算机D的地址与数据帧首部写入的地址一致,因此只有D才接受这个数据帧。

其他所有计算机(A、C、E)都检测不是发送给它们的数据帧,因此具有广播特性的总线上实现了一对一的通信。

载波监听多点接入/碰撞检测(CSMA/CD)   以太网使用CSMA/CD:

多点接入:许多计算机以多点接入的方式连接在一根总线上。

载波监听:指的是每一个站点在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。即利用电子技术检测总线上有没有其他计算机发送的数据信号。

碰撞检测:就是计算机发送数据边检测信道上信号的电压大小。

(1)当几个站点同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互不叠加)。

(2)当一个站检测到信号电压摆动超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。

(3)所谓的碰撞就是发生了冲突。因此碰撞检测也称为冲突检测。

检测到碰撞后

(1)在发生碰撞时,总线上传输信号产生了严重的失真,无法从中恢复出有用的信息来。

(2)每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要停止发送,免得继续浪费网络资源,然后等待一段随机事件后再次发送。

重要特性

使用CSMA/CD协议的以太网不能使用全双工通信而只能进行双向交替通信(半双工通信)

每个站发送数据之后的一小段时间内,存在遭遇碰撞的可能性。这种发送的不确定性,使得整个以太网的平均通信量远小于以太网的最高数据率。

二进制指数类型退避算法:

 六、以太网

以太网提供的服务

以太网提供的服务是不可靠的交付,即尽最大努力的交付。

当接受站收到有差错的数据帧时,就丢弃帧,其他什么也不做。差错的纠正由高层来决定。

如果高层发现丢失一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当做一个新的数据帧来发送。

以太网的拓扑结构

传统以太网最初使用的粗的同轴电缆,后来演进到使用比较便宜的细的同轴电缆,最后发展为使用更便宜和灵活的双绞线。不用电缆而使用无屏蔽双绞线。每个站需要用两对双绞线,分别用于发送和接收。

这种以太网采用星型拓扑,在星型的中心则增加了一种可靠性非常高的设备——集线器(HUB,放大信号的作用,最多100m)

集线器的特点

集线器是使用电子器件来模拟实际电缆线的工作,因此整个系统仍然像一个传统的以太网那样。集线器使用了大规模集成电路芯片,因此这样的硬件设备的可靠性已经大大提高了。

使用集线器的以太网在逻辑上仍然是一个总网线,各工作站使用的还是CSMA/CD协议,并共享逻辑上的总线。集线器很像一个多接口的转发器,工作在物理层。

以太网标准

信道利用率

(1)以太网信道被占用的情况:

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

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

一个帧从开始发送,经可能发生的碰撞后,将再次重传数次,到发送成功且信道转为空闲(即在经过时间τ使得信道上无信号在传播)时为止,是发送一帧所需要的平均时间。

对以太网参数的要求

(1)当数据率一定时,以太网的连线的长度收到限制,否则τ的数值会太大

(2)以太网的帧长不能短,否则T0的值会太小,使a值太大。

信道利用率的最大值

 MAC层的硬件地址(MAC地址)

在局域网中,硬件地址又称为物理地址,或者MAC地址。

MAC地址的修改:修改windows的注册表;使用设定的MAC地址,而硬件的MAC地址并没有修改。

适配器检查MAC地址:

适配器从网络上每收到一个MAC帧就首先用硬件检查MAC帧中的MC地址。

如果是发生在本站的帧则手下,然后再进行其它的处理。

否则就将此帧丢弃,不在进行其他的处理。

发送本站的帧包括以下三种帧:单播帧(一对一) 广播帧(一对全体) 多播帧(一对多)

以太网的帧最短是64个字节,这里目标地址、源地址、类型以及FCS一共18个字节,所以从网络层过来的数据包,只需要46个字节

 

无效的MAC帧

(1)帧的长度不是整数字节

(2)用收到的帧检验序列FCS查出差错;

(3)数据字段的长度不在46~1500字节之间;

(4)有效的MAC帧长度为64~1518字节之间;

(5)对于检查出的无效MAC帧就简单的丢弃。以太网不负责重传丢弃的帧。

帧间最小间隔

帧间最小间隔为9.6μs ,相当于96bit的发送时间;

一个站在检测到总线开始空闲后,还要等待9.6μs才能再次发送数据。

作用:为了使刚刚收到数据帧的站所接收的缓存来得及清理,做好接收下一帧的准备。

扩展以太网

(1)从物理层考虑

1.距离扩展  100M   光纤

2.集线器级联

用集线器扩展局域网优点:

是原来属于不同碰撞域的局域网上的计算机能够进行碰撞域的通信。扩大了局域网覆盖的地理范围。

用集线器扩展局域网缺点:碰撞域增大了,但总的吞吐量并未提高。如果不同的碰撞域使用不同的数据率,那么就不能用集线器将互联起来。

(2)在数据链路层进行考虑(网桥,后面演化成存储转发的交换机)

在数据链路层扩展局域网使用网桥

网桥工作在数据链路层,它根据MAC帧的目的地址对收到的帧进行转发。

网桥具有过滤功帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的MAC地址,然后再确定将该帧转发到哪一个接口。

网桥设备(交换机):端口宽带独享,安全   基于MAC地址转发, 通过学习构建MAC地址表

(3)透明网桥

透明:指的是局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说是看不见的。透明网桥是一种即插即用设备,其标准是IEEE 802.1D。

透明网桥——生成树算法

为了避免产生转发的帧在网络中不断地兜圈子。

环路检测技术:生成树算法和源路由

生成树算法:每个网桥必须在1~10秒内相互交换BPDU(Bridge Protocol Unit)包,从而判断哪些端口使用,那些不使用,以便于消除环路。一旦发生故事,则自动切换路线,利用哪些没有被使用的端口继续进行传输。

源路由:可以判断发送数据的源地址是通过哪个网桥实现传输,并将帧写入RIF(Routing  Information Field),网桥则根据这个RIF信息发送帧给目标地址。

虚拟局域网:(VLAN和LAN)

交换机的使用使得VLAN的创建成为可能。

虚拟局域网VLAN是由一些局域网网段构成的与物理位置无关的逻辑组。只是局域网给用户提供的一种服务,而并不是一种新型局域网。

(1)这些网段具有某些共同的需求。

(2)每一个VLAN的帧都是一个明确的标识符,指明发送这个帧的工作站是属于哪一个VLAN。

如果图示,将一个交换机划分了两个VLAN,你可以想象成交换机逻辑上分成了两个交换机,这两个不同的VLAN之间通信必须通过路由器转发,同时这两个VLAN的IP地址必须不同的网段

注意:交换机组建的网络,如果需要多个VLAN通过的链路就需要配置为干道链路。如果链路上只需要单一VLAN的数据通过就可以配置为访问链路!!!!

下图 每个部门接在不同的交换机。

//将  Eth8/1 划分到vlan2
Switch#show vlan

VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active    Fa0/1, Fa1/1, Fa2/1, Fa3/1
                                                Fa4/1, Fa5/1, Eth6/1, Eth7/1
                                                Eth8/1
1002 fddi-default                     active    
1003 token-ring-default               active    
1004 fddinet-default                  active    
1005 trnet-default                    active    

VLAN Type  SAID       MTU   Parent RingNo BridgeNo Stp  BrdgMode Trans1 Trans2
---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------
1    enet  100001     1500  -      -      -        -    -        0      0
1002 fddi  101002     1500  -      -      -        -    -        0      0   
1003 tr    101003     1500  -      -      -        -    -        0      0   
1004 fdnet 101004     1500  -      -      -        ieee -        0      0   
1005 trnet 101005     1500  -      -      -        ibm  -        0      0   


Switch#config t
Switch(config-if-range)#vlan 2
Switch(config-if-range)#interface range ethernet 8/1 
Switch(config-if-range)#switchport access vlan 2

Switch(config-if-range)#exit 
Switch(config)#exit 
Switch#show vlan 

VLAN Name                             Status    Ports
---- -------------------------------- --------- -------------------------------
1    default                          active    Fa0/1, Fa1/1, Fa2/1, Fa3/1
                                                Fa4/1, Fa5/1, Eth6/1, Eth7/1
2    VLAN0002                         active    Eth8/1
1002 fddi-default                     active    
1003 token-ring-default               active    
1004 fddinet-default                  active    
1005 trnet-default                    active    

ISL标记

ISL干道使VLAN能够跨骨干。

通过特定集成电路来实现;不需要再客户端计算机上采用配置,客户机不能够看到ISL头;在交换机之间,路由器和交换机,交换机和支持ISL网卡的服务器之间配置。

100BASE-T以太网——高速以太网:

速率到达或者超过100Mb/s的以太网称为高速以太网。

100BASE-T特点:

(1)可在全双工方式下工作而无冲突发生。因此,不使用CSMA/CD协议。MAC帧格式仍然是802.3标准规定的

注意:100m交换机直接连接计算机时,是全双工的,如果是连接了集线器(hub),即使这个hub只连接了一台计算机,交换机到hub的网路也无法全双工,此时使用CSMA/CD协议;

保持最短帧长不变,但将一个网段的最大电缆长度减小到100m.

帧时间间隔从原来的9.6μs改为现在的0.96μs.

吉比特以太网:

允许在1GB/S下全双工和半双工两种方式工作。

使用802.3协议规定的帧格式。

在半双工方式下使用CSMA/CD协议(全双工方式不需要使用CSMA/CD协议)。

与10BASE-T和100BASE-T技术向后兼容。

当吉比特以太网工作在全双工的方式时,即通信双方可同时进行进行发送和接受数据,不使用载波延伸分组突发

使用高速以太网进行宽带接入:

以太网已成功把速率提高到1~10GB/S,所覆盖的地理范围也扩展到了局域网和广域网,因此现在人们正在尝试使用以太网进行宽带接入。

以太网接入重要特点:是它可提供双向的宽带通信,并且可根据用户对宽带的需求灵活地进行宽带升级。

采用以太网接入可实现端到端的以太网传输,中间不需要再进行帧格式的转换(调制解调器进行转化),这就提高了数据传输效率和降低运输成本。

猜你喜欢

转载自blog.csdn.net/qq_27862335/article/details/86106768