《计算机网络原理》(谢希仁)笔记——第三章

为本人观看韩立刚老师视频所做笔记与总结!下面为视频连接:

https://www.bilibili.com/video/av10921041/?from=search&seid=733222547867341420


第三章:数据链路层

《计算机网络原理》(谢希仁)笔记——第三章_第1张图片

基本概念:

数据链路层使用的信道主要有一下两种类型:

点对点信道:一对一

广播信道:一对多(集线器),必须使用专用的共享信道协议来协调这些主机的数据发送

 

链路:一条点到点的物理线段,中间没有任何其他节点

              一条链路只是一条通路的一个组成部分

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

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

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

 

数据链路层传送的是帧

帧由网络层的IP数据报加上帧头和帧尾构成

 

 

 

三个基本问题:

(1)     封装成帧

 加上帧首部和帧尾部:用来确定帧的界限

MTU:最大传输单元(指除了帧首部和帧尾部的数据部分)(以太网为1500字节)

接收端只有都收到帧开始符合帧结束符才完整,否则就扔掉

 

 

(2)     透明传输:指对于发送者和接收者来说,不知道中间曾经增加过转义字符

字节填充:帧首部(SOH)和帧尾部(EOT)一般为不可打印字符,数据内容一般为可打印字符,若数据内容中出现用于表示帧首部和帧尾部的字符,在SOH和EOT前面加上ESC的acsii码(其十六进制为1B),若出现ESC,也在其前面增加ESC字符,当接收端的数据链路层向网络层传输数据时,则须删除转义字符(ESC),若出现连续两个转义字符,则删除前面一个。

 

(3)     差错控制

传输过程中可能会产生比特差错:1变成0,0变成1

在一段时间内,传输错误的比特占所传输比特总数的比率为误码率BER(Bit Error Rate)

误码率与信噪比有很大的关系

 

为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施

 

方法之一:循环冗余检验(CRC)(计算重点)(CRC是获得FCS的一种方法):

1.对要发送的数据左移n为,实质是乘以2n

2.得到后的数据除以事先选定好的长度为(n+1)为的除数,舍去商,保留n位余数(FCS,即帧检验序列),将n位余数填充到步骤1中填充的0中

接收端接收到数据后,用数据对事先约定的除数进行模2除法,若余数为0,则认为数据传输无差错,若余数不为0,由于不知道错误与发生在上面地方,不能纠正,舍弃数据

 

