TCP/IP协议与HTTP协议概述

熟悉计算机网络的都知道OSI 七层网络结构图,由上至下:应用层 ;表示层 ;会话层 ;传输层 ;网络层 ;数据链路层;物理层;

TCP/IP 的四层结构图分别是:应用层;传输层;网络层和数据链路层。通常使用的网络是在TCP/IP协议族的基础上运作的,而HTTP属于其内部的一个子集。

TCP/IP分层管理的好处:

  • 分层之后若需改变相关设计,只需替换变动的层。各层之间的接口部分规划好之后,每个层次内部的设计就可以自由改动。
  • 层次化之后,设计也变得相对简单。各个层只需考虑分派给自己的任务。
TCP/IP协议各层作用:
  • 应用层:决定了向用户提供应用服务时通信的活动,比如FTP(文件传输协议)、DNS(域名解析协议)和HTTP(超文本传输协议)。
  • 传输层:传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。在这一层,数据的单位称为数据段(segment)

    主要功能:

    ①:为端到端连接提供传输服务

    ②:这种传输服务分为可靠和不可靠的,其中TCP是典型的可靠传输,而UDP则是不可靠传输

    ③:为端到端连接提供流量控制,差错控制,服务质量(Quality of Service,QoS)等管理服务

    主要有两个性质不同的协议,TCP:传输控制协议,传输效率低,可靠性强;UDP:用户数据报协议,适用于传输可靠性要求不高,数据量小的数据(比如QQ)

  • 网络层:将数据传输到目标地址;目标地址可以是多个网络通过路由器连接而成的某一个地址,主要负责寻找地址和路由选择到达对方计算机,并把数据包传送给对方,网络层还可以实现拥塞控制、网际互连等功能。在这一层,数据的单位称为数据包(packet),数据包是网络传输的最小数据单位。

    网络层协议的代表包括:IP、IPX、RIP、OSPF等

  • 数据链路层:用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、NIC(网卡),及光纤等物理可见部分。还包括连接器等一切传输媒介。

利用TCP/IP进行网络通信时,会通过分层顺序与对方进行通信。发送端从应用层往下走,接收端从链路层往上走。如下图所示:


HTTP协议:

HTTP协议用于客户端和服务端之间的通信。请求访问文本或是图像等资源的一端称为客户端,提供资源响应的一端称为服务器端。当服务器收到客户端的HTTP请求报文之后,会将其报文数据取获取到,并根据这个内容进行一些操作,然后将对应的响应数据封装到HTTP响应报文里面,再发回给客户端。如下图所示:


用于HTTP协议交互的信息被称为HTTP报文。请求端的HTTP报文叫做请求报文,响应端的叫做响应报文。HTTP报文可大致分为报文首部和报文主体两部分,并且首部里面都是”键值对”的方式表示的。

note:报文主体与实体主体的差异

  •    报文:HTTP通信中的基本单位,由8位组字节流组成,通过HTTP通信传输
  •    实体:作为请求或响应的有效载荷数据被传输,其内容由实体首部和实体主体组成。

HTTP报文的主体用于传输请求或响应的实体主体。通常,报文主体等于实体主体,只有当传输中进行编码操作时,实体主体内容发生变化,才导致它们产生差异。

note:HTTP是不保存状态的协议。(stateless)

猜你喜欢

转载自blog.csdn.net/freya_yyy/article/details/80113171