跳转到内容

CCNA认证/网络层

来自Wikibooks,开放世界中的开放书籍

网络层

[编辑 | 编辑源代码]

网络层OSI模型中七层中的第三层,也是TCP/IP模型中五层中的第三层。在TCP/IP参考模型中,它被称为互联网层。在所有模型中,网络层响应传输层的服务请求并向数据链路层发出服务请求。

本质上,网络层负责端到端(源到目的地)的数据包传递,而数据链路层负责节点到节点(跳到跳)的帧传递。

网络层提供传输可变长度数据序列从源到目的地的功能和过程手段,通过一个或多个网络,同时保持服务质量错误控制功能。

网络层处理将信息从源传输到目的地的整个过程 - 从任何地方传输到任何地方。以下是网络层需要解决的一些问题

例如,信件是无连接的,因为信件可以在发送方和接收方之间传递,而无需接收方做任何事情。另一方面,电话系统是面向连接的,因为在建立通信之前,对方需要接听电话。OSI网络层协议可以是面向连接的,也可以是无连接的。IP互联网层(相当于OSI的网络层)只支持无连接的互联网协议(IP);但是,诸如TCP之类的面向连接的协议存在于堆栈的更高层,通过超时和重新发送数据包来强制执行可靠性约束。
  • 全局地址是什么?
网络中的每个人都需要一个唯一的地址来确定他是谁。这个地址通常是分层的,所以你可以对都柏林人来说是“弗雷德·墨菲”,对爱尔兰人来说是“弗雷德·墨菲,都柏林”,对世界各地的人来说是“弗雷德·墨菲,都柏林,爱尔兰”。在互联网上,这些地址被称为IP地址。
  • 如何转发消息?
这对于移动应用程序特别重要,在移动应用程序中,用户可能会快速从一个地方移动到另一个地方,并且必须安排他的消息跟随他。第4版互联网协议(IPv4)并没有真正允许这样做,尽管自从它诞生以来已经被修改了一些。幸运的是,即将推出的IPv6有一个设计更好的解决方案,这应该会使这种类型的应用程序更加流畅。

互联网协议

[编辑 | 编辑源代码]

互联网协议(IP)在TCP/IP模型的网络层工作。它是一个无连接的协议,不保证数据包能够到达指定的目的地。IP协议有2个版本:1)IPv4 2)IPv6。

互联网协议是一种面向数据且用于跨分组交换互联网通信数据的协议。

IP是互联网协议套件中的网络层协议,并封装在数据链路层协议(例如,以太网)中。作为较低层的协议,IP提供计算机之间可通信的唯一全局寻址服务。这意味着数据链路层不需要提供此服务。以太网提供全局唯一的地址,但它不是全局可通信的(即,两个任意选择的以太网设备只有在同一总线上才能通信)。

IP提供的服务

[编辑 | 编辑源代码]

由于封装提供的抽象,IP可以在异构网络(即连接两台计算机的网络可以是任何以太网、ATM、FDDI、Wi-Fi、令牌环等的组合)上使用,并且对上层协议没有任何影响。

所有数据链路层都可以(并且确实)拥有自己的一套寻址(或者可能完全没有),并且需要将IP地址解析为数据链路地址。此解析由地址解析协议 (ARP) 处理。

可靠性

[编辑 | 编辑源代码]

IP提供不可靠的服务(即尽力而为的传递)。这意味着网络不对数据包做任何保证,并且以下情况可能全部、部分或都不适用

数据损坏 顺序错误(数据包A可能在数据包B之前发送,但B可能在A之前到达) 重复到达 丢失或丢弃/删除 就可靠性而言,IP唯一做的事情是通过使用校验和确保IP数据包的标头没有错误。这具有当场丢弃标头错误的数据包的副作用,并且无需向任一端发出通知(尽管可能会发送ICMP消息)。

为了解决任何这些可靠性问题,上层协议必须处理它。例如,为了确保按顺序传递,上层可能必须缓存数据,直到可以按顺序传递为止。

