Linux —— 网络服务模型
其他
2019-04-16 03:24:29
阅读次数: 0
独立的守护进程工作模式
原理
- 在Client/Server模式下。服务器监听(Listen)在一个特定的端口上等待客户连接。连接成功后服务器和客户端通过端口进行数据通信。
- 守护进程的工作就是打开一个端口,并且等待(Listen)进入连接。
- 如果客户端发起一个连接请求,守护进程就创建(Fork)一个子进程响应这个连接,而主进程继续监听其他的服务请求。
- 运行独立的守护进程工作方式称作:stand-alone。它是Unix传统的C/S模式的访问模式。
- 在负载很大服务器上,预先创建子服务器,可以提高客户的服务速度。
基于 xinetd 的工作模式
原理
- xinetd 能够同时监听多个指定的端口,在接受用户请求时,它能够根据用户请求的端口不同,启动不同的网络服务进程来处理这些用户请求。
- 可以把xinetd看做一个管理启动服务的管理服务器,它决定把一个客户请求交给那个程序处理,然后启动相应的守护进程。
- 运行单个xinetd就可以同时监听所有服务端口,这样就降低了系统开销,保护系统资源。
- 但是对于访问量大、经常出现并发访问时,xinetd想要频繁启动对应的网络服务进程,反而会导致系统性能下降。
特点
- 支持对TCP、UDP、RPC服务的管理
- 可以实施基于时间段的访问控制
- 功能完备的log功能,可以记录连接成功、连接失败的行为
- 能够有效地防止拒绝服务(DoS)的攻击
- 能够限制同时运行的同一类型的服务器的数目
- 能够限制log文件大小
- 能够将某个服务绑定在特定的系统接口上,从而实现只能允许私有网络访问某项服务。
- 能够实现作为其它系统的代理。
转载自blog.csdn.net/starter_____/article/details/89313391