本人只是初学XORP路由软件,可能理解上有出入,希望志同道合的朋友能够多给意见
XORP(可扩展性快放路由平台)
-
用C++编写
-
充分利用 : 模板;多重继承。
XORP结构设计
设计上,XORP是灵活的和模块化的。
由于XORP模块是分布式的架构,因此XORP模块可以分布在不同的机器上运行。
抽象转发引擎(FEA)
- FE在操作系统内核里面
- FEA提供一个统一的接口到底层内核
FEA的作用:
- 接口管理
- 转发表管理
- 原始包I/O口
- TCP/UDP socket I/O口
RIB进程
- 主要用来管理路由信息库。
- 默认的,这个进程保持着四个RIBs:单播和主播,IPv4和IPv6.
RIBs进程的作用:
- 储存通过运行路由协议产生的路由表
- 为到相同子网的路由表解决冲突
- 如果需要(BGP),解决下一跳到neighbors
- 把选中的单播路由表发送到FEA
- 允许进程去注册一些感兴趣的路由信息
- 允许从指定的路由表里重分布路由
进程间通信(IPC)
灵活性的实现归功于进程间的通信机制XRLs。
- IPC Finder模块是为了管理这个系统
- 箭头代表了主要的(无阻塞—异步)IPC调用
- 每一个模块都定了一个API(XRL接口)
XORP资源定位器
- 一个XRL描述了一个进程(可能是远程)调用
- 为解析的,这个调用联系Finder(他的地址-主机名:端口—必须静态的被定义。)
- l 这个Finder将会解析这个调用
原文链接: https://www.cnblogs.com/chenxt/archive/2011/07/02/2096537.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/28003
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!