You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by AF...@princeton.com on 2011/06/28 19:20:33 UTC

C++ client wireshark captures and readability

Does the C++ client do any compression on the connection to the server by 
default, and if so, how do I turn it off?

I'm trying to make the Python interface to the swig wrappers more like the 
pure Python implementation, and I've gotten pretty far, I'm just having a 
problem with the sender.  But while digging into the wireshark traces, 
even the Python and C++ receivers have very different communications with 
the server.  In wireshark traces of the Python clients, I can see queue 
names and message contents, but the C++ is nothing but some connection 
stuff, then a bunch packets wireshark can't dissect beyond an "Unknown 
command/control class".

I'm guessing the last is because of a change in the protocol that broke 
the dissectors in wireshark 1.6.0rc1, but I can't find the queue names or 
message contents in the raw bytes either.

-- 
Anthony Foglia
Princeton Consultants
(609) 987-8787 x233

Re: C++ client wireshark captures and readability

Posted by Gordon Sim <gs...@redhat.com>.
On 06/28/2011 06:20 PM, AFoglia@princeton.com wrote:
> Does the C++ client do any compression on the connection to the server by
> default, and if so, how do I turn it off?
>
> I'm trying to make the Python interface to the swig wrappers more like the
> pure Python implementation, and I've gotten pretty far, I'm just having a
> problem with the sender.  But while digging into the wireshark traces,
> even the Python and C++ receivers have very different communications with
> the server.  In wireshark traces of the Python clients, I can see queue
> names and message contents, but the C++ is nothing but some connection
> stuff, then a bunch packets wireshark can't dissect beyond an "Unknown
> command/control class".
>
> I'm guessing the last is because of a change in the protocol that broke
> the dissectors in wireshark 1.6.0rc1, but I can't find the queue names or
> message contents in the raw bytes either.

Turning on tracing in the broker is another angle to debug this from 
(e.g. --log-enable info+ --log-enable trace+:amqp_0_10). There are 
slight differences in the interactions between python and c++ clients on 
address resolution, but nothing that would explain a dissector error 
like that.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


Re: C++ client wireshark captures and readability

Posted by Gordon Sim <gs...@redhat.com>.
On 06/28/2011 09:26 PM, AFoglia@princeton.com wrote:
> On 6/28/2011 1:41 PM, Gordon Sim wrote:
>> On 06/28/2011 06:20 PM, AFoglia@princeton.com wrote:
>>> Does the C++ client do any compression on the connection to the server
> by
>>> default, and if so, how do I turn it off?
>>
>> No it does not.
>
> I did find it out.  If I pass the configuration setting "sasl-mechanism"
> to PLAIN, the message contents can be read and are correctly parsed by
> wireshark.
>
> I couldn't find the default value for sasl-mechanism, so I don't know what
> I changed it from.

Of course! So it was in fact being encrypted. Sorry for the 
misinformation there and well spotted!



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


Re: C++ client wireshark captures and readability

Posted by AF...@princeton.com.
On 6/28/2011 1:41 PM, Gordon Sim wrote:
> On 06/28/2011 06:20 PM, AFoglia@princeton.com wrote:
>> Does the C++ client do any compression on the connection to the server 
by
>> default, and if so, how do I turn it off?
> 
> No it does not.

I did find it out.  If I pass the configuration setting "sasl-mechanism" 
to PLAIN, the message contents can be read and are correctly parsed by 
wireshark.

I couldn't find the default value for sasl-mechanism, so I don't know what 
I changed it from.

-- 
Anthony Foglia
Princeton Consultants
(609) 987-8787 x233

Re: C++ client wireshark captures and readability

Posted by Gordon Sim <gs...@redhat.com>.
On 06/28/2011 06:20 PM, AFoglia@princeton.com wrote:
> Does the C++ client do any compression on the connection to the server by
> default, and if so, how do I turn it off?

No it does not.

> I'm trying to make the Python interface to the swig wrappers more like the
> pure Python implementation, and I've gotten pretty far, I'm just having a
> problem with the sender.  But while digging into the wireshark traces,
> even the Python and C++ receivers have very different communications with
> the server.  In wireshark traces of the Python clients, I can see queue
> names and message contents, but the C++ is nothing but some connection
> stuff, then a bunch packets wireshark can't dissect beyond an "Unknown
> command/control class".
>
> I'm guessing the last is because of a change in the protocol that broke
> the dissectors in wireshark 1.6.0rc1, but I can't find the queue names or
> message contents in the raw bytes either.

That is odd. There hasn't been any such change in the protocol that I am 
aware of. The AMQP 0-10 dissectors are quite recent I believe (not in my 
rather old version of wireshark).

What versions of qpid are you using?

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


RE: C++ client wireshark captures and readability

Posted by Steve Huston <sh...@riverace.com>.
Hi Anthony,

> Does the C++ client do any compression on the connection to 
> the server by default, and if so, how do I turn it off?

No, it doesn't.

> I'm trying to make the Python interface to the swig wrappers 
> more like the 
> pure Python implementation, and I've gotten pretty far, I'm 
> just having a 
> problem with the sender.  But while digging into the 
> wireshark traces, 
> even the Python and C++ receivers have very different 
> communications with 
> the server.  In wireshark traces of the Python clients, I can 
> see queue 
> names and message contents, but the C++ is nothing but some 
> connection 
> stuff, then a bunch packets wireshark can't dissect beyond an 
> "Unknown 
> command/control class".

Odd... I did the AMQP 0-10 wireshark code and haven't seen that kind of
problem.

> I'm guessing the last is because of a change in the protocol 
> that broke 
> the dissectors in wireshark 1.6.0rc1, but I can't find the 
> queue names or message contents in the raw bytes either.

If you can send me a pcap file I'll look at it here and see if I can see
anything else. It's been a while since I worked on that code and it's
conceivable something broke in the interim.

-Steve

--
Steve Huston, Riverace Corporation
Total Lifecycle Support for Your Networked Applications
http://www.riverace.com


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org