# Measuring network I/O of Master/Worker communication

**URL:** <https://discourse.julialang.org/t/measuring-network-i-o-of-master-worker-communication/6245>\
**Category:** General Usage\
**Tags:** networking, parallel\
**Created:** [October 4, 2017, 3:53pm UTC](https://discourse.julialang.org/t/measuring-network-i-o-of-master-worker-communication/6245 "2017-10-04T15:53:30Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![lage](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lage/32/2085_2.png) [@lage](https://discourse.julialang.org/u/lage)\
**Post date:** [October 4, 2017, 3:53pm UTC](https://discourse.julialang.org/t/measuring-network-i-o-of-master-worker-communication/6245/1 "2017-10-04T15:53:30Z")

</div>

hello,

Is there any way to measure the network traffic from/to workers? I mean something like Docker NET I/O stats: [docker stats | Docker Documentation](https://docs.docker.com/engine/reference/commandline/stats/#examples)

We need to measure how much data was exchanged between a worker and the master during our experiments.

Cheers,

---

<div class="post-metadata">

**Author:** ![vchuravy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vchuravy/32/8_2.png) [@vchuravy](https://discourse.julialang.org/u/vchuravy)\
**Post date:** [October 5, 2017, 3:51pm UTC](https://discourse.julialang.org/t/measuring-network-i-o-of-master-worker-communication/6245/2 "2017-10-05T15:51:48Z")

</div>

Not that I am aware off, but that would be a cool addition! Maybe @shashi and @amit.murthy have some additional input.

---

<div class="post-metadata">

**Author:** ![amit.murthy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/amit.murthy/32/47_2.png) [@amit.murthy](https://discourse.julialang.org/u/amit.murthy)\
**Post date:** [October 23, 2017, 5:24am UTC](https://discourse.julialang.org/t/measuring-network-i-o-of-master-worker-communication/6245/3 "2017-10-23T05:24:07Z")

</div>

Hello,

Unfortunately the module does not record any statistics w.r.t. bytes sent/recd at a socket connection level. I can think of a couple of indirect ways to get this information though.

1. If the workers are on a remote host you can look at the system interface stats and compute it. If on the same host you will need to setup virtual interfaces first and use them.

2. It is possible to the underlying socket fd for each connection to the workers. There may be relevant stats on a per-fd level in `/proc` - I haven’t looked at this though.

Amit

---

<div class="post-metadata">

**Author:** ![lage](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/lage/32/2085_2.png) [@lage](https://discourse.julialang.org/u/lage)\
**Post date:** [September 9, 2018, 11:17pm UTC](https://discourse.julialang.org/t/measuring-network-i-o-of-master-worker-communication/6245/4 "2018-09-09T23:17:44Z")

</div>

Thanks for your answer, @amit.murthy.

I have finally implemented a simple `DockerBackend` code which gets container stats, it will be here till I move it to a proper repository:

[https://github.com/NaelsonDouglas/DistributedMachineLearningThesis/tree/master/src/docker](https://github.com/NaelsonDouglas/DistributedMachineLearningThesis/tree/master/src/docker)

Best!
