[ 
https://issues.apache.org/jira/browse/TS-3869?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14715630#comment-14715630
 ] 

Bryan Call edited comment on TS-3869 at 8/26/15 10:19 PM:
----------------------------------------------------------

In this test the server only sends back a WINDOW_UPDATE on the connection and 
doesn't send a WINDOW_UPDATE for the stream, since it has ~15MB left (2^24 - 
1MB).
{code}
[bcall@mac-bryan-wire ~]$ nghttp -w 24 -W 24 -v -n -d foo 
https://127.0.0.1/post.php
...
[  0.081] send DATA frame <length=16375, flags=0x00, stream_id=1>
[  0.081] send DATA frame <length=541, flags=0x00, stream_id=1>
[  0.092] recv SETTINGS frame <length=0, flags=0x01, stream_id=0>
          ; ACK
          (niv=0)
[  0.092] recv WINDOW_UPDATE frame <length=4, flags=0x00, stream_id=0>
          (window_size_increment=998910)
[ 25.125] recv (stream_id=1, noind=1) :status: 502
[ 25.125] recv (stream_id=1, noind=0) date: Wed, 26 Aug 2015 22:07:43 GMT
[ 25.125] recv (stream_id=1, noind=0) via: https/1.1 
rav1-1-gci-pool-general-10-87-130-110.corp.yahoo.com (ApacheTrafficServer/6.0.0 
[uSc s f p eC:tOc  i p sF])
{code}


was (Author: bcall):
In this test the server only sends back a WINDOW_UPDATE on the connection and 
doesn't send a WINDOW_UPDATE for the stream, since it has 9MB left.
{code}
[bcall@mac-bryan-wire ~]$ nghttp -w 24 -W 24 -v -n -d foo 
https://127.0.0.1/post.php
...
[  0.081] send DATA frame <length=16375, flags=0x00, stream_id=1>
[  0.081] send DATA frame <length=541, flags=0x00, stream_id=1>
[  0.092] recv SETTINGS frame <length=0, flags=0x01, stream_id=0>
          ; ACK
          (niv=0)
[  0.092] recv WINDOW_UPDATE frame <length=4, flags=0x00, stream_id=0>
          (window_size_increment=998910)
[ 25.125] recv (stream_id=1, noind=1) :status: 502
[ 25.125] recv (stream_id=1, noind=0) date: Wed, 26 Aug 2015 22:07:43 GMT
[ 25.125] recv (stream_id=1, noind=0) via: https/1.1 
rav1-1-gci-pool-general-10-87-130-110.corp.yahoo.com (ApacheTrafficServer/6.0.0 
[uSc s f p eC:tOc  i p sF])
{code}

> HTTP/2 Stream uses the clients window size for the servers setting
> ------------------------------------------------------------------
>
>                 Key: TS-3869
>                 URL: https://issues.apache.org/jira/browse/TS-3869
>             Project: Traffic Server
>          Issue Type: Bug
>          Components: HTTP/2
>            Reporter: Bryan Call
>            Assignee: Bryan Call
>             Fix For: 6.0.0
>
>
> The Http2Stream class incorrectly uses the clients window size for 
> initializing the servers window size.  In Chrome this defaults to 10MB.  
> Since the client client thinks it the window size is 1MB, the amount the 
> server said it was, and the server thinks it is 10MB the client will only be 
> able to send 1MB of data and then wait until it gets more credit.  More 
> credit isn't given until there is 16KB left on the stream and it will never 
> get there since 10MB - 1MB = 9MB.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to