一、Comparing the Effects of DNS, DoT, and DoH on Web Performance

贡献有三点:

1、在全球五个地点进行研究DO53\DOT\DOH的性能,包括页面加载时间、查询响应时间

2、加密的DNS协议使得页面加载时间缩短,但是查询响应时间慢于DO53,在受损的网络环境中加载时间较短归功于TCP的重传机制

3、提出两种优化机制 WireFormat 缓存和 opportunistic partial responses。

网络性能进行了分析,分析了各自的成本和优势

使用火狐浏览器进行测量页面加载时间,然后通过自定义的工具测量rr时间

1、页面加载时间如何测量?

使用HTTP Archive objects (HARs) onLoadtiming 字段提取 加载时间 ; loadevent在之前的研究中用来测量加载时间,还有DOMContentLoaded,AFT也是一种测量方式,但是太麻烦了。

2、DNS查询响应时间

使用getdns和libcurl自定义一个工具,测量从HARs收集的特定域名信息

DOT默认是10秒的连接timeout

packet capture with mitmproxy and Wireshark

作者还解释了一下这个hars中的NDS查询响应时间为什么不用,因为不是很准确

3、作者进行了一系列的实验

一些实验具体细节的设置就不重复

以下是实验结果:

4.1 DNS Query Response Time

这个不出乎意料,DOT和DOH相较于未加密,确实伴有一些开销,导致rr时间增长,但是稳定性也就是时延标准差较小

4.2 Page Load Time

Firefox的Doh实现是异步的,它使用浏览器的优化HTTP / 2实现[33,34]。这意味着与DO53和DOT相比,DOH可能能够弥补其较大的开销,因为果线程池已经耗尽,则页面加载不会被同步查询阻止。

4.3 Effect of Network Conditions

在每个模拟的蜂窝网络上,DO53在响应时间方面优于点和DOH

在4G网络上,DOT的中位数页面加载比DO53更快地执行11ms,DOH执行58ms较慢。在有损4G网络上,DOT 和 DOH比DO53更快。 DOT比DO53更快地执行101ms,DOH更快地执行33ms。

default timeout for Do53queries in Linux is set to 5 seconds by resolvconf

For DoT and DoH, DNS packets may be retransmitted after 2x the round-trip-time latency to a recursor because of TCP

我们观察到的一般趋势是,与DOT和DOH的页面加载时间可以在丢包和高延迟方面与DO53相比更好。然而,随着网络条件降低,DOT和DOH都表现明显慢于DO53。

5.1 Opportunistic Partial Responses

发送多个查询请求的意思吧

5.2 Wire Format Caching

查询响应ID对应格式

5.3 EDNS Client-Subnet

6.1 Encrypted DNS Transports

这篇文章的相关工作有两篇,一篇是测量DOH的,但是测量方法有缺陷An empirical study of the cost of dns-over-https.

一篇是测量DOT的 Connection-oriented DNS to Improve Privacy and Security.

6.2 DNS and Web Performance

几篇相关文章现实冷查询的DNS会显著影响页面加载的性能

结论:

尽管DOT和DOH导致各个查询的响应时间更高,但它们可以在页面加载时间内类似于DO53。我们还发现DOT和DOH可以在仿真蜂窝网络条件中的页面加载时间中优于do53。然而,随着网络条件降低,DO53显着优于DOT和DOH。

