[Network] 네트워크 계층
3줄 요약
네트워크 계층은 IP 주소와 라우팅을 기반으로 네트워크 간 통신을 가능하게 함
IPv4와 IPv6는 주소 지정과 단편화 기능을 제공하며, ARP는 IP를 MAC으로 변환
IP 단편화는 성능 저하를 유발할 수 있어, Path MTU를 고려해 회피하는 것이 중요
💻 컴퓨터 네트워크 시리즈
이 시리즈는 『혼자 공부하는 네트워크』 (강민철 저)
+ 인프런 강의를 기반으로 개인적으로 복습 및 정리한 기록입니다.
📌 네트워크 계층이란?
- LAN을 넘어 다른 네트워크와 통신을 위한 계층
- IP 주소로 송수신지를 식별
- 라우팅(Routing)을 통해 목적지까지의 최적 경로 설정
🔍 데이터 링크 계층의 한계
- MAC 주소만으로는 다른 네트워크에 위치한 호스트를 특정하기 어려움
- IP 주소와 MAC 주소를 함께 사용하여 수신지 식별
🌐 IP(Internet Protocol)
- 데이터 링크 계층의 한계를 극복한 논리 주소 기반 프로토콜
- 주로 IPv4 사용 중, IPv6로 점차 전환 중
📦 주소 지정
- IPv4: 4바이트(32비트) → 10진수 점 표기 (ex: 192.168.0.1)
- IPv6: 16바이트(128비트) → 8개의 16진수 그룹
🧩 IP 단편화 (IP Fragmentation)
- 패킷 크기가 MTU(Maximum Transmission Unit)보다 크면 나누어서 전송
- 각 조각은 식별자 / 오프셋 / 플래그를 통해 관리됨
주요 필드
필드명 | 설명 |
---|---|
식별자(identifier) | 동일한 메시지에서 나온 단편화된 패킷 식별 |
플래그(flag) | DF(Don’t Fragment), MF(More Fragment) |
단편화 오프셋(fragment offset) | 조각의 순서 정보 |
TTL(Time To Live) | 패킷의 생존 시간 (홉마다 감소) |
프로토콜 | 상위 계층 프로토콜 식별 (TCP: 6, UDP: 17 등) |
송/수신지 IP 주소 | 송수신지의 논리 주소 |
📝 추가 설명
식별자(identifier)
→ 동일한 메시지를 여러 패킷으로 나눴을 때, 각각의 조각이 같은 메시지의 일부임을 식별하기 위해 부여됨- 플래그(flag)
- 총 3비트로 구성
- DF (Don’t Fragment): 1이면 단편화 금지
- MF (More Fragments): 1이면 뒤에 단편화된 조각이 더 있음
- 총 3비트로 구성
단편화 오프셋(fragment offset) → 원래 메시지에서 해당 조각이 몇 번째 위치인지 나타냄 (8바이트 단위) → 조각들이 순서대로 도착하지 않더라도 수신 측에서 재조립할 수 있도록 도와줌
TTL (Time To Live) → 패킷이 네트워크를 돌아다니는 최대 허용 홉 수
→ 하나의 라우터를 통과할 때마다 1씩 감소하며, 0이 되면 폐기되어 루프 방지프로토콜
→ IP 패킷의 상위 계층 프로토콜 식별자
→ TCP(6), UDP(17), ICMP(1) 등 번호로 구분됨- 송/수신지 IP 주소
→ 패킷의 논리적 출발지와 목적지 식별
→ 이후 ARP 등을 통해 MAC 주소로 해석되어 최종 전송됨
🧱 IPv6 개요
- 주소 공간 확장 (128비트)
- 헤더 구조 간소화 및 보안 강화
- 주요 필드:
- 다음 헤더 (Next Header)
- 홉 제한 (Hop Limit)
- 송/수신지 IP 주소
🔄 ARP (Address Resolution Protocol)
IP 주소 → MAC 주소 매핑을 위한 프로토콜
동일 네트워크 내 통신 시 필요
ARP 동작 방식
- ARP 요청 (브로드캐스트)
- 송신자는 목적 호스트의 MAC을 모르므로, IP 기반으로 ARP Request 전송
- ARP 응답 (유니캐스트)
- 대상 호스트는 자신의 MAC 주소를 송신자에게 회신
- ARP 테이블 갱신
- IP–MAC 매핑을 테이블에 저장
📋 ARP 테이블 확인
1
arp -a
예시 출력:
1
2
? (172.30.1.27) at 96:e:1f:6f:6c:d5 on en0 ifscope [ethernet]
? (172.30.1.34) at ce:be:c1:13:b5:5 on en0 ifscope [ethernet]
📦 ARP 패킷 구조
필드 | 설명 |
---|---|
Opcode | 1: 요청, 2: 응답 |
송수신 MAC 주소 | 하드웨어 주소 |
송수신 IP 주소 | 프로토콜 주소 |
🚫 IP 단편화 회피 전략
- 단편화는 오버헤드와 재조립 부하 유발 → 가능하면 회피
📌 경로 MTU(Path MTU)
- 전체 경로상 최소 MTU
- 송신자는 Path MTU만큼만 데이터 전송하여 단편화 회피
📌 Path MTU Discovery
- ICMP를 이용해 경로 MTU 탐색
- DF(Don’t Fragment) 비트를 1로 설정한 채 전송
- 너무 큰 패킷이 거부되면 MTU를 조정해 재전송
✅ 마무리 정리
네트워크 계층은 IP 주소 기반의 통신 경로 설정을 담당
IPv4 단편화, TTL, ARP 등 핵심 프로토콜 구성 요소 존재
단편화는 성능에 부정적 영향 → Path MTU를 활용한 회피가 바람직
📚 참고 자료
- 『혼자 공부하는 네트워크』 - 강민철 저
- 인프런 강의 - 혼자 공부하는 네트워크 기반 강의
읽어주셔서 감사합니다 🙌
내용이 도움이 되었거나, 틀린 부분이 있다면 댓글이나 GitHub Issue로 알려주세요 😊