Abstract
Huge requests for file transmission by concurrent users cause excessive memory copy operations and system calls between kernel and user space, which are very expensive and require many CPU cycles for processing. And it has been a bottleneck that limits the number of serviceable requests and prevents CPU resources from being allocated to other processes. In this paper, we suppose the zero-copy data path for efficient file transmission to solve the upper described problems. To do that, we used existing system call interface, sendfile, for file transmission from one device to another and used the same buffer page to transmit a file. The supposed zero-copy data path reduces CPU cost per transaction by eliminating CPU copies between kernel and user space and by avoiding unnecessary system calls in user space. The improved CPU efficiency means that a larger number of requests can be serviced with the same CPU configuration.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Halvorsen, P., Dalseng, T.A., Griwodz, C.: Assessment of Data Path Implementations for Download and Streaming. In: DMS 2005 (2005)
Stancevic, D.: Zero copy I: User-mode Perspective. Linux Journal (105) (2003)
Sotiropoulos, A., Tsoukalas, G., Koziris, N.: Efficient Utilization of Memory Mapped NICs onto Clusters using Pipelined Schedules. Cluster Computing and the Grid, 238 (2002)
Halvorsen, P., Jorde, E., Skevik, K.-A., Goebel, V., Plagemann, T.: Performance Tradeoffs for Static Allocation of Zero-copy Buffers. In: Euromicro Conference, pp. 138–143 (2002)
Skevik, K.-A., Plagemann, T., Goebel, V., Halvorsen, P.: Evaluation of a Zero-copy Protocol Implementation. In: Proceedings of Euromicro Conference 2001, pp. 324–330 (2001)
Halvorsen, P., Plagemann, T., Goebel, V.: Improving the I/O Performance of Intermediate Multimedia Storage Nodes. Multimedia Systems 9(1), 56–67 (2003)
Goldenberg, D., Kagan, M., Ravid, R., Tsirkin, M.S.: Zero-copy Sockets Direct Protocol over Infiniband-preliminary Implementation and Performance Analysis. In: Proceedings of the High Performance Interconnects 2005, pp. 128–137 (2005)
Shukla, A., Li, L., Subramanian, A., Ward, P.A.S., Brecht, T.: Evaluating the Performance of User-space and Kernel-space Web Servers. In: Proceedings of the 2004 conference of the Centre for Advanced Studies on Collaborative research (2004)
Vivek, S., Pai, P.D., Willy, Z.: IO-Lite: A unified I/O Buffering and Caching System. ACM Transactions on Computer Systems 18(1), 37–66 (2000)
Charles, D.C., Parulkar, G.M.: The UVM Virtual Memory System. In: USENIX Annual Technical Conference, Monterey CA, USA, pp. 117–130 (1999)
Shivam, P., Wyckoff, P., Panda, D.: EMP: Zero-copy OS-bypass NIC-driven Gigabit Ethernet Message Passing. In: Proceedings of the 2001 ACM/IEEE conference on Supercomputing (2001)
Park, S., Sang-Hwa, C., Bong-Sik, C., Sang-Moon, K.: Design and Implementation of an Improved Zero-Copy File Transfer Mechanism. In: Liew, K.-M., Shen, H., See, S., Cai, W. (eds.) PDCAT 2004. LNCS, vol. 3320, pp. 446–450. Springer, Heidelberg (2004)
Sotiropoulos, A., Tsoukalas, G., Koziris, N.: Efficient Utilization of Memory Mapped NICs onto Clusters using Pipelined Schedules. In: Cluster Computing and the Grid 2nd IEEE/ACM International Symposium, pp. 223–231 (2002)
Yun-Chen, L., Mei-Ling, C.: LyraNET: A Zero-Copy TCP/IP Protocol Stack for Embedded Operating Systems. Embedded and Real-Time Computing Systems and Applications, 123–128 (2005)
Yamagiwa, S., Aoki, K., Wada, K.: Active zero-copy: A performance Study of Non-deterministic Messaging. In: Proceedings of the 5th International Symposium on Parallel and Distributed Computing (2005)
Xiaofei, X., Yi, L., JiChang, K.: The Research on Zero-copy Receiving Method Based on Communication-page Pool. Parallel and Distributed Computing, Applications and Technologies, 416–419 (2003)
Tezuka, H., O’Carroll, F., Hori, A., Ishikawa, Y.: Pin-down Cache: A Virtual Memory Management Technique for Zero-copy Communication. In: Proceedings of IPPS/SPDP, pp. 308–314 (1998)
Dong-Jae, K., Kang-Ho, K., Sung-In, J., Hae-Young, B.: TCP/IP Offload Engine Module Supporting Binary Compatibility for Standard Socket Interfaces. In: Zhuge, H., Fox, G.C. (eds.) GCC 2005. LNCS, vol. 3795, pp. 357–369. Springer, Heidelberg (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kang, DJ., Kim, YH., Cha, GI., Jung, SI., Kim, MJ., Bae, HY. (2006). Design and Implementation of Zero-Copy Data Path for Efficient File Transmission. In: Gerndt, M., Kranzlmüller, D. (eds) High Performance Computing and Communications. HPCC 2006. Lecture Notes in Computer Science, vol 4208. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11847366_36
Download citation
DOI: https://doi.org/10.1007/11847366_36
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-39368-9
Online ISBN: 978-3-540-39372-6
eBook Packages: Computer ScienceComputer Science (R0)