프로토콜
프로토콜(protocol)은 네트워크에서 데이터를 주고받을 때 사용하는 규칙과 약속이다.
송신자와 수신자가 원활하게 통신할 수 있는 표준화된 통신 방식을 정의한다.
3대 요소
- 구문 (Syntax) - 데이터 형식과 구조 정의
- 의미 (Semantics) - 데이터의 의미와 동작 정의
- 순서 (Ordering) - 데이터 교환의 순서 정의
예제) HTTP 요청과 응답 과정
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html
-> 클라이언트의 HTTP 요청 메시지
HTTP/1.1 200 OK
Date: Fri, 15 Mar 2025 12:00:00 GMT
Server: Apache/2.4.41 (Ubuntu)
Content-Type: text/html
Content-Length: 1234
<html>
<body>
<h1>Welcome to Example.com</h1>
</body>
</html>
-> 서버의 HTTP 응답 메시지
HTTP 요청 메시지에는 GET /index.html HTTP/1.1과 같은 특정한 형식이 존재
요청 헤더(Host ,User-Agent, Accept)와 응답 헤더(Date, Server...) 가 일정한 구조를 가짐 (구문 syntax)
클라이언트는 HTTP GET 요청을 보냄 = 서버에게 index.html 파일을 달라는 의미
서버는 200 ok 응답을 반환 = 요청한 파일이 존재하며 전송한다는 의미
content-Type: text/html = 브라우저가 이 응답이 HTML 문서임을 인식하도록 의미 전달 (의미 Semantics)
HTTP는 TCP프로토콜을 사용하여 순서를 유지한다. ( 순서 ordering)
네트워크 프로토콜의 종류

네트워크 엣지
네트워크 엣지는 사용자가 인터넷에 접속하는 시작점, 즉, 네트워크에 연결된 장치(호스트) 들이 위치하는 부분이다.
구성요소
1. 호스트 (Hosts)
- 사용자 장치 (PC, 스마트폰 , 서버 ,IoT 기기)
- 클라이언트 (웹 브라우저, 모바일 앱등)
- 서버 (웹 서버, 데이터베이스 서버)
2. 액세스 네트워크 (Access Networks)
- 유선 네트워크 (광섬유 , DSL , 케이블)
- 무선 네트워크 (Wi-fi, LTE ,5G)
