本篇内容包括:网络分层七层、五层、四层网络协议概念的介绍,IOS 体系结构的介绍与构成、TCP/IP体系结构的简介及与IOS体系的关系 以及五层体系结构的介绍。
一、七层、五层、四层网络协议概念
1、关于网络协议
网络协议,即是指计算机网络中进行数据交换而建立的规则、标准或约定的集合。
例如,网络中一个 PC 用户和一个大型公司服务器的操作员进行通信,由于这两个数据终端所用字符集不同,因此操作员所输入的命令彼此不认识。所以为了能进行通信,就要规定每个终端都要将各自字符集中的字符先变换为一种统一标准字符集的字符后,才进入网络传送,到达目的终端之后,再变换为该终端字符集的字符。
2、网络分层
由于网络节点之间联系的复杂性,在制定协议时,通常把复杂成分分解成一些简单成分,然后再将它们复合起来。最常用的复合技术就是网络分层方式。
网络协议分层又有很多种,我们能接触到最常见的则是 3 种:OSI 体系结构(七层),TCP/IP 体系结构(四层)以及 五层体系结构。
- OSI 体系结构:是国际标准化组织(ISO)在1978 年提出的 “开放系统互联参考模型” 使用的结构,概念清楚,理论也比较完整,但是它既复杂又不实用。
- TCP/IP体系结构:TCP/IP是一个四层体系结构,得到了广泛的运用。
- 五层体系结构:为了方便学习,折中 OSI 体系结构和 TCP/IP 体系结构,综合二者的优点,这样既简洁,又能将概念讲清楚
二、OSI 体系结构
OSI 是 Open System Interconnect 的缩写,意为开放式系统互联。为了增强通用性和兼容性,计算机网络都被设计成层次机构,每一层都遵守一定的规则。因此有了OSI这样一个抽象的网络通信参考模型,按照这个标准使计算机网络系统可以互相连接。
7 层是指 OSI 七层协议模型,主要是:应用层(Application)、表示层(Presentation)、会话层(Session)、传输层(Transport)、网络层(Network)、数据链路层(Data Link)、物理层(Physical)。
- 物理层:通过网线、光缆等这种物理方式将电脑连接起来。传递的数据是比特流,0101010100。
- 数据链路层:首先,把比特流封装成数据帧的格式,对 0、1 进行分组。电脑连接起来之后,数据都经过网卡来传输,而网卡上定义了全世界唯一的 MAC 地址。然后再通过广播的形式向局域网内所有电脑发送数据,再根据数据中 MAC 地址和自身对比判断是否是发给自己的。
- 网络层:广播的形式太低效,为了区分哪些 MA C地址属于同一个子网,网络层定义了 IP 和子网掩码,通过对IP和子网掩码进行与运算就知道是否是同一个子网,再通过路由器和交换机进行传输。IP协议属于网络层的协议。
- 传输层:有了网络层的 MAC+IP 地址之后,为了确定数据包是从哪个进程发送过来的,就需要端口号,通过端口来建立通信,比如 TCP 和 UDP 属于这一层的协议。
- 会话层:负责建立和断开连接
- 表示层:为了使得数据能够被其他的计算机理解,再次将数据转换成另外一种格式,比如文字、视频、图片等。
- 应用层:最高层,面对用户,提供计算机网络与最终呈现给用户的界面
OSI 七层参考模型的各个层次的划分遵循下列原则:
- 同一层中的各网络节点都有相同的层次结构,具有同样的功能。
- 同一节点内相邻层之间通过接口(可以是逻辑接口)进行通信。
- 七层结构中的每一层使用下一层提供的服务,并且向其上层提供服务。
- 不同节点的同等层按照协议实现对等层之间的通信。
三、TCP/IP体系结构
TCP/IP 即传输控制协议/网络互联协议,是针对 Internet 开发的一种体系结构和协议标准,相对于 OSI 体系结构更简洁。分层体系,由下至上分别是网络接口层、网际层、传输层和应用层(四层分法)。
TCP/IP 则是四层的结构,相当于是对 OSI 模型的简化:
- 数据链路层,也有称作网络访问层、网络接口层。他包含了 OSI 模型的物理层和数据链路层,把电脑连接起来。
- 网络层,也叫做 IP 层,处理 IP 数据包的传输、路由,建立主机间的通信。
- 传输层,传输层的主要工作是定义端口,标识应用程序身份,实现端口到端口的通信。
- 应用层,包含 OSI 的会话层、表示层和应用层,提供了一些常用的协议规范,比如 FTP、SMPT、HTTP 等。
总结下来,数据链路层就是通过物理手段把电脑连接起来并对比特流的数据进行分组,网络层来建立主机到主机的通信,传输层建立端口到端口的通信,应用层最终负责建立连接,数据格式转换,最终呈现给用户。
TCP/IP 体系结构的优点:
- 简化了计算机网络的结构,由原来的七层编导现在的四层,但是其功能并没有减少。
- 每一层即独立又有联系,独立是因为如果那一层出现问题了不会影响其他层的工作,联系是因为上层协议又使用下层协议提供的服务。
四、五层体系结构
五层体系结构只是 OSI和TCP/IP的综合,是业界产生出来的非官方协议模型,主要是用于方便理解的模型,即很多具体的应用,实际应用还是TCP/IP的四层结构。为了方便可以把下两层称为网络接口层。五层体系结构包括:应用层、运输层、网络层、数据链路层和物理层。
看一下五层网络体系结构各层的主要功能:
- 应用层:应用层是网络协议的最高层,主要任务通过进程间的交互完成特定网络应用。应用层协议定义的是应用程序(进程)间通信和交互的规则。 对于不同的网络应用需要有不同的应用层协议,在互联网中的应用层协议很多,如域名系统DNS,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,等等。应用层交互的数据单元称为报文。
- 运输层:有时也译为传输层,它负责为两台主机中的进程提供通信服务。该层主要有以下两种协议:
- 传输控制协议 (Transmission Control Protocol,TCP):提供面向连接的、可靠的数据传输服务,数据传输的基本单位是报文段(segment);
- 用户数据报协议 (User Datagram Protocol,UDP):提供无连接的、尽最大努力的数据传输服务,但不保证数据传输的可靠性,数据传输的基本单位是用户数据报。
- 网络层:网络层负责为分组网络中的不同主机提供通信服务,并通过选择合适的路由将数据传递到目标主机。在发送数据时,网络层把运输层产生的报文段或用户数据封装成分组或 包进行传送。 在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫IP数据报。
- 数据链路层:数据链路层通常简称为链路层。数据链路层在两个相邻节点传输数据时,将网络层交下来的IP数据报组装成帧,在两个相邻节点之间的链路上传送帧。
- 物理层:保数据可以在各种物理媒介上进行传输,为数据的传输提供可靠的环境。