주소로 지정한 서버의 리소스(파일 정보)를 얻는다
클라이언트 >>>>>>>>>>>>>>>>>>>>>>>>> 서버
<<<<<<<<<<<<<<<<<<<<<<<<<
HTTP를 사용한 통신
이렇게 클라이언트에서 서버까지 어떤 흐름을 결정하고 있는 것 = HTTP, 프로토콜
HTTP를 이해하기 위해서는 TCP/IP 프로토콜에 대한 이해도가 필요하다
서로 다른 하드웨어랑 운영체제를 가지고 서로 통신하려면 규칙이 필요하다 이걸 프로토콜
여기서 이너넷과 관련된 프로토콜들을 모은 것을 총칭해서 TCP/IP(TCP와 IP 프로토콜도 있음)
TCP/IP는 '애플리케이션 계층', '네트워크 계층', '링크 계층', '트랜스포트 계층'
왜 이렇게 계층화 했는가?
인터넷이 하나의 프로토콜로 이루어져있다면 사양이 변경 됐을 때 통채로 바꿔야함,,
계층화를 통해 해당 계층만 바꿀 수 있기 때문에 생산성 up!
계층끼리 연결되어 있지만 내부는 자유롭게 설계 가능
ex. 송신측 클라이언트 애플리케이션 계층(HTTP)에서 나 이 페이지 보고 싶어~ 를 지시한다
그 다음 트랜스 포트(TCP) 계층은 애플리케이션에서 받은 데이터(HTTP 메시지)를 통신하기 쉽게
조각내어 안내 번호 포트 번호를 붙여 전달
네트워크 계층(IP)는 수신지 MAC 주소를 추가해서 링크 계층에 전달
네트워크를 통해 송신 할 준비 끝!
수신 측은 링크 계층에서 차례로 위로 도달. 수신 완료 !
송신 할 땐 각 계층을 거칠 때는 헤더라고 불려지는 해당 계층에 필요한 정보를 추가하고
수신측에선 각 계층을 거칠 때마다 반드시 해당 계층마다 사용한 헤더를 삭제하는데
이렇게 정보를 감싸는 것을 캡슐화라고 한다
HTTP와 관계가 깊은 프로코톨 IP/ TCP/ DNS