A protocol is a formal description of message formats and the rules two computers must follow to exchange those messages. Protocols can describe low-level details of machine-to-machine interfaces (the order in which bits and bytes are transmitted across a network) or high-level exchanges (how two programs transfer a file across the Internet).