socket에 할당하는 IP주소와 PORT번호
IP: internet protocol의 약자로 인터넷 상에서 데이터를 송수신할 목적으로 컴퓨터에게 부여하는 값
PORT번호: 프로그램 상에서 생성되는 socket을 구분하기 위해 socket에게 부여되는 번호
- 인터넷 주소
- IPv4(internet protocol version 4): 4바이트 주소 체계
(xxx.xxx.xxx.xxx형태이며 2진수로 표기 시 32bits)
- IPv6(internet protocol version 6): 16바이트 주소 체계
- IPv4 기준 네트워크 주소, 호스트(컴퓨터) 주소로 구분되고 주소의 형태에 따라 A, B, C, D, E 클래스로 분류
- 네크워크 주소: 라우터를 거치지 않고 내부적으로 통신이 가능한 영역이며 브로드캐스트가 적용되는 영역
- 호스트 주소: 특정한 한 네트워크 내에서 서로를 구분하기 위한 주소
IP주소 중 네트워크 주소를 통해 네트워크를 구성하는 라우터 또는 스위치로 데이터가 전송되고 라우터에서 데이터에 적힌 호스트 주소를 참조하여 호스트에 데이터 전송
- PORT 번호
- IP는 PORT번호가 포함된 데이터를 NIC를 통해 컴퓨터 내부로 전송하고 운영체제는 PORT번호를 이용해 전송된 데이터를 적절히 socket에 분배
- 따라서 하나의 운영체제 내에서 동일한 PORT번호를 둘 이상의 socket에 할당 할 수 없음
- 16bits (0~65535)
- (0 ~ 1023): well-known PORT로 특정 프로그램에 할당하도록 되어있으므로 다른 값 할당
- TCP socket, UDP socket은 PORT 번호를 공유하지 않기 때문에 중복 가능