지식 정리

TCP / IP 란?

Hyeongjun_Ham 2024. 1. 4. 16:32

TCP/IP 들어가기 전 간단히 프로토콜에 대해서 먼저 알아보자.

- 프로토콜

정의는 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고받는 양식과 규칙의 체계이다.

간단히 서로 주고 받는 것에 대한 약속이라고 생각하면 된다.

 

현재는 TCP/IP 프로토콜이 주로 사용되고 있다.

 

그러면 TCP/IP 가 뭔지 알아보자.


- TCP/IP

 

TCP/IP 패킷 통신 방식의 인터넷 프로토콜인 IP와 전송 조절 프로토콜인 TCP로 이루어져 있다.

IP는 패킷 전달 여부를 보증하지 않고, 패킷을 보낸 순서와 받는 순서가 다를 수 있다.

TCP는 IP 위에서 동작하는 프로토콜로, 데이터의 전달을 보증하고 보낸 순서대로 받게 해 준다.

HTTP, FTP, SMTP 등 TCP를 기반으로 한 많은 수의 애플리케이션 프로토콜들이 IP 위에서 동작하기 때문에, 묶어서 TCP/IP로 부르기도 한다.

 

각각 확인해 보자.


 

TCP(Transmission Control protocol)

TCP는 전송 계층에 위치한다.

네트워크의 정보 전달을 통제하는 프로토콜이자 인터넷을 이루는 핵심 프로토콜의 하나이다.

TCP는 웹 브라우저들이 월드 와이드 웹에서 서버에 연결할 때 사용되며, 이메일 전송이나 파일 전송에도 사용된다.

두 호스트가 교환하는 데이터와 승인 메시지의 형식을 정의하여, 서버와 클라이언트 간의 데이터를 신뢰성 있게 전달하기 위해 만들어진 규약이다.

 

- 특징

* 신뢰성

TCP의 가장 중요한 특징은 신뢰할 수 있는 말단 장치간 데이터 전달이다. TCP는 신뢰성을 실현하기 위해 적극적 수신, 통지, 재전송 체계를 사용한다.

 

* 흐름제어

TCP 데이터 세그먼트를 송수신하는 컴퓨터는 CPU와 네트워크 대역폭의 차이 때문에 서로 다른 데이터 속도로 작동할 수 있다.

 

* TCP 연결은 데이터를 양방향으로 운반할 수 있다.

즉, 하나의 전송선로에서 데이터가 동시에 양쪽 방향으로 전송될 수 있는 것을 의미한다.

 

* TCP 연결을 3way handshake 절차를 사용하여 열린다.

간단히 보면 다음과 같다.

 

1. 송신자가 수신자에게 SYN을 날려 통신이 가능한지 확인한다.

2. 수신자가 송신자로부터 SYN을 받고 SYN/ACK를 송신자에게 날려 통신할 준비가 되어있음을 알린다.

3. 송신자가 수신자의 SYN/ACK를 받고 ACK를 날려 전송을 시작함을 알린다.


IP(Internet Protocol)

인터넷 프로토콜은 송신 호스트와 수신 호스트가 패킷 교환 네트워크에서 정보를 주고받는 데 사용하는 정보 위주의 규약이다.

OSI 네트워크 계층에서 호스트의 주소지정과 패킷 분할 및 조립 기능을 담당한다.

 

- 특징

* 비신뢰성, 비연결성

흐름에 관여하지 않기 때문에 보낸 정보가 제대로 갔는지 보장하지 않는다.

예를 들어 전송과정에서 패킷이 손상될 수도 있고, 같은 호스트에서 전송한 패킷의 순서가 뒤죽박죽이 될 수 도 있고, 같은 패킷이 두 번 전송될 수도 있으며, 아얘 패킷이 사라질 수도 있다.

 

이러한 특징때문에 다른 또 하나의 프로토콜을 필요로 하며 대개의 경우 전송 제어 프로토콜 TCP가 그 역할을 한다.

 

출처 :

위키백과,

 

https://aws-hyoh.tistory.com/entry/TCPIP-%EC%89%BD%EA%B2%8C-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0

 

TCP/IP 쉽게 이해하기

IT 분야에서 실무를 담당하시는 분들뿐만 아니라 학생, IT 쪽에 조금이라도 관심이 있는 분들이라면 TCP/IP에 대해 들어보셨을 겁니다. 저 또한 학부시절에 TCP/IP에 대해서 여러 번 들어보았는데요.

aws-hyoh.tistory.com