最近在看图解HTTP,重新去理解了http,现记录整理一些个人认为的重点
此章节记录HTTP基础概念、学习http之前需了解的TCP/IP基础知识
一、超文本传输协议
1、HTTP通常被译为‘超文本传输协议’,这种翻译不严谨,严谨的译名应该是‘超文本转移协议’
二、了解TCP/IP的基础
1、通常使用的网络是在TCP/IP协议的基础上运作的,而HTTP属于它的一个子集
2、和互联网相关的协议集合起来总称为TCP/IP
3、TCP/IP的分层管理
(1)应用层:决定想用户提供应用服务时通信的活动,如FTP、DNS、http协议
(2)传输层:提供网络链接中两台计算机指尖的数据传输。传输层的协议:TCP(传输控制协议)、UDP(用户数据报协议)
(3)网络层:处理网络上流动的数据包
(4)数据链路层:用来处理链接网络的硬件部分。如网卡、光纤。硬件上的范畴均在链路层的作用范围内。
4、TCP/IP 通信传输流
以HTTP举列:
(1)应用层:客户端在应用层发出HTTP请求
(2)传输层:在传输层(TCP协议)把应用层收到(HTTP请求报文进行分割),并给各个报文打上序列号及端口号发给网络层
(3)网络层:增加作为通信目的的MAC地址转给链路层
(4)链接层:接收到数据,逐层向上转发
注意:
(1)发送端在层与层指尖传输数据,每经过一层搭上对应层的首部信息
(2)接收端在层与层传输数据时,每经过一层就去掉对应层的首部信息
(3)这种把数据信息包装起来的做法成为封装
三、和HTTP密不可分的3个协议:IP、TCP、DNS
1、IP协议:Interner Protocol,位于网络层
IP协议与IP地址的区别:
(1)IP协议:把各种数据包传送给对方,需要满足各种条件,其中最重要的2个条件:IP地址和MAC地址(Media Access Control Address)
(2)IP地址:指明节点被分配的地址。IP地址可变换
(3)MAC地址:指网卡所属的固定地址。MAC地址基本不会更改。IP地址可以和MAC地址配对。
使用ARP协议凭借MAC地址进行通信
ARP协议(Address Resolution Protocol):是一种用以解析地址的协议,根据通信方的IP地址就可以反差对应的MAC地址
没有人能够全面掌握互联网中的传输状态,因此存在路由选择(routing)机制.
2、TCP位于传输层,提供可靠的字节流服务
字节流服务(Byte Stream Service):为了方便传输,将大块数据分割成报文段(segment)为单位的数据包进行管理
可靠的传输服务:能够将数据准确可靠的传给对方
确保数据能够到达目标:TCP 3次握手
(1)发送端:发送一个SYN标志的数据包给对方
(2)接收端:接收到后,回传SYN/ACK标志的数据包以示传达确认信息
(3)发送端:回传一个带AC卡标志的数据包,代表握手结束
3、DNS(Domain Name Service):位于应用层,提供域名到IP地址之间的解析服务。
计算机既可以被赋予IP地址,也可以被赋予主机名和域名。如www.baidu.com
DNS协议提供通过域名查找IP地址,或从IP地址反查域名的服务