🌱 기초 네트워크
프로토콜(Protocol)이 뭔가요?
쉽게 이해하기
외국인과 대화할 때를 생각해보세요. 같은 언어를 써야 하고, 인사하는 방식이나 대화 순서 같은 규칙도 있죠. "안녕하세요"라고 하면 "안녕하세요"로 답하는 것처럼요. 컴퓨터도 마찬가지예요. HTTP, FTP, SMTP 같은 프로토콜은 컴퓨터들이 서로 데이터를 주고받을 때 지켜야 하는 '공통 언어'이자 '대화 규칙'이에요.
핵심 정리
컴퓨터들이 서로 대화할 때 지켜야 하는 약속과 규칙이에요.
자세히 알아보기
프로토콜은 네트워크에서 데이터를 주고받기 위한 통신 규약이에요. 컴퓨터는 숫자와 전기 신호만 이해하기 때문에, 서로 다른 컴퓨터나 장치가 통신하려면 공통된 약속이 필요해요. 이 약속이 바로 프로토콜이죠.
우리가 매일 쓰는 인터넷에는 수많은 프로토콜이 숨어 있어요. 웹사이트를 볼 때는 HTTP(HyperText Transfer Protocol)를, 이메일을 보낼 때는 SMTP(Simple Mail Transfer Protocol)를, 파일을 내려받을 때는 FTP(File Transfer Protocol)를 사용해요. 각 프로토콜은 데이터를 어떤 형식으로 포장할지, 어떤 순서로 보낼지, 오류가 생기면 어떻게 처리할지 등을 세밀하게 정해놓았어요.
실무에서 개발자들은 프로토콜을 직접 만들기보다는 기존 프로토콜을 활용해요. 웹 개발을 한다면 HTTP/HTTPS를 사용하고, 실시간 채팅 기능을 만든다면 WebSocket 프로토콜을 쓰죠. API를 설계할 때도 RESTful API는 HTTP 프로토콜의 규칙을 따르고, GraphQL은 자체 프로토콜 규칙을 가지고 있어요. 프로토콜을 이해하면 왜 웹사이트 주소가 'http://'로 시작하는지, 왜 이메일 서버 설정에서 SMTP와 POP3를 구분하는지 알 수 있어요.
프로토콜은 계층 구조로 되어 있어요. TCP/IP 모델에서는 응용, 전송, 인터넷, 네트워크 접근 계층으로 나뉘고, 각 계층마다 다른 프로토콜이 작동해요. 예를 들어 웹사이트 하나를 열 때도 HTTP(응용 계층), TCP(전송 계층), IP(인터넷 계층) 등 여러 프로토콜이 협력해서 작동한답니다. 이런 표준화된 프로토콜 덕분에 전 세계 어디서든 같은 방식으로 인터넷을 사용할 수 있어요.