1 LAN을 넘어서는 네트워크 계층
데이터 링크 계층의 한계는 무엇인가?
물리 계층과 데이터 링크 계층만으로는 LAN을 넘어서 통신하기 어렵다.
- 물리 계층과 데이터 링크 계층만으로는 다른 네트워크까지의 도달 경로를 파악하기 어렵다.
- MAC 주소만으로는 모든 네트워크에 속한 호스트의 위치를 특정하기 어렵다.
네트워크 계층이 다른 네트워크와의 통신을 가능하게 한다. 이는 IP 주소를 이용해 수신지 주소를 설정하거나, 해당 수신지까지의 최적의 경로를 결정하는 라우팅이 네트워크 계층에서 이루어지기 때문이다.
인터넷 프로토콜(IP)
네트워크 계층에서 핵심 되는 프로토콜로 IP 주소 지정과 IP 단편화를 수행한다.
- IP 주소 지정 : IP 주소를 바탕으로 송수신지 대상을 지정하는 것
- IP 단편화 : 전송하고자 하는 패킷의 크기가 MTU라는 최대 전송 단위보다 클 경우, 이를 MTU 크기 이하의 복수의 패킷으로 나누는 것
- MTU(Maximum Transmission Unit) : 한 번에 전송 가능한 IP 패킷의 최대 크기
IPv4
- 식별자, 플래그, 단편화 오프셋으로 단편화와 재조합을 할 수 있고, 프로토콜 필드로 상위 계층 프로토콜을 알 수 있으며, TTL로 패킷의 남은 수명을 파악할 수 있다.
- 송신지 IP 주소, 수신지 IP 주소를 통해 IP주소를 지정할 수 있다.
IPv6는 무엇인가요?
IPv4는 4바이트로 표기한 주소라 43억개를 지정할 수 있기 때문에 쉽게 고갈될 수 있다.
그래서 이러한 문제점을 해결하기 위해 나온 것이 16바이트 주소로 표기한 IPv6이다.
ARP(Address Resolution Protocol)
IP 주소를 통해 호스트의 MAC 주소를 알아내는 프로토콜
- 수신하는 호스트의 MAC 주소를 모르는 경우가 있을 때 해당 프로토콜을 사용한다.
IP 단편화는 많이 수행되는 것일 좋을까?
IP 단편화는 피하는 것이 좋다.
- 패킷이 쪼개지면 각 패킷별로 헤더가 추가로 붙게되며
- 트래픽 증가로 이어져 대역폭이 낭비되며
- 패킷들을 다시 합치는 과정이 필요하기 때문에 부하로 성능저하를 야기할수도 있기 때문.
따라서 IP 단편화를 피하려면 IP 단편화 없이 주고 받을 수 있는 최대 크기만큼만 전송해야하며 이를 '경로 MTU'라고 한다.
2 IP 주소
네트워크 주소와 호스트 주소
네트워크 주소와 호스트 주소의 크기는 각각 어느 정도가 적당할까?
클래스풀 주소 체계
- 클래스 : 네트워크 크기에 따라 IP 주소를 분류하는 기준
- 클래스풀 주소 체계 : 클래스를 기반으로 IP 주소를 관리하는 주소 체계
- 클래스풀 주소 체계의 한계 : 클래스별 네트워크 크기가 고정되어 있기 때문에 다수의 IP 주소가 낭비될 가능성이 크다.
클래스리스 주소 체계
클래스가 아니라 서브넷 마스크를 이용해 네트워크 주소와 호스트 주소를 구분하는 IP 주소 체계
공인 IP 주소와 사설 IP 주소
공인 IP 주소
- 전 세계에서 고유한 IP 주소
- ISP나 공인 IP 주소 할당 기관을 통해 할당받을 수 있다.
사설 IP 주소와 NAT
- 사설 네트워크에서 사용하기 위한 IP 주소
- 사설 IP 주소의 할당 주체는 일반적으로 라우터
- 할당받은 사설 IP 주소는 해당 호스트가 속한 사설 네트워크상에서만 유효한 주소이므로, 다르 네트워크상의 사설 IP 주소와 중복될 수 있다.
사설 IP 주소를 사용하는 호스트가 외부 네트워크와 통신하려면 어떻게 해야할까?
NAT(Network Address Translation)
- IP 주소를 변환하는 기술
- 네트워크 내부에서 사용되는 사설 IP 주소와 네트워크 외부에서 사용되는 공인 IP 주소를 변환하는 데 사용.
정적 IP 주소와 동적 IP 주소
호스트에 IP 주소를 할당하는 방법
정적 할당
- 호스트에 직접 수작업으로 IP 주소를 부여하는 방식
IP 주소를 정적으로 할당하다보면 호스트의 수가 많을 때 관리하기 어려워질 수 있다.
동적 할당과 DHCP
- IP 주소를 직접 일일이 입력하지 않아도 호스트에 IP 주소가 동적으로 할당되는 방식
- DHCP(Dynamic Host Configuration Protocol) : IP 동적 할당에 사용되는 대표적인 프로토콜
- IP 주소를 할당받고자 하는 호스트와 해당 호스트에게 IP 주소를 제공하는 DHCP 서버간에 메시지를 주고받음으로써 이루어진다.
예약 주소: 0.0.0.0 VS 127.0.0.1
특수한 목적을 위해 예약된 IP 주소도 있다.
루프백 주소
- 자기 자신을 가리키는 특별한 주소
- 127.0.0.1
- localhost
모든 임의의 IP 주소
- 0.0.0.0/0
3 라우팅
패킷이 이동할 최적의 경로를 설정한 뒤 해당 경로로 패킷을 이동시키는 것
라우터
- 가정환경에서는 공유기가 라우터의 역할을 대신함. 공유기는 라우터 기능뿐만 아니라 NAT 기능, DHCP 서버 기능, 보안을 위한 방화벽 기능 등 다양한 장치의 기능이 함축된 네트워크 장비.
라우팅 테이블
특정 수신지까지 도달하기 위한 정보를 명시한 일종의 표와 같은 정보
라우팅을 해주는 네트워크 장비인 라우터는 라우팅 테이블을 통해 패킷을 수신지까지 전달할 수 있다.
라우팅 테이블 안에는 네트워크상의 특정 수신지까지 도달하기 위한 정보들이 담겨 있다.
정적 라우팅과 동적 라우팅
정적 라우팅
사용자가 수동으로 직접 채워 넣은 라우팅 테이블의 항목을 토대로 라우팅되는 방식
동적 라우팅
특정 수신지까지 도달하기 위한 최적의 경로를 찾아 라우팅 에티블에 자동으로 추가하는 방식
이때 사용되는 프로토콜이 라우팅 프로토콜.
AS(Autonomous System)
동일한 라우팅 정책으로 운용되는 라우터들의 집단 넹트워크
한 회사나 단체에서 관리하는 라우터 집단
라우팅 프로토콜
라우터끼리 자신들의 정보를 교환하며 패킷이 이동할 최적의 경로를 찾기 위한 프로토콜
IGP: IRP와 OSPF
AS 내부에서 수행되는 프로토콜
- RIP : 거리 벡터 기반의 라우팅 프로토콜.
- 거리를 기반, 즉 홉의 수를 기반으로 정함.
- OSPF : 링크 상태 라우팅 프로토콜
EGP: BGP
AS 외부에서 수행되는 프로토콜
- BGP : AS 간 라우팅이 가능한 대표적인 EGP.
'CS > Network' 카테고리의 다른 글
[네트워크] 02 물리 계층과 데이터 링크 계층 / 혼자 공부하는 네트워크 서적 스터디 (0) | 2025.02.09 |
---|---|
[네트워크] 01 컴퓨터 네트워크 | 혼자 공부하는 네트워크 스터디 (1) | 2025.02.09 |
서버 기본 개념에 대한 간단한 이해 (0) | 2021.11.07 |