kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoT
To address the shortcomings of TCP, the IETF has standardized QUIC, a new userspace transport protocol. Despite its benefits, the implementation of QUIC in the userspace introduces significant processing overhead, which makes it less suitable for IoT devices. According to our empirical analyses, as...
Saved in:
| Main Authors: | , |
|---|---|
| Format: | Article |
| Language: | English |
| Published: |
IEEE
2025-01-01
|
| Series: | IEEE Access |
| Subjects: | |
| Online Access: | https://ieeexplore.ieee.org/document/11028997/ |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
| _version_ | 1850161393331863552 |
|---|---|
| author | Puneet Kumar Behnam Dezfouli |
| author_facet | Puneet Kumar Behnam Dezfouli |
| author_sort | Puneet Kumar |
| collection | DOAJ |
| description | To address the shortcomings of TCP, the IETF has standardized QUIC, a new userspace transport protocol. Despite its benefits, the implementation of QUIC in the userspace introduces significant processing overhead, which makes it less suitable for IoT devices. According to our empirical analyses, as the packet loss rate increases from 0% to 2.5%, the data copying overhead between the kernel and userspace increases by 26% with QUIC, whereas TCP experiences no additional overhead. In this paper, we identify and study the overhead associated with QUIC and introduce an enhanced implementation called kQUIC, designed to enhance the protocol for IoT applications. kQUIC tackles two primary shortcomings of QUIC. First, it reduces the overhead of system calls by implementing QUIC within the kernel, as opposed to the traditional userspace implementation. Second, kQUIC enables multiple applications on an IoT device to multiplex their data through a single underlying UDP pipeline, thereby reducing transport-layer header overhead. Our analyses and empirical evaluations demonstrate that kQUIC outperforms both TCP and QUIC in terms of throughput and processor utilization. For example, in a single-application scenario with a 2.5% packet loss rate, kQUIC achieves 13.2% and 29.5% higher throughput than TCP and QUIC, respectively. Under the same conditions, with an application message size of 1400 bytes, kQUIC exhibits 49.76% lower processor utilization than QUIC and 27.41% lower than TCP. kQUIC’s application multiplexing feature further enhances throughput and reduces overall processor usage in multi-processor and multi-application scenarios across all packet loss rates and message sizes. |
| format | Article |
| id | doaj-art-23bbc96acd734bc5920525cb23f75fbb |
| institution | OA Journals |
| issn | 2169-3536 |
| language | English |
| publishDate | 2025-01-01 |
| publisher | IEEE |
| record_format | Article |
| series | IEEE Access |
| spelling | doaj-art-23bbc96acd734bc5920525cb23f75fbb2025-08-20T02:22:50ZengIEEEIEEE Access2169-35362025-01-011310039210040410.1109/ACCESS.2025.357812011028997kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoTPuneet Kumar0https://orcid.org/0000-0002-9278-0408Behnam Dezfouli1https://orcid.org/0000-0001-6090-0412Department of Computer Science and Engineering, Internet of Things Research Laboratory, Santa Clara University, Santa Clara, CA, USADepartment of Computer Science and Engineering, Internet of Things Research Laboratory, Santa Clara University, Santa Clara, CA, USATo address the shortcomings of TCP, the IETF has standardized QUIC, a new userspace transport protocol. Despite its benefits, the implementation of QUIC in the userspace introduces significant processing overhead, which makes it less suitable for IoT devices. According to our empirical analyses, as the packet loss rate increases from 0% to 2.5%, the data copying overhead between the kernel and userspace increases by 26% with QUIC, whereas TCP experiences no additional overhead. In this paper, we identify and study the overhead associated with QUIC and introduce an enhanced implementation called kQUIC, designed to enhance the protocol for IoT applications. kQUIC tackles two primary shortcomings of QUIC. First, it reduces the overhead of system calls by implementing QUIC within the kernel, as opposed to the traditional userspace implementation. Second, kQUIC enables multiple applications on an IoT device to multiplex their data through a single underlying UDP pipeline, thereby reducing transport-layer header overhead. Our analyses and empirical evaluations demonstrate that kQUIC outperforms both TCP and QUIC in terms of throughput and processor utilization. For example, in a single-application scenario with a 2.5% packet loss rate, kQUIC achieves 13.2% and 29.5% higher throughput than TCP and QUIC, respectively. Under the same conditions, with an application message size of 1400 bytes, kQUIC exhibits 49.76% lower processor utilization than QUIC and 27.41% lower than TCP. kQUIC’s application multiplexing feature further enhances throughput and reduces overall processor usage in multi-processor and multi-application scenarios across all packet loss rates and message sizes.https://ieeexplore.ieee.org/document/11028997/Internet of Things (IoT)system callsprocessor utilizationmultiplexingQUICtransport protocols |
| spellingShingle | Puneet Kumar Behnam Dezfouli kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoT IEEE Access Internet of Things (IoT) system calls processor utilization multiplexing QUIC transport protocols |
| title | kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoT |
| title_full | kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoT |
| title_fullStr | kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoT |
| title_full_unstemmed | kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoT |
| title_short | kQUIC: A Kernel-Based Quick UDP Internet Connections (QUIC) Transport for IoT |
| title_sort | kquic a kernel based quick udp internet connections quic transport for iot |
| topic | Internet of Things (IoT) system calls processor utilization multiplexing QUIC transport protocols |
| url | https://ieeexplore.ieee.org/document/11028997/ |
| work_keys_str_mv | AT puneetkumar kquicakernelbasedquickudpinternetconnectionsquictransportforiot AT behnamdezfouli kquicakernelbasedquickudpinternetconnectionsquictransportforiot |