TCP DNS HTTP协议

tcp协议

https://blog.csdn.net/sinat_36629696/article/details/80740678

DNS协议

如果说ARP协议是用来将IP地址转换为MAC地址,那么DNS协议则是用来将域名转换为IP地址(也可以将IP地址转换为相应的域名地址)。
我们都知道,TCP/IP中使用的是IP地址和端口号来确定网络上某一台主机上的某一个程序,不免有人有疑问,为什么不用域名来直接进行通信呢?

  1. 因为IP地址是固定长度的,IPv4是32位,IPv6是128位,而域名是变长的,不便于计算机处理。
  2. IP地址对于用户来说不方便记忆,但域名便于用户使用,例如www.baidu.com这是百度的域名。

查询原理

DNS查询分为递归和迭代两种方式。递归查询是指服务器会替代源地址进行查询,类似于代理的工作方式。迭代查询是指服务器回给客户端的信息中,RA不置位,并携带有其他DNS服务器的信息,让客户端再向其他服务器发起查询,由于internet上的根服务器压力巨大,所以根服务器都是不接受递归查询的,因此internet上的查询过程基本上都是迭代的。

递归查询

机向本地域名服务器发出一次查询请求,就静待最终的结果。如果本地域名服务器无法解析,自己会以DNS客户机的身份向其它域名服务器查询,直到得到最终的IP地址告诉本机

迭代查询

本地域名服务器向根域名服务器查询,根域名服务器告诉它下一步到哪里去查询,然后它再去查,每次它都是以客户机的身份去各个服务器查询。

域名服务器分类

根域名服务器:最高层次的域名解析服务器,也是最重要的域名解析服务器。本地域名解析服务器无法解析的域名就会向根域名解析服务器求助。顶级域名服务器:负责管理该顶级域名服务器下注册的二级域名。权限域名服务器:负责一个区的域名解析工作。本地域名服务器:当一个主机发起DNS请求时,首先请求的就是本地域名解析服务器。

HTTP协议:

在这里插入图片描述
HTTP是基于传输层的TCP协议,而TCP是一个端到端的面向连接的协议。所谓的端到端可以理解为进程到进程之间的通信。所以HTTP在开始传输之前,首先需要建立TCP连接,而TCP连接的过程需要所谓的“三次握手”。下图所示TCP连接的三次握手。
在TCP三次握手之后,建立了TCP连接,此时HTTP就可以进行传输了。一个重要的概念是面向连接,既HTTP在传输完成之间并不断开TCP连接。在HTTP1.1中(通过Connection头设置)这是默认行为。

参考:https://blog.51cto.com/13570193/2108347

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值