IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络学习 -> 正文阅读

[网络协议]计算机网络学习

计算机网络之数据链路层

一、数据链路层概述

1、主要内容
链路和数据链路的概念

数据链路层的功能:封装成帧, 差错检验

二、封装成帧和透明传输

1、主要内容
封装成帧的概念:
发送方在一段数据的前后分别添加首部和尾部。

接收方在收到物理层上交的比特流之后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束

为什么要封装成帧:
因为物理层的数据传输的不可靠,导致有时候会出现误码。比如有外界的干扰,低电压变成高电压。0有可能变成1。1也有可能变成0。

物理层只负责传输。有问题的数据不能直接交给高层去处理,比如应用程序。专家设计数据链路层负责检查收到的数据是否有差错。因此数据链路层的功能之一就是差错检测。

检测到有差错后,接收方一般都是直接丢掉。通知对方重新传输过数据。那对方需要重新发送过哪部分的数据? 如果是比特流就很难操作了,只能把所有的比特流都传输过一遍。如果将比特流分成一个一个的帧就好办多了。只需要告诉对方重新发送过哪个帧(也就是出问题的数据块)就行了,其他部分就不用重新传输过了。。因此数据封装成帧很重要。这个主要是由网卡负责实现。物理层和数据链路层的功能都是通过网卡来实现。

以前数据链路层的数据传输质量差,因此数据链路层不仅负责检验差错,还需要负责通知对方重新发送数据,实现数据的可靠传输。但是现在传输质量大幅度提高,数据链路层只负责进行差错检测,通知对方重新传输的责任交给高层,也就是交给传输层去处理了。这个也是目前的以太网和PPP协议采用的方法。我们这本书也是把可靠传输放到了传输层讲解。

什么是透明传输:
无论什么样的比特组合的数据,都能够按照原样没有差错的通过这个数据链路层。或者换句话说,对所传输的数据来说,这些数据就“看不见”数据链路层有什么妨碍数据传输的东西。或者说,数据链路层对这些数据来说是透明的。

两种常见方法实现透明传输
转义字符:面向字节传输过程中,双方约定好的特殊字符或特殊约定作为转义字符

0比特填充:面向比特传输过程中,5个连续的“1”后添加一个“0”

三、差错检测:CRC循环冗余校验

1、主要内容
如果要实现差错检验,必须在发送数据的后面增加校验码,否则实现不了。校验码的值由校验方法决定。常用的校验方法:

奇偶校验:简单,漏检率较高。
CRC循环冗余校验:这个考试经常考。请务必要会计算。它的工作原理:
是双方约定好一个共同的除数,这个就是生成多项式。这个生成多项式很重要,最高位决定了校验码的位数。比如双方约定 最高位是3,则校验码的位数是3位。多项式转为1101 ,好方便后面的计算。

发送方计算 : (发送的数据 + 位数个0 )/生成多项式 , 得到一个余数。什么是位数个0 ? 继续以上面的生成多项式为例,校验码的位数是3 位,则位数个0 就是3个0.

开始计算 。比如要发送的数据是 : 101001, 生成多项式为 , 则计算 : 101001000 / 1101 。一定要记得加3个0。经常有同学忘记。

除法过程记住是做异或运算:相同为0,不同为1.

得到余数 : 001 . 则这个就是校验码。3位,由生成多项式决定的。值就是算出来的余数。

发送方发送 数据 + 校验码 。例如就是 101001001。

接收方 收到 数据 ,做同样的操作 : 接收到的数据/ 生成多项式。 比如 101001001 / 1101。如果没有差错的话,则余数一定为0,如果中间有问题的话,则余数不为0.

漏检率有吗?有。所以一般网卡的生成多项式都是CRC-16或者32。位数很多。这样就降低漏检率。但是比奇偶校验强多了。效率也高多了。

四、点对点信道:PPP协议

