数据链路层

链路(物理链路):从一个结点到相邻结点的一段物理线路
数据链路(逻辑链路):在物理线路上,加上软件和硬件(用于实现通信协议),比如用适配器(网卡):含数据链路层和物理层功能
各种数据链路层协议考虑的共同问题:
1 封装为帧:首部加帧开始符,尾部加帧结束符,用于帧定界,帧的首部和尾部不计入MTU,如MTU1500,分片大小1480,MSS1460
2 透明传输:万一数据中含帧定界符(帧开始符或帧结束符)呢,前面加一字符进行转义
3 差错检测:误码率BER(少部分0变成1,1变成0),循环冗余检验CRC,防止无效帧再往后传了

此层使用两种信道:点对点信道 广播信道
使用点对点信道时,使用PPP(点对点)协议
数据链路层_第1张图片PPP协议由下面三部分组成
1 一个将 IP 数据报封装到串行链路的方法
2 链路控制协议 LCP (Link Control Protocol)
3 网络控制协议 NCP (Network Control Protocol)
数据链路层_第2张图片
首位两7E定界(我们上面说的帧开始符,帧结束符),FF03固定的,协议2字节规定信息部分是IP数据报还是LCP内容 还是NCP内容,ppp帧可以连续发。
异步传输:逐个字符传,如键盘与主机通信,接收方不知道数据何时到达,空闲线路实际携带着一个代表二进制1的信号,开始位使信号变成0,然后8个位,然后停止位使信号重新变回1,一大堆1里面摸个0出来
同步传输:一连串bit,按帧传,接收方通过帧开始符获知数据到来
PPP协议的透明传输:
异步传输:字节填充,0x7E变为(0x7D, 0x5E),0x7D变成(0x7D, 0x5D)
ASCII 码的控制字符(即数值小于 0x20 的字符),则在前面要加入0x7D,同时将该字符的编码加以改变。
同步传输:零比特填充,发送端发现5个连续的1,则立即填入一个0,因为7E是01111110
PPP 协议的工作状态:
电脑上网(接入ISP)
链路静止-建立物理层-链路建立-pc发LCP-NCP分配IP地址-链路打开,网络层建立。(释放时倒过来)
数据链路层_第3张图片

建立物理层连接(从链路静止到链路建立状态):pc通过调制解调器呼叫ISP的路由器(点击连接按钮),链路建立后,LCP配置协商成功就建立了LCP链路且进入鉴别状态,鉴别(输密码验证)成功后,就建立了已鉴别的lCP链路且进入网络层协议状态,NCP配置协商中,给pc分配一临时的IP地址
释放时,NCP释放网络层连接(收回ip),然后LCP释放数据链路层连接,最后释放物理层连接。

使用广播信道的数据链路层
一对多,局域网用广播信道,局域网四拓扑结构,比如星形一般中间是个集线器,环形典型有令牌环网
局域网的数据链路层被拆分为了两个子层
1 逻辑链路控制LLC子层:上层,与传输媒体无关
2 媒体接入控制MAC子层:下层,传输媒体相关

适配器(网卡):计算机通过I/O总线并行将数据(IP数据报)给到适配器,适配器封装为帧(它本身含硬件地址),串行扔到局域网内,适配器接到错误帧丢弃,正确帧发中断,计算机处理网络层和上层协议

总线特点:某计算机发帧,各计算机都能检测到帧,但只有帧的目的地址是自己时才接收此帧
总线上只能有一个计算机发数据,不可能全双工,只能半双工
此时共享信道不再使用以前说的各种复用了, 使用CSMA/CD协议:即载波监听多点接入/碰撞检测
载波监听:发送前先监听,发之前看看有没有人在发数据
碰撞检测:边发送边监听,适配器边发送数据边检测信道上的信号电压的变化情况,当认为碰撞,立即停止发送
传播时延导致碰撞:A,B相差1公里,电磁波在1km电缆里传播花5us,A发数据了,B在A发出5us内发数据(数据还没传过来,B认为信道是空闲的),发生碰撞
总线上的单程端到端传播时延记为τ,A 发送数据后,最迟要经过2τ才知道自己是否和别人碰撞。

以太网的MAC层:局域网基本上都是以太网了,而且基本都是用V2的mac帧
MAC地址,用在mac帧中,就是适配器地址
以太网MAC帧:介绍V2的帧格式,还有一种802.3(在数据字段可能插入LLC子层的LLC帧)
数据链路层_第4张图片

几个问题:类型代表上层是什么协议(是不是IP),数据最少46(MAC帧最小长度64,64-首尾18=46,小于46固定填充,上层如IP需要判断实际数据长度(IP层有长度字段),丢弃填充字段)
以太网使用曼彻斯特编码,基带数字信号(高低电压交替),出现一连串1或0时,接收端难以位同步,曼彻中每个码元中间有电压跳变,码元1由低跳高,0由高跳低,根据新码元进行载波调制(如原来全0对应低电压调幅后可能一直没有波形,现在全0对应高低电压交替调幅后有波形无波形交替)
如何判断MAC帧结束:各帧要有一定间隙,不管接收到0,1都有电压跳变,没有跳变就结束了
MAC帧开始判断:物理层上插入8字节(硬件生成),方便接收端同步,避免前几位接收不到,一直是10交替,最后连着2个1,准备好,数据要来了
无需保证透明传输。V2没有LLC子层。

扩展的以太网
物理层扩展:以太网范围不能太大(信号衰减导致CSMA/CD无法工作),扩大以太网覆盖范围(扩大主机到集线器距离,如主机到集线器距离100m,那么任意两主机不超过200m)考虑用光纤和光纤调制解调器(电信号和光信号的转换,比如主机到集线器距离扩展到几公里)
考虑3个星形以太网连接为一个大的以太网,将3集线器连到一中央集线器,缺点是3碰撞域合为一个,降低了数据流量,不过这样可以扩展主机距离,如200m扩为400m
数据链路层扩展:网桥(工作在数据链路层,检查MAC帧的目的地址,不再将其向所有接口转发,转发到特定接口或丢弃),多个以太网(网段)连接为一个大的以太网,但是每个网段为独立的碰撞域,流量就大,存储转发(转发之前CSMA/CD,自学习建立转发表,源地址从某个接口进来,那么建立一个转发项,不过开始没有转发项,那么向除发送接口外所有接口转发),网桥不改变帧的源地址
像集线器就工作在物理层,它向所有接口转发数据,构成星形等拓扑(广播信道),接受方必须自己判断是否接受,信道同时只有一个在发(CSMA/CD)

多接口网桥-交换式集线器-以太网交换机。交换机实现虚拟局域网, 此网在帧格式插入VLAN标记。

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