Progress of HTTP/2 implementation for ATS and future work

13
Progress of HTTP/2 impl and future work Yahoo Japan Corporation Ryo Okubo

description

This slide was used on HTTP/2 session of Fall 2014 ATS Summit (https://cwiki.apache.org/confluence/display/TS/Fall+2014+Summit). 2014 年秋の ATS (Apache Traffic Server) Summit の HTTP/2 セッションで用いた発表資料です。

Transcript of Progress of HTTP/2 implementation for ATS and future work

Page 1: Progress of HTTP/2 implementation for ATS and future work

Progress of HTTP/2 impland future work

Yahoo Japan Corporation

Ryo Okubo

Page 2: Progress of HTTP/2 implementation for ATS and future work

Agenda

• The story of HTTP/2 impl and

progress

• Future work

• How to backpost to an origin server

• Discussion

Page 3: Progress of HTTP/2 implementation for ATS and future work

The story of HTTP/2 impl

• TS-2729

• Initial patch used nghttp2 (obsoleted)

• Current patch doesn’t depends on

this (WIP)

Page 4: Progress of HTTP/2 implementation for ATS and future work

Progress

• Opening/closing HTTP/2 sessions

– Already merged

• Handling HTTP/2 requests and responses

– Implemented as prototype

Page 5: Progress of HTTP/2 implementation for ATS and future work

Y! Japan web page with HTTP/2

// Above screenshot was taken in experimental environment

Page 6: Progress of HTTP/2 implementation for ATS and future work

How to use current patches

• Get and apply a patch attached on TS-2729

– h2_prototype.patch

• Build ATS as usual

• Enable https

• Access the ATS with HTTP/2 client

– nghttp, Chrome Canary, Firefox Nightly

Page 7: Progress of HTTP/2 implementation for ATS and future work

Demo

Page 8: Progress of HTTP/2 implementation for ATS and future work

Future work

• Rethinking how to handle

backposting

• Debugging, refactoring and testing

• Implementing rest of essential

features

Page 9: Progress of HTTP/2 implementation for ATS and future work

How to backpost with HTTP/1.1?

• Use FetchSM?

• Use HttpSM directly?

• I’d like to use FetchSM at first

– Redesign and migrate to HttpSM in

future

Page 10: Progress of HTTP/2 implementation for ATS and future work

FetchSM

• SPDY code uses it

• Simple and easy solution

• But, it has a little overhead

– e.g. memcpy()

Page 11: Progress of HTTP/2 implementation for ATS and future work

HttpSM

• It can reduce overhead

• But, HttpSM needs some modification

– Redesign?

– Or add interfaces for backposting?

Page 12: Progress of HTTP/2 implementation for ATS and future work

Discussion points

• How to backpost

– FetchSM, HttpSM, etc

• Release schedule

• Another topics

Page 13: Progress of HTTP/2 implementation for ATS and future work

End of Slides

• Please give me advices if any

– IRC nickname: rokubo (rokubo_)