You are to write a Hybrid version of P2P and Client/Server application. It follows a similar yet way simpler architecture as Skype.
The application consists of two programs. The first program is a Server that authenticates in a rather simplistic way users before they can engage in a chat. For the purposes of this project, the server will keep track of only 5 users in a basic plain text file. This file contains a name and an IP address. Example:
If you're doing all in one computer and without the use of virtual machines, you could have 127.0.0.1 for all users as all will be running locally.
The second application is the one which asks the user for its name and afterwards will initially connect to the Server to authenticate and upon successful authentication, will get the list of all the peers in their locations. The success of the authentication depends whether the user is registered or not in the list of the server. If the user name is not in the list, then the server will reply NULL instead of the list of user and locations. If NULL is received the application should print an error message accordingly and reask again for a user name.
Each peer should do the procedure mentioned above prior to chatting.
After there are at least two peers at least ON, then they can start chatting sending messages back and forth. These chat paradigm is in a pure P2P fashion. For this purpose, a multithreaded portion is necessary here. The multithreaded portion requires a thread running a client part and a thread running the server part. The client thread send messages and the server thread allows for receving them.
The first part of the project where authentication happens with the server must be done using TCP sockets.
The second part of the project where chat happens between peers must be done using UDP sockets.
As usual, if you have any question, please let me know.
Project Due: October 13, 2014
6 freelancers are bidding on average $453 for this job
I'm a 5-year experience software developer in Java SE, EE, and ME. I have worked with client/server applications over TCP in multithreaded way many times. I was even teaching them to Java course students. I like your c Daha Fazla
I have 5 years of programming experience. I can help you solve this problem. When you work with me you will feel very comfortable.
Hi, You are in luck! I have created a similar application in Java, like 10 days ago. It wasn't a chat app but hybrid P2P distributed table. It work exactly like you need it, and chat can be added easily. If you Daha Fazla
Hi there, greetings We are a design & development agency, with well-trained designers & developers who gain complete comprehension about your work and put forth the design which stands for it. Here is the proof t Daha Fazla
Good day! For your specific project I would be perfect. Have a look at my portfolio and you will find a project already very similar to this (JChat). I have extensive experience in Java networking (especially client- Daha Fazla