问一个局域网简单的问题
现在有一个小的局域网,10台电脑左右。局域网上有一个磁盘柜(意思是对于局域网上的每台电脑,相当于是自己的硬盘一样)。我想做一个小型系统。思路如下:
首先是服务器端(就是一台普通电脑),启动服务器,侦听客户端的响应,如果客户端不忙,就发送包给服务器不忙,等局域网上的所有机子都发送消息后,可以判断哪些机子有空,哪些没有?服务器就给有空的机子发送命令包,请问这个时候侦听结束了,我要不要把侦听的那个线程关掉?命令包包括服务器名,ip,客户端名,ip, 文件在磁盘柜中路径,文件名等。当客户端接收到命令后,就开始处理文件。(文件较大)。此时服务器要每隔一段时间向客户端发送心跳包,判段客户端的状态。
如果客户端出错了就命令从新处理。当处理完成后退出。
请问:1.我是基于UDP,还是TCP?
2.用阻塞模式还是非阻塞模式?
3.服务器侦听,发心跳,命令从机退出等,我是在一个线程里完成,还是开不同的线程呢
4.怎么样让程序每隔一段固定的时间发送心跳包啊?那些包是不是定义一个结构体,用什么函数发这些包呢?
谢谢大家了,不懂网络程序。尽量具体点啊