본문 바로가기
취준/CS 기술면접 준비

프로토콜(Protocol)이란?

by 윤숩 2025. 1. 5.
728x90
728x90

 

프로토콜(Protocol)이란?

: 프로토콜은 컴퓨터 네트워크에서 서로 다른 시스템 간 통신을 위해 정해진 규칙과 절차를 말합니다.

=> 즉, 데이터를 주고받는 방법, 형식, 순서를 정의한 약속이라고 할 수 있습니다. 프로토콜이 없다면, 서로 다른 장치나 소프트웨어가 데이터를 이해하거나 처리할 수 없으므로 통신이 불가능합니다.


 ✔️프로토콜의 역할

 

1. 통신 규칙 정의

- 데이터를 어떻게 시작하고 종료하며, 어떤 순서로 처리할지 규정합니다.

=> 예: TCP/IP는 데이터 전송을 위한 연결 설정 및 관리 방법을 정의합니다.

 

2. 데이터 포맷 지정

- 데이터를 송신자가 어떤 형식으로 전송하고, 수신자가 어떻게 해석할지 규정합니다.

=> 예: HTTP는 요청(request)와 응답(response)의 구조를 정의합니다.

 

3. 오류 검출 및 복구

- 데이터 전송 중 발생하는 오류를 확인하고 복구하는 방법을 규정합니다.

=> 예: TCP는 손실된 패킷을 재전송합니다.

 

4. 데이터 흐름 제어

- 송신 속도와 수신 속도를 조정해 네트워크 혼잡을 방지합니다.


 ✔️ 프로토콜의 구성 요소

 

1. 구문(Syntax)

- 데이터의 형식과 구조를 정의합니다.

=> 예: 비트(bit) 순서, 데이터 필드의 위치 등.

 

2. 의미(Semantics)

- 각 데이터가 가지는 의미와 동작을 정의합니다.

=> 예: 특정 명령이 어떤 행동을 요구하는지.

 

3. 타이밍(Timing)

- 데이터가 언제 전송되고, 응답이 언제 도착해야 하는지 정의합니다.

=> 예: 타임아웃 설정.


 ✔️ 프로토콜의 종류

 

◾네트워크 계층별 프로토콜

: 프로토콜은 OSI 7 계층 모델 또는 TCP/IP 모델에 따라 역할별로 나뉩니다.

계층 예시 프로토콜 역할
응용 계층 HTTP, HTTPS, FTP, SMTP, DNS 애플리케이션 간 데이터 전송
전송 계층 TCP, UDP 데이터 전송 신뢰성 보장 및 세그먼트화
인터넷 계층 IP, ICMP, ARP 데이터 전송 경로 설정 및 주소 지정
네트워크 인터페이스 계층 Ethernet, Wi-Fi, Bluetooth 물리적 데이터 전송 및 링크 제어

 

▪️HTTP (HyperText Transfer Protocol)

- 웹 브라우저와 서버 간 통신을 위한 프로토콜입니다.

=> 예: 웹사이트 요청과 응답. (GET, POST 요청)

 

▪️ TCP/IP (Transmission Control Protocol/Internet Protocol)

- 인터넷에서 데이터를 정확하게 전송하기 위한 프로토콜입니다.

- TCP: 데이터 전송의 신뢰성 보장. 

- IP: 데이터를 목적지로 라우팅.

 

▪️ FTP (File Transfer Protocol)

- 파일을 전송하기 위한 프로토콜입니다.

 

▪️ SMTP (Simple Mail Transfer Protocol)

- 이메일을 전송하기 위한 프로토콜입니다.

 

▪️ DNS (Domain Name System)

- 도메인 이름을 IP 주소로 변환해주는 프로토콜입니다.


 

✔️ 프로토콜의 장단점

 

◾ 장점

1. 상호 운용성 : 서로 다른 하드웨어 및 소프트웨어 간 통신 가능.

2. 표준화 : 통신 규칙이 표준화되어 있어 효율적인 네트워크 설계가 가능.

3. 확장성 : 새로운 장치나 기술이 추가되어도 기존 시스템과 쉽게 연동 가능.

 

◾ 단점

1. 복잡성 증가 : 다양한 프로토콜을 관리하고 이해하는 데 시간이 걸림.

2. 오버헤드 : 데이터 전송 시, 프로토콜 헤더로 인해 추가적인 데이터가 전송되어 네트워크 자원을 소비.

728x90
728x90

'취준 > CS 기술면접 준비' 카테고리의 다른 글

웹 표준(Web Standards)이란?  (1) 2025.01.05
SEO(Search Engine Optimization, 검색 엔진 최적화)란?  (2) 2025.01.05
HTTP와 HTTPS의 차이  (1) 2025.01.05
RESTful API란?  (2) 2025.01.05
동기 vs 비동기 비교  (1) 2025.01.05

댓글