포트란?

java 같은 언어로 웹애플리케이션을 제작을 한 뒤 해당 애플리케이션으로 실행을 하면 대부분 이렇게 접속을 한다.

http://localhost:8080

여기서 말하는 localhost는 해당 애플리케이션을 실행한 자신을 말한다. 그리고 포트번호는 옆에 적혀있는 ":8080" 이 부분이다. 즉 해당 프로그램은 localhost의 8080포트로 접속을 하는 것이다.

 

 자기자신의 컴퓨터에서 실행을 하고 '혼자' 사용을 하는 경우에는 위와 같은 방식으로 접속을 해도 아무런 문제도 없다.

하지만 해당 방식으로는 상대방(고객)을 자신이 만든 프로그램으로 데리고 오기에는 곤란한다. 

 

 그래서 상대방도 접속을 할 수 있는 "약속된" 문을 열어두고 그곳에서 자신이 만든 프로그램을 누구나 이용할 수 있도록 한다.

 

포트번호 구분

포트는 크게 세 종류로 구분한다고 한다.

  • 0 ~ 1023번까지 포트를 "잘 알려진 포트"
  • 1024 ~ 49151번까지는 "등록된 포트"
  • 49152 ~ 65535번까지는 "동적 포트"

포트번호같은 경우는 몇개는 이미 사용을 이렇게 하기로 정해져있다.

 

 대표적으로 HTTP는 80, HTTP는 443포트로 이렇게 사용하도록 약속이 되어있다. 또한 80포트와 443포트로 접속을 하게되면 위에서 나온 예시와는 다르게 포트번호가 보이지 않게 된다. 왜 보이지않냐?에 대해서는 크게 의문을 가질 필요는 없다고 생각한다.

 

왜냐하면 규칙이 그렇게 정해져있기 때문이다.

만약 자세한 내용을 찾고싶으면 RFC 2616의 3.2.2 http URL부분에 명시되어 있다.

HTTPS의 문서는 이곳을 참고하면 된다.

 

또한 Mysql의 포트는 3306, 톰캣은 8080 등등.. 프로그램들은 포트번호를 동적으로 가지기도 한다. 

'정보게시판 > ' 카테고리의 다른 글

HTTP : 응답과 요청  (0) 2022.06.26
JWT란?  (1) 2022.06.26
Apple WWDC 개발자 컨퍼런스 소개  (0) 2022.06.26
테스트를 위한 더미 파일 생성하기  (0) 2022.06.18
Base64 인코딩 방법  (0) 2022.06.14

+ Recent posts