数据链路的作用

数据链路层的协议定义了通过通信媒介互连的设备之间传输的规范。通信媒介包括双绞线电缆、同轴电缆、光纤、电波以及红外线等介质。此外,各个设备之间有时也会通过交换机、网桥、中继器等中转数据。

实际上,各个设备之间在数据传输时,数据链路层和物理层都是必不可少的。众所周知,计算机以二级制0、1来表示信息,然而实际的通信媒介之间处理的却是电压的高低、光的闪灭以及光波的强弱等信号。把这些信号与二进制的0、1进行转换正式物理层的责任。数据链路层处理的数据也不是单纯的0、1序列,该层把他们集合为一个叫做帧的块,然后再进行传输。

网络的连接和构成的形态成为网络拓扑

包括:总线型,环型,星型和网状型。

数据链路相关作用

MAC地址

用于识别数据链路中互连的节点,地址长48比特,一般用16进制数表示。在使用网卡的情况下,MAC地址会被烧入到ROM中。因此,任何一个网卡的MAC地址都是唯一的。

从通信介质的使用方法上看,网络可分为共享介质型和非共享介质型。

共享介质型有两种介质访问控制方式:一种是争用方式,另一种是令牌传递方式。

MAC地址转发

以太网交互机会根据数据链路层中每个目标MAC地址,决定从哪个网络接口发送数据。这时所参考的、用意记录发送接口的表就叫做转发表。

转发表并非手动设置,而是交换机自动学习得到的。当某个设备向交换机发送帧时,交换机将帧的源 MAC 地址和接口对应起来,作为一条记录添加到转发表中。



当设备数量增加时,转发表也会随之变大,检索转发表所用的时间就越来越长,所有,有必要将网络分成多个数据链路,采用类似于网络层的IP地址一样对地址进行分层管理。

环路检测方式

  • 生成树方式
  • 源路由法

以太网帧

以太网帧的开头是“前导码(Preamble)”,长度为 8 字节,这一段没什么用,重点在于以太网帧的本体。

本体由首部,数据和 FCS 三部分组成:

类型部分存储了上层协议的编号,比如上层是 IP 协议,则编号为 0800。

FCS 表示帧校验序列(Frame Check Sequence),用于判断帧是否在传输过程中有损坏(比如电子噪声干扰)。FCS 保存着发送帧除以某个多项式的余数,接收到的帧也做相同计算,如果得到的值与 FCS 相同则表示没有出错。

无线通信

无线通信通常使用电磁波、红外线、激光等方式进行传播数据。一般在办公室的局域网范围内组成的较高速的连接成为无线局域网。

IEEE802.11

IEEE802.11定义了无线LAN协议中物理层与数据链路层的一部分(MAC层)。IEEE802.11这个编号有时指众多标准的统称,有时也只无线LAN的一种通信方式。主要针对笔记本电脑这样较大的计算机设备的标准。

蓝牙

是使用2.4GHz频率无线电波的一种标准,主要为手机或者智能手机、键盘、鼠标等较小设备而设计的标准。

PPP

PPP是指点对点,及1对1连接计算机的协议。

以太网使用同轴电缆或双绞线电缆,它可以决定其中的0,1该被解释为何种电子信号。与之相比,PPP属于纯粹的数据链路层,与物理层没有任何关系。及仅有PPP无法实现通信,还需要有物理层的支持。



PPP可以使用电话线或ISDN、专线、ATM线路。

LCP与NCP

在开始进行数据传输前,要先建立一个PPP级连接。这个连接建立以后就可以进行身份认证、压缩与加密。

PPP包括两个协议:

  • 不依赖上层的LCP协议: 主要负责建立和断开连接、设置最大接收单元、设置验证协议以及设置是否进行通信质量的监控。

  • 依赖上层的NCP(如上层为IP,也叫做IPCP)协议:负责IP地址设置以及是否进行TCP/IP首部压缩设备。

    PPP的帧格式

PPP0E

单纯的以太网没有验证功能,也没有建立和断开连接的处理,因此无法按时计费。而如果采用PPPoE管理以太网连接,就可以利用PPP的验证等功能使各家ISP可以有效地管理终端用户的使用。

主要数据链路类型及特点

公共网络

公共通信服务类似于电信运营商(如NTT、KDDI或软银等)提供的电话网络。人们通过这些运营商签约、付费不仅可以实现联网还可以与距离遥远的机构组织进行通信。

常见的有模拟电话线路、移动通信、ADSL、FTTH、有线电视、专线、VPB以及公共无线LAN等内容。自行了解下就好,就不一一介绍了。

关于数据链路层,最重要的一点还是它的定义:“通过通信介质相互连接的设备之间,数据传输的规范”。这说明数据链路层的协议适用于处于同一种数据链路两端的节点。如果不能理解这一点,就无法理解网络层和 IP 协议。

数据链路层的意义在于,如果没有数据链路层,数据只能以流的形式存在与通信介质中,不知道该发送往哪里,过长的数据流可能无法在通信介质中传输。

