一、核心考点总结
核心一:数据链路层的功能
帧定界;流量控制;差错控制;透明传输和帧同步;其传输的数据单元是帧;向网络层提供3种服务,即无确认的无连接服务、有确认的无连接服务、有确认的面向连接服务。
核心二:3个基本问题
帧定界方法:①字符计数法(有错影响最大);②字符填充的首尾定界符法;③比特填充的首尾定界符法;④违规编码法。
帧同步是指接收方应当能从接收到的二进制比特流中区分出帧的起始与终止。计算机网络是让独立的计算机协同工作,就需要确定帧的起始和终止位置,帧同步就是如何确定帧首部和尾部的问题。
数据链路层通常采用循环冗余校验(Cyclic Redundancy Check,CRC)方式发现错误,它能以非常接近于1的概率认为帧在传输过程中没有产生比特差错。注意:在考研中CRC只能检测(发现)比特错误,且一般不能提供纠错。
核心三:流量控制
流量控制就是使接收方直接限制发送方的数据流量,使其发送速率不致超过接收方的接收能力,是一种点(发送方)对点(接收方)的控制方式。
假设采用n个比特对窗口进行编号,且默认是发送窗口大小大于接收窗口大小(表3-14)。
表3-14 流量控制核心考点一览表
核心四:介质访问控制方法
信道划分介质访问控制:CDMA、TDMA、WDMA、FDMA,它们基于复用技术。
随机访问介质访问控制协议有4种,即ALOHA协议、CSMA协议、CSMA/CD协议和CSMA/CA协议。设计思想是通过争用,胜利者才可以获得信道,从而获得信息的发送权。
(1)CSMA协议。载波侦听多路访问(CSMA)协议是在ALOHA协议的基础上改进而来的访问控制协议。在CSMA中,每个节点发送数据之前都使用载波侦听技术来判定通信信道是否空闲(毕竟网络介质是大家共享的,不能我行我素,在发送数据之前,先看一下别的计算机是否正在发送数据)。常用的CSMA有以下3种策略:
①1-坚持CSMA:当发送节点监听到信道空闲时立即发送数据,如果信道忙,将继续监听。这种方法减小了信道空闲时间,但是增大了冲突的概率,一般适合负载小的网络。
②非坚持CSMA:当发送节点一旦监听到信道空闲时,立即发送数据,否则延迟一段随机时间再重新监听。这种方法减小了冲突概率,但是增大了信道空闲时间。
③p-坚持CSMA:属于分时信道,当发送节点监听到信道空闲时,以概率p发送数据,以概率1-p不发送数据,延迟一段时间并重新监听。这种方法是1-坚持CSMA和非坚持CSMA的折中。3种策略的对比分析如表3-15所示。
表3-15 3种策略的对比分析
(2)CSMA/CD协议,其工作过程可概括为“先听后发,边听边发,冲突停发,随机重发”。
①先听后发:每个站点在发送数据之前要先检测一下总线上是否有其他计算机在发送数据,若有,则暂时不发送数据,以免发生冲突;若没有,则发送数据。
②边听边发:因为存在信号的传播时延,所以当某个站点监听到总线是空闲时,可能总线并非真正空闲。
③冲突停发:一旦检测到冲突,立即停止发送数据。
④随机重发:发生碰撞的站点在停止发送数据后,要推迟(退避)一个随机时间才能再发送数据,我们选择基本退避时间为争用期2τ,从整数集合[0,1,…,2k-1]中随机地取出一个数,记为r。重传所需等待的时延就是r×2τ。参数k与重传次数有关,按下面的公式计算。
争用期:也称为碰撞窗口。设单程传播时延为τ,则以太网端到端往返时间2τ称为争用期。发送站在发送帧后经过时间2τ,如果没有碰撞发生,该数据帧就能顺利发送。
最小帧长:为了确保发送站在发送数据的同时能检测到可能存在的冲突,帧的传输时延至少要两倍于信号在总线中的传播时延,所以CSMA/CD网中的最小帧长为
最小帧长=总线传播时延×数据传输率×2
(3)CSMA/CA,即载波侦听多路访问/冲突避免,CSMA/CA有3种信道空闲的检测方法:
①能量检测:对接收信号的能量大小进行判断,当功率大于某一确定值时,就认为信道被占用。
②载波检测:对接收信号与本地的伪随机码(PN码)进行运算比较,如果其值超过某一极限,就认为信道被占用。
③能量和载波混合检测:发送真实数据前,先向目标端发送请求传送报文(RTS),等接收到目标端响应报文(CTS),发送端才开始传送真正的数据。也就是说,CSMA/CA使用RTS和CTS来进行信道预约,采用这种RTS-CTS机制,可以确保接下来传送数据时,不会发生碰撞。由于RTS-CTS的封包都很小,因此不会增大整体传输开销。
CSMA/CA为了避免发送时冲突,采用了带确认的发送机制,如果发送方收到了接收方对其发送数据的ACK确认,就表明接收方收到了发送方发送的数据。但是若发送方在规定时间内没有收到确认帧ACK,则必须重传此帧,直到收到确认帧为止,或者经过若干次的重传失败后放弃发送。
核心五:局域网的数据链路层要点
(1)局域网的主要技术要素。局域网的主要技术要素包括网络拓扑结构、传输介质与介质访问控制方法。
(2)局域网的主要拓扑结构。局域网的主要拓扑结构包括星型网、环型网、总线型网和树型网(星型网和总线型网的结合)。
(3)局域网的主要传输介质。局域网的主要传输介质包括双绞线、铜缆和光纤等,其中双绞线为主流传输介质。
(4)局域网的主要介质访问控制方法。局域网的主要介质访问控制方法包括CSMA/CD、令牌总线和令牌环。前两种作用于总线型网,令牌环作用于环型网。
(5)以太网采用总线拓扑结构,所有计算机都共享一条总线,信息以广播方式发送。以太网发送的数据都使用曼彻斯特编码。以太网提供的服务是不可靠的交付,即尽最大努力的交付。
(6)以太网的MAC地址。局域网中的每台计算机都有唯一的号码,称为MAC地址或物理地址、硬件地址,其长度是48位,每种帧有自己的地址范围(这个范围,大家需要记住)。
①广播帧地址:FF FF FF FF FF FF(12个F或48位的1)。
②组播帧地址:01 00 5E 00 00 00~01 00 5E 7F FF FF(这个范围,大家暂且记下)。
③单播帧地址:不是广播帧地址和组播帧地址就是单播帧地址
网络适配器从网络上每收到一个MAC帧就首先用硬件检查MAC帧中的MAC地址,如果是发往本站的帧则收下,然后进行其他的处理,否则就将此帧丢弃,不再进行其他的处理。
核心六:以太网帧格式
以太网帧格式如图3-49所示。
图3-49 以太网帧格式
(1)前导码:在帧的前面插入8B数据,使接收端与发送端进行时钟同步。这8B数据又可分为前同步码(7B)和帧开始定界符(1B)两部分。这个部分是用来做同步和定界的,但是前导码不是算在帧的格式中,这个就像我们在网上下单,要预约快递小哥的取件时间,但是这个并不是你要发送的东西本身。
(2)目的地址、源地址:均使用48b(6B)的MAC地址。这个用来标识发送方和接收方,等同于发件人和收件人。
(3)类型:占2B,指出数据域中携带的数据应交给哪个协议实体处理。例如,若类型字段的值为0x0800,就表示上层使用的是IP数据报等,类似于发快递选择保价或限时送达等。
(4)数据:占46~1500B。46B和1500B是怎么得来的呢?首先,由CSMA/CD算法可知,以太网帧的最短帧长为64B,而MAC帧的首部和尾部的长度为18B,所以数据最短为64B-18B=46B。其次,最大的1500B是数据链路层规定的最大的分组长度。
(5)校验码(FCS):占4B,采用循环冗余码,不但需要校验MAC帧的数据部分,还要校验目的地址、源地址和类型字段,但是不校验前导码。
核心七:广域网中的数据链路层
(1)PPP协议主要由以下3个部分组成:
①一个将IP数据报封装到串行链路的方法。
②一个链路控制协议(Link Control Protocol,LCP),用于建立、配置和测试数据链路连接,并在不需要时将它们释放。
③一套网络控制协议(Network Control Protocol,NCP),每个协议支持不同的网络层协议,用来建立和配置不同的网络层协议。
(2)PPP协议的透明传输:
①当PPP协议用在异步传输链路时,它把转义符定义为0x7D(01111101),并使用字节填充,且规定了如下所述的填充方法(注意,这种方法是默认方法)。
②当PPP协议用在同步传输链路时(一连串的比特连续传送),协议规定采用零比特填充方法来实现透明传输。
(3)PPP协议的特点:
①PPP协议是一个面向字节的协议。
②PPP协议是点对点协议,支持一对一通信。
③PPP协议不需要的功能包括纠错(PPP只负责检错)、流量控制、序号、多点线路、半双工或单工。
④PPP协议只支持全双工链路。
⑤当PPP协议用在同步传输链路时,协议规定采用硬件来完成比特填充(与HDLC的做法一样)。当PPP协议用在异步传输链路时,就使用一种特殊的字符填充法。
核心八:透明网桥的原理
透明网桥是目前使用最多的网桥。“透明”是指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说是看不见的,透明网桥是一种即插即用设备,网桥按照以下自学习(逆学习)算法处理收到的帧和建立转发表。透明网桥运行自学习算法自动维护转发表,其工作过程的详细步骤如下:
①若从A发出的帧从接口x进入了某网桥,则从这个接口出发沿相反方向一定可把一个帧传送到A。
②网桥每收到一个帧,就记下其源地址和进入网桥的接口,作为转发表中的一个项目。在建立转发表时是把帧首部中的源地址写在“地址”这一栏的下面。
③在转发帧时,则是根据收到的帧首部中的目的地址来转发。这时就把在“地址”栏下面已经记下的源地址当作目的地址,而把记下的进入接口当作转发接口。
网桥的转发帧的步骤归纳如下:
①网桥收到一帧后先进行自学习。查找转发表中与收到帧的源地址有无相匹配的项目。若没有,则在转发表中增加一个项目(源地址、进入的接口和时间);若有,则把原有的项目进行更新。
②转发帧。查找转发表中与收到帧的目的地址有无相匹配的项目。若没有,则通过所有其他接口(但进入网桥的接口除外)进行转发;若有,则按转发表中给出的接口进行转发。
若转发表中给出的接口就是该帧进入网桥的接口,则应丢弃此帧,因为这时不需要经过网桥进行转发。
核心九:局域网交换机
局域网交换机实质上是多端口网桥,它工作在数据链路层。局域网交换机的每个端口都直接与主机或集线器相连,并且一般都工作在全双工方式。当主机需要通信时,交换机能同时连通许多对的端口,使每对相互通信的主机都能像独占通信媒体那样,无冲突地传输数据,通信完成后断开连接。交换机有以下两种交换模式:
(1)直通式交换。直通式交换机在检查数据报的前6个字节后就转发,对于小于6B的数据报,交换机认为是碎片,不进行转发。也就是说,对于直通式交换机的转发延迟是发送6B的发送延迟。这种方式速度很快,但缺乏安全性,也无法支持具有不同速率的端口的交换。
(2)存储转发式交换。先将接收到的帧存储在高速缓存中,并检查数据是否正确,确认无误后,查找转发表,并将该帧从查询到的端口转发出去。如果发现该帧有错误,就将其丢弃。存储转发式交换的优点是可靠性高,并能支持不同速率端口间的转换;缺点是延迟较大。
网桥和交换机是全双工工作方式,独占带宽,假如每个接口到主机的带宽是10Mb/s,但由于一个用户在通信时是独占而不是与其他网络用户共享传输媒体的带宽,因此对于拥有N 对接口的交换机的总容量为N×10Mb/s。
对于普通10Mb/s的共享式以太网,若共有N个用户,则每个用户占有的平均带宽只有总带宽(10Mb/s)的N分之一。