2016-12-06 00:00:00少芬 网页程序设计
想要熟练掌握Linux下的TCP/IP网络编程,至少有三个层面的知识需要熟悉:
1. TCP/IP协议(如连接的建立和终止、重传和确认、滑动窗口和拥塞控制等等)
2. Socket I/O系统调用(重点如read/write),这是TCP/IP协议在应用层表现出来的行为。
3. 编写Performant, Scalable的服务器程序。包括多线程、IO Multiplexing、非阻塞、异步等各种技术。
关于TCP/IP协议,建议参考Richard Stevens的《TCP/IP Illustrated,vol1》(TCP/IP详解卷1)。
关于第二层面,依然建议Richard Stevens的《Unix network proggramming,vol1》(Unix网络编程卷1),这两本书公认是Unix网络编程的圣经。
至于第三个层面,UNP的书中有所提及,也有著名的C10K问题,业界也有各种各样的框架和解决方案,本人才疏学浅,在这里就不一一敷述。
本文的重点在于第二个层面,主要总结一下Linux下TCP/IP网络编程中的read/write系统调用的行为,知识来源于自己网络编程的粗浅经验和对《Unix网络编程卷1》相关章节的总结。由于本人接触Linux下网络编程时间不长,错误和疏漏再所难免,望看官不吝赐教。
一. read ..........
阅读全文[网页程序设计]热门推荐
874
人