ONL(open network linux) from OCP

2023-05-16

 https://opennetlinux.org/

github:https://github.com/OpenComputeProject/OpenNetworkLinux

Open Network Linux is a Linux distribution for "bare metal" switches, that is, network forwarding devices built from commodity components. ONL uses ONIE to install onto on-board flash memory. Open Network Linux is a part of the Open Compute Project and is a component in a growing collection of open source and commercial projects.

Open Network Linux supports multiple switch fabric APIs including: OF-DPA, OpenNSL and SAI. Specific information about hardware support for the different APIs can be found in the HCL (支持单板列表)

Open Network Linux is compatible with most forwarding agents including: FRR, BIRD, Facebook FBOSS and Azure SONiC.

 

Forwarding Agent Support

ONL provides multiple options for forwarding agents and APIs to control forwarding on switches. The options go from direct (OpenNSL, SAI, OF-DPA) to simplistic ipv4 only (ORC) to complex full systems (FBOSS). Each option is available via installable packages.

APIs

    • OpenNSL Provides a Open abstraction interface to supported Broadcom chipsets and is supported by Accton on many of their platforms.
    • OF-DPA is a OpenFlow focused API from Broadcom and is supported on most platforms.
    • SAI is a fully open multi-vendor abstraction interface that runs on switching chipsets from Broadcom, Cavium, Mellanox and more.

Routing and Switching Agents

  • ONL Supports ORC (Open Route Cache) an IPv4 only netlink listener which provides logical interfaces for routing protocols such as Quagga, BIRD and others to run on. See the HCL for a list of supported platforms.
  • ONL Supports the Facebook FBOSS fowarding agent. FBOSS currently only runs on the Wedge with other systems in the works.

 

Accton/Edge-Core

 

DevicePortsCPUForwardingONL Ver TestedIn LabOF-DPAOpenNSLSAI
Accton AS4600-54T48x1G + 4x10GFreeScale P2020BCM56540 (Apollo2)2.0.0 dd42debYesYes***Yes***No
Accton AS4610-54P48x1G + 4x10G + 2x20GDual-core ARM Cortex A9 1GHzBCM56340 (Helix4)2.0.0 fd18376YesNoNoNo
Accton AS5610-52X48x10G + 4x40GFreeScale P2020BCM56846 (Trident+)2.0.0 1d7a4d8YesNoNoNo
Accton AS5710-54X48x10G + 6x40GFreeScale P2041BCM56854 (Trident2)2.0.0 7a8dc98YesYes***Yes***No
Accton AS6700-32X32x40GFreeScale P2041BCM56850 (Trident2)2.0.0YesNoNoNo
Accton AS5512-54X48x10G + 6x40GIntel Rangeley C2538 x86MediaTek/Nephos MT32582.0.0 dd42debYesNoNoNo
Accton AS5712-54X48x10G + 6x40GIntel Rangeley C2538 x86BCM56854 (Trident2)2.0.0 1d7a4d8YesYes***Yes***No
Accton AS6712-32X32x40GIntel Rangeley C2538 x86BCM56850 (Trident2)2.0.0YesYes***Yes***No
Accton AS5812-54T48x10G + 6x40GIntel Rangeley C2538 x86BCM56864 (Trident2+)2.0.0YesNoNoNo
Accton AS5812-54X48x10G + 6x40GIntel Rangeley C2538 x86BCM56864 (Trident2+)2.0.0YesYes***Yes***No
Accton AS6812-32X32x40GIntel Rangeley C2538 x86BCM56864 (Trident2+)2.0.0YesYes***Yes***No
Accton AS7712-32X32x100GIntel Rangeley C2538 x86BCM56960 (Tomahawk)2.0.0 84df541YesYes***Yes***No
Accton AS7716-32X32x100GIntel Xeon D-1518 x86BCM56960 (Tomahawk)2.0.0YesYes***Yes***No
Accton Wedge-16X16x40GIntel Rangeley C2550 x86BCM56864 (Trident2+)WIP**YesNoYesNo
Accton (FB) Wedge 10032x100GIntel Bay Trail E3845 x86BCM56960 (Tomahawk)WIP**YesNoYesNo

