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

Add HTTP/2 support to ATS

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.3.0
    • Component/s: HTTP/2
    • Labels:

      Description

      Overview

      Support HTTP/2 as a client side L7 protocol. This feature is implemented into ATS core.
      Now, it supports the latest HTTP/2 draft version, h2-16.
      https://tools.ietf.org/html/draft-ietf-httpbis-http2-16

      How to test

      1. Build ATS codes normally. you need neither any build option nor external HTTP/2 library.
      2. Configure settings to use https.
      3. Add settings to records.config to use http2.
        CONFIG proxy.config.http2.enabled INT 1
        
      4. Access to ATS by HTTP/2 client.

      Descriptions of current attached patches.

      • 0003-h2-prototype.patch
        • For experiment. Please don't merge it. It enables to interpret HTTP/2 requests and respond for it. But now this code is unsafe and dirty. More refactoring is required.

      DONE

      • Fundamental HTTP/2 frame handling
      • Flow control
      • Some error handlings

      TODO

      • Refactoring
      • More debugging
      • Write documents
      • Add test tools for HPACK, HTTP/2 frames

      No plan

        Attachments

        1. http2-0004.patch
          70 kB
          Ryo Okubo
        2. hpack.patch
          53 kB
          Ryo Okubo
        3. h2c_upgrade.patch
          16 kB
          Ryo Okubo
        4. 0003-h2-prototype.patch
          108 kB
          Ryo Okubo
        5. improve-mime.patch
          5 kB
          Ryo Okubo
        6. 0004-h2-prototype.patch
          5 kB
          Ryo Okubo
        7. 0005-h2-prototype.patch
          1 kB
          Ryo Okubo

          Issue Links

            Activity

              People

              • Assignee:
                bcall Bryan Call
                Reporter:
                rokubo Ryo Okubo
              • Votes:
                0 Vote for this issue
                Watchers:
                22 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: