网络分层模型和应用协议

Fri, July 26, 2024 - 3 min read
五层网络模型

分层模型

五层网络模型

为了方便学习和理解,综合实践中用的多的四层TCP/IP网络模型和七层OSI网络模型,有了五层网络模型。即封面图。

数据的传输

发送方封装数据,接收方解封装数据。

应用层协议

URL

URL不是应用层协议,但它与应用层协议息息相关。URL(Uniform Resource Locator,统一资源定位符)用于定位网络服务

我们通过URL可以找到网络上的资源,例如网页、视频、音乐等。

URL是一个固定格式的字符串:

URL结构

它表达了:

从网络中哪台计算机(domain)中的哪个程序(port)寻找哪个服务(path),并注明了获取服务的具体细节(path),以及要用什么样的通信协议(schema)

注:

  • http默认端口为80
  • https默认端口为443
  • 协议、域名和路径是必填的

HTTP

超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个广泛应用于互联网的应用层协议。

该协议规定了两方面的内容:

  • 传递消息的模式
  • 传递消息的格式

传递消息的模式

请求-响应模式

HTTP使用了「请求-响应」模式,发起请求的称之为客户端,接受请求并完成响应的称之为服务器。「请求-响应」完成后,一次交互结束。

传递消息的格式

请求-响应格式

关键信息

请求头 - Host

指定请求的目的地。

GET / HTTP/1.1 Host: www.taobao.com

请求头/响应头 - Content-Type

x/y的形式,声明请求体的格式。

例如:

  • text/html表示HTML文档。
  • image/jpeg 表示JPEG图片。
  • application/x-www-form-urlencoded用于表示query数据,数据以键值对的形式进行编码,每个键值对之间用&符号连接。
  • multipart/form-data; boundary=aaa允许在表单数据中混合文本字段和二进制文件数据