OSI七层模型和TCP/IP四层模型详解-图文分析

OSI七层模型

为了使全世界不同体系结构的计算机能够互联,国际化标准组织ISO提出开放系统互联基本参考模型,即所谓的7层协议体系结构(OSI)。数据在俩台电脑直接传输,发送方由应用层依次向下将数据通过不同的协议进行包装,接收方接收到数据从物理层依次向上拆分数据包,最终达到数据交互的目的。

OSI七层结构由低到高:1-物理层、2-数据链路层、3-网络层、4-传输层、5-会话层、6-表示层、7-应用层。

OSI七层模型和TCP/IP四层模型详解-图文分析

数据包在每层有不同的格式,从上到下依次叫数据,段,数据报,帧,比特从应用层通过协议栈向下传递,每经过一层加上对应层协议的报头,最后封装成帧发送到传输介质上,到达路由器或者目的主机剥掉头部,交付给上层需要者。这一过程称为封装,传输,分离,分用。

1-物理层

物理层主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特。

2-数据链路层

数据链路层定义了如何让格式化数据以帧为单位进行传输,以及如何让控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据的可靠传输。如:串口通信中使用到的115200、8、N、1。

3-网络层

网络层协议定义了数据位和字节如何组织为更大的分组,称为包,还定义了寻址机制,不同的计算机要按照这个寻址机制查找对方。网际协议(IP)是世界上使用最广发的网络层协议,也是Java唯一理解的网络层协议。实际上,这是两个协议:IPv4 和 IPv6。在 IPv4 和 IPv6 中,数据按包在网际层上传输,这些包称为数据报(datagram)。

除了路由和寻址,网络层的第二个作用是支持不同类型的主机网络层相互对话。Internet 路由器会完成 WiFi 和 Ethernet、Ehernet 和 DSL、DSL 和光纤往返等协议之间的转换。如果没有网络层或类似的分层,则每个计算机只能与同一类网络上的其它计算机对话。网络层负责使用同构协议将异构网络相互连接。

4-传输层

传输层定义了一些传输数据的协议和端口号(WWW端口80等),如:TCP(传输控制协议,传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据),UDP(用户数据报协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就是通过这种方式传输的)。 主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组。常常把这一层数据叫做段。

5-会话层

会话层定义了如何开始、控制和结束一个会话,包括对多个双向消息的控制和管理,以便在只完成连续消息的一部分时可以通知应用,从而使表示层看到的数据是连续的,在某些情况下,如果表示层收到了所有的数据,则用数据代表表示层。示例:RPC,SQL等。

6-表示层

表示层的主要功能是定义数据格式及加密。例如,FTP允许你选择以二进制或ASCII格式传输。如果选择二进制,那么发送方和接收方不改变文件的内容。如果选择ASCII格式,发送方将把文本从发送方的字符集转换成标准的ASCII后发送数据。在接收方将标准的ASCII转换成接收方计算机的字符集。示例:加密,ASCII等。

7-应用层

应用层是最靠近用户的OSI层。这一层为用户的应用程序(例如电子邮件、文件传输和终端仿真)提供网络服务。

网络五层模型

五层体系结构包括:5-应用层、4-运输层、3-网络层、5-数据链路层、1-物理层。

OSI七层模型 五层模型
应用层 应用层
表示层
会话层
传输层 传输层
网络层 网络层
数据链路层 数据链路层
物理层 物理层

可以看出五层模型只是将OSI七层模型简化了,将会话层,表示层,应用层合并成为应用层。

TCP/IP四层模型

TCP/IP四层模型包括:4-应用层、3-传输层、2-网际层、1-网络接口层。

TCP/IP与OSI最大的不同在于OSI是一个理论上的网络通信模型,而TCP/IP则是实际运行的网络协议。

OSI七层模型 TCP/IP四层模型
应用层 应用层
表示层
会话层
传输层 传输层
网络层 网际层
数据链路层 网络接口层
物理层

总结

三种模型比较:

OSI七层模型 五层模型 TCP/IP四层模型 对应网络协议
应用层 应用层 应用层 TFTP,FTP,NFS,WAIS
表示层 Telnet,Rlogin,SNMP,Gopher
会话层 SMTP,DNS
传输层 传输层 传输层 TCP,UDP
网络层 网络层 网际层 IP,ICMP,ARP,RARP,AKP,UUCP
数据链路层 数据链路层 网络接口层 PDDI,Ethernet,Arpanet
物理层 物理层 IEEE 802.1A,IEEE 802.1A到IEEE 802.11