learn-tech/专栏/全解网络协议/03OSI的灵魂就是我-网络层.md
2024-10-16 06:37:41 +08:00

64 lines
9.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

因收到Google相关通知网站将会择期关闭。相关通知内容
03 OSI的灵魂就是我 - 网络层
网络对网络的连接使互联网成为可能。 “网络层”是Internet通信过程的一部分通过在不同网络之间来回发送数据包来进行这些连接。在7层OSI模型中网络层是第3层。该层确定如何将数据发送到接收设备。它负责数据包转发路由和寻址。在网络之间以数据包的形式传输数据段。当你向朋友发送消息时此层将源IP地址和目标IP地址分配给数据段。你的IP地址是源而你的朋友的IP是目的地。第3层还确定了数据传递的最佳路径。Internet协议IP是该层使用的主要协议之一另外还有一些其他路由测试和加密协议。
假设美国队长和黑寡妇连接到相同的局域网LAN来做给wayz美版高德做兼职配音美国队长想要向黑寡妇发送消息。因为美国队长和黑寡妇在同一网络上所以他可以将其直接通过网络发送到她的计算机上。但是如果黑寡妇位于几英里之外的其他LAN上则必须先处理美国队长的消息然后将其发送到黑寡妇的网络然后才能到达她的计算机这是网络层的过程。
网络层可以想象成邮件载体因为网络层的工作是弄清楚如何在网络之间获得最佳数据。我们几乎假设如果我们要调用第3层那就是从一个网络转到另一个网络。甚至在数据中心内你可能为Web服务器设置了一个网络为数据库服务器设置了另一个网络。虽然它们物理上位于同一数据中心但仍然是不同的网络这无关紧要。因此第3层就是使用路由表来了解网络在哪里以及谁可以访问它们。对我来说这就像一个邮递员。你不一定知道朋友家在哪里。当你发送一封信给他们时他们可能处于完全不同的州国家或地区。邮递员根据他们的路由协议弄清楚这类似于邮政编码地址以及你所居住的地方。第3层的一些示例协议是IPOSPF即开放式最短路径优先RIP即路由信息协议之类的东西你真的不会再看到RIP了。有RIP有RIP版本2但是实际上我没有遇到太多使用RIP的网络但是我相信你可能对此有所了解因为它在很长一段时间内都是非常流行的协议。最后BGP是边界网关协议Internet的核心路由使用BGP。理解起来很复杂但是很有趣。
我们一直在说网络,那什么是网络?
网络是一组两个或更多连接的计算设备。通常网络中的所有设备都连接到中央集线器例如路由器。网络还可以包括子网或该网络的较小细分。子网是指非常大的网络例如ISP提供的网络能够管理数千个IP地址和连接的设备。将Internet视为网络中的网络计算机在网络内相互连接并且这些网络与其他网络连接。这样一来这些计算机就可以与附近的其他计算机连接。
那网络层又干了什么呢?
与网络连接有关的任何事情都发生在网络层。这包括设置数据包采用的路由检查其他网络中的服务器是否已启动并正在运行以及寻址和接收来自其他网络的IP数据包。这最后一个过程可能是最重要的因为绝大多数Internet通信都是通过IP发送的。
网络层的主要功能
路由当数据包到达路由器的输入链路时路由器会将数据包移动到路由器的输出链路。例如从S1到R1的数据包必须转发到S2路径上的下一个路由器
逻辑寻址:数据链路层实现物理寻址,网络层实现逻辑寻址。逻辑寻址还用于区分源系统和目标系统。网络层在数据包中添加一个标头,其中包含发送者和接收者的逻辑地址。
互联网络:这是网络层的主要角色,它提供了不同类型网络之间的逻辑连接。
分段:分段是将数据包分解为通过不同网络传播的最小的单个数据单元的过程。
网络层提供的服务
可靠的交付:该层提供的服务可确保数据包将到达其目的地。
带有延迟限制的保证传送:此服务保证在指定的主机到主机延迟限制内传送数据包。
有序数据包:此服务可确保数据包按其发送顺序到达目的地。
保证最大抖动:此服务可确保在发送方两次连续传输之间花费的时间等于在发送方两次接收之间的时间。
安全服务:网络层通过使用源主机和目标主机之间的会话密钥来提供安全性。源主机中的网络层对发送到目标主机的数据报的有效载荷进行加密。然后,目标主机中的网络层将解密有效负载。以这种方式,网络层维护数据完整性和源认证服务。
什么是数据包呢?
通过Internet发送的所有数据都被分解为称为“数据包”的较小数据块。例如当美国队长向黑寡妇发送消息时他的消息被分解成较小的部分然后在黑寡妇的计算机上重新组合。数据包有两部分标题包含有关数据包本身的信息和正文正在发送的实际数据,比如说前方有监控,请减速慢行)。
在网络层当数据包通过Internet发送时网络软件会在每个数据包上附加一个标头另一方面网络软件可以使用标头来了解如何处理该数据包。这部分会在后面讲ip的时候详细讲解
标头包含有关每个数据包的内容源和目标的信息有点像在目标和返回地址上标记信封。例如IP标头包含每个数据包的目标IP地址数据包的总大小在传输过程中是否已将数据包分段分解成更小的片段的指示以及多少个计数数据包经过的网络。
还记得我们之前说过在TCP / IP模型中没有“网络”层。 OSI模型网络层大致对应于TCP/IP模型Internet层。在OSI模型中网络层为第3层。在TCP/IP模型中Internet层是第2层。换句话说网络层和Internet层基本上是同一件事但是它们来自Internet工作方式的不同模型。
什么是IP?
因为这一层主要的协议是IP。 那什么是IP呢IP就是IP地址和IP地址用句点分隔的四个数字代表网络上的第四个Rh标识设备。我们将I P地址分配给网络上设备的网络接口卡并且我们的IP地址分为两部分。它具有网络部分或网络主管并且具有主机部分。网络部分标识AH组联网设备。主机部分标识该特定网络上的单个设备。这与我们的地址将特定的街道地址识别为个人的方式非常相似。将房子的空气和邮政编码标识为一般区域在该区域中有很多房子的地址不同但是它们都属于相同的邮政编码或地址。我们有邮政编码有点像我们的网络长官还有我们的主机部分有点像我们的地址。我们在邮编中具有唯一标识或邮政编码并且在邮编中具有通用标识。IP地址以四个十进制数字的格式写入。这些十进制数字中的每一个我们称为八位字节。因此203.0.113.10那里有四个八位字节。每个八位位组。它包含八个二进制位。因此我们的IP/4地址始终为32位长。我们将其分为四组每组八位然后将它们转换回十进制以便将其编程到计算机中并进行讨论。因为IP是那么的重要。我们后面会有一节专门讲解IP的课程。
那在这一层都有什么协议呢?
协议是一种公认的格式化数据的方式以便两个或多个设备能够相互通信并相互理解。许多不同的协议使网络层的连接测试路由和加密成为可能包括IP, IPsec, ICMP, IGMP, GRE。你可以把这个当做一个窍门或者强行记忆也好首先你要大概了解这个协议是做什么的然后你知道了每一层是做什么的。这叫好像是一个连线题一样把左右类似或者说相同功能连在一起IP就不用说了比如ICMP全称是Internet Control Message Protocol。是一种错误报告协议当网络问题阻止IP数据包的传递时像路由器之类的网络设备会用于将错误消息生成到源IP地址。我给你介绍之后还需要我告诉你他属于哪层吗再来看以下GRE不是你要出国考试的GRE是一个协议Generic Routing Encapsulation- 通用路由封装是由思科系统公司开发的隧道协议可以在Internet协议网络上的虚拟点对点链接或点对多点链接内部封装各种网络层协议。是不是很明显也是网络层的人。
这一小节可能讲的比较抽象。那是因为我们后面有专门的IP专题所以不想多讲IP的事情。然而网络层的最大赢家就是IP。所以就从宏观来聊一下网络层。