Appearance
题目
某网络中的路由器运行 OSPF 路由协议,下表是路由器 R1 维护的主要链路状态信息(LSI),下图是根据该表的接口名构造出来的网络拓扑。
R1 所维护的 LSI:
| R1 的 LSI | R2 的 LSI | R3 的 LSI | R4 的 LSI | 备注 | |
|---|---|---|---|---|---|
| Router ID | 10.1.1.1 | 10.1.1.2 | 10.1.1.5 | 10.1.1.6 | 标识路由器的 IP 地址 |
| Link1 ID | 10.1.1.2 | 10.1.1.1 | 10.1.1.6 | 10.1.1.5 | 所连路由器的 Router ID |
| Link1 IP | 10.1.1.1 | 10.1.1.2 | 10.1.1.5 | 10.1.1.6 | Link1 的本地 IP 地址 |
| Link1 Metric | 3 | 3 | 6 | 6 | Link1 费用 |
| Link2 ID | 10.1.1.5 | 10.1.1.6 | 10.1.1.1 | 10.1.1.2 | 所连路由器的 Router ID |
| Link2 IP | 10.1.1.9 | 10.1.1.13 | 10.1.1.10 | 10.1.1.14 | Link2 的本地 IP 地址 |
| Link2 Metric | 2 | 4 | 2 | 4 | Link2 费用 |
| Net1 Prefix | 192.1.1.0/24 | 192.1.6.0/24 | 192.1.5.0/24 | 192.1.7.0/24 | 直达网络 Net1 的网络前缀 |
| Net1 Metric | 1 | 1 | 1 | 1 | 到达网络 Net1 的费用 |
说明:每个路由器的"Link1 / Link2"是该路由器自身视角下的两条链路标号,不同路由器的 Link1 不是同一条物理链路。例如 R1 的 Link1 = R1↔R2,R3 的 Link1 = R3↔R4。
R1 构造的网络拓扑(边权为链路费用):
请回答下列问题:
(1) 本题中的网络可抽象为数据结构中的哪种结构?
(2) 针对上表中的内容,设计合理的链式存储结构,以保存表中的链路状态信息(LSI)。要求给出链式存储结构的数据定义,并画出对应表的链式存储结构示意图(示意图中仅以 ID 标识结点)。
(3) 按照迪杰斯特拉(Dijkstra)算法的策略,依次给出 R1 到达图中子网 192.1.x.x 的最短路径及费用。