关于网络传输协议:翻译Packet-的旅行-OSI-模型

2次阅读

共计 3122 个字符,预计需要花费 8 分钟才能阅读完成。

开放系统互连模型(OSI 模型)解释了互联网工作所需的所有独立性能。

它是由 7 个独立的性能组合而成,实现了计算机与计算机通信的最终目标。

就像汽车是由独立的性能组成,这些性能联合起来实现了驱动汽车后退的最终目标: 电池给电子设备供电,发电机给电池充电,发动机转动主轴,轴把主轴的转动转移到车轮上,等等。

每个独立的整机都能够独立更换或者工作,只有每个独立的整机都能失常工作,汽车就能够后退。

OSI 模型分为 7 个不同的层,每一层都实现一个十分特定的性能。当组合在一起时,每个性能都有助于实现残缺的计算机到计算机的数据通信。

在本文的其余部分,咱们将看到 OSI 模型的每个独立的层以及它们各自的职责。

OSI 第 1 层 - 物理层

OSI 模型的物理层负责比特(bit)的传输——1 和 0 形成了所有计算机代码。

该层代表承载两个节点之间流量的 物理介质。一个例子是你的以太网电缆或串行电缆。然而不要太在意“物理”这个词——这一层是在 20 世纪 70 年代命名的,远在网络中的无线通信概念之前。因而,只管 WiFi 没有物理、无形的存在,但也被视为第 1 层协定。

简略地说,第 1 层是在两个节点之间携带 1 和 0 的任何货色。

“线路”上数据的理论格局可能因每种介质而异。在 以太网 的状况下,比特以 电脉冲 的模式传输。在 WiFi 的状况下,比特以 无线电波 的模式传输。在 光纤 的状况下,比特以 光脉冲 的模式传输。


除了 物理电缆 中继器 (Repeater)和 集线器(Hub)也在这一层运行。

中继器 只是将信号 从一种介质转发到另一种介质 ,容许一系列电缆串联在一起,并 减少信号能够传输的范畴,超出单根电缆的限度。这些通常用于大型 WiFi 部署,其中单个 WiFi 网络在多个接入点中“反复”以笼罩更大的范畴。

集线器 (Hub) 只是一个多端口中继器。如果四个设施连贯到一个集线器,那么一个设施发送的任何信息都会反复到另外三个设施。

OSI 第 2 层 - 数据链路层

OSI 模型的数据链路层负责与物理层接口。实际上,L2 负责将 1 和 0 放在电缆上,并从电缆上取出 1 和 0。

插入以太网线的 网络接口卡 (NIC) 解决 L2 性能。它从电缆接管信号,并将信号传输到电缆上。

你的 WiFi 网卡以雷同的形式工作,接管和传输无线电波,而后将其解释为一系列 1 和 0。

L2 将这些 1 和 0 组合成的块称为帧(Frame)。

L2 存在一个寻址零碎,称为媒体访问控制地址或 MAC 地址。 MAC 地址惟一标识每个独自的网卡(NIC)。每个网卡(NIC)都由制造商事后配置了一个 MAC 地址;事实上,它有时被称为 Burned In Address (BIA)。

除了网卡(NIC),交换机(Switch)也在这一层运行 交换机(Switch)的主要职责是促成网络内的通信(这个概念将在本系列前面的文章中进一步论述)。

数据链路层的首要性能是将数据包从一个网卡传送到另一个网卡。或者换句话说,L2 的作用是将数据包从一跳传送到另一跳。

OSI 第 3 层 - 网络层

OSI 模型的网络层负责端到端的数据包(packet)传输。

它通过应用另一种能够 在逻辑上辨认连贯到互联网的每个节点 的寻址计划来实现这一点。这种寻址计划称为互联网协议地址或 IP 地址。

它被认为是合乎逻辑的,因为 IP 地址不是计算机的永恒标识。与被视为物理地址的 MAC 地址不同,IP 地址不会被制造商刻录到任何计算机硬件中。


路由器 是运行在 OSI 模型 L3 的网络设备。路由器的主要职责是促成网络之间的通信 。因而,路由器 在两个网络之间创立了一个边界。为了与不在你的网络中的任何设施进行通信,必须应用路由器。

OSI 模型 - 数据链路层 vs. 网络层

L2 层和 L3 层之间的交互和区别对于了解数据如何在两台计算机之间流动至关重要。例如,如果咱们曾经在每个网卡(NIC)上有惟一的 L2 寻址计划(如 MAC 地址),为什么咱们还须要另一个 L3 寻址计划(如 IP 地址)?相同亦然?

