네트워크는 OSI 7계층 또는 TCP/IP 4계층으로 구분한다.
배울것:
컴퓨터를 사용하다 보면 흔히 접할 수 있는 IP, 캐시, HTTP통신 흐름
- TCP/IP
- 네트워크 계층 모델
- HTTP
- HTTPS
IP기반(인터넷 프로토콜)의 네트워크의 시작은, 아르파넷(ARPANET)프로젝트에서 시작되었다. 이 프로젝트는 당시 냉전시대 핵전쟁을 대비하기 위한 통신망 구축을 위해 추진되었다. 이때 사용되었던 회선 교환 방식이 아닌 패킷 교환 방식으로 네트워크를 구축하게 되는데 이를 토대로 현재의 인터넷 통신 방식의 기반이 세워졌다.
이전 회선 교환 방식을 알아보자
패킷교환 방식은 기존에 전화에서 사용했던 회선교환 방식의 단점을 보완한 방식이다.
회선교환 중간에 발신자와 수신자를 연결해주는 전화 교환원, 오퍼레이터가 존재한다. 회선 교환 방식은 발신자와 수신자 사이에 데이터를 전송할 전용선을 미리 할당하고 둘을 연결한다. 이를 사용할 때의 단점을 알아보자
회선이 사용중이더라도 마냥 기다리지 않아도 되는 방법으로, 패킷교환 방식은 패킷이라는 단위로 데이터를 잘게 나누어 전송하는 방식이다. 마치 소포를 보내듯!
각 패킷에는 출발지와 목적지 정보가 있고 이에 따라 패킷이 목적지를 향해 가장 효율적인 방식으로 데이터를 전송할 수 있다.
그래서 인터넷 프로토콜 즉 IP는 출발지와 목적지의 정보를 IP주소라는 특정한 숫자값으로 표기하고 패킷단위로 데이터를 전송한다.
복잡산 인터넷 망 속 수많은 노드들을 지나 어떻게 클라이언트와 서버가 통신할 수 있을까?
(여기서 노드는 하나의 서버컴퓨터를 의미한다.)
출발지에서 목적지까지 데이터가 무사히 전달되기 위해선 규칙이 필요하다.
그래서 흔히 말하는 IP(인터넷 프로토콜)주소를 컴퓨터에 부여하여 이를 이용해 통신한다.
IP는 지정한 IP주소(IP Address)에 패킷(Packet)이라는 통신 단위로 데이터 전달을 한다.
IP패킷에서 패킷은 pack과 bucket이 합쳐진 단어로 소포로 비유할 수 있다.
IP패킷은 이를 데이터 통신에 적용한 것이라고 보면 된다.
IP패킷은 우체국 송장처럼 전송 데이터를 무사히 전송하기 위해 출발지 IP, 목적지 IP와 같은 정보가 포함되어 있다.
패킷 단위로 전송을 하면 노드들은 목적지 IP에 도달하기 위해 서로 데이터를 전달한다. 이를 통해 복잡한 인터넷 망 사이에서도 정확한 목적지로 패킷을 전송할 수 있다.
서버에서 무사히 데이터를 전송받는다면 서버도 이에 대한 응답을 돌려줘야 한다.
서버역시 IP패킷을 이용해 클라이언트에 응답을 전달한다.
하지만 IP프로토콜에도 한계가 존재한다