最后更新:2022-05-10 16:35:02 手机定位技术交流文章
小林编码是作者。
简单图形计算机网站是https://xiaolincoding.org。
大家好,我是小林。
在审议这一问题时,TCP是否似乎通过序列号、确认答复、超时转播、交通管理、冷凝控制等可靠传输?
那么,让我们今天来谈谈这个问题。TCP协议有什么缺陷?有四个主要考虑:
现在让我们更详细地谈谈这四点。
TCP协定于1973年订立,至今仍在不断获得新的能力。
另一方面,TCP议定书在内核中执行;应用只能通过应用加以修正,TCP议定书只能通过内核加以升级。
更新内核是相当复杂的。问题不在于更新内核是困难的。这是因为改变内核需要更新底部软件和操作图书馆。我们的服务应用程序必须再次测试是否与新的内核版本兼容。因此,服务器的内核更新既谨慎又缓慢。
新的TCP协议的若干特点,这也是要求客户和服务支助发挥效力的同样要求。考虑 TCP 快速开放功能 。尽管它是在2013年提交的,但是没有办法解决该问题。然而,许多Windows版本仍然不支持它。这是因为个人计算机终端系统更新延迟。Windows XP目前被相当多的人广泛使用。尽管它在那里已经存在了20多年。
因此,即使TCP有更好的更新特征,也很难迅速传播,要求客户经历几年或十年。
以TCP为基础的应用协议必须全部为数据传输建立三种握手方式,例如HTTP1.0/1.1、HTTP/2和HTPS。
多数网站现在都采用HTTPS,这意味着在TCP三次握手之后,在提供HTTP数据之前必须进行4次TLS握手,从而增加特定软件的数据传输时间。
TCP和TLS握手被拖延三次,具体如下:
[外链光传输失败, 源站可能有一个隐性链机制, 建议直接保存和上传图片( IMg- EpBkBcBCBC- 1652079599446)( https:// cdn. org/) 我不确定您在说什么 。 @main/% E7%BD% 91%E7%BB%9C/ http3/ TCP% 2BTLS. (gif)]
TCP 快速打开( 快速打开) 功能, 它会降低在“ 第二次连接” 完成 TCP 连接时的等待时间, 解决TCP 握手延误的三次 。

过程如下:
Cookie通过 SYN 和 ACK 包( 加密) 向客户发送此信息, 以便客户可以隐藏它 。Cookie因此,在首次提出 " HTTP Get " 请求时,必须拖延两个难民审查法庭的时间;Cookie你可以提前三次避免握手 因为Cookie一些信息被保存。 它被服务器使用 。Cookie当 HTTP Get 请求启动时, 检索 TTP 相关信息只需要一次 RRT 时间延误 。TCP " 快速开放 " 是一个极佳的特色。但是,为了享受这些服务,必须支持服务和客户的操作系统。TCP Fast Open(2013年发布)目前处于紧急状况。因此,市场上仍有许多过时的操作系统没有支持。更新操作系统是一项具有挑战性的任务。因此,很难获得TCP快速开放。
就HTTPS而言,TLS是申请一级的握手,而TCP是内部核心的握手,两个握手程序不能合并;TCP必须总是在TLS握手之前完成。
由于TCP用于内部核心,TLS无法加密TCP的头部,这意味着TCP的序列号被清楚传达,从而造成安全问题。
一个典型的例子就是,袭击者捏造了一个RST信息,迫使关闭TCP连接,袭击成功的关键是TCP场的序列号位于接收方的滑动窗口,允许进入。
结果,TCP不得不握手三次,以便使其序列号同步。序列号以随机(但不完全随机)的方式初始化。它长成一条直线 整个时间。让攻击者更难预测序列号,以增加安全性。
然而,这一战略只能防止攻击者猜到一个合法的RST信息,以及攻击者截取客户通信的方法,然后构建一个合法的RST信息。

大胆想一下,如果TCP序列号也可以加密,也许我们不用握手三次客户和服务的原始序列号从0开始因此,我们不再需要把重点放在序列号同步上。但是,为了这样做,我们必须修改整个协定。太过于麻烦,即使实现出来了,若干较旧的网络设备并不总是兼容的。
TCP是字节流的规程。TCP层负责确保收到的字节完整和订购。如果具有较低序号的TCP段未能通过网络传输,尽管收到了高序号的TCP段,应用程序层同样无法读取内核数据的这一部分 。如下图:
[外国连锁照片传送失败, 源站可能有一个隐性链机制, 建议直接保存和上传图片( img- cuCVeZm2- 165202079594949)( https:// cdn. org)。 我不确定您在说什么。 @gh/xiaolincoder/ ImageHost4@main/% E7%BD% 91% E7%BB% 919%E7%BB% 9C/ http3/ tcp%E9.98%F%E( gif)]
发件人广播大量资料包,每个资料包都有其独特的序列号,视之为TCP序列号。packet #3即使输在网络中packet #4-6由于内核中的TCP数据不是连续的,接收方的申请层一旦收到就无法从内核中读取。packet #3数据在重新传送后,可以通过收件人的应用层从内核读取。
这是TCP团队的头部阻塞问题,但这不是TCP的过错,TCP是保证数据秩序的唯一机制。
TCP连接正在执行几项HTTP/2请求。因此,当TCP扔下袋子时,整个TCP网络必须等待重新传输。TCP连接中的所有查询将被封锁。因此,TCP协议应归咎于HTTP/2封头问题。

根据TCP传输议定书,HTTP议定书利用四方(来源知识产权、源港口、目的地知识产权、目的港口)建立了TCP连接。

因此,当移动设备开关网络从 4G 到 WIFI 时, IP 地址会改变, 您必须终止并恢复 TCP 连接 。
然而,连接建设程序包括3次TCP握手和4次TLS握手,以及TCP缓慢启动的减速阶段,给消费者一种印象,即网络突然出现问题,因此连接的移民费用相当高。
我记得,在观众中早些时候,一位读者被问到,“如何使用UDP协议进行可靠的传输?”
一些学生的初步反应表明,TCP可靠传输的质量(序列号、回答确认、超时转播、交通控制、冷凝控制)在应用水平上复制。
事实上,实现的概念是准确的,但你有没有想过,由于TCP自然可以进行可靠的传输,因此需要基于UDP的可靠传输? 这难道不就是在旋转你的车轮吗?
因此,首先我们必须确定TCP协议的疼痛点。 基于UDP协议的可靠传输系统能缓解这些问题吗?
QUIC协议克服了我目前版本的TCP的缺陷,并适用于HTTP/3,现已成为市场上基于UDP协议的可靠传输协议的成熟选择。

因此,下次我们见面时,我们会研究 QUIC协议如何确保可靠的通信。
本文由 在线网速测试 整理编辑,转载请注明出处。