1、网络协议分层
- 应用层
应用层是网络体系结构中的最高层,应用层的任务就是通过应用进程之间的交互来完成特定网络应用,这一层的数据单元叫做报文。
应用层的协议定义了应用进程之间通信和交互的规则,主要包括了域名系统 DNS、支持万维网的 HTTP协议、支持电子邮件的 SMTP 协议、文件传输协议 FTP 等。 - 运输层
运输层的任务就是负责向两台主机中进程之间的通信提供通用的数据传输服务,应用进程利用该服务来传送应用层报文。 - 网络层
网络层负责为分组交换网上的不同主机提供通信服务,在发生数据时,网络层把数据层产生的报文或用户数据报封装成分组进行传送,由于网络层使用 IP 协议,因此分组也叫 IP 数据报。 - 链路层
数据链路层的任务是将网络层交下来的 IP 数据报组装成帧,在两个相邻结点之间的链路上传输帧,每一帧包括数据和必要的控制信息(同步信息、地址信息、差错控制等)。 - 物理层
物理层的任务是尽可能地屏蔽掉传输媒体和通信手段的差异,使物理层上面的数据链路层感觉不到这些差异,使其只需考虑本层的协议和服务。
2、TCP
TCP 是面向连接的运输层协议,一个应用进程在向另一个进程发送数据之前,两个进程必须先建立 TCP连接,发送某些预备报文段,建立确保数据传输的参数。作为 TCP 连接建立的一部分,连接双方都将初始化与 TCP 连接相关的许多状态变量。这种连接不是电路交换网络中的端到端电路这种物理连接,而是一种逻辑连接,TCP 报文要先传送到 IP 层加上 IP 首部后,再传到数据链路层,加上链路层的首部和尾部后才离开主机发送到物理层。
3、HTTP
HTTP 即超文本传输协议,是 Web 的应用层协议。HTTP 由两个程序实现,一个客户程序和一个服务器程序,客户程序和服务器程序运行在不同的端系统中,通过交换 HTTP 报文进行会话。HTTP 定义了这些报文的结构以及客户和服务器进行报文交换的方式,当用户请求一个 Web 页面时,浏览器向服务器发出对该页面中所包含对象的 HTTP 请求报文,服务器接收到请求并用包含这些对象的 HTTP 响应报文进行响应。