I am doing a Project for my final year and i am building a LAN management tool. In this tool the admin will have Access to all the PCs on the LAN, He can take a Screen Capture of Any connected user PC, admin can chat with other users on the LAN etc. I am thinking to do this project in Java. What do you guys think that I should look into to successfully complete this project?
Also do I need a Dedicated server for this project or can I make the Admin Pc to act like Server and rest all Clients?
Any new ideas/suggestions etc are Welcomed
BTW Bucky You are just Awesome man. Keep Up the good work!!
How do I create a server for my project
Post a Reply
|Oldest Newest Rating|
· July 26, 2014
The are a few ways of approaching this.
1: Make the pc's listen on a certain port. Whenever you need to execute something, the admin PCs connects to the user PCs, tells them what it needs, they send it back and disconnects. The Problem with this approach is the user PCs can't push info directly to the server. They need to wait for the server to connect to them before being able to transfer data. Another problem is that the server does not necessarily know the IP addresses of the computers, nor how many there are.
2: Make the server listen on a certain port, and whenever there is something to report, the user PCs connect to the port, send the data and disconnects. This one shouldn't be an option because the admin PC won't be able to send or request data directly to the user PC, it needs to wait for them to just send it. This solves the problem of the master not knowing the IPs, because it doesn't need them.
3: Combine the two above. With the combination of the two methods above you get the best of both worlds. This could be a working option. The master can store the IPs of the nodes after they connected the first time, enabling it to send data to them.
4: Maintain a connection between the user PCs and the server. This allows both parties so push and receive data whenever they need to. Have the admin PC listen and the user PCs connect with a persistent TCP connection. This is a bit harder to program but should be the best option of the 4 (IMO).
Other question i think needs to be asked: How will you keep the connection secure? How will privacy freaks feel about it? how will you know that a computer or connection is still alive? How will you prevent the user from killing the process with the task manager?
Whether you will need a dedicated server depends on the amount of computers you have and a full list of features. But just using your admin PC as a server should work fine.
· July 26, 2014
Thanks for the reply mate. I am just doing a mini project in my college so i am not much concerned about security and privacy stuff. I will add new features and enhance the overall software once I complete the core thing. The 3rd option you mentioned looks good, will try to implement that. If anyone else has some other ideas can help.
· July 26, 2014
In my first 3 options, i don't specify a protocol. It can be done using either TCP or UDP. For the my first option, you don't have a server, just a computer with the right program which knows where all of the other PCs lie on the network.
How do you purpose to do it without a server/client model on at least some level?
Chat about routers, switches and firewalls, and more!
|Bucky Roberts Administrator|