A Microsoft DirectPlay egy hálózati programozási felület (API), amely szállítási és munkamenetréteg- szolgáltatásokat biztosít .
A DirectPlay támogatja a kliens-szerver és az ügyfél-kliens kapcsolati topológiákat . A kliens-szerver topológiát nagyméretű többjátékos játékokhoz tervezték. A kliensek csak a szerverrel hoznak létre kapcsolatot, és ha szükséges a kliensek közötti csomag átvitele, akkor az a szerveren keresztül történik.
Kliens-ügyfél topológia használatakor minden kliens és minden ügyfél között létrejön a kapcsolatok. A csomagokat közvetlenül egy másik kliensnek küldik, központi szerver nélkül. Az egyik klienst megválasztják munkamenet-gazdaként, és ő viseli az összes kliens közötti munkamenet fenntartásának adminisztratív terheit. A fő számítógép leállása esetén a fennmaradó kliensek közül újraválasztják, miközben az összes kezdeményezett tranzakció teljesítése garantált. A topológia kisméretű többjátékos játékokhoz alkalmas, legfeljebb hatvannégy kliensre.
A DPNSRV belső szolgáltatása listát vezet a gépen futó összes munkamenetről, és elküldi azt a DirectPlay számára lefoglalt 6073-as porthoz csatlakozó klienseknek. A kliensek (vagy a kiszolgálóval rendelkező ügyfelek) közötti kapcsolatok portszámait a kapcsolat létrejöttekor adják meg.
A kliens-kliens topológia használatakor az audio stream egyidejűleg kerül továbbításra az összes címzetthez. A szükséges sávszélesség és a kliens CPU terhelése a kliensek számával nő, így ez a topológia nem skálázódik jól.
A munkamenet-keverés használatakor az audio adatfolyamot elküldik a szerverre, ahol összekeverik más kliensek hangfolyamaival, és visszaküldik minden kliensnek. Ennek a topológiának a használatakor megnő az audioátviteli késleltetés, és a szerver CPU-ja erősen le van terhelve, és 3D hangeffektusok sem használhatók.
A kliens-szerver modell másik változata a munkamenet-továbbítás, amelyben a szerver keverés nélkül továbbítja az audio streamet minden címzetthez. Ez jelentősen csökkenti a szerver CPU-használatát (de növekszik a klienseknél, mivel keverniük kell ) , a szükséges sávszélesség kisebb, mint a kliens-kliens topológia, de több, mint a munkamenet-keverés.