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

|