본문 바로가기
CS/Network

[네트워크] Network Layer 개요

by haerr 2025. 6. 5.

네트워크 계층의 역할은?

우리가 인터넷으로 메시지를 보낼 때, 그 메시지는 여러 계층을 거쳐 전달된다. 그중 네트워크 계층은 “데이터를 어디로 보낼까?“를 결정해주는 길잡이 역할이다.

 

sender 측:

  • 우리가 보내는 메시지는 먼저 전송 계층(예: TCP)의 ‘세그먼트’ 형태로 있다.
  • 이걸 네트워크 계층이 받아서 IP 데이터그램이라는 형태로 감싸준다. (= 캡슐화)

receive 측:

  • 도착한 IP 데이터그램을 받아서 껍질(헤더)을 벗겨내고, 전송 계층으로 전달해준다.
  • 이렇게 해야 웹페이지나 이메일 같은 데이터를 정확하게 처리할 수 있다.

처리:

  • 호스트(PC, 스마트폰)라우터 모두 네트워크 계층 기능을 가지고 있다.
  • 특히 라우터는 지나가는 모든 IP 데이터그램을 검사해서 “어디로 보내야 하는지” 판단한다.

 

네트워크 계층의 두 가지 주요 기능

 

1. 포워딩 (Forwarding)

  • 이미 라우터에 도착한 패킷을 어디로 보낼지 결정하는 과정이다.
  • 예시: 교차로에서 좌회전/우회전 같은 결정
  • “이 패킷은 다음에 저쪽 포트로 보내야 함!”

 

2. 라우팅 (Routing)

  • 출발지에서 목적지까지 어떤 길로 갈지 전체 경로를 미리 정하는 것이다.
  • 예시: 네비게이션이 전체 길을 계획해주는 것
  • 이건 보통 라우팅 알고리즘이 결정하고, 각 라우터는 이 결과를 포워딩 테이블이라는 걸로 저장한다.
역할 설명 예시
포워딩 라우터에 온 패킷을 어디로 보낼지 결정 교차로에서 어디로 갈지
라우팅 출발지 → 목적지까지 전체 경로를 설정 전체 여행 경로 계획

 

이 둘이 협력해서 패킷이 잘 도착하도록 도와준다.

 

 

연결 설정 (Connection Setup)

일부 네트워크에서는 데이터를 보내기 전에 연결을 먼저 설정해야 한다.

 

 

예: 가상 회선 네트워크

  • 전화처럼 “통화 연결”이 먼저 되어야 말할 수 있는 구조.
  • 이걸 Virtual Circuit (가상 회선) 이라고 한다.
  • 이때는 라우터도 연결 설정에 참여해서 경로를 잡아준다.

 

구분!

  • 네트워크 계층: 호스트(컴퓨터) 간의 연결
  • 전송 계층: 그 안의 프로세스(프로그램) 간의 연결 (예: 웹 브라우저 ↔ 웹 서버)

 

네트워크 서비스 모델이란?

“인터넷이 패킷을 전송할 때 얼마나 잘 챙겨주냐”를 정의하는 기준이다.

 

예를 들어 어떤 네트워크는 절대 잃어버리지 않고 보내줄 수 있고, 순서를 지켜서 보내주기도 하고, 지연시간을 줄여주는 서비스도 제공한다.

하지만 인터넷은 기본적으로 이런 걸 보장하지 않는다. 그냥 Best Effort (최대한 잘^^;;) 수준이다.

 

예시 서비스들

데이터그램 단위 서비스 흐름 단위 서비스
전송 보장 (손실 없음) 순서 보장 전달
지연 시간 보장 (ex. 40ms 이내) 최소 대역폭 보장
- 패킷 간 간격 일정 유지

 

 

네트워크 종류별 서비스 모델 비교

네트워크 대역폭 보장 손실 없음 순서 보장 시간 보장 혼잡 피드백
인터넷 ❌ 없음 ❌ 없음 ❌ 없음 ❌ 없음 ❌ 없음 (손실로 추측)
ATM CBR ✅ 항상
ATM VBR ✅ (유동적)
ATM ABR ✅ (최소 보장) ❌ 없음
ATM UBR ❌ 없음 ❌ 없음 ❌ 없음 ❌ 없음 ❌ 없음