Messages
At a low level, network communication is via messages.
A message is simply a typed byte string passed between two levels of the system (e.g., OS to OS, app to app).
A message usually contains a header, indicating what kind of information it contains, and some data.
What the message “means,” i.e., how to interpret the bytes in the message, is an agreement between the two communicating parties (the protocol).