I. Introduction
Publish/subscribe (pub/sub) is a messaging pattern for distributed systems that is used in many applications such as transport information monitoring, event-driven supply chain management, location-based services, ubiquitous computing, and the Internet of Things. Pub/sub encompasses two roles: publishers publish messages, called notifications, subscribers subscribe to those notifications they are interested in, and publishers optionally announce through advertisements that they will potentially publish certain notifications. Publishers and subscribers are not directly connected to each other, but are decoupled by an interposed notification service that ensures mediation of notifications, while publishers and subscribers do not need to know each other directly.