趣谈网络协议
刘超
网易研究院云计算技术部首席架构师
立即订阅
39505 人已学习
课程目录
已完结 51 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 想成为技术牛人?先搞定网络协议!
免费
第一模块 通信协议综述 (4讲)
第1讲 | 为什么要学习网络协议?
第2讲 | 网络分层的真实含义是什么?
第3讲 | ifconfig:最熟悉又陌生的命令行
第4讲 | DHCP与PXE:IP是怎么来的,又是怎么没的?
第二模块 底层网络知识详解:从二层到三层 (5讲)
第5讲 | 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?
第6讲 | 交换机与VLAN:办公室太复杂,我要回学校
第7讲 | ICMP与ping:投石问路的侦察兵
第8讲 | 世界这么大,我想出网关:欧洲十国游与玄奘西行
第9讲 | 路由协议:西出网关无故人,敢问路在何方
第二模块 底层网络知识详解:最重要的传输层 (4讲)
第10讲 | UDP协议:因性善而简单,难免碰到“城会玩”
第11讲 | TCP协议(上):因性恶而复杂,先恶后善反轻松
第12讲 | TCP协议(下):西行必定多妖孽,恒心智慧消磨难
第13讲 | 套接字Socket:Talk is cheap, show me the code
第二模块 底层网络知识详解:最常用的应用层 (4讲)
第14讲 | HTTP协议:看个新闻原来这么麻烦
第15讲 | HTTPS协议:点外卖的过程原来这么复杂
第16讲 | 流媒体协议:如何在直播里看到美女帅哥?
第17讲 | P2P协议:我下小电影,99%急死你
第二模块 底层网络知识详解:陌生的数据中心 (6讲)
第18讲 | DNS协议:网络世界的地址簿
第19讲 | HTTPDNS:网络世界的地址簿也会指错路
第20讲 | CDN:你去小卖部取过快递么?
第21讲 | 数据中心:我是开发商,自己拿地盖别墅
第22讲 | VPN:朝中有人好做官
第23讲 | 移动网络:去巴塞罗那,手机也上不了脸书
第三模块 热门技术中的应用:云计算中的网络 (5讲)
第24讲 | 云中网络:自己拿地成本高,购买公寓更灵活
第25讲 | 软件定义网络:共享基础设施的小区物业管理办法
第26讲 | 云中的网络安全:虽然不是土豪,也需要基本安全和保障
第27讲 | 云中的网络QoS:邻居疯狂下电影,我该怎么办?
第28讲 | 云中网络的隔离GRE、VXLAN:虽然住一个小区,也要保护隐私
第三模块 热门技术中的应用:容器技术中的网络 (3讲)
第29讲 | 容器网络:来去自由的日子,不买公寓去合租
第30讲 | 容器网络之Flannel:每人一亩三分地
第31讲 | 容器网络之Calico:为高效说出善意的谎言
第三模块 热门技术中的应用:微服务相关协议 (5讲)
第32讲 | RPC协议综述:远在天边,近在眼前
第33讲 | 基于XML的SOAP协议:不要说NBA,请说美国职业篮球联赛
第34讲 | 基于JSON的RESTful接口协议:我不关心过程,请给我结果
第35讲 | 二进制类RPC协议:还是叫NBA吧,总说全称多费劲
第36讲 | 跨语言类RPC协议:交流之前,双方先来个专业术语表
第四模块 网络协议知识串讲 (4讲)
第37讲 | 知识串讲:用双十一的故事串起碎片的网络协议(上)
第38讲 | 知识串讲:用双十一的故事串起碎片的网络协议(中)
第39讲 | 知识串讲:用双十一的故事串起碎片的网络协议(下)
第40讲 | 搭建一个网络实验环境:授人以鱼不如授人以渔
答疑与加餐 (9讲)
协议专栏特别福利 | 答疑解惑第一期
协议专栏特别福利 | 答疑解惑第二期
协议专栏特别福利 | 答疑解惑第三期
协议专栏特别福利 | 答疑解惑第四期
协议专栏特别福利 | 答疑解惑第五期
加餐1 | 测一测:这些网络协议你都掌握了吗?
加餐2 | 创作故事:我是如何创作“趣谈网络协议”专栏的?
加餐3 | “趣谈网络协议”专栏食用指南
第2季回归 | 这次我们来“趣谈Linux操作系统”
结束语 (1讲)
结束语 | 放弃完美主义,执行力就是限时限量认真完成
趣谈网络协议
登录|注册

第19讲 | HTTPDNS:网络世界的地址簿也会指错路

刘超 2018-06-29
上一节我们知道了 DNS 的两项功能,第一是根据名称查到具体的地址,另外一个是可以针对多个地址做负载均衡,而且可以在多个地址中选择一个距离你近的地方访问。
然而有时候这个地址簿也经常给你指错路,明明距离你 500 米就有个吃饭的地方,非要把你推荐到 5 公里外。为什么会出现这样的情况呢?
还记得吗?当我们发出请求解析 DNS 的时候,首先,会先连接到运营商本地的 DNS 服务器,由这个服务器帮我们去整棵 DNS 树上进行解析,然后将解析的结果返回给客户端。但是本地的 DNS 服务器,作为一个本地导游,往往有自己的“小心思”。

传统 DNS 存在哪些问题?

1. 域名缓存问题