Comparing the Effects of DNS, DoT, and DoH相关推荐

  1. 卡巴斯基安全浏览器_360安全DNS正式推出DoH安全解析服务,打造安全上网“金钟罩”...

    人类记忆有具体意义的文字比记忆无规律的数字往往容易得多. 所以我们在访问网站时,更习惯在浏览器地址栏中输入域名,而不是敲出一串IP地址去打开目标页面.能够如此聪明.便捷地访问网站,是因为"D ...

  2. 支持DoH的DNS服务器,谷歌公共DNS正式支持DoH加密 更安全并且不影响速度

    有鉴于此互联网工程任务组已经推出DoH规范加密用户查询,让用户在浏览网页时可以更好的保护自己隐私. DNS-over-TLS加密标准: 我们知道HTTPS加密安全协议可有效阻止中间人攻击,也可以让中间 ...

  3. 微软不再为 DNS over HTTPS (DoH) 提供 Google PublicDNS 和 Cloudflare DNS 服务提供商

    如果你尝试在 Microsoft Edge 浏览器设置中自行选择 DNS 服务提供商,那么现在微软不再为 DNS over HTTPS (DoH) 提供 Google PublicDNS 和 Clou ...

  4. 命令行工具 DOT和DOH测试

    DoT 工具 在 DNS 行业,最知名的命令行工具就是 dig 了:但 dig 一直没有支持 TLS.系统管理员可以配置 stunnel 后用 dig 连接本地 stunnel 服务进行调试. 除了 ...

  5. 【渗透测试】CS DNS上线(DoH隧道+CS特征隐藏)

    目录 一.准备工作 二.域名设置 三.CS上线(DoH) 四.流量分析 一.准备工作 1)域名 2)vps(53端口) 3)Cobalt Strike 4.3 二.域名设置 1)获得免费域名 http ...

  6. 阿里云公共DNS安全传输服务介绍(DoH/DoT)

    概述 阿里公共DNS致力于为广大的互联网用户提供快速.稳定和安全的DNS解析.然而传统的DNS查询和应答采用UDP和TCP明文传输,存在网络监听.DNS劫持.中间设备干扰的风险: 网络监听风险:即便用 ...

  7. 告别DNS劫持,一文读懂DoH

    如果评选一个差评服务器榜单,除去育碧高居榜首外,一定也少不了 Nintendo Switch 让人头秃的联网服务.尽管任天堂已经架设了香港 CDN 服务器用于加速,但是更新安装的速度也没有什么大幅改变 ...

  8. 一文了解 DoH(DNS-over-HTTPS)和DoT(DNS-over-TLS)

    目录 前言 一.概述 1.背景 2.四种提升DNS安全性的协议 (1)DNSSEC (2)DNSCrypt (3)DNS over TLS (DoT) (4)DNS over HTTPS (DoH) ...

  9. 支持DoH的DNS服务器,谷歌公共 DNS 服务器正式支持 DoH 加密

    写在最前:欢迎你来到"UC国际技术"公众号,咱们将为你们提供与客户端.服务端.算法.测试.数据.前端等相关的高质量技术文章,不限于原创与翻译.html 今天,谷歌官方博客刊文宣布谷 ...

最新文章

  1. 一代传奇,“全球第一CEO”:杰克·韦尔奇逝世了!
  2. 中国电动汽车用电机行业发展模式分析及竞争战略研究报告2022-2028年版
  3. c 调用java post方法_C#调用Java方法(详细实例)
  4. 前端学习(3277):promise的使用
  5. 中标麒麟安装rpm包命令_在 Fedora 中安装替代版本的 RPM 包
  6. 【word使用技巧】删掉某一行参考
  7. (C/C++学习笔记)附页: C/C++变量的存储类型
  8. Hadoop、Spark等5种大数据框架对比,你的项目该用哪种?
  9. java单例模式的7种实现方式
  10. C#中导出电子表格Execl总结
  11. verilog中~在判断中的作用
  12. bbsmax 2.0 的前世今生,这几年喳喳鸟都在做什么?
  13. 谷歌VR展示360度全景图
  14. POJ 1862: Stripies
  15. 鼠标连接在计算机,鼠标怎么连接在电脑上
  16. 社保已经交够15年了,还需要再交吗?到退休年龄时可以退休吗?
  17. 右键文件夹提示“No localized file found - emedloc.dll”
  18. 常见元素 – p元素
  19. Swift身份证正则表达式
  20. 如何快速删除Word中的页眉横线?删除页眉横线技巧分享

热门文章

  1. linux deploy安装kali和磁盘扩容
  2. JS实现点击跳转登陆邮箱
  3. 计算机科学与技术考研报名属于哪一类,计算机考研属于13大门类的哪一类
  4. C++、Qt 调用 lua 完成简单计算并得到结果( 出现中文 ‘?’问题)
  5. jenkins+Warnings Next Generation Plugin构建代码自动化检测
  6. 形如e^(ax^2+bx+c)的积分公式的证明
  7. 浪漫主义和革命英雄主义的回忆
  8. 碰到数学归纳法,一点感受
  9. 北师大计算机学院保研,北师大信息科学与技术学院保研-北京师范大学信息科学与技术学院保研推荐免试研究生方法...
  10. Python控制结构(二)