Abstract
Embedded systems are usually resource limited in terms of processing power, memory, and power consumption, thus embedded TCP/IP should be designed to make the best use of limited resources. Applying zero-copy mechanism can reduce memory usage and CPU processing time for data transmission. Power consumption can be reduced as well.
In this paper, we present the design and implementation of zero-copy mechanism in the target embedded TCP/IP component, LyraNET, which is derived from Linux TCP/IP codes and remodeled as a reusable software component that is independent from operating systems and hardware. Performance evaluation shows that TCP/IP protocol processing overhead can be significantly decreased by 23–63%. Besides, object code size of this network component is only 77.64% of the size of the original Linux TCP/IP stack. The experience of this study can serve as the reference for embedding Linux TCP/IP stack into a target system that requires network connectivity and improving the transmission efficiency of Linux TCP/IP by zero-copy implementation.
Similar content being viewed by others
References
Bruno, J., Brustoloni, J., Grabber, E., Silberschatz, A., and Small, C. 1999. Pebble: A component based operating system for embedded applications. In Proceedings of 3rd Symposium on Operating Systems Design and Implementation, USENIX.
Brustoloni, J. C. and Steenkiste, P. 1996. Effects of buffering semantics on I/O performance. In Proceedings 2nd Symposium on Operating Systems Design and Implementation (OSDI’96), USENIX, pp. 277–291.
Chase, J., Gallatin, A., and Yocum, K. 2001. End-system optimizations for high-speed TCP. IEEE Communications, 39(4):68–74.
Chen, C.-H. 2004. LyraDD: Design and implementation of the device driver model for embedded systems, master thesis, Department of Information Management, National Chi-Nan University.
Chen, Z. Y. 2000. A component based embedded operating system, master thesis, Department of Information and Computer Science, National Chiao Tung University.
Chen, Z. Y., Chiang, M. L., and Chang, R. C. 2000. A component based operating system for resource limited embedded devices. In IEEE International Symposium on Consumer Electronics (ISCE’2000), HongKong.
Chiang, M.-L. and Lo, C.-R. 2006. LyraFILE: A component-based VFAT file system for embedded systems. To Appear in International Journal of Embedded Systems, Issue 1.
Chu, H. K. J. 1996. Zero-Copy TCP in Solaris. In Proceedings of the USENIX 1996 Annual Technical Conference, SanDiego, California.
Chuang, J.-W., Sew, K.-S., Chiang, M.-L., and Chang, R.-C. 2000. Integration of linux communication stacks into embedded operating systems. International Computer Symposium (ICS’2000).
Druschel, P. and Peterson, L. L. 1993. Fbufs: A high-bandwidth cross-domain transfer facility. ACM SIGOPS Operating Systems Review, 27(5):189–202.
“eCos, http://sources.redhat.com/ecos/,” 2004
Friedrich, L., Stankovic, J., Humphrey, M., Marley, M., and Haskins, J. 2001. A survey of configurable component-based operating systems for embedded applications. IEEE Micro, 21(3):54–68.
Fusion embedded TCP/IP stack, http://www.unicoi.com/fusion_net/fusion_tcpip.htm
Grabber, E., Small, C., Bruno, J., Brustoloni, J., and Silberschatz, A. 1999. The pebble component-based operating system. In 1999 USENIX Annual Technical Conference.
Herbert, T. Internet Appliance Design Embedding TCP/IP, http://www.embedded.com/internet/0001/0001ia1. htm
Huang, W.-S. 2000. An implementation of a configurable window system on lyraOS. Master Thesis, Department of Computer and Information Science, National Chiao Tung University.
“Linux Kernel 2.4 Internals at http://www.tldp.org/LDP/lki/index.html,” 2002
“lwIP—A Lightweight TCP/IP stack, http://savannah.nongnu.org/projects/lwip/,” 2004
Massa, A. J. 2002. Embedded Software Development with eCos, Prentice Hall PTR.
“MicroC/OS II, at http://www.ucos-ii.com/,” 2004
“NicheStack IPv4, http://www.iniche.com/nichestack.php”
Rusling, D. A. 2002. The linux kernel, http://www.tldp.org/LDP/tlk/tlk.html
Satchell, S. T., Clifford, H. B. J., and Clifford, H. 2000. Linux IP stacks commentary: guide to gaining insider’s knowledge on the IP stacks of the linux code, Coriolis Group Books.
Steenkiste, P. A. 1994. A systematic approach to host interface design for high-speed networks. ACM Computer, 27(3):47–57.
Steenkiste, P. 1998. Design, implementation, and evaluation of a single-copy protocol stack. Software-Practice and Experience, 28(7):749–772.
“TargetOS, http://www.blunkmicro.com/os.htm”
“TargetTCP, http://www.blunkmicro.com/tcp.htm”
Ting, H. K., Lo, C. R., Chiang, M. L., and Chang, R. C. 2002. Adapting LINUX VFAT filesystem to embedded operating systems. International Computer Symposium (ICS’2002), HwaLian, Taiwan, R.O.C.
“ttcp, http://www.clarkson.edu/projects/itl/HOWTOS/PCATTCP-jnm-20011113.htm”
Wright, G. R. and Stevens, W. R. 1994. TCP/IP Illustrated Vol. 1, 1st edition. Addison-Wesley Professional.
Yang, C. W. 1998. An integrated core-work for fast information-appliance buildup, masters thesis, Department of Information and Computer Science, National Chiao Tung University.
Yang, C.-W., Lee, P. C. H., and Chang, R. C. 1998. Reuse linux device drivers in embedded systems. In Proceeding of the 1998 International Computer Symposium (ICS’98), Taiwan.
Yang, C.-W., Lee, C. H., and Chang, R. C. 1999. Lyra: A system framework in supporting multimedia applications. In IEEE International Conference on Multimedia Computing and Systems’99, Florence, Italy.
Author information
Authors and Affiliations
Corresponding author
Additional information
This paper is an extended version of the paper “LyraNET: A Zero-Copy TCP/IP Protocol Stack for Embedded Operating Systems” that appeared in the 11th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.
Mei-Ling Chiang received the B.S. degree in Management Information Science from National Chengchi University, Taipei, Taiwan, in 1989. She received the M.S. degree in 1993 and her Ph.D degree in 1999 in Computer and Information Science from National Chiao Tung University, Hsinchu, Taiwan. Now she is an Assistant Professor in the Department of Information Management at National Chi-Nan University, Puli, Taiwan. Her current research interests include operating systems, embedded systems, and clustered systems.
Yun-Chen Lee received the B.S degree in 2002 and the M.S. degree in 2005 in Information Management from National Chi-Nan University, Puli, Taiwan. He is currently a software engineer in InterVideo Digital Tech., responsible for software development of multimedia-related products.
Rights and permissions
About this article
Cite this article
Chiang, ML., Li, YC. LyraNET: A zero-copy TCP/IP protocol stack for embedded systems. Real-Time Syst 34, 5–18 (2006). https://doi.org/10.1007/s11241-006-6879-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-006-6879-7