Skip to content

azelezniak/dpdm_lib

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DPDM includes a set of user-space libraries (FreeBSD license) and a kernel module (GPL license), vni.ko.
A DPDK application built with DPDM user-space libraries would enable the application to use traditional
network management tools, such as ethtool, ip, ifconfig etc, to manage NIC devices which are bound with
user-space DPDK device drivers.

The DPDM user-space libraries are libraries based upon DPDK libraries, and they provide additional
device-neutral APIs to support device management capabilities, mainly functions equivalent to kernel
Netdev ops and a set of SR-IOV management functions. A high-level overview of DPDM can be found @
dpdm/doc/DPDM.pdf

To build DPDM user-space libraries, it requires 
1. Creating four environment variables
		a. RTE_SDK/RTE_TARGET: these two variables are used for locating DPDK build
		b. RTE_SDKEX: path for DPDM source code.
		c. VNI_NETDEV: path for vni source code

2. run dpdm/build_all.sh: 
	#cd dpdm
	#./build_all.sh

To build DPDM kernel module, vni.ko.
	#cd vni
	#make

To build an application with DPDM, please refer to dpdm/examples/test-vni/README

To instaniate DPDM kernel module, vni.ko.
	#insmod vni/vni.ko

After vni.ko is installed, below sys files are created for debug, tracking and others.
	- /sys/kernel/vni_manage/client_cache: used for user-space DPDM library to return VFD get-statistic result
																				when working with ethtool
	- /sys/kernel/vni_manage/get_stats_en: used by customer to turn on/off Netdev get-statistics
	- /sys/kernel/vni_manage/trace: latest 4K debug message for kernel and user-space Netlink activities 

About

No description, website, or topics provided.

Resources

License

Unknown, GPL-2.0 licenses found

Licenses found

Unknown
LICENSE.BSD
GPL-2.0
LICENSE.GPL

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 95.3%
  • Makefile 3.0%
  • Other 1.7%