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