计算机网络之链路层

两台主机之间,数据报跨越一系列通信链路传输,一些是有线链路一些是无线链路,从源主机起,通过一些了分组交换机在目的主机结束。在链路层中有两种不同的链路层信道,

  • 第一种是广播信道,这种信道用于有线局域网、卫星网、和混合光纤同轴电缆接入网中的主机。因为许多主机与相同的广播信道连接,所以需要所谓的媒体访问协议来协调帧传输。在一些情况下可以使用中心控制器来协调传输。
  • 第二种是链路层信道是点对点通信链路(PPP),在长距离链路连接的两台路由器之间,或用户办公室计算机与他们所连接的邻近以太网交换机之间等场合。适用范围从经电话线拨号服务到经光纤链路的高速点到点帧传输。

通过学习链路层,我们将知道链路层的基本服务是将网络层的数据报从一个节点(主机、交换机、路由器、WiFi接入点)移动到另一个节点。在通过链路向相邻节点传输之前,所有链路层写都是通过将网络层数据报封装成帧。然而,除了这个共同的成帧功能之外,我们知道不同的链路层协议提供截然不同的链路接入、交付 和传输服务。造成这些差异的部分原因是因为链路层协议必须工作在很多种链路类型上。一个简单的点对点链路具有单个发送方和接收方,并通过单一的链路通信。一个多路访问链路在许多发送方和接收方之间共享。因此,对对多路访问信道的链路层协议有一个协调链路接入的协议(多路访问协议)。在MPLS情况下,连接两个相邻节点的链路,其本身就是一个网络

一、概述

节点:运行链路层协议的任何设备称为节点,包括:主机、路由器、交换机、WiFi接入点。
链路:沿着通信路径连接相邻节点的通信信道称为链路。

举个:

为了透彻理解链路层以及它是如何与网络层关联的,我们考虑一个交通运输的类比例子。假如一个旅行社计划未游客开辟从美国新泽西州的普林斯顿到瑞士洛桑的旅游路线。假定该旅游社认为对于游客而言最为便利的方案是:从普林斯顿乘豪华大轿车到JFK机场,然后乘飞机从JFK机场去日内瓦机场,最后乘火车从日内瓦机场到达洛桑火车站。一旦该旅行社做了这3项规定,普林斯顿豪华大轿车公司将负责将游客从普林斯顿带到JFK,航空公司将负责游客从JFK到达日内瓦,瑞士火车服务将负责将游客从日内瓦机场带到洛桑。该旅程中3段中的每一段都在两个相邻的地点之间是直达的。注意这三段运输是由不同的公司管理的,使用了完全不同的运输方式。尽管运输方式不同,但他们都提供了将游客从一个地点运输到相邻地点的基本服务。在这个运输类比中,一个游客好比一个数据报,每个运输区段好比一条链路,每种运输方式好比一种链路层协议,而旅行社好比一个路由选择协议。

1.链路层提供的服务

  • 成帧:在网络层数据报经链路传输之前,几乎所有的链路层协议都要将其用链路层封装成帧。一个帧由一个数据字段和若干首部字段组成,网络层数据报就在数据字段中。
  • 链路接入:媒体访问控制(MAC)协议规定了帧在链路上传输规则,对于链路的一端仅有一个发送方和链路的另一端仅有一个接收方的点对点链路,MAC协议比较简单,即只要链路空闲,发送方都可以发送帧。MAC也可以协调广播中的多个节点的帧传输。
  • 可靠交付:当链路层协议提供可靠交付服务时,它保证无差错地经链路层移动每个网络层数据报。与运输层协议(TCP)可靠交付相比,链路层的可靠交付服务通常是通过却和重传取得的。通常用于易于产生高差错率的链路(无线),其目的是纠正一个差错而不是重传数据。对于低比特差错的链路,包括光纤、同轴电缆等链路层的可靠交付会被认为是一种不必的开销。因此许多链路层协议不提供可靠交付服务。
  • 差错检测和纠正:当帧中一个比特作为1发送时,接收方节点中可能因为链路层硬件不正确地将其判断为0,这种比特差错是由信号衰减和电磁噪声导致的。通过发送节点在帧中包括差错检测比特,让接收节点进行差错检查。链路层差错检查通常由硬件实现。接收方不仅可以检测出比特差错,还可以检测出出错的位置

2.链路层在何处实现
下图显示了一个典型的主机体系结构。链路层主体部分是在网络层适配器中实现的,网络适配器有时也称为网络接口卡。位于网络适配器核心的是链路层控制器。该控制器一般是实现许多链路层服务的专用芯片。
计算机网络之链路层_第1张图片
在发送端,控制器取的了由协议栈较高层生成并存储在主机存储中的数据报,在链路层帧中封装该数据报,然后遵循链路接入协议将该帧传进通信链路中,在接收端,控制器接收了整个镇,抽取出网络层数据报没如果链路层执行差错检测,需要发送控制器在该帧的首部设置差错检测比特,由控制器执行差错检测。

