네트워크 통신을 하기 위해서는 어떤것들이 필요한지 추상적이던 그 개념을 간단하게 짚고 넘어가고는 시간을 가져보고자 합니다.
복잡한 인터넷망을 어떤 규칙으로, 어떻게 안전하게 타고 다닐수 있는지 인터넷통신, IP, DNS, PORT 등 필수적인 요소를 명확하게 이해보는 것을 목표로 하며 김영한님의 HTTP 강의를 토대로 작성하였습니다.

근거리 통신을 할때는 LAN으로 MAC주소를 이용해 통신 할 수 있지만
멀리 있는 PC와 통신을 하기위해서는 수많은 중간 노드를 거쳐 네트워크를 식별할 주소가 필요한데요. 여기서 의미하는 주소가 바로 IP 주소를 의미합니다.
인터넷 프로토콜의 관점에서 보면 보내는 클라이언트의 주소는 출발지 IP, 서버의 주소는 도착지 IP, 보내고자하는 내용은 전송 데이터라고 할 수 있습니다.
인터넷 프로토콜의 역할
IP 패킷안에 어떤것들이 담겨있는지 보기 위해 TCP/IP의 형태를 미리 보자면 아래와 같습니다.

전송데이터를 TCP, IP가 감싸고 있는 형태로
IP 패킷 안에는
이러한 구성으로 패킷이 목적지에 도착하기 위해 필요한 값들이 담겨져 있습니다.
위에서 알아본 인터넷 프로토콜에는 몇가지 한계점이 있습니다.

또한 패킷이 중간에 소실될 위험이 있고,
PC가 여러 개의 프로그램을 동시에 사용할 때 IP만으로는 어플리케이션을 구분하기 어렵다는 문제점이 존재합니다.
이러한 한계점을 극복하고 보완한 프로토콜이 TCP 프로토콜입니다.
TCP 프로토콜에 대한 내용은 다음 포스팅에서 다루도록 하겠습니다.