期末计网满绩计划
教材:计算机网络(第七版)谢希仁版
数据链路层
- 数据链路层
数据链路层
1. 链路与数据链路
- 结点:主机和路由器
- 链路:从一个结点到相邻结点的一段物理线路,而中间没有其他交换结点。
- 数据链路:当需要在一条线上传送数据时,处理必须有一条物理线路外,还必须有一些表的通信协议来控制在这些数据的传输,把这些二协议的硬件和软件加到链路上,构成数据链路。
2. 数据链路层的三个基本问题:封装成帧、透明传输和差错检测
- 封装成帧:把网络层交下来的IP数据包添加首部和尾部封装成帧。
- 透明传输:
SOH、EOT一个是开始的控制符号,一个是结束的控制服务。
用特殊比特流实现帧同步,某一个实际存在的事物看起来却好像不存在一样。表示无论是什么样的比特组合数据,都能够按照原样没有差错地通过这个数据链路层。因此,对锁传送地数据来说,这些数据就“看不见”链路层有说明妨碍数据传输地东西。或者说,数据链路层对这些数据来说是透明的。
为了解决透明传输地问题,就必须设法使数据中可能可能出现地“SOH”和“EOT”在接受端不被解释为控制字符。可以在SOH或是EOT前面插入一个转义字符ESC 而在接受端的数据链路层在把数据送往网络层之前删除这些插入的控制字符。这种方法也称为字节填充,字符填充。
- 差错检测:
3. MTU 误码率 无差错接受 可靠传输 传输差错:比特差错、帧丢失、帧重复、帧失序
- 最大传送单元MTU :每一种链路层协议都规定所能传送的帧的数据部分长度上限。
- 误码率BER :在一段时间内,传输错误的比特占所传输比特总数的比率。
- 无差错接受:凡是接收端数据链路层接收的帧,我们都能以非常接近于1的概率认为这些帧在传输过程中没有产生差错。
- 可靠传输:数据链路层的发送端发送什么,在接受端就收到什么。
- 比特差错:比特在传输过程中可能会产生差错,1可能会变成0,0也可能会变成1。
- 帧丢失:收到[#1]-[#3](丢失[#2])
- 帧重复:收到[#1]-[#2]-[#2]-[#3](收到两个[#2])
- 帧失序:收到[#1]-[#3]-[#2](后传输的帧反而先到达)
4. 循环冗余校验码 CRC(计算)
5. PPP(特点、帧格式、工作状态)
PPP 点对点协议,是目前使用得最广泛得数据链路层协议。用于拨号接入得PPP,在以太网交换机和主机之间得点对点链路。不可靠传输,全双工。
5.1 特点:
- 简单:PPP协议并没有像TCP协议或是IP协议那么复杂,数据链路层得协议没有必要提供比TCP/IP协议更多的功能,因此数据链路层的帧,不需要纠错,不需要序号,也不需要流量控制。所以IETF把“简单”作为首要的需求。
数据链路层的协议非常简单,接收方每收到一个帧,就进行CRC检验,如果CRC检验正确,就收下这个帧,反之则丢弃这个帧,其他扫码也不做。
- 封装成帧:PPP协议必须按照规定的特殊字符作为帧定字符。上文提到的SOH或是EOT等等。
- 透明性:PPP协议必须保证特殊字符的透明性,也就是说如果数据中碰巧出现了和帧定界符一样的比特组合时候,就要采取特殊的措施,如同上文提到的字节填充等等。
- 多种网络层协议:PPP协议必须能够在同一条物理链路上同时支持多种网络层协议(IP和IPX等)的运行。当然也必须支持局域网或是路由器运行的各种网络层协议。
- 多种类型链路:PPP协议还能支持多种类型在链路上运行,串行还是并行,同步或是异步,低俗或是高速等等。
- 差错检测:PPP协议必须能够对接收端收到的帧进行检测,并立即丢失有错误的帧。如果无法进行差错检测,那么错误的无用帧就会在链路层上继续前进,浪费许多网络资源。
- 检测连接状态:PPP必须具有一种能够及时自动检测链路是否正常工作的状态。每隔几分钟发一次。
- 最大传送单元:PPP协议必须对点对点的链路设置最大传送单元MTU,如果高层发送分组过长并超过MTU的数值,PPP就要丢弃这样的帧,并返回差错。强调一点:MTU是数据链路层的帧可以载荷的数据部分的最大长度,不是帧的长度。
- 网络层地址协商:PPP协议必须提供使得通信的两个网络层(例如两个IP层)的实体能够通过协商知道或能够配置彼此的网络地址。
- 数据压缩算法:提供一种方法来协商使用数据压缩算法,但是PPP协议并不要求数据压缩算法进行标准化。
PPP协议的组成
一个将IP数据报封装到串行链路的方法。
一个用来建立、配置和测试数据链路层连接的链路控制协议LCP。
一套网络控制协议NCP。
5.2 帧格式
- 各字段的意义
F :标志字段
A :地址字段
C :控制字段 - 字节填充
当信息字段中出现和标志字段意义的比特(0x7E)组合时,就必须采取一些措施是这种形式上和标志字段一样的比特不出现在信息字段中
- 把信息字段中出现的每一个0x7E字节转变成为2字节序列(0x7D、0x5E)
- 若信息字段中出现一个0x7D的字节(即出现了和转义字符一样的比特组合),则把0x7D字节,同时将转变为2字节序列(0x7D、0x5D)。
- 若信息字段中出现ASCII码的控制字符,则在该字符前面加一个0x7D字节,同时将字符的编码加以改变。
- 零比特填充
PPP协议用在SONET/SDH链路时,使用同步传输(一连串的比特连续传送)而不是异步传输(逐个字符地传送)。在这种情况下就要采用零比特填充方法来实现透明传输。
- 在发送端像扫描整个信息字段。
- 只要发现5个连续地1,则立即填入一个0.
- 接收方收到一个帧,先找到一个标志字符F,确定一个帧的边界。
- 发现5个连续1是,就把5个连续的1后的一个0删除,还原成原来的信息比特流。
5.3 工作状态
- 物理层连接建立
- 再进行LCP配置协商,如果协商失败,则链路静止。
- 如果成功进行鉴别,鉴别失败则链路终止
- 鉴别成功或无须鉴别,则进入网络层协议,进行NCP配置协商。
- 当网络层配置完毕后,链路就进入可进行数据通信的链路打开状态。
LCP(链路控制协议)是PPP协议的底层,负责链路控制;
NCP(网络控制协议)是PPP协议的上层,负责网络控制。
6. 共享通信媒体资源的技术
6.1 静态划分通道
上一章提到的,频分复用,时分复用,波分复用,波分复用和码分复用。
6.2 动态媒体接入控制(多点接入)
信道并非再用户通信时固定分配给用户。
- 随机接入:
所有用户可随机地发送信息。但如果恰巧有两个或更多地用户通信同一时刻发送信息,那么在共享媒体上产生碰撞(发生冲突)。 - 受控接入:
用户不能随机的发送信息而必须必须服从一定的控制。这类的典型代表有分散控制的令牌环局域网和集中控制的多点线路探询,也称为轮询。
7. Mac 地址,I/G 位,G/L 位
7.1 Mac 层的硬件地址
硬件地址又称物理地址或MAC地址
7.2 I/G位
地址字段的第一个字节的最低位为I/G位,当I/G位为0时,地址字段表示一个的单个站地址。当I/G位为1时表示组地址,用来进行多播。
7.3 G/L位
地址字段第1字节的最低第二位规定为G/L位,当G/L为0时候是全球管理(保证全球没有相同的地址),当G/L为1时时本地管理,这时用户可任意分配网络上的地址。
7.4 帧类型
- 单位帧 (一对一):收到的帧的MAC地址于本站的硬件地址相同
- 广播帧(一对全体):即发送给本局域网上所有站点的帧(全1地址)
- 多播帧(一对多):即发送给本局域网上的一部分站点的帧。
7.5 帧格式
8. CSMA/CD 协议
载波监听,多点接入,碰撞检测,为了减少冲突发生的概率。不可靠传输,半双工。
- 多点接入:就是说明这是总线型网络,许多计算机以多点接入的方式连接在以跟总线上。协议的实际是“载波监听”和“碰撞检测”
- 载波监听:用电子技术检测总线上有没有其他计算机也在发送。就是检测信道,不管在发送前,还是发送中,每个站都必须不停地检测信道。
- 碰撞检测:边发送边监听,即适配器边发送数据边检测信道上的信号电压的变化情况,以便判断自己在发送数据其他站是否也在发送数据。
每一个站在自己发送数据之后的一小时内,存在着遭遇碰撞的可能性。这一小段是不确定的,它取决于另一个发送数据的站到本站的距离。因此以太网不能保证某一时间之内一定能把自己的数据帧成功发出去,因为存在碰撞。
9. 争用期、冲突窗口、最短帧长
- 争用期:从上图我们可以知道最先发送数据帧A站,在发送数据帧后至多经过时间
2t就可以知道所遇到的数据帧是否遭受到了碰撞,因此以太网的端到端往返时间2t为争用期。经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发送碰撞。 - 冲突窗口
也叫争用期和碰撞窗口 - 最短帧长
最短帧长是64字节,凡是小于64字节的帧都是由于冲突而异常终止的无效帧。只要收到了这种无效帧,就应该立即将其丢弃。
10. 以太网信道利用率
以太网的信道被占用的情况。
只有当参数a远小于1才能得到尽可能高的极限信道利用率。
11. 以太网帧格式
以太网V2的MAC帧较为简单,由五个字段组成。
- 前两个字段分别6字段长的目的地址和源地址字段。
- 第三个字段是2字段和类型字段。用来表示标志上一层使用的是什么协议,以便把收到来的MAC帧的数据上交到上一层的这个协议。
- 第四个字段是数据字段。
- 最后一个字段是帧检验序列FCS(使用CRC检验)
12. 透明网桥,生成树协议
12.1 透明网桥
透明网桥是一种即插即用设备,只要把网桥接入局域网,不需要改动硬件和软件,无需设置地址开关,无需装入路由表或参数,网桥就能工作。
12.2 生成树协议
在不改变网络的实际拓扑,但在逻辑上则切断了某些链路,使得一台主机到所有其他主机的路径是无环路的树状结构,从而消除了都兜圈子现象。
防止交换机冗余链路产生的环路.用于确保以太网中无环路的逻辑拓扑结构.从而避免了广播风暴,大量占用交换机的资源。
13. 交换机与集线器比较,VLAN
13.1 交换机与集线器比较
交换机把集线器淘汰了。
1)在OSI/RM(OSI参考模型)中的工作层次不同
交换机和集线器在OSI/RM开放体系模型中对应的层次就不一样,集线器是同时工作在第一层(物理层)和第二层(数据链路层),而交换机至少是工作在第二层,更高级的交换机可以工作在第三层(网络层)和第四层(传输层)。
(2)交换机的数据传输方式不同
集线器的数据传输方式是广播(broadcast)方式,而交换机的数据传输是有目的的,数据只对目的节点发送,只是在自己的MAC地址表中找不到的情况下第一次使用广播方式发送,然后因为交换机具有MAC地址学习功能,第二次以后就不再是广播发送了,又是有目的的发送。这样的好处是数据传输效率提高,不会出现广播风暴,在安全性方面也不会出现其它节点侦听的现象。
(3)带宽占用方式不同
在带宽占用方面,集线器所有端口是共享集线器的总带宽,而交换机的每个端口都具有自己的带宽,这样就交换机实际上每个端口的带宽比集线器端口可用带宽要高许多,也就决定了交换机的传输速度比集线器要快许多。
(4)传输模式不同
集线器只能采用半双工方式进行传输的,因为集线器是共享传输介质的,这样在上行通道上集线器一次只能传输一个任务,要么是接收数据,要么是发送数据。
13.1 VLAN 虚拟局域网
VLAN是由一些局域网网段构成的构成的与物理地址无关的逻辑组,而这些网段具有某些共同的需求。每一个VLAN的帧都有一个明确的标识符,指明发送这个帧的计算机是属于哪一个VLAN。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新