重估端到端原则

news2024/11/25 0:43:35

评价技术迭代的旧的定势眼光来自于该技术诞生时。

1970/80/90 年代,相比传输带宽技术,处理器更强。网络协议倾向于字段多,字段小且紧凑,尽可能减少传输量,用 “算法技巧” 等价,如果 TCP 序列号 48 位,win 48 位,端口号 48 位,所有与 PAWS,win scale option,get unique tuple 相关的算法均不再必要,复杂性大大降低,但彼时这些复杂的 feature 反而是优势。

遗憾的是,几十年稳如磐石的网络标准(RFC)大多是这些年制定的。这深深影响了人们的认知。

2000 年后,通信传输技术(光纤传输以及将数据从网卡放到光纤的技术)提升速率赶上并超越了处理器提升的速度,空间换时间开始流行,协议设计倾向于少大齐,典型的例子就是 IPv6,字段少,字段长度足够大大且大小位置固定,处理效率高。

基础设施领域也存在同样倾向,能把摊子铺大解决问题的就不单纯靠软件。基础设施开始靠大体量来支撑业务,比如高密度的 5G 基站。

端主机主导计算,网络主导传输,处理器发展速度和通信传输技术发展速度的倒置正是重估端到端原则的依据。

重估端到端原则要以此为线索,信息不能在端主机无中生有,要靠中间网络设备的反馈。典型的例子是 CDN,靠密集的调度子系统和节点子系统支撑内容分发,CDN 是一个典型的逆端到端实例。

再以拥塞控制为例,若要做拥塞控制,需要精确的判断,而即时且精确的信息仅靠端到端远远不够,如今越来越多的算法或机制开始利用中间网络来反馈信息,而不仅仅将其看作一条尽力而为的透明管道。

胖端瘦网的理念大原则依旧,但需稍作改变。稍胖的网络能提高自身的承载力,缓解下面两个事实带来的问题。

第一个事实,新部署 m 个服务,新接入 n 个终端,网络流量会增加 m*n 而不是 m + n,这意味着核心转发设备的能力也必须随部署服务以及接入终端乘积的数量同步增长才能提供相应的能力,这受到大规模集成电路(全光网络毕竟是个神话)的限制,而受限于热密度极限和工艺,集成电路规模不可能永远增长,必然会反过来限制互联网服务以及终端数量。

其次,更隐秘的,回到上述 “处理器发展速度和通信传输技术发展速度的倒置”,这二者非线性不成比例地发展,单位字节的可用处理时间在变少,必须减轻主机的负担。来自下列链接:Performance Issues in HighSpeed Networks:
在这里插入图片描述

百字短文,不多说。

浙江温州皮鞋湿,下雨进水不会胖。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/608926.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【iOS】消息传递和消息转发机制

消息传递机制 在OC语言中,调用对象的方法被叫做消息传递。消息有名称和选择子(selector),可以接受参数,还可能有返回值。 在Objective-C中,如果向某对象传递消息,那就会使用动态绑定机制来决定需要调用的方法。在底层…

C++进阶 —— 范围for(C++11新特性)

目录 一,范围for介绍 二,范围for注意事项 一,范围for介绍 范围for(range-based for loop)是C11新引入的特性,可遍历各种序列结构的容器(如数组、vector、list等);每次循…

【QT】Qt ApplicationManager Compositor源码分析

Qt ApplicationManager的Compositor功能分析 根据Qt ApplicationManager官网介绍,它基于Wayland协议实现了Compositor功能。下述为官网介绍。实际上,QtApplicationManager是使用了QtWayland模块来实现Compositor的。Wayland是一套旨在替代XWindow的 Com…

微机实验:第5章——存储器设计

存储器设计 将两片6116所有的存储单元都写入11H。 提示:6116的存储容量为2K*8b,片内地址为0000H-07FFH,两片一起构成F8000H-F8FFFH的内存空间。 仿真调试时可以看到:每片从0000H-07FFH的每个存储单元均显示11H。 CODE SEGMENTASSUME CS:C…

4-4 哈夫曼编码

博主简介:一个爱打游戏的计算机专业学生博主主页: 夏驰和徐策所属专栏:算法设计与分析 1.什么是哈夫曼编码? 哈夫曼编码(Huffman coding)是一种用于数据压缩的无损编码方法。它是由David A. Huffman在1952…

STM32F4_软件模拟SPI

目录 1. 硬件连接 2. SPI通讯协议 3. W25Q64 简介 4. 程序详解 4.1 main.c 4.2 SPI.c 4.3 SPI.h 4.4 W25Q128.c 4.5 W25Q128.h 4.6 OLED.c 4.7 OLED.h 4.8 OLED_Font.h 5. 实验结果 我们都知道,SPI 和 IIC 一样,都可以通过硬件方式和软件方…

