Đối với dự án đại học, hãy đọc một số hướng dẫn về ổ cắm. Tôi tin rằng đây là điều mà giáo sư của bạn mong đợi từ bạn. Lấy ví dụ như sau: http://www.oracle.com/technetwork/java/socket-140484.html
Có 2 giải pháp chung: máy chủ đầy đủ và ít máy chủ hơn. Trong trường hợp các giải pháp dựa trên máy chủ, tất cả các máy khách của bạn nên được cấu hình sẵn với địa chỉ IP của máy chủ. Máy chủ mở ổ cắm máy chủ và bắt đầu nghe. Vì vậy, mỗi khách hàng kết nối với máy chủ và đăng ký. Việc đăng ký rất đơn giản: máy chủ chỉ cần IP của khách hàng. Bây giờ máy chủ nắm giữ một danh sách các máy khách được kết nối và gửi danh sách tới từng máy khách. Để làm cho ứng dụng peer2peer mỗi máy khách cũng mở ổ cắm máy chủ. Khi client A muốn kết nối với client B, nó chỉ kết nối với socket của nó.
Bạn có thể triển khai giải pháp không có máy chủ. Trong trường hợp này, bạn cần một số cơ chế khám phá dựa trên ví dụ về phát sóng.
Tôi hy vọng điều này sẽ hữu ích. Chúc may mắn.
Tôi khuyên bạn nên xem một trong nhiều triển khai mã nguồn mở ngang hàng để chia sẻ tệp và sử dụng chúng làm mẫu (hoặc chỉ sử dụng chúng như chúng) –