Next Article in Journal
Optimization Design Method and Experimental Validation of a Solar PVT Cogeneration System Based on Building Energy Demand
Next Article in Special Issue
Determining the Optimal Configuration of the Multi-Ring Tree for Bluetooth Multi-Hop Networks
Previous Article in Journal
The Effect of Imbalanced Carrier Transport on the Efficiency Droop in GaInN-Based Blue and Green Light-Emitting Diodes
Previous Article in Special Issue
Modelling and Control of Parallel-Connected Transformerless Inverters for Large Photovoltaic Farms
Open AccessArticle

A Novel Locality Algorithm and Peer-to-Peer Communication Infrastructure for Optimizing Network Performance in Smart Microgrids

Grupo de Sistemas Electrónicos Industriales del Departamento de Ingeniería Electrónica, Universitat Politècnica de València, Camino de Vera s/n, 46022 Valencia, Spain
Author to whom correspondence should be addressed.
Energies 2017, 10(9), 1275;
Received: 27 June 2017 / Revised: 19 August 2017 / Accepted: 24 August 2017 / Published: 27 August 2017
(This article belongs to the Special Issue Control and Communication in Distributed Generation Systems)


Peer-to-Peer (P2P) overlay communications networks have emerged as a new paradigm for implementing distributed services in microgrids due to their potential benefits: they are robust, scalable, fault-tolerant, and they can route messages even when a large number of nodes are frequently entering or leaving the network. However, current P2P systems have been mainly developed for file sharing or cycle sharing applications where the processes of searching and managing resources are not optimized. Locality algorithms have gained a lot of attention due to their potential to provide an optimized path to groups with similar interests for routing messages in order to achieve better network performance. This paper develops a fully functional decentralized communication architecture with a new P2P locality algorithm and a specific protocol for monitoring and control of microgrids. Experimental results show that the proposed locality algorithm reduces the number of lookup messages and the lookup delay time. Moreover, the proposed communication architecture heavily depends of the lookup used algorithm as well as the placement of the communication layers within the architecture. Experimental results will show that the proposed techniques meet the network requirements of smart microgrids, even with a large number of nodes on stream.
Keywords: smart microgrids; communication architecture; peer-to-peer overlay networks; decentralized systems; network performance parameters smart microgrids; communication architecture; peer-to-peer overlay networks; decentralized systems; network performance parameters

1. Introduction

A microgrid (MG, Figure 1) is a low voltage distributed network formed by various distributed energy resources (DERs) consisting of a variety of loads, microsources (MS), energy storages systems (SS), and other incipient elements like electric vehicles (EVs) [1,2,3]. Microgrids have emerged as a powerful, resilient and sustainable power grid concept that can integrate renewable energy systems for power generation [4,5], and manage in real time a large amount of distributed energy resources [6,7], Microgrids can operate in grid-connected mode and islanded mode disconnected from the point of common coupling (PCC) with the main grid in case of faults [8,9,10]. In general, there are several kinds of faults that can originate the disconnection of a certain area in an electrical grid, as would be the case of short-circuits, line overloads, faults in substations, and so on. Once the fault has disappeared, they can be reconnected to the grid. In addition, a microgrid must have its own control architecture to ensure the correct operation and coordination of the different DERs.
In recent years, the introduction of Information and Communication Technology (ICT) in microgrid energy systems has led to the term “Smart Microgrid” (SMG) [11,12]. This concept has emerged to describe the way ICT can transform microgrids’ operation and entails several applications like intelligent monitoring and control of distributed energy resources, automation, data networking and other tasks that can improve the efficiency of the system [12,13,14]. To realize these capabilities, distributed control systems have been proposed. Particularly, recent studies [13,15,16,17] suggest Peer-to-Peer (P2P) overlay communication networks as a solution with great potential to provide high performance to decentralized microgrid control systems, including scalability, fault-tolerance and robustness.
Peer-to-Peer (P2P) overlay networks are virtual networks where the connectivity among the nodes is carried out through a physical IP network, while the network topology is created in a virtual network, called overlay, which is built on top of the physical one. Overlays increase flexibility, extensibility and adaptive reconfiguration. This implies that each node communicates with each other to create self-organizing overlay structures on top of the subjacent physical networks [18,19].
Distributed Hash Tables (DHTs) allow developing structured P2P systems due to their routing capabilities. DHTs support exact-match queries [20,21,22] i.e., given a query for a specific key, DHTs can efficiently locate the node which holds the keyword key. However, DHTs do not implement any mechanism for retrieval data application [1] and locality is not considered [21]. These facts are a serious drawback to implement communications in microgrids by means of DHTs due to, on the one hand, the fact a data retrieval mechanism is essential to obtain and/or update data in this application [23]. On the other hand, locality allows creating a group of peers for a particular task [21]. Peers with close interests can create “shortcuts” and use them to locate content. The underlying physical network path could be significantly different from the path on the overlay network if locality in DHTs is not considered. Therefore, the lookup latency in the overlay network could be quite higher and decrease the performance of the application layer [21,24,25].
The control and the management of microgrids demand high efficiency in terms of network quality requirements (high bandwidth and low latency). However, peer-to-peer networks have been mainly developed for other applications such as file sharing and processor cycle sharing, whose network performance requirements are less of a priority [26].
The main contributions of this work are, first, the proposal of a fully functional decentralized communication architecture, which includes a new clustering algorithm based in DHTs that adds locality capabilities for creating node clusters with close interests. The second contribution of the paper is the proposal of a specific application protocol, running on Transmission Control Protocol/ Internet Protocol (TCP/IP), for microgrids monitoring and control.
The paper is organized as follows: Section 2 gives some background on P2P networks and their application to microgrids. In addition, a specific DHT protocol (Chord) is described. Section 3 presents the network requirements in order to deploy efficient communication architectures for smart microgrids. In Section 4 and Section 5 the proposed solutions are described. Concretely, the lookup algorithm is presented in Section 4, while Section 5 gives details about the communication architectures and a specific protocol for microgrids. Section 6 reflects the results of the tests that have been carried out to evaluate the performance of the proposed solutions. Finally, Section 7 provides some conclusions.

2. Peer-to-Peer Approach for Decentralized MG’s Control

