OLSR代表优化的链路状态路由协议。这样, 每个节点都会定期淹没其链接的状态。每个节点重新广播从其邻居接收到的链接状态信息。每个节点跟踪从其他节点接收的链接状态信息。每个节点使用上述信息来确定到达每个目的地的下一个希望。它是主动的并且由表驱动。
链接状态路由:
- 每个节点都展开一棵生成树。
- 每个节点都可以获取整个网络拓扑。
示例:
TC(6) = <4, 5, 7>
- 节点6在MS(6)= {4, 5, 7}中生成TC消息通告节点。
- 节点4从节点6转发TC(6), 节点3从节点4转发TC(6)。
- 在节点3、4和6生成TC消息之后, 所有节点都具有链接状态信息以路由到任何节点。
它利用一种技术来减少消息泛滥–多点中继(MPR).
在这种情况下, 网络中的每个节点N都会选择一组邻居节点作为多点中继MPR(N), 它们从N个转发控制数据包-不在N个MPR(N)过程控制数据包中的邻居, 但是它们不转发N个包。选择MPR(N), 以使N的所有两跳邻居都被MPR(N)的(一跳邻居)覆盖。
OLSR的优点:
- OLSR具有较小的平均端到端延迟, 因此可用于需要最小延迟的应用。
- 与其他协议相比, OLSR实现更加用户友好, 并且工作更少。
- 它也是一个平面路由协议。
- 它不需要中央管理系统来处理其路由过程。
- 随着源对和目标对的快速变化, 它增加了协议对自组织网络的适用性。
- 它不需要在控制消息方面可靠的链接, 因为消息是定期发送的, 并且传递不必是顺序的。
OLSR的缺点:
- 它维护所有可能路由的路由表。
- 当移动主机的数量增加时, 控制消息的开销也会增加。
- 重新发现断开的链接需要大量时间。
- 发现备用路由时, 它比其他协议需要更多的处理能力。