네이버 접속 > F12 > Network 탭 > Protocol컬럼 을 확인 해 보자

보통은 이렇게 http2 (h2) 이지만

구글이 서비스하는 것을 보면 http3 (h3) 를 쓰는 것을 볼 수 있다.

 

 

http3는 무엇일까?

http2에 이어서 http3가 나왔는데 http2의 기능을 계승하고 TLS + UDP 의 빠른 성능 및 QUIC의 효율성을 얹은 프로토콜이다.

 

QUIC이란 무엇일까?

빠른 프로토콜 + 신뢰성있는 계층이다. UDP 계층에 얹어져 있는 레이어인데 TLS계층을 넣었기 때문에 TCP가 아니여도 신뢰성있는 데이타를 주고 받을 수 있다.

TLS레이어란?

핸드쉐이크 레이어 리코드 레이어  이고 이렇게 구성된다.

이를 장착한 QUIC 레이어는 위와 같게 된다.

처음 0-RTT부터 시작해서 핸드쉐이크가 일어나고

그 다음 서버에서 다시 1-RTT를 주고

클라이언트에서 핸드쉐이크 1-RTT를 주고 나서

해당 서버는 1 - RTT 키를 갖게 되며

둘간의 암호화가 적용되는 모습이다.

자세한 내용은 아래 링크 참고

https://quicwg.org/base-drafts/draft-ietf-quic-tls.html#rfc.section.5.2

참고로 http2는 스트림을 이용해서 이렇게 하나의 커넥션(멀티플렉싱)으로 여러개의 파일을 다운받을 수 있다.

 

node.js에서의 적용은 다음과 같다.

https://www.nearform.com/blog/a-quic-update-for-node-js/

https://github.com/rmarx/quicker

공식사이트

https://quicwg.org/base-drafts/draft-ietf-quic-http.html

 

 

 

 

출처 : m.blog.naver.com/jhc9639/222073326774

 

+ Recent posts