One of the key points for integrating DERs into microgrids is the design of a control architecture that coordinates each one of the DER units. Traditionally, the control tasks are carried out by means of a three level hierarchical structure [27,28,29,30,31], i.e., primary, secondary and tertiary control. The Field Level (Primary Control) is implemented in local DER. It is responsible for stable operation conditions in each DER. The Management Level (Secondary Control) is controlled by a Microgrid Central Controller (MGCC), which ensures the synchronization between the MG and the main grid or the quality of the frequency and voltage of MG, among other tasks. Finally, Grid Level (Tertiary Control) carries out the management of MG when it operates in the market providing an economically optimal operation of the microgrid.
Primary, Secondary and Tertiary levels can be combined or not with communication systems. However, to evolve towards the development of the intelligent microgrid, communication interfaces among the different control levels should be created. Thus, a bi-directional communication and channels are stablished in order to allow information transfer between the different controllers [32] for knowing the state of the whole system.
Today’s microgrid installations use centralized architectures to implement the three level hierarchical scheme and data transfers between entities. These centralized architectures where a central controller take decisions and provides communications between all microgrid resources have been implemented, for many years, by Supervisory Control and Data Acquisition (SCADA) systems [33]. In addition to the SCADA systems, other alternative technologies also used for control and management of centralized microgrids are Power Line Carrier (PLC) and Wireless Networks (WNs). PLC technologies use the electric power lines as a medium that enables the bidirectional data exchange. This provides a vast coverage and in terms of infrastructure is the most cost-effective technology since the lines already exist. However, PLC technology has negative effects in the communication channel such as a noisy medium, distortion, frequency impedance alterations and the risk of signal attenuation [34].
Besides, wireless technologies have emerged as an alternative for centralized wired technologies due to their low cost, low power, flexibility and easy deployment [35]. Some studies about wireless networks in power systems for monitoring and control of segments in power transmission and delivery have been presented in [35,36,37,38,39]. However, the use of wireless technologies in power system environments presents a number of challenges such as reliability concerns, wireless signal disruption due to electromagnetic interference (EMI), faded signals due to large transmission distances or obstacles in the line-of-sight; overloading of bandwidth; quality or latencies degradation, among others [35,40,41].
In Information and Communication Technology (ICT) terminology, these centralized structures (see Figure 2a) are based on client-server communications architectures where every device of the network plays one of two roles: server or client. The server is the central point that receives status information from the whole unit and it is able to calculate an optimal global control strategy. Besides, the client shares its resources via direct links to the server. This control structure causes inefficiencies in the communication system of the microgrid, which are provoked by several causes. On one hand, a failure in the centralized control point could lead to several faults or even the shutdown of the entire system. In addition, there are difficulties in managing a wide range of devices in real time [42,43], because the system is hardly scalable. As a result, these disadvantages can lead to provide poor services, bottlenecks or under-utilization of the network resources. To address these shortcomings, the communications network should move from the conventional centralized infrastructure to a decentralized one. A decentralized communication infrastructure, removes the central controller as a single point of failure, providing a significant improvement in terms of reliability. Therefore, the hierarchical management scheme of microgrids should be implemented employing a decentralized architecture.
Decentralized architectures for power systems are usually implemented through Multi-Agent Systems (MAS) technology [44,45,46,47]. In this structure each DER unit is considered as an agent. An agent is a computer system capable of performing tasks autonomously and with the ability to communicate with its neighboring agents to solve problems through cooperation, coordination and negotiation. Most MAS implement hierarchical topologies where some agents (super-agents) have authority over the actions of other agents [48] to form distributed decentralized systems (see Figure 2b). However, these agents do not have the capacity to reorganize themselves [49]. In addition the individual behavior of the agents is easy to know while the whole system is unreachable [50]. The absence of such functionality might result in a lack of knowledge about the global status of the microgrid, as well as in a sub-optimal allocation and a poor management of the critical resources [49]. Therefore, a new paradigm based on peer-to-peer (P2P) communications could be a promising solution for improving the use of DERs and the network performance in microgrids [17,51,52,53].
P2P systems are formed by peers. A peer is an agent [49] that can act both as server and client, characteristic that allows agents be proactive. P2P systems avoid a single point of failure and are much scalable because the available resources grow with the number of nodes joining the network. Nodes are capable to cooperate to achieve a common goal and they have self-organization capabilities. The connectivity between nodes, as Figure 2c depicts, is carried out by creating virtual links, overlays, which are built on top of the IP network. Some advantages of these systems are their greater flexibility, their extensibility and their adaptive reconfiguration. This implies that each node communicates with each other to create self-organizing overlay structures on top of the subjacent physical networks [54].
It is worth pointing out that P2P networks have a highly distributed nature, so they offer much large scalability than possible with other networks that are based on centralized or partially distributed systems, due to the fact each peer could act as a server. Therefore, the typical bottlenecks of centralized and partially distributed systems are avoided because the number of servers increases linearly with the one of clients.
P2P architectures can be classified as Structured or as Unstructured according to their logical topology and degree of decentralization. On the one hand, an unstructured P2P network has a random and unstructured mesh network topology. There is not an algorithm for organization. The information and data resources are distributed among peers. A Broadcasting lookup technique is used to locate resources and data retrieval in unstructured P2P, in such a way that each peer propagates a request to its directly connected peers. The propagation remains until the message time to live (TTL) threshold (typically four) has been reached [55]. This broadcast creates a large amount of signal traffic and uses of a lot of network bandwidth [56]. These characteristics do not result in a scalable and efficient system.
On the other hand, a structured P2P network has a dedicated network and a well-defined topology where peers are responsible for information and data resources. In structured overlays, a Distributed Hash Table is used for routing in order to locate resources in the network. In this strategy each peer has a local table that is used as a lookup algorithm to route the request data according to node tables [57]. DHT allows the peers to find the addressed data using flat identifiers (IDs). This kind of P2P system improves the network communication usage, and it is shown in Figure 3.
Figure 3 compares the performance of broadcasting and DHT lookup algorithms for distributed peer to peer architectures. The complexity of each of these lookup algorithms can be evaluated by analytical metrics [58]. Analytical metrics for structured DHTs and Broadcasting-unstructured P2P designs have been proposed in [59]. The computational behavior of these lookup algorithms is described by means of O, which describes the asymptotic behavior of the algorithms [58]. In a structured DHT overlay, each node maintains information about the O (logn) value of other nodes and solves lookup via O (logn) messages per lookup. In broadcasting, the metric is O (logn) messages per lookup. It is worth noting that O notation expresses the asymptotic upper bounds, since it bounds the growth of the message exchange for a large enough number of input nodes. This means that the exchange messages grows no faster than a certain constant value (in the case of broadcasting) or a logarithmic one (in the case of DHTs). In fact, it grows slower. From a practical point of view, the value of O(n) agrees with n [58].
Message counts are considered as a metric value for communication overhead [60] and can provide evidence about the network and the bandwidth usage, as well as about the end-to-end latencies. O(logn) and O(n) indicators depict the worst case scenario for n nodes in the network.
As Figure 3 shows, the DHT lookup technique is more efficient than Broadcasting. Thus, it will be used in the proposed solution. In addition with DHT the resources discovery can be satisfied in a bounded number of steps even for large scale distributed systems.

3. Description of the Chosen DHT Algorithm

There are in the literature a large amount of DHT routing infrastructures based on P2P systems, and a possible taxonomy is presented in [54] Examples of DHT protocols include Chord [61], CAN [62], Pastry [63], and Tapestry [64], among others. They differ mainly in how peers maintain their routing tables to guarantee an efficient content location [65].
Among all of possible DHT routing protocols listed before, the Chord protocol has been chosen as lookup algorithm in this work. The reason is that Chord is the most popular structured routing protocol [54,66] and it has several features that distinguish it from the other DHT lookup algorithms. These characteristics are [67]: (i) Chord is a completely distributed system, meaning that all nodes have the same role in the system; (ii) Chord properly scales for a large number of nodes; (iii) Chord nodes can always be found, even if they are continuously entering and leaving the network.
Although the DHT-Chord protocol has been chosen to build up the proposed lookup algorithm, it is worth noting that the proposed concepts are independent of the chosen DHT protocol and they can be easily extended to other protocols. The Chord DHT-overlay organizes peers on a virtual ring topology ranged from 0 to 2 m     1 (Figure 4a), where m is the number of bits in the identifiers. In this protocol each node is responsible for a collection of keys between its predecessor and itself for resource lookup (key-space). In this way, the resource ID is stored in the first peer, whose ID ≥ Resource ID (see Figure 4b). Each node in the ring upholds a routing DHT table, called the finger table, which is used by the lookup algorithm (Figure 4c).
The lookup algorithm is started by one node in the ring in order to find a particular key in the space-keys or by an external request and follows two steps [54,66,68]:
Firstly it checks if the node that started the search is in charge of that key. If this is true the search is over and the algorithm ends.
Otherwise the node will employ its finger table to localize the closest successor of the target node’s key and request the search of the key to the target node.
Let us consider an example. When peer #6 is searching the resource whose ID is 16, i.e., the target node will be peer #3, which is the node that stores ID = 16 (see Figure 4). The peer #6 verifies if is in charge of that key. As it is not responsible for this resource, it will check its finger table records. The finger table of peer #6 stablish that the nearest peer to the destination is peer #15 (see the finger table of N6 in Figure 4c), and it sends the request to this successor. As the peer #15 is also not responsible for this resource, it would also check its own finger table, searching the closest peer of the target’s node. The finger table of peer #15 establishes in this case that the closest node to meet the request is peer#3 (see finger table of N15 in Figure 4c), thus it forwards the message to this successor. Peer #3 has the resource and it is the destination, so the process ends.
In a P2P system, each peer can join and leave the system at any arbitrary time. Chord adapts efficiently as nodes join and leave the system, and can answer queries even if the system is continuously changing [24]. This means that the finger table is dynamically built through a stabilization mechanism.

4. Network Requirements for Smart Microgrids

