vl1111 发表于 2011-3-3 15:50:00

OSPF 教程图解 (案例、动画过程、仿真)

 
<p>OSPF入门案例教程用最简单的拓扑、场景来说明OSPF的整个过程:配置路由器的命令、发现OSPF邻居、交换LSA、请求LSA、发送LSA、完成Full Adjacency、用LSA计算路由路径、更新路由表, 使得Ping可以成功。案例有两个版本。本文是图解版本,是从仿真截图并加标注,介绍主要步骤。</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>背景</b>:路由器是互联网的核心,使得计算机间可以互相传递信息。路由器的工作就是转发数据包,(有如电话交换机转发对话),收到数据包时,用它的目的IP地址来查看路由表,如果找到相应的网络地址,就把数据包从通往这个网络地址的下一跳接口转发,如果没找到,就把数据包丢弃。所以路由表是个关键。但路由表是怎么设置的呢?在简单的拓扑上,网络管理员可以手工编辑路由表,拓扑一但复杂,有几十个路由器的话,手工编辑路由表既困难又容易错,所以得用路由协议来自动生成路由表。</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>OSPF</b><b>原理</b>: OSPF是个路由协议,让路由器将其链路信息 (link state) 互相传送,在所有的路由器都有同样的链接信息时,它们对拓扑有个共同的认识,可以分别计算通往各个目的地址的最短路径,记录到路由表。这时,路由器就可以正确的把数据包在计算机间转发了。 要进一步了解OSPF的机制, 请见参考资料。</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>预备知识</b>:IP address, 路由器。</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>OSPF </b><b>仿真</b>: 这个图解教程是根据<b><a href="http://www.visualland.net/view.php?cid=767&amp;protocol=OSPF&amp;title=1.1%20OSPF%20basic">OSPF入门仿真</a></b>创作。仿真用动画显示OSPF从初始化到同步(Full Adjacency)的过程,读者可以互动的检查数据包内容,观察数据包 - LSDB表 – 路由表之间的因果关系。</p><br/>
<p><b><a href="http://www.visualland.net/view.php?cid=767&amp;protocol=OSPF&amp;title=1.1%20OSPF%20basic">OSPF入门仿真</a></b>:这个拓扑是从OSPF仿真截图而来,仿真以动画显示OSPF从头到尾的最基本过程,用户可以观察数据包-状态-LSDB之间的因果关系、控制播放、检查数据包内容。</p><br/><br/>
<p><b>拓扑、配置、初始化</b><b> </b></p>
<p></p>
<p>1.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>拓扑</b>:两台路由器R1, R2经serial 接口相连,主机H1连接到R1,H2连接到R2。</p>
<p>2.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>配置</b>:在R1上启动 OSPF, 把R1接口的network address 输入到 OSPF。例, &nbsp;network 192.168.1.0/24 area 0. </p>
<p>3.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <b>初始化</b>:启动OSPF后,R1生成了Router LSA (Link State Advertisement), 并被添加到LSDB (Link State DataBase)。LSA描叙链路状态。</p>
<p>此时,R1, R2只知道自己的LSA, 接下去OSPF开始运作,使得R1, R2的LSDB同步。这样R1, R2对拓扑有一致的认识,可以分别计算最短路径,更新路由表。</p>
<p><b>4.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </b><b>R1, R2 </b><b>发送</b><b>Hello</b><b>,发现邻居。</b><b></b></p>
<p>初始化时,R1,&nbsp; R2虽然直接连接,但互不相识。要同步LSDB, 它们得先“发现”对方。</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R1 洪泛Hello 告诉邻居:我是你的邻居R1。 </p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R2 收到R1 的Hello 后,也洪泛Hello:我是你的邻居R2,我有一个邻居是R1。</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R1收到 R2 的Hello后,双方都知道对方是自己的邻居了。</p>
<p><b>5.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </b><b>R1, R2 </b><b>发送发</b><b>DD, </b><b>交换彼此的</b><b>LSA</b><b>目录</b><b></b></p>
<p>R1 发现R2 是邻居后, 就发送DD, 告诉R2 自己有那些 LSA. R2也做了一样的事。这样,R1, R2都知道邻居有什么LSA.。 </p>
<p>6.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R1 发送Request, 要求R2把R2 的Router LSA传送给自己。R2 发送Request, 要求R1把R1 的Router LSA传送给自己。</p>
<p>7.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R1把R1的Router LSA发送给R2。 R1 收到 R2的Request后,就把自己的R1 Router LSA放到Update里,发送Update给 R2。</p>
<p>8.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R2把R2的Router LSA发送给R1。 R2 收到 R1的Request后,就把自己的R2 Router LSA放到Update里,发送Update给 R1。</p>
<p>9.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R1 收到 R2的Request后,就把所要求的R1 Router LSA放到Update里,并发送Update给 R2。</p>
<p>10.&nbsp;&nbsp;&nbsp;&nbsp; 此时R1, R2有相同的LSA,它们的LSDB同步, 并成为Full Adjacency. 它们对拓扑有共同的认识 ,R1, R2各自计算路由,更新路由表,生成网络的最短路径。.</p><br/>
<p>【注】本场景动画过程请见 <b><a href="http://www.visualland.net/view.php?cid=767&amp;protocol=OSPF&amp;title=1.1%20OSPF%20basic">OSPF入门仿真</a></b>, 可以互动的检查数据包内容,观察数据包 - LSDB表 – 路由表之间的因果关系。</p><br/><br/><br/><br/>
<p>参考资料:</p>
<p> OSPF</p>
<p>Visualland.net <a href="http://www.visualland.net/view.php?cid=767&amp;protocol=OSPF&amp;title=1.1%20OSPF%20basic">OSPF basic simulation </a>(这篇图解相应的仿真), <a href="http://www.visualland.net/protocol.overview.php?p=OSPF&amp;protocol=&amp;title=0.%20OSPF%20Overview">OSPF仿真目录</a> (有20个OSPF仿真,由浅入深,并包括几个实验)</p>
<p>谢希仁 计算机网络第五版 4.5.3 3 内部网关协议OSPF</p>
<p>Wikipedia: Open Shortest Path First <a href="http://en.wikipedia.org/wiki/Open_Shortest_Path_First">http://en.wikipedia.org/wiki/Open_Shortest_Path_First</a> </p>
<p>RFC2328 OSPF V2, <a href="http://tools.ietf.org/search/rfc2328">http://tools.ietf.org/search/rfc2328</a> </p>
<p> IP address</p>
<p>Visualland IP Address 有6个仿真,见<a href="http://www.visualland.net/protocol.overview.php?p=IPAddress&amp;protocol=&amp;title=0.IPAddress%20Overview">IP地址仿真目录 </a></p>
<p>谢希仁 计算机网络第五版 4.2.2 分类的IP地址;4.3 划分子网</p>
<p>Wikipedia: IP address <a href="http://en.wikipedia.org/wiki/Ip_address">http://en.wikipedia.org/wiki/Ip_address</a> </p><br/><br/><br/><br/>
页: [1]
查看完整版本: OSPF 教程图解 (案例、动画过程、仿真)