관리 메뉴

Jsecurity

HTTP (Hyper Text Transfer Protocol) 본문

정보보안/정보보안기사

HTTP (Hyper Text Transfer Protocol)

Great king 2019. 9. 3. 23:39

개요

HTTP(Hyper Text Transfer Protocol) 프로토콜은 웹상에서 클라이언트와 서버 간에 통신을 위해 개발된 프로토콜이다.

 

- 웹의 정식명칙은 World Wide Web 으로 전 세계에 거미줄처럼 연결된 망이라는 의미

- 주로 80/tcp 포트를 사용하며 1991년에 HTTP 초기버전이 발표된 이후 1996년 1.0버전, 1999년 1.1버전이 발표되어 사용되고 있다.

- HTTP 통신은 클라이언트 요청과 서버 응답으로 이루어져 있다.

 


비연결형(Connectionless) 프로토콜

close 방식의 HTTP 통신

- HTTP/1.0 버전까지는 클라이언트의 HTTP 요청에 대한 서버의 HTTP 응답 이후에 TCP 연결을 바로 종료하는 구조로 동작한다.

 

① 연결을 바로 종료하는 이유는 제한된 서버 연결 자원을 이용하여 최대한 많은 클라이언트의 요청을 처리하기 위함이다.

② 서버 입장에서는 통신을 위한 다수의 TCP 연결 설정 및 종료에 대한 부하가 있다.

 

 

 

Keep-alive 방식의 HTTP 통신 

- HTTP/1.1 버전부터 Connection 헤더에 Keep-Alive 옵션이 추가되었다. 이는 TCP 연결 상태를 웹 서버 설정에 따라 일정시간 지속시키는 옵션으로 한 번의 연결 이후에 요청/응답을 반복할 수 있다.


쿠키(Cookie) 방식

HTTP 쿠키 동작 방식

① 쿠키는 개별 클라이언트 상태정보를 HTTP 요청/응답 헤더에 담아서 전달하는 작은 정보/데이터를 말한다.

② 서버에서 "Set-Cookie 응답헤더"를 통해 쿠키를 설정하여 클라이언트로 전달하면 클라이언트는 "Cookie 요청헤더"를 이용해 지속적으로 쿠키를 전달하는 형태로 동작한다.

③ 쿠키는 지속 시간에 따라 영속 쿠키세션 쿠키로 구분할 수 있다.

영속 쿠키: 클라이언트에 파일형태로 지속적으로 존재하는 쿠키로 쿠키에 설정된 사이트 요청시마다 
           cookie 요청 헤더에 쿠키 정보를 담아서 전달한다.

세션 쿠키: 클라이언트 메모리상에 세션이 유지도니는 동안 존재하는 쿠키로 세션이 종료되면 소멸된다

 

세션(Session) 방식

HTTP 세션 동작 방식

① 세션은 개별 클라이언트 상태정보를 서버에 저장하는 기술을 말한다.

② 서버는 개별 클라이언트 세션을 식별하기 위해 "세션 ID"를 부여하고 세션 ID는 세션 쿠키를 이용하여 클라이언트와 서버 간에 주고 받는다.

③ 클라이언트 상태정보를 서버에 저장하기 때문에 쿠키 방식에 비해 보안상 안전하다.

 


HTTP 요청 메시지 구조


주요 요청 메소드


주요 상태 코드

'정보보안 > 정보보안기사' 카테고리의 다른 글

SNMP (Simple Network Management Protocol)  (0) 2019.09.07
FTP (File Transfer Protocol)  (0) 2019.09.04
DNS 스푸핑(Spoofing) 공격  (0) 2019.09.01
DNS (Domain Name System)  (0) 2019.09.01
컴퓨터 범죄 (사이버 범죄)  (0) 2019.08.28
Comments