How to build a vpp dispatch trace aware Wireshark
=================================================
-At some point, we will upstream our vpp pcap dispatch trace dissector.
-It's not finished - contributions welcome - and we have to work through
-whatever issues will be discovered during the upstreaming process.
+The vpp pcap dispatch trace dissector has been merged into the wireshark
+main branch, so the process is simple. Download wireshark, compile it,
+and install it.
-On the other hand, it's ready for some tire-kicking. Here's how to build
-wireshark.
+Download wireshark source code
+------------------------------
-Download and patch wireshark source code
------------------------------------------
-
-The wireshark git repo is large, so it takes a while to clone.
+The wireshark git repo is large, so it takes a while to clone.
```
- git clone https://code.wireshark.org/review/wireshark
- cp .../extras/wireshark/packet-vpp.c wireshark/epan/dissectors
- patch -p1 < .../extras/wireshark/diffs.txt
+ git clone https://code.wireshark.org/review/wireshark
```
-The small patch adds packet-vpp.c to the dissector list.
-
-Install prerequisite Debian packages
+Install prerequisite packages
------------------------------------
Here is a list of prerequisite packages which must be present in order
18.04 system:
```
- libgcrypt11-dev flex bison qtbase5-dev qttools5-dev-tools qttools5-dev
- qtmultimedia5-dev libqt5svg5-dev libpcap-dev qt5-default
+ libgcrypt11-dev flex bison qtbase5-dev qttools5-dev-tools qttools5-dev
+ qtmultimedia5-dev libqt5svg5-dev libpcap-dev qt5-default
```
Compile Wireshark
-----------------
Mercifully, Wireshark uses cmake, so it's relatively easy to build, at
-least on Ubuntu 18.04.
+least on Ubuntu 18.04.
```
- $ cd wireshark
- $ cmake -G Ninja
- $ ninja -j 8
- $ sudo ninja install
+ $ cd wireshark
+ $ mkdir build
+ $ cd build
+ $ cmake -G Ninja ../
+ $ ninja -j 8
+ $ sudo ninja install
```
Make a pcap dispatch trace
Configure vpp to pass traffic in some fashion or other, and then:
+
```
vpp# pcap dispatch trace on max 10000 file vppcapture buffer-trace dpdk-input 1000
-
```
+
or similar. Run traffic for long enough to capture some data. Save the
dispatch trace capture like so:
Set wireshark to filter on vpp.bufferindex to watch a single packet
traverse the forwarding graph. Otherwise, you'll see a vector of packets
-in e.g. ip4-lookup, then a vector of packets in ip4-rewrite, etc.
-
-
-
-
-
+in e.g. ip4-lookup, then a vector of packets in ip4-rewrite, etc.