Download presentation
Presentation is loading. Please wait.
1
HTTP : Hyper Text Transfer Protocol
DSU Computer ENG Computer Network 서형준 신인섭 권민성 류현미
2
CONTENTS – Hyper Text Transfer Protocol
HTTP 개요 HTTP Connection HTTP Message Format Web Caching in HTTP 참고자료 / 문헌 DSU Computer Network
3
개 요 HTTP 란? Hyper Text Transfer Protocol
World Wide Web( WWW )의 분산되어 있는 Server와 Client 간에 Hypertext를 이용한 정보교환이 가능하도록 하는 통신 규약 1989년 Tim Berners Lee가 처음 설계 Internet 기반에서 Hypermedia의 광역적인 정보공유 를 위한Protocol Data가 분산되어 있으면서 빠른 전달속도를 요구하는 System에 적합한 Hypertext를 전달하기 위한 목적 DSU Computer Network
4
개 요 HTTP 의 특징 HTTP 메시지는 HTTP Server와 HTTP Client 에 의해서 해석
TCP / IP 프로토콜의 Application 계층에 위치 TCP Protocol을 이용한다( Default Port 80 ) 추가적인 제어 연결없이 Data만 Client와 Server 사이에서 전송 Stateless Protocol ( 지속적인 연결상태가 아님 ) 현재 Version 1.1 ( RFC 2616 ) DSU Computer Network
5
Connections HTTP 의 연결 방식 Stateless Protocol ( 지속적인 연결상태가 아님 )
HTTP는 문서의 참고를 위해 고안된 단순한 프로 토콜이어서 한 번의 요구와 한 번의 응답 후에는 연결을 끊어 버림 비 지속형 연결 지속형 연결 ( Use Pipeline ) DSU Computer Network
6
Connections : 비 지속성 연결방식
비 지속성 연결 ( Non-persistent Connections ) HTTP 1.0 이전까지의 기본연결 방식 비 지속성 연결이란 Client의 요청에 Server가 응답한 후 Client와 연결을 끊는 것을 말하는 것으로 Server는 Client의 계속적인 요청을 기다리지 않고 단 한번의 요 청만을 처리하고 그 연결을 끊는 것을 말한다. DSU Computer Network
7
Connections : 비 지속성 연결방식
비 지속형 연결방식( Non-persistent Connection ) DSU Computer Network
8
Connections : 비 지속성 연결방식
문제점 각각의 문서 요청 때문에 매번 TCP 연결을 함으로써 전체적인 RTT의 증가. 매번 TCP 연결을 설립하면서 생기는 추가적인 processing overhead. 서버가 제공하는 서비스에 대해 사용자 인증이 필요 하다면 인증 절차를 처리함에 있어 연속적인 HTTP 메시지 교환이 생기므로 비효율성을 야기. DSU Computer Network
9
Connections : 지속성 연결방식 지속성 연결( Persistent Connections ) HTTP 1.1 부터 지원
브라우저가 서버에게 HTML 문서를 처음 요청할 때 설 립된 TCP 연결을 서버가 문서를 전송하고 난 후에도 해제시키지 않고 그대로 연결된 상태로 두는 것 DSU Computer Network
10
지속형 연결방식( Persistent Connection )
Connections : 지속성 연결방식 지속형 연결방식( Persistent Connection ) DSU Computer Network
11
Connections : 지속성 연결방식 파이프라이닝( Pipe Lining ) 하나의 TCP 연결을 통해 이루어짐
지속형 연결( Persistent Connection )을 통해 구현 기존 방식과 파이프라이닝 방식의 비교 DSU Computer Network
12
Connections : 지속성 연결방식 파이프라이닝( Pipe Lining )
응답 메시지가 도착하지 않은 상태에서 연속적인 요구 메시지를 서버에 전달 이때 서버는 요구메시지를 수신한 순서대로 응답메시지를 클라이언트에 전달 연결과 종료횟수를 줄임으로서 네트워크 자원의 절약 발생하는 패킷의 숫자를 감소, 네트워크 트래픽 감소 DSU Computer Network
13
Message Format HTTP Message DSU Computer Network
14
Message Format Message 종류 Request : 요청 Message ( Client Server )
Response : 응답 Message ( Server Client ) DSU Computer Network
15
Message Format – Request Message
일반헤더 | 요청헤더 |엔티티헤더 (요청 메시지) DSU Computer Network
16
Message Format – Request Message
Request Line 요청종류 : Methods ( GET,HEAD,POST… ) 자원 (URL) : Protocol ( FTP,HTTP,TELNET… ) HTTP Version : HTTP 1.1 ( 1.0, 0.9도 사용 ) Ex ) GET HTTP/1.1 DSU Computer Network
17
Message Format – Request Message
Request Line - Methods Client가 Server에게 발행하는 실제 명령 or 요청 Method 종류 GET 클라이언트가 서버로부터 문자를 읽을 때 문서검색, 응답 메시지의 본문에 문서내용 포함 POST 클라이언트가 문서에 대한 정보를 원할 때 응답에 본문이 없음( GET과의 차이 ) HEAD 클라이언트가 서버에게 정보를 제공시 사용 Ex) 서버에게 입력을 보낼때 사용 DSU Computer Network
18
Message Format – Request Message
PUT 서버에 저장될 새 문서 or 교체문서를 제공시 사용 요청된 문서에 포함, URL이 지정한 위치에 저장 PATCH 기존 파일의 변경사항 목록만을 포함 COPY 파일을 다른 위치로 복사시 사용 원본 파일 위치는 요청라인(URL), 목적지 위치는 헤더에서 주어짐 MOVE 파일 이동시 사용 DSU Computer Network
19
Message Format – Request Message
DELETE 서버서 문서 제거시 사용 LINK 다른 위치로의 링크나 링크 생성시 사용 원본 파일의 위치는 요청라인, 목적지 위치는 헤더에서 주어짐 UNLINK LINK 에 의해 생성된 링크 삭제시 사용 OPTION 클라이언트가 서버에게 사용 가능한 옵션 질의시 사용 DSU Computer Network
20
Message Format – Request Message
Request Line – URL Ex ) DSU Computer Network
21
Message Format – Response Message
일반헤더 | 요청헤더 |엔티티헤더 (응답 메시지) DSU Computer Network
22
Message Format – Response Message
Status Line – status code 응답 메시지의 상태 정의 구성요소 : HTTP 버전,공백,상태코드,공백, 상태문구 DSU Computer Network
23
Message Format – Response Message
HTTP 버전 : HTTP / 1.1, 1.0 Status Code (상태코드) Code Error Description 웹서버가 클라이언트에게 Request Message를 다 받지 않았다는 메시지 브라우저는 안 보낸 메시지를 다 보내야 함 100 Continue 200 OK 요청이 성공했을때 Bad Request 400 잘못된 문법으로 인해 요청을 이해 할 수 없을때 403 Forbidden 요청을 거부 할 때 404 Not Found 요청한 URI 가 존재하지 않을때 Method Not Allowed 405 허용하지 않은 Method 가 요청되었을 때 DSU Computer Network
24
Message Format – Headers
역할 : 클라이언트와 서버 사이의 추가적인 정보 교환 형식 : 헤더이름, 콜론, 공백, 헤더 값 DSU Computer Network
25
Message Format – Headers
Header Line 일반헤더 (General headers) 요청헤더 (Request headers) 응답헤더 (Response headers) 항목헤더 (Entity headers) Request Message : 일반, 요청, 항목헤더만 포함 Response Message : 일반, 응답, 항목헤더만 포함 DSU Computer Network
26
Message Format – Headers
DSU Computer Network
27
Message Format – Headers
일반헤더(General headers) 메시지에 대한 일반적인 정보 제공 요청과 응답 메시지에 존재 DSU Computer Network
28
Message Format – Headers
요청헤더(Request headers) 클라이언트의 구성과 선호하는 문서 형식을 지정 호스트의 주소와 포트 번호를 보여준다 클라이언트 프로그램( 웹 브라우저)을 표시 User-agent Host 사용자의 이 메일 주소를 보여준다 From 클라이언트가 가지고 있는 사용자 인증 Authorization 클라이언트가 받아들일 언어 Accept-language 클라이언트가 다루는 문자열 셑 지정 Accept-charset 클라이언트가 받아들이는 미디어 타입 Accept Description Header DSU Computer Network
29
Message Format – Headers
응답헤더(Response headers) 서버의 구성과 요청에 대한 특별한 정보를 지정 응답 메시지에만 존재 DSU Computer Network
30
Message Format – Headers
항목헤더(Entity headers) 문서의 본문에 대한 정보 제공 응답 메시지, 요청 메시지에 존재 DSU Computer Network
31
Message Format - Example
메시지 요청과 응답의 예 DSU Computer Network
32
Web Caching 웹 캐시란 인터넷의 게이트웨이 가까이 설치되어 다른 사용자가 방문했던 같은 사이트의 경우에 캐시 서버에 저장해 두었다가 멀리 인터넷 밖의 서버에서 가져오지 않고 캐시 서버에서 직접 응답 서버에서 클라이언트간의 거리로 인한 전송지연을 줄이고 웹 트래픽을 절감함으로서 네트워크의 속도 향상에 지대한 도움 이처럼 동작하는 캐시 서버를 프록시 서버 ( Proxy Server ) DSU Computer Network
33
Web Caching – Proxy Server
포워드 프록시 ( Forward Proxy ) 프록시 서버를 '클라이언트 호스트들과 접근하고자 하는 원격 리소스의 사이'에 위치 DSU Computer Network
34
Web Caching – Proxy Server
리버스 프록시 ( Reverse Proxy ) 프록시 서버를 '인터넷 리소스 또는 인트라넷 리소스 앞'에 위치시키는 방식 DSU Computer Network
35
참고자료 NRC와 함께 하는 LIVE 네트워크 : 한빛미디어 웹 마스터 IN A NUTSHELL : 한빛미디어
WAP와 WML을 중심으로 무선 인터넷 프로그래밍 t-book 5 : 사이텍미디어 컴퓨터 네트워크 : 21세기사 Application Layer(PPT문서) : Distributed System Lab. Korea University 웹에서의 성능 개선(한글문서) : 한국전자통신연구원 하이퍼 텍스트 접속규약 1.1 표준(한글문서) DSU Computer Network
36
END DSU Computer Network
Similar presentations