防止NFS拒绝服务

我有一台运行Ubuntu 10.04 Server的NFS4服务器,在一个拥有50多个客户端的企业环境中运行。

总的来说,一切正常,但有时客户端会每秒开始+1000次NFS操作,通常是因为客户端软件故障或软件编写不佳。

发生这种情况时,客户通常会在dmesg上收到很多这样的消息:

[443947.760016] nfs: server 192.1.1.111 not responding, still trying [443952.696017] nfs: server 192.1.1.111 not responding, still trying [443954.056079] nfs: server 192.1.1.111 OK [443954.056311] nfs: server 192.1.1.111 OK 

我的NFS4服务器启动96个守护进程。 它运行在一个8核multithreadingCPU(共16个线程),16GB RAM内存上。 也许96不是一个好的select?

我开发了一些工具来绘制NFS客户端的使用情况,以便我可以检测到问题并手动终止客户端。 当然,我也可以自动这个。 不过,我不想这么激进。 大部分时间,这不是他们的错,我不希望客户发疯,因为我搞了两周的模拟,因为gnome-settings-daemon变得有趣。

那么,在通过这个不太好的path之前,是否有任何防止NFS拒绝服务的良好实践或已build立的机制?