图解HTTP(1)

1、TCP/IP协议族

  • TCP/IP按层次分别分为以下4层:
  • 应用层:向用户提供应用服务时通信的活动;eg,FTP(文件传输协议)和DNS(域名系统)服务就是其中两类,HTTP协议也处于该层;
  • 传输层:传输层对上层提供处于网络连接中的两台计算机之间的数据传输(可靠的字节流服务),为了方便传输,把从应用层处收到的数据进行分割;该层有两个性质不同的协议:TCP(传输控制协议)和UDP(用户数据报协议);
  • 网络层:处理在网络上流动的数据包;所起作用就是选择一条传输路线;IP协议处于这一层;
  • 数据链路层:处理连接网络的硬件部分;

2、发送端到接收器通信流程

  • 发送端从应用层往下走,接收端从数据链路层往上走。
  • 以Web页面的HTTP请求作为示例:
    1. 发送端用户首先在应用层(通过HTTP协议)发出HTTP请求;
    2. 接着HTTP请求往下层发送,传输层为了传输方便,把从应用层收到的数据(HTTP请求报文)进行分割,在各个报文上打上标记序号及端口号,并加上该层的首部,转发给网络层;
    3. 在网络层(IP协议),加上作为通信目的地的MAC地址后转发给链路层;
    4. 接收端通过链路层收到数据,再按序往上层发送直至应用层。
  • 发送端在往下传送数据时,每经过一层就加上相应的首部信息(即封装信息);反之,接收端在往上传输数据时,没经过一层就去掉相应的首部信息(可理解为解封装)。

3、IP协议和IP地址

  • IP(Internet Protocol),网际协议;位于网络层。作用是把各种数据传送给对方。而这过程需满足两个重要条件:IP地址和MAC地址。
  • IP地址指明了节点被分配到的地址,MAC地址是指网卡所属的固定地址。IP地址可以和MAC地址进行配对,利用ARP(Address Resolution,地址解析)协议解析地址,可查出IP对应的MAC。IP可更换,但MAC地址基本不会更改。

4、确保可靠性的TCP协议

TCP位于传输层层,提供可靠字节流服务

  • 字节流服务:为了方便传输,将大块数据分割成报文段为单位的数据包进行管理。
  • 为了确保可靠性的TCP三次握手机制:
  • 发送端发送一个带SYN标志的数据包给对方;
  • 接收端收到SYN后,回传ACK响应和自己的SYN数据;
  • 发送端收到接收端的响应ACK和SYN后发送ACK响应,代表“握手”成功,后续发送端就可以给接收端

5、DNS服务

DNS服务同HTTP协议一样位于应用层,提供域名到IP地址之间的解析服务(或者逆向从IP地址反查域名的服务)。

6、各种协议的职责

  • 发送端:
  • HTTP协议:生成针对目标Web服务器的HTTP请求报文;
  • TCP协议:为了方便通信,将HTTP请求报文按序分割成报文段,把每个报文段可靠地传给对方;
  • IP协议:搜索对方的地址,一边中转一边传送;
  • 接收端:
  • TCP协议:按序重组从对方那里接收到报文段;
  • HTTP协议:对Web服务器请求的内容的处理。

7、URI和URL

  • URI:统一资源标识符;由某个协议方案表示的资源的定位标识符。协议方案是指访问资源所使用的协议类型名称,比如:http、ftp、telnet、file等。
  • URL:统一资源定位符;采用协议HTTP。
    URI是一类更通用的资源标识符,它主要由URL和URN两个子集构成。
    查看HTTP权威指南理解为:URL是使用HTTP协议方案的URI。

你可能感兴趣的:(图解HTTP(1))