포트 번호는 로컬 속성이며 수신자 컴퓨터에서 해당 포트로 보내지는 수신 데이터의 소켓 끝점을 식별하는 데 도움이됩니다. 각 시스템에는 각 프로토콜 유형 (TCP 또는 UDP) 및 각 패밀리 유형 (IPv4 또는 IPv6)에 대해 64K 포트가 있습니다.
UDP를 사용하면 다른 포트에있는 많은 클라이언트로 보내고받을 수 있습니다. 그래서, 다음과 같은 연결 : 따라서
UDP_socketA (port p1) <---------> UDP socketB (port p2)
|
|
|
|
UDP socketC (port p3)
, socketA은 다른 포트 번호에 앉아있다하더라도 socketB 및 socketC에 datat을 보낼 수 있습니다. 그것이 작동하는 방식은 UDP 소켓을 사용하여 일반적으로 각 패킷에 대해 IP 주소와 포트 번호를 지정할 수있는 sendto() API를 사용한다는 것입니다. 따라서 우리는 하나의 패킷을 포트 B로 보내고 다음 패킷은 포트 C로 보낼 수 있습니다.
그러나 TCP의 경우에는 그렇지 않습니다. 일단 연결이 설정되면 socketA와 socketB 사이에 아무 말도하지 말자.이 소켓 중 어느 하나가 socketC와 통신 할 수있다.
TCP_socketA (port p1) <---------> TCP socket B (port p2)
|
|
|
|
TCP socketC (port p3)
예 : 한 소켓에서 하나의 소켓이 송수신된다. 다른 소켓이 다른 포트에서 보내고받을 수 있습니다. 클라이언트는 '잘 알려진'포트 (예 : http의 경우 '80')에 연결합니다. 연결이 설정되면 [임시 포트] (http://en.wikipedia.org/wiki/Ephemeral_port)에서 통신이 이루어집니다. – paulsm4