The development of communication protocols for computer networks and d
istributed systems is an increasingly complex and cost-sensitive proce
ss. This paper presents an object-oriented concurrent (OOC) model for
the development of communication protocols. This model consists of thr
ee kinds of entities: data entities, which represent the communicated
data units, state entities, which describe their behavior, and connect
ion, entities, which are responsible for communication services. The s
tate transitions in a protocol are modeled by using state entities, an
d a communication service is performed by a group of connection and st
ate entities. A C++ library based on our OOC model is described that c
ontains three class hierarchies, for data, state; and connection entit
ies, respectively In addition, an approach to constructing a protocol
using this OOC model and the library is presented. An example in which
a T.62 protocol is constructed shows that this approach provides a hi
gh level of modeling, concurrency, and reusability.