七层协议OSI

OSI并不是一个协议,也不是一项技术,是一个参考模型。OSI(Open SystemInterconnect),即开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。它把我们使用的网络架构划分成了7个层次。

图片

图 8‑1 OSI参考模型

所以对于OSI参考模型只需要理解即可,不需要进行很深的研究。至于为什么选择这个模型进行网络互连,下面举一个简单例子:

假设甲公司经理要寄一份文件给乙公司的经理。

A.      甲公司经理老板喊他秘书过来,说把这一份文件寄给乙公司的经理;

B.       秘书拿到文件后,首先进行打包;

C.       最后选取了“EMS快递”,并且查到了乙公司的地址,填好快递单,交给了快递员了;

D.      快递则是把近期收到的快递装成了一个集装箱;

E.       快递公司找到了某卡车司机,说:“把这箱子运到乙公司所在的城市去。”;

F.       这封快递被送到了乙公司的经理秘书那去;

G.      秘书拆开快递,把文件递给了乙公司经理。

纵观整个过程,我们发现,1. 老总在把快递交给秘书时,他并不关心秘书是怎么打包的,也不关心秘书找了什么法子寄出去的,他只期待对方老总能收到即可;2. 秘书则既不关心“EMS快递”是如何具体用什么运输方式运到乙公司所在的城市的,又不关心这份文件的内容,只期待这封快递能够被送达对方的公司地址;3. “EMS快递”则只关心装着快递的集装箱能够被司机运往乙公司所在的城市,却不关心司机究竟走了什么路线,开了什么牌子的货车,也不关心这封快递信封里装了什么东西;4. 司机只关心怎么把集装箱运到目的地,而不会关心集装箱里面装的是什么;5. 乙公司的经理秘书则只关心既不关心“EMS快递”是如何具体用什么运输方式运到乙公司所在的城市的,又不关心这份文件的内容,只期待这封快递能够被送达乙公司经理手里;6. 乙公司经理在从秘书那拿到快递时,他并不关心秘书是怎么拿到快递的,他只关心快递内文件的内容。

OSI 7 层模型则与之类似,都是下层为上层提供传输服务,不关心上层传输的内容,而上层也不关心下层传输的手段,只期望能将信息最终发到通信对端的相应层次上。

再举个例子:

以日常从淘宝购物后,货物从厂家到顾客的运输过程为例来说明。货物运输过程分为以下几个步骤:

A.顾客打电话通知厂家已经在淘宝下订单,购买家具;

B.厂家联系打包工人,将家具拆卸装箱,并且附上安装图纸;

C.打包后联系快递公司,快递员A负责将每个箱子写上寄件人姓名,收货人姓名以及地址联系方式,将箱子交给物流公司,将箱子装车;

D.货运员A负责将货物通过汽车运输到火车站;

E.通过铁路运输,将装有家具的箱子运送到顾客所在的城市;

F.货运员B负责将箱子运输到快递公司,快递员B将箱子送到顾客家中;

G.组装工人将收到的箱子拆箱,按图纸进行组装,最后顾客收到了完整的家具。

再补充一句,虽然设计上是下层和上层是服务和被服务的关系,互相不关心实现细节,实际上出于这样或那样的原因,多少还会有一些相关性,并不完全独立,但是层次结构还是明确的。

最后以经典的邮件发送为例说一下每一层具体的作用:

图片

            

A.首先来到的是应用层。这一层确定了你的邮件是以什么方式发送出去,是SMTP还是IMAP?在发送邮件的同时,你还是浏览网页查阅资料,你在点击每一个链接的时候,应用层确定了是用HTTP还是HTTPS。或者说,用户通过应用程序向应用层提出了一系列应用请求,比如发送邮件、访问网页等。

图片

②表示层收到了发送邮件的请求,这时它会将需要传输的数据进行编码和转换,形成一种大家都认识的表现形式。我们都知道,不同的操作系统对于文字、语音、图片、视频的编解码方式都是不同的,假如你用的是一台Windows 10操作系统的电脑,而你的同事用的是Mac OS操作系统,虽然操作系统的编码处理方式不同,但在数据传输过程中如果没有一个统一的数据格式的定义,恐怕对方收到数据后恢复出来的内容和你发出的大相径庭,甚至根本就是不可理解的。

图片

③通过表示层的处理,数据已经准备好了,接下来就到了会话层出马的时候了。你的主机会帮你与邮件服务器建立会话,主机会问服务器:“你好,我是主机,你是邮件服务器吗?我需要和你建立连接。”,服务器会答复说:“你好,我是邮件服务器,连接已经建立。”,这时,发送邮件的会话就算是建立好了,当完成邮件数据传输后,表示层又会断开连接,即终止会话。刚才说过,在发送邮件的同时,你还是浏览网页,你点开了很多个页面,每打开的一个页面都是你和对方建立的一个会话。同时你还在和同事QQ聊天,每个聊天窗口背后其实也是一个会话。会话层就是帮你和对方建立连接的一个过程。就像打电话,你要先和对方接通电话,然后才能开始通话。

