开放网络操作系统介绍(1)、ONL(Open Network Linux)

2018-10-05 16:30

ONL(OpenNetwork Linux)是Big Swtich 的商业交换机NOS——Switch Light OS的开源版本。BigSwitch在2014年将ONL贡献给OCP。

上图浅蓝色部分就是Open Network Linux (ONL)。

 微软开源的交换机软件SONiC 最近两年越来越火,它也是基于ONL的。 

ONL本质上是一种用于裸机交换机的一种Linux发型版。ONL和其它一些网络相关的开源项目一样,比如Vyatta、ONIE等,都DebianLinux 的分支。Vyatta是一个开源路由器项目。ONIE的用途是给交换机安装ONL、Cumulus之类的NOS。 

ONL 在Linux的基础上添加了大量交换机硬件相关的驱动程序:USB、 GPIO、CPLD、Flash、PCI、 serial、 RTC、 EEPROM、DMA……有了ONL之后,各白盒交换机硬件厂商可以共享相同的交换机硬件驱动,在一定程度上减少了开发工作量。

虽然 ONL本身不包含太多的网络功能,但是交换机软件厂商可以基于ONL进行网络功能研发,甚至基于ONL推出新的操作系统。ONL当初定位是用于白盒交换机,而如今也可以用于其它类型的网络设备,比如白盒OLT,未来会有更多基于ONL的白盒网络设备出现。


ONL的Logo是一只可爱的小企鹅


安装ONL的交换机存储设备的分区情况:

交换机通常具有两个存储设备:

  • 小容量的闪存(例如,64MB NOR闪存)用于存储启动交换机所需的基本软件,比如Bootloader(比如U-Boot或GRUB )和ONIE等。
  • 大容量存储设备(例如,几个GB的NAND闪存),用于存储交换机镜像文件(SWI,SwitchImage)。这块大容量存储设备就是用来存储ONL之类的NOS。


具体来看看这块大容量存储设备的分区情况,

Partition 1: ONL loader 内核

Partition 2: ONL Loader配置文件 (被mount 到 “/mnt/onl/boot”)

Partition 3: ONL 交换机镜像SWI分区(被mount 到”/mnt/onl/images” )

*注:不同型号的交换机可能存在一定差异 

 
ONL文件系统    

*注:不同型号的交换机可能存在一定差异


机镜像(SWI)中有什么?

解压镜像可以发现有2个文件: 

*注:不同型号的交换机可能存在一定差异

rootfs-powerpc.sqsh 文件是:运行 ONL的根文件系统。 

manifest.json 描述该ONL镜像支持的平台列表和版本信息.


  • 分享:

发表评论

诺云Blog

诺云Blog给你的有,最新的技术介绍、网络产业的分享、以及丰富的精选文章。

热线电话
在线客服
咨询信箱