TCP/IP笔记(三)数据链路层的更多相关文章

  1. TCP/IP笔记 三.运输层(2)——TCP 流量控制与拥塞控制

    TCP 的流量控制与拥塞控制可以说是一体的.流量控制是通过滑动窗口实现的,拥塞避免主要包含以下2个内容: (1)慢开始,拥塞避免 (2)快重传,快恢复 1.流量控制——滑动窗口 TCP采用大小可变的滑 ...

  2. TCP/IP笔记 三.运输层(4)——TCP链接管理与TCP状态机

    1. 建立连接 三次握手 (1)A 的 TCP 向 B 发出连接请求报文段,其首部中的同步比特 SYN 应置为 1,并选择序号 x,表明传送数据时的第一个数据字节的序号是 x. (2)B 的 TCP ...

  3. TCP/IP笔记 三.运输层(1)——UDP,TCP

    1. 运输层 1.1 两种协议:TCP和UDP. (1)TCP:提供了一种可靠的数据传输服务,TCP是面向连接的,只有链接建立起来后才能通信. (2)UDP:是把数据直接发出去,而不管对方是不是在收信 ...

  4. TCP/IP笔记 三.运输层(3)——TCP超时重传算法

    TCP 每发送一个报文段,就对这个报文段设置一次计时器.只要计时器设置的重传时间到但还没有收到确认,就要重传这一报文段 1. 平均往返时延RTT 往返时延:一个报文段发出的时间,以及收到相应的确认报文 ...

  5. Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手)

    Python进阶----网络通信基础 ,OSI七层协议() ,UDP和TCP的区别 , TCP/IP协议(三次握手,四次挥手) 一丶CS/BS 架构 C/S: 客户端/服务器    定义:       ...

  6. TCP/IP协议三次握手与四次握手流程解析

    原文链接地址:http://www.2cto.com/net/201310/251896.html TCP/IP协议三次握手与四次握手流程解析 TCP/IP协议的详细信息参看<TCP/IP协议详 ...

  7. TCP/IP协议三次握手与四次握手流程解析(转载及总结)

    原文地址:http://www.2cto.com/net/201310/251896.html,转载请注明出处: TCP/IP协议三次握手与四次握手流程解析 一.TCP报文格式  TCP/IP协议的详 ...

  8. TCP/IP的三次握手协议

    关于TCP/IP的三次握手协议,这篇文章中有详细的介绍,很通俗易懂,什么时候忘了,都可以过来瞧两眼,保证很快就明白了. 首先TCP/IP协议分为三个阶段:建立连接(握手阶段),数据传输阶段,连接终止阶 ...

  9. TCP/IP笔记

    TCP/IP 连接 三次握手 TCP/IP 四次分手 @TODO TIME_WAIT 状态 有三种状态可以进入此状态 1.由FIN-WAIT-2,双方不同时发起FIN,主动关闭的一方在完成自身发起的关 ...

随机推荐

  1. “权限系统_基于HUI”的简单介绍和交流

    昂,最近比较闲,写了个权限系统. 后端框架还是老样子,基于本人自己搭建的后台基础开发框架"Spring_Mvc_EF":前端框架,我挑选了一阵子,最后选用了HUI前端开发框架,因为 ...

  2. [TensorFlow] Basic Usage

    Install TensorFlow on mac Install pip # Mac OS X $ sudo easy_install pip $ sudo easy_install --upgra ...

  3. Python学习--15 日期和时间

    获取当前时间 # coding: utf-8 from datetime import datetime now = datetime.now() print(now) print(now.strft ...

  4. java_XML_DOM1

    一.Java DOM 的 API: 1.解析器工厂类:DocumentBuilderFactory 创建的方法:DocumentBuilderFactory dbf = DocumentBuilder ...

  5. JAVA_file(1)

    1.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:xyz est.txt 代表了test.txt文件的绝对路径.http://www.s ...

  6. Linux实战教学笔记12:linux三剑客之sed命令精讲

    第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...

  7. CSS3知识点整理(五)----响应式设计及其他属性

    介绍Media Queries与Responsive设计以及外轮廓属性.resize属性.CSS3生成内容等 学会如何使用CSS3中的Media Queries模块来让一个页面适应不同的终端(或屏幕尺 ...

  8. PL/SQL基本概念

    首先明确PL/SQL主要作用作用: SQL语言适合管理关系型数据库但是它无法满足更复杂的数据处理,所以产生PLSQL.PLSQL用户创建存储过程.函数.触发器.包及用户自定义的函数. 特点: PLSQ ...

  9. 我的Java开发之路

    拉拉溜溜学习了半年了.才发现自己现在才进入面向对象.

  10. weex官方demo weex-hackernews代码解读(下)

    weex 是阿里出品的一个类似RN的框架,可以使用前端技术来开发移动应用,实现一份代码支持H5,IOS和Android.而weex-hacknews则是weex官方出品的,首个使用 Weex 和 Vu ...