-
HTTP是一个应用层协议,HTTP无需操心网络通信的具体细节,它把联网的细节都交给了通用,可靠的因特网传输协议层TCP/IP
-
TCP:
-
-
TCP提供了
-
-
无差错的数据传输
-
按序传输,数据总是会按照发送的顺序到达
-
未分段的数据流,可以在任意时刻以任意尺寸将数据发送出去
-
-
TCP/IP隐藏了各种网络和硬件的特点和弱点,使各种类型的计算机和网络都能够进行可靠通信
-
只要进行了TCP连接,客户端和服务器之间的报文就不会丢失,不会被破坏,也不会在接收时出现错序
-
HTTP位于TCP的上层,HTTP使用TCP来传输其报文数据,与之类似,TCP则位于IP的上层
-
-
HTTP网络协议栈
-
-
层次从上至下依次为:HTTP应用层 —> TCP传输层 —> IP网络层 —> 网络特有的链路接口(数据链路层)—> 物理硬件层
-
-
网络连接
-
-
在HTTP客户端向服务器发送报文前,需要使用网际协议地址和端口号在客户端和服务器之间建立一条TCP/IP连接
-
在TCP中,你需要知道服务器的IP地址,以及与服务器上运行的特定软件的TCP端口号,通过URL可以获得HTTP服务器的IP地址和端口号
-
比如:http://207.200.83.29.80/index.html,这个URL就使用了机器的IP地址--207.200.83.29,端口号80
-
又比如:http://www.baidu.com:80/index.html,这个URL没有使用数字形式的IP地址,而是文本形式的域名,或者称为主机名。
-
-
输入URL后的通信过程
-
-
用户输入URL,比如:http://www.google.com
-
获取主机名www.google.com
-
DNS域名解析
-
获取端口号80
-
连接到相应IP的端口80
-
客户端发送一条HTTP GET请求给服务器
-
客户端从服务器读取HTTP响应
-
关闭连接
-
HTTP通信机制解析
猜你喜欢
转载自blog.csdn.net/weixin_42604536/article/details/85910321
今日推荐
周排行