인터넷에서 컴퓨터들이 서로 정보를 주고 받는데 쓰이는 통신규약(프로토콜)의 모음을
Internet Protocol Suite 이라고 하는데, TCP 와 IP는 그 통신규약(프로토콜) 중 하나이며
그 중 TCP 와 IP는 가장 많이 쓰이기 때문에 TCP/IP Protocol Suite 라고 불린다.
자......쉽게 풀어서 알아보자.......
그럼 여기서 TCP와 IP의 개념을 알아보자.
데이터 통신에 대해 더 생각해보기 전에 패킷(Paket)통신 이라는 용어에 대한 이해가 필요하다.
옛날 프로토콜이 정의되지 않았을때에는 컴퓨터 통신도 기본적으로는 전화처럼 양 쪽이 1 대 1 로 연결되는 방식인 서킷 통신을 사용했다.
하지만 시대를 거듭하면서 서킷 방식의 통신은 회선이 끊어지면 다시 연결을 해야하고, 누군가 선을 사용 중이면 기다려야 하는 불편함이 있었다.
이 고민을 해결하기 위해서 고안된 방법이 여러 개의 노드(망)을 만들어서 일부 선이 끊어지더라도 끊어지지 않은 선을 통해 통신을 하는 방식이다.
하지만 이 방법도 모든 불편함을 해결한 방법은 아니었다. 중간에 연결이 끊어지면 처음부터 다시 연결을 해주어야하고, 연결이 끊기거나 이미 망이 사용 중이라면 가능한 망을 찾아 다시 연결하는 것이 딱히 효율적이지 않기 때문이다.
따라서 고안된 방법이 노드를 다중화 하고, 데이터를 작게 잘라서 보내는 방법이다. 여기서 작게 쪼개진 데이터의 단위를 패킷(packet)이라고 하고 이렇게 작게 쪼개진 패킷(packet)들은 목적지를 향해서 각각 효율적인 방법으로 이동한다.
여기서 의문점이 생길 수 있는데, 데이터를 작게 쪼개어 보내면 뒤섞이거나 빠진 내용이 생길 수 있지 않을까? 라는 생각이다.
하지만 이 내용은 간단하게 해결이 가능하다. 목적지에서 점검해서 순서대로 다시 정렬하고, 잘못되거나 빠진 데이터가 있다면 다시 요청을 해서 합치는 과정만 거치면 된다.
이렇게 데이터를 잘게 쪼개는 패킷(packet) 통신을 함으로 동시에 여러 곳에서 통신을 하더라도 문제가 없어졌다.
TCP와 IP는 각기 다른 목적을 가진 프로토콜이지만 인터넷 통신을 위해서는 대부분 두 프로토콜을 함께 사용하기 때문에 흔히 TCP/IP라고 부른다. 즉, TCP는 IP에 대한 대체가 아니라 보완을 목적으로 두는 프로토콜이다. 만약 IP를 통해서만 데이터를 주고받는다면 원치 않는 이슈를 맞닥뜨릴 수 있다.
TCP는 위와 같은 문제를 사전에 방지하고자 3 Way-Handshake나 PORT와 같은 메커니즘을 주요한 특징으로 삼고 있다.