介绍网络协议之前必须要先了解 TCP / IP 和 OSI 模型的。
首先了解以下关于这两个的一个基本概念
TCP / IP 的概念:
TCP/ IP 是一类协议系统, 它是一套支持网络通信的协议集合。
互联网协议(英语:Internet Protocol Suite,缩写 IPS)是一个网络通信模型,以及一整个网络传输协议家族,为互联网的基础通信架构。它常被通称为TCP/IP协议族(英语:TCP/IP Protocol Suite,或TCP/IP Protocols),简称 TCP/IP
OSI模型:
网络业界针对网络协议体系有一个标准的七层模型,称为“ 开放系统互连( OSI )” 模型, 这是 ISO( 国际标准化组织 ) 为了标准化网络协议系统所做出的规范,旨在 提高网络互连性,并且方便软件开发人员以一种开放方式来使用协议标准
简单来说,OSI 是一个具有参考意义的标准框架。TCP / IP 模型是目前应用最广的工业模型。
TCP / IP 四层模型和 OSI 模式的一个对比:
注意到 OSI 模型把应用层的功能划分到 3 个 层:应用层、表示层和会话层。 OSI 还把 网络 访问层的功能划分到数据链路层和物理层。 这种新增的细分带来了一定的复杂性,但是通过让协议层具有更明确的服务,也为开发人员提供了灵活性。 尤其是在底层对数据链层和物理层的划分, 就把通信组织相关的功能与访问通信介质的功能分离开了。 而 OSI 的最上三层让应用程序能够以更灵活的方式与协议栈进行交互。
TCP / IP 层级关系介绍
应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。
传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。
网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。
iOS 七层模型介绍
应用层:
应用层(Application Layer)是OSI参考模型的最高层,它是计算机用户,以及各种应用程序和网络之间的接口,其功能是直接向用户提供服务,完成用户希望在网络上完成的各种工作
表示层:
表示层(Presentation Layer)是OSI模型的第六层,它对来自应用层的命令和数据进行解释,对各种语法赋予相应的含义,并按照一定的格式传送给会话层。其主要功能是“处理用户信息的表示问题,如编码、数据格式转换和加密解密”等
会话层
会话层(Session Layer)是OSI模型的第5层,是用户应用程序和网络之间的接口,主要任务是:向两个实体的表示层提供建立和使用连接的方法。将不同实体之间的表示层的连接称为会话。因此会话层的任务就是组织和协调两个会话进程之间的通信,并对数据交换进行管理。
传输层
向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输。传输层的作用是向高层屏蔽下层数据通信的细节,即向用户透明地传送报文。
网络层(路由器)
通过路由选择算法,为报文或分组通过通信子网选择最适当的路径。该层控制数据链路层与传输层之间的信息转发,建立、维持和终止网络的连接。
数据链路层(交换机)
通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路
物理层(网卡)
利用传输介质为数据链路层提供物理连接,实现比特流的透明传输