안녕, 리뷰어. 나는 뫙대🛠️
CS에 대한 개념이 0에 수렴해 공부를 시작합니다. 네트워크 공부는 '혼자 공부하는 네트워크'를 기반으로 합니다. 이번 글에서는 네트워크 계층에 대해 다룹니다. 글을 읽기 전에 네트워크 계층이 다른 네트워크와의 통신을 가능하게 한다는 사실을 기억하세요.
- 저자
- 강민철
- 출판
- 한빛미디어
- 출판일
- 2024.04.12
인터넷 프로토콜(Internet Protocol, IP)
네트워크 계층의 가장 핵심적인 프로토콜. 대표적으로 IP 주소 지정과 IP 단편화를 수행. 참조. RFC 문서
- IP 주소 지정
IP 주소를 바탕으로 송수신 대상을 지정 - IP 단편화
최대 전송 단위 MTU보다 큰 패킷을 복수의 패킷으로 나눔. 불필요한 트랙픽 증가와 대역폭 낭비 등으로 가급적 피하는 게 좋음IP 단편화를 피하는 방법: 경로 MTU 발견
IP 단편화 없이 주고 받을 수 있는 최대 크기, 경로 MTU만큼 데이터 전송
IP에는 두 가지 버전 IPv4와 IPv6 존재. 일반적으로 IP를 이야기할 때는 주로 IPv4를 의미
[혼자 공부하는 네트워크] 03 네트워크 계층 - IP 주소
안녕, 리뷰어. 나는 뫙대🛠️ CS에 대한 개념이 0에 수렴해 공부를 시작합니다. 네트워크 공부는 '혼자 공부하는 네트워크'를 기반으로 합니다. 이번 글에서는 IP 주소에 대해 다룹니다. 글을 읽
noeyahmig.tistory.com
IPv4
4바이트(32비트)로 주소 표현. 점(.)으로 구분된 4개 그룹의 10진수로 표기
e.g. 192.168.1.1

