From 5e3c82d06e7fa558bd8806fc9938271705280631 Mon Sep 17 00:00:00 2001 From: Loic Guegan <manzerberdes@gmx.com> Date: Sat, 25 May 2019 15:34:00 +0200 Subject: [PATCH] Correct typos --- 2019-Mascots.org | 69 ++++++++++++++++++++++++----------------------- 2019-Mascots.pdf | Bin 211698 -> 211795 bytes 2 files changed, 35 insertions(+), 34 deletions(-) diff --git a/2019-Mascots.org b/2019-Mascots.org index 4dc95de..1c48e2f 100644 --- a/2019-Mascots.org +++ b/2019-Mascots.org @@ -135,7 +135,7 @@ component, formatting, style, styling, insert In a first place, we start by studying the impact of the sensors position on their energy consumption. To this end, we run several simulations in ns-3 with different sensors position. The results provided by Figure \ref{fig:sensorsPos} show that sensors position have a very low impact - on the energy consumption and on the application delay. It has an impact of course but it is very + on the energy consumption and on the application delay. It has an impact of course, but it is very limited. This due to the fact that in such a scenario with very small number of communications spread over the time, sensors don't have to contend for accessing to the Wifi channel. @@ -150,12 +150,13 @@ component, formatting, style, styling, insert Previous work \cite{li_end--end_2018} on similar scenario shows that increasing application accuracy impact strongly the energy consumption in the context of data stream analysis. However, - in how case, application accuracy is driven by the sensing frequency and thus the transmit - frequency of the sensors. In this way, we vary the transmission frequency of the sensors from 1s - to 60s. Figure \ref{fig:frequency} present the effects of the sensors transmission frequency on + in our case, application accuracy is driven by the sensing interval and thus, the transmit + frequency of the sensors. Therefore, we varied the transmission interval of the sensors from 1s + to 60s. Figure \ref{fig:frequency} present the effects of the sensors transmission interval on the IoT/Network part energy consumption. In case of small and sporadic network traffic, these - results show that with a reasonable transmission frequency the energy consumption of the - IoT/Network if almost not affected by the variation of this frequency. + results show that with a reasonable transmission interval the energy consumption of the + IoT/Network if almost not affected by the variation of this transmission interval. In fact, + transmitted data are not large enough to leverage the energy consumed by the network. #+BEGIN_EXPORT latex \begin{figure} @@ -167,13 +168,14 @@ component, formatting, style, styling, insert #+END_EXPORT - The number of sensors is the dominant factor that leverage the energy consumption of the + The number of sensors is a dominant factor that leverage the energy consumption of the IoT/Network part. Therefore, we varied the number of sensors in the Wifi cell to analyze its - impact. The figure \ref{fig:sensorsNumber} represents the energy consumption of each simulated - part. It is clear that the energy consume by the network is the dominant part. However, since the - number of sensors is increasing the energy consume by the network will become negligible face to - the energy consume by the sensors. In fact, deploying new sensors in the cell do not introduce - much network load. To this end, sensors energy consumption is dominant. + impact. The Figure \ref{fig:sensorsNumber} represents the energy consumed by each simulated part + according the the number of sensors. It is clear that the energy consumed by the network is the + dominant part. However, since the number of sensors is increasing the energy consumed by the + network will become negligible face to the energy consume by the sensors. In fact, deploying new + sensors in the cell do not introduce much network load. To this end, sensors energy consumption + is dominant. #+BEGIN_EXPORT latex \begin{figure} @@ -193,11 +195,12 @@ component, formatting, style, styling, insert In a first place, we analyze the impact of the VM allocated memory on the server energy consumption. Figure \ref{fig:vmSize} depict the server energy consumption according to the VM - allocated memory for 20 sensors sending data every 10s. Note that red horizontal line represent - the average energy consumption for sample of energy value. We can see that at each sensing - interval, server face to peaks of energy consumption. However, VM allocated memory do not - influence energy consumption. In fact, simple database requests do not need any particular huge - memory access. Thus, remaining experiments are based on VM allocated memory of 1024MB. + allocated memory for 20 sensors sending data every 10s. Note that horizontal red line represent + the average energy consumption for the considered sample of energy values. We can see that at + each sensing interval, server face to peaks of energy consumption. However, VM allocated memory + do not influence energy consumption. In fact, simple database requests do not need any particular + huge memory access and processing time. Thus, remaining experiments are based on VM with 1024MB + of allocated memory. #+BEGIN_EXPORT latex \begin{figure} @@ -208,17 +211,16 @@ component, formatting, style, styling, insert \end{figure} #+END_EXPORT - Next, we study the effects of increasing the number of sensors on the server energy consumption. Figure \ref{fig:sensorsNumber-server} present the results of the average server energy consumption when varying the number of sensors from 20 to 500 while Figure \ref{fig:sensorsNumber-WPS} present the average server energy cost per sensors according to the - number of sensors. These shows a clear linear relation between the number of sensors and the - server energy consumption. Moreover, we can see that the more sensors we have per server, the + number of sensors. These results show a clear linear relation between the number of sensors and + the server energy consumption. Moreover, we can see that the more sensors we have per server, the more energy we can save. In fact, since the idle server energy consumption is high, it is more - energy efficient to maximize the number of sensors per server. As showed on Figure - \ref{fig:sensorsNumber-WPS}, a significant amount of energy can be save when passing from 20 - sensors to 300 per server. + energy efficient to maximize the number of sensors per server. As shown on Figure + \ref{fig:sensorsNumber-WPS}, a significant amount of energy can be save when passing from 20 to + 300 sensors per server. #+BEGIN_EXPORT latex \begin{figure} @@ -237,12 +239,12 @@ component, formatting, style, styling, insert \end{figure} #+END_EXPORT - A last parameter can leverage server energy consumption namely sensors send frequency. In - addition to increasing the application accuracy, sensors send frequency increase network traffic - and database accesses. Figure \ref{fig:sensorsFrequency} present the impact on the server energy + A last parameter can leverage server energy consumption namely sensors send interval. In addition + to increasing the application accuracy, sensors send interval increase network traffic and + database accesses. Figure \ref{fig:sensorsFrequency} present the impact on the server energy consumption of changing the send interval of 50 sensors to 1s, 10s and 30s. We can see that, the - more sensors send interval is low, the more server energy consumption peaks occurs. Therefore, it - leads to an increasing in the server energy consumption. + lower sensors send interval is, the more server energy consumption peaks occurs. Therefore, it + leads to an increase of the server energy consumption. #+BEGIN_EXPORT latex \begin{figure} @@ -256,15 +258,14 @@ component, formatting, style, styling, insert ** End-To-End Consumption To have an overview of the energy consume by the system, it is important to consider the - end-to-end energy consumption. The Figure \ref{fig:end-to-end} represent the end-to-end system + end-to-end energy consumption. The Figure \ref{fig:end-to-end} represents the end-to-end system energy consumption while varying the number of sensors. It is important to see that, for small-scale systems, the server energy consumption is dominant face to the energy consumed by the sensors. However, since we are using a single server, large-scale sensors deployment lead to an - increasing consumption of energy in the sensors side. On the other side, network energy - consumption is stable regarding to the number of sensors that are deployed since network the - system use case do not required large data transfer. Thus, it is important to remember that, to - save energy, we should maximize the number of sensors handle by each cloud server while keeping a - reasonable sensors requests intervals. + increasing consumption of energy in the IoT part. On the other side, network energy consumption + is stable regarding to the number of sensors since the system use case do not required large data + transfert. Thus, it is important to remember that, to save energy, we should maximize the number + of sensors handle by each cloud server while keeping reasonable sensors request intervals. #+BEGIN_EXPORT latex \begin{figure} diff --git a/2019-Mascots.pdf b/2019-Mascots.pdf index f95bfc2b0a8dbee4c0942412c7f4122af4468762..2c52c1692229517cebcf02109de8082ec59f6030 100644 GIT binary patch delta 10103 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 X$>;PjK4_9}tgI~GC@CeBB)|O+lxcl# delta 10010 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