7层OSI模型是什么?TCP/IP模型是什么?之间的区别?

物理层(PhysicalLayer)

osi与tcp模型图 osi与tcp模型的区别osi与tcp模型图 osi与tcp模型的区别


osi与tcp模型图 osi与tcp模型的区别


osi与tcp模型图 osi与tcp模型的区别


数据链路层(DataLinkLayer)

第三层是网络层(Network layer)

第四层是处理信息的传输层(Transport layer)

第五层是会话层(Session layer)

第六层是表示层(Presentation layer)

第七层应用层(Application layer)

TCP/IP是一组用于实现网络互连的通信协议。Internet网络体系结构以TCP/IP为核心。基于TCP/IP的参考模型将协议分成四个层次,它们分别是:网络访问层、网际互连层、传输层(主机到主机)、和应用层。

比较

共同点

(1)OSI参考模型和TCP/IP参考模型都采用了层次结构的概念, (2)都能够提供面向连接和无连接两种通信服务机制;

不同点

(1)前者是七层模型,后者是四层结构 (2)对可靠性要求不同(后者更高) (3)实际市场应用不同(OSI模型只是理论上的模型,并没有成熟的产品,而TCP/IP已经成为“实际上的标准”)

OSI体系结构的OSI 参考模型与TCP/IP 参考模型的对应关系

TCP/IP分层模型(简称TCP/IP模型)及与OSI参考模型的对应关系如图1所示。

由图1可见,TCP/IP模型包括4层:

网络接口层--对应OSI参考模型的物理层和数据链路层;

网络层--对应OSI参考模型的网络层;

运输层--对应OSI参考模型的运输层;

应用层--对应OSI参考模型的5、6、7层。

28 张图详解网络基础知识:OSI、TCP/IP 参考模型(含动态图)

目录

1、网络协议

其实协议在我们生活中也能找到相应的影子。

举个例子,有 2 个男生准备追求同一个妹子,妹子来自河南,讲河南话,还会点普通话;一个男生来自胡建,讲闽南语,也会点普通话;另一个男生来自广东,只讲粤语;

协议一致,沟通自如

语言不通,无法沟通

你们猜猜?谁牵手成功了?肯定是来自胡建的那位,双方可以通过 普通话 进行沟通,表达内容都能理解。而来自广东的帅哥只会讲粤语,不会普通话,妹子表示听不懂,就无法进行沟通下了。

每个人的成长环境不同,所讲的语言、认知、理解能力也就不同。为了使来自五湖四海的朋友能沟通自如,就需要大家协商,认识某一个语言或规则,彼此能互相理解,这个语言就是普通话。

通过这个例子,大家可以这样理解:

把普通话比作“协议”、把聊天比作“通信”,把说话的内容比作“数据”。

相信这样类比,大家就知道,协议是什么了?

简单地说,就是程序员指定一些标准,使不同的通信设备能彼此正确理解、正确解析通信的内容。我们都知道计算机世界里是二进制,要么 1,要么 0,那为啥可以表达丰富多彩的内容呢?

也是因为协议,不同字段,不同组合,可以解析不同意思,这就依然协议,让协议来正确处理。

例如,我们使用手机连 WiFi 来刷,使用的是 802.11(WLAN)协议,通过这个协议接入网络。如果你所连的 WIFI 是不需要手动设置 IP 地址,是通过自动获取的,就使用到了 DHCP 协议,这样你的手机算上接入了 局域网, 如果你局域网内有台 NAS ,存放了某些不可描述的视频资源,你就可以访问观看了,但这时你可能无法访问互联网资源,例如,你还想刷会,看看妹子扭一扭,结果出现如下画面:

出现这种画面,说明无法使用 互联网, 可能是路由器没有设置好相关协议,比如: NAT、PPPoE 协议(上网账号或密码设置错误了),只有设置正确了,就可以通过(ISP)提供的线路把局域网接入到互联网中,实现手机可以访问互联网上的资源()。玩微信撩妹子、刷看妹子。

网络协议示意图

延伸阅读

1、局域网:显著的特点就是范围有限,行政可控的区域可以是一所高校、一个餐厅、一个园区、一栋办公楼或一个家庭的私有网络。

2、城域网:原本是介意局域网和广域网之间,实际工作中很少再刻意去区分城域网和广域网了,所以这边不再介绍。

3、广域网:简单说就是负责把多个局域网连接起来,它的传输距离长距离传输,广域网的搭建一般是由来。

4、互联网:把全世界上提供资源共享的 IT 设备所在网络连接起来,接入了互联网就可以随时随地访问这些资源了。

5、物联网:把所有具有联网功能的物体都接入互联网就形成了物联网。如空调联网,就可以远程控制空调; 汽车 联网,就可以远程获取行程数据。

总结一下吧!我们可以把电脑、手机等 IT 设备比喻做来自五湖四海的人们,大家都通过多种语言(网络协议)实现沟通(通信)。所有人要一起交流,就用普通话,大家都能理解。所有胡建人在一起,就用闽南语进行沟通,彼此也能理解。这么的方言,就好比计算机网络世界里也有这么多协议,只是不同协议用在不同地方。

好奇的同学,可能就会问,那网络协议是由谁来规定呢?这就需要提到一个组织,ISO。这个组织制定了一个标准 ,叫做 OSI 参考模型,如下,很多厂商都会参考这个制定网络协议。

OSI 参考模型图

2、OSI 参考模型

既然是模型,就好比模范一样,大家都要向它学习,以它为原型,展开学习研究。前面我们也提到了一些协议,这么多协议如果不进行归纳,分层,大家学习起来是不是感觉很凌乱?

所以 OSI 参考模型就是将这样复杂的协议整理并进行分层,分为易于理解的 7 层,并定义每一层的 服务 内容,协议的具体内容是 规则 。上下层之间通过 接口 进行交互,同一层之间通过 协议 进行交互。相信很多网络工程师在今后工作中遇到问题,讨论协议问题还会用到这个模型展开讨论。所以说,对于计算机网络初学者来说,学习了解 OSI 参考模型就是通往成功的步。

OSI 参考模型分层功能

7.应用层

为应用程序提供服务并规定应用程序中通信相关的细节,OSI 的层。包括文件传输、Email、远程登录等协议。程序员接触这一层比较多。

应用层示例图

6.表示层

主要负责数据格式的转换,为上下层能够处理的格式。如编码、加密、解密等。

表示层示例图

5.会话层

即负责建立、管理和终止通信连接(数据流动的逻辑通路),数据分片、重组等传输的管理。

会话层示例图

4.传输层

保证可靠传输,不需要再路由器上处理,只需再通信双方上进行处理,如处理错控制和流量控制。

传输层示例图

3.网络层

主要负责寻址和路由选择,将数据包传输到目的地。

网络层示例图

2.数据链路层

负责物理层面上互连、之间的通信传输,将0 、 1 序列比特流划分为具有意义的数据帧传输给对端。这一层有点类似网络层,网络层也是基于目的地址来传输,不同是:网络层是将数据包负责在整个网络转发,而数据链路层仅是在网段内转发,所以大家抓包会发现,源目 MAC 地址每经过一个二层网段,都会变化。

数据链路层示例图

1.物理层

负责 0、1 比特流(0、1 序列)与电压高低电平、光的闪灭之间的互相转换,为数据链路层提供物理连接。

物理层示例图

OSI 为啥没有得到运用呢?其实主要的原因,是 OSI 模型出现的比 tcp/ip 出现的时间晚,在 OSI 开始使用前,TCP/IP 已经被广泛的应用了。如果要换成 OSI 模型也不太现实。其次是 OSI 是专家们讨论,形成的,由于没有实践,导致该协议实现起来很复杂,很多厂商不愿意用 OSI,与此相比,TCP/IP 协议比较简单,实现起来也比较容易,它是从公司中产生的,更符合市场的要求。综合各种因素,终 OSI 没有被广泛的应用。

