![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLi8CXlx2YpRnch9CXt92Yu4Wd5lGbh5iclB3bsVmdlR2Lc9CX6MHc0RHaiojIsJye.jpg)
https://yqfile.alicdn.com/1bec500ccdc6d30da5a484833d7f4aaccb78e65a.png" >
前言
随着计算机和网络的普及,单独工作、不需要与其他用户交互的应用程序越来越少了。打开计算机,打开浏览器,打开各种各样的聊天和通信工具,我们接触到的是网络。展望未来的it产业,其中高性能的服务器设计,用户程序的分布管理,高效率的数据传输,数据安全等无不是我们网络程序设计者要考虑的问题。
网络编程复杂,一方面是因为网络协议本身复杂多样,许多编程者又对具体使用的下层协议了解不够;另一方面windows系统提供的编程接口多种多样,且都工作在不同的层次。虽然现在介绍网络编程的书很多,但大都没有将概念解释清楚,如完成端口、分层服务提供者、ndis等,更有甚者,就直接在书上罗列代码,对重要的概念、机制和协议等避而不谈,这给网络编程初学者学习时带来困惑。
作为一项新兴技术,p2p以其无与伦比的可伸缩性和对资源的利用率吸引了许多开发者、投资者、it经理人和大众的注意。常见的bt、emule、kuro、oicq等网络软件都是基于p2p模型的,它们的基本思想是不经过固定的服务器,internet上的任意两台计算机就可以直接通信。现在市场上这方面的书籍大多是注重理论,而谈论使用c/c++进行p2p程序设计的书籍还没有,这使得现今国内的p2p人才非常匮乏。
在网络安全越发显得重要的今天,防火墙在网络软件中扮演的角色越来越不容忽视了。然而,windows防火墙的开发涉及太多的公司内部机密,所以这项技术大都以原理的形式出现,很少有人提及具体的实现方法。网上虽然有不少出售防火墙源程序代码的站点,但是撇开不菲的价格不说,其简单的文档说明令没有相关编程经验的人很难看懂。这使得许多想从事防火墙开发的读者不知如何下手。
鉴于以上几点,我编写了介绍windows环境下visual c++网络与通信程序设计的书。我希望本书的读者不但能够学会网络编程,更能从此喜欢它,既愿意又有能力为中国的网络发展贡献自己的一份力量。
[第1章 计算机网络基础
<a href="https://yq.aliyun.com/articles/98654">1.2 计算机网络参考模型</a>
<a href="https://yq.aliyun.com/articles/98658">1.3 网络程序寻址方式</a>
<a href="https://yq.aliyun.com/articles/98661">1.4 网络应用程序设计基础</a>
[第2章 winsock编程接口
<a href="https://yq.aliyun.com/articles/98666">2.2 winsock的寻址方式和字节顺序</a>
<a href="https://yq.aliyun.com/articles/98674">2.3 winsock编程详解</a>
<a href="https://yq.aliyun.com/articles/98676">2.4 网络对时程序实例</a>
第3章 windows套接字i/o模型
第4章 iocp与可伸缩网络程序
第5章 互联网广播和ip多播
第6章 原始套接字
第7章 winsock服务提供者接口(spi)
第8章 windows网络驱动接口标准(ndis)和协议驱动的开发
第9章 网络扫描与检测技术
第10章 点对点(p2p)网络通信技术
第11章 核心层网络封包截获技术
第12章 windows网络防火墙开发技术
第13章 ip帮助函数
第14章 e-mail协议及其编程
第15章 telnet协议及其编程
第16章 ftp协议及其编程
第17章 多平台同步随身阅读——send to kindle的一种实现方式