$\mu$ Bench is an open-source tool for benchmarking cloud/edge computing platforms that run microservice applications. The tool creates dummy microservice applications that can be customized and executed on a Kubernetes cluster. $\mu$ Bench allows users to control fundamental properties of the microservice applications it creates, such as service mesh topology, microservices’ behaviors using a portfolio of stress functions (e.g., for CPU, memory, I/O, network) or implementing new ones, microservice-to-microservice API (HTTP or gRPC), etc. Application performance can be evaluated by stochastic or trace-driven workloads. μBench is aimed at researchers and cloud platform developers who lack real microservice applications to benchmark their findings (e.g., new resource control mechanisms, artificial intelligence-driven orchestration, etc.) or wish to thoroughly evaluate their proposals versus a broad set of heterogeneous applications that μBench can create. In addition to the description of μBench, in this article, we show one possible use of it. We compared advantages and disadvantages of microservice architectures versus monolithic ones, and analyzed the performance impact of key architectural choices, such as service mesh topology and the use of replication. For this analysis, we generated several microservice applications with different properties, and two of them are derived from a real cloud dataset.
18 June 2020 in IEEE Transactions on Network and Service Management
Message Queuing Telemetry Transport (MQTT) is a widespread protocol for topic-based publish-subscribe architectures supporting IoT and social networks applications. MQTT brokers are logical entities that couple publishers and subscribers and play a critical role in such architectures. MQTT brokers can be implemented either as standalone servers or in a cluster configuration. Clusters of brokers increase reliability, availability and overall performance, since operations can be highly parallelized among the brokers that form the cluster. The load-balancing strategy in a cluster usually consists in connecting an incoming client to a randomly selected broker. This random-attach strategy, it is very simple, but generates a significant amount of inter-broker traffic, as we demonstrate through theoretical and experimental evaluations. Inter-broker traffic is an overhead for the system and it increases the CPU load of the brokers, compromising the scaling behavior of the whole cluster. Indeed, we found that a linear increase of the number of brokers forming a cluster does not necessarily provide an equivalent linear gain in performance, and such a scaling penalty can be surprisingly significant, in the order of 40%. To solve this issue and improve performance, we propose a novel load-balancing strategy that envisages the use of multiple MQTT sessions per client to reduce inter-broker traffic and that can be implemented by means of a greedy algorithm. We show feasibility and effectiveness of our strategy for IoT and social-network applications by means of simulations and real measurements. The resulting scaling penalty is reduced to 10%.
This document considers the consequences of moving the underlying network architecture from the current Internet to an Information-Centric Networking (ICN) architecture on video distribution. As most of the traffic in future networks is expected to be video, we consider how to modify the existing video streaming mechanisms. Several important topics related to video distribution over ICN are presented. The wide range of scenarios covered includes the following: evolving Dynamic Adaptive Streaming over HTTP (DASH) to work over ICN and leverage the recent ISO/IEC Moving Picture Experts Group (MPEG) standard, layering encoding over ICN, introducing distinct requirements for video using Peer-to-Peer (P2P) mechanisms, adapting the Peer-to-Peer Streaming Protocol (PPSP) for ICN, creating more stringent requirements over ICN because of delay constraints added by Internet Protocol Television (IPTV), and managing digital rights in ICN. Finally, in addition to considering how existing mechanisms would be impacted by ICN, this document lists some research issues to design ICN-specific video streaming mechanisms.
23 January 2019 in IEEE Internet of Things Journal
The expected dramatic growth of connected things raises the issue of how to efficiently organize them, in order to monitor and manage functions and interactions. Information Centric Networking (ICN) is a communication paradigm that provides content-oriented functionality in the network and at the network level, including content routing, caching, multicast, mobility, data-centric security and a flexible namespace. Thus, it is a viable solution for supporting IoT services without requiring any centralized entity. In this work we introduce the Lightweight Named Object solution: a convenient way to represent physical IoT objects in a derived name space, exploiting ICN. We show that this abstraction can: i) increase the programming simplicity; ii) offer extended functionality, such as augmentation and upgrading, to cope with the “software erosion”, and iii) implement a common interaction logic involving mutual function invocation. We present some proof-of-concept implementations of the proposed abstraction dealing with challenging IoT test cases; we also carry out a performance evaluation in a simulated network scenario.
The Data Distribution Service (DDS) middleware is enjoying a rapid adoption in high-performance, mission-critical networks. At the same time, the H.264 Scalable Video Coding (SVC) has been recently standardized and it is deemed to be an effective solution for video streaming over a channel with time-varying bandwidth, like the wireless one. In these conditions, it is critical to adapt the video bit-rate to the actual wireless capacity, and bit-rate adaptation is extremely simple for a H.264 SVC video. In this paper we devise, evaluate and demonstrate a technique for streaming H.264 SVC video over a DDS middleware. The contribution is threefold: i) we design a structure of the DDS data-unit able to carry H.264 SVC video-units; ii) we devise a receiver-driven rate-control mechanism based on our DDS data-unit and exploiting specific DDS functionality; iii) we implement and show the effectiveness of our mechanism in an 802.11 wireless scenario, comparing our proposal with other solutions.