热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

《数据通信与网络》笔记对数据链路层的一点疑问

转自:http:blog.csdn.nettodd911articledetails9207581ARQ是AutomaticRepeatreQquest,即自动请求重

转自:http://blog.csdn.net/todd911/article/details/9207581


ARQ是Automatic Repeat reQquest,即自动请求重传。之前写过一篇介绍数据链路层的3种ARQ的文章,有兴趣的朋友可以参考:http://blog.csdn.net/todd911/article/details/9203167。在ARQ中用到了“滑动窗口”的概念,TCP在进行流量控制的时候,也采用了“滑动窗口”的方法。


问题1,既然,数据链路层采用了可靠的ARQ,可以重传,为什么在TCP又有可靠传输这一说呢?

答:链路层实现了ARQ协议,那链路层保证的可靠传输也是在“链路层”是可靠的。比如有传输如下:A ->B ->C ->D。如果链路层实现了ARQ协议,那至多也就保证中间的一个链路传输可靠。如A ->B是是可靠的。如果B是路由器的话,当B负载太大的话,也许它就在网络层把数据报丢掉了。这时, 对于A来说,它已经通过链路层可靠的将数据报发到B上,但当网络拥塞的时候,当这个数据包在B的等待队列是时候,有可能被B丢掉。这时就要靠传输层TCP的可靠传输了。总之,在链路层实现可靠(即采用ACK,重传)的办法,至多也就保证在“一段链路两个节点间可靠。”只有在传输层实现的可靠传输,才能保证“整条链路”的畅通。



问题2,这两个协议采用的滑动窗口有啥区别呢?

答:数据链路层的滑动窗口是“个数固定”的。而TCP的滑动窗口是“个数可变”的,可以由接收端设置。



问题3,传输层的流量控制和数据链路层的流量控制区别在哪?

答:数据链路层的流量控制是指相邻节点间的流量控制.而传输层的流量控制是指主机端到主机端的传输层连接的流量控制。

推荐阅读
  • 2020年腾讯PCG后端开发实习生面试经历分享
    本文详细记录了2020年腾讯平台与内容事业群(PCG)后端开发实习生岗位的面试过程,包括初试和复试的主要内容和技术考察点。 ... [详细]
  • 成为一名高效的Java架构师不仅需要掌握高级Java编程技巧,还需深入理解JVM的工作原理及其优化方法。此外,对池技术(包括对象池、连接池和线程池)的应用、多线程处理、集合对象的内部机制、以及常用的数据结构和算法的精通也是必不可少的。同时,熟悉Linux操作系统、TCP/IP协议栈、HTTP协议等基础知识,对于构建高效稳定的系统同样重要。 ... [详细]
  • 文章参考:http:bbs.elecfans.comjishu_1096643_1_1.html在AD采集中经常要用到数字滤波,而不同情况下又有不同的 ... [详细]
  • 本文探讨了如何利用数组来构建二叉树,并介绍了通过队列实现的二叉树层次遍历方法。通过具体的C++代码示例,详细说明了构建及打印二叉树的过程。 ... [详细]
  • RabbitMQ 核心组件解析
    本文详细介绍了RabbitMQ的核心概念,包括其基本原理、应用场景及关键组件,如消息、生产者、消费者、信道、交换机、路由键和虚拟主机等。 ... [详细]
  • 本文详细介绍了Socket在Linux内核中的实现机制,包括基本的Socket结构、协议操作集以及不同协议下的具体实现。通过这些内容,读者可以更好地理解Socket的工作原理。 ... [详细]
  • Java高级工程师学习路径及面试准备指南
    本文基于一位朋友的PDF面试经验整理,涵盖了Java高级工程师所需掌握的核心知识点,包括数据结构与算法、计算机网络、数据库、操作系统等多个方面,并提供了详细的参考资料和学习建议。 ... [详细]
  • 本文探讨了异步编程的发展历程,从最初的AJAX异步回调到现代的Promise、Generator+Co以及Async/Await等技术。文章详细分析了Promise的工作原理及其源码实现,帮助开发者更好地理解和使用这一重要工具。 ... [详细]
  • 入门指南:使用FastRPC技术连接Qualcomm Hexagon DSP
    本文旨在为初学者提供关于如何使用FastRPC技术连接Qualcomm Hexagon DSP的基础知识。FastRPC技术允许开发者在本地客户端实现远程调用,从而简化Hexagon DSP的开发和调试过程。 ... [详细]
  • Jenkins API当前未直接提供获取任务构建队列长度的功能,因此需要通过解析HTML页面来间接实现这一需求。 ... [详细]
  • 本文详细介绍了 Charles 工具的下载、安装、配置及使用方法,特别针对 HTTP 和 HTTPS 协议的数据抓取进行了说明。 ... [详细]
  • 在消息传递过程中,若交换器无法基于其类型及指定的路由键找到合适的队列,系统将依据'mandatory'参数的不同设置采取相应措施。 ... [详细]
  • 时序数据是指按时间顺序排列的数据集。通过时间轴上的数据点连接,可以构建多维度报表,揭示数据的趋势、规律及异常情况。 ... [详细]
  • LeetCode 104. 二叉树的最大深度 - 深度优先与广度优先策略
    本题探讨了如何通过深度优先搜索(DFS)和广度优先搜索(BFS)两种算法策略来求解二叉树的最大深度问题。二叉树的最大深度定义为从根节点到最远叶子节点的最长路径上的节点数目。 ... [详细]
  • 行为设计模式:命令模式详解
    命令模式是一种行为设计模式,它通过将请求封装为对象,使得可以使用不同的请求来参数化客户端,支持请求的排队、日志记录以及提供命令的撤销和恢复功能。 ... [详细]
author-avatar
MiMe淘宝店
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有