答案是,两种寻址计划实现了不同的性能:

  • L2 层应用 MAC 地址 ,负责 从一跳到另一跳 的数据包传递。
  • L3 层应用 IP 地址 ,负责 端到端 的数据包传递。

当计算机有数据要发送时,它会将其封装在 IP 报文头中,该报文头将蕴含通信两端的源和指标 IP 地址等信息。

而后将 IP 报文头和数据进一步封装在 MAC 地址报文头中,其中将包含诸如通向最终目的地的门路中以后“跳”的源和指标 MAC 地址等信息。

这里有一个插图阐明了这一点:

留神在每个路由器之间,MAC 地址报文头被剥离并从新生成以使其达到下一跳。第一台计算机生成的 IP 报文头仅被最终计算机剥离,因而 IP 报文头解决“端到端”传递,而动画中波及的四个不同 MAC 报文头中的每一个都解决“跳到跳”传递。

OSI 第 4 层 - 传输层

OSI 模型的传输层负责辨别网络流(stream)。

在用户计算机上的任何给定工夫,都可能会关上互联网浏览器,同时播放流媒体音乐,同时运行 Messenger 聊天应用程序。这些应用程序中的每一个都从互联网发送和接收数据,所有这些数据都以 1 和 0 的模式达到该计算机的网卡(NIC)。

必须存在某些货色能力辨别哪个 1 和 0 属于 messenger、浏览器或流媒体音乐。那个“货色”是第 4 层:

L4 通过应用称为端口号的寻址计划来实现这一点。

具体来说,存在两种辨别 网络流 的办法。它们被称为 传输控制协议 (TCP) 用户数据报协定 (UDP)

TCP 和 UDP 每个都有 65,536 个端口号,惟一的应用程序流由 源和指标端口(连同它们的源和指标 IP 地址)标识。

TCP 和 UDP 在数据流的传输方式上采纳了不同的策略,它们的区别和外部工作形式十分乏味和重要,但可怜的是,它们超出了本系列文章的范畴。它们将成为将来文章或系列的主题。

总之,如果 L2 层负责跳到跳的传递,L3 层负责端到端的传递,那么能够说 L4 层负责服务到服务的传递。

OSI 第 5,6,7 层

OSI 模型的 会话 示意 应用层(由第 1-4 层促成)是向最终用户显示通过网络传输的数据之前的最初解决步骤。

从纯正的网络工程角度来看,第 5、6 和 7 层之间的区别并不是特地显著。事实上,还有另一种风行的互联网通信模型,称为 TCP/IP 模型,它将这三层组合成一层。

如果你参加软件工程,这种区别将变得更加重要。但这不是本系列文章的重点,咱们不会深入探讨这些层之间的差别。

许多网络工程师简略地将这些层称为 L5-7L5+L7。对于本系列的其余部分,咱们也这样做。

封装和解封装

在咱们持续探讨 OSI 模型之前,咱们须要探讨的最初一项是 封装 解封装 。这些术语指的是 数据在发送时如何从下层挪动到上层,在接管时如何从上层挪动到下层

当数据从一层传递到另一层解决时,在残缺的数据报被转换为 1 和 0 并通过电缆发送之前,每一层都会增加实现其指标所需的信息。例如:

  • L4 将增加一个 TCP 报文头 ,其中包含 源和指标端口
  • L3 将增加一个 IP 报文头 ,其中蕴含 源 IP 地址和指标 IP 地址
  • L2 将增加一个 以太网报文头 ,其中包含 源和指标 MAC 地址

在接收端,每一层从数据中剥离报文头,并从堆栈中向上传递到应用程序层。以下是整个过程:

请留神,这只是一个示例。将要增加的报文头将取决于底层通信协议。例如,可能会在 L4 增加 UDP 报文头,或者可能会在 L3 增加 IPv6 报文头。

无论哪种形式,重要的是要理解当数据通过电缆发送时,它会在堆栈中传递上来,并且每一层都会增加本人的报文头以帮忙它实现其指标。在接收端,当数据被发送回应用层时,报文头被逐层剥离。

本文将不同的网络性能分类到 OSI 模型的不同层中。尽管对于了解数据包如何在网络中挪动至关重要,但 OSI 模型自身并不是一个严格的要求,而是一个概念模型——并非每个协定都能完满地适宜 OSI 模型的单个层。

翻译
OSI Model

正文完
 0