본문 바로가기
Web

HTTP, TCP/IP

by 가영리 2023. 3. 16.
728x90

HTTP란?

HTTP(HyperText Transfer Protocol)
텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜

HTTP 동작

사용자(client)가 부라우저를 통해서 어떠한 서비르르 url을 통하거나 다른 것을 통해서 요청(request)을 하면 해단 요청사항에 맞는 결과를 찾아서 사용자에게 응답(response)하는 형태

  • 요청 : client -> server
  • 응답 : server -> clientHTTP 특징

HTTP 메시지는 HTTP 서버와 클라이언트에 의해 해석됨

TCP/IP를 이용하는 프로토콜
- TCP/IP란?

  • TCP(Transmission Control Protocol)
    • 두 개의 호스트를 연결하고 데이터 스트림(data stream)을 교환하게 해주는 네트워크 프로토콜
    • 데이터 패킷에 일련의 번호를 부여함으로써, 데이터 손실을 찾아내 교정하고, 순서를 재조합하여 클라이언트에게 전달
    • 신뢰성이 높음
  • IP(Internet Protocol)
    • 4byte로 이루어진 컴퓨터의 주소이며, 255.255.255.255와 같이 표시
    • 컴퓨터와 컴퓨터간의 데이터를 전송하기 위해서는 각 컴퓨터의 주소가 필요
    • IP주소는 하드웨어 고유의 식별번호인 MAC주소와 다르게 임시적으로 다른 주체에게 받는 주소이므로 바뀔 수 있음

요청을 주고 받을 때만 연결을 유지하고 응답을 주고나면 TCP/IP 연결을 끊는 비 연결성 프로토콜이므로 요청/응답 방식으로 동작

HTTP 요청 메서드

  • GET : 특정 리소스를 받기 위한 요청. 리소스의 생성, 수정 및 삭제 등에 사용불가
  • POST : 리소르를 생성하거나 controller를 실행하는 데 사용
  • PUT : 변경 가능한 리소르를 업데이트하는 데사용. 항상 리소스 식별 정보를 포함해야 함
  • PATCH : 변경 가능한 리소스의 부분 업데이트에 사용. 항상 리소스 식별 정보를 포함해야 함
  • DELETE : 리소스를 제거
  • HEAD : 클라이언트가 본문 없이 리소스에 대한 헤더만 검생하는 경우 사용. 일반적으로 클라이언트가 서버에 리소스가 있는지 확인하거나 메타 데이터를 읽으려는 때만 GET 대신 사용
  • OPTIONS : 클라이언트가 서버의 리소스에 대해 수행 가능한 동작을 알아보기 위해 사용

'Web' 카테고리의 다른 글

HTML 기본 구조  (0) 2023.03.28
Web이란?  (0) 2023.03.16