Skip to content

Commit

Permalink
Minor update on missing content.
Browse files Browse the repository at this point in the history
  • Loading branch information
r12f committed Nov 28, 2023
1 parent 299baff commit 488eac4
Showing 1 changed file with 4 additions and 6 deletions.
10 changes: 4 additions & 6 deletions documentation/dataplane/dash-byo-data-plane-app.md
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,10 @@ After initialization, the BYO data plane app will be able to:
### 2.3. ASIC programming work flow

With this setup, whenever we need to program the ASIC with new entries, we will forward the request to the data plane app.

Here is the example that shows how the users updates an existing mapping entry with flow resimulation, as well as how a BYO data plane app updates a flow entry:

```mermaid
sequenceDiagram
Expand All @@ -114,12 +118,6 @@ note over User,SW: BYO data plane app update a flow entry
BYODPA->>SW: SAI update flow entry
```

This allows the data plane app also be able to program the ASIC, so that data plane app can implement features such as: flow management, match stage entry eviction, etc.

> **NOTE**:
>
> Please bare in mind that - Although some APIs can be accessed by both roles, such as creating match stage entries, but this is not a good practice, because the ASIC state will be overwritten by the last caller without any synchronization and knowledge from the other side. So, please make sure that the APIs are only called by one side.
### 2.4. Flow management

One of the most important responsibility of data plane app is flow management. Essentially, whenever a packet that cannot be handled by the hardware flow table, it will run through the DASH pipeline and sent to the data plane app. The data plane app will need to decide if a flow needs to be created, deleted or resimulated, and how.
Expand Down

0 comments on commit 488eac4

Please sign in to comment.