Dns与httpDNS的区别
一、什么是DNS
DNS(Domain Name System,域名系统)是互联网的一项服务。它是域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS 使用 UDP 端口53,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。
举例来说,当一台设备要访问网络上另外一台设备时,必须首先获知其地址,而这个地址是 TCP/IP 中的 IP 地址,是由四段以“.”分开的数字组成(以 IPv4 的地址为例),但是由于 IP 地址难以记忆,用户难以记忆,因此采用了域名系统来管理名字和 IP 的对应关系。所以,域名只是一个方便记忆的名字,代表了公司或者个人,实际上对网络资源的访问还是得通过IP地址去访问,DNS 解析的作用就是将域名解析成 IP 地址。
域名由一个或多个部分组成,从右往左依次是顶级域名,二级域名,三级域名……,不一定有这么多级域名,但是也可能出现四级等,通常,子域是从属于其父域的域。
从 DNS 解析过程,我们知道 DNS 的不足:
- 域名缓存:上次进行的缓存,路由不一定最短
- 域名转发:域名查询可能会跨运营商
- 解析耗时:DNS 的查询过程需要递归遍历多个 DNS 服务器,才能获得最终结果。可能会带来一定的延时。
- 域名劫持:本地运营商可能对某些域名进行劫持、屏蔽。
二、什么是httpDNS
HTTPDNS 就是使用 HTTP 协议(不使用DNS协议)向 httpDNS 服务器进行请求,获取想访问域名对应的IP 地址,简化了请求的复杂性。在请求 httpDNS 服务器的时候,使用 IP 直接访问。跳过使用系统DNS服务器解析的过程,使用httpDNS替代DNS解析系统的功能。(前提是内置了httpDNS服务器的ip地址)一般用于App,不可用于浏览器。
HTTPDNS 的优点:
- 跳过 LocalDNS,防止本地DNS劫持
- 直接通过 IP 访问,平均访问延迟下降
- 服务器算法筛选最佳节点 IP,提升请求成功率
- 快速更换 IP(不受TTL的限制)
HTTPDNS 的适用场景:
- App 防止恶意劫持
- 对访问速度要求高的应用
- 应用、视频加速服务,配合CDN,通过DNS服务器返回最佳节点,提高访问效率
- 提供更灵活的流量调度能力
主要应用在以下几类移动 App 开发中:
- 资讯、游戏类 App: 希望降低访问延迟、减少跨网访问,注重快速响应体验。
- 电商类 App: 希望降低连接失败率,提高业务工作率,注重访问请求稳定性。
- 社交类 App: 域名屡次被劫持,希望用户访问顺畅无阻。
- 音视频类 App: 对流畅度要求高,提升音乐、视频播放的连接成功率。
总结
HTTPDNS 基于 HTTP 协议向自己的 DNS 服务器发送域名解析请求,替代基于 DNS 协议向运营商 Local DNS 发起解析请求的传统方式,可以避免 Local DNS 造成的域名劫持和跨网访问问题,解决移动互联网服务中域名解析异常带来的困扰。
从原理上来讲,HTTPDNS 只是将域名解析的协议由 DNS 协议换成了 HTTP 协议,并不复杂。但是这一微小的转换,却带来了巨大的收益,其中 DNS 劫持(域名劫持)就是最为严重的一个问题,通过某些方式篡改了用户正常访问的 web 网页,插入广告或者其他内容,在页游时代就经常发生。而移动 App 主要导致无法访问、成功率下降等问题。同时,在今天移动互联网高度成熟环境下,用户体验越发重要,智能解析,就近接入,提升连接成功率,快速响应,确保用户访问顺畅,这些都是 HTTPDNS 的优势。移动互联网的下半场,是对用户体验的极致追求,也是对技术的融合创新的极致追求!
Dns与httpDNS的区别相关推荐
- 计算机网络协议(五)——DNS、HTTPDNS
底层网络知识详解:DNS.HTTPDNS 概述 一.DNS协议:网络世界的地址簿 1.1 DNS解析流程 1.2 负载均衡 二.HTTPDNS 概述 这个专栏的计算机网络协议,我是在极客时间上学习 已 ...
- 看懂DNS到HttpDNS
看懂DNS到HttpDNS 文章目录 看懂DNS到HttpDNS DNS 什么是DNS以及DNS的作用 为何需要DNS解析域名成IP 简单域名知识 DNS解析流程 本地DNS DNS解析总结 基于UD ...
- DNS与HTTPDNS
DNS服务器 根DNS服务器:返回顶级域DNS服务器的IP地址 顶级域DNS服务器:返回权威DNS服务器的IP地址 权威DNS服务器:返回相应主机的IP地址 流程图: 负载均衡 内部负载均衡:可以配置 ...
- dns与wins的区别
对于许多人来说, WINS服务器和 DNS服务器之间的关系还是一件神秘的事情.不过,我们希望用你的问题澄清这个事情. 首先,DNS指的是"域名服务器",而WINS指的是" ...
- 全面理解DNS及HTTPDNS
说明 移动场景下DNS解析开销是整个网络请求中不可忽略的一部分.在弱网环境下,基于UDP的LocalDNS解析非常容易出现解析超时的问题,并且即使解析成功会消耗数百毫秒乃至更甚,对我们整个业务请求而言 ...
- NetBIOS、WINS、DNS的联系和区别
DNS--Domain Name Server,域名与IP地址的联系 WINS--Windows Internet Name Server,为网络上使用的IP地址提供可注册和解释的NETBIOS名称的 ...
- DNS和WINS的区别
首先,DNS指的是"域名服务器",而WINS指的是"Windows互联网名称服务".两者都是用来解析域名的,但是,使用的方法完全不同! 为了帮助说明这个问题,我 ...
- ip地址、域名、DNS、URL的区别与联系
IP:每个连接到Internet上的主机都会分配一个IP地址,此ip是该计算机在互联网上的逻辑地址的唯一标识,计算机之间的访问就是通过IP地址来进行的.写法:十进制的形式,用"." ...
- TTL值的含义以及与域名DNS TTL值的区别
什么是TTL? TTL是IP协议包中的一个值,指定数据报被路由器丢弃之前允许通过的网段数量. 在很多情况下数据包在一定时间内不能被传递到目的地.解决方法就是在一段时间后丢弃这个包,然后给发送者一个报文 ...
最新文章
- 基于AWS-ELK部署系统日志告警系统
- “智能”基石:人工智能数据标注与训练,是决定智能时代的第一步
- 程序员随笔:使用来自服务器的图像(有源码)
- Delphi判断一个文件是不是JPG图片
- Windows 10——安装Snort_2_9_16
- CodeForces - 1332D Walk on Matrix(构造)
- ces测试数据测试ces测试数据测试ces测试数据测试ces测试数据测试ces测试数据测试ces测试数据测试ces测试数据测试再次测试
- window mysql集群视频_windows7实现mysql集群cluster-mysql簇
- TRACE (VC)
- mysql 多值属性_数据库 名词解释:单值属性和多值属性
- JAVA写的多线程下载程序,并具有断点续传功能
- get 与 post的区别?application json 与form表单的区别?
- net.sf.json Sring转JSON对象 数据精度丢失
- 深入理解JavaScript系列(25):设计模式之单例模式
- 四级英语作文:收入差距
- SPSS教程——进行卡方检验的相关步骤
- 共模干扰和差模干扰的理解
- layuiTable固定列
- 吉林大学计算机科学与技术学院学士,贾海洋(吉林大学计算机科学与技术学院副教授)...
- VIA和PAD的用法区分
热门文章
- rdlc报表An error occurred during local report processing错误
- 毕设(一):正则化极限学习机(RELM)、在线学习的极限学习机(OS-ELM)、带遗忘机制的在线学习极限学习机(FOS-ELM)
- 校园安防之高清IP摄像头全终端无插件直播视频流媒体服务EasyNVR校园监控系统方案
- 第四章 账号权限管理
- 利用MATLAB实现空间两点距离的计算以及优化
- java 打印 日历 详细 注解_Java类库 LocalDate类的简单使用(一)之打印本月的日历...
- java学习笔记—java的学习路线
- win10 x64下的DNW驱动不完全安装方法
- 利用photoshop切图
- 上市公司财务报告的那点事(4):我的选股策略和实际投资组合