Re: [RFC PATCH] tcp: Add SOF_TIMESTAMPING_TX_EOR and allow MSG_EOR in tcp_sendmsg
From: Yuchung Cheng <hidden>
Date: 2016-03-29 04:31:45
On Sun, Mar 27, 2016 at 10:42 PM, Martin KaFai Lau [off-list ref] wrote:
On Fri, Mar 25, 2016 at 04:05:51PM -0700, Yuchung Cheng wrote:quoted
Looks like an interesting and useful patch. Since HTTP2 allows multiplexing data stream frames from multiple logical streams on a single socket, how would you instrument to measure the latency of each stream? e.g., sendmsg of data_frame_1_of_stream_a sendmsg of data_frame_1_of_stream_b sendmsg of data_frame_2_of_stream_a sendmsg of data_frame_1_of_stream_c sendmsg of data_frame_2_of_stream_bA quick recall from the end of the commit message: "One of our use case is at the webserver. The webserver tracks the HTTP2 response latency by measuring when the webserver sends the first byte to the socket till the TCP ACK of the last byte is received." It is the server side perception on how long does it take to deliver the whole response/stream to the client. Hence, the number of interleaved streams does not matter. Some sample use cases are, comparing TCP sysctl/code changes, observing encoding/compression impact (e.g. HPACK in HTTP2). Assuming frame_2 is the end stream for 'a' and 'b': sendmsg of data_frame_1_of_stream_a sendmsg of data_frame_1_of_stream_b sendmsg of data_frame_2_of_stream_a MSG_EOR sendmsg of data_frame_1_of_stream_c sendmsg of data_frame_2_of_stream_b MSG_EOR Are you suggesting other useful ways/metrics should be measured in this case?
No this is what I have in mind but wanted to confirm. Thanks.