Skip to content
README.md 3.08 KiB
Newer Older
# Dataplane Stack v22.03
Lijian Zhang's avatar
Lijian Zhang committed

Copyright (c) 2022, Arm Limited. All rights reserved.
Lijian Zhang's avatar
Lijian Zhang committed

Lijian Zhang's avatar
Lijian Zhang committed

Dataplane Stack aims to provide high-throughput packet processing software stack and solutions to solve customer and partner use cases in networking applications. It is implemented, validated and deployed on Arm AArch64 architecture.
Lijian Zhang's avatar
Lijian Zhang committed

Dataplane Stack architecture is shown in the following figure:
Lijian Zhang's avatar
Lijian Zhang committed

![High-performance Userspace Network](imgs/UserSpaceDataplane.png "High-performance Userspace Network")
Lijian Zhang's avatar
Lijian Zhang committed

Dataplane Stack solution serves multiple purposes,
* Showcase the integration of various networking components and act as poof of concept
* Allow for performance analysis/optimization with a solution that is close to real world use cases
* Provide users with a out-of-the-box reference for rapid development
Lijian Zhang's avatar
Lijian Zhang committed

The target platforms to run Dataplane Stack on, and target verification includes,
* Neoverse N1 System Development Platform - Functionalities and Performance
Lijian Zhang's avatar
Lijian Zhang committed

## Key features
Lijian Zhang's avatar
Lijian Zhang committed

## Use cases

* IPv4/v6 forwarding

## Important notes

### Safety and Security

Users of this software stack must consider safety and security implications according to their own usage goals

# Getting started

Please refer to the [Quickstart Guide](./quickstart.md) to get started using this solution

# Usage and Demos


# Limitations and known issues

* Users of this software stack must consider safety and security implications according to their own usage goals
* Does not provide native traffic generator


# Feedback and Support

Arm welcomes any feedback.
To provide feedback or to request support please contact Arm by email at
dharmik.thakkar@arm.com. Arm licensees may also contact Arm via their partner
managers.
Lijian Zhang's avatar
Lijian Zhang committed

## Roadmap

## Contributing

## License

With the exceptions recorded below, Dataplane Stack is distributed under the terms of the Apache License Version 2.0.
SPDX Identifier|TB Approval Date|GB Approval Date|File name
:--|:--:|:--:|--:
1.MIT|10/23/2019|02/10/2020|xxx/xxx/xxxxx.h
2.BSD-2-Clause|10/23/2019|12/18/2021|xxx/xxx/xxxxx.c

Some files in Dataplane Stack contain a different license statement. Those files are licensed under the license contained in the file itself.

Dataplane Stack also bundles patch files, which are applied to the sources of the various packages. Those patches are not covered by the license of Dataplane Stack. Instead, they are covered by the license of the software to which the patches are applied. When said software is available under multiple licenses, the Dataplane Stack patches are only provided under the publicly accessible licenses.

The list below captures all licenses used with this stack:

    Build scripts / manifests (./) - Apache 2.0
    DPDK repository - Refer to [dpdk.org](https://www.dpdk.org/) for license details
Lijian Zhang's avatar
Lijian Zhang committed

Dataplane Stack uses first line of the file to be SPDX tag. In case of *#!* scripts, SPDX tag can be placed in 2nd line of the file.
Jingjing Ma's avatar
Jingjing Ma committed

For example, to label a file as subject to the Apache-2.0 license, the following text would be used:
```
// SPDX-License-Identifier: Apache-2.0
```
or
```
#!/usr/bin/env bash
# SPDX-License-Identifier: Apache-2.0
```