WAN, WWAN, MAN, WLAN, CAN, PAN, 3G, 4G, 5G, Wi-Fi, WiMAX, RF
From wikipedia: In telecommunications, a communications protocol is a system of rules that allow two or more entities of a communications system to communicate between them to transmit information via any kind of variation of a physical quantity. These are the rules or standard that defines the syntax, semantics and synchronization of communication and possible error recovery methods. Protocols may be implemented by hardware, software, or a combination of both.
In exchanging data between machines, machine-to-machine (M2M) communications, some [[data] communications] protocol is required but also other aspects must be considered by engineers (how format data, what programming language to use for implementing protocol and packaging/unpackacking data, et c.).
The table below introduces areas to consider, grouped by types of formal languages.
| Type | Example(s) | M2M |
|---|---|---|
| Markup languages | HyperText Markup Language (HTML), EXtensible Markup Language (XML), Abstract Syntax Notation One (ASN.1) | (Yes) |
| Style languages | Cascading Style Sheets (CSS), Extensible Stylesheet Language (XSL) | (No) |
| Programming languages | JavaScript, PHP, Perl, Python, C, C++, Java, Ruby, R (statistics) | (Yes) |
| Pattern matching | Regular expressions | (Yes) |
| Protocols † | HyperText Transfer Protocol (HTTP), Simple Mail Transfer Protocol (SMTP) | Yes |
| Query languages | Structured Query Language (SQL), SPARQL | (Yes) |