读《图解HTTP》有感-(了解web及网络基础)
- 写在前面
《图解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
于长沙
读《图解HTTP》有感-(了解web及网络基础)的更多相关文章
- 【图解HTTP】第一章 了解web及网络基础
[图解HTTP]了解Web及网络基础 Web页面是如何呈现的?根据Web浏览器地址栏中指定的URL,Web浏览器从Web服务器端获取文件资源(resource)等信息,从而显示出Web页面. 这种通过 ...
- 了解web及网络基础
了解web及网络基础 以下内容简单的说明了一下TCP/IP协议族中HTTP协议.DNS服务.IP协议的一些概念和关系.笔者只是对知识点进行了总结,仅供参考: ) 转载请注明出处:了解web及网络基础 ...
- http基础(1.了解web及网络基础,2.简单的http协议)
第一章:了解web及网络基础 1.http:超文本传输协议 2.tcp/ip协议族:通常使用的网络是在tcp/ip协议族的基础上运作的,而http属于它内部的一个子集. 3.tcp/ip协议族按层次分 ...
- 第一章 了解Web及网络基础
第一章 了解Web及网络基础 Web建立基础.HTTP如何诞生发展 1.使用HTTP协议访问Web 在浏览器地址栏中输入URL之后过程: 1)DNS 解析:浏览器查询 DNS,获取域名对应的 IP 地 ...
- 图解 HTTP 笔记(一)——了解 Web 及网络基础
本章内容:Web 建立在何种技术之上,HTTP 协议如何诞生并发展? 一.Web 基于 HTTP 通信 Web 使用一种名为 HTTP (HyperText Transfer Protocol,超文本 ...
- HTTP图解--了解Web及网络基础
1.网络基础TCP/IP 通常使用的网络是在TCP/IP协议族的基础上运行的,http属于它内部的一个子集. TCP/IP协议族按层次分别分为:应用层.传输层.网络层和数据链路层.分层的好处在于各司其 ...
- http(一)web和网络基础
深入学习http不为别的,只为补充底层知识,打好根基,深入了解其他技术,擒贼先擒王,学好九阳神功以后,乾坤大挪移,太极剑就容易了,急于求成,就只能变周芷若.走着...... 来源于:图解HTTP 1. ...
- 图解HTTP(1)之WEB及网络基础
HTTP协议访问Web 当你在浏览器地址栏中键入有效URL(统一资源定位符)相应的网页页面就会展示出来,那么它是如何展示出来的, 首先这存在两个概念 ------客户端.服务器端 客户端(client ...
- 图解HTTP-1.web和网络基础
目录 1. 3 项 WWW 构建技术 2. TCP/IP 是互联网相关的各类协议族的总称 协议(protocol) TCP/IP分层管理 TCP/IP通信传输流 封装(encapsulate) 3. ...
随机推荐
- (十八)TableView实践(多组汽车品牌展示)
对于多组数据,可能会用到模型的嵌套. 例如多组汽车,每组是一个模型,组内有多辆车的信息,每辆车的信息也是一个模型,相当于模型中有模型. 可以看到,每个item是一个字典,这要创建一个模型,而模型内部的 ...
- PLSQL WEBSERVICES 发布
一. 在Oracle EBS二次开发中,PL/SQL程序是开发人员使用频率最高的开发语言,同时也是大家最容易掌握的工具之一了,而我们也很希望将自己编写的PL/SQL程序发布为Web服务来提供给 ...
- 如何编写51单片机超声波测距SR04_lcd1602显示程序
超声波测距在我们日常生活中很常见,比如说车在倒退的时候,为了防止车撞到障碍物,会在车尾加上一个超声波测距模块.在智能车比赛中,也有超声波测距模块等等.可见超声波非常的重要,接下来,我们上代码研究一下如 ...
- 02_Nginx基本配置与参数说明 + 辅助命令
Nginx基本配置与参数说明,下面是nginx.conf配置文件 #运行用户 #user nobody; worker_processes 2; #全局错误日志及PID文件 #error_l ...
- C++之IO操作
可参考自: C++之标准设备IO操作流 C++之预定义类型IO格式控制 C++之文件IO操作流
- android 资源文字ids的作用
ids.xml--为应用的相关资源提供唯一的资源id.id是为了获得xml中的对象而需要的参数,也就是Object = findViewById(R.id.id_name)中的id_name.这些值可 ...
- 8 个实用的 Bootstrap 3 案例教程
Bootstrap 3发布各大设计论坛议论纷纷.这次Bootstrap 3最大的特点就是--扁平化.下面就是一些早期的Bootstrap 3例子,不过亲们注意咯,因为大部分最早期的测试案例,可能用到一 ...
- obj-c编程10:Foundation库中类的使用(1)[数字,字符串]
我们知道在mac或iphone上编程最终逃不开os x平台,你无法在windows或linux上开发纯正的apple程序.(so不要舍不得银子买mac啦)虽说linux和windows上有移植的obj ...
- Docker 基础技术之 Linux cgroups 详解
PS:欢迎大家关注我的公众号:aCloudDeveloper,专注技术分享,努力打造干货分享平台,二维码在文末可以扫,谢谢大家. 推荐大家到公众号阅读,那里阅读体验更好,也沉淀了很多篇干货. 前面两篇 ...
- 锋利的Jquery摘要
一本好书值得去反复回味 第一章: jquery中的$(document).ready(function(){})与js中的windows.onload()的比较 $(document).ready ...