To control and monitor the intelligent microgrid, a Real-Time Measurement Parameters (RTMP) function is required [69,70]. To reach this objective, it is mandatory to know what bandwidth (used to signify the data rate in bits/second) and what latency (delay) the transmitted data may have among the microgrid components (DERs) for each microgrid function [71,72,73]. Each microgrid function has its own latency and bandwidth requirements depending upon the kind of system response it is dealing with. The International Electrotechnical Commission's (IEC) 61850 and IEEE 1646 standards give specifications for these requirements as Table 1 summarizes [74,75,76].
The communication system of the microgrid must satisfy these timing requirements because a low bandwidth can lead to bottlenecks, loss of data packets and distortion. Besides, if the communication delay exceeds the required time, the information does not fulfill its purpose and, in the worst case, damage might occur [34]. In this regard, the underlying communication system needs to be designed with well-defined network performance requirements to meet the needs of time sensitive data streams, bandwidth and latency, among others [77,78].
Table 1 shows the needed performance requirements as stated by the IEC 61850 and IEEE 1646 standards. Besides these requirements, microgrids are evolving towards distributed and intelligent systems, needed to process a high volume of data. Thus, the management and control of microgrids is becoming a critical challenge. The latest research indicates that current distributed MAS have some limitations for the efficient and optimal management of microgrids [49,79,80,81,82]. On the one hand, to get the overall information about the microgrid dynamic network, the agents should be grouped in clusters, following a certain criterion (for instance, the kind of resource). The absence of such functionality might result in a lack of knowledge about the global status of the microgrid and, therefore, in sub-optimal resource allocation. On the other hand, agents have neither dynamic reorganization nor self-healing capabilities by themselves, which would result in better response to local-failures, microgrid blackouts, agents’ crashes or communication failures.
According to the general needs described above, P2P communication systems offer some interesting features to meet the desired requirements. First, P2P protocols have a high degree of flexibility and can be easily adapted to new applications by means of overlays. Second, the communication system must be highly scalable while maintaining the capability to process the growing volume of data. These characteristics are inherent to P2P systems. However, P2P networks were mainly developed for file sharing and processor cycle sharing. In these applications, the network performance requirements are less critical than the ones of microgrids (see Table 1). Thus, they should be adapted to provide:
An application layer to retrieve data from the system. In conventional DHTs, the nodes store the keys to locate information of the key it is responsible for. Thus, each node should establish its own methods to retrieve this information. To achieve this objective a communication infrastructure based on a stack protocol with an application layer has to be developed according to the goals of the microgrid.
A communication system able to achieve efficient and scalable routing for enhancing network performance, resulting in a highly distributed communication system, with low network traffic and latencies. Conventional DHTs do not consider locality issues. However, locality lets one create clusters with similar interests, reducing the network overhead and latencies.
Therefore, conventional DHTs need to be adapted to the specific case of microgrids. The proposed solutions are broadly explained in Section 5 and Section 6.

5. Proposed Locality-Routing Algorithm

A missing feature in conventional DHTs is the ability to perform complex queries, such as a lookup operations containing regular expressions. One solution to the above problem is to perform the broadcasting in all the nodes (Full Flooding) or only in some of them, which are a part of the DHT (Limited Flooding). These solutions are currently used to many peer to peer applications.
In Reference [78] a structured flooding algorithm is applied to the Chord architecture. In this flooding scheme, Full-Flooding (Full_F), when a node receives a lookup query, it forwards it to all the nodes of its finger table and these nodes recursively retransmit the lookup query to all their respective nodes. The flooding stops after TTL = 4 hops. In this scheme the lookup message will visit each node at least one time to obtain data retrieval. However, in this model locality is not considered.
Typically, different criteria can be adopted to provide locality by creating logical groups that form communities in order to achieve common objectives and goals [83]. This approach is common in limited flooding solutions. With the objective to compare the performance of the flooding algorithms with the one of the proposed solutions, we have adapted the conventional flooding algorithms, by adding the application layer and some specific features of microgrids.
In the case of microgrids, these logical groups are often categorized based on their nodes functionality (loads, generators, storage system, etc.) so that the exchange of messages outside a certain community is not taken into account and thus doesn’t consume communication resources [19]. Therefore, the basic idea of the proposed algorithm is to add network locality to DHTs based on the type of DERs connected to the microgrid and also enabling data retrieval. In this way, to provide locality aware in DHTs systems, the nodes’ finger tables of the traditional Chord model have been modified in order to embed DER functionality and keep the neighborhood of locality in the ID space (Chord space-key is not considered). In this scheme, when a node joins the network, it first identifies the kind of DER that has been associated to it, which may be a critical load (CL), a semi-critical load (SCL), a non-critical load (NCL), a distributed generator (DG) or a storage system (SS). After that, Limited Flooding (Limited_F) is applied. In Limited Flooding a node initiates the search for a specific functionality of the DER node by sending the query to all its neighbors that have the searched prefix. When a node receives the query message, it continues the flooding search until the message time to live (TTL) threshold (in this case TTL = 4). Therefore the lookup message will visit each searched kind of node at least one time to achieve data retrieval.
However, with the main idea of reducing network latencies and unnecessary network traffic, besides the proposed locality finger table, a new Locality-Routing Algorithm (Proposed_LRA) has been developed. The locality-routing algorithm helps know the number of devices and their type (the searched prefix depends on the kind of device: CL, SS, DG, etc.) that are connected to the microgrid to provide an efficient management of the microgrid resources.
Figure 5 shows the flowchart of the LRA algorithm. When the lookup process of the peer-to-peer nodes starts, two threads are generated, either for ingoing or outgoing lookups petitions. The outgoing lookup process is started by a node of the network in order to find the searched prefix or kind of device. For that, a lookup message must be created. The searching message has three main fields: (i) IP_node_source that contains the IP of the node which starts the lookup process; (ii) DER prefix that contains the searched prefix nodes and (iii) Match_Node_List, which is generated as the message progresses in the network and contains a list with the matched nodes. To conform the Match_Node_List field the Match_Search_Node Process starts and therefore the neighboring LRA finger table is going scrolled down. When the prefixes of the nodes in the LRA table match with the searched prefix, the node is added to the Node_Match_List and its IP is added to the Nodes_to_Send_List (only if the node number and its IP were not before in these lists). In addition, it is possible that the node does not contact any neighbor containing the searched prefix in its LRA finger table. Therefore, the successor node must be verified to avoid a break in the searching process.
Once all the searched nodes are found, the searching message is encoded and it will be sent to all the matched nodes. In this way, when an ingoing lookup process is started at the receiving node, it will be able to check the node match list and add its own new matched nodes (from the data stored in the received Match_Node_List) before to send a new query, to avoid sending redundant searching messages. The searching process continues until the source’s node is reached.

6. Proposal of a Layered Communication Architecture and an Application Protocol for MG’s

The efficient integration of DERs in microgrids needs the ability to monitor all units and provide real time control. According to that, the P2P control architecture introduced in Section 2 seems to be a good infrastructure for the exchange of data and control actions among the DERs of microgrids. To create an operational peer able to run in the communication network of a smart microgrid, several software layers need to be built [57,84,85]. The proposed communication architecture is based on a structured decentralized peer-to-peer overlay network and it is depicted in Figure 6.
This solution applies the P2P overlay principles to the field of energy control and monitoring of DERs. Therefore, the proposed communication architecture should be implemented on each one of the nodes where an electric module (such as inverters, transformers, switches and so on) is connected so each node is interconnected with their electric modules and with the communications network. The development of the different layers for implementing the proposed overlay P2P service is described below.

6.1. Network Layer

The network protocols used for this architecture are based on TCP/IP suite model. To improve the smart capacities of a microgrid, it is mandatory the ability to connect a large number of devices and handle a large volume of data in real time, which must be quickly updated to make decisions in the least possible time. Therefore, for the transfer of data the following are needed: (i) a large bandwidth; (ii) high data rate and (iii) a network layer with fast channel response. To accomplish these requirements, TCP/IP is preferred for interconnecting power systems devices, because it provides high connectivity, high bandwidth and quick response [86]. The interconnection network ensures reliable and secure communication between components by employing an internet protocol (IP) and data traffic remains secure and safe because the transport communications protocol (TCP) is connection-oriented. In addition the IEC 61850 via Ethernet standard suggests the use of TCP/IP for efficient communications among microgrid components [87,88].

6.2. P2P Layer

