[네트워크] 11. www(웹)를 이용할 때는 이렇게 데이터를 주고받는다

ppmyor·2022년 10월 12일
0

CS-네트워크

목록 보기
11/11
post-thumbnail

HTTP 프로토콜

웹을 만드는 기술들

  • HTTP(HTTPS -> SSL/TLS)
  • HTML
  • Javascript
  • CSS
  • ASP/ASP.NET
  • JSP
  • PHP
  • DB
  • Python
  • Spring
  • Jquery
  • Ajax

HTTP 프로토콜의 특징

  • HTTP
    - HyperText Transfet Protocol(하이퍼 텍스트 전송 프로토콜)
    www에서 쓰이는 핵심 프로토콜로 문서의 전송을 위해 쓰이며, 오늘 날 거의 모든 웹 애플리케이션에서 사용되고 있다. -> 음성, 화상 등 여러 종류의 데이터를 MIME로 정의하여 전송이 가능하다.
    - Request/Response(요청/응답) 동작에 기반하여 서비스를 제공한다.

  • HTTP 1.0
    - "연결 수립, 동작, 연결 해제"의 단순함이 특징 -> 하나의 URL은 하나의 TCP 연결
    - HTML 문서를 전송 받은 뒤 연결을 끊고 다시 연결하여 데이터를 전송한다.
    - 단순 동작(연결 수립, 동작, 연결 해제)이 반복되어 통신 부하 문제 발생

  • HTTP 1.1
    - HTTP 1.0과 호환 가능

    • Multiple Request 처리가 가능하여 Client의 Request가 많을 경우 연속적인 응답 제공 -> Pipeline 방식의 Request/Response 진행
    • HTTP 1.0과는 달리 Server가 갖는 하나의 IP Address와 다수의 Web Site 연결 가능
    • 빠른 속도와 Internet Protocol 설계에 최적화 될 수 있도록 Cache 사용
    • Data를 압축해서 전달이 가능하도록 하여 전달하는 Data 양이 감소

HTTP 프로토콜의 통신 과정

  • 네트워크 부하가 심한 HTTP/1.0

  • 1.0의 문제점을 보완한 HTTP/1.1

    연결했으면 끊지말고 모든 요청/응답 이후에 연결을 종료하도록 보완

HTTP 요청 프로토콜

HTTP 요청 프로토콜의 구조

요청하는 방식을 정의하고 클라이언트의 정보를 담고 있는 요청 프로토콜 구조

reqest line

요청 타입


GET, POST 중요
GET은 요청하는것이긴 하지만 요청하면서 데이터를 보낼 수 있고, POST는 데이터를 보내는것이긴 하지만 데이터를 요청할 수 있음.
GET 방식은 데이터를 보낼 때 URI에 데이터를 포함시켜서 보내고 POST 방식은 주소에 포함되는게 아닌 body에 데이터를 포함시켜서 보냄.

URI

Uniform Resource Identifier
인터넷 상에서 특정 자원(파일)을 나타내는 유일한 주소
scheme ://host[:port]/[/path][?query]
ex) ftp ://IP주소:포트 / 파일이름
http ://IP주소:포트 /폴더이름/파일이름

  • scheme: 요청하는 요청 형식을 지정(7계층 프로토콜 형식을 지정)
  • path: 어디에 저장된 어떤 파일

HTTP 응답 프로토콜

HTTP 응답 프로토콜의 구조

사용자가 볼 웹 페이지를 담고있는 응답 프로토콜 구조

request line

상태 코드

  • 성공적인 통신 200 OK

  • 클라이언트의 실수, 잘못, 오류 400 번대

  • 서버의 실수, 잘못, 오류 500 번대

HTTP 헤더 포맷

HTTP 헤더 구조

수 많은 정보를 담고 있는 HTTP 헤더

일반 헤더

일반적인 정보를 담고 있는 일반 헤더

요청 헤더

클라이언트 정보를 담고 있는 요청 헤더

응답 헤더

서버 정보를 담고 있는 응답 헤더

참고

[따라學IT] 11. www(웹)를 이용할 때는 이렇게 데이터를 주고받는다 - HTTP 프로토콜이란?, [따라學IT] 11. www(웹)를 이용할 때는 이렇게 데이터를 주고받는다 - HTTP 프로토콜이란?,[따라學IT] 11. www(웹)를 이용할 때는 이렇게 데이터를 주고받는다 - URL, URI란?, [따라學IT] 11. www(웹)를 이용할 때는 이렇게 데이터를 주고받는다 - HTTP 응답 프로토콜의 구조, [따라學IT] 11. www(웹)를 이용할 때는 이렇게 데이터를 주고받는다 - HTTP 헤더의 강의와 개인 공부를 함께 정리 한 내용입니다.

profile
유영하는 개발자

0개의 댓글