본 포스트는 OSI 7계층과 TCP/IP 4계층을 얕게 정리한 포스트입니다.
🧐 용어 정리
Host
: 네트워크에 연결된 장치Process
: 실행중인 프로그램NIC
: LAN 카드
4️⃣ ( 4계층 )애플리케이션 계층 ( Application Layer )
OSI
의 세션 계층(L5) + 표현 계층(L6) + 응용 계층(L7)
Process
들이 동작하는 계층
Process
들끼리 데이터를 교환하기 위해 사용
사용 프로토콜 ( Protocol )
HTTP
/HTTPS
: 웹에서 데이터를 송ꞏ수신할 때 사용
3️⃣ ( 3계층 ) 전송 계층 ( Transport Layer )
OSI
의 전송 계층(L4
)
통신 노드간의 연결 및 데이터(Segment
) 전송
Port
번호를 이용해서 송ꞏ수신할 애플리케이션을 찾음
패킷을 Segment
이라는 단위로 부름
Port
번호:Process
를 식별할 수 있는 식별자 (Socket
에 바인딩 됨 )
사용 프로토콜 ( Protocol )
TCP
: 연결 지향적, 신뢰성, 속도 느림(3-way-handshake
,4-way-handshake
)UDP
: 비연결 지향적, 비신뢰성, 속도 빠름
TCP
와UDP
의 속도 느림/빠름은 상대적인 의미입니다.
2️⃣ ( 2계층 ) 인터넷 계층 ( Internet Layer )
OSI
의 네트워크 계층(L3
)
통신 노드 간의 데이터(Packet
) 가장 효율적이고 빠르게 전송하는 역할
IP
주소를 이용한 라우팅을 통해 라우터들을 이동하면서 목적지 Host
로 이동하는 역할
패킷을 Packet
이라는 단위로 부름
IP
주소:Host
를 식별할 수 있는 식별자
사용 프로토콜 ( Protocol )
IP
: 송ꞏ수신Host
가 네트워크에서 데이터(Packet
)를 주고받는 데 사용ARP
:IP
주소를 이용해서MAC
주소를 얻을 때 사용
1️⃣ ( 1계층 ) 네트워크 엑세스 계층 ( Network Access Layer )
OSI
의 물리 계층(L1) + 데이터 링크 계층(L2)
목적지 호스트로 갈 수 있도록 MAC
주소를 이용해서 이동
패킷을 전기적 신호로 변환하여 전달
패킷을 Frame
이라는 단위로 부름
MAC
주소: 특정 호스트의NIC
의 주소(HardWare
주소)
사용 프로토콜 ( Protocol )
Ethernet
:MAC
주소를 이용하여 데이터(Frame
)를 송ꞏ수신할 때 사용
1. 물리 계층 ( Physical Layer )
패킷을 encoding
/decoding
해서 전기적 신호로 변환하여 전달하는 역할
2. 데이터 링크 계층 ( Data Link Layer )
같은 네트워크에 있는 여러 장치가 주고 받는 데이터를 구분하는 역할
🤔 TCP/IP 데이터 송ꞏ수신 흐름
각 계층을 내려오면서 해당 프로토콜에 맞는 헤더 + 패킷 형태로 새로운 패킷이 만들어집니다.
- 예시
- 4계층 =>
data
- 3계층 => [
TCP header
+ (data
)] =>Segment
(TCP header
에는Port
번호가 포함 ) - 2계층 => [
IP header
+ (TCP header
+ (data
) )] =>Packet
(IP header
에는IP
주소가 포함 ) - 1계층 => [
Ethernet header
+ (IP header
+ (TCP header
+ (data
) ) )] =>Frame
(Ethernet header
에는MAC
주소가 포함 )
- 4계층 =>