概述
数据链路层的基本概念:
物理层和数据链路层的本质作用都是用来构建网络通信、访问通道,但它们所建立的通信通道是不一样的。首先要说明的一点是,在物理层上构建的是物理链路,在数据链路层上构建的是逻辑链路或者数据链路。
链路:(物理链路)是一条无源的点到点的物理路段
数据链路:(逻辑链路)
把实现协议的硬件和软件加到链路上,就构成了数据链路(物理链路+协议)
帧:数据链路基本单位,数据链路层中的帧是一块数据
数据链路层的作用:
把网络层交付的数据构成帧发送到链路上,以及把接收到的帧中的数据取出来交付给网络层
- 把网络层的ip数据报封装成帧
- 将帧发送给目的节点的数据链路层
- 若接收的帧无差别,则提出ip数据报上交给网络层,否者丢弃帧
数据链路层使用的信道 :
点对点信道:一对一
广播信道:一对多,需要使用专用的共享信道协议来协调这些主机的数据发送。
链路层的3个基本问题:
封装帧
透明传输
差错检测
封装成帧:
在一段数据前后分别添加头部和尾部,然后构成一个帧。首部和尾部的作用,进行帧定界。
首部为:SOH(二进制编码:00000001)
尾部为:EOT(二进制编码:00000100)
透明传输:
指无论帧的数据部分有没有出现帧定界符,总能正确地识别出一个完整的帧
采用字节填充来实现透明传输:
- 发送端的数据链路层在数据种控制字符SOH和EOT前插入一个转义字符ESC(十六进制表示1B,二进制为00011011)
- 如果转义字符出现在数据中,需要在转义字符前加一个转义字符
接收端接收时:
- 进行帧定界:找到第一个前面没有ESC的SOH,找到最后一个前面没有ESC的EOT
- 扫描帧的部分,删除SOH或EOT前的ESC,碰到两个ESC删除一个
差错检测:
差错:
- 数据 1 变 0 0 变 1
- 收到的帧出现了帧丢失,帧重复,帧失序
产生差错的原因:传输时链路收到干扰,信噪比越小,出现错误的概率越大
在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率 BER (Bit Error Rate)。
差错检测方法:(淘汰)
奇偶校验法:在数据流后面添加一个奇偶校验位,保证数据流中1的个数为奇数。
数据为:0011011
后面添加:00110111
当收到的数据是11011100发现不了错误
循环冗余检验CRC(Cyclic Redundancy Code):
CRC可以做到无差错的接收,但不能保证接收的帧100%无差错
发送的数据为:
传输的数据为:101001
采用的除数为:1101(接受端和发送端约定)
被除数:101001000
求得的余数为:冗余码 或 帧检验序列
发送端发送的是:数据+冗余码 为101001001
接收端对收到的每一帧进行CRC检测,用收到的数据帧除以相同的除数
- 若得到的余数为0,判定这个帧没问题,可以接收
- 若不为0,就丢弃
点对点协议:(PPP)
- 点对点协议是目前世界使用最多的数据链路层协议
- 用户通过电话线或宽带连接互联网时都会使用到PPP
封装成帧:必须规定帧定界符
透明传输
字节填充法
零比特法
封装成帧:
IP数据报:最大为1500
有效数据率:1500/1500+8=99.97%
透明传输:
1.字节填充法:
将 0x7E 换成 0x7D,0x5E
将 0x7D 换成 0x7D,0x5D
将小于0x20的字符 前面加 0x7D,再加20
0x03-> (0x7D ,0x23)
例子:
7D 67 7E 88 10
7D 5D 57 7D 5E 88 7D 30
2.零比特填充法:
在发送端,只要发现有 5 个连续 1,则立即填入一个 0。
接收端对帧中的比特流进行扫描。每当发现 5 个连续1时,就把这 5 个连续 1 后的一个 0 删除。
局域网:
局域网使用的是广播信道。
局域网的特点:
- 网络为一个单位所有,且地理范围和站点数目均有限
- 局域网具有广播功能,一台主机可以方便地和其他主机通信
- 局域网易拓展和演变,具有高可靠性和可用性
局域网的拓扑结构:
拓扑结构:计算机,电缆,网络上其他组件的安排方式和物理布局
- 星型网:依靠集线器,集线器损坏,所有主机无法正常通信
- 总线型网:使用最多的局域网结构,利用匹配电阻
- 环型网:通过干线中的令牌控制主机的数据发送
- 树形网:利用匹配电阻
匹配电阻的作用:吸收在总线上传播的电磁信号的能量,避免在总线上产生有害的电磁波
以太网在局域网中占据了绝对优势:
以太网的两个标准:IEEE 802.3 和 DIX Ethernet V2
802.1 | 桥接/体系结构 |
802.11 | 无线局域网 |
802.15 | 无线个人区域 |
802.16 | 宽带无线接入 |
802.19 | 无线共存 |
IEEE802委员会把数据链路层拆分为:逻辑链路控制(LLC)和媒体接入控制(MAC)
局域网的工作层次跨越了数据链路层和物理层
网卡与局部通信:
- 串并转换:计算机内部之间是并行通信方式,网卡数据到局域网中是串行方式
- 数据缓存:并行传输的数据传输速率高,串行传输速率有限,为了防止数据在网卡上堆积,网卡因该有缓存功能
局域网的工作协议:CSMA/CD
- 五台主机共享一个广播信号,当B传输数据给D时,其他4个都能收到,但指明了D是接收方,就只能是D接受。
- 线路内不能同时发送多条数据,会造成总线上线路叠加,导致数据无效
CSMA/CD可以分为(采用半双工的通信方式)
- 多点接入 MA
- 载波监听 CS
- 碰撞检测 CD 也称为"冲突检测"
- 多点接入:表示计算机以多点接入的方式连接到一根总线上
- 载波监听:指每一站在发送数据之前要先检测以下线路上是否有其他计算机在发送数据,有则不发送,避免发生碰撞,(用电子技术(电压)检测总线上有没有其他计算机发送数据信号)
- 碰撞检测:就是计算机边发送数据边检测信道上的电压大小(冲突检测)
- 碰撞避免:传播时延的存在,只能尽可能的避免碰撞的发生,局域网采用二进制指数类型退避算法
r=传播时延
基本退避时间取为争用期 2r。
从整数集合 [0, 1, … , (2的k次方 -1)] 中随机地取出一个数,记为 r。重传所需的时延就是 r 倍的基本退避时间。
参数 k 按下面的公式计算:
k = Min[重传次数, 10]
当 k 小于等于 10 时,参数 k 等于重传次数。
当重传达 16 次仍不能成功时即丢弃该帧,并向高层报告。 - 强化碰撞:发生碰撞,立刻停止发送有效数据,但会继续发送人为干扰信号,使用户自导发生碰撞
- 最短有效帧长:=2r * 数据发送数率,例如10Mbit/s的以太网 争用期长度2r为51.2us,最短有效帧为512bit,也就是64B
- 帧的最小间隔:是传输完数据后,清除收到数据帧的站的接受缓存
以太网的信道利用率:
1.发送数据帧时需要争:争用期为 2r ,可能需要n个 2r
2.发送数据所需要的时间:设长度为 L 速率为 C T=L/C
3.数据帧经过单程的传播时延 r 到达对方
T(总)=T+n*2r+r
参数 α,它是以太网单程端到端时延 r与帧的发送时间 T0 之比
α=r/T0 α越小越好
极限信道利用率:
α=r/T=(S/V)/L *C= (SC)/(VL)
提高利用率:
- 减小信道长度
- 增加帧的长度
局域网标准:
1990年。IEEE制定了局域网标准——10BASE-T
10代表带宽 10Mbit/s BASE代表基带 T为双绞线(使用RJ-45插头), 10BASE-T采用的是星型结构,在中心通常增加可靠性较高的设备,如集线器,以太网交换机等,由于双绞线传输距离有限,现在通常使用光纤
10Mbit/s的共享以太网,10个用户使用,集线器相连,平均带宽为1Mbit/s
10Mbit/s的共享以太网,10个用户使用,以太网交换器相连,平均带宽为10Mbit/s
以太网交换机的工作原理:
以太网之所以能有目的的转发:内部存储了一个转发表
传发表有两列:
- 一列是地址:标明不同主机
- 一列是接口:标明与主机互联的接口号
转发表是自学习算法实现,所以以太网交换机可以即插即用
工作原理如下:
- 收到一帧后先进行自学习:查找转发表中与收到的帧的源地址是否有无相片配的项目,没有就在转发表中添加一个项目,有则把原有的项目更新
- 转发帧 :查找转发表中收到帧目的地址有无相匹配的项目,没有则通过其他接口进行转发,有则按照转发表中的转发,若表中的接口就是还帧进入网桥的接口,则丢弃该帧。
以下为一个例子:
A向B发送一帧:源地址为A 进入接口为1,表中没有匹配的,所以A和1添加到表中
B向A发送一帧:源地址为B 进入接口为2,表中没有匹配的,所以B和2添加到表中
C向B发送一帧:源地址为C 进入接口为3,表中没有匹配的,所以C和3添加到表中
以太网交换机具有较好的过滤帧功能,利用这点可以实现一个新型的局域网的应用——虚拟局域网
虚拟局域网:VLAN
由一些局域网段构成的与物理位置无关的逻辑组
- 每个网段具有共同的需求,
- 每一个VLAN的帧都有一个明确的标识符
- 指明发送那个给这个帧的工作站是属于哪一个VLAN
以太网的MAC层:
MAC称为物理地址或硬件地址
MAC是一个48位的全球地址,固化在适配器的ROM中的地址。
IEEE 802 规定可以采用6字节(48位)或2字节(16位),由于6字节范围大,所以使用6字节的。
IEEE的注册管理机构RA是局域网全球地址的法定管理机构(W-IEEERA)负责分配地址的前3个字节,后3个字节根据厂家的设定。
当路由器通过适配器连接到局域网时,适配器上的硬件地址就是用来标志路由器的某一个接口。
帧的传输方式:
所有的适配器至少应当能够识别前两种帧。
- 单播帧:(一对一),即受到帧的MAC地址与本站的硬件地址相同
- 广播帧:(一对全体),即发送给本局域网上的所有的帧(全一的地址)
- 多播帧:(一对多),即发送给本局域网上一部分站点的帧
同步传输和异步传输:
同步传输方式中发送方和接收方的时钟是统一的、字符与字符间的传输是同步无间隔的。
异步传输方式并不要求发送方和接收方的时钟完全一样,字符与字符间的传输是异步的。
异步传输是面向字符的传输,而同步传输是面向比特的传输。
异步传输的单位是字符而同步传输的单位是帧。
异步传输通过字符起止的开始和停止码抓住再同步的机会,而同步传输则是以数据中抽取同步信息。
异步传输对时序的要求较低,同步传输往往通过特定的时钟线路协调时序。
异步传输相对于同步传输效率较低。
参考文献:
【计算机网络笔记】链路层 - 简书 (jianshu.com)
最后
以上就是要减肥哑铃为你收集整理的计算机网络:数据链路层封装成帧: 差错检测: 点对点协议:(PPP)透明传输: 局域网:虚拟局域网:VLAN的全部内容,希望文章能够帮你解决计算机网络:数据链路层封装成帧: 差错检测: 点对点协议:(PPP)透明传输: 局域网:虚拟局域网:VLAN所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复