图中显示了主机总线和连接的网络适配器,尽管大部分链路层是在硬件中实现的,但是部分链路层是运行于主机CPU上软件实现的。如组装链路层寻址信息和激活控制器硬件。在接收端,链路层软件响应控制器中断。处理差错条件和将数据报上报给网络层。

二、封装成帧

封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部包含许多控制信息,他们有一个重要的作用:帧定界。
计算机网络之链路层_第2张图片
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。
组帧的四种方法:
1:字符计数法
帧首部使用一个计数字段(第一个字节,八位)来标明帧内的字符数。
计算机网络之链路层_第3张图片
2:字符填充法
在帧的首部和尾部添加两个特殊字符,标志着帧的开始和结束。
在这里插入图片描述
3:零比特填充法
在帧的首部和尾部添加连个01111110,标志着帧的开始和结束。
计算机网络之链路层_第4张图片

4:违规编码法
计算机网络之链路层_第5张图片

三、 差错检测和技术纠正

比特级差错检测和纠正:从一个节点发送到另一个物理上连接的邻近节点的链路层帧中的比特损伤进行检测和纠正。要保护的数据不仅包括从网络层传输下来的数据报,而且包括链路帧首部中的链路级的寻址信息、序号和其他字段。差错检测和纠正技术使接收方有时但并不总是检测出已经出现的比特差错,即总有未检测出的比特差错。因此我们需要一个差错检测方案来减小这种事件的概率

1.奇偶校验
最简单的差错检测,在偶校验方案中,假设要发送多个比特数据,发送方只需要包含一个附加的比特,选择他的值,是的d+1比特中的1总数是偶数,对于奇校验方案,选择校验比特值有奇数个1。
计算机网络之链路层_第6张图片
但是如果分组中多个比特同时出错的话简单的奇偶校验就会有50%的概率未检测出。那么需要将奇偶校验升级一下:二维奇偶校验。
二维奇偶校验:将d个比特分为i行j列,如果出现单个比特比特差错,这时候包含比特的行和列都会出现差错,这时候接收方不仅可以检测出比特差错,还可以利用行和列来找到实际位置并纠正。

2.检验和方法
在检验和技术中,d比特数据被作为一个k比特整数的序列处理。一个简单检验和方法就是将这k比特整数加起来,并且用得到的和作为差错检测比特。因特网检验和就是基于这种方法的。即数据的字节作为16比特的整数对待并求和。这和的反码形成了携带在报文段首部的因特网检验和。如之前讨论过的那样,接收方通过对接收数据(包括检验和)的和取反码,并且检测其结果是否全1比特来检测校验和。如果这些比特中有任何比特是0,就可以指示出差错。

3.循环冗余检测(CRC)
当今计算机中广泛使用的差错检测技术基于循环冗余检测(CRC)编码。CRC编码也成为多项式编码,因为该编码能够将要发送的比特串看做为系数是0和1一个多项式,对比特串的操作被解释为多项式算是。编码操作如下:考虑d比特数据D,发送节点要将它发送给接收节点,发送方和接收方首先必须协商一个r+1比特模式,称为生成多项式。我们将其表示为G。我们将要求G的最高有效位的比特是1.CRC编码关键思想如图所示。对于一个给定的数据段D,发送方要选择r个附加比特R,并将它们附加到D上。使得得到d+r比特模式,用模2算术恰好能被G整除。用CRC进行差错检测的过程很简单:接收方用G去除接受到的d+r比特,如果余数为非零,接收方知道出现了差错;否则认为数据正确被接收。
计算机网络之链路层_第7张图片
在这里插入图片描述

所有CRC计算采用模2算术来做,在加法中不进位,在减法中不借位。这意味着加法和减法是相同的,而且这两种操作等价于操作数按位异或(XOR)
举个:

1011 XOR 0101 = 1110
1001 XOR 1101 = 0100
类似的我们还会有:
1011 - 0101 = 1110
1001 - 1101 = 0100

国际标准已经定义了8、12、16、32比特生成多项式G,CRC-32 32比特的标准被多种链路级IEEEE协议采用,使用的一个生成多项式是:

