프로그래밍

[HTTP] 포트, 통신 프로토콜

aSpring 2023. 11. 23. 09:24
728x90
728x90

 

  • 포트 : 0 ~ 65535번까지, 총 65536개의 네트워크 포트 사용
    • 포트의 개수는 운영체제에서 정의하기 나름이나 현대의 윈도우, 리눅스, 맥 운영체제는 위와 같은 수의 네트워크 포트 사용
  • 0~1023 포트 : 잘 알려진 포트(Well-kwon port) 또는 특권 포트(Privileged port)
    • 22번 : SSH
    • 80번 : HTTP
    • 443번 : HTTPS
  •  이렇게 잘 알려진 포트에 서비스를 실행하려면 관리자 권한이 필요 -> 따라서, 클라이언트는 이 대역에서 실행 중인 서비스들은 관리자의 것이라고 신뢰할 수 있음

 

  • 프로토콜 : 컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계(컴퓨터와 통신할 때 지켜야 할 규칙 체계)
    • 각 통신 주체가 교환하는 데이터(메시지)를 명확히 해석할 수 있도록 문법(syntax)을 포함함
    • 표준 통신 프로토콜
      • TCP/IP : 네트워크 통신의 기초
      • HTTP : 웹 애플리케이션에서 사용
      • FTP : 파일 주고 받을 때 사용

 

  • HTTP 통신 : Request와 Response의 여행
    • Hyper Text Transfer Protocol
    • 서버와 클라이언트의 데이터 교환을 요청(Request)과 응답(Response) 형식으로 정의한 프로토콜
    • 기본 메커니즘
      • 클라이언트가 서버에게 요청 -> 서버가 응답
      • 웹 서버는 HTTP 서버를 HTTP 서비스 포트에 대기 시키며, 이 포트는 일반적으로 TCP/80 또는 TCP/8080
        • 클라이언트가 서비스 포트에 HTTP 요청을 전송하면, 이를 해석하여 적절한 응답을 반환

이미지로 숙지하기

  • HTTP 통신 요청 : HTTP 메시지를 만들어서 보낸다. (Request)
  • HTTP 통신 응답 : HTTP 메시지를 만들어서 보낸다. (Response)
  • Request

  • Response

728x90
728x90