Cool!
I dimly remember this project; it was written independently of the main Open
MPI project.
It looks like it supports the TCP OOB and TCP BTL.
The TCP OOB has since moved from Open MPI's "ORTE" sub-project to the
independent PRRTE project. Regardless, TCP OOB traffic is effectively about
the control plane -- it's management messages, setup, teardown, stdout/err
redirection, ... etc. Depending on the goals of the Open MPI wireshark plugin,
it may or may not be worth it to dissect that traffic.
The TCP BTL is the actual MPI messages that are sent across TCP (assuming you
don't have some kind of HPC-class networking stack, that likely uses OS-bypass
and probably doesn't use TCP).
Keep in mind that neither of these plugins have ever formally published a wire
protocol, and are therefore subject to change at any time. That's a
not-insignificant risk for having an mpi-dissector plugin.
From: users on behalf of Belanger, Martin
via users
Sent: Monday, December 11, 2023 10:55 AM
To: users@lists.open-mpi.org
Cc: Belanger, Martin ; jul...@rilli.eu
Subject: [OMPI users] MPI Wireshark Packet Dissector
I’m new to MPI and I needed to analyze MPI packets with Wireshark. I found
Julian Rilli’s “mpi-dissector” project on GitHub
(https://github.com/juhulian/mpi-dissector). The project is about 9 years old
and does not compile with the latest Wireshark code. Fortunately, I was able to
port it, build it, and make it work.
It is not clear which version of the MPI protocol this project supports.
Suffice it to say that since the code is 9 years old, it probably does not
support all of the MPI protocol changes/additions made in the last 9 years.
I wanted to share this with the Open-MPI community in case someone is
interested and would like to update the code to support the latest version of
MPI (I don’t know enough about MPI to do this work myself). Eventually, I will
submit this to the Wireshark project so that it can be part of Wireshark going
forward.
For anyone interested, the ported code can be found in my fork of the Wireshark
repo:
https://gitlab.com/martin-belanger/wireshark/-/tree/mpi-support-v1?ref_type=heads.
It can be cloned as follows:
git clone -b mpi-support-v1 https://gitlab.com/martin-belanger/wireshark.git
Regards,
Martin Belanger