On Thu, May 26, 2016 at 1:44 AM, Tony Espy <e...@canonical.com> wrote:

> On 05/25/2016 12:45 PM, Dan Williams wrote:
>
>> On Wed, 2016-05-25 at 18:10 +0200, Thomas Haller wrote:
>>
>>> On Tue, 2016-05-24 at 12:51 -0400, Tony Espy wrote:
>>>
>>>>
>>>> We have a new requirement to add a data activity indicator to
>>>> Ubuntu
>>>> Touch for certification in certain markets.
>>>>
>>>> We've had some internal debate about whether or not we should
>>>> extend
>>>> NetworkManager to provide this information to the rest of the
>>>> system
>>>> vs.
>>>> adding logic directly to our touch-specific network indicator.
>>>>
>>> Hi Tony,
>>>
>>>
>>> IMO it would be interested in having this in NetworkManager, and I
>>> think we would be willing to help with implementation.
>>>
>>
>> Yeah, it's been brought up before and it just needed somebody to do it
>> :)
>>
>
> Cool.  We're on it then!
>
> As with the previous reply, CC'd Alfonso.
>
> The current prototype is based on a similar facility in Connman,
>>>> and
>>>> involves RTM_GETLINK polling to retrieve device-specific Rx and Tx
>>>> statistics.
>>>>
>>> Do you have a prototype available somewhere?
>>>
>>>
>>>
>>>>
>>>> Connman's API can be seen here:
>>>>
>>>> https://git.kernel.org/cgit/network/connman/connman.git/tree/doc/co
>>>> un
>>>> ter-api.txt
>>>> https://git.kernel.org/cgit/network/connman/connman.git/tree/doc/ma
>>>> na
>>>> ger-api.txt#n90
>>>>
>>>> Our proposed implementation involves extending
>>>> NMPlatform/NMLinuxPlatform and adding some new properties to the
>>>> NetworkManager.Device interface:
>>>>
>>>> * TxBytes, TxPackets, [calculated TxRate (byte/s)] and Rx
>>>> equivalents
>>>> * EnableStatProps : boolean property to enable/disable device
>>>> statistics
>>>> * StatPropsRefreshRateMs : refresh rate for Tx/Rx properties in
>>>> milliseconds
>>>>
>>>> An alternative to extending the Device interface would be adding a
>>>> dedicated Device.Statistics interface; and perhaps a Device
>>>> interface
>>>> method ( vs. the EnableStatProps property ) to control
>>>> enabling/disabling collection of statistics on a per-device basis.
>>>>
>>>> The idea behind EnableStatProps is to avoid overloading the system
>>>> with
>>>> PropertiesChanged signals. The Tx/Rx properties will not refresh
>>>> if
>>>> EnableStatProps is false, and will refresh, sending
>>>> PropertiesChanged
>>>> signals with the rate specified in StatPropsRefreshRateMs, when
>>>> true.
>>>> In our case, we'd explicitly disable statistics when the screen on
>>>> a
>>>> device is turned off.
>>>>
>>>
>>> Maybe EnableStatProps could be dropped, and is implicit by
>>> setting StatPropsRefreshRateMs to zero.
>>>
>>
>> I would say that the new Device.Statistics interface would simply have
>> a "RefreshRateMs" property (eg, no StatProps prefix) which would be set
>> to > 0 to enable reporting via D-Bus.  Then have the Tx/Rx statistics
>> as properties of the interface as well, that stay zero when reporting
>> isn't enabled or is turned off.
>>
>
> Sounds like a good approach to me.  Alfonso?


Sounds sensible to me, let's go this way.

Br,
Alfonso


>
>
> /tony
>
>
_______________________________________________
networkmanager-list mailing list
networkmanager-list@gnome.org
https://mail.gnome.org/mailman/listinfo/networkmanager-list

Reply via email to