Our method is focused on the efficient estimation of the decision-making of when to turn on and turn off the maximum number of devices in sets
A, S, and
R simultaneously to achieve a maximum amount of energy savings in a determined slot of time (
ti) in a period of time
T = {
t1,
t2, …,
tn}. This is a complex optimization problem that must consider traffic engineering in the overall WiFi network. For that reason, it is key to plan throughput monitoring in the network. At Level 2, the
are turned off in
, if they will not communicate any data or synchronization signals. Simultaneously, at Level 3, the
to which the
Ai are connected will be turned off. To do that, our method must cluster the APs of
A that can be turned off, finding the maximum of
j (for each cluster) for which a maximum number of APs can be turned off. The range of
S limits the number of clusters. Similarly (at level 4), our method must cluster S limited to the range of
R. As an example, in
Fig. 2, we show a particular clustering for sets
A, S, and
R. We have considered a period of 10 slots of time (
T = {
t1,
t2,
t3,
t4,
t5,
t6,
t7,
t8,
t9,
t10 } ).
A1,
A2, and
A3 are turned off in
t4 and
t5. They could be clustered (cluster 1), and because they are connected to
S1 (which is connected to
R1), all those devices can be turned off in
t4 and
t5 simultaneously. The same applies for
A4,
A5, and
A6 (cluster 2), connected to
S2. At
t5,
t6, and
t7,
S2 can be turned off. Following the same criteria,
R1 could be turned off in
t5.
The monitorization could guide the implementation of efficient roaming policies in the AP (
Bousia et al. 2016) to balance the traffic efficiently, allowing to turn off idle APs in
A during the maximum amount of time, implement VLANs (
Ho et al. 2014) in the
S and
R to separate the traffic, or to implement a network slicing (
Jalalian et al. 2023) using software-defined networking (SDN) (
Ashtari et al. 2022). We focus on the method to implement the maximum amount of energy savings, presenting the main ideas of our method, formalizing the energy savings, and presenting experimental results that refute our formal model. Our model optimizes energy savings by determining when to turn on and off APs of
A, SWs of
S, and Rs or
R, influenced by network traffic. The main elements of our method are the following:
i.
Planning the placement of APs in the geographical area of the WiFi network, organized in a rectangular manner (by rows and columns), to ensure coverage and a minimum permanent bandwidth to the wireless terminals.
ii.
Designing the control algorithms for turning on and turning off APs of A according to the traffic A’ carries.
iii.
Using a machine learning clustering technique to maximize energy savings in SWs and Rs.
3.2. Algorithms for turning on and turning off APs of A
Once the planning of the location of the APs in the dense WiFi network is carried out, we analyze the control of turning on and off the APs of A. We next present general conditions that guide the turning on and turning off of the APs of A and the code of two algorithms for achieving those actions by applying the idle cycling technique.
Let
the list (
L) of APs in the crowns of a particular AP (
A′
j (
j = 1 .
s' ) ) of
A′. Some elements of
L will be turned on just when some traffic conditions occur on
A′
j. Let
Tt (
A′
j ) a Boolean function that is true when the traffic carried by
A′
j exceeds a certain amount (it is congested or close to being congested (
Youngseok Lee et al. 2002)) during some previously established number of
ti. When that condition occurs, the traffic will be balanced on a determinate list of
Ai of
L. That list (
Lp) consists of the APs in the path from
A′
j and their one hop neighbors (
). After that, a wireless device that was disconnected from the
A′
j now must be connected to the
Ai. That process produces a forced handoff (
Wang et al. 2017) that has been well studied, and efficient traditional solutions exist for it (
Suárez et al. 2010). For that reason, it is necessary to characterize the trajectory of wireless terminals and efficiently assign the APs of the WiFi network so that the handoff is achieved efficiently. Moreover, the process to turn on and execute the handover must be very fast.
Figure 6 shows the
Turn_On_APs algorithm, which is executed asynchronously when
A′
j is congested for a certain amount of time. The complexity of that algorithm is dependent on
Nl and the control messages among the
A′
j and the APs of
L. The smaller the
Nl, the faster the
Turn_On_APs algorithm. The protocol derived from this algorithm, in charge of finding
Lp and managing messages between APs, must also be very fast. After some established number of
ti, that protocol will turn on the APs in
Lp.
Figure 7 shows the congested
A'1. The
, and
L is the list of APs in the crowns for
l = 1 and
l = 2. The algorithm found that only
A'4 and then the yellow APs (
Lp) of
L were turned on. Let us note that
A'1 remains turned on, but it will not be congested because the traffic was balanced.
If an
A'j has not carried traffic during some established number of
ti, it is supposed that it will not continue carrying traffic during another established number of
ti, and then it will be turned off. Once the protocol for turning off APs detects the above condition, the algorithm
Turn_Off_APs will determine the APs in the crowns that have not carried traffic during some established number of
ti and proceed to turn them off. An alternative consists of only testing the list (
L) previously turned on with the algorithm
Turn_On_APs. Let
Tc (
Ak) be a Boolean function that is true when the traffic carried by
Ak is null in an established number of
ti. The
Turn_Off_APs algorithm uses the idle cycling technique to turn off APs when the traffic transported through them is null. In
Fig. 8, the code of that algorithm is shown.
The simultaneous application of Algorithm
Turn_On_APs could provoke interferences with the APs of
A that are simultaneously in the crowns of APs of
A′ and that are one-hop neighbors. Let us illustrate that with the example of
Fig. 9. Let us suppose that the algorithm is simultaneously executed in the one-hop neighbors:
A′1,
A′2, and
A′9. Then, the
Ac is in the crowns (
l = 2) of
A′1 and
A′2, while the
Ad is in the crowns (
l = 2) of
A′1 and
A′9. This interference can be solved by applying SDN (
Montazerolghaem 2022), installing a WiFi controller in each AP that communicates with a network controller using the OpenFlow (
Shi et al. 2021) protocol, and using the corresponding network application. We do not focus on SDN in this work. For that reason, we consider in the list (
L) only the APs of
A that do not provoke interferences. In our example, those APs are
Aa and
Ab.
3.3. Energy savings formal model
Energy savings (ES) are specified considering the following parameters (
eq. 1): (a) the amount of ES due to one AP in
A (ES
A): the amount of electric power (kWh) that is not consumed in the APs in
A while they remain turned off. (b) The amount of ES due to the Ss (ES
S): the amount of electric power that is not consumed in the switches while they remain turned off. (c) The amount of ES due to the Rs (ES
R): the amount of electric power that is not consumed in the routers s while they remain turned off.
Associated with each parameter of
eq. 1, we make the following considerations and parameters:
•
The number of devices that can be turned on and turned off at the different levels of the architecture of the network in
Fig. 1. That is, the number of
(
z), the number (
s) of
, and the number (
u) of
. Those parameters vary along
T and the higher
s and
u, the higher ES. That occurs when the maximum number of network devices is turned off along
T.
•
Let Ta, Ts, and Tr be the maximum amount of time the Ai, Si, and Ri, respectively, can be turned off. The longer the Ta, Ts, and Tr, the greater the ES.
•
Let PA, PS, and PR be the supply power of Ai, Si, and Ri, respectively. The higher the PA, PS, and PR, the greater the ES.
Let us consider a set of slots of time
t = {
t1,
t2, …,
tn}; we calculate the parameters
Ta, Ts, and
Tr in base to
eq. 2:
where
Tai (
i = 1 .
p),
Tsh (
h = 1 .
s), and
Trk (
k = 1 .
r), with
p,
s,
r ≤
n, are the decomposition of
Ta, Ts, and
Tr in different values of a series mapped (bijective correspondence) on
t = {
t1,
t2, …,
tn}. The objective is to find the maximum range of the set of
t in which simultaneously the above values of
Tai, Tsh, and
Trk maximize ES in
eq. 3:
The complexity of optimizing our objective is that the Ta, Ts, and Tr depend on a high number of physical and communication parameters. We focus on the calculation of Tai, Tsh, and Trk. We define three binary matrices (AE (pxn), SE (sxn), and RE (rxn)) having n columns corresponding to the range (n) of t. In each column is coded the state of the elements of A, S, and R: 0 if the element is turned off and 1 if the element is turned on. The number of rows of the different matrices is the range of the sets A, S, and R, correspondingly.
Matrix
AE is obtained by algorithm
Turn_On_APs and Algorithm
Turn_Off_APs. Thus:
The value of
Tai is calculated by adding the values of the row
i of
AE in which the
Ai was turned off. That is:
Matrix
SE can be obtained by clustering some rows of
AE. The determination of the set of rows that can be clustered is done considering the set of rows associated with different
Ai connected to a
Sh. Thus:
The value of
Tsh is calculated in the same way as
Tai. That is:
The same rationale is done for matrix
RE but clustering different elements of
R. Thus:
An important question is how the grouping of the Ai is determined, i.e., how the SE can be calculated from the AE. To answer that question, we consider two general parameters, but we do not theoretically solve the problem because, in general, any clustering algorithmic method can be used to solve it.
Let
sehj, (
j = 1, ...,
n ) be the leader of a group
h, and let be
, the rest of the elements of the group (
contains the rows of
AE that belong to that group excluding the row of the leader). Then,
That is, the row
h of the matrix
SE register, for
n slots of
t, a 0 if all the clustered
Ai were turned off and 1 in the contrary case. Thus,
Ts account for the number of intervals of time that all the
Ai of the group were turned off and the
Sh could be turned off. The objective is to maximize
Ts. But it is not the only parameter to optimize; we also need a parameter that accounts for the number of intervals of time (
tj) in which the
Ai of the group consumed a different amount of energy (several of them were turned on and the rest were turned off). Let dissimilitude (
D) be that parameter. To calculate that parameter from matrix
AE, we define the following vector:
That is, a scalar value that is the sum of all the elements of vector
. It follows directly that when the group has only one element, then
Dh = 0. Minimizing:
allows us to obtain clusters of Ai that that consume the same energy in as much time as possible.
The same rationale is used for the calculation of RE from SE. Thus, our optimization problems consist of:
In a period T:
Maximize: Ta, Ts, and Tr.
Minimize: for matrices RE ( rxn ) from SE ( sxn ).
Finally, if we properly dimension the value of T that allows us to find repetitive traffic patterns along the time, we could calculate AE and use it for successive near-future T. We will continuously continue calculating in real time the behavior of traffic to feedback our optimization process with actual traffic traces.
Let us now continue with the example of
Fig. 3, in which
, and matrix
AE is:
We analyze three possible groupings for calculating matrix
SE, and present the values of
Tsh and
Ts:
a.
Leader: sehj = 1 (row 1 of SE), , that is, we group APs: A1 and A2,
b.
Leader: sehj = 3 (row 3 of SE), , that is, we group APs: A3 and A4,
c.
Leader: sehj = 5 (row 5 of SE), , that is, we group APs: A5 and A6.
The resulting
SE and
Ts are:
Thus,
and
6.
a.
Leader: sehj = 1 (row 1 of SE), , that is, we group APs: A1,
b.
Leader: sehj = 2 (row 2 of SE), , that is, we group APs: A2 and A3,
c.
Leader: sehj = 4 (row 4 of SE), , that is, we group APs: A4, A5, and A6.
The resulting
SE and
Ts are:
Thus,
and
3.
a.
Leader: sehj = 1 (row 1 of SE), , that is, we group APs: A1 and A2,
b.
Leader: sehj = 3 (row 3 of SE), , that is, we group APs: A3 and A6,
c.
Leader: sehj = 4 (row 4 of SE), , that is, we group APs: A4 and A5.
The resulting
SE and
Ts are:
Thus, and 4.
Option b, which minimizes
Dh, is the best. Using the
SE for that option, we calculate
RE, Trk, and
Tr:
Substituting the power values
PA, PS, and
PR in the devices, we obtain
eq. 18:
Substituting the values of
Ts and
Tr, we obtain the value of ES in
eq. 19: