TransPortal: Keeping Applications Enjoying Tailored Transport Effortlessly
Jie Zhang,Xutong Zuo,Xiaohui Xie,Wei Wang,Yong Cui
DOI: https://doi.org/10.1109/iwqos61813.2024.10682948
2024-01-01
Abstract:Since its advent, TCP has been the overwhelming choice at the transport layer. Developers utilize transport entities of TCP provided by the operating system to implement their network applications. Recently, due to the limitations of TCP and challenges in extending it, noteworthy protocols, such as TLS and QUIC, are emerging. Applications are motivated to try these modern transport protocols for security, performance, flexibility, and extensibility purposes. Unlike TCP, which adheres to the POSIX standards, most entities of these new protocols provide complex project-specific interfaces, making integrating them difficult and may introduce security risks.In this paper, we propose TransPortal, a framework enabling applications to utilize modern transport services flexibly and safely. TransPortal decouples the implementation of applications from underlying entities, and executes transport entities in separate transport agents, which can be replaced without application modification and even runtime. In addition, TransPortal monitors the execution of agents and provides error handling, protecting applications from instability or misuse of new transport entities. We implement a prototype of TransPortal and explore it with several popular transport entities. Extensive evaluation demonstrates that TransPortal provides applications convenience and safety while incurring acceptable overhead.