网络编程包含进程,信号,字节顺序,内存映射以及动态内存分配,都扮演非常重要的角色。
网络编程最典型的模型就是客户端和服务器模型,采用这个模型,一个应用由一个服务器进程和多个客户端进程组成的。服务器管理某种资源,并且通过操作这种资源来为它的客户端提供某种服务。例如,一个web服务器管理一组磁盘文件,它会代表客户端进行检索和执行。一个FTP服务器管理着一组磁盘文件,它会为客户端进行存储和检索。
客户端和服务器模型中的基本操作是事务。一个客户端服务器事务通常由以下4步组成:
1)当一个客户端需要服务时,它向服务器发送一个请求,发起一个事务。例如,当web浏览器需要一个文件,它就发送一个请求给web服务器。
2)服务器收到请求后,解释它,并以适当的方式操作它的资源。例如,当web服务器收到浏览器请求发出后,它就去读取一个磁盘文件。
3)服务器给客户端发送一个响应,并等待下一个请求。例如,web服务器将文件发回客户端。
4)客户端收到响应并处理它。例如,当web浏览器收到来自服务器的一页后,就在屏幕上显示此页。