我对 openDayLight 控制器很感兴趣,我正在阅读很多关于它的文章,但我有一个问题。在 SAL 中,我们有 OpenFlow 之类的插件,但我可以定义自己的插件,例如 fe ping:https ://wiki.opendaylight.org/view/Ping - 为此,我需要像文章中所述创建:4 个捆绑包使用 OSGi 框架,这 4 个包被称为模块,对吗?但是插件==服务?并且 fe ping 插件在 fe openFlow 旁边的 SAL 中工作?我不确定我是否正确理解什么是插件、服务、模块、捆绑包。
问问题
138 次
1 回答
1
创建插件时,您必须决定它是北向插件还是南向插件。
南向插件直接处理网络设备。这通常通过一些配置协议来完成,例如 OpenFlow、SMTP 和 NETCONF。
北向插件从应用程序接收数据,对其进行处理,并且可能(您可能不会)使用南向插件来配置网络设备。例如,Ping 插件是一个 Northbound 插件,就像您可能会实现的大多数插件一样。
但是,您的插件可以实现设备通信部分,而不需要另一个特定的南向插件。服务是yout插件的实现部分,它从北向API接收数据,对其进行处理,并在必要时通过另一个南向API或通过一些自己的方式发送到网络设备。
Nouthbound API 是基于 YANG 模型自动创建的,这就是 ODL SAL 是模型驱动 (MDSAL) 的原因。在捆绑包中创建模型后,您可以在另一个捆绑包中实现服务。所有这些捆绑在一起就是您的插件或模块。
于 2015-10-17T05:33:24.230 回答