The proposed P2P layer defines two levels or software layers for implementing overlay-P2P services (see Figure 6): On one hand, the DHT-Chord layer provides P2P networking services to achieve the following tasks: (i) resource and network discovery; (ii) session establishment; (iii) routing; (iv) data transfer among nodes and (v) entry/exit management of nodes. To evaluate the network performance, the different algorithms previously developed will be implemented in this level. On the other hand, the second P2P layer is responsible for handling the peer resources information.
In the P2P overlay networking layer, an Application Programing Interface (API) has been developed to run the node functions (i) to (iv) that have been listed in the previous paragraph. In this layer, each peer maintains the connection with their neighbor peers. Moreover, this layer includes neighbor discovery and it has a bootstrap engine for session establishment. For joining and leaving the network there is a join/leave protocol. The overlay networking layer also provides the mechanisms for routing data packets across a large network. In addition, Chord runs a special stabilization algorithm, called stabilize, which is periodically executed by each node every 60 ms to keep the list of predecessors and successors and to confirm that the ring integrity has not been corrupted. Therefore, if a certain node n fails, the nodes whose finger table includes n are responsible for finding the n’s successor. It must be avoided that the failure of n provokes a disruption of the queries that are in process while the system is re-stabilizing. To achieve that, each peer maintains a successor list of its r nearest successor’s node. In this way, when a certain node m notices that its successor has failed, it replaces the failed node by the first alive entry from its successor list. The queries will continue while the algorithm is correcting the finger table entries and the successor list. This allows not significantly increasing the end to end latencies if a node fails.
Besides, the DHT-Data layer establishes how the peers self-organize its resources and also the data management. It is worth noting that the DHT-data layer includes databases and uses the DHT-Chord one for storage of data. The Data layer for each node is defined as described below. On the one hand, peers should be able to react by sending messages in certain situations, for instance, in faulty conditions, when the operative power limits are reached, etc. On the other hand, peers should be continuously providing information about its actual status and also the one of its neighbors. Thus, the data base of each node is composed by two parts, named static and dynamic sides. The static side provides the description of the node itself (kind of DER: CL, SCL, NCL, DG…), the IP address, the Global Unique Identifier (GUID) and the definition of its power limits. The dynamic side periodically collects, from itself and from its neighboring peers, the main power parameters for knowing the global status of the microgrid.

6.3. Application Layer

The application layer is responsible for the processing and data analysis, as well as event management and supervision of the microgrid status. In addition, a specific microgrid communication protocol has been developed and implemented at the application layer for transmitting data among peers. Figure 7 shows an overview of the implemented Microgrid communication packet structure. The message header contains the type of message (ToM), the id device address, and data parameters and values. As Figure 7 shows, there are five ToMs that each peer of the network can send to the others. The function and the size of each ToM are also described.
Figure 8 shows four different architectures that can be used to implement the proposed algorithms. Depending on the used architecture, the performance of the network varies. The four evaluated architectures are: (i) Full-flooding-Architecture (Full_F*); (ii) Limited-flooding-Architecture (Limited_F*); (iii) Simple Query-Response (simple QR) and (iv) Embedded Query-Response (Embedded QR).
In the approaches shown in Figure 8a–c, any peer of the network can launch the primitive QUERY about a specific kind of device to know their operational parameters. The difference between a normal QUERY and a primitive QUERY is that the second one is directly and only sent to the matched nodes. These nodes reply to the source node without transmitting the query through the ring. When the query is launched, the lookup process starts (according to the algorithm executed) and find the nodes of the network that are of the queried type. Then, the resources management is performed. Once the node receives the responses from the different peers, the data exchanges using periodic request-responses queries are executed. These queries occur between queried nodes through the application layer. In Figure 8d the application layer is embedded into the P2P layer, so that both data exchanges and lookup process are launched simultaneously.
To better understand the differences between simple and embedded query response architectures, Figure 9 illustrates the sequence diagram of both architectures. Flooding architectures have not been considered because they are not based on the chosen DHT protocol.
As it can be seen in Figure 9a, a peer sends out a lookup message to the LRA finger table neighbors that match the searched prefix. Thus the neighbor peers propagate the lookup message among the matched nodes that are listed in their LRA finger tables. The lookup message is passed around the ring following this procedure. When the lookup message reaches the source node, it has the information about all the matched nodes. Once it has this information, it is able to send the primitive query directly to the matched nodes without passing through other peers. Figure 9b, shows that the primitive query message is embedded in the lookup message. As a result, both the number of messages that need to be sent and the latency of the system are significantly reduced. Figure 10 shows the used pseudo-code to embed the application layer into the DHT-P2P one.
Figure 10 shows how the application layer has been implemented in the P2P layer. The Manager module manages the overall operations of each node in the P2P network. The peer is initialized by providing a port to listen for incoming connections (serverport), a host address (serverhost) and a node identifier (node). The handlers is a class that contains the different peers’ functions. Using threads the mainloop of a peer begins up a socket that listens for incoming connections from other peers. When an incoming connection is accepted, the server will have a new socket object used to send and receive data on the connection. Then, the main loop calls a separate method to handle communication with this connection in a new thread. When the peer wants to lookup matched nodes, it set the parameters for query (params) and conform the message through invoking the application layer module. The message is passing by reference to the lookup function which allow for embedding the application layer into the DHT layer. The lookup function method uses the LRA routing function to decide where to send the message.
It is worth noting that the proposed communication architecture should be implemented in each one of the nodes where an electric module (such as inverters, transformers, switches and so on) is connected. Therefore, each node is interconnected with the electric modules and also with the communication infrastructure through embedded single board computers (SBC). Moreover, the proposed communication system is adaptable to any kind of microgrid with Ethernet connectivity. In this case, the experimental evaluation by means of virtual machines (VM) has been performed by taking into account that the proposed solutions will be applied in the future to a hybrid AC-DC microgrid [89,90] that is currently under deployment in our laboratory, as Figure 11 shows. The nomenclature used in this figure has been detailed in Table 2.

7. Experimental Results

An experimental setup has been built to evaluate both the performance and behavior of the different lookup algorithms and the communication architecture for control purposes. To achieve this objective, a server with a hypervisor (VMware ESXi) (VMware Inc, Palo Alto, CA, USA) has been used to run 25 virtual machines. Each VM runs Ubuntu 14.04. The VMs are connected to the LAN through a virtual switch limited to 100 Mbps.
The resources of each VM have been limited to 512 MB of RAM and 200 MHz of CPU. This configuration agrees with the one of the embedded systems that we have initially chosen to migrate from virtual to physical machines, so the experimental results that are presented are realistic and valuable to preliminarily validate the proposed solutions. The physical platform that we will finally use is based on the UDOO X86 (UDOO, Burlington, MA, USA), whose computational features are higher than the initially pre-defined for the virtual machines (2 GB of RAM and CPU working at 2 GHz). Therefore, a superior performance can be expected by means of this platform.

7.1. Algorithms Comparison

The performance of the different lookup algorithms has been studied by measuring the number of lookup messages and the lookup latency. Figure 12 presents the total number of lookup messages that have been sent from a source node (which initiates the search) and retransmitted by the intermediate nodes. It may be seen that the number of messages that are required to perform the query process increases as the number of nodes does. However the rate of increase with the flooding algorithms is more abrupt than with LRA. The reason is that flooding algorithms do not use a method to know if the queried peer has been visited before. The proposed Locality-Routing Algorithm uses a routing algorithm that allows knowing what target peers have been previously visited and avoid to send redundant messages, so that the number of messages required is significantly reduced.
Figure 13 shows the evolution of the lookup latency as the number of peers increases. It has been verified that flooding algorithms need much more time to perform lookups than the proposed algorithm. Two reasons justify this result; on one hand, only the target’s peers are visited with the proposed algorithm, so that the number of peers to perform the lookup process is lower. On the other hand, each peer is visited only one time, avoiding redundant visits.

7.2. Communication Architectures Comparison

The performance of the proposed communication architectures has been studied. The evaluated scenario reproduces data exchanges between matched peers using request-response at 100% of the communications load, i.e., the transmitted messages have the Maximum TCP Segment Size (1500 bytes). The criteria for performance evaluation are the following:
  • Total number of messages exchange: this refers to the total number of messages that have to be exchanged among all peers both for lookup of the match peers and for sharing information among them.
  • End-to-end Latency: it contains the information obtained from the total nodes in the network regarding the lookup latency and the processing latency.
In both cases, the number of matched nodes has been taken to be equal to 60% of the total nodes in the network, i.e., for 25 peers, the number of matched nodes will be 15. Figure 14 shows that the number of total messages exchanged with the embedded QR approach is lower than with simple QR even if the same locality-routing algorithm is used. It is worthwhile to point out that simple QR needs an additional application layer to recollect data from the match nodes, while embedded QR doesn’t need this feature because the nodes respond by sending their operational parameters in the same lookup process.
Figure 15 shows that end-to-end delay in embedded QR architecture is lower than the query-response approach because the total delay is mainly produced by the processing delay. The lookup delay can be considered insignificant when the application layer is embedded in the P2P routing layer. The total end to end delay for 25 nodes with embedded QR is around 500 ms while for simple QR is around 650 ms because its lookup latency is around 200 ms (see Figure 13). Thus, the average processing delay per node in embedded QR architecture can be estimated around 20 ms. This means that the average latency to process a TCP packet with maximum segment size in an embedded query-response design (round-trip time delay) is around 20 ms, which meet the network microgrid requirements that were outlined in Table 1.

