in.add()
LESSON 26. 포트 번호의 구조 본문
포트 번호란?
- 전송 계층의 두 번째 역할 : 전송된 데이터의 목적지가 어떤 애플리케이션인지 구분하는 것.
- 예를 들어 웹 브라우저와 메일 프로그램을 사용하고 있다고 할 때.
- 목적지가 어떤 애플리케이션인지 구분하지 못하면 사용자가 홈페이지를 보기 위해 웹 브라우저를 사용하는 데도 메일 프로그램으로 데이터가 전송될 수 있다.
- 즉, 어느 애플리케이션의 데이터인지 알 수 없기 때문에 일어나는 일이다.
- 그래서 그렇게 되지 않도록 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는 포트 번호가 필요하다.
- 그래서 포트 번호를 붙이지 않고 통신하면 컴퓨터에 데이터가 도착하더라도 애플리케이션까지는 도착할 수 없다.
- 웹 브라우저로 접속할 때 웹 브라우저에는 임의의 포트가 자동으로 할당되기 때문에 서버 측에서는 포트 번호를 정해둬야 하지만 클라이언트 측은 정하지 않아도 괜찮다.
'Book > 모두의 네트워크' 카테고리의 다른 글
LESSON 28. 응용 계층의 역할 (0) | 2022.06.19 |
---|---|
LESSON 27. UDP의 구조 (0) | 2022.06.19 |
LESSON 25. 일련번호와 확인 응답 번호의 구조 (0) | 2022.06.19 |
LESSON 24. TCP의 구조 (0) | 2022.06.19 |
LESSON 23. 전송 계층의 역할 (0) | 2022.06.19 |
Comments