1、主要内容
PPP的特点:
PPP的组成:LCP和NCP
PPP的帧结构:
FCS字段采用的CRC 校验方法。

透明传输:

异步传输:以字节为单位进行传输,例如家庭用户拨号上网。所以采用的转义字符方法来进行透明传输。

同步传输:以比特为单位进行传输,例如路由器和路由器之间的连接,所以采用0比特填充方式来实现透明传输

PPP的工作状态

五、广播信道:CSMA/CD

1、主要内容
静态划分:在物理层使用的。比如已经学过的频分复用,时分复用等等。但是这种方法代价比较高,一般用于主干网,不适用于局域网适用。

动态媒体接入控制:

受控接入:用户不能随机地发送信息必须服从一定的控制。这类的典型代表就是令牌环网。不会产生冲突。

随机接入:用户可随机的发送信息,因此有可能两个或更多的计算机在同一时刻发送信息,就要产生冲突。或者是碰撞。信号发生冲突也就是信号叠加。比如原来是5伏电压,两个信号叠加,变成10伏电压,那这个到底是比特1还是比特0?都不是。因此就会被丢弃。发生冲突后,用户的发送就意味着失败。因此,必须要有解决碰撞的协议。典型代表就是CSMA/CD (Carrier Sense Multiple Access with Collision Detection)

B B B D C A D C

六、以太网

1、主要内容
以太网络的发展历史

以太网络的帧结构:重点。

MAC地址的类别:

单个地址,一对一传输

广播地址,全为1,一对所有传输

组播地址,一对部分。

七、网络设备:集线器和交换机

1、主要内容
计算机需要通过一些网络设备实现互连,或者增加计算机也需要使用网络设备进行网络的扩展。

在以太网中,常用的网络设备是以下两种:

集线器:
只是单纯的把接收到的信号放大继续传输。所以最早的时候是叫做中继器repeater。中继器后来升级成为多口中继器,multiple-port-repeater、就是集线器了 HUB。它不对信号做任何处理,所以它是属于物理层的设备。

冲突域:当有两台或以上的计算机同时发送数据会发生冲突或碰撞,这些会发生冲突或碰撞的计算机构成的区域就称之为冲突域或碰撞域。

冲突域的范围越小越好,所以冲突域的数量越多越好。冲突域的划分以交换机为标志。

交换机:
交换机比集线器聪明很多,它可以根据收到的帧的目的地址进行判断,再转发到相应的端口。而不是像集线器样的,全部端口转发。为什么交换机会这么聪明?就是因为交换机里有一张很重要的表,MAC地址表。这张表是交换机自学习建立起来的。并且由于交换机要用到帧结构的地址,所以我们把交换机划分到数据链路层。称之为二层交换机或二层设备。交换机的一个端口就是一个冲突域。所以计算冲突域的数量时候要看清楚是什么设备。

交换机通过源地址建立地址表,根据目的地址去查表进行数据转发。两个地址不要搞混了。

一个交换机的一个端口对应一个冲突域,换句话说,一个信道上就一台计算机,因此在交换机可以不需要csmacd。任何时候发送数据信道都是空闲的。因此可以组成100M和千兆以及10Gbit的以太网。不管是什么带宽的以太网,还是使用相同的帧结构。参考视频: 以太网的分类和实例

广播域:发送一个广播数据帧,能够接收到的所有的计算机组成的区域就是一个广播域。交换机不能阻断广播数据帧,但是路由器可以,所以以路由器为标志进行广播域的划分。

广播域的范围也不能太大,太大的话,不好管理,并且很多病毒都是以广播数据帧的形式在局域网进行传播。所以广播域的范围不能太大。比如南昌大学一般来说就是以学院为单位进行广播域的划分。然后各自学院再根据自己的情况再进行划分。

广播域也就是一个网段。网段的概念我们到网络层再介绍。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-22 20:58:43  更:2022-03-22 21:00:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:27:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码