TCP/IP协议:平常通用的网络是在TCP/IP协议基础上运作的,HTTP协议属于TCP/IP协议内部的一个子集。
协议:不同硬件,操作系统之间通信都需遵循的规则,称之为协议,那么和互联网相关的协议集合总称为TCP/IP。
TCP/IP协议各层的作用:
应用层:决定了向用户提供应用服务时通信的活动,HTTP属于应用层。
传输层:对上层应用层提供处于网络连接中的两台计算机之间的数据传输
网络层:用来处理在网络上流动的数据包(数据包是网络传输的最小数据单位),网络层规定了通过什么样的路径到达对方的计算机,并且把数据包传送给对方。
链路层:(数据链路层,网路接口层)用来处理连接网络的硬件部分。包括了控制操作系统,硬件的设备驱动,NIC(网卡)以及光纤等物理可见部分。
发送端在层与层间传输数据时,每经过一层就会被打上一个该层所属的首部信息。接收端在层与层传输数据时,每经过一层就会把对应的首部消去。
为了确保无误地将数据传达目标,TCP用三次握手策略。
用TCP协议把数据包送出后不会对输送的情况置之不理。用三次握手策略确认是否成功送达。
发送端先发一个带有SYN标志的数据包给对方。接收端收到后,回传一个带有SYN/ACK标志的数据包表示送达确认信息。
最后发送端再回传一个带有ACK标志的数据包表示“握手”结束。如果在握手过程中的某个阶段被中断了,TCP协议再以相同的顺序发送相同的数据包。
DNS服务:和HTTP协议一样位于应用层,提供域名到IP地址之间的解析服务。
计算机可以被赋予IP地址,也可以赋予主机和域名。我们平常用主机名或域名来访问对方的计算机。而计算机比较擅长处理一串数字,DNS服务就是通过域名来查找IP地址,
或者逆向从IP地址找到域名的服务。
URL和URI:URI表示互联网资源(统一资源标识符),URL表示资源的地点(统一资源的定位符),
HTTP用于客户端和服务端之间的通信,HTTP不保存状态(无状态协议)。HTTP协议自身不对请求和响应之间的通信状态进行保存,就是HTTP协议不对发送请求和响应做
持久化处理。每当有新的请求发送时,产生对应新的响应,HTTP协议本省不保留之前的请求和响应报文信息。这样可以更快的处理事务,保证了协议的可伸缩性
在HTTP1.1中引入了cookie技术,可以保留请求和响应的状态(如用户的登陆状态)