서버 응용 프로그램을 실행할 필요없이 둘 이상의 클라이언트 소켓을 직접 연결하는 방법을 찾고 있습니다. 몇 가지 방법을 찾았으며 JXTA P2P 프로토콜을 찾을 수있었습니다. JXTA 이외의 대안이 있는지 알고 싶습니다.둘 이상의 클라이언트 소켓을 직접 연결하는 방법은 무엇입니까?
상호 작용하는 클라이언트의 기본 기능은 (1) 클라이언트가 다른 모든 클라이언트에게 메시지를 보내고 (2) 다른 클라이언트가 사용할 수있는 파일을 요청할 수있는 기능입니다.
내 컴퓨터 (로컬 호스트)에서 여러 응용 프로그램 인스턴스를 실행할 예정이므로 NAT 또는 방화벽을 사용하는 것이 문제가되지 않습니다.
연결을 허용하거나 UDP의 경우 요청을 받으면 ** IS ** 정의에 따라 서버가됩니다. 그러므로, 당신이 원하는 것은 논리적으로 불가능한 것처럼 보입니다. – Ingo
그래서 각 클라이언트는 클라이언트이고 다른 모든 클라이언트와의 연결을 유지하는 서버 여야한다는 말입니까? UDP 나 TCP가 더 좋을까요? –
당신이 말하는대로 그것은 UDP와 같은 냄새를 풍깁니다. 서버는 요청을 처리하는 것입니다. 파일을 교환하려는 경우 누군가 (클라이언트)가 요청을 보냅니다. 예를 들어, 어떤 파일이 있습니까? 응답하는 사람이 서버입니다. – Ingo