_Protium_ uses a partitioned application approach to provide universal data service: making traditional desktop applications available on any Internet-connected device. We
partition applications into viewers (which run on the device near the user), services (which are accessed through the network and run in managed environments), and the application-specific protocols that connect them.
The goal of using a partitioned architecture is to provide consistent, responsive, remote access on a wide variety of devices, where the devices are reliabily networked but may have limited communications or computational abilities. We particularly focus on hiding communication latency in a connected environment.
The network between viewers and services provides a new place to put infrastructure; Protium includes system infrastructure that supports multiple viewers sharing a service, disconnection and reconnection, name lookup, security, session management, and device adaptation.