快速搞懂htpp原理

1.http请求 原理

放松一个http请求其实和一个建立一个scoket连接区别不大,只不过socket ,outputStream。write的二进制字节数据格式要符合htpp。

浏览器在建立socket连接之前,必须要根据url里面的域名解析出ip地址和默认端口80组成一个get类型的http请求头,通过ouputStream.write发送到目标服务器,服务器等待inputStream.read返回,返回数据,最后断开这个连接。

  1. http 域名解析成IP,—> DNS

http请求建立连接前要把域名解析成ip,这就需要靠DNS服务器。

DNS解析过程先是从缓存中寻找,最后到域名服务器找。:浏览器缓存 没有,到本地电脑etc/hosts文件缓存 没有到,local dns server 缓存找(这里已经有百分之85的命中几率了)还没有,到lroot dns server,这里会返回一个主域名服务器(gTLD server,顶级域名 com ,cn,org)的服务器,local dns server请求 gTLD server 返回一个 Name server(通常就是你注册域名的服务商,他提供域名解析),name server 返回域名映射的ip地址给用户。 用户最后通过这个ip找到服务器。

你可能感兴趣的:(原理深究)