Enabling Dynamic Device Personalization (DDP) on Individual Interfaces
SUMMARY Dynamic Device Personalization (DDP) is a technology that enables programmable packet processing pipeline provided by Intel as a profile to their NICs. JCNR supports enabling Dynamic Device Personalization (DDP) on individual interfaces.
Starting with Juniper Cloud-Native Router (JCNR) Release 23.2, JCNR supports enabling Dynamic Device Personalization (DDP) on individual interfaces. This feature is available on JCNR in L2, L3, and L2-L3 modes.
Dynamic Device Personalization (DDP) is a technology that enables programmable packet processing pipeline provided by Intel as a profile to their NICs. Multiple Intel NICs support this technology. The support varies based on the Intel NIC type. DDP is used in packet classification where the profiles applied to the NIC can classify multiple packet formats on the NIC enabling speeds and feeds to the Data Plane Development Kit (DPDK).
Juniper cloud native router (JCNR) provides routing and switching functionality. JCNR supports interfaces from different NIC cards. Some of the Intel NICs support DDP and some of them don’t support DDP. Therefore, in a deployment scenario, JCNR might have one interface from one NIC that supports DDP and another interface from a different NIC that does not support DDP. JCNR supports enabling DDP per interface to overcome such issues.
For E810 PF, JCNR loads the DDP package which is bundled with JCNR. However, for other NICs, ensure you load the DDP package on the NICs before starting JCNR.
A DDP configuration is available per interface. This configuration option overrides global
DDP (ddp
) configuration for that interface. If you do not configure an
interface DDP, then the global configuration value serves as the value for that interface. If
you do not configure the global DDP configuration, then the default value for the global
configuration which is off
takes effect.
DDP is supported on the following NICs:
-
E810 VF
-
E810 PF
-
X710 PF
-
XXV710 PF
DDP support is not available when interfaces are defined under subnets.
You should configure DDP in the helm chart before deployment. Configuring the DDP
configurations in the helm charts for both global and at interface levels is optional. If you
do not configure the DDP keys, then the default value for global DDP which is
off
takes effect.
The global DDP configuration is available in the values.yaml
file as shown
below:
# Set ddp to enable Dynamic Device Personalization (DDP) # Provides datapath optimization at NIC for traffic like GTPU, SCTP etc. # Options include auto or on or off; default: off ddp: "auto"
You can configure one of the following options for ddp
at the interface
level:
-
Auto—when set to auto, JCNR checks if the NIC supports DDP or not during deployment and configures DPDK accordingly. Detecting whether a NIC supports DDP at run time makes is easier to deploy JCNR in volumes.
-
On—option enables DDP on the interface without validating the NIC. Use this option only if you are sure that the NIC supports DDP.
-
Off—is the default option at the interface level. This option disables DDP on the interface.
For example,
– eth1: ddp: "off" ## auto or on or off
Each interface can have a different configuration for ddp
. DDP is enabled
for a bond interface only if all the slave interface NICs support DDP.