一背景
在做爬取的时候,遇到HTTPS的代理问题,由于之前的HTTPclient的3.X版本与4.X差异较大,遇到一些问题,解决过程中还是需要了解底层的原理。
一了解web与网络基础
1.1 ,1.2介绍了HTTP的诞生,扫描一下就行。
1.3 网络基础TCP/IP
1.3.1 介绍了tcp/ip的网络协议
1.3.2TCP/IP的分层管理
先说概念会枯燥:应用层、传输层、网络层、数据链路层
为啥要分层?还是为了简单,每层有自己的任务。
应用层:
决定了向用户提供应用服务时通信的活动,通俗举例就是:FTP,DNS。HTTP协议也位于该层。
传输层:
传输层对上层应用层,提供处于网络连接中两台计算机的之间的数据传输。
传输层协议有:TCP,UDP。
网络层:
网络层用来处理网络上流动的数据包,该层规定了通过怎样的路径到对方计算机,并把数据传给对方。
链路层:
用来处理网络连接的硬件部分,包括网卡,光纤,操作系统等
1.3.3 TCP/IP通信传输流
发送端在曾与曾之间传递数据时,没经过一层都会打上一个该层首部信息,反之,接收端在曾与曾之间传输消息时,没经过一层会把对应的首部信息去掉。把这种数据信息包装起来的做法称为封装。
1.4 与http协议密切关系的三个协议:IP,TCP,DNS
1.4.1 负责传输的IP协议
IP协议位于网络层,作用是把数据包传送给对方,需要IP地址(节点被分配的地址),MAc地址(网卡被分配的地址),IP地址可以和MAc地址配对。使用APR协议凭借MAC地址进行通信。计算机与路由之间的中转过程称为路由选择。
1.4.2确保可靠的TCP协议
TCP位于传输层,提供可靠的字节流服务。这里主要是吧大块数据分割成报文段(segment)为单位的数据包进行管理,而且三次握手协议能确认数据 是否传送到对方。
1.5 负责域名解析的DNS服务
DNS位于应用层,提供域名到IP地址的解析服务。
1.6 各种协议与HTTP协议之间的关系
1.7 URI与URL
URI就是统一资源标识符,用字符串标识某一互联网资源,URL是表示资源的地点,URL是URI的子集。
URI格式: