본문 바로가기
KERD
논문KCI 등재

웹 및 스트리밍 서비스에 대한 QUIC 프로토콜 성능 분석

Performance Analysis of QUIC Protocol for Web and Streaming Services

0

조회

0

다운로드

1

인용

0

참고문헌

키워드

주제분류컴퓨터학

초록

최근 IETF에서는 HTTP/3.0 기반 웹서비스 제공을 위하여 QUIC 프로토콜 표준을 개발중에 있다. 기존 HTTP/1.1 및 HTTP/2에서는 수송계층프로토콜로서 TCP를 사용하는 데 비하여, HTTP/3에서는 QUIC/UDP를 사용한다. TCP와는 달리 QUIC에서는 연결설정에 소요되는 시간을 단축시키기 위해 0-RTT 혹은 1-RTT 기법을 사용하고, TCP의 head-of-line blocking 문제를 해결하기 위해 멀티스트리밍(multi-streaming) 기법을 사용한다. 이 밖에도 connection migration 등 다양한 특징을 제공하고 있으며, 구글의 크롬 브라우저에서 시험용 코드를 제공하고 있다. 이 논문에서는HTTP 기반의 웹 서비스 및 스트리밍 서비스를 대상으로 QUIC 프로토콜에 대한 성능 분석을 수행한다. 실제 오픈 소스 커뮤니티에서 제공하는코드를 활용하여 소규모 테스트베드를 구성하고, 다양한 링크 지연시간, 패킷오류율을 갖는 네트워크 환경에서 TCP 및 SCTP(Streaming ControlTransmission Protocol) 프로토콜과 QUIC 프로토콜의 성능을 비교하였다. 실험 결과, QUIC은 TCP 및 SCTP에 비해 더 좋은 성능을 보이며, 특히링크 지연시간 및 패킷오류율이 높을수록 기존 프로토콜과의 성능 격차는 더욱 커짐을 확인하였다.

Abstract

The IETF has recently been standardizing the QUIC protocol for HTTP/3 services. It is noted that HTTP/3 uses QUIC as the underlyingprotocol, whereas HTTP/1.1 and HTTP/2 are based on TCP. Differently from TCP, the QUIC uses 0-RTT or 1-RTT transmissions to reducethe connection establishment delays of TCP and SCTP. Moreover, to solve the head-of-line blocking problem, QUIC uses themulti-streaming feature. In addition, QUIC provides various features, including the connection migration, and it is available at the Chromebrowser. In this paper, we analyze the performance of QUIC for HTTP-based web and streaming services by comparing with the existingTCP and Streaming Control Transmission Protocol (SCTP) in the network environments with different link delays and packet error rates. From the experimental results, we can see that QUIC provides better throughputs than TCP and SCTP, and the gaps of performancesget larger, as the link delays and packet error rates increase.

참고문헌 (23)

  1. Protocol Suite, "TCP IP", pp.2002, Behrouz A. Forouzan
  2. R. Stewart, "SCTP : new transport protocol for TCP", IP, 2001, pp.5(6), 64~69
  3. J. Posetel, "User Datagram Protocol, STD 6, RFC 768", IETF, ~ (1980)
  4. 손장우, "IoT 홈 허브 및 장치에서 무선 공유기 네트워크 설정을 위한 반응형 웹 사용자 인터페이스 서비스 제공 방법", 한국통신학회논문지, 45(2), pp.368~374 (2020), 한국통신학회[DOI]
  5. B. H. Andreas, "Progressive Web Apps : The Possible Web-native Unifier for Mobile Development", International Conference on Web Information Systems and Technologies, 2, pp.344~351 (2017)
  6. C. Quentin, "Multipath QUIC : Design and Evaluation", Proceedings of the 13th International Conference on Emerging Networking Experiments and Technologies, pp.160~166 (2017)
  7. R. Minakshi, "Implementation of Quick UDP Internet Connections", International Journal of Engineering and Computer Science, 9(1), pp.24921~24924 (2020)
  8. C. Gaetano, "HTTP over UDP:an experimental investigtion of QUIC", Proceedings of the 30th Annual ACM Symposium on Applied Computing, pp.609~614 (2015)
  9. A. T. Saif, "Performance analysis of Google’s Quick UDP Internet Connection Protocol under Software Simulator", Journal of Physics : Conference Series, 1591(1), pp.12~26 (2020)
  10. "QUIC Working Group"[URL]
  11. S. Floyd, "A report on recent development in TCP congestion control", IEEE Communications Magazine, 39(4), pp.84~90 (2001)
  12. M. Matthew, "Forward acknowledgement : refining TCP congestion control", ACM SIGCOMM Computer Communication Review, 25(4), pp.281~291 (1996)
  13. S. Floyd, "An Extension to the Selective Acknowledgement (SACK)Option for TCP, RFC 2883", IETF, ~ (2000)
  14. J. Iyengar, "QUIC: A UDP-Based Multiplexed and Secure Transport draft-ietf-quicktransport-29", IETF, ~ (2020)
  15. K. Hugo, "On the Security of the TLS Protocol : A Systematic Analysis", Annual Cryptology Conference, pp.429~448 (2013)
  16. E. Rescorla, "The Transport Layer Security (TLS) Protocol Version 1.3, RFC 8446", ~ (2018)
  17. "The Go Programming Language"[URL]
  18. "Rust Programming Language"[URL]
  19. "Welcome to Python.org"[URL]
  20. "Caddy - The Ultimate Server with Automatic HTTPS"[URL]
  21. S. Cook, "QUIC : Better for what and for whom?", Proceedings of IEEE International Conference on Communications (ICC), pp.1~6 (2017)
  22. "lucas-clemente/quic-go: A QUIC implementation in pure go"[URL]
  23. "ishidawataru/sctp: SCTP library for the Go programming language"[URL]

관련 논문AI추천

이 간행물의 다른 논문 (3건)