1. 포트
포트(port)
는 "논리적인 접속장소"이며, 특히 인터넷 프로토콜인 TCP/IP를 사용할 때에는
클라이언트 프로그램이 네트워크 상의 특정 서버 프로그램을 지정하는 방법으로 사용된다.
네트워크 상에서 통신을 할 때 IP를 토대로 해당 서버가 있는 컴퓨터에 접근한다.
그런데 대부분의 경우 하나의 컴퓨터에는 여러 개의 서버가 실행될 수 있다.
컴퓨터에 여러 개의 서버가 실행되고 있다면, 어느 서버에 접속해야 하는지 컴퓨터에게 알려주어야 한다.
이때 사용되는 것이 포트 번호
이다.
2. 포트 번호
포트 번호
는 컴퓨터에서 실행되고 있는 서버를 구분 짓기 위한 16비트의 논리적 할당으로 0~65536번이 존재한다.
이 중에 0~1023번까지는 이미 어떤 통신이 해당 포트를 사용할 것인지 정해져 있다.
예를 들어 http 통신은 80번 포트를 사용하고, ssh 통신은 22번 포트를 사용한다.
이렇게 정해져 있는 0~1023번까지의 포트를 well-known port
라고 한다.
컴퓨터에 있는 웹서버
는 기본적으로 80번 포트
와 연결(listening)되어 있다.
만약 웹서버를 하나 더 사용하고 싶은 경우 80번 포트는 이미 기존 웹서버가 사용하고 있기 때문에 사용할 수 없다.
그런 경우 well-known port가 아닌 다른 포트
들과 연결하여 사용한다.
보통 관습적으로 8080 포트
에 연결하여 사용한다.
그런데 이런 경우 웹 통신이 들어왔을 때
80번과 8080번 포트 중에 어떤 포트와 통신할까?
정답은 URL
에 포트번호
를 적어서 통신할 포트를 구분한다.
예를 들어 http://test.com에 접속하면 80포트
에 연결된다.
http://test.com:80에서 80 포트는 생략이 가능
하기 때문에 생략된 것이다.
그렇다면 http://test.com:8080에 접속하면 어떻게 될까?
예상 가능하듯 8080 포트
에 연결이 된다.
URL 구성을 살펴보면 맨 앞에는 http와 같은 통신 규약이 온다.
http, ftp 등등 어떠한 방법으로 통신을 할 것인지를 적는 것이다.
그다음 도메인이나 ip를 적고, 뒤에 포트 번호
를 적는다.
참고: https://opentutorials.org/course/3265/20037
포트(port) - 생활코딩
수업소개 여기서는 포트라는 개념을 알아봅니다. 하나의 컴퓨터에는 여러개의 서버라 설치 될 수 있습니다. 클라이언트가 컴퓨터에 접속할 때 어떤 서버와 접속하려고 하는지는 구분할 수 있는 방법이 필요합니다. 이를 위해서 준비된 개념이 포트입니다. ip 주소가 컴퓨터에 접속하는 주소라면, 포트는 컴퓨터 안에 설치된 서버에 접속하는 주소라고 할 수 있습니다. 강의
opentutorials.org
'Network > basic network' 카테고리의 다른 글
SSH란 무엇인가 (0) | 2019.12.30 |
---|---|
Domain, DNS란 무엇인가 (0) | 2019.12.29 |
IP란 무엇인가 (0) | 2019.12.28 |