A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any kind of variation of a physical quantity.
The protocol defines the rules, syntax, semantics and synchronization of communication and possible error recovery methods.