第5章 Internet协议 [TCP/IP详解 卷1:协议]
IP是TCP/IP协议族中的核心协议。所有TCP、UDP、ICMP和IGMP数据都通过IP数据报传输。IP提供了一种尽力而为、无连接的数据报交付服务。“尽力而为”的含义是不保证IP数据报能成功到达目的地。任何可靠性必须由上层(例如TCP)提供。IPv4和IPv6都使用这种尽力而为的基本交付模式。
“无连接”意味着IP不维护网络单元(即路由器)中数据报相关的任何连接状态信息,每个数据报独立于其他数据报来处理。这也意味着IP数据报可不按顺序交付。
从概念上来说,IP转发是很简单的,特别是对于一个主机。如果目的地是直接相连的主机(例如点到点连接)或共享网络(例如以太网),IP数据报直接发送到目的地,不需要或者不使用路由器。否则,主机将数据报发送到一台路由器(称为默认路由器),由该路由器将数据报交付到目的地。这个简单方案适用于大多数主机配置。
IP协议标准没有规定转发表所需的精确数据,这个选择工作留给IP协议的实现者。但是,IP转发表通常需要包含几个关键信息,至少在理论上,路由或转发表中的每个条目包含以下字段信息:
目的地:它是一个32位字段(或128位字段,用于IPv6),用于与一个掩码操作结果相匹配。针对涵盖所有目的地的“默认路由”的情况,目的地可简单地设为零;对于仅描述一个目的地的“主机路由”的情况,目的地可设为完整长度的IP地址。
掩码:它是一个32位字段(或128位字段,用于IPv6),用作数据报目的IP地址按位与操作的掩码,其中的目的IP地址是要在转发表中查找的地址。掩码结果与转发表条目中的多个目的地进行比较。
下一跳:它是下一个IP实体(路由器或主机)的32位IPv4地址或128位IPv6地址,数据报将被转发到该地址。下一跳实体通常在一个网络中由执行转发查找的系统所共享,这意味着它们共享同一网络前缀。
接口:它包含一个由IP层使用的标识符,以确定将数据报发送到下一跳的网络接口。例如,它可能是一台主机的802.11无线接口、一个有线的以太网接口或一个与串行端口相关联的PPP接口。如果转发系统也是IP数据报的发送方,该字段用于选择输出数据报的源IP地址。
【总结】:
略