记录方式:
主要根据目录记录主要的知识点,HTTP相关知识点书中写的很容易理解,建议阅读《图解HTTP》
1.Part1 web及网络基础知识
网络基础TCP/IP
①TCP/IP协议族的分层管理,分为4层:
- 应用层:决定了向用户提供应用服务时通信的活动,各种通信协议就处于该层,如HTTP、DNS、FTP等
- 传输层:提供处于网络连接中的两台计算机之间的数据传输
- 网络层:用来处理在网络上流动的数据包
- 数据链路层:用来处理连接的硬件部分
层次化设计:TCP/IP经过以上层次化设计后,可以根据某一层进行对应的改动和优化,减小了改动的工作量。同时,每一层的设计相对简单了,每一层只考虑分派给自己的任务,而不需要操心别的层的问题。
层与层之间传输数据时,每经过一层都会被封装一次,在首部添加该层所属的首部信息
②与HTTP密切相关的协议
-
负责传输的ip协议
1)IP不同于“IP地址”,它位于网络层,作用是把各种数据包传送给对方。其中2个重要的条件是IP地址(节点被分配到的地址)和MAC地址(网卡所属的固定地址)
2)ARP是一种用以解析地址的协议,可以根据IP地址反查出对应的MAC地址
路由选择的方式使得数据传输时被N次转发,无法被全面掌握 -
确保可靠性的tcp协议
1)TCP位于传输层,提供可靠的字节流服务(将大块数据分割成以报文段为单位的数据包进行管理)
2)为了确保数据准确到达目标处,TCP需要三次握手:TCP的标志(flag)---SYN(synchronize)---ACK(acknowledgement)。当然,TCP协议还有其他各种手段来保证通信的可靠性 -
负责域名解析的dns协议
DNS协议提供通过域名查找IP地址,或逆向从IP地址反查域名的服务 -
URI(Uniform Resource Identifier)和URL(Uniform Resource Locator)
2.Part2 HTTP协议简单介绍
-
HTTP协议用于端与端之前的请求和响应的交换达成通信
-
HTTP是不保存状态的协议,及使用cookie的状态管理
1)HTTP协议自身不对请求和响应之间的通信状态进行保存,于是,引入了Cookie技术
2)Cookie技术通过在请求和响应报文中写入Cookie信息来控制客户端的状态。它从响应报文内的一个叫做Set-Cookie的首部字段信息,通知客户端保存Cookie。下次客户端请求时,会把Cookie加入到请求报文中。服务器校验该Cookie来对比之前的记录,得到状态信息。 -
HTTP请求的方法
常用到的是GET和POST,虽说POST和GET很相似,但是POST的主要目的不是获取响应的主体内容,而是传输实体主体。参考 -
持久连接节省通信量
1)HTTP初始版本中,每进行一次HTTP通信就要断开一次TCP连接。请求非常多情况下,频繁的建立和断开连接会给服务器造成压力。
2)HTTP/1.1和部分HTTP/1.0相处了持久连接,也称为HTTP keep-alive或HTTP connection reuse的方法,旨在建立一次TCP连接后进行多次请求和响应的交互。这使得多数请求以管线化(pipelining)方式发送成为可能。
网友评论