无损网络和有损网络

这篇具有很好参考价值的文章主要介绍了无损网络和有损网络。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

无损网络近来越来越多被提到,无损网络似乎是 RDMA 的必须,为了减轻主机侧的负载(这是 RDMA 的目标之一),网络就要承担复杂,因此,RoCE 为 RDMA 承诺了一个无损链路层,这样 RDMA 就不必再实现丢包重传那些东西了。可靠传输是在底层保证的,而不是在传输层保证的。
但物理链路不可能无损,这就好像交通事故一定会发生一样,所有无损网络链路层均需要提供可靠传输,它们本质上就是一个可靠传输承载协议。可靠传输一定要应对并解决丢包,乱序问题,而方法就是 ARQ,FEC 此类,go-back-n,sack 只是例子。
另一方面,几乎所有可靠传输协议无一例外都避不开 TCP 的影响,至少任何一个新协议都要保持 TCP 友好,对 TCP 公平。所有可靠传输都要高效且公平,于是大家纷纷学 TCP 的样子来做。可 TCP 的存在正是因为底层链路不可靠的缘故,而不是它必须存在。
如果底层是一个无损网络,谁还会用 TCP。如何做一个可靠传输协议应该关注底层可靠性,而不是学 TCP。
即使底层不是一个完全的无损网络,只要它足够可靠,传输层协议也会大有不同。在目前的数据中心以及广域骨干链路这种足够可靠几乎无损的环境,假设我们忘掉 TCP,类 TCP 的可靠传输协议有多大概率会被重新引入。
在重新引入类 TCP 协议前,不得不重新评估它自身的负担。整个互联网超过一半的流量是 TCP 流量,其中又有几乎 1/4 到 1/3 的流量是 pure ACK,而 ACK 仅仅为了提供一个滑动窗口时钟并辅助测量,这已经是非常大的负担。 TCP 才是问题本身,而不是解决方案。
在丢包率不足 0.01% 的网络如何应对丢包和丢包率超过 10% 的网络应对丢包的策略完全不同。为万里挑一的丢包引入源源不断的 pure ACK 时钟仅为指示丢包非常不划算,pure ACK 传递的永远是有效信息,比如拥塞指示,吞吐反馈,以及其它变化量,pure ACK 应边沿触发而非水平触发。
丢包率极低的准可靠网络环境,无论 go-back-n,sack,rto 等 ARQ 还是 FEC 都不划算,都不如应用程序发现问题主动请求重传。传输层将大大简化。目前数据中心网络 transport 都在陆续走上这条路,丢包是 app-aware,而不是 transport-aware。
但 TCP 诞生的 1970 年代,底层信道质量远非可靠,主机资源有限,TCP 就是最优解。TCP 随后的迭代始终保持着该基因,即底层信道是不可靠的,无论 fast retransmit,sack,rack 都在基于此认同上进行优化。因为 TCP 太成功了,以至于几乎成了唯一解,即使链路信道质量已经好到不再需要像 TCP 那般谨慎了,甚至可靠传输本身已经廉价到可由应用程序自己负责了,几乎所有的新传输协议还是无法摆脱 TCP 的影子。
再往底层说,数据中心网络链路信道已经如此可靠,RoCE 却像极了一个链路层的 TCP,go-back-n,ECN…总之还是 TCP 那一套,以至于这些底层协议依然假定,信道是会发生丢包的,丢包需要被应对,这和 TCP 基因里的假设没有任何区别。
首先,可靠传输不仅仅只是 TCP,go-back-n,ECN 也不仅仅属于 TCP,它们是任何可靠传输的选项。其次我们再来看丢包。丢包分误码丢包和拥塞丢包,现如今的误码丢包已经非常罕见,但拥塞丢包大多数还是自找的。
拥塞丢包,简单说就是发的太多了,为了应对这种情况,需要拥塞控制。拥塞控制分分布式和集中式两类。早期关于互联网设计哲学的辩论,倾向于将互联网设计成了胖端瘦网的分布式结构,几乎于此同时,以太网成功占领了互联网的枝端,而以太网本身也是分布式控制网络,它和互联网基本是一回事。
和互联网交换机 buffer 溢出丢包一样,以太网在重试次数超过一定阈值后会放弃重试而丢包,而最大重试次数表示的就是一个有最大值限制的最大等待时间,以太网丢包策略几乎就是一个完备的 RED。无论交换机还是以太网,都没有中心控制器对拥塞源进行抑制,需要指示拥塞并付出了丢包代价时,拥塞肯定已经发生了,这是互联网和以太网的基因,它们都是有损网络。
将传输协议和网络结合,要么像 RoCE 在有损网络上提供无损链路层,要么像 TCP 在有损网络上提供无损传输层,二者是一回事,区别在于 RoCE 卸载了 CPU 的负担,而 TCP 必须由 CPU 处理。
整体回顾,我们发现 TCP 也好,RoCE 也好,它们与互联网以及以太网是契合的。互联网和以太网提供了一个有损网络,这也是上层协议的唯一假设。
真正的无损网络必须引入中心控制,彻底摆脱由于拥塞导致的丢包,可参考 infiniband,ATM 等实现,而不是在以太网上打 patch,以太网再打 1000 个 patch 也还是修修补补,改变不了基因,就像打地鼠一样,这边打下去那边冒头,PFC 用延时换溢出,总之还是拥塞不顺畅,这其实可以看成是 pause 帧的细化,还要解决死锁问题,越来越复杂。这是由于以太网分布式本质造成的。就算你想出再新式的 “算法”,无一例外都很以太网,INT,带内逆向捎带 ECN,都改变不了。
本文两个层面说问题,丢包分两类,信道误码丢包和拥塞丢包。第一种情况,信道质量越好,应用程序自行检测的成本越低,越倾向于传输协议不实现可靠传输,第二种情况,分布式端到端拥塞控制本质上只是转移等待时间(重传延时,排队延时等),无法彻底避免拥塞,丢包一定会发生,因此拥塞丢包必须处理。愿景是,当带宽足够大,大到分布式网络上跑满了 application-limited 自限性流量依然跑不满带宽时,分布式拥塞就彻底避免了,否则,引入一套中心控制机制终究还是不雅。

