最近在折腾一个把 Google Dns Over TLS 转换到本地使用的小玩具, 是用 Python 实现的, 但是发现单次连接耗费的时间特别长,使用的 TLS 协议不管是 TLS1.3 还是 TLS1.2 单次查询的时间都相似且长到不可接受。我同时还设置了 TCP_NODELAY 试图改善一下性能,但是似乎变得更慢了
抓包的结果如下
我有一些问题
1.网上有很多资料显示 TLS1.3 的握手过程仅需要 1-RTT, 但是抓包结果似乎显示使用了 2-RTT 的时间进行握手(第一个数据包应该是编号为 13 的包)
2.使用 Python 有办法开启 TCP Fast Open, TLS session resumption 和 TLS early data 这些技术来改善连接的速度吗? Python 自带的 ssl 模块似乎不直接支持这些技术, 我尝试将 TLS 协议版本设置为 TLS1.2 并使用 session ticket 进行连接恢复,但是还是没有任何改善
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.