[네트워크] HTTP & HTTPS

2023. 7. 17. 14:30·CS 지식/[네트워크]
목차
  1. HTTP Method
  2. 1) HTTP 1.0
  3. 2) HTTP 1.1
  4. 3) HTTP 2.0
  5. HTTP(HyperText Transfer Protocol)
  6. HTTPS(HyperText Transfer Protocol Secure)

HTTP Method

종류 기능
GET 데이터 조회
POST 요청 데이터 처리(보통 데이터 등록 사용)
PUT 데이터 변경 (해당 데이터가 없으면 생성)
PATCH 일부 데이터만 변경
DELETE 데이터 삭제

 

1) HTTP 1.0

  • 단기 커넥션(shrot-live connections) : 요청 날릴 때마다 커넥션 맺고 끊어짐
  • Request를 날릴 때마다 Connection을 새로 생성해야 함
  • Data를 압축해서 전달 가능하도록 하여 전달하는 Data 양이 감소

2) HTTP 1.1

  • 지속 커넥션(Persistent connection) : 커넥션 재사용 가능
  • HTTP 파이프라이닝(Pipelining) : Request를 미리 여러 개 서버에 날릴 수 있음 (이전엔 리퀘스트 하나보내고, Response 받고, 그 다음 request 보내는 방식이었는데, 파이프라이닝 방식에서는 Request를 연속적으로 보내놓고 Reponse를 받는 방식)
  • 단점 : Head Of Line Blocking  => 요청한 Request에 문제가 생겨 응답이 늦어지면 그 다음 Request의 응답들도 같이 늦어짐

3) HTTP 2.0

  • Multiplexing : 프레임 단위로 나눠서 전송 관리 가능하게 됨 (다수의 요청과 응답이 가능한 구조)
  • 데이터 전송 방식 : 바이너리로 인코딩하여 전송
  • ServerPush 사용 : 브라우저에서 필요한 리소스들을 서버가 알아서 찾아다가 내려주는 것
  • 캐싱되지 않은 리소스를 받아올 때
  • 페이지에서 필요한 리소스가 페이지를 내려주는 서버에 있을 때

HTTP(HyperText Transfer Protocol)

  • 인터넷 상에서 클라이언트와 서버가 자원을 주고 받을 때 쓰는 통신 규약
  • 80 port
  • HTTP는 텍스트 교환이므로, 누군가 네트워크에서 신호를 가로채면 내용이 노출되는 보안 이슈가 존재 → 이런 보안 문제를 해결해주는 프로토콜이 ’HTTPS’

HTTPS(HyperText Transfer Protocol Secure)

  • 인터넷 상에서 정보를 암호화하는 SSL 프로토콜을 사용해 클라이언트와 서버가 자원을 주고 받을 때 쓰는 통신 규약
  • 443 port
  • HTTPS는 텍스트를 암호화 (공개키 암호화 방식으로)
  • SSL은 대칭키, 공개키 함께 사용
    • 데이터 전달 시 대칭키를 쓰고, 그 대칭키를 교환할 때는 공개키 사용
저작자표시 비영리 변경금지 (새창열림)

'CS 지식 > [네트워크]' 카테고리의 다른 글

[네트워크] 세션 기반 인증 & 토큰 기반 인증  (0) 2023.07.17
[네트워크] 쿠키 & 세션  (0) 2023.07.17
[네트워크] GET & POST  (0) 2023.07.17
[네트워크] 대칭키 & 공개키  (0) 2023.07.17
[네트워크] TCP & UDP  (0) 2023.07.17
  1. HTTP Method
  2. 1) HTTP 1.0
  3. 2) HTTP 1.1
  4. 3) HTTP 2.0
  5. HTTP(HyperText Transfer Protocol)
  6. HTTPS(HyperText Transfer Protocol Secure)
'CS 지식/[네트워크]' 카테고리의 다른 글
  • [네트워크] 세션 기반 인증 & 토큰 기반 인증
  • [네트워크] 쿠키 & 세션
  • [네트워크] GET & POST
  • [네트워크] 대칭키 & 공개키
woojin._.
woojin._.
여러가지 개발을 해보며 발생하는 이야기들에 대한 블로그입니다:)
  • woojin._.
    Jin's Dev Story
    woojin._.
  • 전체
    오늘
    어제
    • 분류 전체보기 (794)
      • Tools (25)
        • eGovFrame (3)
        • GeoServer (3)
        • QGIS (2)
        • LabelImg (2)
        • Git (6)
        • GitHub (1)
        • Eclipse (7)
        • Visual Studio (1)
      • Web & Android (121)
        • SpringBoot (37)
        • Three.js (2)
        • Spring Data JPA (9)
        • 스프링 부트 쇼핑몰 프로젝트 with JPA (25)
        • Thymeleaf (4)
        • Spring Security (15)
        • Flutter (29)
      • Programming Language (61)
        • JAVA (27)
        • JavaScript (14)
        • Dart (2)
        • Python (15)
        • PHP (3)
      • Database (43)
        • PostgreSQL (32)
        • MYSQL (7)
        • Oracle (3)
        • MSSQL (1)
      • SERVER (17)
        • TCP_IP (3)
        • 리눅스 (7)
        • AWS (7)
      • Coding Test (410)
        • 백준[JAVA] (76)
        • 프로그래머스[JAVA] (257)
        • 알고리즘 고득점 Kit[JAVA] (3)
        • SQL 고득점 Kit[ORACLE] (74)
      • CS 지식 (49)
        • [자료구조] (14)
        • [네트워크] (12)
        • [데이터베이스] (10)
        • [알고리즘] (9)
        • [운영체제] (4)
      • 기타 (6)
      • 자격증 & 공부 (62)
        • 정보처리기사 (2)
        • SQLD (6)
        • 네트워크관리사 2급 (5)
        • 리눅스마스터 1급 (44)
        • 리눅스마스터 2급 (1)
        • ISTQB (3)
        • 시스템보안 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 인기 글

  • 태그

    pcce 기출문제
    springboot
    CS지식
    리눅스
    backjoon
    데이터
    프로그래머스
    스프링
    시큐리티
    Linux
    Flutter
    리눅스마스터
    CS
    리눅스마스터 1급
    Oracle
    플러터
    programmers
    Java
    데이터베이스
    DB
    postgresql
    JPA
    python
    baekjoon
    spring
    스프링 부트 쇼핑몰 프로젝트 with JPA
    Spring Security
    자바
    백준
    스프링부트
  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
woojin._.
[네트워크] HTTP & HTTPS

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.