네트워크/네트워크

개요 - TCP 포트와 소캣

본클라쓰 2008. 12. 21. 12:30

 

포트(Port)

 

하나의 주소를 가지고 있는 시스템에는 실제로 여러 개의 네트워크 프로세스가 동작하는 것이 일반적인 상황입니다. 따라서 TCP/IP 패킷은 해당 시스템으로 들어올 때 패킷의 최종 도달지가 어떤 응용 프로그램인지 결정될 수 있는 정보가 필요한데 그것이 바로 포트 번호입니다.

 

즉, 통신 프로세스 서로를 식별할 수 있는 프로세스 식별자(Process Identifier)가 포트번호입니다. 포트 번호는 16비트로 표현되며 0부터 65,635 까지의 값을 가질 수 있습니다. 포트는 두 종류가 있는 데 잘 알려진 포트(Well known prot)와 임시 포트(Ephemeral port)가 있습니다. 잘알려진 포트번호는 1024 이하의 번호가 할당되어 있습니다.  

 

 

 

1. 잘 알려진 프로토콜

 

 잘 알려진 포트는 시스템에서 이미 정해진 포트 번호를 말한다. 잘 알려진 포트 번호의 범위는 1 ~ 1,024 번까지 지정되어 있다.

 

프로토콜

포트번호

설 명

Echo

7

수신한 데이터를 송신자에게 되돌려줌

Discard

9

수신한 데이터를 모두 폐기

FTP(data)

20

파일 전송 프로토콜(File Transfer Protocol)의 데이터 전송 포트 번호

FTP(Control)

21

파일 전송 프로토콜의 제어 채널

TELNET

23

터미널 네트워크

SMTP

25

메일 전송 프로토콜

DNS

53

도메인 네임 서비스

Finger

79

사용자의 정보

HTTP

80

하이퍼텍스트 전송 프로토콜

 

 

2.  임시 포트

 

 서비스를 요청하는 클라이언트는 미리 지정한 포트를 가지고 있을 필요가 없으며, 임시 포트 번호를 운영체제로부터 할당받아 접속 개체를 식별한다. 따라서 임시 포트는 서비스 사용중에만 유효하고 서비스 종료 이후에는 다른 프로그램에서 사용할 수 있다.

 

 

 

TCP 소켓

 

 소켓은 응용 프로세스가 TCP/IP 프로토콜을 이용하여 원격 호스트가 통신할 수 있도록 해주는 인터페이스 중의 하나이다. 소켓 주소는 프로토콜, 로컬 IP 주소, 로컬 포트 번호로 구성되는데 예를 들면 <tcp, 121.111.139.192, 8080> 와 같이 표현된다. 소켓은 두 프로세스간의 전이중 바이트 스트림 연결을 제공해 준다.