Energy, Carbon and Renewable Energy: Candidate Metrics for Green-Aware Routing?

There are all sort of indications that Internet usage will go only upwards, resulting in an increase in energy consumption and CO2 emissions. At the same time, a significant amount of this carbon footprint corresponds to the information and communication technologies (ICT) sector, with around one third being due to networking. In this paper we have approached the problem of green networking from the point of view of sustainability. Here, alongside energy-aware routing, we have also introduced pollution-aware routing with environmental metrics like carbon emission factor and non-renewable energy usage percentage. We have proposed an algorithm based on these three candidate-metrics. Our algorithm provides optimum data and control planes for three different metrics which regulate the usage of different routers and adapt the bandwidth of the links while giving the traffic demand requirements utmost priority. We have made a comparison between these three metrics in order to show their impact on greening routing. The results show that for a particular scenario, our pollution-aware routing algorithm can reduce 36% and 20% of CO2 emissions compared to shortest path first and energy-based solutions, respectively.


Introduction
In this modern era of advancements, the ever-growing information and communication technologies (ICT) sector plays an important role. Improvement in technologies, the availability of inexpensive and extreme capacity optical transmission, increasing popularity of streaming services and Internet of things technology have increased the amount of usage of the Internet exponentially and there is no indication that this course will change. With the increasing dependency on ICT services, the need for generating electricity has also increased substantially in order to power the ICT infrastructure, which is a significant contributor in producing carbon dioxide, a leading greenhouse gas (GHG). Global GHG emissions data shows that the highest contributor to global CO 2 emissions in 2015 was electricity production. Surprisingly, all the ICT devices and infrastructure, excluding smartphones, consumes 8% of the total electricity production and is projected to reach 14% by 2020 [1]. Similar claims are also stated into European Commission's digital agenda report in 2013: "ICT products and services are currently responsible for 8 to 10% of the EU's electricity consumption and up to 4% of its carbon emissions" [2].
Among the various ICT sectors, network architectures and devices are one of the highest energy consumers. According to [3], network devices and architecture are responsible of 29% of the total energy consumption by ICT. The main reason behind this is the increase of Internet users all over one part of the network topology can have an impact all over the network. The authors of [8] used a centralized approach in order to provide zoning evaluation of voltage distribution. Moreover, a centralized system is always preferable for globally monitoring the system according to network policies and service requirements [9]. The controller receives the traffic information from the network, and based on the geographical position of the nodes, the values of environmental metrics like CO2 emission and non-renewable energy usage are received. Then the controller, based on the optimizing algorithm, provides a data plane and a control plane for the network. The detail description of how a control plane and a data plane are designed will be described in Section 3. Figure 1 gives an overview of the system. The paper is organized as follow: Section 2 explains the motivation in the light of related work and sustainable green networking and summarizes the objective of our work. Section 3 contains the concept of EAR and PAR and a description of centralized sustainable routing. Section 4 contains the formalization of the problem and the overview of the heuristic function. In S5 we have a case study and the performance evaluation of the algorithm and lastly Sections 6 and 7 contain the future work and conclusions of the work, respectively.

Related Work
For the last decade or so, several approaches are made in order to achieve green networking. The authors of [10] provided a detail discussion on the different research trends in green networking. Based on three different indicator/metrics three different objective functions are formulated, which are used as a fitness function for a genetic algorithm which is providing a set of data and control plane as output. These planes are providing operational topology for the network but by focusing either on reducing energy consumption, or total carbon emission or non-renewable energy usage percentage respectively.
We have considered our solution from the point of view of a software defined network (SDN). SDN is fairly a new network architecture where the data plane and control plane are separated in order to have more control over the network. It integrates a controller which orchestrates the underlying forwarding hardware. This centralized approach offers mechanisms allowing network operators to have a global point of view which is suitable for our scenario where a single change in one part of the network topology can have an impact all over the network. The authors of [8] used a centralized approach in order to provide zoning evaluation of voltage distribution. Moreover, a centralized system is always preferable for globally monitoring the system according to network policies and service requirements [9]. The controller receives the traffic information from the network, and based on the geographical position of the nodes, the values of environmental metrics like CO 2 emission and non-renewable energy usage are received. Then the controller, based on the optimizing algorithm, provides a data plane and a control plane for the network. The detail description of how a control plane and a data plane are designed will be described in Section 3. Figure 1 gives an overview of the system. The paper is organized as follow: Section 2 explains the motivation in the light of related work and sustainable green networking and summarizes the objective of our work. Section 3 contains the concept of EAR and PAR and a description of centralized sustainable routing. Section 4 contains the formalization of the problem and the overview of the heuristic function. In S5 we have a case study and the performance evaluation of the algorithm and lastly Sections 6 and 7 contain the future work and conclusions of the work, respectively.

