本文主要是介绍再看网路层分组的转发,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
因为一个路由表不需要知道所有其他路由表的信息,因此,如何在局部和宏观之间达到一个平衡呢。
首先我有以下的问题:从数据报中取出目的地址,如果目的地址显示就是当前所连接的网段,那么都不用再走路由,直接交付即可。那么,如果是需要间接交付,交给别的路由器,这该如何选择呢?
对的,这正是路由选择的核心。
从下面的流程中可以抽出三个策略:路由表中有目的地址的特定主机的路由;路由表中有达到子网的路由;默认路由。
体会这个流程的目的是为了下一步的设计。
算法如下:
- 从数据报的首部提取目的主机的IP地址D,得出目的网络的地址N
- 若网络N与此路由器直接相连,则把数据报直接交付给目的主机D,即直接交付,否则是直接交付,执行3)
- 若路由裱花嘴那个有目的地址为D的特定主机路由(通常是为了控制或测试网络),则把数据报传送给路由表中指明的吓一跳路由器
- 如路由表中有到达网路N的路由,则把数据传送给路由表指明的下一跳的路由器,否则执行5
- 若路由表中有一个默认路由,则把数据传送给路由表中所指明的默认路由器,否则执行6
- 报告:出错!
以上。
这篇关于再看网路层分组的转发的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!