책에 대한 간단 후기
- 처음에는 그림이 꽤 많아 아이용인가 싶지만 가면 갈수록 그림이 없어져서 굳이 제목을 ‘그림으로 배우는’ 이라고 해야했나 싶었네요
- 설명 그 자체는 저같은 비전공자가 읽기에 다른 책들과 비슷했지만 그림이 있어 이해하기가 쉬웠음. 하지만 뒤로 갈수록 추가적으로 인터넷을 찾아본 것이 좀 더 많았네요
- 책의 흐름은
웹의 역사
부터 시작해서 TCP/IP
, Request & Response
, URI & URI
, HTTP
, HTTP Header Field
순으로 간다고 보시면 좋을 거 같습니다.
- 후반 부분에는 웹 컨텐츠에서 사용하는 기술들에 대해 간략하게 적혀있으니 참고하셔도 좋을 거 같습니다.
읽으면서 메모한 것들
- 한국 최초 페이지 - http://cair.kaist.ac.kr
- HTML 1.0 - http://www.w3.org/MarkUp/draft-ietf-iiir-html-01.txt
- Mosaic - http://archive.ncsa.illinois.edu/mosaic.html
- NCSA HTTPd - http://web.archive.org/web2009blahblah (너무 길어서 안적었음 궁금하신 분은 구글!)
- HTTP 2.0은 2015년도에 책정되었지만 구글이나 타 포탈을 통해 다른 개발자들의 글을 보았을 때 아직까진(2022년도) 1.1을 위주로 사용
- TCP/IP를 계층화 시킨 이유 - 변경 용이, 설계 간단, 캡슐화 가능
- IP Address 와 MAC Address 에 대해
- ARP (address resolution protocol)
- TCP - 신뢰성 담당
- Three way handshking : SYN - SYN/ACK - ACK (SYN - synchronization/동기화, ACK - acknowledgement/응답)
추가적인 것은 TCP Flag에 대해서 찾아봐야함
- DNS - 이름 해결 담당
- 예:
www.naver.com
이라고 적힌 것을 컴퓨터가 알아듣기 쉽게 IP 주소로 바꾸기
- 수순
- 요청 시 : Client -> DNS -> Client -> HTTP -> TCP -> IP(router) -> TCP -> HTTP -> Server
- 응답 시 : Server -> HTTP -> TCP -> IP(router) -> TCP -> HTTP -> Client (이때는 DNS를 거칠 필요 없음)
- URI (Uniform Resource Identifier)
- Uniform : 여러 종류의 리소스 지정 방법을 같은 맥락에서 구별없이 취급 가능. 그리하여 새로운 스키마 도입에 용이
- Resource : 식별 가능한 모든 것
- Identifier : 식별자
- URL (Uniform Resource Locator)
스키마, 자격정보, 서버 주소, 서버 포트, 계층적 파일 path/ 쿼리 문자열/ 프래그먼트 식별자
로 구성
- HTTP는 stateless protocol (항상 까먹는 휘발성 램과도 같은 존재)
- OPTIONS * HTTP/1.1
- 다수의 요청 또는 대용량 요청이 있을 경우에는
Pipelining > Persistent Connections > 기존 HTTP
순으로 빠름
- HTTP HEADER와 BODY를 나누어주는 것은 CR+LF(개행 문자; /r+/n)