前言前端
又开始跟着老刘读书了。web
此次立下flag,必定要读完浏览器
第一章服务器
主要是讲一些概念,协议啊!分层啊,交换机。老刘也整理了三四点重点网络
其实一些概念,看过也就忘记了)苦苦post
可是后面还会细讲,因此就是一个大纲同样。写给你们提一个醒,计算机是怎么交互的(前端妹子老是喜欢说交互交互)编码
进入主题code
第一:什么是协议?blog
web 协议却是用的比较多的,http https 每天发网络请求队列
一个协议定义了在两个或多个通讯实体之间交换的报文格式和次序,以及报文发送和/接收一条报文或其余事件所采起的动做
关键点:内容组织方式、交互次序、响应
第二:http协议
我看过图解http,还蛮印象深入的
三次握手
简单的例子:浏览器主动发起请求,服务器就会收到,而后告诉浏览器收到了你的请求,而且我赞成你这么干。浏览器再次发起真正的请求,这就是三次握手啦!
咱们日常用的多的是get post
用到delete put 浏览器还会先发一个option请求,询问一下服务器是否是支持这样的请求
是怎么样的格式呢
请求行:明确请求类型
请求头:客户端向服务端提供一些客户端自己的信息,或者告诉客户端本身但愿接收到什么样(类型、
编码等)的响应消息
请求正文:请求的其余信息
服务端响应请求的格式:
状态行:表示响应的类别(成功、失败、重定向等等)
消息报头:服务端向客户端提供一些服务端自己的信息,或者对应于状态行的其余附加信息
响应正文:客户端请求的资源
协议栈层次
1.应用层: 应用层协议用于各个端系统中的应用程序交换信息分组, 该信息分组称为报文.
- 运输层: 运输层的做用是在应用程序端点之间传送应用层报文段. 在因特网中有TCP和UDP两种运输协议, 任一个都能封装并运输应用层报文, 运输层的分组称为报文段.
- 网络层: 网络层负责将运输层的报文段和目的地址封装成数据报, 用于下一层的传输.
- 链路层: 链路层会把网络层的数据报封装成链路层的帧, 并把该帧传递给下一个结点.
- 物理层: 物理层的任务是将链路层每帧中的一个个比特移动到下一个节点,, 具体会落实到不一样的物理媒介(双绞铜线, 光纤等).
第三:
网络分层
网络分层就是将传输数据所须要作的事情,按功能划分,分为几个模块(层),使整个结构更清晰,也更利于维护和扩展
网络分层中,数据封装的形式以下:
数据发送端:将上一层传输过来的全部数据当成信息内容自己,而后本层在上一层的基础上,加上这一层完成任务所须要的数据(头部信息),而后传给下一层
数据接收端:将下一层传输过来的数据分为两部分,头部和信息自己,拿出头部(对应于数据发送端的该层添加的头部信息)进行解析,而后将传给上一层
第四:交换处理延时
处理时延: 1) 检查分组首部和决定将分组导向哪个队列; 2) 其余:检查比特级差错所须要的时间。 排队时延: 1) 在队列中,当分组在链路上等待传输时所需的时间,取决于先期到达的,正在排队等待想链路传输分组的数量。 传输时延: 1) 将全部分组的比特推向链路所须要的时间。 传播时延: 1) 从该链路的起点到路由器B传播所须要的时间是传播时延。该比特以该链路的传播速率传播。