diff --git a/src/fd-net-device/doc/dpdk-net-device.rst b/src/fd-net-device/doc/dpdk-net-device.rst index e0966fcb4..f37797ec6 100644 --- a/src/fd-net-device/doc/dpdk-net-device.rst +++ b/src/fd-net-device/doc/dpdk-net-device.rst @@ -10,8 +10,16 @@ DPDK NetDevice ############# Paragraph (no number) +Data Plane Development Kit (DPDK) is a library hosted by The Linux Foundation +to accelerate packet processing workloads (https://www.dpdk.org/). + The ``DpdkNetDevice`` class provides the implementation of a network device which uses DPDK’s fast packet processing abilities and bypasses the kernel. This class is included in the ``src/fd-net-device model``. The ``DpdkNetDevice`` class inherits the ``FdNetDevice`` class and overrides the functions which are required by |ns3| to interact with DPDK environment. +The ``DpdkNetDevice`` for |ns3| [Patel2019]_ was developed by Harsh Patel, +Hrishikesh Hiraskar and Mohit P. Tahiliani. They were supported by Intel +Technology India Pvt. Ltd., Bangalore for this work. + +.. [Patel2019] Harsh Patel, Hrishikesh Hiraskar, Mohit P. Tahiliani, "Extending Network Emulation Support in ns-3 using DPDK", Proceedings of the 2019 Workshop on ns-3, ACM, Pages 17-24, (https://dl.acm.org/doi/abs/10.1145/3321349.3321358) Model Description ***************** diff --git a/src/fd-net-device/helper/dpdk-net-device-helper.cc b/src/fd-net-device/helper/dpdk-net-device-helper.cc index 41ac94adf..5fc11efce 100644 --- a/src/fd-net-device/helper/dpdk-net-device-helper.cc +++ b/src/fd-net-device/helper/dpdk-net-device-helper.cc @@ -14,6 +14,9 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * Authors: Harsh Patel + * Hrishikesh Hiraskar */ #include "dpdk-net-device-helper.h" @@ -59,14 +62,14 @@ DpdkNetDeviceHelper::InstallPriv (Ptr node) const Ptr dpdkDevice = DynamicCast (device); dpdkDevice->SetDeviceName (m_deviceName); - // set eal args + // Set EAL arguments char **ealArgv = new char*[20]; // arg[0] is program name (optional) ealArgv[0] = new char[20]; strcpy (ealArgv[0], ""); - // logical core usage + // Logical core usage ealArgv[1] = new char[20]; strcpy (ealArgv[1], "-l"); ealArgv[2] = new char[20]; diff --git a/src/fd-net-device/helper/dpdk-net-device-helper.h b/src/fd-net-device/helper/dpdk-net-device-helper.h index dd9b6f000..58736afb0 100644 --- a/src/fd-net-device/helper/dpdk-net-device-helper.h +++ b/src/fd-net-device/helper/dpdk-net-device-helper.h @@ -14,6 +14,9 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * Authors: Harsh Patel + * Hrishikesh Hiraskar */ #ifndef DPDK_NET_DEVICE_HELPER_H @@ -44,21 +47,21 @@ public: {} /** - * Sets list of logical cores to use + * \brief Sets list of logical cores to use * - * \param lCoreList Comma seperated logical core list. eg: "0,1" + * \param lCoreList Comma separated logical core list (e.g., "0,1") */ void SetLCoreList (std::string lCoreList); /** - * Sets PMD Library to be used for the NIC + * \brief Sets PMD Library to be used for the NIC * * \param pmdLibrary The PMD Library */ void SetPmdLibrary (std::string pmdLibrary); /** - * Sets DPDK Driver to bind NIC to + * \brief Sets DPDK Driver to bind NIC to * * \param dpdkDriver The DPDK Driver */ @@ -66,7 +69,7 @@ public: protected: /** - * This method creates an ns3::FdNetDevice attached to a physical network + * \brief This method creates an ns3::FdNetDevice attached to a physical network * interface * * \param node The node to install the device in @@ -80,7 +83,7 @@ protected: std::string m_lCoreList; /** - * PMD Library to use for NIC + * PMD Library to be used for NIC */ std::string m_pmdLibrary;