2025-09-08 02:57
Tags: 소프트웨어 공학
프로토콜
- 캄퓨터와 장치들이 서로 ‘대화’하기 위해 사용하는 공통의 언어이자 규칙입니다.
- 웹 서핑(HTTP), 이메일(SMTP) 등 인터넷의 모든 활동은 TCP/IP를 기반으로 한 다양한 프로토콜 위에서 동작
- 모든 컴퓨터가 이해하고 따를 수 있는 표준화된 규칙의 집합
- 구문 (Syntax):
- 데이터의 형식이나 구조를 정의합니다.
- 메시지의 어느 부분에 송신자 주소가 오고, 어느 부분에 실제 데이터가 담기는지와 같은 ‘데이터의 생김새’에 대한 약속입니다.
- 예를 들어, 8비트는 송신자 주소, 다음 8비트는 수신자 주소, 나머지는 메시지 내용으로 하자는 식의 규칙입니다.
- 의미 (Semantics):
- 구문에 의해 정의된 각 부분(비트 패턴)이 무엇을 의미하는지 해석하는 규칙입니다.
- 특정 코드 값은 ‘연결 요청’을 의미하고, 다른 코드 값은 ‘전송 중 오류 발생’을 의미하는 것처럼, 각 신호의 ‘뜻’을 정하는 것입니다.
- 타이밍 (Timing):
- 언제, 얼마나 빠른 속도로 데이터를 주고받을지에 대한 약속입니다.
- 송신자가 너무 빨리 데이터를 보내 수신자가 처리하지 못하는 상황을 막는 ‘흐름 제어(Flow Control)‘나, 데이터를 보낸 후 얼마 동안 응답을 기다릴지 정하는 규칙 등이 여기에 속합니다.
계층 | 이름 | 주요 기능 |
---|---|---|
7 | 응용 계층 (Application) | 사용자가 직접 상호작용하는 부분 (HTTP, FTP, SMTP) |
6 | 표현 계층 (Presentation) | 데이터의 형식(인코딩, 암호화)을 결정 |
5 | 세션 계층 (Session) | 통신의 시작과 끝, 동기화를 관리 |
4 | 전송 계층 (Transport) | 데이터의 신뢰성 있는 전송을 보장 (TCP, UDP) |
3 | 네트워크 계층 (Network) | 데이터가 목적지까지 갈 최적의 경로를 찾음 (IP) |
2 | 데이터 링크 계층 (Data Link) | 물리적으로 연결된 두 장치 간의 데이터 전송 |
1 | 물리 계층 (Physical) | 데이터를 전기 신호, 빛, 전파 등으로 변환하여 전송 |
계층 | 이름 | OSI 모델과의 관계 | 주요 프로토콜 |
---|---|---|---|
4 | 응용 계층 (Application) | 응용 + 표현 + 세션 | HTTP, SMTP, FTP, DNS |
3 | 전송 계층 (Transport) | 전송 | TCP, UDP |
2 | 인터넷 계층 (Internet) | 네트워크 | IP, ICMP |
1 | 네트워크 인터페이스 | 데이터 링크 + 물리 | Ethernet, Wi-Fi |