zoukankan      html  css  js  c++  java
  • broadcom OF-DPA

    https://www.broadcom.com/products/ethernet-connectivity/software/of-dpa

    http://broadcom-switch.github.io/of-dpa/doc/html/OFDPA_OVERVIEW.html

    OpenFlow Data Plane Abstraction (OF-DPA) is an application software component that implements an adaptation layer between OpenFlow and the Broadcom Silicon SDK. OF-DPA enables scalable implementation of OpenFlow 1.3 on Broadcom switch devices. Figure 1 shows the OF-DPA software component and its relation to other OpenFlow system components.

     OF-DPA software is available in two packages:

    • An OEM & ODM Development Package (ODP), which is a full source code package distributed under Broadcom SLA.
    • A Community Development Package (CDP), which is an Open API library with Application Development Kit distributed on GitHub.

    API: http://broadcom-switch.github.io/of-dpa/doc/html/group__GLOFDPAAPI.html

     

    • API Layer: Provides the northbound OF-DPA APIs. These are available via RPC in the inter-process mode or as direct function calls to a user application that links with the OF-DPA libraries. OF-DPA does not have a user interface (e.g. a CLI). All control is done via APIs. All APIs calls are synchronous and control is returned to the caller after changes are committed to the hardware.
    • OFDB Layer: This is the OF-DPA database layer. OFDB is the software database for the flow, group and port tables. It provides APIs to manage these tables. OFDB APIs are invoked by the following layers of OF-DPA:
      • API: OFDB stores the management state of the system. OFDB APIs are invoked by the API layer for configuration updates like flow addition, deletion, etc.
      • Mapping: OFDB also stores system status information like port link status, etc. The mapping layer receives these port state updates from the hardware and invokes OFDB APIs to update the port tables in the database.
      • Datapath: The datapath layer invokes OFDB APIs to traverse through flow tables etc. and perform housekeeping operations like flow aging.
    • Datapath Layer: Implements a task that wakes up periodically and traverses flow tables to perform flow aging operations. On detecting aged flows, it sends event notifications to client applications.
    • Mapping/Driver Layer: Provides system mapping and driver functions.
      • All system initialization is done here. The driver, OFDB, and datapath layers are initialized during system startup. Functions to retrieve system specific information like table sizes, valid VLANs, etc. are implemented in this layer.
      • The driver functions provide an abstraction layer over the Broadcom SDK. These functions are invoked to program and query the hardware. The driver layer defines the interface OF-DPA requires when ported to other platforms.
    • Platform Layer: Provides platform specific initialization structures and functions. These functions are invoked during system startup.
  • 相关阅读:
    OC 消息机制本质
    Lua中的闭包
    Lua中的函数
    Lua中的语句
    Lua中的表达式
    Lua中的类型与值
    Unity3D之通过C#使用Advanced CSharp Messenger
    C#中sealed关键字
    C#委托delegate、Action、Func、predicate 对比用法
    Unity3D之IOS&Android收集Log文件
  • 原文地址:https://www.cnblogs.com/heimafeitian/p/9653192.html
Copyright © 2011-2022 走看看