Popis: |
Publish/subscribe is a flexible communication pattern for loosely coupled distributed applications. The content-based variant matches each published notification against active subscriptions to determine a set of interested subscribers to which the notification is to be delivered. Since the recipient set can be different for each notification, it is challenging to find and install profitable forwarding rules on the network switches. In this paper, we present novel notification forwarding schemes implemented in P4 that use virtual trees (VTs) installed on switches and additional forwarding information encoded in notification packets that is used to connect VTs, to extend VT branches, or to cut off VT subtrees. For deriving beneficial VTs, we consider (i) topological properties of the physical network, (ii) publisher/subscriber relationships, and (iii) notification statistics. We present a generic algorithm for encoding distribution trees and evaluate our forwarding schemes in a data center network. The results show that our schemes perform well and save network bandwidth by reducing the notification header length. |