七层模型,亦称OSI(Open System Interconnection)。参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。
它是一个七层的、抽象的模型体,不仅包括一系列抽象的术语或概念,也包括具体的协议。
起源
编辑OSI的大部分设计工作实际上只是Honeywell Information System 公司的一个小组完成的,小组的技术负责人是Charlie Bachman。在70年代中期,这个小组主要是为了开发一些原型系统而成立的,主要关注数据库系统的设计。70年代中,为了支持数据库系统的访问,需要一个结构化的分布式通信系统体系结构。
于是这个小组研究了现有的一些解决方案,其中包括IBM公司的SNA(System Network Architecture)、ARPANET(Internet的前身)的协议、以及为标准化的数据库正在研究中的一些表示服务(presentation services)的相关概念,在1977年提出了一个七层的体系结构模型,他们内部称之为分布式系统体系结构(DSA)。
与此同时,1977年英国标准化协会向国际标准化组织(ISO)提议,为了定义分布处理之间的通信基础设施,需要一个标准的体系结构。结果,ISO就开放系统互联(OSI)问题成立了一个专委会(TC 97, Subcomittee 16),指定由美国国家标准协会(ANSI)开发一个标准草案,在专委会第一次正式会议之前提交。
与此同时,1977年英国标准化协会向国际标准化组织(ISO)提议,为了定义分布处理之间的通信基础设施,需要一个标准的体系结构。结果,ISO就开放系统互联(OSI)问题成立了一个专委会(TC 97, Subcomittee 16),指定由美国国家标准协会(ANSI)开发一个标准草案,在专委会第一次正式会议之前提交。
1978年3月,在ISO的OSI专委会在华盛顿召开的会议上,与会专家很快达成了共识,认为这个分层的体系结构能够满足开放式系统的大多数需求,而且具有可扩展的能力,能够满足新的需求。
于是,1978年发布了这个临时版本,1979年稍作细化之后,成了最终的版本。所以,OSI模型和1977年DSA模型基本相同。
OSI参考模型其实就是讨论通信问题,所不同其针对的是计算机通过网线或无线网去通信。为了容易理解,首先用现实中邮政局的通信来类比一下。
我们写一封信给情人 /滑稽/滑稽,首先,是我写信,讲甜言蜜语,说我们两个人之间的私事,这些东西只要我两之间懂就OK了。好写完后,我就寄信去了。。
具体的寄信跑腿等工作,则属于下一层了。那么下一层是谁呢?对,邮政局。邮政局把信纸装进固定格式的信封中,信封上有固定格式的要求。
那么邮政局不需要知道信到底写了什么,他们不关心,只管封装信封就可以,让对方拿到信封后知道那是给我情人的就OK了。好,这个层次结束。。
那么是不是没其他层次了呢??错,还有一个层次,那就是最底层。邮递员层。。他们负责跑腿,例如骑马,骑车或者开火车开飞机,随便,反正是具体的跑腿工作。。。
好,回过头来看,写一封信进行通信,分了三个层次:我和情人,属于用户层,负责信内容的书写和阅读;邮政局,属于类似于OSI的运输层,负责信封的格式书写和阅读。。
邮递员,最底层,类似于OSI的物理层,负责具体的传输方式。
具体的寄信跑腿等工作,则属于下一层了。那么下一层是谁呢?对,邮政局。邮政局把信纸装进固定格式的信封中,信封上有固定格式的要求。
那么邮政局不需要知道信到底写了什么,他们不关心,只管封装信封就可以,让对方拿到信封后知道那是给我情人的就OK了。好,这个层次结束。。
那么是不是没其他层次了呢??错,还有一个层次,那就是最底层。邮递员层。。他们负责跑腿,例如骑马,骑车或者开火车开飞机,随便,反正是具体的跑腿工作。。。
好,回过头来看,写一封信进行通信,分了三个层次:我和情人,属于用户层,负责信内容的书写和阅读;邮政局,属于类似于OSI的运输层,负责信封的格式书写和阅读。。
邮递员,最底层,类似于OSI的物理层,负责具体的传输方式。
好,回到OSI,这个以计算机为原始设备的通信模型,考虑的要复杂一些而已,分成了7个层次。
最底层,物理层: 负责具体的传输媒介以及其对应的传输方式,解决的问题是实现比特流的传输。
数据链路层:负责相邻两个节点间比特流的识别,即以字节为单位去找出“每页信纸”。
网络层:实现网络中任意两个节点间的连通和数据转发。。
传输层:实现任意两台电脑中相应进程间的连接,提供两种不同的服务:可靠的和不可靠的。。
会话层:提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。
表示层:主要解决不同操作系统间信息的语法表示问题。
最后应用层:针对用户(人)的各种不同需求,提供一系列的应用程序,满足其通信要求。
数据链路层:负责相邻两个节点间比特流的识别,即以字节为单位去找出“每页信纸”。
网络层:实现网络中任意两个节点间的连通和数据转发。。
传输层:实现任意两台电脑中相应进程间的连接,提供两种不同的服务:可靠的和不可靠的。。
会话层:提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制。
表示层:主要解决不同操作系统间信息的语法表示问题。
最后应用层:针对用户(人)的各种不同需求,提供一系列的应用程序,满足其通信要求。
分层
编辑应用层
网络服务与最终用户的一个接口。
协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
表示层
数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)
格式有,JPEG、ASCll、DECOIC、加密格式等
会话层
建立、管理、终止会话。(在五层模型里面已经合并到了应用层)
对应主机进程,指本地主机与远程主机正在进行的会话
传输层
定义传输数据的协议端口号,以及流控和差错校验。
协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层
网络层
进行逻辑地址寻址,实现不同网络之间的路径选择。
协议有:ICMP IGMP IP(IPV4 IPV6)
数据链路层
将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正。
物理层
建立、维护、断开物理连接。(由底层网络定义协议)
TCP/IP 层级模型结构,应用层之间的协议通过逐级调用传输层(Transport layer)、网络层(Network Layer)和物理数据链路层(Physical Data Link)而可以实现应用层的应用程序通信互联。
应用层需要关心应用程序的逻辑细节,而不是数据在网络中的传输活动。应用层其下三层则处理真正的通信细节。在 Internet 整个发展过程中的所有思想和着重点都以一种称为 RFC(Request For Comments)的文档格式存在。针对每一种特定的 TCP/IP 应用,有相应的 RFC [3] 文档。
一些典型的 TCP/IP 应用有 FTP、Telnet、SMTP、SNTP、REXEC、TFTP、LPD、SNMP、NFS、INETD 等。RFC 使一些基本相同的 TCP/IP 应用程序实现了标准化,从而使得不同厂家开发的应用程序可以互相通信
- 参考资料