Introduction
In programming scenarios, the Data Processing & Acceleration Kit (
Flexible Data Acceleration (
Implementation Principles
OVS open programming allows developers to extend OVS services based on Huawei DPUs. They can implement custom packet parsing, flow tables, flow table keys/actions, and pipelines based on the match-action mechanism of OVS.
Software Architecture
Figure 1 shows the open programming library and toolchain provided by
The programming library defines various open APIs of
- L1 openness: Configuration APIs, which are not within the scope of open programming.
- L2 openness: Focuses on the openness of basic services. For services on FlexDA, the APIs at the service layer are open, allowing developers to implement hook APIs and call library APIs. Developers can extend the basic service capabilities and integrate custom service logic into the basic service capabilities.
- L3 openness: Focuses on the openness of the general-purpose computing power of FlexDA. By providing a general basic library for a specific domain, developers can build their own service capabilities from scratch.
Application Scenarios
Based on the L2 and L3 open APIs, FlexDA gradually optimizes the open programming library which is the foundation of the FlexDA open programming ecosystem. It also improves the toolchain for the E2E development process to enhance the friendliness and usability of development tools. In addition, FlexDA open programming abstracts FlexDA service openness capabilities and gradually forms a domain-specific language (
