in.add()

LESSON 26. 포트 번호의 구조 본문

Book/모두의 네트워크

LESSON 26. 포트 번호의 구조

idan 2022. 6. 19. 15:48

포트 번호란?

  • 전송 계층의 두 번째 역할 : 전송된 데이터의 목적지가 어떤 애플리케이션인지 구분하는 것.
  • 예를 들어 웹 브라우저와 메일 프로그램을 사용하고 있다고 할 때.
  • 목적지가 어떤 애플리케이션인지 구분하지 못하면 사용자가 홈페이지를 보기 위해 웹 브라우저를 사용하는 데도 메일 프로그램으로 데이터가 전송될 수 있다.
  • 즉, 어느 애플리케이션의 데이터인지 알 수 없기 때문에 일어나는 일이다.
  • 그래서 그렇게 되지 않도록 TCP 헤더의 출발지 포트 번호(source port unmber)와 목적지 포트 번호(destination port number)가 필요하다.
  • 포트 번호는 0~65535번을 사용할 수 있다.
  • 0~1023번 포트는 주요 프로토콜이 사용하도록 예약되어 있다.
  • 이러한 포트를 잘 알려진 포트(well-known ports)라고 한다.
  • 1024번은 예약되어 있지만 사용되지는 않는 포트고, 1025번 이상은 랜덤 포트라고 해서 클라이언트 측의 송신 포트로 사용된다.
  • 0~1023번 포트는 일반적으로 사용하는 서버 측 애플리케이션에서 사용된다.
  • SSH(22), SMTP(25), DNS(53), HTTP(80), POP3(110), HTTPS(443).
  • 이처럼 동작하는 애플리케이션은 각각 포트 번호가 있어서 다른 애플리케이션과 서로 구분된다.
  • 데이터를 전송할 때는 상대방의 IP주소가 필요하지만, 어떤 애플리케이션이 사용되고 있는지 구분하려면 TCP는 포트 번호가 필요하다.
  • 그래서 포트 번호를 붙이지 않고 통신하면 컴퓨터에 데이터가 도착하더라도 애플리케이션까지는 도착할 수 없다.
  • 웹 브라우저로 접속할 때 웹 브라우저에는 임의의 포트가 자동으로 할당되기 때문에 서버 측에서는 포트 번호를 정해둬야 하지만 클라이언트 측은 정하지 않아도 괜찮다.
Comments