# Designing packet structure of a protocol

I'm writing a small manual for our self-developed protocol.

To show the packet structure we like to include a table like it's shown on this Wikipedia page: http://en.wikipedia.org/wiki/User_Datagram_Protocol#Packet_structure

Is there any prebuilt library for this purpose or should it be implemented by myself?

-
You might have a look to the bytefield package. –  Claudio Fiandrino Jan 26 '13 at 9:33

You can use the bytefield package, developed exactly with the purpose of drawing protocol packet structures.

An example taken from the manual:

\documentclass[border=10pt,png]{standalone}
\usepackage{bytefield}

\begin{document}

\begin{bytefield}[bitwidth=1.1em]{32}
\bitbox{2}{V=2} & \bitbox{1}{P} & \bitbox{1}{X}
& \bitbox{4}{CC} & \bitbox{1}{M} & \bitbox{7}{PT}
& \bitbox{16}{sequence number} \\
\bitbox{32}{timestamp}
\end{rightwordgroup} \\
\bitbox{32}{synchronization source (SSRC) identifier} \\
\wordbox[tlr]{1}{contributing source (CSRC) identifiers} \\
\wordbox[blr]{1}{$\cdots$} \\