今天想到一个例子,打电话不会拥塞,没有排队延时,但会造成主叫长时间等待,打电话和互联网通信是两个极端,但改变不了的是总等待时间,不同的只是这段总时间的分布。很多人并不明白这一点,总以为用 buffer 兜住数据而不丢包就是无损网络的一切,实际上该损还得损,问题不在这里就在那里,最终都是时间,等待时间,CPU 时间,这一切都是守恒的。

浙江温州皮鞋湿,下雨进水不会胖。文章来源地址https://www.toymoban.com/news/detail-420873.html

到了这里,关于无损网络和有损网络的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 为什么越来越多的企业选择云计算?

    1.当下企业信息化的痛点 企业信息化,这也算是一个老生常谈的话题了,整个中国业内前前后后应该喊了有十多年了。不过到目前为止,我国很多企业公司都还没真正形成一个完整的信息化框架,或者只是运用了一个简单财务或客户管理系统。甚至还有很多公司企业根本连基

    2024年02月04日
    浏览(47)
  • 越来越看不懂的企业数字化转型……

    近日和一做乙方的老友相聚谈起了今年的企业数字化转型情况,都有一个整体的感受那就是: 越来越看不懂了,有价无市,看似热闹,实则观望。   经历几年疫情,行业内都普遍认为企业领导对于数字化的重视程度在提高,毕竟数字化的技术能力及所取得的成果在这两年是

    2024年02月13日
    浏览(52)
  • 为什么越来越多的企业选择云计算

    目录 一、前言 二、云计算的基础概念 2.1 云计算的定义 2.2 云计算的发展历程 2.3 云计算的基本架构 三、 企业采用云计算的优势 四、 行业应用案例 五、未来发展与挑战 六、总结 随着数字化转型的加速,越来越多的企业开始选择云计算作为信息技术应用的基础设施。那么,

    2024年02月02日
    浏览(59)
  • mac电脑储存内存越来越小如何清理释放空间?

    如果你是一位Mac系统的用户,可能会发现你的电脑储存空间越来越小。虽然Mac系统设计得非常优秀,但是系统数据和垃圾文件也会占据大量的储存空间。在这篇文章中,我们将探讨mac系统数据怎么这么大,以及mac清理系统数据怎么清理。 一、mac系统数据怎么这么大 许多Mac用

    2024年02月08日
    浏览(59)
  • Clarity - 微软你越来越懂用户了,原来是因为她!

    Clarity——微软开源并完全免费使用的新一代网站体验分析利器,让你彻底了解你的用户; 产品的Slogan: 了解你的用户,改进你的产品,改进你的业务 近年来,微软的软件产品用户体验确实有了很大提升,这与他们推出的 Clarity 这款免费体验分析工具分不开关系。今天,就让

    2024年04月13日
    浏览(44)
  • 为什么电脑运行越来越慢?解决方法又是什么呢?

    如果您经常使用电脑,肯定遇到过这种情况:对于新购买或者新安装了操作系统的电脑,它可以很顺畅地运行,速度也很快,但随着使用时间的增长,它的整体性能不断下降,速度越来越慢。 发生这种情况,除了电脑的使用年限过长、确实应该被淘汰以外,很大可能是“操作

    2024年02月08日
    浏览(64)
  • 为什么现在越来越多的企业选择云计算?

            云计算是用于描述在互联网上发生的一类新的基于网络计算的术语。 这些平台通过提供非常简单的图形界面,隐藏了用户和应用程序的基础架构的复杂性和细节。 云对用户和应用程序是透明的,它们可以以多种方式构建。 一般来说,它们建立在PC服务器集群上,

    2024年02月08日
    浏览(78)
  • 为什么无人机现在运用的越来越广泛呢?

    随着科技的飞速发展,无人机已经逐渐从科幻梦想走进现实,成为我们生活中不可或缺的一部分。它们不仅改变了我们的生活方式,还带来了无尽的惊喜与可能性。今天,让我们一起来探讨无人机的魅力与前景吧! 航拍美景: 无人机配备了高清摄像头,可以轻松捕捉到那些

    2024年04月08日
    浏览(93)
  • 为什么越来越多公司开始用低代码开发?

    时代洪流的走向,我们无法左右,能够把握的,只有做好自己。如何在寒冬来之不易的机会中,生存并且壮大。 不知道大家有没有发现,今年的低代码赛道异常火热,但火热的背后才值得思考,市场需求持续被挖掘,是什么造就了目前诸多低代码平台的井喷? 在低代码应用

    2024年02月04日
    浏览(63)
  • 为什么越来越多的企业开始选择云计算?

    一、前言 随着数字化时代的到来,企业对于数据的需求越来越大,而传统的数据存储方式已经无法满足企业的需求。云计算作为一种新兴的技术,可以为企业提供更加灵活、高效、安全的数据存储和处理方式,因此越来越多的企业开始选择云计算。 云计算可以帮助企业降低

    2024年02月08日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包