zebra/quagga ospf and unh test section 4
2015-06-22 14:44
411 查看
Calculation of the routing table
1.Calculating the shortest-path tree for an area,
-yields the set of intra-area routes
-examine router-LSAs and network-LSAs
-consider those links between routers and transit networks at first, then the stub networks.
2.Calculating the inter-area routes.
-The inter-area routes are calculated by examining summary-LSAs.
-If the router has active attachments to multiple areas, only backbone summary-LSAs are examined.
-Routers attached to a single area examine that area’s summary-LSAs.
3.Examining transit areas’ summary-LSAs
-only performed by area border routers attached to one or more non-backbone transit areas(transit area is different from transit network).
-updates backbone intra-area routes found in Step 1 and inter-area routes found in Step 2.
-never makes unreachable destinations reachable.
4.Calculating AS external routes
ospf
|--new_table(route_table)--ospf_route (for network route)
|--new_rtrs(route_table)--list--ospf_route (for ABR/ASBR route)
case 4.1
ospf_spf_calculate_timer
|--ospf_ia_routing
|--ospf_examine_summaries
|--process_summary_lsa
|--ospf_ia_network_route
|--ospf_route_cmp
|--ospf_ia_router_route
|--ospf_route_cmp
case 4.2
ospf_spf_calculate_timer
|--ospf_ia_routing
|--ospf_examine_summaries
|--process_transit_summary_lsa
|--ospf_update_network_route
|--ospf_update_router_route
case 4.3
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_find_asbr_route (forwarding address is not set)
|--route_node_match(ospf->new_table) (forwarding address is set)
case 4.4
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_find_asbr_route
case 4.5
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--route_node_lookup (ospf->new_table)
case 4.6
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_route_cmp (line: 472)
case 4.7
ospf_route
|--cost
|--u.ext.type2_cost
for type 1 ase, cost is asbr_route->cost + metric
for type 2 ase, cost is asbr_route->cost
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_ase_calculate_new_route
|--ospf_route_cmp
case 4.8
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_route_cmp
|--ospf_asbr_route_cmp
case 4.9
case 4.10
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_route_cmp
|--ospf_asbr_route_cmp
these two cases check for intra-area backbone paths vs inter-area paths, case 4.7 and 4.8 check for intra-area non-backbone paths vs intra-area backbone paths
1.Calculating the shortest-path tree for an area,
-yields the set of intra-area routes
-examine router-LSAs and network-LSAs
-consider those links between routers and transit networks at first, then the stub networks.
2.Calculating the inter-area routes.
-The inter-area routes are calculated by examining summary-LSAs.
-If the router has active attachments to multiple areas, only backbone summary-LSAs are examined.
-Routers attached to a single area examine that area’s summary-LSAs.
3.Examining transit areas’ summary-LSAs
-only performed by area border routers attached to one or more non-backbone transit areas(transit area is different from transit network).
-updates backbone intra-area routes found in Step 1 and inter-area routes found in Step 2.
-never makes unreachable destinations reachable.
4.Calculating AS external routes
ospf
|--new_table(route_table)--ospf_route (for network route)
|--new_rtrs(route_table)--list--ospf_route (for ABR/ASBR route)
case 4.1
ospf_spf_calculate_timer
|--ospf_ia_routing
|--ospf_examine_summaries
|--process_summary_lsa
|--ospf_ia_network_route
|--ospf_route_cmp
|--ospf_ia_router_route
|--ospf_route_cmp
case 4.2
ospf_spf_calculate_timer
|--ospf_ia_routing
|--ospf_examine_summaries
|--process_transit_summary_lsa
|--ospf_update_network_route
|--ospf_update_router_route
case 4.3
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_find_asbr_route (forwarding address is not set)
|--route_node_match(ospf->new_table) (forwarding address is set)
case 4.4
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_find_asbr_route
case 4.5
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--route_node_lookup (ospf->new_table)
case 4.6
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_route_cmp (line: 472)
case 4.7
ospf_route
|--cost
|--u.ext.type2_cost
for type 1 ase, cost is asbr_route->cost + metric
for type 2 ase, cost is asbr_route->cost
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_ase_calculate_new_route
|--ospf_route_cmp
case 4.8
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_route_cmp
|--ospf_asbr_route_cmp
case 4.9
case 4.10
ospf_ase_calculate_timer
|--ospf_ase_calculate_route
|--ospf_route_cmp
|--ospf_asbr_route_cmp
these two cases check for intra-area backbone paths vs inter-area paths, case 4.7 and 4.8 check for intra-area non-backbone paths vs intra-area backbone paths
相关文章推荐
- 一些PHP性能的优化
- cordova学习三:config.xml文件配置
- Java的一些概念整理
- 黑马day06 其他重要标签
- 30.改变学生结构体数组中的值
- mysql更新表中日期字段时间
- LeetCode | Divide Two Integers
- zebra/quagga ospf and unh test section 3
- HDU---1114-Piggy-Bank (背包)
- LoaderManager使用详解(四)---实例:AppListLoader
- 单例模式
- zebra/quagga ospf and unh test section 2
- cordova学习二:图标与启动屏幕设置
- [Swust OJ 797]--Palindromic Squares(回文数水题)
- Scala的模式匹配和条件类
- 世事无常
- 根据进程名称获取进程pid,结束进程,执行exe文件
- 大数据透视《西游记》之妖怪分布
- 2015-第16周项目1-平方根中的异常
- 插入排序(直接插入+希尔排序)