再看网路层分组的转发

来源:互联网 发布:电吉他入门 知乎 编辑:程序博客网 时间:2024/06/07 15:11

因为一个路由表不需要知道所有其他路由表的信息,因此,如何在局部和宏观之间达到一个平衡呢。
首先我有以下的问题:从数据报中取出目的地址,如果目的地址显示就是当前所连接的网段,那么都不用再走路由,直接交付即可。那么,如果是需要间接交付,交给别的路由器,这该如何选择呢?

对的,这正是路由选择的核心。
从下面的流程中可以抽出三个策略:路由表中有目的地址的特定主机的路由;路由表中有达到子网的路由;默认路由

体会这个流程的目的是为了下一步的设计。

算法如下:

  1. 从数据报的首部提取目的主机的IP地址D,得出目的网络的地址N
  2. 若网络N与此路由器直接相连,则把数据报直接交付给目的主机D,即直接交付,否则是直接交付,执行3)
  3. 若路由裱花嘴那个有目的地址为D的特定主机路由(通常是为了控制或测试网络),则把数据报传送给路由表中指明的吓一跳路由器
  4. 如路由表中有到达网路N的路由,则把数据传送给路由表指明的下一跳的路由器,否则执行5
  5. 若路由表中一个默认路由,则把数据传送给路由表中所指明的默认路由器,否则执行6
  6. 报告:出错!

以上。

2 0
原创粉丝点击