Here you have a possible solution. Tikz is so flexible that you will find some more.
What I've done is first draw the vertical lines and use them to place nodes on the left and right side. In fact I've drawn first arrow and name starting and finishing coordinates a and b. Paquet nodes are placed relative to a and b. Hope you could understand the code.
If your red beam means a broken link or some transmission problem I prefer to use some symbol over the link. In this example I've used a cross out
node.
\documentclass[border=2mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes,arrows,fit,calc,positioning}
\usepackage{scalefnt}
\begin{document}
\begin{tikzpicture}
[my shape/.style={rectangle split, rectangle split parts=#1, draw}]
\tikzset{input/.style={}}
\draw (0,0)--++(0,-10cm);
\draw (4,0)--++(0,-10cm);
\draw[->] (0,-.5) coordinate (a) --
node [near end,sloped, above=2mm,my shape=2, rectangle split horizontal] (n3) {0\nodepart{two}$m_0$}
++(4,-.5) coordinate (b);
\node [left =1mm of a,my shape=2, rectangle split horizontal] (n1) {0\nodepart{two}$m_0$};
\node [right=1mm of b, my shape=2, rectangle split horizontal] (n2) {0\nodepart{two}$m_0$};
\draw[->,red] (b) -- ++(-4,-.5);
\path (a)--node[cross out,draw=red]{} (b);
\end{tikzpicture}
\end{document}
\documentclass[11pt]{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\begin{scope}
\draw[<-] (0,0) -- node[right]{$W_{m}$}(0,2)
node[circle,fill,inner sep=3mm,text=white,anchor=south] (m) {$m$};
\draw (m.north) -- node[right]{$T \uparrow$} +(0,2);
\end{scope}
\begin{scope}[shift={(2cm,-8mm)}]
\draw[<-] (0,0) -- node[right]{$W_{2m}$}(0,2)
node[circle,fill,inner sep=6mm,text=white,anchor=south] (m) {$m$};
\draw (m.north) -- node[right]{$T \uparrow$} +(0,2);
\end{scope}
\end{tikzpicture}
\end{document}
Explanations:
scope
forms a group around its contents so that we can perform operations (like shift) on the entire group. Every node
's contents are separated from the border by inner sep
(In other words, the distance between the contents and the border). By adjusting inner sep
we can make the node bigger or smaller (so as to just enclose the contents). We can label
a node by (m)
so that we can use that node's anchors (for ex, m.north
) later whereas {m}
is the content of the node. And finally (m.north) -- +(0,2)
means draw a line fron m.north
to a point that is 0cm
away horizontally and 2cm
away vertically.
Best Answer
Two possible solutions. First simple one:
and more fancy one with arrows determined with arrows shape: