통신 프로토콜이란? 인터넷에서 자주 언급되는 protocol 종류 7가지
통신 프로토콜(communication protocol:통신 규약)은 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙 체계입니다. 네트워크에서 통신할 때 규약으로 프로토콜이라는 용어를 사용합니다. 통신하기 위한 규칙이 통신 프로토콜이란 것을 알 수 있습니다. 프로토콜은 크게 물리적 측면과 논리적 측면으로 나눌 수 있습니다.
- 물리적 측면: 이더넷에서 주로 사용
- 데이터 전송 매체, 신호 규약, 회선 규격 등.
- 논리적 측면: TCP/IP
- 장치들끼리 통신하기 위한 프로토콜 규격으로 TCP/IP에서 사용
네트워크 서비스의 개발이 시작되던 1900년 대 네트워크 및 컴퓨팅 환경은 열악했으며, 적은 자원과 느린 네트워크 속도를 효율적으로 사용하는 것이 목적이었기 때문에 문자 기반이 아닌 2진수 비트로 만들어졌습니다.
✅ 프로토콜 스택
TCP/IP를 통신 프로토콜이라 부르기 보다 더 정확하게는 프로토콜 스택이라고 부릅니다.
TCP/IP 프로토콜 스택은 총 4개 부분으로 나뉘며 물리 부분인 이더넷 외 데이터가 목저지를 찾아가도록 해주는 네트워크 계층, 패킷을 데이터 형태로 조합하도록 도와주는 전송 계층과 애플리케이션 계층으로 구성됩니다.
✅ 통신 프로토콜 종류
대표적인 통신 프로토콜의 TCP, HTTP, HTTPS, TLS/SSL, UDP, FTP&SFTP, SSH 7가지에 대해 알아 보겠습니다.
1. TCP
TCP(Transmission Control Protocol: 전송 제어 규약) 프로토콜은 전송 계층 프로토콜이며 IP와 함께 사용하기 위한 프로토콜입니다. 보통 TCP/IP를 함께 사용하며 IP는 데이터의 배달, TCP는 패킷의 추적 및 관리를 맡게 됩니다.
2. HTTP
하이퍼텍스트 전송 프로토콜(HyperText Transfer Protocol)은 월드와이드웹(WWW)의 기반이며, HTTP를 사용해서 웹 브라우저와 같은 통신 플랫폼에 웹 사이트를 로드할 때 사용됩니다.
3. HTTPS
HTTPS(HyperText Transfer Protocol Secure)는 HTTP 통신의 암호화 된 버전입니다. 해커로부터 HTTP 메시지가 해킹될 소지를 암호화 함으로써 막아줍니다.
4. TLS/SSL
TLS(전송 보안 계층)는 HTTPS의 암호화에 사용되는 프로토콜입니다. SSL 버전 이후 TLS로 명칭이 변경되었지만 여전히 SSL로 불리고 있습니다.
5. UDP
사용자 데이터그램 프로토콜(User Datagram Protocol, UDP)는 TCP에 비해 빠르지만 안정성이 상대적으로 부족합니다. 비디오 스트리밍과 게임 등의 서비스에 주로 사용됩니다.
6. FTP&SFTP
7. SSH
SSH(Secure SHell: 시큐어 셸)은 네트워크 상의 다른 서버에 로그인 or 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있게 하는 응용 프로그램입니다. 대표적인 프로그램으론 putty와 MobaXterm이 있습니다.
✅ 계층 별 프로토콜 분류
계층 | 프로토콜 |
---|---|
물리 계층 | Ethernet, RS-232, USB, HDMI, Wi-Fi, Bluetooth |
데이터 링크 계층 | Ethernet, Token Ring, HDLC, PPP, Wi-Fi, Bluetooth |
네트워크 계층 | IP, ARP, ICMP, IGMP, OSPF, BGP |
전송 계층 | TCP, UDP, SCTP |
세션 계층 | NetBIOS, ASP, L2TP |
표현 계층 | JPEG, MPEG, ASCII, EBCDIC |
응용 계층 | HTTP, FTP, SMTP, POP3, IMAP, Telnet, SSH, DNS |
✅ 통신 프로토콜 포트 번호
대표적인 통신 프로토콜 포트 번호입니다.
프로토콜 | 포트 번호 | 설명 |
---|---|---|
HTTP | 80 | 웹 서버와 클라이언트 간의 데이터 전송을 위한 프로토콜 |
HTTPS | 443 | HTTP의 보안 버전 |
FTP | 21 | 파일 전송 프로토콜 |
SFTP | 22 | 파일 전송 프로토콜(FTP의 보안 접속) |
SSH | 22 | 원격 접속을 위한 암호화된 프로토콜 |
Telnet | 23 | 원격 접속을 위한 프로토콜 |
SMTP | 25 | 전자 메일을 보내기 위한 프로토콜 |
POP3 | 110 | 전자 메일을 수신하기 위한 프로토콜 |
IMAP | 143 | 전자 메일을 수신하기 위한 프로토콜 |
DNS | 53 | 도메인 이름을 IP 주소로 변환하기 위한 프로토콜 |
DHCP | 67, 68 | 네트워크 장비에 IP 주소를 자동으로 할당하기 위한 프로토콜 |
SNMP | 161 | 네트워크 장비의 상태 및 성능 정보 수집을 위한 프로토콜 |
RDP | 3389 | 원격 데스크톱 프로토콜 |
SIP | 5060 | VoIP 통화를 위한 프로토콜 |
NTP | 123 | 네트워크 시간 동기화를 위한 프로토콜 |
LDAP | 389 | 디렉터리 서비스를 위한 프로토콜 |
SMB | 445 | 파일 공유 및 프린터 공유를 위한 프로토콜 |