通常使用的网络实在TCP/IP协议族的基础上运行的。而HTTP属于它内部的一个子集。
一、TCP/IP协议族
网络设备之间的通信需要有相同的规则,这些规则叫做协议(protocol)。 协议中存在着各式各样的规则,如电缆规格,IP地址的选定方法,双方建立通信的顺序等等。这些与互联网相关协议的集合总称为TCP/IP。 也有说法认为TCP/IP是指TCP和IP这两种协议,还有一种说法认为TCP/IP是在IP协议的通讯中所使用的协议族的总称。
二、TCP/IP的分层管理
TCP/IP协议族按层次从上到下分为以下4层:
分层的好处:
- 各层之间实现了一定的独立,通过接口相互联系。当需要更改某个部分的设计时,只需要更改变动的层即可。
- 层次化也使设计变得简单,各层专注于各自功能的实现。
各层的作用如下
1、应用层
应用层决定了向用户提供应用服务时通信的活动,该层包含了各类通用的应用服务如FTP和DNS。HTTP也处于该层。
2、传输层
传输层负责处于网络连接中的两台计算机之间的数据传输。 该层有两个性质不同的协议:
- TCP(传输控制协议)
- UDP(User Data Protocol , 用户数据报协议)
3、网络层
又名网络互连层,用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。 网络层规定了选择怎样的路径将数据包传送给对方,它的作用就是选择传输路径。
4、链路层
该层主要作用是控制网络连接的硬件(物理可见部分),比如
三、TCP/IP通信传输流
利用TCP/IP协议进行通信时,会通过分层顺序与对方进行通信。发送端从应用层往下走,接收端则往应用层向上走。 以HTTP为例:
- 作为发送端的客户端在**应用层(HTTP协议)**发出一个想看某个web页面的请求。
- **传输层(TCP协议)**接收到来自应用层的请求报文后将其分割成数据包并给每个数据包打上序号和端口号。
- 网络层(IP协议)为数据增加了作为通信目的地的MAC地址后转发给链路层。
- 接收端的服务器的链路层接收到数据后再按顺序把数据向应用层往上传输,
当传输到应用层时才算接收到该请求。
发送端在层与层的传输过程中,每一层都会给数据打上一个该层专属的首部信息,而在接收端则没经过一层就去掉对应的首部信息。
|