7.3. Network Performance Analysis

In the previous sections it has been demonstrated that the embedded query-respond is the most efficient communication architecture for control and monitoring of smart microgrids, as well as the latency network requirements are fulfilled. In this section, the network usage and the bandwidth requirements are evaluated. With this goal, periodic query-response queries tests have been carried out, where information is transmitted from each peer at a frequency of 1 Hz and 100% of TCP load.
Figure 16 and Figure 17 show the network usage generated by peers in the network and the bandwidth utilization (per peer), respectively. The total traffic generated by 25 peers in Figure 16 is around 400 kBps. The traffic is much lower than the bandwidth provided by the Ethernet installation (Ethernet’s 100 BaseT twisted pair cable (UTP)), which would possibility the execution of a large number of nodes. Otherwise, the average bandwidth per peer (Figure 17) is around 1200 bytes/s inbound and 1600 bytes/s outbound. These results show that both network usage and average bandwidth meets the distributed control microgrid requirements (Table 1).

8. Discussion of Results, Conclusions and Future Work

In this paper a decentralized communications infrastructure based on peer-to-peer overlay technology for control and monitoring of smart microgrids has been proposed. It has been shown that the peer-to-peer paradigm can be applied to build up the communications layer of microgrids, with a set of potential improvements in terms of robustness, efficiency, scalability and flexibility. A novel scheme of locality-routing algorithm (LRA) based on a DHT-Chord overlay has been developed. The presented experimental results show that the number of lookup messages and, consequently, the lookup latency network, are lower with the proposed LRA scheme than with other DHT-flooding techniques. The network overhead is reduced by reducing the amount of lookup messages. Besides, both DHT-flooding lookups algorithms and LRA algorithm have been integrated into a fully decentralized communication architecture to provide optimal control and monitoring of smarts microgrids. The architecture design has been optimized by embedding the additional application layer with the P2P layer. The results show that the performance of each one of architectures depends strongly of the used lookup algorithm as well as the placement of the communication layers in the architecture. Finally, the embedded model has been tested by using relevant network performance parameters such as latency, network usage and bandwidth. The experimental evaluation shows that the proposed P2P architecture are useful for demanding environments where strict network specifications are required, and also that the communication performance meets the network requirements of smart microgrids.
Despite the advantages of the proposed solution, there are some limitations that can be pointed out and will guide our future research work:
The clusters in the proposed algorithm have been organized around a specific type of DER, such as critical loads, distributed generators, etc. In order to add flexibility to the algorithm, it would be interesting to study the clusters’ classification from other features different that the nature of the DER.
The proposed algorithm creates one overlay layer on top of the physical network. However multiple overlays layers could be created to provide other microgrid services. For example, in a second layer, multicast services could be provided. These services could very useful in the microgrid context. For example, when a set of real-time control signal needs to be distributed to a large set of participants. This issue could be carried out by means of tunnels [91] which can give multicast services access to the end peers. Overlay multicast can also be perceived as topic-based publish/subscribe [92].
The proposed solutions have a certain security degree due to redundant link and self-reconfiguration [19] have been implemented. However, the system is sensitive to malicious attacks such as Sybil or Eclipse [93,94]. Thus additional security procedures should be studied and implemented to reduce the sensitivity to malicious attacks.
The IEC 61850 standard has been widely used in smart substations and it has been also proposed to smart microgrids. It defines priority Generic Object Oriented Substation Events (GOOSE) messages and switching Ethernet for fast and reliable transmissions among DERs. The objective is to improve the transmission efficiency and guarantee that the transmission time of each message is lower than 4 ms [95,96,97]. The protocol stack should implement this communication mechanism.
The proposed solutions have been validated by means of experimental results that have been carried out by means of virtual machines. The achieved results take into account most of the system physical limitations. Therefore, it can be concluded that the proposed solutions are an interesting approach to the problem of communications in smart microgrids. However, additional experiments should be carried out by means of a real microgrid to completely validate the concept. For instance, the proposed network architecture has been dedicated to the P2P protocol. Nevertheless, other network traffic could be also generated in order to evaluate the performance of the proposed techniques in other traffic scenarios. This is one of the future works that should be performed.

Supplementary Materials

Supplementary materials can be found at


This work is supported by the Spanish Ministry of Economy and Competitiveness (MINECO) and the European Regional Development Fund (ERDF) under Grant ENE2015-64087-C2-2R. This work is supported by the Spanish Ministry of Economy and Competitiveness (MINECO) under BES-2013-064539.

Author Contributions

Silvia Marzal, Emilio Figueres and Gabriel Garcerá proposed the main idea, conceived and designed the experiments. Silvia Marzal and Raul González-Medina performed the experiments; Robert Salas-Puente designed the main parts of the Hybrid Microgrid; Robert Salas-Puente and Raul González-Medina review the article; Silvia Marzal, Emilio Figueres and Gabriel Garcerá wrote this paper.

Conflicts of Interest

