A Survey on Application Layer Protocols for the Internet of Things
Architectural Styles and the Design of Network-based Software Architectures