First Class - FCP, The FirstClass Protocol

FCP, The FirstClass Protocol

Key to FirstClass's operation was the underlying FCP (FirstClass Protocol). FCP was a transport layer networking protocol that all FirstClass communications used. The protocol guaranteed error-free communications for all activities, not just file transfers. FCP could run on several different physical layers, starting with modems and AppleTalk, and later adding Novell's IPX and TCP/IP. Both the client and server could communicate over any of these links, allowing a user to move from office to home and have access to the same server.

FCP was based on a sliding window protocol, using a wide variety of packet sizes tuned to different networking protocols. Later versions of FCP could turn off their own error correction systems when running over error-free links like TCP/IP. FCP also implemented an optional encryption system based on the Blowfish cipher. With all of these features turned off, FCP still offered good performance even on the 2400bps modems common in the era.

Additionally, every FCP packet included a "task number" identifier, similar to the port identifier in TCP/IP. This allowed FCP to construct a number of "virtual links" between each client and server. The server implemented a multithreaded kernel and opened a new thread for every task requested by a client. Users could therefore upload and download files at the same time, while simultaneously reading and writing mail.

Read more about this topic:  First Class