inblog logo
|
Coding_study
    HTML/CSS

    HTTP 버전

    yuzu sim's avatar
    yuzu sim
    Feb 06, 2024
    HTTP 버전

    1. HTTP 0.9

    • 최초 버전으로, 단순한 요청과 응답을 처리하는데 사용
    • 오직 GET 메서드만 지원
    논문 조회로만 사용(브라우저 : HTML 리더기)
    • 헤더가 없으며, HTML 페이지만 반
    • 연결을 유지하지 않고, 각 요청마다 새로운 연결을 생성
     

    2. HTTP 1.0

    • 1996년에 공식적으로 표준이 됨
    • GET, POST를 지원
    회원가입, 글쓰기(WRITE) 등이 추가되면서 브라우저가 전송을 하게 되었음
    • 헤더를 포함한 메타 정보를 추가
    • 연결을 유지하지 않고, 각 요청마다 새로운 연결을 생성
    • 상태 코드 200(성공), 404(찾을 수 없음) 등이 도입
     

    3. HTTP 1.1

    • 1997년에 발표되었으며, 현재까지도 가장 널리 사용
    • Keep-Alive 연결을 통해 하나의 TCP 연결을 유지하여 여러 요청을 처리할 수 있게 됨
    • Host 헤더 도입으로 가상 호스팅을 지원
    • Chunked 전송 인코딩을 통해 데이터를 조각으로 나누어 전송 가능
    • 파이프 라이닝을 통해 여러 요청을 동시에 보낼 수 있음
    • POST → POST, DELETE, PUT(전체 수정), PATCH(부분 수정)
    • 백엔드 개발자는 CRUD 를 할 수 있어야 함
    CREATE : INSERT → POST 요청
    READ : SELECT → GET 요청
    UPDATE : UPDATE → PUT 요청 / 자바 스크립트를 배워야 가능
    DELETE : DELETE → DELECT 요청 / 자바 스크립트를 배워야 가능
    /HTML5은 get, post 만 지원하니까 배우기 전에는 POST로 다 하면 됨
     

    4. HTTP 2.0

    • 2015년에 발표되었으며, 성능 향상을 목표로 개발
    • 단일 TCP 연결을 통해 여러 개의 요청과 응답을 병렬로 처리 가능(Multiplexing)
    • 헤더 압축과 이진 프레이밍 등의 기술을 통해 효율적인 통신을 지원
    • 서버 푸시 기능으로 클라이언트 요청 없이 리소스를 전송 가능
    • HTTP/1.x와의 하위 호환성을 유지하면서 성능을 개선
     

    5. HTTP 3.0

    • 2020년에 발표되었으며, QUIC 프로토콜이 기반
    • UDP를 사용하여 TCP의 성능 문제를 극복하고 빠른 연결 설정과 안정적인 데이터 전송을 제공
    • 다중 스트림을 지원하여 여러 개의 데이터 스트림을 동시에 전송 가능
    • 연결 복구 시간을 단축하고, 네트워크 혼잡 제어를 개선
    • TLS 1.3을 기본으로 사용하여 보안을 강화
    TLS (Transport Layer Security) : 통신 과정에서 데이터를 암호화하고 인증하는 역할
    Share article

    Coding_study

    RSS·Powered by Inblog