→ 헤더 길이 가변적
IP 단편화
- 식별자identifier: 패킷에 할당된 번호
- 플래그flag: 총 세 개의 비트로 구성된 필드
- 미사용: 항상 0
- DF(Don't Fragment): 0으로 설정된 경우, IP 단편화 가능. 1으로 설정된 경우, 불가능(단, 패킷의 크기가 너무 크다면 폐기)
- MF(More Fragment): 0으로 설정된 경우, 마지막 패킷 의미. 1로 설정된 경우, 쪼개진 패킷이 더 있음
- 단편화 오프셋fragment offset: 패킷이 단편화되기 전에 패킷의 초기 데이터에서 몇 번째로 떨어진 패킷인지 나타냄
e.g. 단편화 오프셋 1480: 첫 데이터로 부터 1480만큼 떨어진 패킷
패킷 수명
- TTL(Time To Live): 패킷의 수명. 하나의 라우터를 거칠 때마다 1씩 감소. 0이 된 패킷은 폐기 → 무의미한 패킷이 네트워크상에 지속적으로 남아있는 것 방지
홉hop
패킷이 호스트 또는 라우터에 한 번 전달되는 것. TTL 값은 홉마다 1씩 감소
상위 계층 프로토콜
- 프로토콜: 상위 계층의 프로토콜
e.g. TCP 6번, UDP 17번
IP 주소 지정
- 송신지/수신지 IP 주소
IPv6
16바이트(128비트)로 주소 표현. 콜론(:)으로 구분된 8개 그룹의 16진수로 표기. 기본 헤더는 IPv4보다 간소화
e.g. 2001:0230:abcd:ffff:0000:0000:ffff:1111

→ 헤더 길이 고정적(40바이트)
상위 계층 프로토콜
- 다음 헤더: 상위 계층의 프로토콜 또는 확장 헤더
- 상위 계층 프로토콜 헤더 e.g. TCP 헤더
- 확장 헤더: 홉 간 옵션Hop-by-Hop Options, 수신지 옵션Destonation Options, 라우팅Routing, 단편화Fragment, ESP(Encapsulating Security Payload), AH(Authentication Header) 등
- 단편화 확장 헤더 → IP 단편화
- 다음 헤더
- 예약됨reserved/예약res: 0으로 설정돼 사용하지 않음
- 단편화 오프셋: IPv4의 단편화 오프셋과 동일
- M 플래그M flag: IPv4의 MF와 동일
- 식별자: IPv4의 식별자와 동일
- 단편화 확장 헤더 → IP 단편화
패킷 수명
- 홉 제한: 패킷의 수명. TTL 필드와 유사
IP 주소 지정
- 송신지/수신지 IP 주소
ARP
동일 네트워크 내에 있는 호스트의 IP 주소를 통해 MAC 주소를 알아내는 프로토콜
→ IP 주소는 알지만, MAC 주소를 모를 때 사용
- ARP 요청: 브로드캐스트
- ARP 응답: 유니캐스트
- ARP 테이블 갱신
라우터
네트워크 계층의 장비. L3 스위치도 있으나 기능상 상당 부분 유사. 핵심 기능은 라우팅으로, 패킷이 이동할 최적의 경로를 결정.
라우팅 테이블
특정 수신지까지 도달하기 위한 정보를 명시한 일종의 표. 정적 라우팅 또는 동적 라우팅 방식으로 생성
- 수신지 IP 주소와 서브넷 마스크: 최종적으로 패킷을 전달할 대상
- 디폴트 라우트 0.0.0.0/0
- 다음 홉next hop: 다음으로 거쳐야 할 호스트의 IP 주소나 인터페이스 i.e. 게이트웨이
- 네트워크 인터페이스: 패킷을 내보낼 통로
- 메트릭metric: 이동 비용
라우팅 프로토콜
라우터 간의 정보 교환으로 패킷이 이동할 최적의 경로를 찾기 위한 프로토콜. 동적 라우팅에 사용
배경지식
AS(Autonomous System): 동일한 라우팅 정책으로 운영되는 라우터들의 집단 네트워크
ASBR(Autonomous System Boundary Router): AS 경계에서 AS 내외로 통신을 주고 받을 때 사용
- IGP(Interior Gateway Protocol): AS 내부 수행
- RIP(Routing Information Protocol): 거리 벡터 활용 → 홉의 수 기반
- OSPF(Open Shortest Path First): 링크 상태 활용 → 대역폭 기반
- EIGRP(Enhanced Interior Gateway Routing Protocol): 거리 벡터+링크 상태
- EGP(Exterior Gateway Protocol): AS 외부 수행
- BGP(Border Gateway Protocol): AS 간의 통신은 eBGP, AS 내 통신은 iBGP. BGP 라우터는 피어Peer
→ 경로 벡터 활용. 경로 결정 과정에서 수신지 주소와 더불어 속성과 정책 고려
- AS-PATH 속성: 통과하는 AS들의 목록 → AS의 수 기반
- NEXT-HOP 속성: 다음 홉
- LOCAL-PREF 속성: AS 내부(지역)의 경로 선호에 대한 척도
- BGP(Border Gateway Protocol): AS 간의 통신은 eBGP, AS 내 통신은 iBGP. BGP 라우터는 피어Peer
네트워크 계층이 IP 주소와 라우터를 이용해 다른 네트워크와의 통신한다.
🤔 라우팅 프로토콜에 대한 추가적인 공부가 필요하다. 참고 사이트
'CS > 네트워크' 카테고리의 다른 글
| [혼자 공부하는 네트워크] 04 전송 계층 - UDP (0) | 2025.05.13 |
|---|---|
| [혼자 공부하는 네트워크] 04 전송 계층 - TCP (1) | 2025.05.13 |
| [혼자 공부하는 네트워크] 03 네트워크 계층 - IP 주소 (2) | 2025.05.10 |
| [혼자 공부하는 네트워크] 02 물리 계층과 데이터 링크 계층 (2) | 2025.04.28 |
| [혼자 공부하는 네트워크] 01 컴퓨터 네트워크 시작하기 (2) | 2025.04.28 |