Q:

Charactersitics/features of communication (M2M)protocols for comparision

What should be the characteristics/features of M2M protocols (MQTT/OPC UA/XMPP) for which the protocols can be compared? I would like to write an article about these protocols and would like to compare them on the basis of these characteristics. You can suggest some characteristics for M2M protocols comparison. such as: Security, Data bandwidth,scalability, over-head in data packets etc. Thanks 

A:

A comparison of the M2M protocols based on characteristics, like any other comparisons, should be made in a certain context. In this case, the context refers to the domain or the application domain you are using for building the comparison. 
An application for a certain domain usually has a set of requirements that need to be met. Building a list of common requirements is a sensible thing to do. Not only it will improve the structure of the article, but it will also offer the possibility to expand/improve the article as new requirements are being discovered. By analysing these requirements you can find some fine-grained criteria that you can choose to discuss.
Functional requirements

Interoperability
Interface for:
device - gateway,
device - network application server, 
device - device
Protocol load: information volume, connectionless/connection- oriented
Routing capability
IP based/non IP based
Communication patterns
Resource discovery
Resource management
Stateful/Stateless

Non-functional requirements

Scalability
Security
Privacy
Lightweight
Real-time
Expandability
Usability
Openness
Reliability

