In order for computers to communicate with each other over a communication network, a common set of rules has to be agreed on, that specifies the format of the information exchange and the way data exchanged is to be handled by the communicating parts. We refer to this set of rules as a communication protocol. In this article we provide an introduction to communication protocols, starting with a description why correct communication protocols are sometimes difficult to design. We describe in some detail the OSI reference model, the ATM protocol and the very successful TCP/IP protocol suite. We also give particular examples of protocols designed to handle issues related to data link control, flow and congestion control, internetworking, and connection establishment in conventional and in high‐speed networks.