DEVLOG JOURNAL

'Protocol'에 대해 본문

Development In Unity/Dev Notes

'Protocol'에 대해

EVANJ 2026. 7. 5. 00:19

 

"프로토콜(protocol)은 컴퓨터와 컴퓨터 사이, 또는 한 장치와 다른 장치 사이에서
데이터를 원활히 주고받기 위하여 약속한 여러 가지 규 (規約)"

표준국어대사전


IT에서 컴퓨터, 스마트폰, 서버 인터넷 장비들은 서로 데이터를 주고받아야 한다.

그런데 각자 규칙없이 서로 다르게 말하면 소통이 안된다. 그래서 어떤 형식으로 말할지, 어떤 순서로 주고받을지,

문제가 생기면 어떻게 처리할지를 정해둔 규칙이 필요한데, 이것을 프토로콜이라 한다.

 

프로토콜은 "언어"이자 "절차"다

프로토콜 = 데이터 통신을 위한 언어 + 형식 + 순서 + 규칙

 

대표적인 프로토콜 예시

HTTP / HTTPS

웹사이트를 볼 때 사용하는 대표적인 프로토콜이다.

  • HTTP : 웹페이지 데이터를 주고받는 규칙
  • HTRPS : HTTP에 보안 암호화를 더한 것

웹사이트 주소가 https://로 시작하는 경우가 많다.

이건 브라우저와 서버가 HTTPS 규칙으로 안전하게 통신한다는 뜻이다.

 

예를 들어 사용자가 특정 사이트에 접속하면 브라우저가 서버에게 이렇게 요청하는 셈이다.

"이 페이지의 데이터를 보내주세요."

서버는 이렇게 응답한다.

"여기 있습니다. 상태는 정상입니다."

이때 자주 보이는 404 Not Found, 500 Server Error 같은 것도 HTTP 규칙 안에서 정해진 응답 코드이다.


TCP

TCP는 데이터를 안전하고 정확하게 보내는 규칙에 가깝다.

큰 파일이나 웹페이지 데이터를 한 번에 통째로 보내는 것이 아니라, 작은 조각으로 나누어 보내는 경우가 많다.

 

TCP는 이런 것들을 관리한다.

  • 데이터가 순서대로 도착했는지
  • 중간에 빠진 조각은 없는지
  • 빠졌다면 다시 보내야 하는지
  • 상대가 제대로 받았는지

택배로 비유하면, 물건을 여러 상자로 나누어 보냈을 때 1번, 2번, 3번 상자가 모두 도착했는지 확인하는 규칙이 TCP이다.


IP

IP는 데이터를 어디로 보낼지 주소를 정하는 규칙이다.

우리가 집 주소를 써야 택배를 받을 수 있듯이, 인터넷에서도 컴퓨터나 서버에는 주소가 있다. 그게 IP 주소이다.

 

예를 들면 이런 형식이다.

192.168.0.1

IP는 "이 데이터는 어느 주소로 가야 한다."를 담당한다.

TCP와 IP는 자주 같이 쓰여서 TCP/IP라고 부르는 경우가 많다.


FTP

FTP는 파일을 주고받기 위한 프로토콜이다.

예전에는 서버에 파일을 올리거나 내려받을 때 많이 사용했다.

  • 파일 업로드
  • 파일 다운로드
  • 서버 폴더 접근

이러한 용도로 쓰였지만, 요즘은 보안 문제 때문에 SFTP 같은 더 안전한 방식도 많이 사용한다.


SMTP, POP3, IMAP

이메일과 관련된 프로토콜이다.

  • SMTP : 이메일을 보내는 규칙
  • POP3 : 이메일을 내 기기로 가져오는 규칙
  • IMAP : 서버에 있는 이메일을 여러 기기에서 동기화해서 보는 규칙

예를 들어 스마트폰, PC, 테블릿에서 같은 이메일을 볼 수 있는 건 IMAP 같은 프로토콜 덕분이다.


DNS

DNS는 사람이 읽기 쉬운 웹사이트 주소를 컴퓨터가 이해할 수 있는 주소로 바꿔주는 시스템이다.

사람은 이렇게 입력한다.

google.com

하지만 컴퓨터는 실제로 숫자 주소인 IP 주소를 사용한다.

DNS는 쉽게 말해 인터넷 주소록이다.

"google.com은 어느 서버 주소야?"
"이 IP 주소로 가면 돼."

이런 식으로 연결을 한다.


프로토콜은 하나만 사용되지 않는다

웹사이트에 접속할 때는 하나의 프로토콜만 쓰이는 것이 아니다.

예를 들어 사용자가 브라우저에서  https://example.com 에 접속한다고 하면 여러 프로토콜이 함께 작동한다.

DNS : example.com의 실제 IP 주소를 찾음
IP : 데이터를 그 주소로 보냄
TCP : 데이터가 빠지지 않고 순서대로 가게 함
TLS/SSL : 데이터를 암호화함
HTTPS : 웹페이지 요청과 응답을 처리함

즉, 인터넷 통신은 여러 프로토콜이 역할을 나누어 협업하는 구조이다.

모든 일을 하나의 거대한 규칙으로 처리하면 너무 복잡해지기 때문에, 역할을 나누게 되었고,

그렇기 때문에 각 기술을 따로 개선하거나 교체하기가 용이하다.


프로토콜이 맞지 않는다면

프로토콜이 다르면 서로 이해하지 못한다.

예를 들어 한 사람은 한국어로 말하고, 다른 사람은 스페인어로 말하는데 서로 번역기가 없다면 대화가 어렵다.

이 예시는 컴퓨터도 마찬가지이다.

서버는 HTTP 방식으로 요청을 기다리고 있는데, 클라이언트가 전혀 다른 방식으로 데이터를 보내면 서버는 이해하지 못한다.

그래서 이러한 문제가 생길 수 있다.

  • 사이트 접속 실패
  • 파일 전송 실패
  • 로그인 오류
  • 이메일 수신 실패
  • 서버 응답 없음
  • 보안 연결 실패

 


프로토콜과 파일 형식의 차이

프로토콜과 파일 형식은 다르다.

파일 형식은 파일 자체의 구조이다.

예를 들어 JPG, PNG, FBX, TXT 등 이러한 파일 형식은 '데이터가 어떤 모양으로 저장되어 있는가'에 대한 규칙이다.

반면 '프로토콜'은 데이터를 주고받는 방식이다.


프로토콜과 API의 차이

프로토콜은 통신의 기본 규칙이다.

API는 특정 서비스나 프로그램을 어떻게 사용할지 정해둔 창구이다.

예를 들면, "유튜브 댓글을 가져오려면 이 주소로 이런 요청을 보내라." 같은 주문이다.

API는 보통 HTTP 같은 프로토콜 위에서 작동한다.

비유를 해서 정리하자면

프로토콜 = 대화하는 기본 방식
API = 특정 서비스에게 요청하는 메뉴판

정리하자면

프로토콜은 통신 규칙이다.

누가
누구에게
어떤 형식으로
무엇을 보내고
어떻게 확인하고
문제가 생기면 어떻게 처리할지
정해둔 규칙

 

  • 웹사이트 접속: HTTP / HTTPS
  • 데이터 정확한 전달: TCP
  • 인터넷 주소 지정: IP
  • 사이트 주소 찾기: DNS
  • 이메일 보내기: SMTP
  • 파일 전송: FTP / SFTP

 

'Development In Unity > Dev Notes' 카테고리의 다른 글

API와 MCP  (0) 2026.07.05
옵시디언을 위한 마크다운 기본 규칙  (0) 2026.07.01