Authors declare no conflicts of interest.


  1. Reduan, H.; Khyan, J. A comprehensive review of the application characteristics and traffic requirements of a smart grid communications network. Comput. Netw. 2013, 57, 825–845. [Google Scholar]
  2. Dada, J.O. Towards understanding the benefits and challenges of Smart/Micro-Grid for electricity supply system in Nigeria. Renew. Sustain. Energy Rev. 2014, 38, 1003–1014. [Google Scholar] [CrossRef]
  3. Lidula, N.; Rajapakse, A. Microgrids research: A review of experimental microgrids and test system. Renew. Sustain. Energy Rev. 2011, 15, 186–202. [Google Scholar] [CrossRef]
  4. Hussain, A.; Arif, S.M.; Aslam, M.; Shah, S.D.A. Optimal siting and sizing of tri-generation equipment for developing an autonomous community microgrid considering uncertainties. Sustain. Cities Soc. 2017, 32, 318–330. [Google Scholar] [CrossRef]
  5. Dehghanpour, K.; Colson, C.; Nehrir, H. A survey on smart agent-based microgrids for resilient/self-healing grids. Energies 2017, 10, 620. [Google Scholar] [CrossRef]
  6. Palizban, O.; Kauhaniemi, K.; Guerrero, J.M. Microgrids in active network management—Part II: System operation, power quality and protection. Renew. Sustain. Energy Rev. 2014, 36, 440–441. [Google Scholar] [CrossRef]
  7. Shi, W.; Li, N.; Chu, C.C.; Gadh, R. Real-time energy management in microgrids. IEEE Trans. Smart Grid 2017, 8, 228–238. [Google Scholar] [CrossRef]
  8. Deng, R.; Yang, Z.; Chow, M.Y.; Chen, J. A survey on demand response in smart grids: Mathematical models and approaches. IEEE Trans. Ind. Inform. 2015, 11, 570–582. [Google Scholar] [CrossRef]
  9. Kroposki, B.; Basso, T.; DeBlasio, R. Microgrid standards and technologies. In Proceedings of the IEEE Power and Energy Society General Meeting—Conversion and Delivery of Electrical Energy in the 21st Century, Pittsburgh, PA, USA, 20–24 July 2008. [Google Scholar]
  10. Goodarzi, H.M.; Kazemi, M.H. A novel optimal control method for islanded microgrids based on droop control using the ICA-GA algorithm. Energies 2017, 10, 485. [Google Scholar] [CrossRef]
  11. Erol-Kantarci, M.; Kantarci, B.; Mouftah, H.T. Reliable overlay topology design for the smart microgrid network. IEEE Netw. 2011, 25, 38–43. [Google Scholar] [CrossRef]
  12. Youssef, K.H. Optimal management of unbalanced smart microgrids for scheduled and unscheduled multiple transitions between grid-connected and islanded modes. Electr. Power Syst. Res. 2016, 141, 104–113. [Google Scholar] [CrossRef]
  13. Giotitsas, C.; Pazaitis, A.; Kostakis, V. A peer-to-peer approach to energy production. Technol. Soc. 2015, 42, 28–38. [Google Scholar] [CrossRef]
  14. Kazmi, S.A.; Shahzad, M.K.; Khan, A.Z.; Shin, D.R. Smart distribution networks: A review of modern distribution concepts from a planning perspective. Energies 2017, 10, 501. [Google Scholar] [CrossRef]
  15. Amoretti, M. The peer-to-peer paradigm applied to hydrogen energy distribution. In Proceedings of the IEEE Region 8, EUROCON 2009, International Conference (IEEE EUROCON’09), St. Petersburg, Russia, 18–23 May 2009. [Google Scholar]
  16. Almasalma, H.; Engels, J.; Deconinck, G. Peer-to-peer control of microgrids. In Proceedings of the 8th IEEE Benelux IAS/PELS/PES/ Young Researchers Symposium in Electrical Power Engineering, Eindhoven, The Netherlands, 12–13 May 2016. [Google Scholar]
  17. Werth, A.; Andre, A.; Kawamoto, D.; Morita, T.; Tajima, S.; Yanagidaira, D.; Tanaka, K. Peer-to-peer control system for DC microgrids. IEEE Trans. Smart Grid 2016. [Google Scholar] [CrossRef]
  18. Deconinck, G.; Labeeuw, W.; Vandael, S.; Beitollahi, H.; de Craemer, K.; Duan, R.; Belmans, R. Communication overlays and agents for dependable smart power grids. In Proceedings of the 2010 5th International Conference on Critical Infrastructure (CRIS), Beijing, China, 20–22 September 2010. [Google Scholar]
  19. Deconinck, G.; Vanthournout, K.; Beitollahi, H.; Qui, Z.; Duan, R.; Nauwelaers, B.; van Lil, E.; Driesen, J.; Belmans, R. A robust semantic overlay network for microgrid control applications. Archit. Dependable Syst. 2008, 5135, 101–123. [Google Scholar]
  20. Li, D.; Lu, X.; Wang, B.; Su, J.; Cao, J.; Chan, K.C.; Leong, H.V. Delay-bounded range queries in DHT-based peer-to-peer systems. In Proceedings of the 26th IEEE International Conference on Distributed Computing Systems (ICDCS 2006), Lisbon, Portugal, 4–7 July 2006. [Google Scholar]
  21. Wu, W.; Chen, Y.; Zhang, X.; Shi, X.; Cong, L.; Deng, B.; Li, X. LDHT: Locality-aware distributed hash tables. In Proceedings of the 2008 International Conference on IEEE in Information Networking (ICOIN), Busan, Korea, 23–25 January 2008. [Google Scholar]
  22. Sit, E. Storing and Managing Data in a Distributed Hash Table. Ph.D. Thesis, Massachusetts Institute of Technology, Cambridge, MA, USA, 2008. [Google Scholar]
  23. Cheema, A.S.; Muhammad, M.; Gupta, I. Peer-to-peer discovery of computational resources for grid applications. In Proceedings of the 6th IEEE/ACM International Workshop on Grid Computing, Washington, DC, USA, 13–14 November 2005. [Google Scholar]
  24. Fantar, S.G.; Youssef, H. Exploiting locality using geographic coordinates and semantic proximity in Chord. In Proceedings of the 15th IEEE Symposium on Computers and Communications (ISCC), Riccione, Italy, 22–25 June 2010. [Google Scholar]
  25. Sripanidkulchai, K.; Maggs, B.; Zhang, H. Efficient content location using interest-based locality in peer-to-peer systems. In Proceedings of the Twenty-Second Annual Joint Conference of the IEEE Computer and Communications (INFOCOM), San Francisco, CA, USA, 30 March–3 April 2003. [Google Scholar]
  26. Bandara, H.D.; Jayasumana, A.P. Collaborative applications over peer-to-peer systems—Challenges and solutions. P2P Netw. Appl. 2013, 6, 257–276. [Google Scholar] [CrossRef]
  27. Palizban, O.; Kauhaniemi, K. Hierarchical control structure in microgrids with distributed generation: Island and grid-connected mode. Renew. Sustain. Energy Rev. 2015, 44, 797–813. [Google Scholar] [CrossRef]
  28. Khatibzadeh, A.; Besmi, M.; Mahabadi, A.; Haghifam, M.R. Multi-agent-based controller for voltage enhancement in AC/DC hybrid microgrid using energy storages. Energies 2017, 10, 169. [Google Scholar] [CrossRef]
  29. Planasa, E.; Gil-de-Murob, A.; Andreua, J.; Kortabarriaa, I.; de Alegríaa, I.M. General aspects, hierarchical controls and droop methods in microgrids: A review. Renew. Sustain. Energy Rev. 2013, 17, 147–159. [Google Scholar] [CrossRef]
  30. Olivares, D.; Mehrizi-Sani, A.; Etemadi, A.; Canizares, C.; Iravani, R.; Kazerani, M.; Hajimiragha, A.; Gomis-Bellmunt, O.; Saeedifard, M.; Palma-Behnke, R.; et al. Trends in microgrid control. IEEE Trans. Smart Grid 2014, 5, 1905–1919. [Google Scholar] [CrossRef]
  31. Vandoorn, T.L.; Vasquez, J.C.; de Kooning, D.M.; Guerrero, J.M.; Vandevelde, L. Microgrids: Hierarchical control and an overview of the control and reserve management strategies. IEEE Ind. Electron. Mag. 2013, 7, 42–55. [Google Scholar] [CrossRef][Green Version]
  32. Zhou, B.; Li, W.; Chan, K.W.; Cao, Y.; Kuang, Y.; Liu, X.; Wang, X. Smart home energy management systems: Concept, configurations, and scheduling strategies. Renew. Sustain. Energy Rev. 2016, 61, 30–40. [Google Scholar] [CrossRef]
  33. Nampuraja, E. Smart grid management system. Infosys Labs Brief. 2011, 9, 31–38. [Google Scholar]
  34. Ancillotti, E.; Bruno, R.; Conti, M. The role of communication systems in smart grids: Architectures, technical solutions and research challenges. Comput. Commun. 2013, 36, 1665–1697. [Google Scholar] [CrossRef]
  35. Llaria, A.; Terrasson, G.; Curea, O.; Jiménez, J. Application of wireless sensor and actuator networks to achieve intelligent microgrids: A promising approach towards a global smart grid deployment. Appl. Sci. 2016, 6, 61. [Google Scholar] [CrossRef]
  36. Siow, L.K.; So, P.L.; Gooi, H.B.; Luo, F.L.; Gajanayake, C.J.; Vo, Q.N. Wi-fi based server in microgrid energy management system. In Proceedings of the TENCON 2009—2009 IEEE Region 10 Conference, Singapore, 23–26 November 2009. [Google Scholar]
  37. Mao, R.; Li, H.; Xu, Y.; Li, H. Wireless communication for controlling microgrids: Co-simulation and performance evaluation. In Proceedings of the 2013 IEEE Power and Energy Society General Meeting (PES), Vancouver, BC, Canada, 21–25 July 2013. [Google Scholar]
  38. Elkhorchani, H.; Grayaa, K. Smart micro grid power with wireless communication architecture. In Proceedings of the 2014 International Conference on Electrical Sciences and Technologies in Maghreb (CISTEM), Tunis, Tunisia, 3–6 November 2014. [Google Scholar]
  39. Luna, A.C.; Diaz, N.L.; Graells, M.; Vasquez, J.C.; Guerrero, J.M. Cooperative energy management for a cluster of households prosumers. IEEE Trans. Consum. Electron. 2016, 62, 235–242. [Google Scholar] [CrossRef]
  40. Gungor, V.C.; Lu, B.; Hancke, G.P. Opportunities and challenges of wireless sensor networks in smart grid. IEEE Trans. Ind. Electron. 2010, 57, 3557–3564. [Google Scholar] [CrossRef]
  41. Yang, Y.; Lambert, F.; Divan, D. A survey on technologies for implementing sensor networks for power delivery systems. In Proceedings of the 2007 IEEE Power Engineering Society General Meeting, Tampa, FL, USA, 24–28 June 2007. [Google Scholar]
  42. Bayindir, R.; Hossain, E.; Kabalci, E.; Perez, R. A comprehensive study on microgrid technology. Int. J. Renew. Energy Res. 2014, 4, 1094–1107. [Google Scholar]
  43. Colson, C.M.; Nehir, M.H. A review of challenges to real-time power management of microgrids. In Proceedings of the 2009 IEEE Power & Energy Society General Meeting, Calgary, AB, Canada, 26–30 July 2009. [Google Scholar]
  44. Zhao, C.; He, J.; Cheng, P.; Chen, J. Consensus-based energy management in smart grid with transmission losses and directed communication. IEEE Trans. Smart Grid 2016, 8. [Google Scholar] [CrossRef]
  45. Lo, C.H.; Ansaria, N. Decentralized controls and communications for autonomous distribution networks in smart grid. IEEE Trans. Smart Grid 2013, 4, 66–77. [Google Scholar] [CrossRef]
  46. Li, C.; Savaghebi, M.; Guerrero, J.; Coelho, E.A.; Vasquez, J.C. Operation cost minimization of droop-controlled AC microgrids using multiagent-based distributed control. Energies 2016, 9, 717. [Google Scholar] [CrossRef]
  47. Wu, X.; Jiang, P.; Lu, J. Multiagent-based distributed load shedding for islanded microgrids. Energies 2014, 7, 6050–6062. [Google Scholar] [CrossRef]
  48. Kantamneni, A.; Brown, L.; Parker, G.; Wayne, W. Survey of multi-agent systems for microgrid control. Eng. Appl. Artif. Intell. 2015, 45, 192–203. [Google Scholar] [CrossRef]
  49. Lopes, A.L.; Botelho, L. Improving multi-agent based resource coordination in peer-to-peer networks. J. Netw. 2008, 3, 38–47. [Google Scholar] [CrossRef]
  50. Babaoglu, O.; Meling, H.; Montresor, A. Anthill: A framework for the development of agent-based peer-to-peer systems. In Proceedings of the IEEE 22nd International Conference on Distributed Computing Systems, Vienna, Austria, 2–5 July 2002. [Google Scholar]
  51. Cameron, A.; Stumptner, M.; Nandagopal, N.; Mayer, W.; Mansell, T. Rule-based peer-to-peer framework for decentralized real-time service oriented architectures. Sci. Comput. Progr. 2015, 97, 202–234. [Google Scholar] [CrossRef]
  52. Beitollahi, H.; Deconinck, G. Peer-to-peer networks applied to power grid. In Proceedings of the 2nd International Conference on Risks and Security of Internet and Systems (CRISIS), Marrakech, Morocco, 2–5 July 2007. [Google Scholar]
  53. Zhang, C.; Wu, J.; Cheng, M.; Zhou, Y.; Long, C. A bidding system for peer-to-peer energy trading in a grid-connected microgrid. Energy Procedia 2016, 103, 147–152. [Google Scholar] [CrossRef]
  54. Malatras, A. State-of-the-art survey on P2P overlay networks in pervasive computing environments. J. Netw. Comput. Appl. 2015, 55, 1–23. [Google Scholar] [CrossRef]
  55. De Mello, E.R.; van Moorsel, A.; da Silva Fraga, J. Evaluation of P2P search algorithms for discovering trust paths. In Proceedings of the Fourth European Performance Engineering Workshop (EPEW 2007), Berlin, Germany, 27–28 September 2007. [Google Scholar]
  56. Wehrle, K.; Steinmetz, R. Peer-to-peer systems and applications. In Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2005. [Google Scholar]
  57. Lua, E.K.; Crowcroft, J.; Pias, M.; Sharma, R.; Lim, S. A survey and comparison of peer-to-peer overlay network schemes. IEEE Commun. Surv. Tutor. 2005, 7, 72–93. [Google Scholar]
  58. Buford, J.; Yu, H.; Lua, E.K. P2P Networking and Applications; Morgan Kaufmann: Burlington, MA, USA, 2009. [Google Scholar]
  59. Xu, J.; Kumar, A.; Yu, A.X. On the fundamental tradeoffs between routing table size and network diameter in peer-to-peer networks. IEEE J. Sel. Areas Commun. 2004, 22, 151–163. [Google Scholar] [CrossRef]
  60. Nasri, M.; Ginn, H.L.; Moallem, M. Application of intelligent agent systems for real-time coordination of power converters (RCPC) in microgrids. In Proceedings of the 2014 IEEE Energy Conversion Congress and Exposition (ECCE), Pittsburgh, PA, USA, 14–18 September 2014. [Google Scholar]
  61. Stoica, I.; Morris, R.; Karger, D.; Kaashoek, M.F.; Balakrishnan, H. Chord: A scalable peer-to-peer lookup service for internet applications. Comput. Commun. Rev. 2001, 31, 149–160. [Google Scholar] [CrossRef]
  62. Ratnasamy, S.; Francis, P.; Handley, M.; Karp, R.; Shenker, S. A scalable content-addressable network. In Proceedings of the 2001 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, San Diego, CA, USA, 27–31 August 2001. [Google Scholar]
  63. Rowstron, A.; Druschel, P. Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In Lecture Notes in Computer Science; Guerraoui, R., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; pp. 329–350. [Google Scholar]
  64. Zhao, B.Y.; Kubiatowicz, J.; Joseph, A.D. Tapestry: An Infrastructure for Fault-Tolerant Wide-Area Location and Routing; Technical Report UCB-CSB-01–1141; University of California: Oakland, CA, USA, 2001. [Google Scholar]
  65. Joung, Y.J.; Yang, L.W.; Fang, C.T. Keyword search in DHT-based peer-to-peer networks. IEEE J. Sel. Areas Commun. 2007, 25. [Google Scholar] [CrossRef]
  66. Jafari, N.; Sharifi, F. A comprehensive study of the resource discovery techniques in peer-to-peer networks. P2P Netw. Appl. 2015, 8, 474–492. [Google Scholar]
  67. Stoica, I.; Morris, R.; Liben-Nowell, D.; Karger, D.R.; Kaashoek, M.F.; Dabek, F.; Balakrishnan, H. Chord: A scalable peer-to-peer lookup protocol for internet applications. IEEE/ACM Trans. Netw. 2003, 11, 17–32. [Google Scholar] [CrossRef]
  68. Gottron, C.; König, A.; Steinmetz, R. A survey on security in mobile peer-to-peer architectures—Overlay-based vs. underlay-based approaches. Future Internet 2010, 2, 505–532. [Google Scholar] [CrossRef]
  69. Seyedi, Y.; Karimi, H.; Guerrero, J.M. Centralized disturbance detection in smart microgrids with noisy and intermittent synchrophasor data. IEEE Trans. Smart Grid 2016. [Google Scholar] [CrossRef]
  70. Youssef, T.A.; Elsayed, A.T.; Mohammed, O.A. Data distribution service-based interoperability framework for smart grid testbed infrastructure. Energies 2016, 9, 150. [Google Scholar] [CrossRef]
  71. Safdar, S.; Hamdaoui, B.; Cotilla-Sanchez, E.; Guizani, M. A survey on communication infrastructure for micro-grids. In Proceedings of the 9th International Wireless Communications and Mobile Computing Conference (IWCMC 2013), Sardinia, Italy, 1–5 July 2013. [Google Scholar]
  72. Xin, L.; Xia, H.; Chien, A. Validating and scaling the microgrid: A scientific instrument for grid dynamics. J. Grid Comput. 2004, 2, 141–161. [Google Scholar]
  73. Kansal, P.; Bose, A. Bandwidth and latency requirements for smart transmission grid applications. IEEE Trans. Smart Grid 2012, 3, 1344–1352. [Google Scholar] [CrossRef]
  74. International Electrotechnical Commission (IEC). IEC 61850–7-420 Communication Networks and System in Power Utility Automation—Part 7-420: Basic Communication Structure—Distributed Energy Resources Logical Nodes; IEEE: Piscataway, NJ, USA, 2009. [Google Scholar]
  75. International Electrotechnical Commission (IEC). IEC 61850–5 Communication Networks and Systems in Substations—Part 5: Communication Requirements for Functions and Device Models; IEEE: Piscataway, NJ, USA, 2004. [Google Scholar]
  76. Institute of Electrical and Electronics Engineers (IEEE). IEEE Standard Communication Delivery Time Performance Requirements for Electric Power Substation Automation; IEEE Standards Association: Piscataway, NJ, USA, 2005; pp. 1–24. [Google Scholar]
  77. Kuo, M.T.; Lu, S.D. Design and implementation of real-time intelligent control and structure based on multi-agent systems in microgrids. Energies 2013, 6, 6045–6059. [Google Scholar] [CrossRef]
  78. Ktari, S.; Hecker, A.; Labiod, H. Structured flooding search in Chord overlays. In Proceedings of the GIIS’09 Second International Conference on Global Information Infrastructure Symposium, Hammemet, Tunisia, 23–26 June 2009. [Google Scholar]
  79. Del Val, E.; Rebollo, M.; Botti, V. Enhancing decentralized service discovery in open service-oriented multi-agent systems. Auton. Agents Multi-agent Syst. 2014, 28, 1–30. [Google Scholar] [CrossRef]
  80. Di Mauro, D.; Augusto, J.C.; Origlia, A.; Cutugno, F. A framework for distributed interaction in intelligent environments. In Proceedings of the 2017 European Conference on Ambient Intelligence, Málaga, Spain, 26–28 April 2017. [Google Scholar]
  81. Howell, S.; Rezgui, Y.; Hippolyte, J.L.; Jayan, B.; Li, H. Towards the next generation of smart grids: Semantic and holonic multi-agent management of distributed energy resources. Renew. Sustain. Energy Rev. 2017, 77, 193–214. [Google Scholar] [CrossRef]
  82. Frey, S.; Diaconescu, A.; Menga, D.; Demeure, I. A generic holonic control architecture for heterogeneous multiscale and multiobjective smart microgrids. ACM Trans. Auton. Adapt. Syst. 2015, 2, 9. [Google Scholar] [CrossRef][Green Version]
  83. Miers, C.C.; Simplicio, M.A.; Gallo, D.S.; Carvalho, T.C. A taxonomy for locality algorithms on peer-to-peer networks. IEEE Lat. Am. Trans. 2010, 8, 323–331. [Google Scholar] [CrossRef]
  84. Porsinger, T.; Janik, P.; Leonowicz, Z.; Gono, R. Modelling and optimization in microgrids. Energies 2017, 10, 523. [Google Scholar] [CrossRef]
  85. Holzapfel, S.; Wacker, A.; Weis, T.; Wander, M. An architecture for complex P2P systems. In Proceedings of the 2012 IEEE Consumer Communications and Networking Conference (CCNC), Las Vegas, NV, USA, 14–17 January 2012. [Google Scholar]
  86. Muhammad, A.; Muhammad, Z.; Muhammad, A.; Amjad, U. TCP/IP based intelligent load management system in micro-grids network using MATLAB/Simulink. Energy Power Eng. 2012, 4, 283–289. [Google Scholar]
  87. Bani-Ahmed, A.; Weber, L. Microgrid communication: State of the art and future trends. In Proceedings of the 3rd International Conference on Renewable Energy Research and Applications, Milwaukee, WI, USA, 19–22 October 2014. [Google Scholar]
  88. Shin, I.J.; Song, B.K.; Eom, D.S. International Electronical Committee (IEC) 61850 mapping with constrained application protocol (CoAP) in smart grids based European telecommunications standard institute Machine-to-Machine (M2M) environment. Energies 2017, 10, 393. [Google Scholar] [CrossRef]
  89. Piagi, P.; Lasseter, R.-H. Autonomous control of microgrids. In Proceedings of the 2006 IEEE Power Engineering Society General Meeting, Montreal, QC, USA, 18–22 June 2006. [Google Scholar]
  90. Loh, P.C.; Li, D.; Chai, Y.K.; Blaabjerg, F. Autonomous operation of hybrid microgrid with AC and DC subgrids. IEEE Trans. Power Electron. 2013, 28, 2214–2223. [Google Scholar] [CrossRef]
  91. Wauters, T.; de Turck, F.; Develder, C. Overlay networks for smart grids. Available online: (accessed on 24 August 2017).
  92. Eugster, P.T.; Felber, P.A.; Guerraoui, R.; Kermarrec, A.M. The many faces of publish/subscribe. ACM Comput. Surv. 2003, 35, 114–131. [Google Scholar] [CrossRef]
  93. Wang, L. Attacks against peer-to-peer networks and countermeasures. In Proceedings of the T-110.5290 Seminar on Network Security, Helsinki, Finland, 11–12 Desember 2006. [Google Scholar]
  94. Jaideep, G.; Battula, B.P. Survey on the present state-of-the-art of P2P networks, their security issues and counter measures. Int. J. Appl. Eng. Res. 2016, 11, 616–620. [Google Scholar]
  95. Ali, I. High-speed peer-to-peer communication based protection scheme implementation and testing in laboratory. Int. J. Comput. Appl. 2012, 38, 16–24. [Google Scholar] [CrossRef]
  96. Yoo, B.; Yang, S.; Yang, H.; Kim, W.; Jeong, Y.; Han, B.; Jang, K. Communication architecture of the IEC 61850-based micro grid system. J. Electr. Eng. Technol. 2011, 6, 605–612. [Google Scholar] [CrossRef]
  97. Dou, X.; Quan, X.; Wu, Z.; Hu, M.; Yang, K.; Yuan, J.; Wang, M. Hybrid multi-agent control in microgrids: Framework, models and implementations based on IEC 61850. Energies 2015, 8, 31–58. [Google Scholar] [CrossRef]