下面我们来看看 TCP/IP 与 OSI 分层之间的对应关系及相应的协议:

4.应用层

从上图,可以知道 TCP/IP 四层模型,把应用层、表示层、会话层集成再一起了,该层的协议有:HTTP 、 POP3 、 TELNET 、 SSH 、 FTP 、 SNMP 等。

目前,大部分基于 TCP/IP 的应用都是 客户端/服务端 架构。一般我们把提供资源服务的那一侧叫服务端, 发起访问服务资源的这一侧叫客户端。

应用层

3.传输层

主要职责就是负责两端间的应用程序互相通信,每个上可能有很多应用程序,例如,登录了微信,又打开了网页,又打开迅雷看看,那数据到达后怎么正确传送到相应的应用程序呢?那就需要 端口号 来正确识别了。传输层中为常见的两个协议分别是传输控制协议 TCP (Tranission Control Protocol)和用户数据报协议 UDP (User Datagram Protocol)

面向连接 顾名思义,就是建立连接,什么时候建立连接呢?就是在通信之前需要先建立一条逻辑的通信链路。就跟我们平时打电话一样,得先拨通,通了之后即链路建立好了,这条链路只有你和对方可以在这条链路传播说话内容。挂电话后,这条链路也就断开了。

面向无连接 无连接,即通信之前不需要建立连接,直接发送即可。跟我们以前写信很像,不需要管对方在不在?直接写信寄过去就可以了。

面向连接传输

面向无连 接传输

2.网络层

主要职责就是将数据包从源地址发送到目的地址。

在网络传输中,每个会根据数据的 IP 地址信息,来判断该数据包应该由哪个接口(网卡)发送出去。各个地址会参考一个发出接口列表, MAC 寻址中所参考的这张表叫做 MAC 地址转发表 ,而 IP 寻址中所参考的叫做 路由表 。MAC 地址转发表根据自学自动生成。路由控制表则根据路由协议自动生成。MAC 地址转发表中所记录的是实际的 MAC 地址本身,而路由表中记录的 IP 地址则是集中了之后的网络号(即网络号与子网掩码)。

1.网络接口层

在 TCP/IP 把物理层和数据链路层集成为 网络接口层 。主要任务是将上层的数据封装成帧发送到网络上,数据帧通过网络到达对端,对端收到后对数据帧解封,并检查帧中包含的 MAC 地址。如果该地址就是本机的 MAC 地址或者是广播地址,则上传到网络层,否则丢弃该帧。

封装与解封装

所谓的封装,其实就跟你寄快递的时候,给物品加上纸盒包装起来或者快件到站点,快递员贴一层标签的过程。在网络上,就是上层的数据往下送的时候,下层会添加头部,不过,只有在二层,不仅会加上头部,还会在上层数据尾部添加 FCS。

封装

所谓解封装,就如同你收到快件一样,一层一层地拆外包装,直到看到快件。网络也是,一层一层地拆掉头部,往上层传送,直到看到数据内容。

解封装

我们把应用层的数据封装传输层头部后的报文,称为 段 ;

把段封装网络层头部后的报文,称为 包 ;

把包封装以太网头部和帧尾,称为 帧 。

什么是OSI的七层网络结构图,和TCP/IP的五层结构图

OSI有七层结构,从底层到顶层分别是:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。

TCP/IP有5层结构(也有分4层的),从底层到顶层分别是:物理层、数据链路层、互联层、传输层、应用层。

另外注意一点:在这两个网络模型中,只有TCP/IP有实际的协议,而OSI只有模型没有实际的协议。

OSI体系结构的OSI 参考模型与TCP/IP 参考模型的对应关系

TCP/IP分层模型(简称TCP/IP模型)及与OSI参考模型的对应关系如图1所示。

由图1可见,TCP/IP模型包括4层:

网络接口层--对应OSI参考模型的物理层和数据链路层;

网络层--对应OSI参考模型的网络层;

运输层--对应OSI参考模型的运输层;

应用层--对应OSI参考模型的5、6、7层。