I want to draw a cylinder from the node client to server1 passing through the cloud node and the firewall node. I used this example (page 774) as inspiration, but doesn't look good. Here is my MWE:
\documentclass{article}
\usepackage{xcolor}
\definecolor{mycolor}{RGB}{8,108,131}
\usepackage{tikz}
\usetikzlibrary{chains}
\usetikzlibrary{positioning}
\usetikzlibrary{backgrounds}
\usetikzlibrary{arrows,automata}
\usetikzlibrary{shapes}
\begin{document}
\begin{tikzpicture}[
scale=0.8,
transform shape,
show background rectangle,
%background rectangle/.style={fill=gray!10},
box/.style={draw, font=\itshape}
]
\coordinate (b) at (current page.center);
\node [
label=right:xx,
] (firewall)at(b) {example-image-a};
\node [
label=above:Client
] (client) at ([yshift=2cm]firewall){example-image-a};
\node [
label=below:xx
] (dnsServer) at([xshift=-5cm]firewall){example-image-a};
\node [
label=center:Internet,
] (cloud) at ([yshift=-2cm]firewall){example-image-a};
\node [
label=below:xx
] (server1) at([yshift=-2cm,xshift=-1cm]cloud){example-image-a};
\node [
label=right:example.com
] (server2) at([yshift=-2cm,xshift=1cm]cloud){example-image-a};
\draw [thick,mycolor,->](client) .. controls (firewall) .. (dnsServer)node[very near start, left]{1};
\draw [thick,mycolor,->](dnsServer) .. controls (firewall)and (cloud) .. (server1)node[very near end, left]{2};
\draw [thick,mycolor,->](server1) .. controls (cloud) and (firewall).. (client)node[very near start, right]{5};
\path[mycolor,->] (client) edge [loop right] node {6} ();
\node (A) [cylinder, shape border rotate=90,minimum height=1cm,minimum width=1cm,aspect=1.0,draw]{A};
\end{tikzpicture}
\end{document}
