【TCP/IP】IP路由选择
2017-06-03 08:28
183 查看
IP层在内存中有一个路由表,当有数据要发送时,它要对该表进行一次搜索以确认转发地址。收到的数据到达IP层时。IP层会检查数据报的目的地址是否为本机IP或广播IP:
假设是,就依据IP首部协议字段的协议分发到对应的模块进行处理。
假设不是,那么:
IP层被设为路由器功能,则对此数据报进行转发。
否则,丢弃该数据被报。
路由表内容例如以下所看到的:
IP路由选择的大致步骤例如以下:
搜索路由表,寻找能与目的IP地址全然匹配的表目。
假设找到,则发送。
否则,运行下一步。
搜索路由表,寻找能与目的网络号相匹配的表目。假设找到,则发送。
否则,运行下一步。
搜索路由表,寻找标为“默认”的表目。
假设找到。则发送。
否则。运行下一步。
发送失败,该数据不能被传送。
为一个网络指定一个路由器,也就是路由表的标志字段指明目的IP地址是一个网络地址。这使得路由表的规模不会太大。
例1:
源主机和目的主机处在同一个以太网上。源主机的IP层依据目的主机IP地址搜索路由表,找到了一个网络号匹配的表项。然后将数据发送出去。
例如以下图所看到的:
以太网帧首部的目的地址是主机sun的以太网接口地址;IP数据报首部的目的地址是主机sun的IP地址。
例2:
源主机和目的主机处在不同网络中。
例如以下图所看到的:
主机bsdi要发送数据到外网的server192.48.96.9。首先主机搜索路由表,选择默认表目发送到主机sun。
由于bsdi和sun在一个以太网内。所以发送之前先用ARP协议得到sun的MAC地址。接下来,sun继续选择默认表目发送到主机netb,这里不是使用的以太网,而是SLIP协议。所以数据报不包括链路层首部。netb相同选择默认表目发送到gateway。在这之前netb通过ARP协议获得gateway的MAC地址。gateway选择默认表目以类似的方式发送到外网。
注意,数据报的目的IP始终指向终于的目的IP地址。
可是以太网帧首部的48bit目的地址始终指向下一站链路层地址,这个以太网地址是通过地址解析协议(ARP)来获得的。
參考:
《TCP/IP具体解释》 P27-P30.
假设是,就依据IP首部协议字段的协议分发到对应的模块进行处理。
假设不是,那么:
IP层被设为路由器功能,则对此数据报进行转发。
否则,丢弃该数据被报。
路由表内容例如以下所看到的:
字段 | 说明 |
目的IP地址 | 能够是网络地址。也能够是主机地址。由以下的标志字段区分 |
下一跳路由器IP地址 | 与当前网络接口直接相连的路由器或主机网络接口的IP地址。详细是哪一个由以下的标志字段区分 |
标志 | 一个标志区分目的IP是网络地址还是主机地址。还有一个标志区分下一跳路由器是真的路由器还是网络接口 |
网络接口 | 指明相应的数据报应该从哪个网络接口发出去 |
搜索路由表,寻找能与目的IP地址全然匹配的表目。
假设找到,则发送。
否则,运行下一步。
搜索路由表,寻找能与目的网络号相匹配的表目。假设找到,则发送。
否则,运行下一步。
搜索路由表,寻找标为“默认”的表目。
假设找到。则发送。
否则。运行下一步。
发送失败,该数据不能被传送。
为一个网络指定一个路由器,也就是路由表的标志字段指明目的IP地址是一个网络地址。这使得路由表的规模不会太大。
例1:
源主机和目的主机处在同一个以太网上。源主机的IP层依据目的主机IP地址搜索路由表,找到了一个网络号匹配的表项。然后将数据发送出去。
例如以下图所看到的:
以太网帧首部的目的地址是主机sun的以太网接口地址;IP数据报首部的目的地址是主机sun的IP地址。
例2:
源主机和目的主机处在不同网络中。
例如以下图所看到的:
主机bsdi要发送数据到外网的server192.48.96.9。首先主机搜索路由表,选择默认表目发送到主机sun。
由于bsdi和sun在一个以太网内。所以发送之前先用ARP协议得到sun的MAC地址。接下来,sun继续选择默认表目发送到主机netb,这里不是使用的以太网,而是SLIP协议。所以数据报不包括链路层首部。netb相同选择默认表目发送到gateway。在这之前netb通过ARP协议获得gateway的MAC地址。gateway选择默认表目以类似的方式发送到外网。
注意,数据报的目的IP始终指向终于的目的IP地址。
可是以太网帧首部的48bit目的地址始终指向下一站链路层地址,这个以太网地址是通过地址解析协议(ARP)来获得的。
參考:
《TCP/IP具体解释》 P27-P30.
相关文章推荐
- TCP/IP 5.1 RIPV2和无类别路由选择RIP
- 【TCP/IP】IP路由选择
- TCP/IP 5.3.4不连续的子网和无类别路由选择
- TCP/IP 2.4选择路由
- 【TCP/IP】路由选择之TTL
- TCP/IP 6.4.6末梢路由选择
- tcp/ip ---IP路由选择
- tcp/ip --- IP路由选择及子网寻址
- 唯快不破:TCP/IP详解--IP路由选择详解 ping命令的过程
- TCP/IP协议原理与应用笔记19:IP分组的交付和路由选择
- IP协议详解之二:深入理解IP路由选择过程
- tcp/ip-路由相关结构
- 涉及TCP/IP通讯,如何选择合适的通讯模式
- IP路由选择过程
- IP协议详解之二:深入理解IP路由选择过程
- 第七章 IP网络间路由选择
- TCP/IP 多播和多播路由
- 三、Linux网络编程-TCP/IP基础(三)IP数据报格式、网际校验和、路由
- 重拾IP路由选择:CCNA学习指南中的IP路由选择
- TCP/IP学习(31)——TCP接收数据包如何选择socket