计算机网络数据链路层
1.概述和功能
将网络层传给他的数据可靠的传输到相邻节点的目标机网络层(加强物理层传输原始比特流的功能,将物理层提供的可能有错的物理连接改为逻辑上无差错的数据链路)
2.封装成帧和透明传输
封装成帧:把网络层发送给他的数据加工,即在IP数据报两端加上帧(帧首部帧尾部),封装成帧
封装成帧的方法:
(1)字符计数法:在帧首部用一个计数字段来表明帧内字符数,错一个后面的就全错
(2)字符填充法:数据部分有和帧头帧尾重复的数字时使用,在原始数据和帧的相同数据段前填充一个字节(转义字符),接收端再把其去掉
**(3)零比特填充法:**首尾帧用同样数字组成,数据中出现了和帧一样的部分,在发送端,有连续5个1就添加一个0,接收端则把0删除
**(4)违规编码法:**用不存在的表示方式来表示帧的起始和终止
透明传输:不管什么样的比特组合都可以被传输
3.流量控制和可靠传输机制
流量控制:使发送端发送速度和接受端接受速度匹配
(1)停止等待协议1-1
无差错情况:
略
有差错情况:
a.数据帧丢失或检测到帧错误
b.ACK丢失
c.ACK迟到
(2)滑动窗口协议GBN(后退n帧协议n-1)若帧序号长度是三,即用三个比特为帧标号,所以帧的标号为0-7,用8位就是0-255
发送窗口尺寸W:1<=W<=2的n次方-1
(3)滑动窗口协议SR (选择重传协议n-n)
4.差错控制(此处介绍的是比特错的处理,非帧错)
处理由噪声引起的差错
(1)检错编码
a.奇偶校验码
奇校验码:添加一位校验元使数据中1的个数为奇数
偶校验码:添加一位校验元使数据中1的个数为偶数
b.CRC循环冗余码
i.加0
ii.除(异或方法相同为0,不同为1)
iii.最终要发送的数据=一开始要发送的数据+余数
若最终发送的数据和除数再相除,为零则无差错,不为零则发生差错,丢弃
(2)纠错编码
海明码:
能发现双比特错,但是只能纠正但比特错
1)确定校验码位数r
2的r次方>=k+r+1,k为信息位即数据长度,r为冗余信息位(放在2的次方位置)
2)确定校验码和数据的位置
3)求出校验码的值
4)检查并纠错
倒写后换算成十进制,对应序号即为错误所在
5.通信介质访问控制(解决广播信道中,多个主机同时发送信号,产生信号冲突)
(1)介质访问控制(静态划分信道):
通信前就预先分配好的(不会发生冲突)
复用技术:
频分多路复用FDM:
时分多路复用TDM:
波分多路复用WDM:
码分多路复用CDM:
正交计算方法:对应位相乘再相加再除以位数
线性相加:对应位分别相加
源站:源站一比特所对应的位
(2)动态分配信道:
a.轮询访问介质访问控制(不会发生冲突)
1.轮询协议:
主节点轮询访问从属结点是否要发送数据
2.令牌传递协议:
用一个mac控制帧轮询访问结点,每个结点独占信道
b.随机访问介质访问控制(会发生冲突)
所有用户可随机发送信息,发送时占全部带宽,多个用户同时发送容易冲突,需要协议来解决
1.ALOHA协议
纯ALOHA协议:想发就发,遇到冲突时不知道,要等待全部帧发送完,等一随机时间重传
时隙ALOHA协议:把时间分成多个时间片,时间片开始时帧才能开始传送(想发就发),等一随机时间重传
2.CSMA协议
先听再说
发送数据前先检测信道上的电压值,是否有其他数据在传输
信道忙时,推迟发送,多久后发送呢?不忙时是不是立刻发送呢?产生三种协议
1-坚持CSMA:空闲则立即传输,忙则一直监听到空闲再马上传输
非坚持CSMA:空闲则立即传输,忙则等待一个随机时间再监听,空闲再马上传输
p-坚持CSMA:空闲则按照p概率传输,p-1概率下一时间槽再传,忙则等待一个随机时间再监听
**3.CSMA/CD协议:
用于有线网络,碰撞检测
发送数据前先检测信道上的电压值,是否有其他数据在传输
4.CSMA/CA协议:
用于无线网络,碰撞避免
发送数据前先检测信道上的能量,载波,能量载波,是否有其他数据在传输
6.局域网、以太网802.3、无线局域网802.11
局域网
以太网最便宜
7.广域网使用的链路层协议
广域网:跨界很大的范围:因特网
其子网采用分组交换技术。利用公用分组交换网等把各个地区的局域网,计算机系统链接起来,实现资源共享。
(1)PPP协议
用户使用拨号电话接入因特网的时候一般都是用ppp协议,只支持全双工链路,透明传输采用字节填充法或采用零比特插入法,面向字节,不可靠
(2)HDLC协议
只支持全双工链路,透明传输采用零比特插入法,面向比特,可靠
8.链路层设备
(1)网桥
网桥可以通过自学习的方式,自动填满接口表(刚开始表是空的)
如:A传给B
(2)交换机(多端口网桥)
(3)冲突域和广播域
有四个冲突域,1个广播域
冲突域:链路层设备有几个端口链接设备就有几个冲突域
广播域:有几个路由器就有几个广播域,此处一个也没有,就只算整体形成一个广播域