Project Proposals/DMM

< Project Proposals
Revision as of 06:04, 5 April 2018 by Swarupn (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Dual-Mode Multi-protocol Multi-instance (DMM)

Project Contact Name and Email

George Zhao <>

Wangyalei <>

Repository Name



DMM (Dual Mode, Multi-protocol, Multi-instance) is a framework between applications and transport layer of networking stack. This framework can hosts different types of networking stack instances operating on different domains (kernel/user-space) or even with different protocol suites (TCP/IP, RDMA, or others). Application can use different type of protocol stack implementations based on functional/performance requirements.


As shown in the above picture:

  • Applications use Posix compatible and uniform socket API library via system hijacking or LD_PRELOAD.
  • Neuro Resource Discovery (nRD) controls the set of protocol policies to route the packet. nRD continuously monitors the network state and updates the policy rules.
  • Local protocol orchestrator regularly syncs with nRD on policies.
  • Session layer of DMM (nSocket) lookups with protocol orchestrator for session request and manages the session mappings, based on the protocol lookup selects corresponding protocol stack.


The scope for DMM (Dual Mode, Multi-protocol, Multi-instance) is to provide a transport agnostic framework for the applications where applications can:

  • Work with both user space and kernel space network stack.
  • Use different network protocol stack based on their functional and performance requirement (QOS).
  • Work with multiple instances of transport protocol stack.
  • Engage or adopt new protocol stack dynamically.

Initial Committers

Vendor Neutral

No current or expected issues with vendor neutrality

Meets Board Policy (including IPR, being within Board defined Scope etc)

Meets board policy as expressed in Technical Community Charter and IP Policy


  • Request for Project proposal consideration
    • Email: (place link to email to TSC proposing project, this can be obtained from TSC Archives
    • Date: (date proposed, makes it simpler to calculate the pre-requisite 2 week time period of gestation before being permitted to be voted on)