You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Kim van der Riet (JIRA)" <ji...@apache.org> on 2018/03/07 20:20:00 UTC
[jira] [Created] (PROTON-1786) Multiframe transfer wire traffic
patterns differ substantially
Kim van der Riet created PROTON-1786:
----------------------------------------
Summary: Multiframe transfer wire traffic patterns differ substantially
Key: PROTON-1786
URL: https://issues.apache.org/jira/browse/PROTON-1786
Project: Qpid Proton
Issue Type: Task
Reporter: Kim van der Riet
Attachments: dispatch.multiframe.07.pcapng
This is not a bug (although it could become one), but rather an observation of large message transfer patterns observed using Wireshark while running Qpid Interop Test's amqp_large_content_test.
The test sends large messages through a broker (in this case, dispatch router) of size 1MB and 10MB.
I hope to add other observable patterns from other clients if they are significant. If there is consensus that this is a potential large message transfer efficiency issue, then this Jira can be a placeholder for this issue.
In this test, the receiver is using TCP port 59806 and the sender port 59808. The router is using the standard AMQP port.
h2. C++ client:
The client in this case uses the Proton C++ API and is based on the SimpleSender.cpp example. To isolate the traffic from this client, use the following filter in Wireshark:
{noformat}
amqp.performative == transfer && tcp.srcport == 59808{noformat}
It can be seen that although there is a large message being sent, the sender appears to be restricted to transfers of 16kB or a 64kB frame containing 4 transfers (very occasionally, 2, 3 or 5 transfers) - for example:
{noformat}
35 1.972620 ::1 ::1 AMQP 16470 transfer
1177 2.032878 ::1 ::1 AMQP 65550 transfer transfer transfer transfer
{noformat}
h2. Dispatch Router:
This uses Proton through its native C interface. To isolate the traffic from the router to the receiver, use the following Wireshark filter:
{noformat}
amqp.performative == transfer && tcp.dstport == 59806{noformat}
The traffic for this broker looks very different. Each frame contains only a single transfer, and the size of the transfers differ widely, from 196 bytes to the full 64kB max. I am assuming that the router is sending on message content it has received as soon as it becomes available no matter the size.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org