缺乏可靠性的主要原因是为了降低路由器的复杂性。虽然这确实赋予路由器对数据包为所欲为的权力,但任何低于尽力而为的行为都会导致用户体验下降。因此,即使没有做出任何保证,网络付出的努力越好,用户的体验就越好。

IP地址和路由

[编辑 | 编辑源代码]

也许IP最复杂的部分是IP地址和路由。寻址是指终端主机如何分配IP地址以及IP主机地址的子网如何划分和分组。IP路由由所有主机执行,但最重要的是由互联网路由器执行,互联网路由器通常使用内部网关协议 (IGP) 或外部网关协议 (EGP) 来帮助跨IP连接的网络做出IP数据报转发决策

版本历史

[编辑 | 编辑源代码]

IP是当今公共互联网中常见的元素。当今使用最广泛的网络层协议是IPv4;此版本的协议被分配了版本4。IPv4被美国国防部采用为MIL-STD-1778。

IPv6 是 IPv4 的继任者,其最显著的变化是寻址方式。IPv4 使用 32 位地址(约 40 亿个地址),而 IPv6 使用 128 位地址(约 3.4×1038 个地址)。尽管 IPv6 的采用速度缓慢,但截至 2008 年,所有美国政府系统都必须支持 IPv6。[1]

版本 0 到 3 要么被保留,要么未被使用;版本 5 用于实验性流协议。其他版本号已被分配,通常用于实验性协议,但并未广泛使用。

互联网控制报文协议ICMP)是互联网协议套件的核心协议之一。它主要由联网计算机的操作系统用于发送错误消息——例如,指示请求的服务不可用或无法到达主机或路由器。

ICMP 的用途与 TCP 和 UDP 不同,因为它通常直接由用户网络应用程序使用。一个例外是 ping 工具,它发送 ICMP 回显请求消息(并接收回显回复消息)以确定主机是否可达以及数据包到达该主机并返回所需的时间。

计算机网络中,地址解析协议ARP)是当仅知道主机网络层地址时查找其硬件地址的标准方法。

ARP 不仅限于 IP 或以太网协议;它可以用于将许多不同的网络层协议地址解析为硬件地址,尽管由于 IPv4 和以太网的普遍使用,ARP 主要用于将 IP 地址转换为以太网 MAC 地址。它也用于其他局域网技术上的 IP,例如令牌环、FDDI 或 IEEE 802.11,以及 ATM 上的 IP。

ARP 用于两个主机通信的四种情况

  1. 当两个主机在同一网络上,并且其中一个希望向另一个发送数据包时
  2. 当两个主机在不同的网络上,并且必须使用网关/路由器才能到达另一主机时
  3. 当路由器需要转发一个主机的数据包通过另一个路由器时
  4. 当路由器需要转发一个主机的数据包到同一网络上的目标主机时

第一种情况用于两个主机位于同一物理网络上(即,它们可以直接通信,无需通过路由器)。后三种情况在互联网上使用最多,因为互联网上的两台计算机通常由 3 跳以上分开。

假设计算机 A 向计算机 D 发送数据包,并且它们之间有两个路由器 B 和 C。情况 2 涵盖 A 发送到 B;情况 3 涵盖 B 发送到 C;情况 4 涵盖 C 发送到 D。

ARP 在RFC 826中定义。它是当前的互联网标准,STD 37。

反向地址解析协议RARP)是一种网络层协议,用于获取给定硬件地址(例如以太网地址)的 IP 地址。它已被 BOOTP 和更现代的 DHCP 取代,两者都支持比 RARP 更多的功能集。

RARP 的主要局限性在于每个 MAC 必须在中央服务器上手动配置,并且该协议仅传递 IP 地址。这将子网、网关和其他信息的配置留给其他协议或用户。

与 BOOTP 或 DHCP 相比,RARP 的另一个局限性在于它是非 IP 协议。这意味着它与 ARP 一样,不能由客户端上的 TCP/IP 堆栈处理,而是单独实现。

RARP 是 ARP 的补充。

RARP 与反向地址解析协议 (INARP) 不同,后者旨在查找与另一个站点的 MAC 地址关联的 IP 地址。

RARP 在RFC 903中描述。

参考文献

[编辑 | 编辑源代码]
华夏公益教科书