04 Http网络协议包

1. 什么是网络协议包

1.在网络中传递信息都是以【二进制】形式存在的。
2.接收方【浏览器/服务器】在接收信息后,要做第一件事
	  就是将【二进制数据】进行编译【文字,图片,视频,命令】
3.传递信息数据量往往比较巨大,导致接收方很难在一组连续二进制得到对应数据
	  比如 浏览器发送一个请求: http://192.168.100.2:8080/index.html
	       这个请求信息以二进制形式发送 01010101010110101010101101010
	       Http服务器很难从二进制数据得到相关信息
4.网络协议包一组有规律二进制数据,在这组数据存在了固定空间
	  每一个空间专门存放特定信息,这样接收方在接收网络协议包之后
	  就可以到固定空间得到对应信息,网络协议包出现极大降低了
	  接收方对接收二进制数据编译难度
	如:将二进制文件分段描述
	  【0000(ip地址)0000(端口号)0000(资源文件名)0000】

2. 常见的网络协议

  • FTP 网络协议包
  • Http 网络协议包

3. http网络协议包

在基于B/S结构下互联网通信过程中,所有在网络中传递信息都是保存在Http网络协议包
分类:

  • Http请求协议包:在浏览器准备发送请求时,负责创建一个Http请求协议包浏览器将请求信息以二进制形式保存在Http请求协议包各个空间 由浏览器负责将Http请求协议包推送到指定服务端计算机。
  • Http响应协议包: Http服务器在定位到被访问的资源文件之后。 负责创建一个Http响应协议包 Http服务器将定位文件内容或则文件命令以二进制形式写入到Http响应协议包各个空间由Http服务器负责将Http响应协议包推送回发起请求的浏览器上。

3.1 Http请求协议包内部空间

  1.按照自上而下划分,分为4个空间

   2.空间划分:

              请求行:[
		            url:请求地址(http://192.168.100.2:8080/index.html)
		            method:请求方式(POST/GET)
		         ]

                请求头:[
		              请求参数信息【GET】
		         ]

                空白行:[
		                没有任何内容,起到隔离作用
		         ]

                 请求体:[
	             	请求参数信息【POST】
	          ]

3.2 Http响应协议包内部结构

1.按照自上而下划分,分为4个空间

2.空间划分:

             状态行:[
	                  Http状态码
	              ]

                 响应头:[
	                  content-type: 指定浏览器采用对应编译器
			                对响应体二进制数据进行解析
	              ]

                 空白行:[
	                  没有任何内容,起到隔离作用
	              ]
                 响应体:[
	                 可能是被访问静态资源文件内容
					 可能是被访问的静态资源文件命令
			 		 可能是被访问的动态资源文件运行结果
	                  *****都是以二进制形式***
	              ] 

猜你喜欢

转载自blog.csdn.net/qq_28384023/article/details/115740051
04