连接网站的过程

Author Avatar
Peter1303 1月 29, 2018
  • 在其它设备中阅读本文章

每台连接互联网的机器都有一个唯一的 IP 地址

IP 地址是由4个0到256的数组成的

由于每台联网的设备的 IP 地址都是独立的

  • 第一步

    从本地的 Host 文件先查找 IP 地址,找不到?浏览器就要给对应的服务器发出请(P)求(Y)(GET/POST)并向域名解析商获取该域名的 IP

img

简单点?

比如:我要打电话,我只记住名字但不记得号码,此时就需要 电话本 来查询。大多数直接输入 IP 都是可以连接的,但是你不可能记住那么多的 IP 吧?所以域名解析是十分必要的!

怎么知道域名的 IP 的地址呢?这里以百度为例

Windows命令行/Linux的终端差不多一样的命令

1
ping www.baidu.com

结果:

1
2
3
4
5
6
7
8
9
10
正在 Ping www.a.shifen.com [163.177.151.109] 具有 32 字节的数据:
来自 163.177.151.109 的回复: 字节=32 时间=9ms TTL=56
来自 163.177.151.109 的回复: 字节=32 时间=8ms TTL=56
来自 163.177.151.109 的回复: 字节=32 时间=8ms TTL=56
来自 163.177.151.109 的回复: 字节=32 时间=8ms TTL=56

163.177.151.109 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 8ms,最长 = 9ms,平均 = 8ms

163.177.151.109 就是百度的 IP 地址了

可以通过 IP 直接连接百度,不信自己试试?


详细


  • 第二步

使用TCP协议,建立TCP连接

在TCP协议中,建立TCP需要与服务器握手三次

  1. 你先告诉服务器你要给服务器发东西(SYN
  2. 服务器应答你并告诉你它也要给你发东西(SYN、ACK
  3. 然后答复服务器(ACK)

  • 第三步

第三步干嘛,当然是用HTTP协议请求网页内容咯

像下载文件那样,不过网页不是用来存储的,还需要解析

博客使用:CC BY-NC-SA 3.0 Unported 协议进行许可
本文链接:https://peter1303.github.io/2018/01/29/连接网站的过程/