码迷,mamicode.com
首页 > 其他好文 > 详细

计算机网络读书笔记-----数据链路层

时间:2015-07-20 14:31:46      阅读:251      评论:0      收藏:0      [点我收藏+]

标签:

  • 首先区分链路与数据链路的概念

链路只是从一个节点到相邻节点的一段物理线路,中间没有任何其他的交换节点。所以说链路只是一条路径的组成部分。
数据链路:是必要的物理线路和必要的通信协议构成数据链路。

数据链路层的协议数据单元——-帧
类似在网络层协议数据单元是IP数据报

路由器的协议栈只有三层:网络层,链路层,物理层
数据链路层的任务是:把网络层交下来的数据发送到链路上,以及把接收到的帧中的数据取出并上交给网络层。

技术分享
当两个主机进行通信时:应用进程将数据从应用层逐层往下传,经过传输层再到网络层,网络层将数据组成IP数据报,下传到数据链路层,数据链路层将其封装成帧到物理层,在物理层形成比特流后进入通信网络。
经过路由器,每一个路由器的物理层在收到比特流后,先由数据链路层将比特流恢复成帧,再从帧中提取出IP数据报,在路由表中找到下一跳的地址,路由器在转发IP数据报时,又再将其封装成另一个新的帧,然后交给物理层发送给下一个路由器。用这样的方式,经过许多路由器的转发,数据最后到达目的主机的物理层,逐层往上传最后交给远程的应用进程。

三个基本问题:帧定界,透明传输,差错检测。
帧定界:是指一个帧首部和尾部都加入了标记,使得接收端接收到的时候可以识别帧的开始和结束,以及帧里面装入的数据部分的准确位置。
中间帧的数据部分的长度上限——MTU(最大传送单元)
透明传输:帧的开始标识和结束标识是控制字符的名称,SOH和EOT,十六进制编码为01和04,但是当传输中二进制代码恰好和这两种的一样,就会错误的找到帧的边界

技术分享
会错误的认为前面是一个帧,而因为后面找不到开始标记,将后面的丢弃。
为了解决透明传输,必须将数据中可能出现的控制字符SOH和EOT转换成另外一个字符,这个字符不被解释为控制字符。称为字节插入。

数据中出现的控制字符 经字节插入后发送的字符
SOH ESCx
EOT ESCy
ESC ESCz

  
在接收端只要进行相应的逆变换就可以很方便的还原出原来的数据,使用这种字节插入法可实现透明传输。
差错检测:
  比特在传输过程中可能会产生差错,所以在数据链路传输层都广泛的使用了循环冗余检验CRC技术,但是CRC只能做到无差错接受(不包括丢弃的帧)。
  传输到接收端帧无差错,无丢失,无重复,同时还按发送的顺序接受,必须加上确认和重传机制。

  • 点对点协议PPP是数据链路层中使用的较多的协议。

PPP协议的组成:
将IP数据报封装到串行线路的方法,IP数据报在PPP帧中就是其信息部分。
用来建立配置和测试数据链路连接的链路控制协议LCP(通信的双方可协商的一些选项)
一套网络控制协议NCP,其中每一个协议支持不同的网络层协议。

因特网服务提供者ISP是一个提供用户拨号入网的经营机构,ISP的路由器与因特网通过高速专线相连,并且和电信公司的市话交换机也有专线相连。

PPP协议的工作状态:
当用户拨号接入ISP后,就建立了一条从用户PC机到ISP的物理连接,这时用户PC机向ISP的路由器发送一系列的LCP分组(封装成多个PPP帧)。这些分组及响应选择了将要使用的一些PPP参数,接着就进行网络配置,NCP给新接入的用户PC机分配一个临时的IP地址,这样用户PC机就成为因特网上的一个主机了。当通信完毕后,NCP释放网络层连接收回原来分配出去的iP地址,接着LCP释放数据链路层连接。最后释放的是物理层的连接。
技术分享

用户PC机通过调制解调器呼叫路由器时,路由器就能够检测到条直接掉漆发出的载波信号。在双方建立了物理层连接后,PPP就进入了链路建立的状态,目的是建立链路层的LCP连接。
此时LCP开始协商一些配置选项,即发送LCP的配置请求帧。
协商结束后就进入鉴别状态,若鉴别身份失败,则转到链路终止状态,若鉴别成功,则进入网络层协议状态
在网络层协议状态,ppp链路的两端的网络控制协议NCP根据网络层的不同协议互相交换网络层特定的网络控制分组。如果PPP链路上运行的是IP协议,则对PPP链路的每一端配置IP协议模块(分配IP地址)使就要使用NCP中支持IP的协议—–IP控制协议(IPCP)。
当网络层配置完毕后,链路就进入可进行数据通信的链路打开状态。链路的两个PPP端点可以彼此向对方发送分组。
数据传输结束后,可以由链路的一端发送终止请求LCP分组(Terminate-Request)请求终止链路连接,在收到对方发来的终止确认LCP分组(Terminate-ack)后,转到链路终止状态。
当调制解调器的载波停止后,则回到链路静止状态。

摘自:
计算机网络第五版.谢希仁

版权声明:本文为博主原创文章,未经博主允许不得转载。

计算机网络读书笔记-----数据链路层

标签:

原文地址:http://blog.csdn.net/u014307117/article/details/46966837

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!