粗读《图解HTTP》(一)

蛮早以前扫过一遍这个图片生动形象的《图解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的需要多看几遍才能写的有条理。。先放着。。再多看几遍🤦‍♀️

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 197,966评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,170评论 2 375
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 144,909评论 0 327
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,959评论 1 268
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,851评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,583评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,956评论 3 388
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,590评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,878评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,892评论 2 314
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,719评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,501评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,957评论 3 300
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,124评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,440评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,003评论 2 343
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,211评论 2 339

推荐阅读更多精彩内容

  • 1.OkHttp源码解析(一):OKHttp初阶2 OkHttp源码解析(二):OkHttp连接的"前戏"——HT...
    隔壁老李头阅读 20,776评论 24 176
  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 5,042评论 0 8
  • 1.这篇文章不是本人原创的,只是个人为了对这部分知识做一个整理和系统的输出而编辑成的,在此郑重地向本文所引用文章的...
    SOMCENT阅读 13,029评论 6 174
  • 协议基础 协议就是计算机之间通过网络实现通信时实现所达成的一种“约定”,这种约定使得那些由不同厂商的设备,不同的C...
    d9fc24a0c9a9阅读 2,336评论 0 6
  • * 厚道 厚德载物,就是说人只要有好德行,就没有承载不了的事,相反,人无大德便无法成就大事。要乐于吃亏,多为别人着...
    范亚坤阅读 1,170评论 0 3