图片

④建立连接后就可以开始进行数据传输了。传输层接收来自应用程序的各种数据:文字、语音、图片、视频,然后将这些数据合并到一个数据流中,再将数据进行分段并编号,最后发送出去。在数据传输的过程中可能会出现各种异常,比如数据包丢失、数据损坏等等,传输层就承担了保证数据传输正确的功能,如流量控制、数据重发等。简单的说,传输层就是表示层准备好数据、会话层建立连接后,正式开始数据传输的第一步。

图片

⑤到了这个时候,数据就要走出家门出去闯荡了。临出门前,你告诉它:“去找邮件服务器吧,它在深圳,门牌号是XX路YY号”。网络层可不知道这个门牌号的位置,但是它知道怎么去深圳,就像你从北京寄快递到深圳,快递公司只知道怎么去深圳最快,但你要寄到的这个地址恐怕就只有当地的快递员才知道了。网络层就是快递公司,下面要讲的数据链路层就是快递员。网络层了解每个网络的编址、会跟踪设备在网络中的位置、可以准确计算出最佳的数据传输路径。网络层可以计算出从你所在的北京到深圳有哪些路线,哪条路线此时此刻是最快的。

图片

⑥数据终于到了深圳,到了快递员——数据链路层手里,与网络层类似,数据链路层对网络虽然不熟,但是却对本地网络中的每台设备了如指掌。它可以通过硬件地址找到每一台设备。数据链路层从数据这里得知要去XX路YY号,轻而易举地就将数据送了过去。

图片

⑦最后说下物理层,这一层就相对简单了,就是信号转换和物理传输,将数据转换成光信号、电信号,然后通过光缆、铜缆传输。

物理层:

作用:承载比特流的传输

特点:看得见,摸得着。比如集线器(hub),中继器,网线,光纤,光猫等

物理层就是我们的传输介质,我们说每一层为上层提供服务,所以我们物理连接如果有错误的话,那么数据链路层也不能用,数据链路层不能用网络层就也不能用,以此类推。

数据链路层:

作用:控制数据帧在物理链路上传输

设备:网桥,交换机,网卡等都是数据链路层设备

协议:PPP,HDLC,Ethernet,FDDI(令牌网)

数据在经过数据链路层的时候会封装上帧头和帧尾,这时候我们把这个数据叫做数据帧,这个帧头帧尾里包含了源设备的mac地址和目的主机的mac地址,我们的二层就是依靠mac地址转发数据的。

Mac地址:网络设备的身份证,全球唯一 。

网络层

作用:为数据在节点之间传输创建逻辑链路,并分组转发数据

协议:ip,ipx,icmp

设备:路由器,防火墙

数据在到达网络层的时候叫做数据包,就是说我们同网段的终端进行互访的时候交换机会查mac地址表互访,但是不同网段进行互访的时候,因为数据链路层的协议看不懂ip地址,所以将数据交给我们的三层协议去进行处理。

传输层

作用:建立连接,处理数据包错误,数据包次序

协议:tcp,udp

两个应用程序建立连接之后,传输层为他们处理数据在发送的时候产生的数据包错误,数据包次序,进行重传。数据包在传输层处理的时候叫做数据段。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OSI七层协议是国际标准化组织(ISO)开发的用于计算机网络体系结构的模型,它定义了网络通信的不同层次和功能。这个模型由七个不同的层次组成,每个层次都有其特定的功能和责任。 第一层是物理层,主要负责传输比特流,将数据从一个计算机传输到另一个。 第二层是数据链路层,它在物理层之上,主要负责数据帧的传输和错误检测。 第三层是网络层,它负责数据包的路由和转发。它将数据包从源主机发送到目标主机,通过选择最佳路径来确保数据的快速传输。 第四层是传输层,主要负责数据的分割和重组。它将数据分割成较小的部分,并确保它们以正确的顺序到达目标主机。 第五层是会话层,它负责在不同计算机之间建立和维护会话。它管理会话的开始、中断和结束。 第六层是表示层,它负责数据的格式化和转换。它确保数据在不同计算机之间的传输和解释都是有效的。 最后一层是应用层,它是用户与计算机网络交互的接口。它提供诸如电子邮件、文件传输和远程登录等服务。 OSI七层协议图展示了这七个层次之间的关系和交互。每个层次都依赖于下一层提供的服务,并向上一层提供特定的服务。 通过这个模型,不同厂商和组织可以根据各自的需求和特定的应用领域,实现网络通信的各个层次。这种标准化的分层结构使得网络设备和应用程序可以互相兼容和交互操作,提高了网络的可靠性和可扩展性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值