AMQP Specification Transport
AMQP Specification Transport
AMQP Specification Transport
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>AMQP</strong> <strong>Specification</strong>.<br />
Connection<br />
Definition: REVISION<br />
Value: 0<br />
Description: protocol revision<br />
3.2 Opening a Connection<br />
Each <strong>AMQP</strong> connection begins with an exchange of capabilities and limitations. After establishing or<br />
accepting a TCP connection and sending the protocol header, each peer must send an open control before<br />
sending any other frames. The open control describes the capabilities and limits of that peer. After sending<br />
the open control each peer must read its partner's open control and must operate within mutually<br />
acceptable limitations from this point forward.<br />
TCP Client<br />
TCP Server<br />
==================================<br />
TCP-CONNECT<br />
TCP-ACCEPT<br />
PROTO-HDR<br />
PROTO-HDR<br />
OPEN ---+ +--- OPEN<br />
\ /<br />
wait x wait<br />
/ \<br />
proceed proceed<br />
...<br />
3.3 Pipelined Open<br />
For applications that use many short-lived connections, it may be desirable to pipeline the connection<br />
negotiation process. A peer may do this by starting to send commands or controls before receiving the<br />
partner's connection header or open control. This is permitted so long as the pipelined commands and<br />
controls are known a priori to conform to the capabilities and limitations of its partner. For example, this<br />
may be accomplished by keeping the use of the connection within the capabilities and limits expected of all<br />
<strong>AMQP</strong> implementations as defined by the specification of the open control.<br />
<strong>AMQP</strong> <strong>Transport</strong> v. 1-0 Page 8 of 83