Related Work
For the last decade or so, several approaches are made in order to achieve green networking. The authors of [10] provided a detail discussion on the different research trends in green networking. Research works like [11,12] focus only turning off links and line cards whereas many other papers like [13][14][15] focus on turning off both links and nodes. Authors in reference [4] proposed a novel heuristic, GreenTE, which maximizes the power savings and satisfies the quality constraints including link utilization and packet delay. The proposed a heuristic solution that is proactive in terms of path calculation. They have defined a set of previously calculated paths and they chose the solution from one of them. Authors in references [12,13] emphasize least link and least flow without link adapting. They have used a greedy algorithm to find out the least used link or devices with the least flow and then turn them off. They did reactive path calculation. This means that based on the heuristic several paths are being calculated instantly and the best one for the particular scenario is chosen. Works like [15], provide a clear idea about how an optical core network behaves in terms of energy consumption. On the other hand [16][17][18] all talked about implementing ALR in order to reduce energy consumption. Other works like [12,13,[19][20][21] all have considered energy aware routing. Authors in reference [20] provided a greedy algorithm-based heuristic and along with links they have also focused on reducing the energy consumption by turning off nodes. Nevertheless, in their solution they have not considered ALR. In current times alongside these solutions various other solutions have been proposed using SDN in order to benefit from the global knowledge of the central controller. Authors in reference [14] proposed an incremental greedy algorithm-based solution where a controller dynamically adds nodes and links to the initial small topology network in order to satisfy user demand requirements. Authors in reference [22] also proposed an energy efficient solution combining energy aware routing with SDN-based Ethernet networks. There are also a few works which have taken a different approach towards green networking. Authors in references [23][24][25] all have tried to achieve green networking in data centers by using renewable energy. Authors in references [23,24] changed the destination node based on availability of the renewable energy and on the other hand in [25], alongside with renewable energy, other criteria like geographical load balancing and server speed scaling are considered. The authors of [26,27] proposed a similar eco-friendly routing idea using renewable energy where they have used clustering to choose a cluster head with most renewable energy and then choose the member node accordingly. Authors in reference [26] is for wireless networks and [27] is for IP networks. However, one thing is common in the abovementioned works is that all of them consider green network that same as the energy efficient network. They have all tried actively or passively to reduce the energy consumption in order to get an energy efficient network. However, even if energy has a link to sustainability issues, its direct impact on the environment in terms of air pollution and Earth's resources is not explicitly specified. Therefore, in our work we have introduced two different green metrics-CO 2 emission and non-renewable energy usage percentage-and make a comparison between them and energy efficiency approaches.

Sustainability and Green Networking
The authors of [28] explained a very important point by mentioning that achieving sustainability is not a straightforward approach of saving resources like energy. Even if from technical point of view, it might seem direct approach, in fact the economical and behavioral perspective of the society needs to be included when trying to achieve a sustainable solution. In [29], they have explained that, in order to build a sustainable system, it is necessary to determine the shared interests of both business and society's point of view. In fact, sustainability is a unified concept which considers environmental, social, and economic aspects as three fundamental pillars. They indicate that, viable development requires the understanding of nature, society and economic capital or colloquially speaking the planet, people, and profits [30][31][32]. Therefore, in order to design a sustainable green networking architecture, it is very important to somehow consider all the three pillars. In this paper, we have proposed a centralized model of generating sustainable control and data planes considering the three pillars. The details of the model are described in Section 3.2.

Summarizing the Goal
We have discussed a few works focusing on renewable energy, but almost all of them are focused on topology-aware routing, which is different from energy-aware routing. To the best of our knowledge, carbon emissions are not fully considered as a routing metric. In this regard, the goal of this paper is to compare the performance of these metrics and how algorithms (optimizing both routing and green policies) need to be adapted. Performance is going to be assessed in a centralized sustainable routing model.

Concept of EAR and PAR
In order to get a clear view of the proposed system, it is better to start with EAR and PAR. While implementing green networking, one of the most common and effective solutions is to shut down as much network equipment as possible while keeping the operational network, which is also known as energy-aware routing (EAR). This drop in the number of active devices reduces the energy consumption which has in fact a positive impact on the carbon footprint. The fundamental difference between a classical routing approach like shortest path first (SPF) and EAR is that SPF considers the number of hops and tries to reach the destination as quickly as possible without focusing on the energy consumption of the network, whereas, EAR tries to reduce the overall energy consumption of the network, which might result a longer path for some demands and similar length paths for other demands.
In this paper we have talked about a different type of routing strategy which is pollution-aware routing (PAR). The main concept of PAR is to route the demands with different paths based on environmental factors such as carbon emission factors and the non-renewable energy usage percentage of a node and try to reduce the targeted goal of reducing the CO 2 emission or the usage percentage of non-renewable energy of the total network architecture. This routing is applicable only for geographically diverse, distributed network architectures where every node has different means of energy production. The main motivation behind PAR is the variation of values of CO 2 emission in terms of energy production methods as shown in Figure 2. Values are taken from [33].

Summarizing the Goal
We have discussed a few works focusing on renewable energy, but almost all of them are focused on topology-aware routing, which is different from energy-aware routing. To the best of our knowledge, carbon emissions are not fully considered as a routing metric. In this regard, the goal of this paper is to compare the performance of these metrics and how algorithms (optimizing both routing and green policies) need to be adapted. Performance is going to be assessed in a centralized sustainable routing model.

Concept of EAR and PAR
In order to get a clear view of the proposed system, it is better to start with EAR and PAR. While implementing green networking, one of the most common and effective solutions is to shut down as much network equipment as possible while keeping the operational network, which is also known as energy-aware routing (EAR). This drop in the number of active devices reduces the energy consumption which has in fact a positive impact on the carbon footprint. The fundamental difference between a classical routing approach like shortest path first (SPF) and EAR is that SPF considers the number of hops and tries to reach the destination as quickly as possible without focusing on the energy consumption of the network, whereas, EAR tries to reduce the overall energy consumption of the network, which might result a longer path for some demands and similar length paths for other demands.
In this paper we have talked about a different type of routing strategy which is pollution-aware routing (PAR). The main concept of PAR is to route the demands with different paths based on environmental factors such as carbon emission factors and the non-renewable energy usage percentage of a node and try to reduce the targeted goal of reducing the CO2 emission or the usage percentage of non-renewable energy of the total network architecture. This routing is applicable only for geographically diverse, distributed network architectures where every node has different means of energy production. The main motivation behind PAR is the variation of values of CO2 emission in terms of energy production methods as shown in Figure 2. Values are taken from [33]. It can be clearly seen that for same amount of electricity production the CO2 emissions can vary a lot. Therefore, in PAR, instead of reducing the energy consumption of the network architecture, the environmental metrics are considered. The first metric is CO2 emissions. As different countries use different techniques for producing electricity, they all have different carbon emission factors (CEFs). Therefore, in this case, the routing will be based on the CEF. The paths for the demands will be chosen in order to reduce the carbon emissions of the total network architecture. Similarly, here we have It can be clearly seen that for same amount of electricity production the CO 2 emissions can vary a lot. Therefore, in PAR, instead of reducing the energy consumption of the network architecture, the environmental metrics are considered. The first metric is CO 2 emissions. As different countries use different techniques for producing electricity, they all have different carbon emission factors (CEFs). Therefore, in this case, the routing will be based on the CEF. The paths for the demands will be chosen in order to reduce the carbon emissions of the total network architecture. Similarly, here we have considered a second kind of PAR with the second green metric NRE, where nodes will be chosen based on renewable energy (wind, solar, hydro) percentage. The idea is to decrease the overall amount of non-renewable energy usage of the network architecture while fulfilling the demands. Both find the paths for the demands in order to facilitate their targeted goal without considering the path size or amount of energy consumption. The example depicted in Figure 3 will give a better grasp of the concept.
based on renewable energy (wind, solar, hydro) percentage. The idea is to decrease the overall amount of non-renewable energy usage of the network architecture while fulfilling the demands. Both find the paths for the demands in order to facilitate their targeted goal without considering the path size or amount of energy consumption. The example depicted in Figure 3 will give a better grasp of the concept. Figure 3a shows a topology with 12 nodes. For this example, we have considered CO2 emissions as a factor for PAR. For simplicity there are only two demands. One is from X to Z and the second one is from Y to Z. Again, to avoid complexity, the sum of the two demand requirements is less than any available links' bandwidth. Three different colors are used instead of values for the carbon emission factor. Green means the node has the lowest amount of CEF, orange means moderate and red means it has the highest amount of CEF. A node is grey colored if it is turned off. Figure 3b shows the topology for SPF. The lowest number of hops are considered for each demand. Regardless of the nodes CEF or even without considering the total energy consumption, Figure 3c shows how EAR will act in this scenario. It will choose a common link in order to reduce the number of active nodes and links. It will reduce one node and two links compared to SPF. However, this will also not be concerned with the CO2 emissions. In Figure 3d we have a different topology compared to Figure  3b,c. It didn't look for the shortest path or lowest number of nodes and links. Rather it chooses a topology where the total amount of CO2 emissions will be low. It will not consider the total number of turned on nodes and links if the overall CO2 emissions are on the low side.

Centralized Sustainable Routing
In this paper, we have also proposed a sustainable solution for the problem of achieving 'green networking'. As explained in Section 2, a solution cannot be sustainable without addressing the three pillars of sustainability. In the section above, EAR and PAR are described. Our solution, depicted in Figure 4, integrates all these elements in order to address the 'green networking' problem. Through our solution we would like to investigate the performance of the proposed approach (PAR) and the available approach (EAR). We have designed the solution keeping in mind the three pillars of sustainability, namely economy, environment and society. Figure 4 shows the architecture of the proposed system. In the following part, how the three pillars are integrated into our solution is described briefly. Firstly, our system takes traffic demand from users and the topology of the network Figure 3a shows a topology with 12 nodes. For this example, we have considered CO 2 emissions as a factor for PAR. For simplicity there are only two demands. One is from X to Z and the second one is from Y to Z. Again, to avoid complexity, the sum of the two demand requirements is less than any available links' bandwidth. Three different colors are used instead of values for the carbon emission factor. Green means the node has the lowest amount of CEF, orange means moderate and red means it has the highest amount of CEF. A node is grey colored if it is turned off. Figure 3b shows the topology for SPF. The lowest number of hops are considered for each demand. Regardless of the nodes CEF or even without considering the total energy consumption, Figure 3c shows how EAR will act in this scenario. It will choose a common link in order to reduce the number of active nodes and links. It will reduce one node and two links compared to SPF. However, this will also not be concerned with the CO 2 emissions. In Figure 3d we have a different topology compared to Figure 3b,c. It didn't look for the shortest path or lowest number of nodes and links. Rather it chooses a topology where the total amount of CO 2 emissions will be low. It will not consider the total number of turned on nodes and links if the overall CO 2 emissions are on the low side.

Centralized Sustainable Routing
In this paper, we have also proposed a sustainable solution for the problem of achieving 'green networking'. As explained in Section 2, a solution cannot be sustainable without addressing the three pillars of sustainability. In the section above, EAR and PAR are described. Our solution, depicted in Figure 4, integrates all these elements in order to address the 'green networking' problem. Through our solution we would like to investigate the performance of the proposed approach (PAR) and the available approach (EAR). We have designed the solution keeping in mind the three pillars of sustainability, namely economy, environment and society. Figure 4 shows the architecture of the proposed system. In the following part, how the three pillars are integrated into our solution is described briefly. Firstly, our system takes traffic demand from users and the topology of the network from the Internet service provider (ISP) as input. Both users and ISPs are the stakeholders for our solution. ISP has a direct relation with the profit, whereas users are mainly concerned about the quality of service (QoS) like throughput requirements. We also take geography-based environmental information such as carbon emission factor (CEF) and non-renewable energy usage percentage (NRE) as input. This information is one of the key factors for providing a green outcome. These environmental parameters are acting as the second pillar of sustainability-environment. Lastly, our system provides a user of this system the ability to choose to select a solution focusing on either reducing energy consumption or CO 2 emissions or non-renewable energy usage percentage (the value of Φ in Equation (8)). The social aspect of sustainability focuses on balancing the needs of the individual with the needs of the group. By giving the choosing ability to the Internet service providers, it integrates the social entity of the sustainability into our system. from the Internet service provider (ISP) as input. Both users and ISPs are the stakeholders for our solution. ISP has a direct relation with the profit, whereas users are mainly concerned about the quality of service (QoS) like throughput requirements. We also take geography-based environmental information such as carbon emission factor (CEF) and non-renewable energy usage percentage (NRE) as input. This information is one of the key factors for providing a green outcome. These environmental parameters are acting as the second pillar of sustainability-environment. Lastly, our system provides a user of this system the ability to choose to select a solution focusing on either reducing energy consumption or CO2 emissions or non-renewable energy usage percentage (the value of Φ in Equation (8)). The social aspect of sustainability focuses on balancing the needs of the individual with the needs of the group. By giving the choosing ability to the Internet service providers, it integrates the social entity of the sustainability into our system. For example, in case of the GÉANT network, any environmental strategy or law defined and imposed by European Union can be implemented in the network by tuning the optimizing equation. After getting these inputs our system provides a solution based on the equation derived in the previous section. It uses a genetic algorithm as the heuristic algorithm in order to solve the optimization problem. The heuristic algorithm is described in the following section. After that an optimum data and control plane are provided to implement the solution into the topology. These data and control planes are calculated based on the inputs given to the system. The main goal of these planes is to minimize the given objective function while fulfilling the QoS constraint. Alongside the solution topology settings, these planes also provide vital information about energy consumption, CO2 emissions and non-renewable energy usage percentage of the topology. This information is essential, especially for the people pillar of sustainable development because it provides clear information about the impact of network users on the environment, which by default provides them a guideline to act accordingly. This kind of feedback always make the people in society more involved in the system which is a prerequisite for creating a complete sustainable system. Our proposed solution is a sustainable solution towards achieving green networking. The heuristic algorithm used for optimization is explained in the next section. For example, in case of the GÉANT network, any environmental strategy or law defined and imposed by European Union can be implemented in the network by tuning the optimizing equation. After getting these inputs our system provides a solution based on the equation derived in the previous section. It uses a genetic algorithm as the heuristic algorithm in order to solve the optimization problem. The heuristic algorithm is described in the following section. After that an optimum data and control plane are provided to implement the solution into the topology. These data and control planes are calculated based on the inputs given to the system. The main goal of these planes is to minimize the given objective function while fulfilling the QoS constraint. Alongside the solution topology settings, these planes also provide vital information about energy consumption, CO 2 emissions and non-renewable energy usage percentage of the topology. This information is essential, especially for the people pillar of sustainable development because it provides clear information about the impact of network users on the environment, which by default provides them a guideline to act accordingly. This kind of feedback always make the people in society more involved in the system which is a prerequisite for creating a complete sustainable system. Our proposed solution is a sustainable solution towards achieving green networking. The heuristic algorithm used for optimization is explained in the next section.

Problem Definition
Let us assume a network topology is defined by a directed graph G = (V, E), where V is set of vertices i ∈ {1, 2, . . ., |V| = n} and E is set of edges (i, j), which are 2-elements subsets of V. The adjacency matrix is a square |V| × |V| matrix A, such that the element A i, ∈ {1,0} has the value of 1 when an edge exists between two vertices i and j, and 0 when there is no edge. The C matrix contains the capacity of each edge that means C i j represents the capacity of the link between node i and j. Capacity is the only part of G which is controllable. Now let's come to the dynamic part of the network which is traffic demands. Let's suppose K is a set of traffic demands K = {1, 2, . . . , k}. A demand consists of three information source (s k ), destination (d k ) and throughput requirement (λ k ) expressed in b/s.
In the framework of Software-Defined Networking (SDN) and more generally speaking network automation, we would consider that the topology is redundant, which means that several paths (i.e., more nodes and links are added-offline-to the physical topology) are available. However, only those paths will be considered which are satisfying both throughput demand and the capacity constraint of the links. The data plane matrix is denoted by Π, which includes all the forwarding decision for all flows over all nodes. Each row of the matrix is dedicated for one demand. Π k,v returns the node v + 1, which is an adjacent node of v into path P k (Π k, v = v + 1) or null set if the path does not include node v. The path ends when it returns d k . A path P k = s k , Π k,s k , Π k,Π k,s k , ..., d k then can be retrieved.
As mentioned earlier, different paths are available for every pair of source and destination therefore for each demand set several data planes are possible. The data plane should respect the following constraint for a demand i: This ensures that only the links that are in the topology are considered and no link will be assigned more throughput than its capacity. Furthermore, the control plane, denoted by matrix Γ, is used to define the controllability of the link capacity (i.e., ALR mechanism). The capacity can be switched to different discrete values from the maximum capacity defined by C to 0. Zero is considered when both interfaces of a link are turned off. Initially, Γ = C and later from the second flow C is replaced by Γ in Equation (1). The value Γ i,j represents the final link capacity required to fulfill every demand requirement. Figure 5 shows an example of how data and control planes work. Here as a topology a portion of the GÉANT Network is used and let's consider that the topology has three different levels of bandwidth: 10, 100 and 1000 Mbps, respectively. For three demands K = 1000 Mbps capacity one. Both data plane and control planes are vital for calculating our objective functions that will be discussed in the next part.
will be look like Figure 5b,c. There are several possible solutions. The data plane is created based on the chosen paths and the control plane is created based on the data plane. Even though all the demands have a bandwidth requirement of less than 100 Mbps, we can see in the control plane, edge {1,12} (link 4 on Figure 5) has a final capacity of 1000 Mbps. In fact, this edge is included in the solution path of both demand-1 and demand-3 which have a combined throughput demand of 103 (8 + 95) Mbps. A link capacity of 100 Mbps is hence not anymore enough and as only three levels of bandwidth, namely 10, 100 and 1000 Mbps are considered, it will be replaced by a 1000 Mbps capacity one. Both data plane and control planes are vital for calculating our objective functions that will be discussed in the next part.

Modelling of the Objective Functions
We have three different criteria that need to be minimized, namely energy consumption, CO 2 emissions and the non-renewable energy usage. We have formalized the cost of data and control planes based on the objective function. However, as mentioned earlier, the carbon emissions and non-renewable energy both can be used as a multiplicative factor with the energy model. Therefore, here the energy model is described first. For calculating the energy consumption, a simple model from [34] is used where energy consumption model of a Cisco Ethernet switch is provided. Similar models can also be found in the literature [8,35,36], even for different devices. To simplify, it is assumed here that energy consumption of a node v, follows the linear model: where ε v in Watt-hour (Wh), α is the static power consumption (when no interfaces are activated), δ v,w = 1 if C v,w > 0 and 0 else (to know if the interface to the neighbor w is used) and β v,w is the power consumption of the interface port itself. The model consists of two parts: a fixed/static one that must be considered each time the node is turning on and a dynamic one that depends on the control plane.
As we want to include two green strategies (turn off nodes when not required and ALR) into the model without hampering QoS constraint, in order to imply the first strategy, two binary variables are included: A node v is used in the data plane if it either forwards ( k∈K Π k,v > 0) and receives (v ∈ Π) traffic or it is used as a mediatory node for a selected path. Now, in the case of ALR, the second policy that we have considered, the matrix Γ contains the decisions (Figure 5c), such the power consumption β v,w will now vary according to the link capacity. Hence, the objective function in terms of data and control planes while satisfying the demands requirements (elementary paths, throughput, links capacity limitations) is as follows: This objective function depicts the problem of minimizing the energy consumption of overall system. Now, let's consider the environmental factors. Suppose, Λ is a set of carbon emission factors (CEFs) for all the nodes. Where, Λ = Λ 1, Λ 2 , . . . , Λ v . And ψ is a set of non-renewable energy usage percentage (NREs) for all the nodes. ψ = ψ 1, ψ 2 , . . . , ψ v . Here one thing to notice is that for all, the goal is to reduce it.
As mentioned earlier, that both environmental parameters are a multiplicative factor of the original energy consumption model, therefore, objective function can be rewritten for CEF and NRE respectively in the following way: The goal is to provide data and control planes which will reduce the energy consumption or carbon emission or non-renewable energy percentage of the overall system. Then from Equations (5)-(7) a generalized version of the objective function for system would be: where, Φ v = 1 or Λ v or ψ v depending on the minimizing criteria (i.e.,: energy consumption, carbon emission, non-renewable energy percentage) of the system.

Description of the Heuristic Function
This optimization problem falls into the multi-commodity flow class which is known as NP-hard problems and a heuristic algorithm is required to find the solution. Therefore, in order to solve our optimization problem formulated in the previous section we have used a genetic algorithm (GA) as our heuristic algorithm. It is an evolutionary algorithm which is inspired by the genetic processes of biological organisms. In [37][38][39] it is shown how this heuristic can be applied for solving NP-complete optimization problem related to networking like finding shortest path or designing an industrial Ethernet infrastructure. A GA has crossover and mutation which help the problem to not to get stuck in local minima which makes it robust than any other enumerative approaches. In the following part different parts of the GA are described in brief.
The crucial part of applying GA to a problem is to design a chromosome according to the problem. Later these will create a population pool. Each chromosome represents a single candidate solution of the search space. In our case, the data plane is converted into a chromosome as a data plane contains a solution set for each demand following the capacity constraint. Therefore, in order to build a chromosome pool, we have created a set of data planes. To do that, we have used another heuristic which is randomized depth first search (RDFS). RDFS randomly selects the next node for going into next level into the tree. Simple DFS is unable to create a diverse solution set. Therefore, RDFS is used to find the path for each demand and then that path is added to create the solution set. RDFS considers the current state of the topology capacity wise. Then, all the solutions that are found, follow the capacity constraint. Once we have a data plane then we can convert the data plane into chromosome. If we have a set of demand k = {1, 2, 3, . . . , k} and if a topology has E number of edges {1, 2, 3, . . . , E} then in a chromosome consists of k*E number of 0's and 1's. Where 0 represents this link is not used for fulfilling this demand and 1 represents this link is turned on for fulfilling this demand. Figure 6 shows the structure of the chromosome. This chromosome is actual representation of the example with three demands that we discussed in Section 4.1. In our initial population pool, we have always included one solution achieved by using SPF. Therefore, a population pool with a size of N has N-1 chromosome gathered by RDFS and the other one is using SPF. single demand, the whole strings of bit of a demand is replaced. There are two kinds of mutation percentage. The first one indicates how many of the chromosomes which are previously shortlisted by selection process will go through the mutation process. However, from a chromosome, how many demands will be selected for mutation is denoted by the second one. For example, mutation-1 equals to 10% means 10 of each 100 chromosomes are selected for mutation operation and mutation-2, 1% means 1 of each 100 demands from a chromosome which is selected by mutation-1 will be chosen randomly for mutation operation.  For crossover operation we have decided to randomly select half of the bits of strings from one chromosome and rest half from another chromosome instead of using one cut or two cuts where chromosomes are divided into two equal parts or three equal parts and change the parts in between them respectively. By doing single crossover operations the process is generating two new chromosomes. In our case mutation is also done demand wise. Instead of a single bit values for a single demand, the whole strings of bit of a demand is replaced. There are two kinds of mutation percentage. The first one indicates how many of the chromosomes which are previously shortlisted by selection process will go through the mutation process. However, from a chromosome, how many demands will be selected for mutation is denoted by the second one. For example, mutation-1 equals to 10% means 10 of each 100 chromosomes are selected for mutation operation and mutation-2, 1% means 1 of each 100 demands from a chromosome which is selected by mutation-1 will be chosen randomly for mutation operation.
After crossover and mutation, the most important part of genetic algorithm is the fitness function which will after each iteration discard few of the solutions and promote the rest of the solutions for the next round. In our case we have three kind of fitness function based on our objective functions. Based on this fitness function score, different solutions are chosen for different cases.
After running GA, the next part is to convert the chromosome into a data plane and then control a plane so that controller can make appropriate changes in the topology. Even though each chromosome indicates that if a link is used for a demand or not, the direction of the flow of the traffic is not defined. Therefore, the algorithm needs to take care the information regarding direction, when converting from chromosome to data plane and then control plane. The algorithm to retrieve the data plane Π and the control plane Γ is given in Algorithms 1 and 2 respectively. It simply corresponds to the following equation: Algorithm 2 finds the minimal allocation satisfying the throughput demand gathered by the data plane. To note that the green policy, consists of shutdown v switches when δ v = 0 and output ports w of switches v when δ v.w = 0 and decreasing capacities of output ports w of switches v when Γ v,w < C v,w . Finally, Algorithm 3 shows the overall algorithm for implementing GA. Here eval() function is evaluating the fitness of the chromosome. After crossover and mutation, the most important part of genetic algorithm is the fitness function which will after each iteration discard few of the solutions and promote the rest of the solutions for the next round. In our case we have three kind of fitness function based on our objective functions. Based on this fitness function score, different solutions are chosen for different cases.
After running GA, the next part is to convert the chromosome into a data plane and then control a plane so that controller can make appropriate changes in the topology. Even though each chromosome indicates that if a link is used for a demand or not, the direction of the flow of the traffic is not defined. Therefore, the algorithm needs to take care the information regarding direction, when converting from chromosome to data plane and then control plane. The algorithm to retrieve the data plane Π and the control plane Γ is given in Algorithms 1 and 2 respectively. It simply corresponds to the following equation: Algorithm 2 finds the minimal allocation satisfying the throughput demand gathered by the data plane. To note that the green policy, consists of shutdown v switches when ∏ = 0 and output ports w of switches v when ∏ . = 0 and decreasing capacities of output ports w of switches v when Г , , .
Finally, Algorithm 3 shows the overall algorithm for implementing GA. Here eval() function is evaluating the fitness of the chromosome. Algorithm 1. Retrieval of data and control plane from chromosome.

Algorithm 2.
Computation of the minimum control plane from given data plane.
Algorithm 1. Retrieval of data and control plane from chromosome.

Algorithm 2.
Computation of the minimum control plane from given data plane.

Experiment Setup
For evaluating the performance of the system, the topology of the GÉANT network infrastructure has been considered. The GÉANT project operates the European network for the research and education community. GÉANT has 22 nodes and each node of GÉANT represents a different country. Because of that, the values of CEF and NRE will be different for each node. The network structure and the traffic has been taken from SNDlib [40] published in 2005. However, in order to keep the data compatible with the network equipment as it is now using 100-gbps optical fiber, network's overall traffic has also increased significantly. From [41,42] it can be concluded that, during the last decade or so, traffic has increased almost 28 times. In order to keep up with the times, the real data is been multiplied by the increased traffic coefficient. Experiments are conducted with a set of 25 randomly generated demands. The demand sizes are randomly distributed. Network detail summary can be seen in Table 1. For power measurement, values are taken from [5,43]. For the links, power consumption of the optical transmission networking (OTN) layer interfaces per port has been considered. Power measurement values are given in Table 2. The values of carbon emission factor and non-renewable energy usage percentage have been taken from [44][45][46]. The details of all the national characteristics in terms of CEF and NRE are shown in Appendix B Table A2. Table 2. Power consumption values for node and links.

40-Gbps port 160
100-gbps port 360 Lastly, the genetic algorithm has five factors, namely run time, population size, crossover rate, and two types of mutation rate. In order to run the experiment, we have tuned these values. In our work, we have fine-tuned these parameters using design of experiments. For this paper we are using the following values for the parameters of genetic algorithm in all the experiments: run time 30 s, population size 40, crossover rate 40%, mutation-1 rate 80% and mutation-2 rate 4%. The process of selecting the parameter values is briefly described in Appendix A.

Result Analysis
A set of experiments has been conducted to analyze the performance of the three different objective functions. The results are compared with shortest path first (SPF) with the same green policies that our algorithm has been considered. Twenty five demands are randomly taken for the experiment as we want to see how the algorithm uses the two green policies according to the objective function. This is because, if the number of demands are higher, then all the nodes of the topology will be involved as either source or destination, then all the nodes must be kept turned on and there will be no scope to analyze the performance of the algorithm in terms of first green policy where nodes will be shut down when not in use. Figure 7 shows the graph which gives the comparison of three different approaches. As we can see, every algorithm outperforms other two when their minimizing factor has been chosen.
are able to reduce them by 31% and 20%, respectively. Even though our EAR (E_GA) has outperformed SPF by a large margin in all three aspects, in terms of reducing CO2 emissions both pollution-based algorithms performs better. In fact, when the optimizing function focuses on reducing CO2 emissions CO2_GA reduces CO2 emissions by almost double compared to E_GA. Lastly, while for reducing non-renewable energy usage NRE_GA performs better than the other two. NRE_GA reduces the non-renewable energy usage by 28% compared to the shortest path. Table B2 in Appendix B shows the all obtained results for SPF and the other three algorithms. In contains country-wise consumption energy values, CO2 and non-renewable energy for each algorithm in order to understand the results more clearly. All these results raise the question, as the goal of green networking is to reduce the carbon footprint from the environment, then how much effective will designing a green network by only considering energy efficiency be. Even if a solution focusing on reducing CO2 emissions consumes more energy but if the total CO2 emissions of the system are lower that means the system is consuming more green energy than brown energy (energy sources producing a higher amount of CO2). Based only on the consumption values used in the paper, Table 3 provides an annual emission of energy CO2 and non-renewable energy. Here, at first, we have shown that if no green policy is used then what the total emissions will be and then the consumption values for shortest path first and our three algorithms are given. These values only reflect the emissions due to the devices and links. However, the actual amount will be much higher considering the building, cooling and many other criteria. Figure 8 gives the different topologies for different solutions. The first one in the top left gives the topology for SPF. As is clearly visible, the maximum number of nodes and links are used in this topology. Now if we analyze the differences between different topologies there are some interesting changes in the topology. The energy-based solution has not used node six and node sixteen which are Switzerland and France, and node 14 which is The Netherlands is used. For energy-based solution every node is considered as same as every node consumes same amount of energy, whereas, for the CO2-based solution the emissions could be completely different for the same number of nodes. As for our example, The Netherlands emits 130 times more CO2 gm per kw-h compared to Switzerland and six times more compared to France which has huge impact on the overall result. In the same way, node-2 (Poland) is used by E_GA whereas both of the PAR solutions avoid Poland as it has huge CEF and NRE usage percentage. These choices made by E_GA might reduce the overall energy consumption of the network, but at a cost of a high carbon emission. Now, if we compare the solutions of the two PAR-based options, as mentioned above they both have avoided node-2 (Poland), however, for NRE_GA a majority of the traffic went through node-4 (Germany) and node-16 (France) is completely avoided, whereas for CO2_GA a substantial amount of traffic went through France, even though it has very low carbon footprint. It is because NRE_GA When energy is considered as the minimizing factor, that means for our EAR with GA (E_GA), we have maximum energy savings compared to the other two approaches. EAR saves around 24% of energy consumption compared to SPF for this scenario, whereas both approaches of PAR (CO_GA and NRE_GA) save around 18% and 23% energy consumption, respectively. However, when comes to reducing the CO 2 emissions, both CO 2 _GA and NRE_GA reduce an appreciable amount compared to E_GA. CO 2 _GA reduces 36% of the CO 2 emissions compared to SPF, whereas, NRE_GA and E_GA are able to reduce them by 31% and 20%, respectively. Even though our EAR (E_GA) has outperformed SPF by a large margin in all three aspects, in terms of reducing CO 2 emissions both pollution-based algorithms performs better. In fact, when the optimizing function focuses on reducing CO 2 emissions CO 2 _GA reduces CO 2 emissions by almost double compared to E_GA. Lastly, while for reducing non-renewable energy usage NRE_GA performs better than the other two. NRE_GA reduces the non-renewable energy usage by 28% compared to the shortest path. Table A3 in Appendix B shows the all obtained results for SPF and the other three algorithms. In contains country-wise consumption energy values, CO 2 and non-renewable energy for each algorithm in order to understand the results more clearly. All these results raise the question, as the goal of green networking is to reduce the carbon footprint from the environment, then how much effective will designing a green network by only considering energy efficiency be. Even if a solution focusing on reducing CO 2 emissions consumes more energy but if the total CO 2 emissions of the system are lower that means the system is consuming more green energy than brown energy (energy sources producing a higher amount of CO 2 ).
Based only on the consumption values used in the paper, Table 3 provides an annual emission of energy CO 2 and non-renewable energy. Here, at first, we have shown that if no green policy is used then what the total emissions will be and then the consumption values for shortest path first and our three algorithms are given. These values only reflect the emissions due to the devices and links. However, the actual amount will be much higher considering the building, cooling and many other criteria.  Figure 8 gives the different topologies for different solutions. The first one in the top left gives the topology for SPF. As is clearly visible, the maximum number of nodes and links are used in this topology. Now if we analyze the differences between different topologies there are some interesting changes in the topology. The energy-based solution has not used node six and node sixteen which are Switzerland and France, and node 14 which is The Netherlands is used. For energy-based solution every node is considered as same as every node consumes same amount of energy, whereas, for the CO 2 -based solution the emissions could be completely different for the same number of nodes. As for our example, The Netherlands emits 130 times more CO 2 gm per kw-h compared to Switzerland and six times more compared to France which has huge impact on the overall result. In the same way, node-2 (Poland) is used by E_GA whereas both of the PAR solutions avoid Poland as it has huge CEF and NRE usage percentage. These choices made by E_GA might reduce the overall energy consumption of the network, but at a cost of a high carbon emission. only focuses on non-renewable energy percentage and as France uses nuclear power plants for producing electricity, it has very high non-renewable energy usage percentage. For example, for the same topology, let's consider a demand from node 5 to node 14. There are several possible solutions. However, we will consider only the solutions which are shortest that means lowest number of hops. Now, there are four different possible paths. Table 4 gives a summary of all four shortest paths with carbon emission factors and non-renewable energy usage percentages. Now, here only the NRE and CEF values of intermediate nodes are considered. Based on the NRE_GA the optimal solution would be path-3 (with Italy and Germany) even though this path has one of the highest carbon emission factors, whereas, the optimal solution based on CEF would be path-2 but as this path has a maximum amount of NRE percentage therefore this will not be chosen by NRE_GA.    Now, if we compare the solutions of the two PAR-based options, as mentioned above they both have avoided node-2 (Poland), however, for NRE_GA a majority of the traffic went through node-4 (Germany) and node-16 (France) is completely avoided, whereas for CO 2 _GA a substantial amount of traffic went through France, even though it has very low carbon footprint. It is because NRE_GA only focuses on non-renewable energy percentage and as France uses nuclear power plants for producing electricity, it has very high non-renewable energy usage percentage. For example, for the same topology, let's consider a demand from node 5 to node 14. There are several possible solutions. However, we will consider only the solutions which are shortest that means lowest number of hops. Now, there are four different possible paths. Table 4 gives a summary of all four shortest paths with carbon emission factors and non-renewable energy usage percentages. Now, here only the NRE and CEF values of intermediate nodes are considered. Based on the NRE_GA the optimal solution would be path-3 (with Italy and Germany) even though this path has one of the highest carbon emission factors, whereas, the optimal solution based on CEF would be path-2 but as this path has a maximum amount of NRE percentage therefore this will not be chosen by NRE_GA. Based on this analysis of the three algorithms, it can be said that even though the outcome of the algorithm depends on the demand set, it is very much a possibility that in order to achieve a sustainable solution focusing only on energy efficiency might not be a wise decision. Our result shows that for this particular scenario both of our algorithms outperform the energy-based solution in terms of reducing carbon emissions. Specially CO 2 _GA reduces carbon emission by more than 20% compared to energy-based solution which is definitely a non-negligible amount.

Sustainability Discussion
The three pillars of sustainability are a great means of explaining the complete sustainability problem. We have included all the three pillars into our system in order to provide a balanced sustainable solution. Our system provides the information about the throughput of different parts of the network. Whichever objective function is selected it gives an insight about the three parameters for measuring the status of the green networking, namely energy consumption, CO 2 emissions and percentage of non-renewable energy usage, but as the goal of green networking is to reduce the carbon emissions, therefore the objective function minimizing the CO 2 has utmost importance. As we can see, CO 2 _GA reduces CO 2 emissions by around 8% compared to our E_GA and by 40% compared to SPF with two green policies. These are definitely non-negligible values, however, a more tangible example might give a better understanding of the situation. For our scenario, if we compare the result of SPF and CO 2 _GA from Table 3, in one year it can save up to 248 tons of CO 2 . This is in fact equivalent to the carbon emissions if a person were to make a round trip to JFK in New York from CDG in Paris by plane 381 times. Even when comparing with E_GA, the carbon savings is equivalent to 172 round trips by plane for the same source and destination. If we consider the savings in terms of money, even if we consider an average rate for cost of electricity production, our all three can save more than 25% of the cost compared to SPF. Lastly, the proposed system respects both the user traffic demand and the objective function choice and provides a data and control plane and hence integrates the social attribute of the sustainability.

Future Works
In our work we have proposed a solution which gives the required control plane and data plane for implementing it on an SDN platform. However, changes in the demand set result in a new topology and the new topology will be disseminated by the controller to the network. This dissemination process also requires energy, and hence has a carbon footprint. Therefore, for the future work we are planning to add a penalty system that will determine if a change in the network topology is necessary or not with a change in the demand set. In fact, this will control the frequency of network changes to an optimum level. Additionally, in this work all the nodes are equally treated whereas, that is not the case in reality. Our equation is flexible enough to add this variance into the system. Therefore, next step will be to adjust the equation accordingly and run the experiment for variable values for the node. Additionally, the carbon emissions and the non-renewable energy usage rate vary all the time. This is due to weather conditions, to the period of the day (night/day), to energy demand peaks requiring using for example more coal for producing electricity. Then, the idea is to include in the fitness function these variations in adding temporal factor in order to get more realistic results. In the same way, energy costs and its evolution could be integrated in the fitness function in order to cover the economy pillar of sustainable development. Finally, these variations (energy costs, carbon emitted for producing energy, etc.) could be estimated by predictive models for efficiently managing the changes of network topology in considering the penalty explained above.

Conclusions
In this work, we have proposed a sustainable method for greening the Internet. We have introduced the term "pollution-aware routing" and it has been added to the classical energy-aware routing. While proposing this new term and introducing a new way of looking the problem of green networking we have at the same time tried to answer whether the question concerning only energy efficiency while trying to achieve green networking is enough or not. We have two different approaches, one works based on the carbon emission factor of the nodes whereas the second one works based on the non-renewable energy usage percentage. We show that our pollution-aware routing can have significant impact on CO 2 emissions compared to energy-aware solutions. Our system provides a holistic approach towards attaining sustainability. At the same time, it provides a control plane and data plane so that the system can be implemented in a centralized system using SDN.

Conflicts of Interest:
The authors declare no conflict of interest.

Appendix A
As our heuristic algorithm is based on genetic algorithm, we have to do an extensive set of experiments for tuning the parameters. Five parameters are needed to be adjusted which are time, population size, crossover percentage, mutation-1 percentage and lastly mutation-2 percentage. We have selected few fixed values for each parameter for design of experiment. Each value of each parameter is preliminarily tested before being used in DoE. In Table A1, different level of values for each parameter is given. All the parameters are tuned in order to maximize objective function. Running the full factorial experiment on our parameters using the above mentioned settings, provides us significant information about the parameter tuning. For both 25 demands and 400 demands DoE shows similar kinds of patterns. From these experiments we have achieved an optimum setting for all the genetic algorithm parameters which are, run time 30s, population size 40, crossover rate 40%, mutation-1 rate 80% and mutation-2 rate 4%. Table A2 shows the national characteristics in terms of carbon emission factor and non-renewable energy usage factor.  Table A3 shows the obtained results for each countries' consumption of energy CO 2 and non-renewable energy for our scenario.