美文网首页
粗读《图解HTTP》(一)

粗读《图解HTTP》(一)

作者: Masazumi柒 | 来源:发表于2017-09-06 23:26 被阅读0次

蛮早以前扫过一遍这个图片生动形象的《图解HTTP》一书。前段时间开始捣鼓Python,看别人写的爬虫,什么请求头都看不懂。。所以又看了一遍。为方便以后复习,摘一些我认为的重点出来。

什么是HTTP

HTTP(HyperText Transfer Protocol,超文本传输协议)是Web用来完成从客户端到服务器等一系列运作流程的协议。HTTP是Web通信的基础。

其实也就是可以理解为,HTTP其实就是一个约定好的通信协议,HTTP一开始只是一种简单的协议,随着技术的发展,需要携带的信息也越来越复杂,就衍生出许多种基于HTTP的附加协议来达成需求。但是基础都是HTTP。

TCP/IP

通常使用的网络(包括互联网)实在TCP/IP协议族的基础上运作的,所以说TCP/IP是网络基础。HTTP是属于他的一个子集。

还有不是基于TCP/IP的网络?
TCP/IP的作用其实就相当于人的语言,不同设备通过互联网交流信息,必须基于相同的方法来传输信息,这个方法一般称为协议(protocol)。
TCP/IP协议族类型
TCP/IP的分层管理

TCP/IP协议族按层次可以分为以下4层:应用层、传输层、网络层、数据链路层。

分层其实就是一个封装思想的体现,各个层实现并完成不同的功能,再传输给其他层,各层之间相对独立,需要替换掉某一层不需要整体替换,只需要实现该层应实现的功能即可。

#######应用层
应用层决定了向用户提供服务时通信的活动。TCP/IP协议族内预存了各类通信的应用服务,比如FTP和DNS。HTTP也处于该层。
#######传输层


#######网络层


#######链路层

TCP/IP通信传输流
TCP/IP通信传输流

通信流简单来说就是,为了保证数据的送达,发送端经过四层封装,接收端通过四层解析,最终得到消息本体。
书里以HTTP举了个栗子。

HTTP请求发送接收举例
这里我觉得需要记一下经过各层之后的数据名称,HTTP报文-->TCP首部-->IP数据包-->网络架构。发送到网络上的数据包形式从外往内分别是以太网首部、IP首部、TCP首部、HTTP报文。
这种处理方式其实可以理解成古代的飞鸽传书。家书内容是HTTP报文,写在纸上是TCP首部,包上信封写上邮编啊地址啊(绑鸽子上那叫啥?)是IP首部,绑上对应的🕊啦送给对应的邮差是以太网首部。(虽然比喻不太合适,这样就好记多了。)
IP、TCP、DNS

#######IP
按层次分,IP(Internet Protocol)网际协议,属于网络层。


路由选择机制(routing),在到达通信目标前,网络设备只能知道粗略的传输设备。
虽然还是不明白为什么会有这样的机制产生。。后续再看?
大概理由是因为封装了多层,只有到对应位置解开封装之后才能知道??而且本身协议太过简单?

#######TCP
TCP位于传输层,提供可靠的字节服务,确保可靠性。


##########TCP的三次握手(three-way handshaking)
三次握手可以拆分这样三次:
1.发送端发送出带有SYN标识的数据包给接收端
2.接收端收到并返回带有SYN/ACK标识的数据包给发送端以传达收到消息。
3.发送端收到后,再传回ACK标识的数据包给接收端,表示知道送达了,握手结束。
如果握手过程中莫名中断失败了,发送端重启握手顺序发送数据。

说白了三次握手的方式其实就是发送端和接收端玩一个“间谍游戏”,发送端发出自己能是别的标识数据,接收端收到之后将发送来的标识和自己的标识发给发送端,发送端收到接收到的消息,识别到自己的标识,说明接收端确实收到了,然后再把接收端的标识单独发回去。两端其实都不需要知道对方的标识是什么意思,哪怕是一个shit,不用解析反正就是反手发回去就行。(至于是不是真的不需要解析,我还不知道。
TCP不止三次握手这种可靠性手段,应该还有其他手段,后续去了解。

#######DNS
DNS位于应用层,用于域名到IP地址之间的解析。

各种协议各司其职
URI和URL区别?
URI是某个协议方案表示的资源定位标识符,用字符串标识某一互联网资源。
URL是统一资源定位符,用字符串表示资源的地点。

第二章HTTP

两台计算机使用HTTP进行通信时,必有客户端和服务端。发送请求为客户端,响应请求为服务端。

HTTP是有请求才会有响应,那么即时通信类的是怎么一个原理呢?肯定不是HTTP。socket的原理啦什么的后续去看看。

写到这里发现关于HTTP的需要多看几遍才能写的有条理。。先放着。。再多看几遍🤦‍♀️

相关文章

  • 粗读《图解HTTP》(一)

    蛮早以前扫过一遍这个图片生动形象的《图解HTTP》一书。前段时间开始捣鼓Python,看别人写的爬虫,什么请求头都...

  • 粗读《图解HTTP》(二)

    HTTP的作用 那还用说么,就是用于客户端与服务器之间的通信。与其他TCP/IP协议族内的其他众多协议没差。但是需...

  • 图解HTTP(一)

    图解HTTP第一章 通常使用的网络是在TCP/IP协议族的基础上运作的,而HTTP属于他内部的一个子集。 TCP/...

  • 图解http(一)

    从今天开始阅读图解http这本书,下载地址:我的百度云 http的发展史 这个我就不说了,总之起因就是因为一个家伙...

  • 图解HTTP(一)

    TCP/IP协议族 TCP/IP是互联网相关的各类协议族的总称。 TCP/IP的分层管理 按层次分别分为:应用层、...

  • 图解http(一)

    一、告知服务器意图的Http方法 GET:获取资源 1)返回资源2)if-Modified-Since:Thu,1...

  • 《图解HTTP》

    网络基础TCP/IPTCP/IP协议族说法一:TCP/IP是指TCP和IP两种协议说法二:TCP/IP是在IP协议...

  • 【图解 HTTP】

    HTTP 1.1 标准的通信过程:HTTP 方法协议格式保温结构首部字段状态码 web 安全httpsSSL证书认...

  • 图解HTTP

    第一章 了解Web及网络基础 1.1 使用HTTP协议访问Web 1.2 HTTP的诞生 1.2.1 为知识共享而...

  • 《图解HTTP》

    译者序 讲解网络协议的权威书籍有两本《HTTP权威指南》《TCP/IP详解》但是对初学者不是很友好 HTTP本身不...

网友评论

      本文标题:粗读《图解HTTP》(一)

      本文链接:https://www.haomeiwen.com/subject/ppendxtx.html