G(CRC-32= 100000100110000010001110110110111

每个CRC标准都能检测小于r+1比特的突发差错。这意味着所有连续的r比特或者更少的差错都可以检测到。

四、多路访问链路和协议

点对点链路:由链路一端的单个发送方和链路另一端的单个接收方组成。许多链路层协议都是点对点链路设计的,如点对点协议(PPP)和高级数据链路控制(DHLC)。

广播链路:让多个发送和接收节点都连接到相同的、单一的、共享的广播信道上。当任何一个节点传输一个帧时,信道广播该帧,其他每个节点都收到一个副本。如以太网和局域网,HDLC协议。

多路访问问题:即多个发送和接收节点对一个共享广播信道的访问。计算机网络中通过协议来规范他们在共享广播信道上的传输行为,也就是多路访问协议。目前多路访问协议划分为三种类型:信道划分协议随机接入协议轮流协议。他们有以下特征:

  • 当仅有一个节点发送数据时,该节点具有R bps的吞吐量。
  • 当有M个节点发送数据时,每个节点吞吐量为R/M bps。这不比要求M个节点中的每一个节点总是有R/M的瞬间速率,而是每个节点在一些适当定义的时间间隔内应该有R/M的平均传输速率。
  • 协议是分散的,这就是说不会因某节点故障而使整个系统崩溃。
  • 协议是简单的,实现并不昂贵

碰撞:多个节点同时传输帧的时候,帧在所有接收方处将会碰撞,当发生碰撞时候,没有一个接收方节点可以接收到有效帧。

1.信道划分协议
时分多路复用(TDM)和频分多路复用(FDM)是两种能够用于在所有共享信道节点之间划分广播信道的带宽技术。

  • TDM将时间划分为时间帧,并进一步划分每个实际帧为N个时隙。每个时隙分配给N个节点中的一个。无论何时某个节点在有分组要发送时候,它在循环的TDM帧中指派给它的时隙内传输分组比特。通常时隙长度应该能够传输单个分组。它消除了碰撞,每个节点在每个时隙内得到了专用的传输速率R/N bps。但是节点被R/N bps速率限制,而且节点必须轮询等待。
  • FDM将R bps信道划分为不同的频段,每个频段具有R/N带宽,并把每个频段分给N个节点。因此FDM在单个较大的Rbps信道中创建了N个较小的R/N bps信道。它有效地避免了碰撞,但是限制每个节点只能使用R/N的带宽。
  • 码分多址(CDMA):对每一个节点分配一种不同的编码,每个节点用它唯一的编码来对发送数据进行编码。不节点可以同时传输,并且他们各自相应的接收方仍能够正确接收。例如蜂窝电话。

2.随机接入协议
在随机接入协议中,一个传输节点总是以信道的全部速率发送。当有碰撞时,涉及碰撞的节点反复重发它的帧,直到该帧无碰撞通过为止。但是当每个节点经历一次碰撞时,他不是立刻重发,而是等待一个延时再发。
(1)时隙ALOHA

一群野蛮人的会议,谁想说话谁就说。

时隙是一个简单的协议,当某个节点是唯一活跃的节点时,时隙ALOHA允许该节点以全速R连续传输,时隙ALOHA也是高度分散的,因为每个节点检测碰撞并独立地决定什么时候重传。当有大量活跃节点且每个节点总有大量帧要发送时,长期运行中成功时隙的份额。最多会有37%的时隙在做有用工作,速率仅为0.37R。时隙ALOHA要求每个节点同步他们额传输,以在每个时隙开始时开始传输,第一个ALOHA协议时间是一个非时隙、完全分散的协议。在纯ALOHA 中,当第一帧到达,节点立刻将该帧传输完整地传输到广播信道。如果一个帧与多个传输经历了碰撞,那么这个节点将立即以概率p重传该帧。否则该节点等待一个帧传输时间再以概率p进行重传。

(2)载波帧听多路访问CSMA(Carrier Sense Multiple Access)

一群绅士的会议,有别人说话的话让对方先说。

载波帧听(Carrier sensing):一个节点在传输前先听信道,如果有来自另一个节点的帧正向信道发送,则等待知道检测到一小段时间没有传输,然后开始传输。

怎样检测呢?
当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。
当一个站检测到的信号电压摆动值超过一定的门限值时,
就认为总线上至少有两个站在同时发送数据表明产生了碰撞,即发生了冲突。

多点接入(Multiple Access):表示许多计算机以多点接入的方式连接在一根总线上。
碰撞检测(Collison Detect):当一个传输节点在传输时一直侦听此信道,如果检测到另一个节点正在传输干扰帧免责停止传输。
在广播信道的端到端信道传播时延决定其性能方面起着关键作用。该传播时延越长,载波侦听节点不能侦听到网络中另一个节点已经开始传输的几率就越大。

三种CSMA对比总结:

1-坚持CSMA 非坚持CSMA p-坚持CSMA
信道空闲 马上发 马上发 p概率马上发,1-p概率等到下一个时隙发
信道忙碌 继续坚持监听 放弃监听,等一个随机时间后再监听 放弃监听,等一个随机时间后再监听

(3).具碰撞检测的载波侦听多路访问CSMA/CD

我们从广播信道相连的适配器角度总结它的运行

  • 适配置器从网络层获得一条数据报,准备链路层帧,并将其放入帧适配器缓冲中
  • 如果适配器侦听到信道空闲,则开始传输帧,如果侦听到信道在忙,则等待,知道侦听到信道空闲才开始传输帧。
  • 在传输过程中,适配器监视来自其他使用广播信道的适配器信号能量的存在。
  • 如果是配置传输整个镇而未检测到来自其他适配器的信号能量,该适配器就完成了该帧。另一方面,如果适配器在传输时检测到来自其他适配器的信号能量,则停止传输。
  • 停止之后,适配器等待一个随机时间量,然后返回第二步。

计算机网络之链路层_第8张图片
如何确定碰撞后的重传时机?

最小帧长问题:如果A站发送了一个很短的帧,但发生了碰撞,不过帧在发送完了才检测到碰撞没法停止发送因为已经发完了。
计算机网络之链路层_第9张图片
以太网规定最短帧长为64B,凡是长度小于64B的都是由于冲突而异常终止的无效帧。

(4).具碰撞避免的载波侦听多路访问CSMA/CA

为什么要有CSMA/CA?

  • 无线局域网无法做到360度全面检测碰撞。
  • 无线局域网中的隐蔽站问题:当A和C都检测不到信号,认为信道空闲时,同时向终端B发送数据帧,就会导致冲突。

工作原理:

  • 在发送数据前,先检测信道是否空闲。
  • 空闲则发送RTS(request to send),RTS包括发射端地址、接收端地址、下一份数据将持续发送的时间等信息;信道忙则等待。
  • 接收端收到RTS后,将响应CTS(clear to send)
  • 发送端收到CTS后,开始发送数据帧(同时预约信道:发送方告知其他站点自己要传多久数据)
  • 接收端收到数据帧后,将用CRC来检验数据是否发送正确,正确则响应ACK帧。
  • 发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重传次数为止(采用二进制指数退避算法来确定随机的推迟时间)

(5)CSMA/CD与CSMA/CA的对比
相同点:
CSMA/CD和CSMA/CA机制都从属于CSMA的思路,其核心是先听再说。换言之,两个接入信道之前都必须进行监听。当发现信道空闲后,才能进行接入。

不同点:

  • 传输介质不同。 CSMA/CD采用总线式以太网【有线】,而CSMA/CA用于无线局域网【无线】。
  • 载波检测方式不同。CSMA/CD通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压就会随之变化;而CSMA/CA采用能量检测(ED)、载波检测(CS)和能量载波混合检测三种检测信道空闲方式。
  • CSMA/CD检测冲突,CSMA/CA避免冲突,二者出现冲突后都会进行又上限的重传。

3.轮流协议
(1)轮询协议

由主持人主持的会议,让谁说谁说。

轮询协议要求这些节点之一被指定为主节点,主节点以循环的方式轮询每个节点,主节点首先向节点1发送一个报文,告诉节点1能够传输多少帧的数量,在节点1传输某些帧之后,告诉节点2可以传输多少数量的帧,以此循环方式轮询每个节点。轮询协议消除了随机接入协议的碰撞和空时隙,使得效率提高,但是也引入了轮询时延,以及如果主节点有故障,则整个信道都会瘫痪。

(2)令牌传递协议

只有一个话筒的会议,有话筒在自己手里才能说。

令牌:一个特殊的MAC控制帧,不含任何信息。控制信道的使用,确保同一时刻只有一个结点独占信道。
一个称谓令牌的小的特殊帧在节点之间以某种固定的次序进行交互。如:节点1把令牌发送给节点2,节点2把令牌发送给节点3,以此类推,当节点收到令牌时,仅当他有帧要发送时才会持有令牌,否则把令牌传送给下一个节点。令牌传递是分散的效率很高,但是如果一个节点瘫痪会导致整个信道崩溃。
计算机网络之链路层_第10张图片
4. DOCSIS: 用于电缆因特网接入的链路层协议
CMTS: 电缆调制解调器端接系统
DOCSIS: 数据经电缆服务接口,它定义了电缆数据网络体系结构机器协议,DOCSIS使用FDN将下行(CMTS到调制解调器)和上行(调制解调器到CMTS)网络段划分为多个频率信道,每个信道6MHz。每个信道大约40Mbps吞吐量。每个上行信道具有6.4MHz,最大吞吐量是30Mbps。每个上行和下行信道均为广播信道。CMTS在下行信道中传输的帧被所有在信道上做信道接收的电缆调制解调器接收。因为仅有单一的CMTS在下行信道上传输,所以不存在多路访问问题,但是在上行方向,多个电缆调制解调器共享到CMTS的相同上行信道。因此能够潜在地出现碰撞。

五、交换局域网

1.链路寻址和ARP
(1) MAC地址
我们知道主机和路由器并不具有链路层地址,而是他们的适配器具有链路层地址,因此具有多个网络接口的主机或路由器将具有与之相关联的多个链路层地址。但是交换机并不具有相关的链路层地址,因为交换机的任务是在主机和路由器之前承载数据报。

MAC地址又称为LAN地址、物理地址。MAC地址长度为6个字节,共有2的48次方个可能的MAC地址。通常用16进制表示,地址的每个字节被一对十六进制数表示。没有两个适配器的MAC地址是相同的。适配器的MAC地址具有扁平结构,而且不论适配器到哪里都不会变化,带有以太网的便携机总具有相同的MAC地址。

适配器的MAC地址与人的社会保险号类似,后者也具有扁平寻址结构,而且无论人到哪里该号码都不会变化。IP地址则与一个人的邮政地址类似,它是有层次性的,会随着人搬到的地址的变换而而变化。所以一台主机只有唯一一个MAC地址,但是却可以有不同的IP地址。

当一个适配器向另一个适配器发送帧时,发送适配器将目的适配器的MAC地址插入到该帧中,并将该帧发送到局域网上。一台交换机偶尔将帧广播到它所在的接口,这样一个适配器会接收到并非向他寻址的帧,这时候适配器收到帧就会进行MAC匹配,成功就接收,并提取出封装的数据然后传递给上层。不匹配则丢弃。MAC广播地址:如果适配器要让局域网上的所有的适配器接收并处理他们发送的帧,则这时候在发送适配器的该帧的目的地址插入MAC广播地址。该地址是48个连续1组成的字符串(即十六机制表示的FF-FF-FF-FF-FF-FF)。

(2)地址解析协议ARP
ARP(Address Resolution Protocol):网络层地址(IP)和链路层地址(MAC)之间进行转换的任务。

每台主机都有一个单一的IP地址和一个单一的MAC地址。IP地址用以点分十进制法表示,MAC地址以十六进制表示法表示。发送主机通过将目的主机的IP地址作为输入通过发送主机的ARP模块返回相应的MAC地址。它有点类似DNS。但是DNS为因特网中任何地方的主机解析主机名,而ARP只为在同一个子网的主机和路由器解析IP地址。

ARP工作原理:每台主机或路由器在其内存中有一个ARP表,这张表包含IP地址到MAC地址映射关系。该表也包含了一个寿命(TTL)值,它表示了一个从表中删除每个映射的时间。如下表

IP地址 MAC地址 TTL
222.222.222.221 88-B2-2F-54-1A-0F 13:45:00
222.222.222.223 5C-66-AB-90-75-B1 13:52:00

如果主机要向222.222.222.220发送一个数据报,此时ARP表中没有该主机的表项,该怎么办呢?这种情况下,发送方用ARP协议来解析这个地址,首先发送方构造一个称为ARP分组的特殊分组。一个ARP分组有几个字段,包括发送和接收的IP地址、MAC地址,ARP查询分组和响应分组都有相同的格式。ARP查询分组的目的是询问子网上的所有主机和路由,以确定对应的IP地址的MAC地址。

ARP属于链路层协议还是网络层协议?
一个ARP分组封装在链路层帧中,因而在体系结构上位于链路层之上,然而,一个ARP分组同样具有包含链路层地址的字段,所有也可以认为是链路层协议。但它同样包含网络层的地址,所有也可以认为是网络层协议。

(3)数据报发送到子网以外
计算机网络之链路层_第11张图片

当两台主机在两个不同子网时数据是如何传输的呢?假设主机111.111.111.111向主机222.222.222.222发送一个数据报。首先111的主机先将数据报发送给110的路由器(通过ARP解析到110的IP地址)。此时该帧传递给路由器由链路层到达网络层。路由器通过路由器中的转发表告诉这台路由器该数据报要通过路由接口到达220.然后该接口把数据报传递给适配器。适配器把数据报封装成帧发送到220的子网中,最后到达222主机。

2.以太网
以太网几乎占据了现有的有线局域网市场。在20世界80年代和90年代早期,以太网面临着来自其他局域网技术包括令牌环网、FDDI和ATM的挑战。多年来这些其他技术也成功抓住了部分局域网市场。但是此从20世纪70年代中期发明以太网以来,它就不断演化和发展,并保持了今天的统治地位。
集线器:是一种物理设备,它的作用用于各个比特而不是帧。当表示一个0或一个1到达接口时,集线器重新生成这个比特,将其能量强度放大,并将该比特向其他所有接口传输出去。

因此,采用机遇集线器星形拓扑的以太网也是一个广播局域网,即无论何时集线器从他的一个接口收到一个bit,它向其所有其他接口发送该比特的副本。特别是,如果集线器同时从两个不同的接口收到帧,将出现一次碰撞,生成帧的该节点必须重新传输该帧。在21世纪,以太网又经历了一次重要的革命性变换。以太网安装继续使用星形拓扑,但是位于中心的集线器被交换机所替代。
(1)以太网结构
在这里插入图片描述

  • 数据字段:46-1500字节。该字段承载了IP数据报,以太网最大传输单元(MTU)是1500字节。如果超出1500字节必将该数据报分片。IP数据报最小字段46字节,小于46字节则填充到46字节。
  • 目的地址:6字节。目的适配器的MAC地址。
  • 源地址:6字节。传输该帧到局域网上的适配器的MAC地址。
  • 类型字段:允许以太网复用多种网络层协议。当帧到达目的适配器时候,目的适配器需要知道该数据字段的内容需要哪些网络层协议进行分解。
  • CRC:4字节。差错检测
  • 前同步码:以太网帧时一个以8字节的前同步码开始的,前7个字节的值都是10101010,最后一个字节是10101011.前7个字节用于唤醒接收适配器,并将时钟与发送适配器时钟同步。第8个字节的最后两个比特警告目的适配器有内容要来。

所有以太网技术都是向网络层提供无连接的服务,不需要进行握手。而且也不提供可靠的服务。当CRC校验完之后不论该帧是否通过都不会不发送确认帧。不通过的直接丢弃。

转发器:一种物理设备,它能在输入端接收信号并在输出端在生该信号。

2:链路层交换机
交换机:接收入链路层帧并将它们转发到出链路。交换机自身对子网中的主机和路由是透明的,也就是说局域网中的主机和路由器并不知道交换机的存在。
(1)交换机转发和过滤

  • 过滤:决定将一个帧转发到某个接口还是应将该帧丢弃的交换机功能。
  • 转发:决定一个帧应该被导向那个接口,并把该帧移动到那些接口的交换功能。
  • 交换机表:包含局域网上的主机和路由器的表项。其中包含:一个MAC地址;一个通向该MAC地址的交换机接口;表项放置在表中的时间,下图是交换机表

转发和过滤过程:

  • 如果交换机表项中没有目的地址,则交换机广播该帧
  • 表项将目的地址和接口联系起来,这种情况下该帧从包括适配器目的地址的局域网网段到来,无需将该帧进行转发到其他接口,交换机通过丢弃该帧进行过滤。
  • 表项没有将目的地址与接口联系起来,这种情况下,该帧需要被转发到与接口相连的局域网网段,交换机通过将该帧放到接口前面的输出缓冲完成转发功能。

(2)自学习
交换机表是自动、动态和自治地建立的。所有交换机是自学习的。自学习实现方式:

  • 交换机表初始为空
  • 对于在每个接口接收到的每个入帧。该交换机在其表中存储:1.该帧源地址字段中的MAC地址;2.该帧到达的接口;3.当前时间。交换机以这种方式在表中记录了发送节点所在局域网网段。如果局域网肿么诶个主机都发送了帧,则都会在表中留有记录。
  • 如果一段时间后,交换机没有接收到以该地址作为源地址的帧,则删除表中的记录。

交换机是一个即插即用的设备,不需要人为配置,安装交换机只需要将局域网网段与交换机接口相连即可。

(3)链路层交换机性质
交换机不同于总线或基于集线器的星行拓扑那样的广播链路,他们有以下优点:

  • 清除碰撞:使用交换机构建的局域网中,没有因碰撞而浪费带宽,交换机缓冲帧并且绝不会在网段上同时传输多余一个帧。交换机最大聚合带宽是该交换机所有接口速率只和,因此交换机提供了比广播链路的局域网高的多的性能改善。
  • 异质的链路:交换机将链路彼此隔离,因此局域网中的不同链路能够以不同速率运行,并且在不同的媒体上运行。
  • 管理:易于网络管理。交换机可以检测到异常的适配器,并且在内部断开异常的适配器。也可以收集带宽使用的统计数据、碰撞率和流量类型便于管理者使用

(4)交换机和路由器的区别
路由器是使用网络层地址转发分组的存储转发分组交换机。交换机是用MAC地址转发分组。交换机的第二层是分组交换机,而路由器的第三层是分组交换机

交换机的优缺点:

  • 交换机是即插即用的,
  • 交换机具有相对高的分组过滤和转发速率
  • 交换机对广播风暴不提供任何保护措施。

路由器的优缺点:

  • 当网络中存在冗余路径时,分组不会通过路由器循环。
  • 对广播风暴提供了防火墙保护
  • 缺点是不是即插即用,需要人为配置IP地址。
  • 比交换机处理分组时间长。

通常,几百台主机组成的小网络通常有几个局域网网段,对于这些小网段使用交换机足够。在更大型的网络中除了交换机还需要路由器。

3.虚拟局域网
现代机构的局域网常常是配置为等级结构的,每个部门有自己的交换局域网,经过一台交换机等级结构与其他工作组的交换局域网互联。但是他们有几个缺点:

  • 缺乏流量隔离:尽管该等级结构把组流量局域化到一个单一交换机中,但广播流量仍然必须跨越整个机构网络。限制这些广播流量的范围将会改善局域网的性能。
  • 交换机的无效使用:单台交换机无法提高流量隔离。
  • 管理用户:如果一台主机在不同组之间移动,则必须改变物理布线。

虚拟局域网(VLAN):支持VLAN的交换机允许一个单一的物理局域网基础设施定义多个虚拟局域网。在一个VLAN内的主机彼此通信,交换机的分组由网络管理划分为组。每组构成一个VLAN,每个VLAN中的端口形成一个广播域。

VLAN交换机配置和操作方法:网络管理员使用交换机管理软件声明一个端口属于某个给定的VLAN,在交换机中维护一张端口到VLAN的映射表;交换机软件在属于相同VLAN的端口之间交付帧。

两台完全隔离的VLAN如何通信:将VLAN交换机的一个端口与一台外部的路由器相连,并且将该端口配置为属于EE VLAN 和 CS VLAN,当一台主机的数据报跨域EE VLAN 到达路由器,如何由路由器转发跨越CS VLAN 到达CS 主机。

VLAN干线连接:一种更具扩展性互联VLAN交换机的方法。VLAN方法中,每台交换机上的一个特殊端口被配置为干线端口,以互联了两台VLAN交换机,该干线端口属于所有VLAN,发送任何VLAN的帧经过干线链路转发到其他交换机。那么如何到达指定的VLAN呢?

VLAN标签:4字节,以太网帧首部中。VLAN标签承载着该帧所属的VLAN标识符。VLAN标签由在VLAN干线发送侧的交换机加进帧中,解析后并由在VLAN干线接收测的交换机删除。VLAN标签由一个2字节的标签标识符字段、一个2字节的标签控制信息字段和一个3比特优先权字段组成。

在基于MAC的VLAN中,网络管理员指定于每个VLAN的MAC地址集合;无论何时一个设备与一个端口连接时,端口基于设备的MAC地址将其连接适当的VLAN,VLAN也能够基于网络层协议和其他准则进行定义。VLAN跨越IP路由器扩展也是可能的,这使得多个LAN孤岛能够被连接在一起,形成能够跨越全局的单一LAN。

六、广域网

广域网(WAN,Wide Area Network),通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市和国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。
广域网的通信子网主要使用分组交换技术。广域网的通信子网可以利用公用分组交换网,卫星通信网和无线分组交换网,它将分布在不同地区的局域网或计算机系统互联起来,达到资源共享的目的。如因特网(Internet)是世界范围内最大的广域网。
计算机网络之链路层_第12张图片
1:PPP协议(Point-to-Point Protocol)
是目前使用最广泛的数据链路层协议,用户使用拨号电话接入因特网时一般都使用PPP协议。并且只支持全双工链路。

组成部分:

  • 一个将IP数据报封装到串行链路(同步串行/异步串行)的方法
  • 链路控制协议LCP:建立并维护数据链路连接。身份验证
  • 网络控制协议NCP:PPP可支持多种网络层协议,每个不同的网络层协议都要一个相应的NCP来配置,为网络层建立和配置逻辑连接。

状态图:
计算机网络之链路层_第13张图片
帧格式:

计算机网络之链路层_第14张图片
2:HDLC协议
高级数据链路控制(High-Level Data Link Control),是一个在同步网上传输数据,面向比特的数据链路层协议,它是由国际标准化组织(ISO)根据IBM公司的SDLC协议扩展开发而成的。数据报文可透明传输,用于实现透明传输的“0比特插入法”易于硬件实现。

HDLC的站:
主站:主要功能是发送命令(包括数据信息)帧、接收响应帧,并负责对整个链路的控制系统的初启、流程的控制、差错检测或恢复等。
从站:主要功能是接收由主站发来的命令帧,向主站发送响应帧,并且配合主站参与差错恢复等链路控制
复合站:主要功能是既能发送,又能接受命令帧和响应帧,并且负责整个链路的控制。

帧格式:
计算机网络之链路层_第15张图片
3:对比
相同点:
HDLC、PPP只支持全双工链路。
都可以实现透明传输
都可以实现差错检测,但不纠正差错。

不同点:

PPP协议 面向字节 2B协议字段 无序号和确认机制 不可靠
HDLC协议 面向比特 没有 有编号和确认机制 可靠

七、链路层设备

1、网桥
网桥根据MAC帧的目的地址对帧进行转发和过滤。当网桥收到一个帧时,并不向所有接口转发此帧,而是先检查此帧的目的MAC地址,然后再确定将该帧转发到哪一个接口,或者把它丢弃(即过滤)
计算机网络之链路层_第16张图片
分类:

透明网桥:透明指以太网上的站点并不知道所发送的帧将经过哪几个网桥,是一种即插即用的设备 — 自学习

源路由网桥:在发送帧时,把详细的最佳路由信息(路由最少/时间最短)放在帧首部中。源站以广播方式向欲通信的目的站发送一个发现帧。

2、多端口网桥 – 交换机
计算机网络之链路层_第17张图片
分类:
直通式交换机:查完目的地址(6B)就立刻转发。延迟小,可靠性低,无法支持具有不同速率的端口的交换

存储转发式交换机:将帧放入高速缓存,并检查是否正确,正确则转发,错误则丢弃。延迟大,可靠性高,可以支持具有不同速率的端口的交换。

八、冲突域与广播域

冲突域是一种物理分段,指连接到同一导线上所有工作站的集合、同一物理网段上所有节点的集合或是以太网上竞争同一带宽节点的集合。冲突域表示冲突发生并传播的区域,这个区域可以被认为是共享段。在OSI模型中,冲突域被看作是OSI第一层的概念,连接同一冲突域的设备有集线器、中继器或其它简单的对信号进行复制的设备。其中,使用第一层设备(如中继器、集线器)连接的所有节点可被认为是在同一个冲突域内,而第二层设备(如网桥、交换机)和第三层设备(如路由器)既可以划分冲突域,也可以连接不同的冲突域。

广播域是指可以接收到同样广播消息的节点的集合。简单地说,在该集合中的任何一个节点传输一个广播帧,则其它所有能够接收到这个帧的节点都是该广播域的一部分。由于许多设备都极易产生广播,因此,如果不进行维护就会消耗大量的带宽,降低网络的效率。广播域被看作是OSI第二层的概念,因此由中继器、集线器、网桥、交换机等第一、二层设备连接的节点被认为是在同一个广播域中,而路由器、第三层交换机等第三层设备则可以划分广播域。

第一层设备(如中继器、集线器)不能划分冲突域和广播域;第二层设备(如网桥、交换机)能划分冲突域,但不能划分广播域;第三层设备(如路由器)既能划分冲突域,又能划分广播域。

网络互连设备可以将网络划分为不同的冲突域、广播域。然而,由于不同的网络互连设备可能工作在OSI模型的不同层次上,如中继器工作在物理层,网桥和交换机工作在数据链路层,路由器工作在网络层,而网关工作在OSI模型的上三层。因此,它们划分冲突域、广播域的效果也就各不相同。

计算机网络之链路层_第18张图片

九、数据中心网络

数据中心网络将其内部主机彼此互联并与因特网中的数据中心互联。

刀片:数据中心的主机被称为刀片。一般是包括CPU、内存和磁盘存储的商用主机。主机被堆在机架上,每个机架一般堆放几十台刀片。在每个机架顶部有一台交换机,这台交换机被称为机架顶部交换机。它与机架上的刀片相连,并与数据中心的其他交换机互联。

数据中心支持两种类型的流量:外部客户与内部主机之间流动的流量和内部主机之间流动的流量。数据中心网络包括一台或多台边界路由器。他们将数据中心网络与公共因特网相连。数据中心网络因此需要将所有机架相连,并且机架与边界路由器互联。

1.负载均衡
负载均衡路由器:负载均衡的任务是向主机分发请求,以主机当前的负载作为函数来在主机之间均衡负载。负载均衡器不仅平衡主机间的工作负载,而且还提供类型NAT的功能,将外部IP地址转换为内部适当的IP地址,然后将反方向流向客户的分组安装相反的转化进行处理。从而提高安全性。

2.等级结构
对于数千台主机的小型数据中心,一台边界路由器和一台负载均衡器和几十个机架组成就够了。但是当有几十万台主机时候,数据中心通常应用路由器和交换机等级结构。如图所示:每台接入路由器下面,有三层交换机。每台接入路由器与一台第一层交换机相连,每台第一层交换机与多台第二层交换机相连。每台第二层交换机又通过与TOR交换机与多个机架相连。

计算机网络之链路层_第19张图片

你可能感兴趣的:(计算机网络,网络)