第三章 数据链路层(二)-阿里云开发者社区

开发者社区> 老王爱java> 正文

第三章 数据链路层(二)

简介: 也没什么好说的,只能说继续努力,终有一天会拨开云雾见青天。
+关注继续查看

    序言

        也没什么好说的,只能说继续努力,终有一天会拨开云雾见青天。

                                                                      -----WZY

一、两种情况下的数据链路层

      点对点信道的数据链路层、 广播信道的数据链路层

    1、点对点协议PPP

        概述:现在全世界使用的最多的数据链路层协议就是点对点协议PPP(Point to Point Protocol),我们大多数用户使用的拨号电话线接入因特网时,一般使用的就是PPP协议,

                

    

        PPP协议的特点:

              ·简单:接收方每接收一个帧,就进行CRC检验,检验正确,就收下,否则就丢弃,它是不可靠传输,所以这就是简单的原因

              ·封装成帧:前一章已经讲过

              ·多种网络层协议:数据链路层的上一层就是网络层,所以它同时支持多种网络层协议的运行

              ·多种类型链路:比如,串行的、并行的,(串行:一个比特一个比特发送,只需要一条线路,并行:一次性传输n个比特,所以需要n条线路,所以叫并行)同步的、异步的(同步:以稳定的比特流的形式传输 异步:以字节为独立的传输单位,字节跟字节之间的时间间隔不确定,但字节中的每个比特仍是同步的。),低速或高速、电或光,等不同类型的链路都能支持

              ·差错检测:就是用CRC来检验

              ·透明传输

              ·检测连接状态:检测点跟点之间的连接状态,也就是在PC机和ISP之间的线路。

              ·最大传送单位:PPP协议帧有最大的传送单元,发送的分组不能超过这个最大长度

              ·网络层地址协商:使通信的两个网络层实体能够通过协商知道或能够配置彼此的网络层地址,通俗的讲,就是在分配IP地址时,就现需要这个协商才能解决,具体可以去查看资料学习

              

        PPP协议的组成

              1、数据链路层协可以用于异步串行或同步串行介质,通俗讲也就是可以适应多种性质的链路,有这种介质存在

              2、使用LCP(链路控制协议)建立并维护数据链路连接, 也就是上面讲的一些维护链路连接、检测连接状态等功能,就是用它来实现的

              3、网络控制协议(NCP)允许点到点连接上使用多种网络层协议,也就是因为跟网络层连接在一起,所以需要支持上一层的多种协议,这样才能完成一系列的功能,比如,网络层地址协商,

                  

       PPP协议帧格式

           看一张图就知道了

                

      

        PPP协议帧传输时的透明传输问题

             字节填充:

                  使用的是字节传输,也就是异步,所有的PPP帧的长度都是整数字节,所以会出现IP数据包中有字节跟开始结束标志字节相同的问题

                     解决: 标志字段 F = 0x7E   

                        IP数据包中出现0x7E字节 : 转变为 0x7D、0x5E

                        IP数据包中出现0x7D:0x7D、0x5D 

                        IP数据包中出现ASCII码的控制字符,则在该控制字符前面加0x7D

             零比特填充方法

                  使用的是比特流传输(一连串的比特连续传送),也就是同步,PPP协议就采用零比特填充方法来实现透明传输,就跟上一章讲的一样,具体看前面的吧,这里就不详细讲解了。

        PPP协议的工作状态

              链路静止、链路建立、鉴别、网络层协议、链路打开、链路终止 大概流程图就是下面这个图这样,

              

               具体细节:六步。正好验证了PPP协议的三部分组成

                   1、链路静止到链路建立:用户拨号接通ISP拨号服务器后,就创建了PC机到ISP服务器的物理连接,这里面的细节就归咎于物理层的功劳了,创建了一条怎么样的信道,通过什么传送数据,都市物理层需要做的事情。

                   2、链路建立到鉴别:建立了物理连接后,PPP中LCP(链路控制协议)就需要做事了,LCP协商一些配置选项(链路上的最大帧长,所使用的鉴别协议,或者不使用PPP帧中的地址和控制字段),如何跟ISP协商这些呢,就是通过发送LCP的配置请求帧,而ISP也可以发送几种响应,配置确认帧:所有选项都接受 配置否认帧:所有选项都理解但不能接受 配置拒绝帧:有的选项无法识别或不能接受,需要协商。 通过一系列的协商后,此过程就结束了,就到了鉴别状态,如果协商失败,就直接回到链路静止状态。

                   3、鉴别到网络层协议:这里到达网络层协议之间做的事情就是鉴别身份,这里感觉还没学习到,大概就是鉴别一些用户的身份信息,比如交钱了没有等等吧,猜的。这一阶段可以去查查,估计之后会遇得到。给出参考答案:只允许传送LCP协议的分组、鉴别协议的分组以及检测链路质量的分组。若使用口令鉴别协议PAP(Password Authentication Protocol),则需要发起通信的一方发送身份标识符和口令。系统可运行用户重试若干次。如果需要有更好的安全性,则可使用更加复杂的口令握手鉴别协议CHAP(Challenge-Handshake Authentication Protocol)。若鉴别身份失败,则转到链路终止状态(Link Dead)。若鉴别成功,则进入网络层协议状态(Network-Layer Protocol)。

                   4、网络层协议到链路打开:前面已经经过了PPP协议的前两层,接下来就是NCP(网络控制协议)做事的时候了,这一阶段就是给PC机分配一个IP地址和对链路层进行网络层协议的设置,让链路层能支持网络层的工作

                   5、链路打开到链路终止:进行传输数据,如果传输完成,就发送终止请求分组,收到终止确认分组后,就到了终止状态,

                   6、链路终止到链路静止:当物理层没有载波时,就到静止状态

        PPP协议为什么不适用序号和确认机制?

               这个问题也就是问为什么PPP协议不用可靠传输的意思?原因有三点

                    1、在数据链路层出现差错的概率不大时,使用比较简单的 PPP 协议较为合理。

                    2、在因特网环境下,PPP 的信息字段放入的数据是 IP 数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。
                    3、帧检验序列 FCS 字段可保证无差错接受。
 

   2、广播信道的数据链路层

        讲解广播信道的知识,就必须要提到以太网,但是现在大多数人已经把以太网就当成局域网了,现在来说清楚以太网和局域网的区别

            以太网和局域网?

              1、以太网是通信协议标准,该标准定义了在局域网(LAN)中采用的电缆类型和信号处理方法,比如有CSMA/CD协议,这个协议后面会讲到。

              2、局域网:在较小范围内组件的网络,通过交换器什么的连接各个PC机,比如一个实验室,一栋楼,一个校园内,这都市局域网,拿网线将两台计算机连在一起,这也能算是局域网,

              所以:以太网是一种局域网,而局域网却不一定是以太网,大多数局域网就是采用了以太网的这个标准,所以很多人就将局域网默认为以太网,这种说法是有点偏差的。

        在局域网中,就采用的是广播信道,

        广播信道:就是一台PC机发送数据给另一台PC机,在同一个局域网中的计算机都能接收到该数据,这就像广播一样,所以这种就叫做广播信道。

              

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
10022 0
第三章 数据链路层(二)
也没什么好说的,只能说继续努力,终有一天会拨开云雾见青天。
22 0
Pandas之三选择数据
介绍在pandas中筛选数据的几种方法,快速定位某行、某列、具体元素的方法
81 0
三个例子,让你看懂数据仓库多维数据模型的设计
一、概述   多维数据模型是最流行的数据仓库的数据模型,多维数据模型最典型的数据模式包括星型模式、雪花模式和事实星座模式,本文以实例方式展示三者的模式和区别。 二、星型模式(star schema)   星型模式的核心是一个大的中心表(事实表),一组小的附属表(维表)。
970 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
10880 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
13836 0
云原生数据库 2.0:一站式全链路数据管理与服务
5月29日,阿里云开发者大会上,阿里云数据库宣布「云原生数据库 2.0:一站式全链路数据管理与服务」的全新品牌理念及开源云原生数据库能力,首次从客户场景视角提出了一站式在线数据管理平台的理念。
16610 0
Cassandra 最佳实践系列(1) - CQL 基本数据类型
Cassandra cql基本数据类型介绍
1260 0
91
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载