TCP / IP

김민식·2023년 11월 7일
0

CS

목록 보기
3/7

🌐 TCP/IP 프로토콜 이해하기: TCP? UDP?

1. TCP/IP 란?

TCP/IP는 "Transmission Control Protocol/Internet Protocol"의 약자로, 인터넷 네트워크 통신을 위한 프로토콜 집합입니다. 이 규칙들은 데이터가 인터넷을 통해 어떻게 전송되어야 하는지를 정의하며, 우리가 웹사이트에 접속하거나 이메일을 체크하는 등의 일상적인 온라인 활동을 가능케 합니다.


2. TCP/IP의 주요 구성요소

TCP/IP 모델은 크게 4개의 계층으로 구분됩니다. 각 계층은 특정한 목적을 가지고 있으며, 데이터 전송 과정을 단계적으로 나눠 처리합니다.

1. 네트워크 액세스 계층 (Network Access Layer)

  • 이 계층은 하드웨어적인 영역입니다. 데이터 링크 계층(Data Link Layer)과 물리 계층(Physical Layer)으로 나뉘며, 네트워크 하드웨어와 네트워크 매체(예: 케이블, 스위치 등)에 대한 규격을 정의합니다.
  • 이를 통해, 데이터가 네트워크를 통해 물리적으로 전달될 수 있는 경로를 만듭니다.

2. 인터넷 계층 (Internet Layer)

  • 이 계층에서는 패킷이 생성되고, IP 주소를 이용하여 다른 네트워크로 전송할 수 있도록 라우팅을 합니다. 주요 프로토콜로는 IP (Internet Protocol), ARP (Address Resolution Protocol), ICMP (Internet Control Message Protocol) 등이 있습니다.
  • IP 프로토콜은 패킷을 올바른 목적지로 전달하는 데 필요한 기능을 제공합니다.

3. 전송 계층 (Transport Layer)

  • 이 계층에서는 통신을 활성화하기 위한 다양한 프로토콜을 사용합니다. 대표적으로 TCP (Transmission Control Protocol)와 UDP (User Datagram Protocol)가 있습니다.
  • TCP를 통해 데이터가 정확하고 안전하게 전달되며, UDP는 데이터를 빠르게, 하지만 전송 확인 없이 보내는 데 사용됩니다.

4. 응용 계층 (Application Layer)

  • 사용자가 네트워크에 접근할 수 있도록 인터페이스를 제공하는 계층입니다. 이메일, 파일 전송, 원격 로그인 등의 서비스를 사용자에게 제공합니다.
  • 이 계층의 프로토콜 예로는 HTTP, FTP, SMTP, DNS 등이 있습니다.



Tip. OSI 7계층

TCP / IP 4계층은 OSI 7계층 모델로 설명하기도 합니다.

OSI 계층은 TCP / IP 애플리케이션 계층을 세 개로 쪼개고 링크 계층을

데이터 링크, 물리 계층으로 표현하고 인터넷 계층을 네트워크 계층으로

부른다는 차이점만 있을 뿐 기능은 동일합니다.


3. TCP와 UDP?

TCP와 UDP의 주요 차이점

프로토콜TCPUDP
패킷 교환 방식가상 회선 방식데이터그램 방식
속도느림빠름
연결성연결형 서비스비연결형 서비스
신뢰성높음낮음
오류검사재전송, 체크섬체크섬
패킷의 순서보장OX
통신 방식1:11:1, 1:N, N:M
브로드캐스트지원XO
용도신뢰성 요구 작업실시간 전송 작업

TCP와 UDP의 다양한 사용 사례

프로토콜사용 예시설명
TCP웹 브라우징 (HTTP/HTTPS)웹 페이지의 안정적인 로딩을 위해 사용됩니다.
이메일 (SMTP/POP/IMAP)메시지가 정확하게, 순서대로 전달되도록 합니다.
파일 전송 (FTP)파일이 손실 없이 정확하게 전송되도록 합니다.
UDP스트리밍 서비스실시간으로 데이터를 빠르게 전송하여 지연을 최소화합니다.
온라인 게임빠른 퍼포먼스와 실시간 통신을 위해 사용됩니다.
VoIP 통화실시간 통화의 끊김 없는 경험을 제공합니다.

이 표로 볼 때, TCP는 신뢰성이 중요한 상황에서, UDP는 실시간 서비스가 필요한 상황에서 각각 필요한 프로토콜임을 알 수 있습니다. 각 프로토콜은 인터넷 환경의 다양한 요구를 충족시키기 위해 설계되었습니다.


4. 알아두면 좋은 Ports

프로토콜서비스포트 번호
TCPFTP (데이터 전송)20
TCPFTP (명령 제어)21
TCPSSH22
TCPTelnet23
TCPSMTP (이메일 전송)25
TCPHTTP (웹 서비스)80
TCPHTTPS (보안 웹 서비스)443
UDPDNS (도메인 이름 해석)53
UDPDHCP (동적 호스트 구성)67, 68
UDPTFTP (간단한 파일 전송)69
UDPSNMP (네트워크 관리)161
UDPRTP (실시간 전송 프로토콜)주로 동적 포트 사용

* 프로토콜(Protocol) : 컴퓨터나 네트워크 장비가 서로 통신하기 위해 따라야 하는 규칙이나 절차
profile
BE Developer

0개의 댓글