1. [전산기기,인터넷] 소프트웨어적인 포트 (Port)
ㅇ 전산기기 및 인터넷에서 말하는 포트는 상당히 추상적인 개념으로,
- 통상, 소프트웨어적인 입출력 인터페이스를 의미
. 사실상, 포트는 컴퓨터 내의 프로세스를 구별/식별하는 수단임
ㅇ 통상, 각 Host는,
- 그 안에 다양한 응용 프로세스가 동시에 운용되고,
- 입출력 포트와 프로세스 간의 연결성(짝지음)으로 통로를 구성하고,
- 이를통해 계층간/내외부 통신을 가능케 함
2. 통신계층 관점에서, 포토의 의미
ㅇ 포트 간의 연결 계층 : 전송 계층
- TCP/IP 및 OSI 계층모델 관점에서 전송계층에서 이루어짐
ㅇ 계층 간 개체 연결을 위한 식별 주소 (port address) ☞ SAP(서비스접속점) 참조
- Host 내부의 사용자 프로세스 또는 응용 프로세스의 통로를 식별하여 줌
3. TCP/IP에서, 포트에 의한 통신 및 식별 ☞ 주소체계 (Addressing) 참조
ㅇ 프로세스 간 통신을 위한 프로토콜
- 각 프로세스는 추상적인 포트라는 개념을 통해,
- 전송계층 상의 프로토콜인 TCP, UDP, SCTP에 의해, 통신을 하게 됨
ㅇ 컴퓨터 내 프로세스의 식별 방법
- `Socket Address (소켓 주소)` 에 의함
. 통상, IP Address 및 Port Address 를 조합하여, Socket address라고 명명
. 즉, Socket address = IP Address(호스트 식별) + Port Address(프로세스 식별)
ㅇ 통신 양단 간 회선(세션)의 식별 방법
- 결국, 다음 4 값에 의해 연결(커넥션) 및 그 방향도 식별이 가능 ☞ 소켓 주소 참조
. (`발신지 IP 주소`, `발신지 포트 번호`, `수신지 IP 주소`, `수신지 포트 번호`)
4. TCP/IP에서, 포트 번호의 식별,길이,전달
ㅇ 포트 번호의 식별 대상
- 응용 또는 사용자 프로세스를 식별하여 줌
. 목적지 호스트 내 실행중인 특정 서비스나 어플리케이션을 카리킴
ㅇ 포트 번호의 식별 방식 : 번호에 의함
- `Port Number (포트 번호) 또는 Port Address (포트 주소)`에 의해 구별됨
ㅇ 포트 번호의 길이
- 포트의 식별을 위한 포트 번호(Port Address)는 16 비트 길이를 갖게되어,
. 이론상 216 = 65,536(0~65,535)개의 서로 다른 TCP 또는 UDP 연결이 가능함
ㅇ 포트 번호의 전달
- 포트 번호는, `UDP 헤더` 또는 `TCP 헤더` 내에 포함되어져 전달됨
- 전달 주체(TCP,UDP)에 따라, TCP 소켓, UDP 소켓으로 다르게 식별
- 즉, 같은 포트 번호라도, 사용 전송 프로토콜이 TCP 이냐 UDP 이냐에 따라, 다르게 식별됨
5. TCP/IP에서, 포트 번호의 유형
ㅇ Well Known Port (★) : 0 ~ 1023 (IANA에서 관리) ☞ 잘알려진 포트번호 참조
- 例) DHCP (출발:67,목적:68), DNS (53), FTP (control:20,data:1), HTTP (80), HTTPS (443),
POP3 (110), SMB (137-139), SMTP (25), SSH (22), Telnet (23) 등
ㅇ Registered Port : 1024 ~ 49151
ㅇ Dynamic and/or Private Port : 49152 ~ 65535
※ 관련사이트 ☞ IANA의 공식 Port Numbers
ㅇ 임시 포트번호
- 일반적으로, 서버 쪽과는 달리 클라이언트 쪽에서는 포트번호에 신경쓰지 않고,
- 해당 호스트 내에서 유일한가 여부에만 신경쓰며,
- 이를 Ephemeral(잠시살아있는) 또는 임시 포트번호라고 표현 함
- 통상 1024 ~ 5000 번이 포트 번호로 할당 됨