数据链路层使用的信道主要有两种类型:
1)点对点信道;2)广播信道
两种主要信道使用的协议:PPP协议;CSMA/CD协议。
数据链路层的三个基本问题:封装成帧;透明传输;差错检测
数据链路层的协议数据单元:帧
网络层协议数据单元:IP数据报
运输层协议数据单元:报文段
网络适配器:就是我们常说的网卡
每一种数据链层协议都有规定了帧的数据部分长度上限MTU:最大传送单元;一个帧的帧长=首部和尾部+数据部分的长度
帧定界符:SOH和EOT;这里需要解决一个问题,就是如果数据中间出现了EOT会导致数据提前结束,该怎么解决?
这就是透明传输需要解决的问题了。
透明传输解决方案:在中间出现的控制字符用转义字符ESC来转义。这种方法叫做:字节填充或字符填充。
差错检测:传输错误的比特数占传输比特中枢的比率称为误码率BER;
差错检测解决方案:广泛采用的方法是循环冗余检验CRC。CRC运算就是要在数据后面添加n位冗余码。
怎么得到冗余码:用二进制的模2运算,最后的余数就是要添加在数据后面的冗余码。
在接收端怎么处理:对手到的每一帧经过CRC检验后,有两种情况:
若得出的余数为0,则这个帧没有差错,接受。
若余数不等于0,无法确定哪里出错,但能确定有差错,丢弃。
我们不要求数据链路层向网络层提供可靠传输。可靠传输就是:数据链路层的发送端发送什么,接收端就收到什么。
传输差错分为两种:一类就是前面所说的最基本的比特差错;另一类就是传输差错:帧丢失、帧重复和帧失序。
过去的观点就是数据链路层必须向上层提供可靠的服务。于是增加了帧编号、确认和重传机制。但现在的观点是在通信质量较好的有线传输链路不使用确认和重传机制,在通信质量较差的无线传输链路使用确认和重传机制。
点对点协议PPP:
组成:链路控制协议LCP和网络控制协议NCP。
数据组成:PPP的首部和尾部+信息部分(一般是IP数据报),MTU:
PPP的透明传输实现:当PPP使用异步传输的时候,把转义字符定义为0x7D,并使用字节填充。
把0x7E转义为0x7D,0x5E;0x7D转义为0x7D,0x5D;信息字段中出现的控制字符(即数值小于0x20的 字符),则在该字符前面加入一个0x7D,例如0x03转义为0x7D,0x23.
当PPP使用同步传输的时候:采用零比特填充,采用硬件实现的扫描可以快速整个信息字段,只要发现5个 连续的1就立即填入一个0,在接受端就相反,遇到5个连续的1后面的0就把0删去。
ppp协议的工作状态:开始都是处于链路静止状态,在双方建立物理层连接时,进入链路建立状态,其目的时建立链路层的LCP 连接。这时候要协商一些配置选项,发送LCP的配置请求帧,响应方式有3种:分别是配置确认帧:所有选 项都接受;配置否认帧:选项能够识别但是不接受;配置拒绝帧:有选项无法识别或者不能接受。协商结 束后进入鉴别阶段,成功则进入网络层协议(NCP),否则进入链路终止阶段。在网络层协议状态,双方 互相交换网络层特定的网络控制分组。协商完成后,就进入可以进行数据通信的链路打开状态。若要结 束,需要一端发出终止请求LCP分组,对方收到后,转到链路终止状态。
ppp协议不是纯粹的数据链路层协议,还包含了物理层和网络层的内容
局域网按网络拓扑结构分类:心形网(现在流行的网络拓扑),环形网(需要令牌进行交错上网),总线网(传统以太网时期)
共享信道:两种方法:静态划分信道;
动态媒体介入控制(多点接入):随机接入--随机性比较高,人很多时碰撞几率较高;受控接入--有令牌的 环形网以及多点线路探询
过去把数据链路层拆分为两个子层:逻辑链路控制子层(LLC)--现在已经基本不用和媒体接入控制子层(MAC)
CSMA/CD协议(载波监听多点接入/碰撞检测):这是原来总线型网的网络控制协议
多点接入:说明是总线型网
载波监听:不管在发送信息前,还是发送中,都必须不停的检测信道
碰撞检测:边发送边检测
很显然的这种协议不能同时进行发送和接收,所以不能工作在全双工信道,只能进行双向交替通信即半双工通信,所以,它是历史。
协议具体:规定争用期为51.2微秒,在以前10Mbit/s的网络上可以传输512bit。而且采用截断二进制指数退避,只要发生碰撞,就再等待k*争用期时间,其中k=Min[0,1...2**(k-1)]。
仔细考虑你也会发现:如果再争用期没有发生碰撞,以后就都不会发生碰撞了,所以以太网规定了最短帧长:512bit,也就是64B。以太网还规定帧间最小间隔为9.6微秒,即96个bit时间
集线器是物理层上的设备:使用集线器的以太网在物理表象上是星型网,但在逻辑上还是总线型网。因为集线器只是简单的转发比特,不进行碰撞检测。
以太网的信道利用率:a=d/T。其中d为单程传输时延,T为帧的发送时间。a越小,信道浪费的时间就越少
MAC地址(硬件地址):有6字节长度,一个字节为两个16进制的数
IPV4有单播帧,广播帧,多播帧(需要软件处理)
以太网帧的组成:有8个字节的前导码:7字节的前同步码,1字节的帧开始定界符。
6字节的目的地址,6字节的源地址,2字节的类型
最后有4字节的帧检验序列、
碰撞域:在集线器下的双方的数据率必须相同,因为集线器只转发,不进行存储转发,连接多个会使碰撞域增大。
交换机:具有多种速率的接口,相互通信的主机都是独占传输媒体,无碰撞的传输数据。交换机的接口有存储器,可以在繁忙时 对帧进行缓存,现在的交换机基本都是热插拔的可以即插即用,其内部具有地址表,能够自学习,定期更新。
虚拟局域网(VLAN):作用:能够把不在同一个物理位置的主机(不一定要在同一个局域网内)规划为一个局域网,进行全发消息的时候,位于虚拟局域网中的人会收到消息。这样的以太网帧需要再加上4个字节长度的VLAN标记。
100BASE-T以太网:快速以太网,仍使用CSMA/CD协议
吉比特以太网:允许全双工和半双工两种工作方式。
10吉比特以太网:只工作在全双工模式下,不存在争用问题,也不使用CSMA/CD协议