\begin{tikzpicture} \begin{pgfonlayer}{nodelayer} \node [style=none] (0) at (0, 1.5) {}; \node [style=none] (1) at (0, -21) {}; \node [style=none] (2) at (16, 1.5) {}; \node [style=none] (3) at (16, -21) {}; \node [style=none] (4) at (0, 2.25) {Initiator}; \node [style=none] (5) at (16, 2.25) {Target}; \node [style=none] (6) at (-1, 0.5) {}; \node [style=none] (7) at (-1, -20) {}; \node [style=align text] (8) at (-2, -9) {Time}; \node [style=none] (9) at (0, -0.5) {}; \node [style=none] (10) at (16, -0.5) {}; \node [style=none] (11) at (16, -1) {}; \node [style=none] (12) at (0, -1) {}; \node [style=none] (13) at (0, -5.5) {}; \node [style=none] (14) at (16, -5.5) {}; \node [style=none] (15) at (0, -10.5) {}; \node [style=none] (16) at (16, -10.5) {}; \node [style=none] (17) at (2.5, 0) {BEGIN\_REQ}; \node [style=none] (18) at (14, -1.75) {END\_REQ}; \node [style=none] (19) at (13.5, -5) {BEGIN\_RESP}; \node [style=none] (20) at (2.25, -10) {END\_RESP}; \node [style=none] (21) at (19.5, -3) {}; \node [style=none] (22) at (19.5, -7) {}; \node [style=align text] (23) at (20.25, -5) {Back-\\pressure}; \node [style=none] (24) at (19, -3) {}; \node [style=none] (25) at (19, -7) {}; \node [style=none] (26) at (0, -3) {}; \node [style=none] (27) at (16, -3) {}; \node [style=none] (28) at (0, -7) {}; \node [style=none] (29) at (16, -7) {}; \node [style=none] (30) at (14, -6.5) {END\_REQ}; \node [style=none] (31) at (2.5, -2.5) {BEGIN\_REQ}; \node [style=none] (32) at (0, -7.5) {}; \node [style=none] (33) at (16, -7.5) {}; \node [style=none] (34) at (2.5, -8.25) {BEGIN\_REQ}; \node [style=none] (38) at (0, -12.75) {}; \node [style=none] (39) at (16, -12.75) {}; \node [style=none] (40) at (10.25, -12.25) {BEGIN\_RESP (Skip END\_REQ)}; \node [style=none] (41) at (0, -17) {}; \node [style=none] (42) at (16, -17) {}; \node [style=none] (43) at (2.25, -16.5) {END\_RESP}; \node [style=none] (44) at (-3.5, -12.75) {}; \node [style=none] (45) at (-3.5, -17) {}; \node [style=align text] (46) at (-4.5, -15) {Back-\\pressure}; \node [style=none] (47) at (-3, -12.75) {}; \node [style=none] (48) at (-3, -17) {}; \node [style=none] (49) at (0, -19) {}; \node [style=none] (50) at (16, -19) {}; \node [style=none] (51) at (0, -18.5) {}; \node [style=none] (52) at (16, -18.5) {}; \node [style=none] (53) at (13.5, -18) {BEGIN\_RESP}; \node [style=none] (54) at (3.75, -19.75) {TLM\_COMPLETED}; \end{pgfonlayer} \begin{pgfonlayer}{edgelayer} \draw [style=very thick line, in=90, out=-90] (0.center) to (1.center); \draw [style=very thick line] (2.center) to (3.center); \draw [style=very thick latex arrow] (6.center) to (7.center); \draw [style=latex arrow blue] (9.center) to (10.center); \draw [style=latex arrow blue] (11.center) to (12.center); \draw [style=latex arrow blue] (14.center) to (13.center); \draw [style=latex arrow blue] (15.center) to (16.center); \draw [style=latex double arrow] (24.center) to (25.center); \draw [style=latex arrow green] (26.center) to (27.center); \draw [style=latex arrow green] (29.center) to (28.center); \draw [style=latex arrow red] (32.center) to (33.center); \draw [style=latex arrow red] (39.center) to (38.center); \draw [style=latex double arrow] (47.center) to (48.center); \draw [style=dashed line] (38.center) to (44.center); \draw [style=dashed line] (41.center) to (45.center); \draw [style=dotted very thick green latex arrow] (49.center) to (50.center); \draw [style=latex arrow green] (52.center) to (51.center); \draw [style=dashed line] (21.center) to (27.center); \draw [style=dashed line] (29.center) to (22.center); \draw [style=latex arrow red] (41.center) to (42.center); \end{pgfonlayer} \end{tikzpicture}