JSON基础(待补充)

一、JSON初识 1.1基础认识 JSON是一种轻量级的数据交换格式,它基于JavaScript语言的对象表示法,可以在多种语言之间进行数据交换。JSON的基本数据类型有数值、字符串、布尔值、数组、对象和空值。JSON的格式简洁易读,也易于解析和处理。JSON…

【数据结构】由完全二叉树引申出的堆的实现

【数据结构】由完全二叉树引申出的堆的实现 一、什么是堆二、目标三、实现1、初始化工作2、堆的插入(堆的创建)2.1、向上调整建堆2.1.1、向上调整算法原理解析2.1.2、代码实现 2.2、向下调整建堆2.2.1、向下调整算法原理解析2.2.2、代码实现 2.3、“向上”和“向下”复杂度的差…

初识网络安全

目录 HTML前置基础知识 1、id和class区别: 2、一些常用的属性: 3、HTML字符编码和实体编码 4、URL介绍 网址的组成部分: TTL值 DNS工作原理和资源记录及其种类: 5、正确区分“加密”和“签名” 6、状态码 1xx &#xf…

如何安装pycharm

PyCharm是JetBrains公司推出的一款Python集成开发环境(IDE),可以提供高效的Python代码编写、调试和测试。以下是一些PyCharm的主要功能: 代码智能提示和自动补全功能;支持调试和测试Python代码;完整的Pyth…

基于Springboot+Vue的幼儿园管理系统设计与实现

博主介绍: 大家好,我是一名在Java圈混迹十余年的程序员,精通Java编程语言,同时也熟练掌握微信小程序、Python和Android等技术,能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架下…

汽车相关知识及术语

1 汽车构造与制造流程 1.1 汽车构造 汽车可以分为四大部分 车身: 骨架、车身钣金件以及座椅、仪表、天窗、车外后视镜等车身附件 动力系统: 发动机和变速器 底盘: 传动系统、悬架系统、转向系统、制动系统和车轮轮胎 电气电子系统&#…

《Apollo 智能驾驶进阶课程》三、无人车自定位技术

1. 什么是无人车自定位系统 相对一个坐标系来确定无人车的位置和姿态 定位的指标要求大概分为三个部分:精度、鲁棒性、场景 定位精度必须控制在10厘米以内,才能使行驶中的自动驾驶车辆避免出现碰撞/车道偏离的情况。鲁棒性一般情况下用最大值来衡量。…

Java IO流详细教程

目录 一、IO介绍 IO流体系 字节流 字节输出流:FileoutputStream 字节输入流FilelnputStream 字符流 字符输入流 字符输出流 缓冲流 字节缓冲流 字符缓冲流 序列化、反序列化流 序列化/对象操作输出流 反序列化/对象操作输入流 打印流 字节打印流 字…

firewalld与iptables练习

1、禁止一个IP访问 iptables -I INPUT -s $ip -j REJECT 2、清空默认的防火墙默认规则: iptables -F 3、保存清空后的防火墙规则表 service iptables save 4、firewall-cmd --list-all #查看防火墙规则(只显示/etc/firewalld/zones/public.xml中防火墙…

投票活动链接创建微信链接视频投票线上免费投票链接

近些年来,第三方的微信投票制作平台如雨后春笋般络绎不绝。随着手机的互联网的发展及微信开放平台各项基于手机能力的开放,更多人选择微信投票小程序平台,因为它有非常大的优势。 1.它比起微信公众号自带的投票系统、传统的H5投票系统有可以图…

从零手写操作系统之RVOS协作式多任务切换实现-03

从零手写操作系统之RVOS协作式多任务切换实现-03 任务(task)多任务 (Multitask)任务上下文(Context)多任务系统的分类协作式多任务 创建和初始化第 1 号任务切换到第一号任务执行协作式多任务 - 调度初始化…

字典树算法(C/C++)

目录 一、字典树算法的概念介绍 二、字典树算法的实现 三、例题 (注:借鉴蓝桥杯国赛特训营) 一、字典树算法的概念介绍 首先我们看下字典的组织方式 Trie 的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效…

实训总结-----Scrapy爬虫

1.安装指令 pip install scrapy 2.创建 scrapy 项目 任意终端 进入到目录(用于存储我们的项目) scrapy startproject 项目名 会在目录下面 创建一个以 项目名 命名的文件夹 终端也会有提示 cd 项目名 scrapy genspider example example.com 3.运行爬虫指令 scrapy craw…

ffmpeg之AVFormatContext结构体详细解释

AVFormatContext 作用 AVFormatContext主要起到了管理和存储媒体文件相关信息的作用。它是一个比较重要的结构体,在FFmpeg中用于表示媒体文件的格式上下文,其中包含了已经打开的媒体文件的详细信息,包括媒体文件的格式、媒体流的信息、各个媒…