Article Preview
TopIntroduction
Several distributed systems and applications rely on interactions between unknown agents that cooperate in order to exchange resources and services. The distributed nature of these systems, and the consequent lack of a single centralized point of control, let agents adopt selfish and malicious behaviors in order to maximize their own utility. To address such an issue, several distributed applications rely on Reputation Management Systems (RMSs) that allow to estimate the future behavior of unknown agents before establishing actual interactions (Hendrikx, Bubendorfer, & Chard, 2015). Since a high reputation generally corresponds to greater benefits, the presence of an RMS represents an incentive for cooperative and honest behaviors.
RMSs can be used in several application scenarios, such as online trading and e-commerce frameworks (Tadelis, 2015), service oriented applications (Wahab et al., 2015; Wang et al., 2011), peer-to-peer applications (Marti & Garcia-Molina, 2006), collaborative intrusion detection systems (Vasilomanolakis et al., 2015), social networks (Awuor, Wang, & Tsai, 2018) and crowdsourcing (Wang et al., 2016).
Depending on the specific features of the considered application domain, RMSs can be designed according to a centralized or a decentralized architecture. Centralized RMSs rely on a single server that computes a global and unique reputation value for each agent. On the other hand, distributed RMSs, are characterized by the lack of central servers that manage and control the interactions among agents. In such systems, the estimation of the reputation values is performed by means of a distributed cooperation algorithm that exploits the feedbacks provided by the community of agents. A distributed reputation model prevents the existence of a single point of failure and represents a well scalable solution because of the elimination of performance bottlenecks. However, several drawbacks exist. For instance, evaluating the accuracy of reputation values and the time required to convergence is not a trivial task. Moreover, even if better performances could be observed by using a RMS, it is frequently difficult to measure how much the improvements depend on the reputation model itself, or on other components of the RMS. Finally, distributed RMSs are sensitive to fake information disseminated into the system by malicious users. The level of vulnerability of a specific RMS to different types of attack depends on the design of its components and it is very difficult to evaluate the impact of different choices since the design phase.
A wide range of efforts has been devoted to address these challenges. Nevertheless, to the best of the authors’ knowledge, there are no simulation environments that adopt a general approach that can be applied to different application scenarios. To address such issue, this paper proposes DRESS, a Distributed RMS Evaluation Simulation Software that allows researcher to evaluate the performance of a generic RMS even when different security attacks occur. DRESS makes it simple to compare distinct RMSs and different design choices through a set of well-defined metrics, also supporting dynamic and large-scale simulations.
The remainder of the paper is organized as follows. First, relevant related works are analyzed to position DRESS with respect to existing literature. Then, the features shared by most RMSs presented in the literature and some common security attacks to these systems are modeled. The agent-based DRESS architecture is presented in section Simulation Models, together with the set of functionalities offered by the framework to define new RMSs. The proposed evaluation metrics are described in the succeeding section, while a case study in which DRESS is used to simulate different security attacks to a specific RMS is discussed in the section Case Study. Conclusions follow in the last section.