只要除数位数足够多,那么检测不到的差错的概率就很小(当同

 

(模2运算:可以理解为逢2进位,但进位舍去,保留余数,实质为按位异或运算)

 

这样数据链路层只负责没有差错的接收,若包传输错误,则丢掉,数据链路层不要求重传,程序层次(发送端和接收端的应用程序)要求重传

 

CRC只能做到无差错接受:即接受的都是对的,但是要做到“可靠传输”,还要加上确认和重传(考虑帧重复,帧丢失,帧乱序),CRC是无比特差错,而不是无传输差错检测机制

 

OSI/RM模型认为:数据链路层要做到无传输差错,但这只是理想情况

 

 

两种情况下的数据链路层:

1.使用点对点信道的数据链路层(PPP协议)

点到点线路:用户通过电话线使用PPP协议直接连到ISP

PPP协议:因特网的正式标准

使用拨号电话线接入因特网,身份验证,欠费,分配IP地址等可以记账的形式,现不使用拨号上网

 

PPP协议从上到下分为三个小协议:

网络控制协议(NCP):协商IP地址

链路控制协议(LCP):负责身份验证,验证是否欠费

高级数据链控制协议(HDLC):

 

PPP协议的两种分装方法:

(1)传输的是字节

PPP协议帧格式:

 《计算机网络原理》(谢希仁)笔记——第三章_第2张图片

7E:(01111110)代表开始和结尾

FF:代表目标地址(由于是点对点,目标地址没有用,所以FF是固定的)

03:固定的

协议:2个字节,用来表示信息部分是哪种类型的数据

信息部分:透明传输:

若出现7E,则变成7D,5E

若出现7D,则变成7D,5D

若出现ASCII中的控制字符(即数值小于0x20的字符),在前面增加7D用于转义

FCS:帧检验序列

 

(2)传输的是比特流

PPP如果传比特流(不是8的倍数(1字节为8bit)),则用零比特填充方法实现透明传输:只要发现有5个连续的1,则填入一个0,这样就不会出现开始和结束标识符(7E(01111110))

 

 

PPP协议使用小和确认机制:

简单

不保证网络层传输的也是可靠的

FCS可保证无差错接受

 

PPP协议的工作状态:

建立物理连接:用户拨号接入ISP,路由器的调制解调器对拨号做出确认

建立数据链路层连接:PC机想路由器发送一系列LCP分组(封装成多个PPP帧)

建立网络层配置:分组和响应来选择一些PPP参数,NCP给PC机房分配临时额IP地址,使PC机成为因特网的一个主机

通信完毕:

NCP释放网络层协议收回IP地址

LCP释放链路层连接

释放物理层连接

 《计算机网络原理》(谢希仁)笔记——第三章_第3张图片

 

 《计算机网络原理》(谢希仁)笔记——第三章_第4张图片

2.使用广播信道的数据链路层(载波监听 多点接入/碰撞检测的机制运行)

局域网特点:网络为一个单位所有,且地理范围和站点数目均有限,具有广播功能

 

共享通信媒体:链路为所有计算机所共享

静态划分信道:在任意两台计算机之间都要建立信道(不方便)

频分复用

时分复用

波分复用

码分复用

动态媒体介入控制(多点接入)

随机接入(一接就通)(以太网采用)

受控接入,如多点线路探询,或轮询(现很少用)

 

以太网:

最初的以太网是将许多计算机都连接到一根总线上。当初认为这样的链接方法及简单又可靠,因为总线上没有源器件

 

举例:一条总线上的计算机A向计算机B发送是数据,实际上所有计算机都会接受到数据,但只有计算机B会处理数据(MAC地址)(可通过抓包工具获取数据)

 

优点:不用划分信道

缺点:同一时间只能有一条信道使用(即同时只能有两台计算机之间互传数据)

 

以太网使用CSMA/CD(载波监听 多点接入/碰撞检测的简写)协议

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

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

碰撞检测:计算机边发送数据边检测信道上额信号电压大小,

当几个站同时在总线上发送数据时,总线上的信号电压摆幅增大,从而可以检测到,发生碰撞时,总线上传输的信号严重失真且无法恢复,此时应停止发送避免浪费网路资源

 

使用CSMA/CD协议额以太网不能进行全双工通信只能进行半双工通信

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

 

争用期:2τ = 51.2μs(两倍的端到端的往返时延)

经过争用期这段时间还没有检测到碰撞,可以保证这次发送不会发送碰撞

2τ:对于10Mb/s的以太网来说可以发送512bit,即64字节

最短有效帧长:64字节,以太网规定凡长度小于64字节的帧都是由于冲突而异常中止的无效帧

 

二进制指数类型退避算法(CSMA/CD协议实现的):

发生碰撞的站在停止发送数据后,要推迟一个数据时间才能再发送数据

(1)基本确定时间:一般取值争用期2τ

(2)定义参数k:k=Min[重传次数,10]

(3)从整数集合[0,1,2…(2k-1)]中随机地取出一个数,记为r,重传时延为r倍的基本退避时间

(4)当重传16场仍不能成功是即丢弃该帧,并向高层报告

 

以太局域网(以太网)

概述:

以太网的两个标准:1.DIX Ethernet V2(实际所使用的标准)和IEEE的802.3(口头称呼)(两个标准差别很小)

局域网(以太网)的两个子层:

逻辑链路控制LLC子层:(现在因被简化,不使用LLC协议)

媒体接入控制MAC子层:与接入到传输媒体有关的内容都放在MAC子层

 

以太网提供的服务是不可靠的交付,因出现差错而丢弃帧时,差错的纠正是由高层来决定

拓扑:

发展:粗同轴电缆——细同轴电缆——(无屏蔽)双绞线 (都是由于价格问题才改变)

每个站需要使用两对双绞线,分别用于发送和接收

此时拓扑方式就从传统的总线式变成星形(此时有集线器(hub),但现在使用的是交换机)

集线器:一台计算机发送数据,所有的计算机都可以收到,集线器是使用电子器件来模拟实际电缆线的工作,此时的系统实质还是总线网,仍然使用CSMA/CD协议,集线器工作在物理层     

信道利用率:

《计算机网络原理》(谢希仁)笔记——第三章_第5张图片

发送一帧的平均时间:一个帧从开始发送,经过可能发送的碰撞后,将再次重传数次,知道发送成功且信道转为空闲(即再经过τ时间是的信道上无信号)为止

 

参数a:a=τ/T0(想要a越小,以太网长度不能太长,帧长不能太短)

 

理想情况下信道利用率的最大值(不发生碰撞):

 

MAC层:

每个网卡有一个唯一的MAC地址(48位二进制,前24位代表厂家,后24位厂家指定)

MAC地址==硬件地址==物理地址==适配器地址==适配器标识符EUI-48

 

可以人工指定一个MAC地址,即不使用网卡的MAC地址(MAC地址冲突不会报错,也不通)

 

适配器(网卡)从网络上每接收到一个MAC帧就首先用硬件检查Mac帧中的MAC地址,从而决定是否处理

单播帧:一对一

广播帧:一对全体(目标地址:全1(48位))

多播帧:一对多(目标地址由IP构造)

 

以太网:曼彻斯特编码(只要有开始标志就可以,当后面不再变化时则表示帧结束)

 《计算机网络原理》(谢希仁)笔记——第三章_第6张图片

无效的MAC帧:丢掉,以太网不负责重传,应用层负责重传丢弃的帧

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

(2)FCS有差错

(3)数据(IP数据报)的长度不在46——1500字节之间

(4)有效的MAC帧长度不在64(6+6+2+46+4)——1518字节之间

 

帧间最小间隔为9.6μs,相当于96bit的发送时间,(一个站在检测到总线开始空闲后,还要等待9.6μs菜呢鞥再次发送数据),这样做是为了站将刚刚接收到的数据处理掉,做好接收下一帧的准备

 

 

 

 

扩展以太网:效率不高(冲突域),连的计算机越多效率越低,一般不超过30台

《计算机网络原理》(谢希仁)笔记——第三章_第7张图片

此时出现网桥,网桥有学习功能(现很少使用网桥,多使用交换机

计算机1,2,3之间的通信和4,5,6之间的通信可以同时进行(如图),使冲突域增加,效率提高:

 《计算机网络原理》(谢希仁)笔记——第三章_第8张图片

透明网桥:是一种即插即用设备,,其标准是IEEE的802.10

即局域网上的站点并不知道所发送的帧将经过哪几个网桥,网桥对各站点来说是看不见的

 

 

 

交换机:当网桥的接口足够多时,每个接口将不再接集线器,而是接交换机,此时就是交换机,完全没有冲突域(安全),也无法抓包连在同一台交换机上的计算机通信的数据

如果说交换机是10M指的是每一个接口熟虑为10M(端口带宽是独享的)

如果计算机接在交换机上,可以设置成全双工(即同时收发)

 

交换机的生成树算法

 

若交换机与计算机之间连成环,只要计算机发一条广播,则此广播将被无限转发,浪费网络资源,只有树状结构没有环,所以要连成树状结构

 

 《计算机网络原理》(谢希仁)笔记——第三章_第9张图片

MAC地址小的交换价优先选为根

对于交换机来说,非根的交换机的接口中,离根近(远近看带宽)的被选为根端口

对于线来说,离根近的一段被选为指定端口

剩下的为非指定端口(阻断端口)(相当于拔掉网线)

集线器不参与生成树

如图:在交换机A与交换机C之间的线路上,一段通一段不通,在线路中间可以接一台集线器,再接计算机,此时可以通

 

 

 

 

 

 

LAN和VLAN:

一个交换机连上计算机称为一个网段,计算机可以查看一个网段上其他计算机的共享资源

 

局域网(LAN):一个网段称为一个局域网(因为要接在同一台计算机上,因此是以位置划分的)

虚拟局域网(VLAN):以逻辑划分的局域网(想怎么分怎么分)

 《计算机网络原理》(谢希仁)笔记——第三章_第10张图片

VLAN的干道链路:可以跑多个VLAN的数据(统计时分复用(加标记))

一条线路如果要访问多个VLAN,要配置成干道链路

如果只访问一个VLAN,则配置成访问链路

 

 

 

 

 

高速以太网:100BASE-T(100Mb/s)之前为10BASE-T

全双工——无冲突——不用使用CSMA/CD协议

但MAC帧格式仍然为802.3标准

最短帧长度不变

一个网段的最大电缆长度减小为100m

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

接口有存储转发功能(多条数据则排队)

 

 

 

 

 

建网3层模型:

计算机——接入层交换机——汇聚层交换机——核心层交换机——路由器——连入Internet

 

 

 

交换机上实现接入安全(数据链路层安全):

交换机的接口可以设置只能接某一个固定的MAC地址(换一台计算机接这条网线则不通)

也可以在交换机上设置若上网的计算机超过某个数量则不通

 

 


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