-
Notifications
You must be signed in to change notification settings - Fork 707
processing_pipeline
Processing and forward
Processing Pipeline with SRv6
Andre Surcouf ( [email protected]) Clarence Filsfils ( [email protected])
ppsr
Thank to this project it will be possible to create complex processing pipeline in which each node applies some transformation not at the IP packet level but rather at “application data level” which represents several IP packet payloads. For any given node in the processing pipeline the input and the output data sizes can be different. The idea is to create a generic and extensible framework to allow additional functionality to be provided. Media processing is a natural application of this framework. The framework itself can be divided in three parts:
- The input plug-in responsible for receiving incoming traffic and make it available to the processing application through e.g. a piece of memory
- The output plug-in responsible for sending outgoing traffic from one processing application.
- A third control plugin is used to configure the other plug-ins.
The input as well as output plugins are actually split in two parts the application domain specific (e.g. Media) part and the ip specific part. (A fully detailed description of the involved mechanisms is accessible in a separate document)
- Processing
- Transform
- Forward
Axel Taldir ( [email protected]) Eyal Shalev ( [email protected]) Francois Clad ( [email protected])
There is no need for any particular hardware. However some implementation could use dedicated hardware to increase the performances. No driver required for any specific hardware
The code of each plugin is itself divided in two parts:
- A fully generic part which is responsible for IP packetization and depacketization. This part exposes a configuration API totally agnostic from the application specific part. This part is also responsible for maintaining IP continuity across processing applications which are not IP aware. This fully generic part is actually an extension of the existing v6SR development project which is meant to become an extensible framework to allow additional functionality to be provided.
- An application domain (e.g. Media) specific part which is responsible for implementing the communication with the external application. In the media particular case shared memory are used for this purpose. This domain specific part is new and could be considered either as an extension of the v6SR work or as a separate sub-project.
Meets board policy as expressed in Technical Community Charter and IP Policy
- Request for Project proposal consideration
- Email: https://lists.fd.io/pipermail/tsc/2017-January/000369.html
- Date: 12-Jan-2017