转载于:https://www.cnblogs.com/soul-stone/p/8321839.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ONL(open network linux) from OCP 的相关文章

  • 让 MongoDB 在 Linux 上监听远程连接

    我已在 Windows 本地计算机上 上成功安装 MongoDB 作为服务 但现在我想将 MongoDb 移动到单独的服务器 所以我将 tarball 解压到网络上的虚拟服务器 运行 Linux 当我从本地计算机使用 PuTTY 连接到服务
  • 在 Linux 上的 Python 中使用受密码保护的 Excel 工作表

    问题很简单 我每周都会收到一堆受密码保护的 Excel 文件 我必须解析它们并使用 Python 将某些部分写入新文件 我得到了文件的密码 当在 Windows 上完成此操作时 处理起来很简单 我只需导入 win32com 并使用 clie
  • Godaddy 托管上的 CakePHP 控制台

    我一直在努力让我的 CakePHP 网站在 Godaddy 网格托管 帐户上运行 我的蛋糕应用程序设置是从帐户的子目录托管的 并且可以通过子域访问 我必须调整我的 htaccess 文件才能使其正常工作 现在我需要让 CakePHP 控制台
  • xsel -o 对于 OS X 等效项

    是否有一个等效的解决方案可以在 OS X 中抓取选定的文本 就像适用于 Linux 的 xsel o 一样 只需要当前的选择 这样我就可以在 shell 脚本中使用文本 干杯 埃里克 你也许可以安装xsel在 MacOS 上 更新 根据 A
  • ansible 重新启动 2.1.1.0 失败

    我一直在尝试创建一个非常简单的 Ansible 剧本 它将重新启动服务器并等待它回来 我过去在 Ansible 1 9 上有一个可以运行的 但我最近升级到 2 1 1 0 并且失败了 我正在重新启动的主机名为 idm IP 为 192 16
  • 何时使用 pthread 条件变量?

    线程问题 看来 只有在其他线程调用 pthread cond notify 之前调用 pthread cond wait 时 条件变量才起作用 如果在等待之前发生通知 那么等待将被卡住 我的问题是 什么时候应该使用条件变量 调度程序可以抢占
  • Unix 命令列出包含字符串但*不*包含另一个字符串的文件

    如何递归查看包含一个字符串且不包含另一个字符串的文件列表 另外 我的意思是评估文件的文本 而不是文件名 结论 根据评论 我最终使用了 find name html exec grep lR base maps xargs grep L ba
  • 无法加载 JavaHL 库。- linux/eclipse

    在尝试安装 Subversion 插件时 当 Eclipse 启动时出现此错误 Failed to load JavaHL Library These are the errors that were encountered no libs
  • 如何通过替换为空页映射来取消映射 mmap 文件

    Linux 用户空间有没有办法用空页面 映射自 dev null 或者可能是一个空页面 重复映射到从文件映射的页面的顶部 对于上下文 我想找到这个 JDK bug 的修复 https bugs openjdk java net browse
  • 跟踪 Linux 程序中活跃使用的内存

    我想跟踪各种程序在特定状态下接触了多少内存 例如 假设我有一个图形程序 最小化时 它可能会使用更少的内存 因为它不会重新绘制窗口 这需要读取图像和字体并执行大量库函数 这些对象仍然可以在内存中访问 但实际上并没有被使用 类似的工具top它们
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • Jenkins中找不到环境变量

    我想在詹金斯中设置很多变量 我试过把它们放进去 bashrc bash profile and profile of the jenkins用户 但 Jenkins 在构建发生时找不到它们 唯一有效的方法是将所有环境变量放入Jenkinsf
  • 如何根据 HTTP 请求使用 Python 和 Flask 执行 shell 命令并流输出?

    下列的这个帖子 https stackoverflow com questions 15092961 how to continuously display python output in a webpage 我能够tail f网页的日志
  • 我可以从命令行打印 html 文件(带有图像、css)吗?

    我想从脚本中打印带有图像的样式化 html 页面 谁能建议一个开源解决方案 我使用的是 Linux Ubuntu 8 04 但也对其他操作系统的解决方案感兴趣 你可以给html2ps http user it uu se jan html2
  • 从 Python 调用 PARI/GP

    我想打电话PARI GP http pari math u bordeaux fr dochtml gpman html仅从Python计算函数nextprime n 对于不同的n是我定义的 不幸的是我无法得到帕里蟒蛇 http code
  • Linux 中的动态环境变量?

    Linux 中是否可以通过某种方式拥有动态环境变量 我有一个网络服务器 网站遵循以下布局 site qa production 我想要一个环境变量 例如 APPLICATION ENV 当我在 qa 目录中时设置为 qa 当我在生产目录中时
  • 如何在数组中存储包含双引号的命令参数?

    我有一个 Bash 脚本 它生成 存储和修改数组中的值 这些值稍后用作命令的参数 对于 MCVE 我想到了任意命令bash c echo 0 0 echo 1 1 这解释了我的问题 我将用两个参数调用我的命令 option1 without
  • arm64和armhf有什么区别?

    Raspberry Pi Type 3 具有 64 位 CPU 但其架构不是arm64 but armhf 有什么区别arm64 and armhf armhf代表 arm hard float 是给定的名称Debian 端口 https
  • 尝试安装 LESS 时出现“请尝试以 root/管理员身份再次运行此命令”错误

    我正在尝试在我的计算机上安装 LESS 并且已经安装了节点 但是 当我输入 node install g less 时 出现以下错误 并且不知道该怎么办 FPaulMAC bin paul npm install g less npm ER
  • 两种情况或 if 哪个更快? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我必须制作一个 非常 轻的脚本 它将接受用户的选项并调用脚本中的函数来执行一些任务 现在我可以使用 IF 和 CASE 选项 但我想知道两

随机推荐