HTTP/2
HTTP/2| 국제 표준 | RFC 7540 |
|---|---|
| 개발자 | IETF |
| 소개했다 | 2015년 5월 , 전( |
| 웹 사이트 | https://http2.github.io/ |
HTTP/2(원래 이름은 HTTP/2.0)는 World Wide Web에서 사용되는 HTTP 네트워크 프로토콜의 주요 리비전입니다.이것은 원래 [1][2]구글에 의해 개발된 초기의 실험적인 SPDY 프로토콜에서 파생되었다.HTTP/2는 Internet Engineering Task Force(IETF;[3][4][5] 인터넷 기술 특별 조사위원회)의 HTTP 작업 그룹(httpbis라고도 함)에 의해 개발되었습니다.HTTP/2는 1997년 RFC 2068에서 표준화된HTTP/1.1 이후 최초의 새로운 HTTP 버전입니다.작업 그룹은 2014년 [6][7]12월에 제안 표준으로 검토하기 위해 인터넷 엔지니어링 스티어링 그룹(IESG)에 HTTP/2를 제시하였고, IESG는 2015년 2월 17일에 제안 표준으로 공표하는 것을 승인하였다(TLS 1.[8][9]3에 대해서는 2020년 2월에 개정).HTTP/2 사양은 2015년 [10]5월 14일 RFC 7540으로 공개되었습니다.
표준화 작업은 Chrome, Opera, Firefox,[11] Internet Explorer 11, Safari, Amazon 실크 [12]및 Edge 브라우저에서 지원되었습니다.대부분의 주요 브라우저는 2015년 [13]말까지 HTTP/2 지원을 추가했습니다.사용되는 웹 브라우저의 약 97%가 [14]이 기능을 가지고 있습니다.2021년 10월[update] 기준으로 상위 1000만 개 웹사이트 중 47%(50%를 약간 웃도는 수준)가 HTTP/[15]2를 지원했습니다.
그 후계자는 HTTP/3로, HTTP/[2][16][17][18]2에 의해서 확립된 개념에 근거하고 있는 메이저리비전입니다
목표들
작업 그룹 헌장에는 다음과 같은 몇 가지 목표와 [4]우려 사항이 언급되어 있습니다.
- 클라이언트와 서버가 HTTP/1.1, 2.0 또는 잠재적으로 비 HTTP 프로토콜을 사용하도록 선택할 수 있는 협상 메커니즘을 만듭니다.
- HTTP/1.1과의 높은 수준의 호환성을 유지합니다(예를 들어 메서드, 상태 코드, URI 및 대부분의 헤더필드).
- 다음 사항을 고려하여 대기 시간을 줄이고 웹 브라우저에서 페이지 로드 속도를 향상시킵니다.
- 데스크톱 웹 브라우저, 모바일 웹 브라우저, 웹 API, 다양한 규모의 웹 서버, 프록시 서버, 역방향 프록시 서버, 방화벽 및 콘텐츠 전송 네트워크와 같은 일반적인 HTTP 사용 사례를 지원합니다.
HTTP/1.1과의 차이점
제안된 변경사항에서는 기존 웹 응용 프로그램의 작동 방식을 변경할 필요가 없지만 [19]새로운 응용 프로그램은 새로운 기능을 활용하여 속도를 높일 수 있습니다.HTTP/2는 메서드, 상태 코드, 헤더 필드 및 URI와 같은 HTTP/1.1의 모든 고급 시멘틱스를 동일하게 유지합니다.새로운 것은 클라이언트와 [19]서버 간에 데이터가 프레임화되고 전송되는 방법입니다.
효율적인 웹 사이트는 이미지나 스크립트 등의 리소스를 최소화(코드 양을 줄이고 작은 코드 조각을 번들로 패키지화)하여 페이지 전체를 렌더링하는 데 필요한 요청 수를 최소화합니다.그러나 최소화가 반드시 편리하거나 효율적인 것은 아니며 페이지와 최소화된 리소스를 얻기 위해 별도의 HTTP 연결이 필요할 수 있습니다.HTTP/2 를 사용하면, 서버는 컨텐츠를 「푸시」할 수 있습니다.즉, 클라이언트가 요구한 것보다 많은 쿼리에 대한 데이터로 응답할 수 있습니다.이를 통해 서버는 웹 브라우저가 웹 페이지를 렌더링하기 위해 필요한 데이터를 제공할 수 있습니다.브라우저가 첫 번째 응답을 검사할 때까지 기다리지 않고 추가 요청 [20]사이클의 오버헤드를 발생시키지 않습니다.
HTTP/2의 첫 번째 초안(SPDY의 복사본)의 성능 향상은 HTTP 1(HTTP 파이프라인 사용 시에도)에서의 헤드오브라인 블로킹 문제의 일부를 회피하기 위해 요구와 응답을 다중화하는 것으로, 헤더 압축 및 [21]요구의 priority화를 실현합니다.다만, HTTP/2 는 1 개의 TCP 접속상에서 동작하기 때문에, TCP 패킷이 손실되거나 [22]전송이 지연되었을 경우, 헤드 오브 라인 블로킹이 발생할 가능성이 있습니다.HTTP/2는 데이터 [23]스트리밍을 위한 자체적이고 효율적인 메커니즘을 제공하기 때문에 HTTP/1.1의 청크 전송 인코딩 메커니즘을 더 이상 지원하지 않습니다.
역사
Genesis 이후의 SPDY와의 차이점
SPDY('스피디'처럼 발음됨)는 [24]구글이 주도하는 연구 프로젝트에 의해 개발된 이전 HTTP 대체 프로토콜입니다.SPDY는 주로 지연 시간 단축에 중점을 두고 있지만 동일한 TCP 파이프를 사용하여 서로 다른 프로토콜을 사용합니다.SPDY를 작성하기 위해 HTTP/1.1에서 이루어진 기본적인 변경에는 "FIFO 제한 없는 진정한 요구 파이프라인, 클라이언트 및 서버 개발을 단순화하는 메시지 프레임 메커니즘, 필수 압축(헤더 포함), 우선순위 스케줄링, 심지어 양방향 통신"[25]이 포함됩니다.
HTTP 작업 그룹은 Google의 SPDY 프로토콜, Microsoft의 HTTP Speed+Mobility 제안(SPDY 기반)[24] 및 네트워크 친화적 HTTP 업그레이드를 [26]고려했습니다.2012년 7월, Facebook은 각 제안에 대한 피드백을 제공하고 SPDY를 [27]기반으로 HTTP/2를 추천했습니다.HTTP/2의 초기 초안은 2012년 11월에 발행되었으며 [28]SPDY의 스트레이트 카피를 기반으로 합니다.
HTTP/1.1과 SPDY의 가장 큰 차이점은 SPDY의 각 사용자 액션에 "스트림 ID"가 부여된다는 것입니다.즉, 사용자와 서버를 연결하는 단일 TCP 채널이 존재함을 의미합니다.SPDY는 "두 가지 유형의 프레임으로 이진 프로토콜을 구문 분석하는 간단한 방법"[25][29]을 사용하여 요청을 제어 또는 데이터로 분할합니다.SPDY는 새로운 페이지 로딩 속도가 11%에서 47%[30]까지 향상되는 등 HTTP에 비해 확연히 향상되었습니다.
HTTP/2의 개발은 SPDY를 출발점으로 사용했습니다.프로토콜들 사이의 많은 세부 차이들 중에서, 가장 주목할 만한 것은 HTTP/2가 SPDY의 동적 스트림 기반 압축 대신 고정된 허프만 코드 기반 헤더 압축 알고리즘을 사용한다는 것이다.이를 통해 프로토콜에 대한 압축 오라클 공격(예: CRIME 공격)[29]의 가능성을 줄일 수 있습니다.
2015년 2월 9일, 구글은 HTTP/[31]2에 대한 지원을 위해 크롬의 SPDY에 대한 지원을 중단할 계획을 발표했다.그것은 Chrome [32][33]51부터 시행되었다.
개발 마일스톤
| 날짜. | 마일스톤[4] |
|---|---|
| 2007년[34][35] 12월 20일 | 첫 번째 HTTP/1.1 개정판 인터넷 드래프트 |
| 2008년[36] 1월 23일 | 첫 번째 HTTP 보안 속성 인터넷 초안 |
| 2012년[37] 초 | HTTP 2.0에 대한 제안 |
| 2012년[38][39] 10월 14일 ~ 11월 25일 | HTTP/1.1 리비전을 위한 작업 그룹의 마지막 콜 |
| 2012년[40][41] 11월 28일 | draft-mbelshe-httpbis-spdy-00에 기반한 HTTP 2.0의 첫 번째 WG 드래프트 |
| 보류/삭제 | HTTP 보안 속성에 관한 작업 그룹의 마지막 콜 |
| 2013년 9월[42][43] | IESG에 HTTP/1.1 개정판을 제출하여 제안된 표준으로 검토하다 |
| 2014년[44] 2월 12일 | IESG가 HTTP/1.1 개정판을 제안 표준으로 발행하도록 승인함 |
| 2014년[34][45] 6월 6일 | HTTP/1.1 리비전을 RFC 7230, 7231, 7232, 7233, 7234, 7235로 공개 |
| 2014년 8월 1일 ~ 2014년 9월[7][46] 1일 | HTTP/2에 대한 작업 그룹의 마지막 콜 |
| 2014년[6] 12월 16일 | HTTP/2를 IESG에 제출하여 제안된 표준으로 검토하다 |
| 2014년 12월 31일 ~ 2015년[47] 1월 14일 | HTTP/2의 IETF 마지막 콜 |
| 2015년[48] 1월 22일 | IESG 텔레채팅을 통해 HTTP/2를 표준으로 검토 |
| 2015년[8] 2월 17일 | IESG가 HTTP/2를 제안 표준으로 발행하도록 승인했습니다. |
| 2015년[49] 5월 14일 | HTTP/2를 RFC 7540으로 공개하다 |
| 2월 2020년 | RFC 8740: TLS 1.3을 사용한HTTP/2 |
암호화
HTTP/2는 HTTP URI(즉, H2c로 생략된 설정)와 HTTPS URI(TLS 1.2 이후가 필요한 ALPN 확장을[50] 사용한TLS 경유, h2로 단축된 설정) 모두에 대해 정의됩니다.
표준 자체는 암호화를 [51]사용할 필요가 없지만 모든 주요 클라이언트 구현(Firefox,[52] Chrome, Safari, Opera, IE, Edge)은 HTTP/2 over TLS만을 지원한다고 명시되어 있어 사실상 암호화가 [53]필수적입니다.
비판
개발 프로세스
FreeBSD와 Varnish의 개발자인 Poul-Henning Kamp는 이 표준이 비현실적으로 짧은 스케줄로 준비되었으며, SPDY 프로토콜 이외의 새로운 HTTP/2에 대한 어떠한 기반도 배제하고 있으며, 결과적으로 다른 개선 기회를 놓쳤다고 주장한다.캄프는 의정서 자체가 일관성이 없고 불필요하고 지나치게 복잡하다고 비판한다.또한 프로토콜이 프로토콜 계층화 원리를 위반한다고 명시하고 있습니다. 예를 들어, 전송 계층(TCP)에 속하는 흐름 제어를 복제하는 것입니다.그는 또한 새로운 프로토콜이 HTTP 쿠키를 제거했어야 한다고 제안하면서 획기적인 [54]변화를 도입했습니다.
암호화
처음에 작업 그룹의 일부[who?] 구성원은 프로토콜에 암호화 요구 사항을 도입하려고 했습니다.이것은 비판에 직면했다.
비평가들은 암호화에는 무시할 수 없는 컴퓨팅 비용이 들며 많은 HTTP 응용 프로그램이 실제로 암호화를 필요로 하지 않으며 공급자는 이에 추가 리소스를 지출할 의사가 없다고 말했습니다.암호화 찬성론자들은 이러한 암호화 오버헤드는 [55]실제로는 무시할 수 있다고 언급했습니다.Poul-Henning Kamp는 정치적 [54][56][57]고려를 이유로 IETF가 구글의 SPDY 프로토타입을 HTTP/2로 성급하게 표준화했다고 비난했다.기존 증명서 프레임워크 내의 암호화 의무에 대한 비판은 새로운 것도 아니고 오픈 소스 커뮤니티 멤버만의 것도 아닙니다.시스코의 한 직원은 2013년에 현재의 증명서 모델은 라우터 등의 소형 디바이스와 호환성이 없다고 말한 바 있습니다.현재의 모델에서는 연간 등록 및 데이터 수집이 필요할 뿐만 아니라각 인증서에 대한 비인증 수수료의 면제. 단,[58] 연간 단위로 지속적으로 반복해야 합니다.대부분의 클라이언트 실장에서는 암호화가 필요하지만, 결국 작업 그룹은 [51]암호화에 대한 합의에 이르지 못했습니다.그 때문에 암호화가 사실상의 요건이 되었습니다.
HTTP/2 프로토콜은 또한 SMTP와 같은 다른 인터넷 프로토콜에서 오랫동안 사용 가능했던 STARTTLS 메커니즘과 유사한 수동적 모니터링에 대한 조치인 기회주의적 암호화를 지원하지 않는다는 비판에 직면했습니다. 비평가들은 HTTP/2 제안이 IETF 자체의 RFC 7258 "Pervacous Monitoring is Attack,또한 ich는 Best Current Practice [59]188의 상태입니다.RFC7258/BCP188은 패시브모니터링을 공격으로 간주하도록 규정하고 있으며 IETF에 의해 설계된 프로토콜은 패시브모니터링으로부터 보호하기 위한 조치를 취해야 합니다(예를 들어 기회주의적 암호화를 사용).HTTP/2의 편의적 암호화를 위한 많은 규격이 [60][61][62]제공되었으며, 그 중 draft-notingham-http2-encryption이 작업 그룹의 공식 작업 항목으로 채택되어 2017년 5월에 RFC 8164가 발표되었다.
TCP 헤드오브라인 블로킹
HTTP/2의 설계는 여러 개의 동시 HTTP 트랜잭션을 허용함으로써 HTTP 트랜잭션레벨의 헤드오브라인 블로킹 문제에 효과적으로 대처하지만, 이러한 모든 트랜잭션은 단일 TCP 접속을 통해 다중화됩니다.즉, TCP 스트림의 패킷레벨 헤드오브라인 블로킹은 동시에 액세스되는 모든 트랜잭션을 차단합니다.에드가 그 연결고리를 통해요.HTTP/2의 이러한 헤드 오브 라인 블로킹은 현재 설계상의 결함으로 널리 인식되고 있으며, QUIC와 HTTP/3의 배후에 있는 많은 노력이 헤드 오브 라인 블로킹 [63][64]문제를 줄이기 위해 투입되어 왔습니다.
서버측 지원
서버 소프트웨어
- Apache 2.4.12는 모듈 mod_h2를 통해 HTTP/[65]2를 지원하지만 해당 모듈을 지원하려면 서버의 소스 코드에 적절한 패치를 적용해야 합니다.Apache 2.4.17에서 모든 패치는 메인 Apache 소스 트리에 [66]포함되지만 모듈 자체는 mod_http2로 이름이 변경되었습니다.이전 버전의 SPDY는 mod_spdy [67]모듈을 통해 지원되었지만 mod_spdy 모듈의 개발이 [68]중지되었습니다.
- Apache Tomcat은 구성 [69]변경과 함께 버전 8.5 이상의 HTTP/2를 지원합니다.
- Apache Traffic Server는 HTTP/[70]2를 지원합니다.
- Caddy는 HTTP/[71]2를 지원합니다.
- Charles Proxy는 Charles [72]4 이후 HTTP/2를 지원합니다.
- Citrix NetScaler 11.x 는 HTTP/2 [73]를 서포트합니다.
- Sucuri는 HTTP/[74]2를 지원합니다.
- F5 BIG-IP Local Traffic Manager 11.6은 HTTP/[75]2를 지원합니다.
- Barracuda Networks WAF(Web Application Firewall)는 HTTP/[76]2를 지원합니다.
- h2o는 HTTP/2 [77]지원을 위해 처음부터 구축되었습니다.
- HAProxy 1.8은 HTTP/[78]2를 지원합니다.
- Jetty 9.3은 HTTP/[79]2를 지원합니다.
- lighttpd 1.4.56은 HTTP/[80]2를 지원합니다.
- LiteSpeed Web Server 5.0은 HTTP/[81]2를 지원합니다.
- Microsoft IIS는 Windows [82]10, Windows Server 2016 및 Windows Server 2019에서 HTTP/2를 지원합니다.
- Netty 4.1은 HTTP/[83]2를 지원합니다.
- nginx 1.9.5는 2018년 [85]2월 20일 버전 1.13.9 이후 ngx_http_v2_module 및 HTTP/2 Server Push를 사용하여 2015년 9월 22일에 출시된 HTTP/[84]2를 지원합니다.
- Node.js 8.13.[86]0 이후 안정적인 지원(5.0은 모듈을 사용하여[87] HTTP/2를 지원하며 Node 8.4는 HTTP/2에 대한 실험적인 임베디드 지원을 도입했습니다).[88]
- ASP용 Kestrel 웹 서버.NET Core는 이후 HTTP/2를 지원합니다.NET Core 2.2.0 [89]프리뷰1
- OpenLite Speed 1.3.11 및 1.4.8은 HTTP/[90]2를 지원합니다.
- Proxygen은 HTTP/2를 지원합니다.
- Pulse Secure Virtual Traffic Manager 10.2는 HTTP/[91]2를 지원합니다.
- Radware Alteon NG는 HTTP/[92]2를 지원합니다.
- ShimmerCat은 HTTP/[93]2를 지원합니다.
- Vert.x 3.3은 HTTP/2를 지원합니다.
- Warp(Haskell 웹 서버, 기본적으로 Yesod에서 사용)는 HTTP/2를 지원합니다.
- Wildfly 9는 HTTP/2를 지원합니다.
- Essign 프록시는 HTTP/2를 지원합니다.
콘텐츠 전송 네트워크
- Akamai는 HTTP/2 및 HTTP/2 서버 푸시를 지원하는 최초의 메이저 CDN이었습니다.
- Microsoft Azure는 HTTP/2를 지원합니다.
- Page CDN은 즉시 HTTP/2를 지원하며 CDN [94]대시보드에서 HTTP/2 Server Push를 설정하기 위한 사용자 인터페이스를 제공합니다.
- CDN77은 nginx(2015년 8월 20일)를 사용하여 HTTP/2를 지원합니다.
- Cloudflare는 모든 보안 및 성능 [95]서비스를 유지하면서 SPDY를 포함한 nginx를 브라우저의 폴백으로 사용하는 HTTP/2를 지원합니다.Cloudflare는 HTTP/2 Server [96]Push를 지원하는 최초의 메이저 CDN이었습니다.
- AWS CloudFront는 2016년 9월 7일부터 HTTP/2를[97] 지원합니다.
- Server [98]Push를 포함한 HTTP/2를 신속하게 지원합니다.
- Imperva Incapsula CDN은 HTTP/[99]2를 지원합니다.구현에는 WAF 및 DDoS 경감 기능 지원도 포함됩니다.
- KeyCDN은 nginx(2015년 10월 6일)를 사용하여 HTTP/2를 지원합니다.HTTP/2 테스트는 서버가 HTTP/2를 지원하는지 확인하는 테스트 페이지입니다.
- Voxility는 2016년 7월부터 nginx를 사용하여 HTTP/2를 지원합니다.이 구현은 클라우드 DDoS 완화 [100]서비스를 지원하기 위해 제공됩니다.
- StackPath는 HTTP/2를 지원합니다.
실장
- 기타 구현은 GitHub HTTP/2 Wiki에서 수집됩니다.
「 」를 참조해 주세요.
레퍼런스
- ^ Bright, Peter (February 18, 2015). "HTTP/2 finished, coming to browsers within weeks". Ars Technica.
- ^ a b Cimpanu, Catalin. "HTTP-over-QUIC to be renamed HTTP/3 ZDNet". ZDNet. Retrieved November 19, 2018.
- ^ Thomson, M. (ed.), Belshe M. and R. Peon. "Hypertext Transfer Protocol version 2: draft-ietf-httpbis-http2-16". ietf.org. HTTPbis Working Group. Retrieved February 11, 2015.
- ^ a b c "Hypertext Transfer Protocol Bis (httpbis)". Internet Engineering Task Force. 2012.
- ^ "IETF HTTP Working Group". IETF HTTP Working Group. Retrieved December 15, 2019.
- ^ a b "History for draft-ietf-httpbis-http2-16". IETF. Retrieved January 3, 2015.
2014-12-16 IESG state changed to Publication Requested
- ^ a b Raymor, Brian (August 6, 2014). "Wait for it – HTTP/2 begins Working Group Last Call!". Microsoft Open Technologies. Archived from the original on October 6, 2014. Retrieved October 17, 2018.
- ^ a b The IESG (February 17, 2015). "Protocol Action: 'Hypertext Transfer Protocol version 2' to Proposed Standard (draft-ietf-httpbis-http2-17.txt)". httpbis (Mailing list). Retrieved February 18, 2015.
- ^ Mark Nottingham (February 18, 2015). "HTTP/2 Approved". ietf.org. Internet Engineering Task Force. Retrieved March 8, 2015.
- ^ "RFC 7540 - Hypertext Transfer Protocol Version 2 (HTTP/2)". IETF. May 2015. Retrieved May 14, 2015.
- ^ "See what's new in Firefox!". www.mozilla.org. Mozilla Foundation. February 2015.
- ^ "Can the rise of SPDY threaten HTTP?". blog.restlet.com. Restlet, Inc. October 2011. Archived from the original on January 6, 2014. Retrieved July 23, 2012.
- ^ "HTTP2 browser support". Retrieved March 9, 2017.
- ^ "Can I use... Support tables for HTML5, CSS3, etc". caniuse.com. Retrieved March 4, 2021.
- ^ "Usage of HTTP/2 for websites". World Wide Web Technology Surveys. W3Techs. Retrieved October 14, 2021.
- ^ Bishop, Mike (July 9, 2019). "Hypertext Transfer Protocol Version 3 (HTTP/3)". tools.ietf.org. Retrieved July 31, 2019.
- ^ "Can I use... Support tables for HTML5, CSS3, etc". caniuse.com. Retrieved January 19, 2020.
- ^ Cimpanu, Catalin (26 September 2019). "Cloudflare, Google Chrome, and Firefox add HTTP/3 support". ZDNet. Retrieved 27 September 2019.
- ^ a b Ilya Grigorik. "Chapter 12: HTTP 2.0". High Performance Browser Networking. O'Reilly Media, Inc.
HTTP/2 does not modify the application semantics of HTTP in any way
- ^ Pratt, Michael. "Apiux". apiux.com. Retrieved March 19, 2014.
- ^ Dio Synodinos (November 2012). "HTTP 2.0 First Draft Published". InfoQ.com. C4Media Inc.
- ^ Javier Garza (October 2017). "How does HTTP/2 solve the Head of Line blocking (HOL) issue".
- ^ Belshe, Mike; Thomson, Martin; Peon, Roberto (May 2015). "Hypertext Transfer Protocol Version 2 (HTTP/2)". tools.ietf.org. Retrieved November 17, 2017.
HTTP/2 uses DATA frames to carry message payloads. The "chunked" transfer encoding defined in Section 4.1 of [RFC7230] MUST NOT be used in HTTP/2
- ^ a b Sebastian Anthony (March 28, 2012). "S&M vs. SPDY: Microsoft and Google battle over the future of HTTP 2.0". ExtremeTech.
- ^ a b Grigorik, Ilya. "Life beyond HTTP 1.1: Google's SPDY".
- ^ Willy Tarreau; Amos Jeffries; Adrien de Croy; Poul-Henning Kamp (March 29, 2012). "Proposal for a Network-Friendly HTTP Upgrade". Network Working Group. Internet Engineering Task Force.
- ^ Doug Beaver (July 15, 2012). "HTTP2 Expression of Interest" (mailing list). W3C.
- ^ Dio Synodinos (November 30, 2012). "HTTP/2 First Draft Published". InfoQ.
- ^ a b Ilya, Grigorik (2015). HTTP/2 : a new excerpt from high performance browser networking (May 2015, First ed.). Sebastopol, Calif.: O'Reilly Media. pp. 211–224. ISBN 9781491932483. OCLC 1039459460.
- ^ "SPDY: An experimental protocol for a faster web". The Chromium Projects.
- ^ Chris Bentzel; Bence Béky (February 9, 2015). "Hello HTTP/2, Goodbye SPDY". Chromium Blog.
Update: To better align with Chrome's release cycle, SPDY and NPN support will be removed with the release of Chrome 51.
- ^ "API Deprecations and Removals in Chrome 51".
TL;DR: Support for HTTP/2 is widespread enough that SPDY/3.1 support can be dropped.
- ^ Shadrin, Nick (June 7, 2016). "Supporting HTTP/2 for Google Chrome Users NGINX". NGINX. Retrieved July 10, 2017.
- ^ a b Nottingham, Mark (June 7, 2014). "RFC2616 is Dead". Retrieved September 20, 2014.
- ^ "HTTP/1.1, part 1: URIs, Connections, and Message Parsing: draft-ietf-httpbis-p1-messaging-00". December 20, 2007. Retrieved September 20, 2014.
- ^ "Security Requirements for HTTP: draft-ietf-httpbis-security-properties-00.txt". January 23, 2008. Retrieved September 20, 2014.
- ^ Nottingham, Mark (January 24, 2012). "Rechartering HTTPbis". Retrieved September 20, 2014.
- ^ Nottingham, Mark (October 14, 2012). "Working Group Last Call for HTTP/1.1 p1 and p2". Retrieved September 20, 2014.
- ^ Nottingham, Mark (October 23, 2012). "Second Working Group Last Call for HTTP/1.1 p4 to p7". Retrieved September 20, 2014.
- ^ "SPDY Protocol: draft-ietf-httpbis-http2-00". HTTPbis Working Group. November 28, 2012. Retrieved September 20, 2014.
- ^ Nottingham, Mark (November 30, 2012). "First draft of HTTP/2". Retrieved September 20, 2014.
- ^ "Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing". Archived from the original on August 13, 2014. Retrieved September 20, 2014.
- ^ "Last Call: <draft-ietf-httpbis-p1-messaging-24.txt> (Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing) to Proposed Standard". The IESG. October 21, 2013. Retrieved September 20, 2014.
- ^ "Protocol Action: 'Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing' to Proposed Standard (draft-ietf-httpbis-p1-messaging-26.txt)". ietf-announce (Mailing list). The IESG. February 12, 2014. Retrieved January 18, 2015.
- ^ The RFC Editor Team (June 6, 2014). "RFC 7230 on Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing". ietf-announce (Mailing list). Retrieved January 18, 2015.
{{cite mailing list}}:last=범용명(도움말)이 있습니다. - ^ Nottingham, Mark (August 1, 2014). "Working Group Last Call: draft-ietf-httpbis-http2-14 and draft-ietf-httpbis-header-compression-09". HTTP Working Group. Retrieved September 7, 2014.
- ^ "Last Call: <draft-ietf-httpbis-http2-16.txt> (Hypertext Transfer Protocol version 2) to Proposed Standard from The IESG on 2014-12-31". Internet Engineering Task Force. 2014. Retrieved January 1, 2015.
- ^ "IESG Agenda: 2015-01-22". IETF. Archived from the original on January 15, 2015. Retrieved January 15, 2015.
- ^ The RFC Editor Team (May 14, 2015). "RFC 7540 on Hypertext Transfer Protocol Version 2 (HTTP/2)". ietf-announce (Mailing list).
{{cite mailing list}}:author=범용명(도움말)이 있습니다. - ^ "RFC 7301 - Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension". IETF. July 2014.
- ^ a b "HTTP/2 Frequently Asked Questions". IETF HTTP Working Group. Retrieved September 8, 2014.
- ^ "Networking/http2". MozillaWiki. Retrieved September 7, 2014.
- ^ "HTTP/2 Implementation Status". mnot’s blog.
- ^ a b Kamp, Poul-Henning (January 6, 2015). "HTTP/2.0 – The IETF is Phoning It In (Bad protocol, bad politics)". ACM Queue.
{{cite journal}}:Cite 저널 요구 사항journal=(도움말) - ^ Grigorik, Ilya. "Is TLS Fast Yet?". Retrieved December 30, 2015.
- ^ Kamp, P. H. (2015). "Http/2.0". Communications of the ACM. 58 (3): 40. doi:10.1145/2717515. S2CID 20337779.
- ^ Kamp, Poul-Henning (January 7, 2015). "Re: Last Call: <draft-ietf-httpbis-http2-16.txt> (Hypertext Transfer Protocol version 2) to Proposed Standard". ietf-http-wg@w3.org (Mailing list). Retrieved January 12, 2015.
- ^ Lear, Eliot (August 25, 2013). "Mandatory encryption *is* theater". ietf-http-wg@w3.org (Mailing list). Retrieved January 26, 2015.
- ^ Murenin, Constantine A. (January 9, 2015). "Re: Last Call: <draft-ietf-httpbis-http2-16.txt> (Hypertext Transfer Protocol version 2) to Proposed Standard". ietf-http-wg@w3.org (Mailing list). Retrieved January 12, 2015.
- ^ Paul Hoffman. "Minimal Unauthenticated Encryption (MUE) for HTTP-2: draft-hoffman-httpbis-minimal-unauth-enc-01". Internet Engineering Task Force.
- ^ Mark Nottingham; Martin Thomson. "Opportunistic Encryption for HTTP URIs: draft-nottingham-http2-encryption-03". Internet Engineering Task Force.
- ^ Mark Nottingham; Martin Thomson. "Opportunistic Security for HTTP: draft-ietf-httpbis-http2-encryption-01". Internet Engineering Task Force.
- ^ Huston, Geoff (March 4, 2019). "A Quick Look at QUIC". www.circleid.com. Retrieved August 2, 2019.
- ^ Gal, Shauli (June 22, 2017). "The Full Picture on HTTP/2 and HOL Blocking". Medium. Retrieved August 3, 2019.
- ^ "http/2 module for apache httpd". Retrieved July 28, 2015.
- ^ "Apache 2.4.17 release changelog". Retrieved August 22, 2017.
- ^ Matthew Steele (June 19, 2014). "mod_spdy is now an Apache project". Google Developers Blog.
- ^ "Log of /httpd/mod_spdy". svn.apache.org. Retrieved February 3, 2017.
- ^ "Apache Tomcat Migration". Retrieved July 29, 2016.
- ^ "Apache Traffic Server Downloads". trafficserver.apache.org. September 21, 2015.
- ^ Server, Caddy Web (March 23, 2016). "Caddy 2 - The Ultimate Server with Automatic HTTPS". caddyserver.com. Retrieved August 8, 2020.
- ^ "Charles 4 has HTTP/2". Public Object. August 2, 2016. Retrieved October 12, 2020.
- ^ "3 Simple Steps to Bring HTTP/2 Performance to Legacy Web Applications". September 22, 2015.
- ^ "Sucuri += HTTP/2 — Announcing HTTP/2 Support". Sucuri. November 27, 2015. Retrieved December 5, 2015.
- ^ Robert Haynes. "Goodbye SPDY, Hello HTTP/2". F5 Networks. Retrieved September 18, 2015.
- ^ Risov Chakrabortty (July 5, 2016). "New features, capabilities added to Barracuda Web Application Firewall". Barracuda Networks.
- ^ "H2O - the optimized HTTP/2 server". h2o.examp1e.net.
- ^ "What's New in HAProxy 1.8". haproxy.com. November 2017. Retrieved February 9, 2018.
- ^ "Jetty change log". Eclipse Foundation. May 28, 2015. Retrieved May 28, 2015.
- ^ "Feature #2813: Support for HTTP/2 protocol", Lighttpd
- ^ "LSWS 5.0 Is Out – Support for HTTP/2, ESI, LiteMage Cache". April 17, 2015.
- ^ Rob Trace; David Walp (October 8, 2014). "HTTP/2: The Long-Awaited Sequel". MSDN IEBlog. Microsoft Corporation.
- ^ "Netty.news: Netty 4.1.0.Final released". netty.io. Retrieved June 1, 2016.
- ^ "nginx changelog". www.nginx.com. September 22, 2015.
- ^ "Changes with nginx 1.14.2". nginx.org. December 4, 2018. Retrieved September 27, 2019.
- ^ Foundation, Node js. "Node v8.13.0 (LTS)". Node.js. Retrieved June 5, 2019.
- ^ "Node http2". www.github.com. July 26, 2016.
- ^ "Node v8.4.0 (Current)". nodejs.org. August 15, 2017.
- ^ "ASP.NET Core 2.2.0-preview1: HTTP/2 in Kestrel". Retrieved April 6, 2021.
- ^ "OpenLiteSpeed 1.4.5 change log". LiteSpeed Technologies, Inc. February 26, 2015. Retrieved February 26, 2015.
- ^ "Pulse Virtual Traffic Manager". August 22, 2017.
- ^ "Radware Combines an Integrated HTTP/2 Gateway with its Leading Fastview Technology to Provide Web Server Platforms Increased Acceleration". July 20, 2015.
- ^ "www.shimmercat.com". March 23, 2016.
- ^ "Why PageCDN, and what problem does it solve?". PageCDN. Retrieved January 11, 2020.
- ^ "HTTP/2 is here! Goodbye SPDY? Not quite yet". CloudFlare. Retrieved December 5, 2015.
- ^ Krasnov, Vlad (April 28, 2016). "Announcing Support for HTTP/2 Server Push". CloudFlare. Retrieved May 18, 2016.
- ^ "Amazon CloudFront now supports HTTP/2". Amazon Web Services, Inc. Retrieved September 8, 2016.
- ^ "Announcing Limited Availability for HTTP/2". Retrieved August 22, 2017.
- ^ "HTTP/2 is here: What You Need to Know". Retrieved November 1, 2015.
- ^ "HTTP/2 more at risk to cyber attacks?". Information Age. August 3, 2016. Retrieved February 4, 2019.
외부 링크
- 공식 웹사이트

- GitHub의 HTTP/2
- RFC 7540 – Hypertext Transfer Protocol 버전 2 (HTTP/2)
- RFC 7541 – HPACK: HTTP/2의 헤더 압축
- HTTP/2 설명 (Daniel Stenberg)
- SPDY 프로토콜(draft-mbelshe-httpbis-spdy-00)
- HTTP Speed+Mobility(드래프트-Montengro-httpbis-speed-mobility-01)
- 네트워크 친화적 HTTP 업그레이드 제안(draft-tareau-httpbis-network-friendly-00)
