Train Sim World uses a Blueprint based system, for handling communication between many so called "Clients" to one "Service" (not to be confused with a timetable mode service).
The service comes in the form of an Actor Component, the client can be of any Blueprint type. Both the service and clients have a Blueprint Interface based on their role containing all functions necessary for communication and management of the system. While the service always stays loaded, clients register and unregister as they come and go, at least in what this page calls "Classic Service".
The idea of this categorisation into client and service is, that a client can execute code on the service through the service's interface, and the service can execute code on every registered client through the client's interface. The service can be triggered by non-registered Blueprints as well, as for example with a RVM, of which the service is a component, wanting to notify every display (the client here) about a change in the state of the MCB.
The service provider is a interface sitting on a RVM and allows blueprints with no direct connection to the RVM to find services running on it through a name (e.g. DTG_PZB90).
Also referred to as a service by DTG, but actually very different and a lot simpler, are one-way Client → Service setups.
Here only a service interface exists, which is implimented directly by a RVM. No service actor component is at play here.
The service provider still allows this as a named service, by having the RVM register itself under a name, as the only requirement for registering with the Service Provoider is having an interface.