The motivation behind the Generic Networking (or GenNet) implementation is to use the API of a DQMH module even if the module itself is running on a different, distributed system. Both the caller and the callee should be absolutely oblivious of whether they are running on the same or on different systems.
A Generic-Networking-enabled DQMH module can be made a proxy. All requests are sent via TCP to another Generic-Networking-enabled DQMH module running in another application and/or another PC accessible via TCP/IP.
A Generic-Networking-enabled DQMH module can be made to accept messages via network. The module accepts requests from other Generic-Networking-enabled DQMH modules running in another application and/or on another PC via TCP/IP communication.
A Generic-Networking-enabled DQMH module can also use broadcast events. All broadcasts have to be encapsulated into generic broadcasts. These broadcasts are sent via multicast over UDP. The concrete implementation of GenNet UDP communication is similar to the GenNet TCP implementation.
A Note on Distributed Computing
Jim Waldo, Geoff Wyant, Ann Wollrath, Sam Kendall