w5500 을 서버로 운영시 다수의 클라이언트가 접속 요청을 하는 경우
일반적인 TCP 통신에서는 서버가 listen 을 위한 소켓을 생성하고 클라이언트로 부터 연결 요청 받으면 accept 과정중에 새로운 소켓이 생성되어
그것을 가지고 통신합니다만, 위즈넷 API 사용시 대응하는 방법이 어디 있는지 찾을 수 없어서 문의 드립니다.
즉, w5500 에서는 다수의 클라이언트 소켓 연결에 대응하기 위해
어떤 방법으로 해당 클라이언트에 대응하는 소켓을 생성하는지 알고 싶습니다.
예를들어 서버용 소켓 S1 이 클라이언트1 에 대응하여 오픈되고 통신중에
클라이언트2가 w5500 에 접속 요청시 어떤 방법으로 연결하고 하는지에 대해 부탁 드립니다.
소켓 입장에서 본다면 소켓은 1:1통신입니다. 1:N이 되지않습니다.
우리가 생각하는 1:N통신은 같은 소켓을 여러개를 열어 놓는 것입니다.
TCP 이용시 무조건 1:1 연결 입니다.
이말은 하나의 Port로 하나의 Client가 접속이 가능하다는 말입니다. Port를 다르게 8개의 소켓을 Server로 열어놓으면 8개의 Client가 TCP로 연결이 가능합니다.
UDP 이용시에는 1:N 연결이 가능한데 W5500의 경우 1:8 까지 지원합니다. Port를 같게 8개의 소켓을 Server로 열어놓으면 8개의 Client가 UDP로 연결이 가능합니다.
8개의 소켓은 모두 같은 프로토콜을 사용하지 않아도 됩니다.
6개의 HTTP Server 1개의 HTTP Client 1개의 FTP 이런식으로 활용하셔도 되구요 사용자의 어플리케이션에 따라 다양하게 활용할 수 있습니다.