Notification servers for synchronous groupware

We introduce the Notification Service Transfer Protocol (NSTP), which provides a simple, common service for sharing state in synchronous multi-user applications. A Notification Server provides items of shared state to a collection of clients and notifies the clients whenever one of the items changes. The division between client and server in this system is unusual; the centralized state is uninterpreted by the server. Instead, the responsibility for semantics and processing falls on the clients, which collude to implement the application. After describing NSTP, we differentiate it from other systems in terms of the four design principles that have guided its development.