博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读《图解HTTP》有感-(了解web及网络基础)
阅读量:5092 次
发布时间:2019-06-13

本文共 966 字,大约阅读时间需要 3 分钟。

  • 写在前面

《图解HTTP》是由上野宣先生著,于均良先生译

闲暇之余!写写博文甚是高兴。如有不准确,望各位斧正。共同学习!


  • 正文 

HTTP协议是什么?能做什么?  

HTTP(超文本传输协议)实现资源(如:文本消息、图片、音频...)从客户端到服务端(或者服务端到客户端)的传输协议。WEB是建立在HTTP协议上实现消息传送达到通信的。

产生HTTP协议的契机

实现跨地域的知识共享、消息更快的互通的迫切需要 。

一次HTTP通信

一次HTTP通信在TCP/IP中的体现

一次HTTP通信在TCP/IP中的执行步骤

1、在客户端输入待请求的服务端域名(如:https://i.cnblogs.com/),那么应用层的DNS服务将会对该域名进行解析,得到对应的IP地址

2、由HTTP协议产生对web服务器的请求报文;然后下发到传输层

3、在传输层由TCP协议把请求数据分割给字节流以方便数据传输,并提供可靠的字节流服务;然后下发给网络层

4、在网络层由IP协议经过链路层的路由把数据包传送到服务端主机

5、服务端的网络层对IP包进行拆解,再把请求报文向上提交到传输层

6、服务端传输层的TCP协议对数据包进行重组以获取完整的请求报文;再向上提交给应用层

7、服务端应用层的HTTP协议对请求进行处理,再响应给客户端

8、客户端得到响应之后进行相应的处理,一次完整的HTTP通信结束

一次HTTP通信在TCP/IP中的数据处理逻辑

补充和说明

  1、DNS服务提供域名到IP地址之间的解析服务

  (域名解析步骤:先获取客户端缓存的域名解析列表。如果解析不到对应的IP地址,则请求远程的域名解析系统实现域名解析服务)

2、TCP采用三次握手策略保证可靠的通信服务  

 (传输层的TCP协议为了方便数据在网络传输把HTTP请求报文进行分割,并在各个数据包上打上标记序号和端口号后转发给网络层)

 3、IP协议实现把各种数据包传送给服务端

(IP协议对来自于TCP的数据包进行封装,增加通信目的地的MAC地址,再转发给链路层)

4、MAC地址是指网卡所属的固定地址


  •  交流学习

笔者能力有限。如有纰漏,望斧正


 2017-10-05

于长沙

转载于:https://www.cnblogs.com/imaikce/p/7628136.html

你可能感兴趣的文章
Hibernate简介
查看>>
Python自学之乐-python中break continue exit() pass浅析
查看>>
局域网从另一台电脑copy文件(Linux系统下)
查看>>
FC和SCSI
查看>>
VC2010常见问题的解决方案
查看>>
超级详细Tcpdump 的用法
查看>>
程序员的思维修炼
查看>>
display:none和visibility:hidden的区别
查看>>
HDOJ---1232 畅通工程[并查集]
查看>>
Python学习路程-常用设计模式学习
查看>>
[JOYOI1326] 剑人合一
查看>>
[JZOJ100047] 【NOIP2017提高A组模拟7.14】基因变异
查看>>
梦断代码阅读笔记01
查看>>
利用“Java同包同名类执行顺序”取消Java 网站应用程序Licence验证
查看>>
UNICODE与ASCII码的关系(MTK)
查看>>
underscore源码学习笔记(一)
查看>>
iOS项目开发实战——通过Http Get方式与server通信
查看>>
ES6 Number
查看>>
Java基础学习-IO流
查看>>
TFS 2017 持续集成速记
查看>>