막무가내 삽질 블로그
TCP/IP 란? TCP/IP의 개념 본문
TCP : 전송 조절 프로토콜
IP : 패킷 통신의 인터넷 프로토콜
인터넷이 생기기 전까지 통신을 위해서는 양쪽에서 연결이 필요했다.
서로 간 연결이 이루어지면 연결이 끊어질 때까지 해당 회선을 독점하여 사용했다. 이 기술을 서킷 통신이라 부른다.
이 통신 방식은 처음부터 양쪽이 연결되어 있거나 중간에 node를 거쳐 연결이 되었다.
서킷통신의 단점은 회선 단절에 취약하다. 회선이 끊어지면 다시 연결을 해야 하고, 누군가 선을 사용 중이면 기다려야 한다. 이 단점을 보완하기 위해 node를 다중화 시키는 방법이 나왔다. node를 여러개 만들면 일부 선이 끊어지더라도 다시 연결할 수는 있을 것이다. 하지만 중간에 끊어지면 처음부터 다시 연결을 해야하고, 가능한 망을 찾아 다시 연결해야 하므로 효율적인 방식은 아니었다.
회선이 사용 중일 때 기다리지 않는 방법은? 선이 끊어졌을때 처음부터 다시 연결하여 통신을 하는 것보다 좋은 방법은?
이 문제점을 해결해서 나온 방식이 패킷통신 이다.
패킷통신은 내용을 잘게 나눠서 다중 node를 통해 가장 효율적인 방법으로 목적지로 이동한다.
패킷통신의 단점은 내용을 잘게 나눠 보내기 때문에 빠진 내용이 생길 수도 있고 순서가 뒤죽박죽 되어버릴 수 있다.
이 단점은 목적지에서 점검을 해서 순서대로 정렬하고 누락된 데이터가 있으면 그것만 다시 받아서 합치면 된다.
TCP/IP
인터넷 통신의 대부분은 패킷통신을 기본으로 하고 있다. IP는 데이터의 조각들을 최대한 빨리 목적지로 보내는 역할을 한다.(순서가 뒤바뀌거나 일부라 누락되더라도 크게 상관하지 않고 보내는데 집중) TCP는 IP보다 느리지만 꼼꼼한 방식을 사용한다. 도착한 데이터를 점검하고 누락된 데이터를 다시 요청해서 정렬한다.
'개념정리' 카테고리의 다른 글
OkHttp Interceptor (0) | 2020.03.11 |
---|---|
REST, REST API, RESTful, Retrofit 정리 (0) | 2020.02.18 |
자바 컬렉션 (Java Collection) 정리 (0) | 2020.02.17 |
OSI 7계층과 TCP/IP 정리 (0) | 2020.02.14 |
[스트리밍] 기본지식 (0) | 2019.09.21 |