Figure 1. Simplified scheme of a microgrid.
Figure 1. Simplified scheme of a microgrid.
Energies 10 01275 g001
Figure 2. (a) Centralized; (b) Distributed and (c) Pure P2P Communication Architectures.
Figure 2. (a) Centralized; (b) Distributed and (c) Pure P2P Communication Architectures.
Energies 10 01275 g002
Figure 3. Numerical analysis for comparison of lookup P2P algorithms.
Figure 3. Numerical analysis for comparison of lookup P2P algorithms.
Energies 10 01275 g003
Figure 4. Chord protocol operation.
Figure 4. Chord protocol operation.
Energies 10 01275 g004
Figure 5. Flowchart of proposed LRA algorithm.
Figure 5. Flowchart of proposed LRA algorithm.
Energies 10 01275 g005
Figure 6. Proposed stack protocol of an operational peer for a generic DHT peer communication architecture.
Figure 6. Proposed stack protocol of an operational peer for a generic DHT peer communication architecture.
Energies 10 01275 g006
Figure 7. Developed Packet Frame Structure.
Figure 7. Developed Packet Frame Structure.
Energies 10 01275 g007
Figure 8. Different approaches with a specific DHT peer algorithm over of the proposed communication architecture.
Figure 8. Different approaches with a specific DHT peer algorithm over of the proposed communication architecture.
Energies 10 01275 g008
Figure 9. Time-space diagram showing the lookup and query-response processes for the (a) simple and the (b) embedded communication architectures.
Figure 9. Time-space diagram showing the lookup and query-response processes for the (a) simple and the (b) embedded communication architectures.
Energies 10 01275 g009
Figure 10. DHT layer pseudo-code. Detail of embedded application layer.
Figure 10. DHT layer pseudo-code. Detail of embedded application layer.
Energies 10 01275 g010
Figure 11. Conceptual scheme of the experimental hybrid microgrid with eight nodes.
Figure 11. Conceptual scheme of the experimental hybrid microgrid with eight nodes.
Energies 10 01275 g011
Figure 12. Comparison of the number of lookup messages sent by the different algorithms.
Figure 12. Comparison of the number of lookup messages sent by the different algorithms.
Energies 10 01275 g012
Figure 13. Comparison of lookup latency with the different algorithms.
Figure 13. Comparison of lookup latency with the different algorithms.
Energies 10 01275 g013
Figure 14. Comparison of total number of messages exchanged by different communication architectures.
Figure 14. Comparison of total number of messages exchanged by different communication architectures.
Energies 10 01275 g014
Figure 15. Comparison of end-to-end packet network delay by different communication architectures.
Figure 15. Comparison of end-to-end packet network delay by different communication architectures.
Energies 10 01275 g015
Figure 16. Network usage (in Kbps) per peer on a network of N = 25 peers.
Figure 16. Network usage (in Kbps) per peer on a network of N = 25 peers.
Energies 10 01275 g016
Figure 17. Average bandwidth utilization (inbound and outbound) per peer on a network of N = 25 peers.
Figure 17. Average bandwidth utilization (inbound and outbound) per peer on a network of N = 25 peers.
Energies 10 01275 g017
Table 1. MG application and network requirement as stated by IEC 61850 and IEEE 1646 standards.
Table 1. MG application and network requirement as stated by IEC 61850 and IEEE 1646 standards.
ApplicationNetwork Requirements
Demand response14–100 Kbps500 ms–several minutes
Distributed energy resources and storage9.6–56 Kbps20 ms–15 s
Distributed management9.6–100 Kbps100 ms–2 s
Table 2. Nomenclature.
Table 2. Nomenclature.
PPVnPower supplied by the photovoltaics (PV) arrays
PPVPV power generated by the DC MG
PDCLoadOverall power consumed by the DC loads
PGridPower injected from the HY MG to the grid
PILC_ACPower injected from the DC bus to the AC bus by the InterLinked Converter (ILC), measured at the AC side of the ILC
PILC_DCPower injected from the DC bus to the AC bus by the ILC, measured at the DC side of the ILC
PESSBattery bank charge power seen from the DC bus
PACLoadOverall power consumed by the AC loads
PAC_DGsPower supplied by the AC DGs
VGridRMS value of the grid voltage
VDCDC bus voltage
Back to TopTop