内容详情
围绕文章主旨、阅读节奏与信息层次进行优化,让读者进入正文前就能快速理解主题重心与阅读价值。
12次往返压到3次,XMPP用了7年
不到7年前,我写过一篇《慢数据》。那篇里聊的是XMPP在极慢链路上曾经怎样、以及在哪些情况下还能被优化。这篇是后续——隔了7年才动笔,我觉得挺应景。 先说基线。标准XMPP建立连接大约需要 12次往返 ,而如今几乎没人在用这套基线流程了。社区做了大量工作,设计出了把往返压到3次的方案,但至少是在重连场景下——而且只有设计,没有实现。 要实现它,需要很多人为两个关键扩展写代码: SASL2 (规范见XEP-0388)和 ISR (规范见XEP-0397)。结果是一个被采纳了,另一个没有。 社区接过了SASL2——按上一篇的说法,这应该让我们落到5次往返——但没有采纳任何1-RTT认证机制,而是更愿意用SCRAM更好的安全性,其中包含通道绑定(Channel Binding)。 通道绑定是一种确保SASL认证的两端与TLS会话的两端相互匹配的技术。考虑到CA偶尔会被攻破,也出现过国家级别攻击者针对特定XMPP服务器的情况,社区更愿意依赖这类机制,这完全可以理解。 于是我们走到了这一步: 6次往返 。不算差,但社区没有停在这里。 先是发明了“Bind2”(XEP-0386),把最后那部分资源绑定折叠进SASL2,弄乱了我的配色方案,但省下了末尾的一次往返。 接着是FAST(XEP-0484)。FAST是一套签发短期令牌的系统,令牌可以安全地用于单次往返的认证机制。它在建立阶段不增加往返,但把重新认证压缩到 一次往返 。 最后是IAP(XEP-0509),它让我们能够完全安全地跳过第一次往返。 现在就是 3次往返 ,和当年ISR达到的水平一样好——但它更通用,因为ISR依赖会话恢复,而FAST只是令牌的使用。 再往下就没法只靠一次应用层往返来改进了:这一步不仅要让客户端向服务器完成认证,也要让服务器向客户端完成认证,所以在它完成之前,我们不能开始发送消息。 零RTT 不过,我们可以看看前面那些往返。TLSv1.3有一个巧妙但复杂的功能叫“早期数据”(Early Data),通常称为0RTT,原则上它能让我们把剩下的那一次应用层往返塞进TLS交换里,再省一次往返。 这很复杂,而且对认证安全有连带影响,所以仍处在“研究”阶段。 慢,但是QUIC 社区目前有两个不同的实验在进行,都是关于在QUIC上跑XMPP。就会话建立而言,两者是一样的。QUIC把连接建立和TLSv1.3握手合并在一起,意味着这里也能省下一次往返。 这同样可以和早期数据结合——也就是说,我们能让一个会话在仅仅一次往返后就准备好使用——当然,前提是能安全地跑通。我本想画张图,但说实话,到这一步只剩一堆重叠箭头,纯属噪音。 还是慢 会话建立当然只是全貌的一部分。上一篇结尾我提到,一张250k的JPEG不管你怎么努力,它还是250k的JPEG。 而且即便会话建立完成,XMPP还得处理丢包和乱序,这两样在高延迟下都格外难受。但一旦建立起来,XMPP对高延迟的容忍度相当高,带宽占用也很小。丢包和乱序的问题,可以靠多流QUIC大幅缓解。 明年,XMPP就25岁了,仍被多个开源项目和公司广泛实现,尤其在“把消息送达”至关重要的时候被大量使用。感兴趣的话,XSF那边的讨论依然很热闹。 特别
推荐阅读
Search
热点新闻
党内权力交锋!中委竟联署开除赵少康党籍,国民党中央明确反对!
2026年台湾地区九合一选举只剩四十多天冲刺,全台选情咬得难分难解,国民党内部却先闹出了大动静。国民党中央委员发起联署要开除赵少康党籍,闹得满城风雨,结果国民党中央直接表态不肯启动惩戒程序。这事看着是采访惹的小事,内里全是国民党藏了许久的矛盾。 导火索说出来其实很简单,就是赵少康连续两次在自己的电视、广播平台,专访了民进党台北市长参选人沈伯洋。发起联署的江永雄直接把话摆到台面上,戳中了深蓝群体最敏
[流言板]科利莫尔:球迷的包容心向来很强,利物浦会欢迎阿诺德回归
虎扑10月22日讯 日前,前利物浦球星科利莫尔在接受采访时表示,阿诺德或许会重返安菲尔德,而且球迷们会张开双臂欢迎他归来。 阿诺德去年离开了利物浦,转投皇家马德里。他曾是利物浦数十年来最辉煌时期的核心一员,随队拿下两座英超冠军、一座欧冠奖杯以及其他诸多荣誉。不过,阿诺德离队的方式令不少球迷心存芥蒂。 在谈及阿诺德回归利物浦的可能性时,科利莫尔表示:“ 我觉得利物浦会欢迎阿诺德回来,毕竟我们这些球迷
玩脱了!美日六万大军白折腾:本想吓中国,结果给解放军送了大礼
从10月19日到10月29日,美国和日本两国举行了代号为“利剑27”的联合军事演习。“利剑27”是美日两国军队进行的一次大规模联合军演,在此次军演中大约有六万多人、上百艘战舰和几百架战机参加,还有澳大利亚、加拿大、法国、德国等多个国家也参与到这次军演当中来。规模创下了新的纪录,但是关注的重点并不只是参演的人数:新装备被部署到了什么地方?演习又暴露出什么样的作战特点呢?当地的群众又是怎么想的呢? 争
默森:哲凯赖什的踢法是对的,但他面对塔尔科夫斯基很艰难
英超第8轮,阿森纳2-0埃弗顿。赛后,阿森纳名宿保罗-默森在天空体育点评了厄德高和哲凯赖什的表现。 默森盛赞厄德高 保罗-默森表示:“我认为厄德高的表现非常出色。如果要选出一名表现最好的球员,对我来说,他…… “他在场上处理球非常全面,踢得很从容,左脚技术也很好。他就是一名非常出色的球员。 “当他状态出色时——而本赛季他一直保持着这样的状态,他的自信心就很足。对我来说,他就是那个最出色的球员。”
从未捧起金球奖的传奇十一人:莱万领衔,皮尔洛入选
金球奖颁奖礼将于 10月26日 在伦敦举行,OneFootball 借此评出了一套从未获得过金球奖的传奇十一人阵容。 这套阵容的评选并不轻松。中场位置的选择尤其困难, 皮尔洛 最终入选,压过了斯内德——不少观察者认为,斯内德本该赢得2010年的金球奖。 锋线的挑选同样棘手,中锋位置更是如此。最终 莱万多夫斯基 入选。文章称,这位波兰前锋2020年的金球奖可以说被剥夺了,那届奖项因新冠疫情被取消。