Network User Monitoring System (NUMS)  

Project Domain / Category

 Networks / Desktop Application 


In a business enterprise, managers always want to keep track of the day-to-day work. These days, enterprises are wired enough to make their employees use computers and the Internet. All this makes the business to sail smoothly (at least in theory).

But, from the other end, use of IT makes the job of managers and analysts more miserable because they have to check what their employees are doing with their computers. For instance, an accounts clerk may be surfing the Internet all the time.

The system will be multi-tier, network software. It will be implemented for PCs running under Microsoft’s server class operating systems. It should be a system with a small footprint. The socket interface will be used to connect client and the server. Server will be multi-threaded. TCP packets must be used to send compressed images to the server at a certain frequency. MPEG-1 stream can be used but will require CBR (constant bit rate) and more bandwidth. It might be considered as an addition to the system later.

The daemon running on the client must be well aware of the activities performed and must use a XML protocol to send that information to the server. The server might be able to store its logs and the stations’ logs in a database or in files.

Functional Requirements:

The proposed Network User Monitoring System (NUMS) Server will be a multithreaded server implemented as a windows application using MFC. It will use TCP/IP suite to communicate among the clients and the server. It will have a standard windows interface and will be user-friendly. It will have a user’s manual and a help system. It will have a TCP socket interface to send and receive packets. In addition, the architecture of the server is component based.

The important tasks of the server include: 

  1. Receiving compressed image from the client from its TCP port.
  2. Examine the headers to identify the host.
  3. Registering/Un-registering the client.
  4. Rendering image to icon/full-screen.
  5. Send receive messages from TCP port.
  6. Web browser history.
  7. Client machine information.

The proposed Network User Monitoring System (NUMS) client will be a special agent running as a service in the client workstation when it boots up. No one except administrators can remove or control this service. In other words, it, is like a daemon process.

The important tasks of the Client include 

  1. Capture screen’s bitmap image. Compress it using Jpeg, Jpeg 2000, PNG or GIF compression. Package it into a TCP datagram. Locating server on the network. Send it to the port on the server at optimal frequency.
  2. For the messaging sub-system, it must host a TCP socket to accept/send messages to and from the server.
  3. Capture Web browser history to the request of server.
  4. Capture machine information.


Microsoft .Net framework, Visual C++. NET, Microsoft Visio

Leave a Comment