An Object-Oriented Implementation of the Xpress Transfer Protocol

Object-oriented design principles map well onto protocol implementations because protocols essentially manipulate two structures-packets and the states of the endpoints. In this paper we describe an implementation of the Xpress Transfer Protocol as a user-space daemon written in C++. The object-oriented model forces the programmer to properly place functionality and information ownership. The model facilitates porting to various platforms and greatly eases the task of building data delivery services.