Uploaded image for project: 'Traffic Server'
  1. Traffic Server
  2. TS-1496

Traffic Server with null-transform buffering large responses when client connection slow

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.2.0
    • 3.3.5
    • HTTP
    • None
    • Red Hat 6.3

    Description

      Scenario: Traffic Server started with the null-transform plugin. The link between the client and Traffic Server is slower than the link between the Traffic Server and the Origin Server.

      Affect: If the client requests a large file from the Origin Server, the whole file can be transmitted to, and buffered by, Traffic Server before content is released to the client. This is a bigger issue if a large number of clients request large files then the Traffic Server could end up buffering very large amounts of content.

      Expected behaviour: The Traffic Server should not download all the content from the Origin Server. Instead, if the client is slow receiving from Traffic Server, then Traffic Server should be slow receiving from the Origin Server. Traffic Server should facilitate end to end flow control between client and Origin Server.

      Tools to replicate problem: Use Traffic Control to set a lower bandwidth on the client machine.

      Possible related area in the Traffic Server code: The following comment appears in proxy/http/Httptunnel.cc
      48 static void
      49 chunked_reenable(HttpTunnelProducer * p, HttpTunnel * tunnel)
      50 {
      51
      52 // FIX ME: still need to deal with huge chunk sizes. If a chunk
      53 // is 1GB, we will currently buffer the whole thing

      Attachments

        1. ts-1496.diff
          51 kB
          Alan M. Carroll
        2. TS-1496.patch
          1 kB
          Neutron Soutmun
        3. TS-1496.patch
          0.7 kB
          Neutron Soutmun

        Issue Links

          Activity

            People

              amc Alan M. Carroll
              snf snf
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: