System wymiany informacji (ang. ) działa jak hub. Aplikacje wykorzystując bibliotekę libdbus, łączą się do niego na zasadzie jeden do jednego. Jeżeli system ten otrzyma wiadomość od podłączonej aplikacji, to przekazuje ją do innych podłączonych aplikacji.

D-BUS pracuje z dwoma rodzajami bus demonów: - przeznaczony jest dla wiadomości o charakterze globalnym (np. powiadomienie o podłączeniu nowego urządzenia). Jednocześnie może być uruchomiona tylko jedna instancja tego demona. - pozwala na komunikację aplikacji uruchomionych w ramach sesji tego samego użytkownika. Dla każdej sesji użytkownika uruchamiana może być nowa instancja tego demona.

Mechanizmy Każda aplikacja używająca D-bus zawiera obiekty, które zwykle są mapowane na obiekty typu GObject, QObject, C++/l albo Pythonowe/l. Każdy obiekt D-bus funkcjonuje raczej jako instancja niż jako typ. Wiadomości otrzymane poprzez połączenie D-Busowe są routowane do konkretnego obiektu, nie do całej aplikacji. Pod tym względem D-bus przypomina oprogramowanie komponentowe, gdyż użytkownikowi zdaje się, że wchodzi w interakcję z obiektem niezależnie od tego, czy po drugiej stronie faktycznie znajduje się obiekt.