http/3는 UDP 기반으로 제작중

과거, 지금까지 www에 쓰고있는 프로토콜인 http/1와 http/2까지는 전부 TCP 기반으로 된 구조를 가지고 있었다.
UDP보단 TCP가 훨씬 신뢰성이 있고 안정적이기 때문이었다. image

image 사진출처: https://www.thegeekstuff.com/2011/11/tcp-ip-fundamentals/


그런데 근래에 제작중인 http의 새로운 버전 3에서는 tcp를 사용하지 않고, udp를 기반으로 할 것이라고 한다.
https://evan-moon.github.io/2019/10/08/what-is-http3/?fbclid=IwAR1HcqJF_x1TIKr_ieM0astwryO4-llDQx1SerREz3C3I2sbP98STJcNbuQ

왜일까?
udp는 너무 불안정하지 않나? 그냥 쏘기만 하고 검증도 제대로 안 하는 규격인데?

당연히 udp를 그대로 쓴다는건 아니다.

기존의 http 규격은 tcp를 기반으로 했기 때문에 tcp의 고질적인 결함까지 그대로 계승했다.
기본적으로 들어가는 헤더도 쓸데없이 많고, 레이턴시도 크고...

이걸 고치려면 tcp까지 내려가서 다 고쳐야하는데, 이것도 만만치 않은 작업이라고 한다.

그래서 tcp보다 훨씬 구조적으로 간단한 udp를 갖다가 살을 붙이는 식으로 해서 쌓아올리는 방식을 사용한 것이다.
그렇게 해서 만든것이 QUIC(Quick Udp Internet Connection)이라는 프로토콜이다.

그리고 저기다가 http를 올린 것이 곧 있으면 나올 http/3인 것이다.
기존의 http/2와 비교하면 대충 이렇게 된다. image

image 사진출처: https://eng.uber.com/employing-quic-protocol/

아직 완벽하게 완성된건 아니지만, 대충 써볼수 있을 정도는 구현이 됐다고 한다.
정 궁금하면 한번 써보자.