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

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

链路只是从一个节点到相邻节点的一段物理线路,中间没有任何其他的交换节点。所以说链路只是一条路径的组成部分。

数据链路:是必要的物理线路和必要的通信协议构成数据链路。

数据链路层的协议数据单元——-帧

类似在网络层协议数据单元是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)后,转到链路终止状态。

当调制解调器的载波停止后,则回到链路静止状态。

摘自:

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

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

时间: 2024-11-05 14:39:04

计算机网络读书笔记-----数据链路层的相关文章

计算机网络读书笔记-----数据链路层的可靠性

此篇是为了引出TCP的可靠机制. 停止等待协议: 在计算机网络发展的初期,通信网的传输质量普遍不是很好,所以数据传输的差错率较大.所以数据链路层就必须解决可靠传输的问题. 停止等待是最简单也是最基本的数据链路层协议 工作原理如下: 发送端每发送完一帧后就停止发送,等待接收端的确认,如果收到了接收端发来的确认帧,就继续发送下一帧. 在接收端,每收到一个无差错的帧,就将其交付给上层,并给发送端返回一个确认帧. 接收端如果收到有差错的帧,就悄悄的丢弃这个帧,其余什么也不做.发送端长时间没有收到接收端发

计算机网络读书笔记-----网络层

网络层提供的两种服务 网络层位于数据链路层之上,应用层之下,提供两种服务:数据报和虚电路,前者为无连接的网络服务,后者为面向连接的网络服务.这里有点类似TCP和UDP. 数据报服务:网络随时都可以接受主机发送的分组(数据报),网络为每个分组独立选择路由,尽最大努力将分组交付给目的主机,所以数据报服务提供的是不可靠的,不能保证服务质量. 虚电路服务:A要与B通信,首先A向B发送一条特定的消息,要求进行通信,B收到后返回响应,此时虚电路就建立起来了,然后传送数据即可,所以服务质量有着较好的保证. 项

计算机网络读书笔记-----UDP vs TCP

UDP: UDP用户数据报协议在IP数据报服务上只增加了分用复用和差错检测的功能. UDP是不具有可靠性的数据报协议. UDP的特点: UDP是无连接的: UDP不保证可靠交付,即尽最大努力交付 UDP是面向报文的: 发送方的UDP对应用程序交下来的报文,在添加首部后就直接交付给IP层.对应用层交下来的报文,既不拆分也不合并,而是保留这些报文的边界. 对IP层交上来的UDP数据报,在去除首部后就直接交给上层的应用进程,所以说UDP数据报一次交付一个完整的报文.如图所示: UDP没有拥塞控制. 所

计算机网络读书笔记-----应用层

每个应用层的协议都是为了解决某一类应用问题,而问题的解决又往往是通过不同主机之间多个应用进程之间的通信和协作工作来完成的.应用层的具体内容就是规定应用进程在通信时遵循的协议. DNS(Domain Name System ) DNS的出现: 用户与因特网进行通信时,显然不愿意使用很难记忆的32位二进制主机,即使点分十进制的IP地址也不容易记忆,相反愿意使用某种易于记忆的主机名. 在早期的时候,整个网络上只有数百台计算机,那时使用一个hosts的文件,列出所有的主机名字和相应的IP地址,用户只要输

【读书笔记】计算机网络1章:课程介绍、协议、分层

这是我在Coursera上的学习笔记.课程名称为<Computer Networks>,出自University of Washington. 由于计算机网络才诞生不久,目前正在以高速在发展,所以有些旧的教材可能都已经跟不上时代了.这门课程在2013年左右录制,知识相对还是比较新的.覆盖了计算机网络中的各个协议层,从物理层到应用层都讲得非常仔细.学完这门课程之后对计算机网络会有比较深刻的了解. 本章讲述了这门课程的大致情况,讲述了协议.协议层等基本概念. 目标和动机 课程的主要目标就是介绍计算

读书笔记:计算机网络第二章:物理层

这是我在Coursera上的学习笔记.课程名称为<Computer Networks>,出自University of Washington. 由于计算机网络才诞生不久,目前正在以高速在发展,所以有些旧的教材可能都已经跟不上时代了.这门课程在2013年左右录制,知识相对还是比较新的.覆盖了计算机网络中的各个协议层,从物理层到应用层都讲得非常仔细.学完这门课程之后对计算机网络会有比较深刻的了解. 本章详细讲解了物理层,讲解了比特流如何通过各种介质进行传播. 基本概述 物理层的功能 专注比特信号是

读书笔记:计算机网络9章:QoS服务质量

章节概述 本章节主要讲QoS服务质量.涉及到网络层.传输层和应用层. QoS和用户需要得到的服务种类有关.不同的服务需要的带宽.延迟.丢包率都是不一样的.QoS是未来互联网的重要问题之一. 目前的互联网没有服务质量保证.因为目前的网络只是将数据包尽力投递到对方服务器,然而投递的速度.延迟.丢包率都是没有保障的.但是有时候"尽力"投递是不够的,因为有些应用需要有性能方面有保障,比如VoIP电话.虽然我们不能增加现有网络的带宽,但是我们可以给用户分配不同的带宽给用户带来更多利益. 举个例子

读书笔记:计算机网络第7章:阻塞控制

这是我在Coursera上的学习笔记.课程名称为<Computer Networks>,出自University of Washington. 由于计算机网络才诞生不久,目前正在以高速在发展,所以有些旧的教材可能都已经跟不上时代了.这门课程在2013年左右录制,知识相对还是比较新的.覆盖了计算机网络中的各个协议层,从物理层到应用层都讲得非常仔细.学完这门课程之后对计算机网络会有比较深刻的了解. 概述 课程位置 关于传输层和网络层的上半部分 话题 阻塞就类似于显示生活中的堵车 阻塞CONGEST

读书笔记:计算机网络8章:应用层

最近一个问题很困扰我,今天则得到了答案,也意味着我该选择了. 不知道大家有没有遇到过这样的情况,我是上年刚毕业,大四时进行过java培训,12年9月-13年4月,在这之前已经自学过java.7月份时进入一家公司工作,今年3月份辞职,4月份找到工作,来上班了.一开始就不太喜欢公司氛围,前台,hr,态度什么的都不太好,工作环境也极像客服部,整天电话不断,讨论声不断,第一个星期真是煎熬,去了两三天之后有辞职的想法,但是后面想想还是算了,公司待遇还可以. 但是进入到公司后leader让学PHP,学PHP