들어 본 적이 없을지도 모르지만, 당신이 Chrome 사용자라면 이미 Google QUIC 프로토콜을 사용하고 있을 가능성이 높다. 지난주 Google이 발표 한 바에 따르면, Chrome에서 Google 서버로 전송되는 요청의 절반은 QUIC가 사용 되고 있다.

 

도대체 왜 중요한 것인가? QUIC Google에 따르면 UDP 수준의 실험적 저 지연 인터넷 프로토콜이며, UDP는 게임, 스트리밍 미디어 및 VoIP 서비스에서 자주 사용되는 프로토콜이다. 'QUIC'라는 이름은 Quick UDP Internet Connection에서 비롯되었다.

 

프로토콜 세계에서 UDP( QUIC)와 비교되는 것은 TCP이다 (Internet Protocol [IP]와 함께 인터넷의 핵심 통신 언어이다). UDP TCP보다 상당히 경량이지만, 그 대신 TCP보다 지원하는 오류 정정 서비스가 적다. 이것은 전송 서버가, 예를 들어 데이터가 도착했는지, 올바른 순서로 도착 했는지를 조사하기 위해 수신 서버와 자주 교환하지 않는 것을 의미한다. UDP가 게임 서비스에 최적인 이유는 여기에 있다. 이러한 서비스는 오버 헤드를 줄이고 지연을 최소화하는 것이 바람직하며, 만일 최신 마우스 동작을 서버가 수신하지 않았다면 1~2 초를 보내면서 정정 할 필요는 없다 - 왜냐하면 액션은 이미 앞으로 진행 하고 있기 때문이다. 그러나 웹 사이트의 요청에 적합하지 않다. 왜냐하면 모든 데이터가 도착한 것을 보장 할 수 없기 때문이다.

 

QUIC에서 Google의 목표는 UDP TCP의 좋은 점을 가지고 최신 보안 기술과 결합했다.


 

일반 보안 TCP 연결은 브라우저가 실제로 데이터를 수신하기 시작까지 2~3 회 교환이 행해지는 것이 보통이다. QUIC를 사용하면 브라우저는 과거에 주고 받은 서버는 즉시 통신을 시작할 수 있다. 또한 QUIC는 혼잡 제어와 자동 재전송 등의 새로운 기능을 도입함으로써 순수 UDP보다 신뢰성을 높이고 있다.

Google은 나중에 HTTP/2 표준의 기초가 된 SPDY라는 QUICK과 같은 목적을 가지는 대체 프로토콜을 이미 개발하고 있지만, HTTP/2 TCP에서 작동하고 있기 때문에 같은 지연 문제를 안고 있다.

 

그렇다면 왜 Google TCP의 개선 작업을 하지 않을까라는 의문을 생각해 보는 것은 당연하다. 문제는 회사의 지적에 따르면, TCP 지원은 종종 운영 체제에 직접 통합 되어있는 것이다 - 그리고 OS Google의 제어가 전혀 미치지 못하는 부분이다. "QUIC 이라면 새로운 아이디어를 실험하고 즉시 결과를 볼 수 있다" 라고 팀은 이 방식을 채용 한 이유를 밝혔다. "효과가 입증 된 날에는 QUIC 기능이 TCP TLS로 전환되는 것을 바라고 있다." 아직 설치 되어 있는 Windows XP의 수를 감안하면 그것은 하룻밤 사이에 일어날 것이 아닌 것은 분명하다.

 

만약 Google이 새로운 프로토콜을 설계하면 인터넷의 근간을 지탱하는 모든 컴퓨터도 그것을 이해 해야 한다 - 그러나 그들이 이미 이해 하고 있는 것은 UDP이다.

 

Google에 따르면, QUIC Google 검색에서 평균 페이지 로딩 시간 약 3%의 개선을 보이고 있다. 별거 아니 것처럼 들리겠지만 Google 검색이 이미 최대한 최적화 되어 있는 것을 잊어서는 안된 다. 다른 사이트 - 특히 대기 시간이 긴 웹 애플리케이션 -는 더 큰 개선이 전망된다. YouTube QUIC 통해 접속 한 사용자는 비디오 시청 중 재 버퍼링이 약 30% 감소 되었다는 보고가 있으며, QUIC의 개선 된 혼잡 제어 및 UDP 손실 복구에 의해 매우 느린 연결의 사용자가 QUIC 의한 페이지 로딩 시간 개선을 볼 수 있다.

 

Google HTTP2-over-QUIC를 미래의 새로운 인터넷 표준으로 IETF에 제안 할 계획이라고 말했다.

 

이것은 다양한 의미로 Google SPDY 노력과 유사하다. 회사는 그 때도 먼저 Chrome과 자사 서비스에서 프로토콜 프로토 타이핑을 수행 한 다음 HTTP의 새로운 버전 기반으로 제안했다.

또한 자신의 Chrome QUIC를 사용하여 연결하고 있는지를 알기 위해서는 이 브라우저 기능 확장을 설치 하면 된다(https://chrome.google.com/webstore/detail/http2-and-spdy-indicator/mpbpobfflnpcgagjijhmgnchggcjblin?hl=en).

 

 

출처: http://techcrunch.com/2015/04/18/google-wants-to-speed-up-the-web-with-its-quic-protocol/#.iziele:LJq8

 

 

C++ 라이브러리

libquic: https://github.com/devsisters/libquic

저작자 표시
신고
by 흥배 2015.07.02 08:00
| 1 |

티스토리 툴바