它可以在本地做一个缓存,也就是说,不是每一个请求,它都会去访问权威 DNS 服务器,而是访问过一次就把结果缓存到自己本地,当其他人来问的时候,直接就返回这个缓存数据。
这就相当于导游去过一个饭店,自己脑子记住了地址,当有一个游客问的时候,他就凭记忆回答了,不用再去查地址簿。这样经常存在的一个问题是,人家那个饭店明明都已经搬了,结果作为导游,他并没有刷新这个缓存,结果你辛辛苦苦到了这个地点,发现饭店已经变成了服装店,你是不是会非常失望?
另外,有的运营商会把一些静态页面,缓存到本运营商的服务器内,这样用户请求的时候,就不用跨运营商进行访问,这样既加快了速度,也减少了运营商之间流量计算的成本。在域名解析的时候,不会将用户导向真正的网站,而是指向这个缓存的服务器。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《趣谈网络协议》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(51)

  • _CountingStars
    1.httpdns服务器的地址一般不变 可以使用dns的方式获取httpdns服务器的ip地址 也可以直接把httpdns服务器的ip地址写死在客户端中。

    2.让用户获取离用户最近的资源 一般是静态资源 这使用的是cdn技术
    2018-06-29
    49
  • 赵强强
    老师能不能写个专题介绍一下国内几大运营商网络状况和互联关系😬
    2018-06-29
    1
    46
  • xyz
    1. HTTPDNS 服务器的地址或者域名(和网站域名类似)一般不变,所以可以写死在SDK里;

    2..为方便用户近源访问,使用CDN技术(content distribution network,内容分发网络)。


    一点题外话:作者的每一期讲解都有好好学习,讲的都挺通俗易懂的,不过如果能加入一些相关的经典的参考链接,应该会更好,授人以鱼的同时也授人以渔。
    2018-06-29
    17
  • 一步
    我想问的是:HttpDns服务器的域名地址簿,也是通过递归根域名,顶级域名,权威域名服务器获取的吗?
    2018-08-03
    8
  • upstream
    3.出口nat问题这段个人认为说的不准确。客户端的dns服务器指向一般都是一个运营商的localdns,不考虑edns的情况下,权威服务器拿到的是localdns地址。
    如果递归dns支持edns,权威服务器能看到客户端出口nat地址。
    只有像长城宽带这类流氓二道贩子,会把用户出口nat地址全国飘
    2018-06-29
    8
  • quanbove
    HTTPNDS 其实就是,不走传统的 DNS 解析,而是自己搭建基于 HTTP 协议的 DNS 服务器集群,分布在多个地点和多个运营商。
    发现一个笔误的地方,HTTPDNS,而不是HTTPNDS,我是又多无聊[捂脸]

    作者回复: 谢谢指正

    2018-09-26
    6
  • silence
    之前在软件公司干活,有个大客户,有很多站点,但是他们原先的系统不支持调度。希望我们给他出个方案,做到智能调度。当时我出的方案是给他们搞一个类似 HTTPDNS 的系统。根据运营商、地理位置、站点负载进行调度。一次返回多个服务列表。让客户端进行缓存,定期更新。今天看了这个文章,在回想起当时我给他们做的方案,当时只做了服务器上的调度,客户端因为无法控制,当时没考虑进行改造,添加反馈。看了文章,看到还是有可以再优化的点的。
    2018-11-19
    4
  • 摩诃不思议
    非计算机专业同学,学的比较慢,老师能送我一份网络协议知识图谱吗?
    2018-07-28
    4
  • Marco
    那httpdns不需要考虑负载均衡么?

    作者回复: 考虑,httpdns里面也可以配置负载均衡策略的

    2019-03-19
    3
  • Fisher
    最近几篇文章都很赞啊,这一篇讲清楚了为什么跨运营商速度会慢的原因,之前知道这个问题但是不知道答案,其次httpdns这个新技术第一次听说,赞一个
    2018-06-29
    3
  • 小美
    HTTPDNS能支持HTTPS 不

    作者回复: 可以的

    2019-06-16
    2
  • 哈哈哈
    请问老师:文中的在不同运营商或地区部署httpdns服务,根据客户端位置返回最优应用地址,httpdns服务端部署方式是如何的?如何达到不同运营商或地区效果?httpdns适用场景只有哪些呢?谢谢

    作者回复: 一般是多个数据中心分布式部署,适用于手机客户端的情况

    2019-02-14
    2
  • 凡凡
    1、可以是通过域名解析,也可以是直接配置所有httpdns服务器节点。阿里云采用的是配置ip列表的方式。2、cdn内容分发网络
    2018-07-03
    1
    2
  • 送普选
    咨询一下httpdns如何获取权威dns上的IP地址?每次有客户端httpdns请求来了就查一下,还是每1秒定期轮询后缓存?谢谢
    2019-06-14
    1
  • 追风筝的人
    非计算机专业同学,老师能送我一份网络协议知识图谱吗?

    作者回复: 买了课程的,最后一节都有

    2019-06-05
    1
  • whats your name
    老师,有一个疑惑点:HTTPDNS的域名/ip地址簿是从哪里来的呢?

    作者回复: 管理员配置,反正httpdns服务器也是你自己搭建的,如果你用公有云,他也让你配置的

    2019-04-13
    1
  • supermouse
    想问一下老师,HTTPDNS服务器集群是谁来搭建的?

    作者回复: 你可以自己搭建,也可以去公有云买

    2019-04-11
    1
  • 克里斯
    权威DNS服务器的ip地址不会变吗?

    作者回复: 很少变

    2019-02-08
    1
  • 桃子妈妈
    老师好,很想了解HTTPDNS服务端仍然会使用递归的方式依次通过根域名、顶级域名、权威域名去递归查询吗?

    作者回复: 不会的,直接返回了

    2019-01-31
    1
  • 若丶相依
    HTTPDNS 服务器的地址或者域名由传统DNS做第一次的解析,获取到HTTPDNS服务器地址后由HTTPDNS重新解析自己的地址为最优节点 ?
    2018-12-08
    1
收起评论
51
返回
顶部