웹기술의 탄생
티모시 버너스 리
•
CERN(입자물리연구소)에서 컨설턴트로 근무
•
정보검색 시스템 구축
•
이를 바탕으로 현재의 웹기술을 창안
•
HTML, HTTP의 창시자
HTTP는 기본적으로 HTML 문서를 실어나르기 위해 만들어졌다.
•
인터넷은 라우터로 이루어진 거대한 논리 네트워크
URL과 URI
단어의 뜻
URL(Uniform Resource Locator : 리소스의 위치)
URI(Uniform Resource Identifier : 논리적, 물리적 리소스 식별자)
Plain Text
복사
•
Web = HTML + HTTP
•
Resource : HTML과 같이 Web을 구성하는 파일들
•
의미적으로 URI가 더 큰 개념이다
•
URI 구성 및 구조
- Protocol://Address:Portnumber/Path(or filename)?Parameter=value
- http://www.test.co.kr/course.do?cmd=search&search_keyword=Test
Plain Text
복사
물음표(?)가 나온후 매개변수와 밸류가 나온다.
search_keyword(Parameter)=Test(value)
◦
웹에서 포트번호는 기본 TCP : 80번이다.
▪
포트 번호를 특정하지 않으면 게이트웨이인 80을 사용
IP 인터넷 프로토콜의 역할
•
지정한 IP 주소(IP Address)에 데이터 전달
•
패킷(Packet)이라는 통신 단위로 데이터 전달
◦
출발지 - IP 주소
◦
목적지 - IP 주소
•
출발지 IP에서 보내려는 내용을 패킷형태의 데이터 단위로 만들어서 목적지 IP로 보냅니다.
•
인터넷의 Node들이 경로를 안내해주며 목적지 까지 도달하게 됩니다.
IP 프로토콜의 한계
•
비연결성 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
•
비 신뢰성중간에 패킷이 사라지면?
패킷이 순서대로 안오면?
•
프로그램 구분 같은 IP를 사용하는 서버에서 통신하는 어플리케이션이 둘 이상이면?
HTTP
•
HTTP는 HTML 문서를 전송받기 위해 만들어진 응용 프로그램(L7) 계층 통신 프로토콜이다.
•
HTTP는 문자열로 이루어짐
•
1996년 1.0 스펙이 발표되었으며, 99년 6월 1.1이 발표되었다.
•
기본적으로 클라이언트의 요청에 대응하는 응답형식으로 작동한다
•
헤더는 다음과 같이 분류된다
◦
일반 헤더
◦
요청 헤더
◦
응답 헤더
◦
엔티티 헤더
•
요청에 사용되는 메서드는 주로 GET, POST이다.
Get은 다운로드 개념, POST는 업로드 개념
HTTP method
•
GET
◦
Download
•
POST
◦
Upload
•
HEAD
•
TRACE
•
PUT
◦
Resource를 새로 업로드 혹은 업데이트
•
DELETE
•
OPTIONS
•
CONNECT
HTTP 응답 코드
•
200 OK - 요청이 정상적으로 처리됨
•
201 Create - 요청에 대한 새로운 자원을 생성하는데 성공함
•
301 Moved permanently
•
302 Found
•
400 Bad request - HTTP 규약에 맞지 않는 요청
•
403 Forbidden - 권한이 없거나 잘못된 파일 실행 접근 시도
•
404 Not found
•
500 Internal Server error - 내부 오류로 응답 처리 불가능