OSI·TCP/IP·네트워크 장비·캡슐화
OSI 7계층과 TCP/IP 모델의 책임을 비교하고 데이터를 캡슐화하는 과정을 이해한다. MAC·IP·포트의 역할, 스위치와 라우터의 전달 기준, 같은 네트워크와 다른 네트워크로 보낼 때의 주소 변화를 구분한다.
OSI 7계층과 TCP/IP 모델의 책임을 비교하고 데이터를 캡슐화하는 과정을 이해한다. MAC·IP·포트의 역할, 스위치와 라우터의 전달 기준, 같은 네트워크와 다른 네트워크로 보낼 때의 주소 변화를 구분한다.
그림으로 확인하기

계층화가 필요한 이유
통신 문제를 책임별로 나누기
서로 다른 시스템이 통신하려면 다음 문제를 함께 해결해야 한다.
- 전기·광·무선 신호를 어떤 방식으로 보낼지 정한다.
- 연속된 비트에서 프레임의 시작과 끝을 구분한다.
- 같은 링크 안에서 어느 인터페이스로 전달할지 정한다.
- 여러 네트워크 중 목적지로 가는 경로를 선택한다.
- 한 호스트 안의 어느 응용 종단에 데이터를 전달할지 정한다.
- 데이터 손실·중복·순서·흐름을 어떻게 처리할지 정한다.
- 데이터 표현과 응용 메시지의 의미를 합의한다.
이 모든 기능을 하나의 거대한 프로토콜로 만들면 매체나 응용이 바뀔 때 전체 규칙을 수정해야 한다. 계층화는 각 책임을 분리하고 계층 사이의 서비스 경계를 정해 변경 영향을 줄인다.
계층·서비스·인터페이스·프로토콜
호스트 A 호스트 B
응용 계층 ───── 같은 계층의 프로토콜 규칙 ───── 응용 계층
↓ 위 계층이 아래 계층의 서비스 사용 ↑
전송 계층 ───── 같은 계층의 프로토콜 규칙 ───── 전송 계층
↓ ↑
네트워크 계층 ─── 같은 계층의 프로토콜 규칙 ─── 네트워크 계층
↓ ↑
링크·물리 계층 ===== 실제 신호와 비트 전달 ===== 링크·물리 계층
- 계층(layer)은 특정 수준의 통신 책임을 묶은 논리적 범위다.
- 서비스(service)는 아래 계층이 바로 위 계층에 제공하는 기능이다.
- 인터페이스(interface)는 인접 계층이 로컬 시스템 안에서 서비스를 요청·제공하는 경계다.
- 프로토콜(protocol)은 서로 다른 시스템의 같은 계층 엔터티가 메시지를 해석하는 규칙이다.
- 피어(peer)는 논리적으로 같은 계층에서 통신하는 상대 엔터티다.
같은 계층끼리 논리적으로 대화하지만 실제 데이터는 송신 측에서 아래 계층으로 내려가 물리 매체를 통과한 뒤 수신 측에서 위로 올라간다.
계층화의 장점과 한계
| 관점 | 장점 | 주의점 |
|---|---|---|
| 모듈성 | 한 계층을 바꾸어도 서비스 경계가 유지되면 다른 계층 변경을 줄일 수 있다. | 실제 구현에서는 성능과 기능 때문에 계층을 가로질러 정보를 사용할 수 있다. |
| 표준화 | 서로 다른 제조사·운영체제가 같은 프로토콜을 구현할 수 있다. | 모델의 이름이 같아도 세부 프로토콜과 기능은 다를 수 있다. |
| 문제 분석 | 장애 위치를 신호·프레임·패킷·전송·응용 수준으로 좁힐 수 있다. | 한 증상이 여러 계층 원인에서 발생할 수 있다. |
| 재사용 | 하나의 전송·네트워크 서비스를 여러 응용이 공유할 수 있다. | 중복 헤더와 계층별 처리로 오버헤드가 생긴다. |
| 상호운용성 | 공개된 서비스와 프로토콜 규칙으로 이기종 시스템을 연결한다. | 참조 모델만으로 실제 제품의 모든 동작이 결정되지는 않는다. |
OSI 7계층은 기능을 설명하는 참조 모델이다. 실제 프로그램이 반드시 계층마다 하나씩 존재하거나, 각 계층이 항상 별도 헤더를 붙인다는 뜻은 아니다.
OSI 7계층 전체 구조
계층 순서
송신 측에서는 7계층에서 1계층 방향으로 내려가고, 수신 측에서는 1계층에서 7계층 방향으로 올라간다.
7 응용(Application)
6 표현(Presentation)
5 세션(Session)
4 전송(Transport)
3 네트워크(Network)
2 데이터 링크(Data Link)
1 물리(Physical)
계층별 핵심 책임
| 계층 | 핵심 책임 | 전형적 PDU | 대표 식별·정보 | 대표 예 |
|---|---|---|---|---|
| 7 응용 | 응용 프로세스가 이용할 네트워크 서비스와 메시지 의미 | 데이터·메시지 | URL, 도메인명, 응용 명령 등 | HTTP, DNS, SMTP, DHCP, SNMP |
| 6 표현 | 데이터 구문·인코딩·직렬화·압축·암호 표현 | 데이터 | 문자 집합·데이터 형식 | UTF 계열, JSON 표현, 압축·암호화 기능 |
| 5 세션 | 대화 연결·동기화·체크포인트·재동기화 | 데이터 | 세션 식별·동기화 지점 | 대화 제어 기능, 원격 호출의 세션 관리 일부 |
| 4 전송 | 종단 프로세스 간 전달, 다중화, 분할·재조립, 신뢰성·흐름 제어 | TCP 세그먼트·UDP 데이터그램 | 포트, 순서 번호, 확인 번호 | TCP, UDP |
| 3 네트워크 | 논리 주소, 경로 선택, 네트워크 간 패킷 전달 | 패킷·IP 데이터그램 | IP 주소, TTL·Hop Limit, 상위 프로토콜 번호 | IPv4, IPv6, ICMP |
| 2 데이터 링크 | 한 링크의 프레이밍, MAC 전달, 매체 접근, 오류 검출 | 프레임 | MAC 주소, VLAN ID, EtherType, FCS | Ethernet, Wi-Fi MAC, PPP |
| 1 물리 | 비트·심벌을 신호로 전송, 매체·커넥터·전송률 | 비트·심벌 | 전압·주파수·광 신호·핀 | 케이블, 광섬유, 무선 PHY, 리피터·허브 |
PDU 명칭은 시험에서 널리 쓰는 전형적 구분이다. 실제 기술 문서에서 packet을 여러 계층의 데이터 단위에 넓게 쓰기도 하므로 용어 하나만 보지 말고 헤더와 처리 계층을 확인한다.
응용·표현·세션 계층
응용 계층
응용 계층은 최상위 계층으로서 응용 프로세스가 네트워크를 통해 상대 응용과 정보를 교환하도록 서비스를 제공한다. 웹 요청, 이름 조회, 전자우편 전송, 원격 관리처럼 응용별 메시지 형식과 의미가 이 수준에서 정의된다.
응용 계층은 사용자 프로그램 전체와 같지 않다. 문서 편집기의 화면 그리기, 데이터베이스의 내부 정렬 알고리즘처럼 네트워크 통신과 무관한 기능까지 응용 계층으로 분류하는 것은 부정확하다.
표현 계층
표현 계층은 서로 다른 시스템이 데이터의 의미를 유지하면서 표현 형식을 교환하도록 돕는 계층이다. 대표 책임은 다음과 같다.
- 문자 인코딩과 숫자·구조체의 표현 변환
- 직렬화와 역직렬화
- 압축과 해제
- 암호화된 표현과 복호화된 표현 사이의 변환
- 송수신자가 사용할 전송 구문의 협상
표현 계층의 표현은 화면 UI의 모양이 아니다. 또한 실제 TCP/IP 프로그램에서는 JSON 라이브러리, TLS 라이브러리, 압축 라이브러리처럼 응용 계층 코드와 라이브러리에 이 기능이 포함되는 경우가 많다.
세션 계층
세션 계층은 통신 응용 사이의 대화 관계를 설정·유지·종료하고, 긴 대화에서 동기화 지점이나 재동기화를 관리하는 책임을 설명한다.
- 세션 연결 설정과 해제
- 대화 방향과 토큰 관리
- 동기화 지점 설정
- 중단 뒤 정해진 지점부터 재개하기 위한 재동기화
- 활동 단위 관리와 예외 보고
OSI 세션 연결과 TCP 연결은 같은 개념이 아니다. TCP는 전송 계층 연결이고, 로그인 세션·쿠키 세션·데이터베이스 세션은 보통 응용 수준의 상태다. 이름에 session이 들어간다는 이유만으로 모두 OSI 5계층이라고 분류하지 않는다.
TCP/IP에서의 처리
TCP/IP 4계층 모델은 OSI의 응용·표현·세션 책임을 대체로 하나의 응용 계층에 포함한다. 이것은 표현과 세션 기능이 사라진다는 뜻이 아니라, 별도 계층으로 고정하지 않고 응용 프로토콜·라이브러리·미들웨어가 담당한다는 뜻이다.
전송 계층
종단 프로세스 사이의 전달
전송 계층은 서로 다른 호스트의 응용 프로세스 종단 사이에서 데이터를 전달한다. 네트워크 계층이 목적지 호스트·인터페이스까지 패킷을 운반하면, 전송 계층은 포트 등의 식별자를 사용해 어느 응용 종단에 데이터를 넘길지 결정한다.
주요 기능은 다음과 같다.
- 응용 데이터를 전송 단위로 분할하고 수신 측에서 재조립한다.
- 여러 응용의 데이터를 하나의 네트워크 계층 위에서 다중화한다.
- 목적지 포트를 이용해 수신 응용으로 역다중화한다.
- 프로토콜에 따라 연결 설정·해제, 순서 제어, 오류 복구, 흐름 제어를 제공한다.
TCP와 UDP의 경계
- TCP는 연결 지향 바이트 스트림, 순서 보장, 재전송, 흐름 제어, 혼잡 제어를 제공한다.
- UDP는 연결 설정 없이 사용자 데이터그램을 전달하며 전달·순서·중복 제거를 보장하지 않는다.
“전송 계층은 항상 신뢰성을 보장한다”는 설명은 틀리다. 신뢰성은 전송 계층에 속할 수 있는 기능이지만 UDP처럼 이를 제공하지 않는 프로토콜도 있다.
포트와 다중화
TCP·UDP 포트 번호는 16비트이므로 범위는 0~65535다.
| 범위 | IANA 구분 | 기본 의미 |
|---|---|---|
| 0~1023 | 시스템 포트 | 널리 알려진 기반 서비스에 엄격한 절차로 할당되는 범위 |
| 1024~49151 | 사용자 포트 | 등록 가능한 응용 서비스 범위 |
| 49152~65535 | 동적·사설 포트 | 고정 서비스 식별자로 할당하지 않는 동적 사용 범위 |
포트 등록은 관례와 상호운용을 위한 정보다. 443번 포트에서 수신한 데이터가 반드시 HTTPS라는 보장은 없고, 포트 번호 자체가 암호화·인증·안전성을 보장하지도 않는다.
네트워크 계층
논리 주소와 네트워크 간 전달
네트워크 계층은 출발지와 목적지가 서로 다른 링크·네트워크에 있어도 패킷이 목적지 방향으로 이동하도록 논리 주소와 경로 선택 기능을 제공한다.
- 출발지·목적지 IP 주소 표시
- 목적지 네트워크에 따른 다음 홉 선택
- 라우터를 통한 패킷 전달
- 패킷 수명 제한
- 오류·진단 제어 메시지 지원
- 하위 링크 기술 차이를 감춘 공통 패킷 서비스 제공
IP는 대표적인 비연결형·최선형(best-effort) 네트워크 계층 프로토콜이다. IP 자체는 모든 패킷의 전달, 순서, 중복 제거를 보장하지 않는다.
라우팅과 포워딩
- 라우팅(routing)은 목적지까지 갈 수 있는 경로 정보를 학습·계산하고 라우팅 테이블을 구성하는 과정이다.
- 포워딩(forwarding)은 실제로 들어온 패킷의 목적지 주소를 보고 출력 인터페이스와 다음 홉을 선택해 내보내는 과정이다.
라우터는 일반적으로 목적지 IP 주소를 기준으로 경로를 선택한다. 전통적 IPv4 라우터는 패킷을 전달할 때 TTL을 감소시키고, 이에 따라 IPv4 헤더 체크섬을 다시 계산한다. IPv6에서는 Hop Limit을 감소시키며 기본 헤더에 IPv4와 같은 헤더 체크섬은 없다.
네트워크 주소와 링크 주소의 독립성
IP 주소는 하위 링크의 주소 체계와 독립적으로 여러 네트워크를 이어 주는 논리 주소다. 분할·터널링·주소 변환 같은 별도 처리가 없더라도, 하나의 IP 패킷이 Ethernet, Wi-Fi, 점대점 링크 등 서로 다른 링크 기술을 지날 때 각 구간의 링크 헤더는 달라질 수 있다.
IP 패킷 1개
├─ 첫 번째 Ethernet 링크의 프레임에 캡슐화
├─ 라우터에서 첫 프레임 제거
├─ 다음 링크용 새 프레임에 캡슐화
└─ 목적지 링크의 프레임에서 역캡슐화
따라서 프레임은 보통 링크별 단위, IP 패킷은 라우터를 거치는 네트워크 계층 단위다.
데이터 링크 계층
한 링크의 프레임 전달
데이터 링크 계층은 물리 계층이 전달하는 비트열을 프레임 단위로 구분하고, 같은 링크·LAN 영역에서 다음 인터페이스로 전달하는 책임을 맡는다.
주요 기능은 다음과 같다.
- 프레임 경계 구분
- 링크 주소 지정
- 공유 매체 접근 제어
- 오류 검출과 일부 링크 기술의 오류 복구
- 순서·흐름 제어를 제공하는 링크 프로토콜의 지원
- 상위 네트워크 프로토콜 식별
Ethernet에서는 목적지·출발지 MAC 주소, 상위 프로토콜을 나타내는 EtherType, 오류 검출용 FCS 등이 핵심 정보다.
LLC와 MAC 부계층
IEEE 802 계열에서는 데이터 링크 계층을 개념적으로 다음처럼 나눈다.
| 부계층 | 대표 책임 |
|---|---|
| LLC(Logical Link Control) | 상위 네트워크 계층과의 논리적 인터페이스, 상위 프로토콜 식별·다중화 |
| MAC(Media Access Control) | 프레임 구성, MAC 주소, 공유 매체 접근, 링크 전달 |
실제 Ethernet 구현에서는 EtherType 등으로 상위 프로토콜을 식별하며, 교재의 LLC/MAC 구분과 실제 프레임 형식의 세부 구조를 완전히 같은 것으로 단정하지 않는다.
Ethernet 프레임의 핵심 구조
[목적지 MAC][출발지 MAC][EtherType/길이][상위 계층 데이터][FCS]
- 목적지 MAC: 현재 링크에서 프레임을 받을 인터페이스 또는 그룹
- 출발지 MAC: 현재 링크에서 프레임을 보낸 인터페이스
- EtherType: 상위에 담긴 프로토콜 종류를 구분하는 값
- 페이로드: IP 패킷 등 상위 계층 PDU
- FCS: 전송 중 비트 오류를 검출하기 위한 값
FCS는 오류 검출 수단이다. 손상된 프레임을 항상 자동 수정하거나 종단 간 재전송하는 기능과 같지 않다.
MAC 주소의 범위
Ethernet MAC 주소는 일반적으로 48비트이며 한 링크·브리지 영역의 프레임 전달에 사용된다. MAC 주소는 IP 라우팅 테이블이 사용하는 네트워크 프리픽스가 아니며, 인터넷 전체에서 경로를 선택하는 주소도 아니다.
“MAC 주소는 절대 바뀌지 않는 물리적 주소”라고 단정하면 틀릴 수 있다. 운영체제·가상화·관리 설정으로 주소를 변경할 수 있고, 모든 데이터 링크 기술이 Ethernet과 같은 48비트 MAC 형식을 사용하는 것도 아니다.
물리 계층
비트와 신호
물리 계층은 비트 또는 심벌을 실제 매체의 전기·광·무선 신호로 표현하고 전송한다.
- 전압·광 세기·주파수·위상 등의 신호 표현
- 비트율과 심벌율
- 커넥터와 핀 배치
- 케이블·광섬유·무선 주파수 같은 전송 매체
- 전송 방향과 물리적 연결 형태
- 신호 감쇠·왜곡에 대응하는 물리 규칙
물리 계층은 프레임의 목적지 MAC 주소나 IP 주소를 읽어 경로를 선택하지 않는다. 리피터와 전통적 허브는 신호·비트 수준에서 동작하는 대표 장비다.
TCP/IP 모델과 OSI 모델 대응
TCP/IP 4계층
인터넷 호스트 구조를 설명할 때 다음 4계층을 주로 사용한다.
| TCP/IP 계층 | 핵심 책임 | OSI와의 대략적 대응 | 대표 프로토콜·기술 |
|---|---|---|---|
| 응용 | 응용 메시지, 데이터 표현, 대화 상태 | OSI 5~7계층 | HTTP, DNS, SMTP, DHCP, TLS 기능 등 |
| 전송 | 응용 종단 간 전달과 포트 다중화 | OSI 4계층 | TCP, UDP |
| 인터넷 | IP 주소와 네트워크 간 패킷 전달 | OSI 3계층 | IPv4, IPv6, ICMP |
| 링크 | 로컬 링크의 프레임·매체 접근·신호 | OSI 1~2계층 | Ethernet, Wi-Fi, PPP, 물리 매체 |
교육용 5계층 모델
일부 교재는 TCP/IP 링크 계층을 다음처럼 둘로 나눈 5계층 모델을 사용한다.
응용 → 전송 → 네트워크 → 데이터 링크 → 물리
이때 네트워크 계층은 TCP/IP 4계층의 인터넷 계층과 대체로 같은 범위를 가리킨다. 문제에서 계층 수와 명칭을 먼저 확인하지 않으면 4계층 링크와 5계층 데이터 링크를 서로 다른 기술로 오해할 수 있다.
완전한 일대일 매핑이 아닌 이유
- OSI는 서비스·인터페이스·프로토콜을 설명하는 참조 모델이다.
- TCP/IP는 인터넷에서 실제 사용되는 프로토콜 묶음을 중심으로 발전했다.
- TCP/IP 응용 계층은 표현·세션 기능을 응용·라이브러리 안에 포함한다.
- 하나의 기능이 여러 계층 정보를 사용할 수 있다.
- 터널링·보안·가상화는 다른 프로토콜 안에 프로토콜을 다시 캡슐화할 수 있다.
- 장비 이름만으로 실제 검사 계층을 한 칸에 고정할 수 없는 경우가 있다.
TLS는 이름에 Transport Layer가 들어가지만 TCP·UDP와 같은 TCP/IP 전송 계층 프로토콜이 아니다. 보통 TCP 위에서 응용 데이터를 보호하며, OSI 관점에서는 표현 계층과 비슷한 책임을 수행한다고 설명할 수 있다.
PDU와 캡슐화
전형적인 캡슐화 흐름
응용 메시지
↓ 전송 계층 헤더 추가
TCP 세그먼트 또는 UDP 데이터그램
↓ IP 헤더 추가
IP 패킷·데이터그램
↓ 링크 헤더와 트레일러 추가
Ethernet 프레임
↓ 신호로 변환
비트·심벌 전송
수신 측에서는 다음 순서로 처리한다.
비트 수신
→ 프레임 경계·FCS·목적지 링크 주소 검사
→ EtherType에 따라 IP 등 상위 프로토콜로 전달
→ IP 목적지·상위 프로토콜 번호 검사
→ TCP·UDP 목적지 포트로 소켓에 전달
→ 응용 메시지 해석
캡슐화 오버헤드 계산
다음 조건을 가정한다.
- 응용 데이터: 1,000바이트
- TCP 기본 헤더: 20바이트, 옵션 없음
- IPv4 기본 헤더: 20바이트, 옵션 없음
- 태그 없는 Ethernet II 헤더: 14바이트
- Ethernet FCS: 4바이트
- 패딩·프리앰블·SFD·인터프레임 간격은 계산에서 제외
TCP 세그먼트 = 20 + 1,000 = 1,020바이트
IP 패킷 = 20 + 1,020 = 1,040바이트
Ethernet 프레임 = 14 + 1,040 + 4 = 1,058바이트
계층 헤더와 트레일러가 추가되므로 전송되는 링크 프레임 크기는 응용 데이터보다 크다. VLAN 태그, TCP 옵션, IP 옵션·확장 헤더, 작은 프레임의 패딩 여부가 있으면 결과가 달라진다.
MAC·IP·포트·소켓의 역할
범위별 식별자
| 식별자 | 대표 계층 | 적용 범위 | 전달 판단 | 라우터 통과 시 일반적 변화 |
|---|---|---|---|---|
| MAC 주소 | 데이터 링크 | 현재 링크·VLAN | 현재 링크의 다음 인터페이스 | 링크가 바뀔 때 출발지·목적지 MAC이 바뀐다. |
| IP 주소 | 네트워크 | 여러 네트워크를 잇는 논리 종단 | 목적지 네트워크와 다음 홉 | NAT·터널·프록시가 없으면 종단 주소는 유지된다. |
| 포트 번호 | 전송 | 한 호스트의 전송 종단 | 어느 소켓·응용에 전달할지 결정 | NAT·프록시가 없으면 유지된다. |
| VLAN ID | 데이터 링크 | 브리지 안의 논리적 LAN | 어느 브로드캐스트 영역에 속하는지 구분 | 라우터를 넘어 그대로 유지되는 종단 식별자가 아니다. |
| 소켓·연결 튜플 | 운영체제·전송 | 통신 끝점·흐름 | 연결과 데이터 전달 상태 구분 | 장비가 아니라 종단 운영체제가 관리한다. |
같은 네트워크와 다른 네트워크
호스트는 목적지 IP가 자신의 로컬 네트워크에 속하는지 판단한다.
- 같은 IP 네트워크: 목적지 호스트의 링크 주소를 알아내 직접 프레임을 보낸다.
- 다른 IP 네트워크: 기본 게이트웨이의 링크 주소를 알아내 게이트웨이로 프레임을 보낸다.
원격 목적지일 때 첫 프레임은 다음처럼 구성된다.
Ethernet 목적지 MAC = 기본 게이트웨이 MAC
IP 목적지 주소 = 원격 서버 IP
TCP 목적지 포트 = 원격 서버 서비스 포트
“프레임 목적지 MAC이 게이트웨이이므로 IP 목적지도 게이트웨이”라고 판단하면 틀린다. 링크 목적지와 최종 네트워크 목적지는 서로 다른 계층 정보다.
ARP의 위치
IPv4 Ethernet 환경에서 ARP는 같은 링크의 IPv4 주소에 대응하는 MAC 주소를 알아내는 데 사용된다. ARP 메시지는 TCP·UDP 안에 들어가지 않으며 포트 번호가 없다. 계층을 엄격히 한 칸에 고정하기보다 네트워크 주소와 데이터 링크 주소를 연결하는 링크 지원 기능으로 이해하는 것이 안전하다.
스위치와 라우터를 지나는 패킷 추적
예제 조건
클라이언트가 다른 IP 네트워크의 웹 서버에 TCP 연결을 시작한다고 가정한다.
클라이언트 IP: 192.0.2.10
클라이언트 MAC: 02:00:00:00:00:0A
클라이언트 포트: 51500
첫 라우터의 클라이언트 측 MAC: 02:00:00:00:01:01
첫 라우터의 다음 링크 MAC: 02:00:00:00:02:01
다음 홉 MAC: 02:00:00:00:02:02
서버 IP: 198.51.100.20
서버 포트: 443
초기 IPv4 TTL: 64
NAT, 프록시, 터널링은 없다고 가정한다.
송신 호스트
- 응용이 서버 주소와 443번 포트로 데이터를 보낸다.
- TCP는 출발지 포트 51500과 목적지 포트 443을 넣어 세그먼트를 만든다.
- IP는 출발지
192.0.2.10, 목적지198.51.100.20, 상위 프로토콜 TCP, TTL 64를 넣는다. - 목적지가 원격 네트워크이므로 호스트는 기본 게이트웨이를 다음 홉으로 선택한다.
- Ethernet 프레임의 목적지 MAC에는 서버 MAC이 아니라 게이트웨이 MAC을 넣는다.
첫 링크의 구조는 다음과 같다.
Ethernet: 02:00:00:00:00:0A → 02:00:00:00:01:01
IPv4: 192.0.2.10 → 198.51.100.20, TTL 64
TCP: 51500 → 443
Data: 응용 데이터
스위치
스위치는 프레임을 수신하면 다음 순서로 처리한다.
- 출발지 MAC
02:00:00:00:00:0A를 수신 포트와 연결해 학습한다. - 목적지 MAC
02:00:00:00:01:01을 MAC 주소 테이블에서 조회한다. - 알려진 목적지이면 해당 포트로만 전달한다.
- 목적지 항목이 없으면 같은 VLAN의 관련 포트로 미지 유니캐스트를 플러딩한다.
전통적 L2 스위치는 이 전달 과정에서 IP 출발지·목적지나 TCP 포트를 바꾸지 않는다. 정상적인 브리지 전달에서는 Ethernet 출발지·목적지 MAC도 그대로 유지한다. 다만 액세스·트렁크 경계를 지날 때 VLAN 태그는 포트 설정에 따라 추가되거나 제거될 수 있다.
라우터
라우터는 프레임의 목적지 MAC이 자신의 인터페이스와 일치하면 다음 단계를 수행한다.
- 수신 Ethernet 헤더와 FCS를 제거하고 IP 패킷을 꺼낸다.
- IP 헤더 형식과 목적지 등을 검사한다.
- 자신에게 온 패킷이 아니라면 포워딩 대상으로 처리한다.
- IPv4 TTL을 64에서 63으로 감소시킨다.
- 변경된 IPv4 헤더 체크섬을 다시 계산한다.
- 목적지 IP에 대한 출력 인터페이스와 다음 홉을 선택한다.
- 다음 링크의 출발지·목적지 MAC 주소로 새 프레임을 만든다.
- 새 링크 FCS를 계산해 전송한다.
다음 링크의 구조는 다음처럼 바뀐다.
Ethernet: 02:00:00:00:02:01 → 02:00:00:00:02:02 변경
IPv4: 192.0.2.10 → 198.51.100.20, TTL 63 주소 유지·TTL 변경
TCP: 51500 → 443 유지
Data: 응용 데이터 유지
홉별 변화 표
| 항목 | 첫 링크 | 라우터 이후 링크 | 이유 |
|---|---|---|---|
| 출발지 MAC | 클라이언트 MAC | 라우터 출력 인터페이스 MAC | 링크 송신자가 달라진다. |
| 목적지 MAC | 첫 라우터 MAC | 다음 홉 MAC | 현재 링크의 수신자가 달라진다. |
| 출발지 IP | 클라이언트 IP | 클라이언트 IP | 일반 라우팅은 종단 주소를 유지한다. |
| 목적지 IP | 서버 IP | 서버 IP | 최종 네트워크 목적지는 유지된다. |
| 출발지 포트 | 51500 | 51500 | 일반 라우팅은 전송 종단을 바꾸지 않는다. |
| 목적지 포트 | 443 | 443 | 일반 라우팅은 전송 종단을 바꾸지 않는다. |
| TTL | 64 | 63 | 라우터 홉마다 감소한다. |
| Ethernet FCS | 첫 링크 값 | 새 링크 값 | 프레임이 새로 만들어진다. |
NAT는 IP 주소나 포트를 변환할 수 있고, 프록시는 기존 연결을 종단한 뒤 별도 연결을 만들 수 있으며, 터널은 원래 패킷에 바깥 헤더를 추가할 수 있다. 이런 기능이 있다는 이유로 일반 라우팅에서도 IP·포트가 항상 바뀐다고 판단해서는 안 된다.
네트워크 장비의 계층과 전달 기준
대표 장비 비교
| 장비 | 주된 계층 | 주로 확인하는 정보 | 핵심 동작 | 대표 경계 효과 |
|---|---|---|---|---|
| 리피터 | 1 | 신호 상태 | 감쇠된 신호를 재생·정형해 거리 확장 | 충돌·브로드캐스트 영역을 나누지 않는다. |
| 허브 | 1 | 수신 비트 | 한 포트의 비트를 다른 포트로 반복 | 모든 포트가 공유 충돌 영역을 이룬다. |
| 브리지 | 2 | MAC 주소 | LAN 구간 사이에서 프레임 필터링·전달 | 포트별 충돌 영역을 분리한다. |
| L2 스위치 | 2 | VLAN·MAC 주소 | 출발지 MAC 학습, 목적지 MAC 기반 전달 | 포트별 충돌 영역, VLAN별 브로드캐스트 영역 |
| 라우터 | 3 | 목적지 IP 주소 | 라우팅 테이블로 다음 홉·출력 인터페이스 선택 | 인터페이스·서브넷별 브로드캐스트 영역 분리 |
| L3 스위치 | 2·3 | MAC과 IP | 브리징과 IP 라우팅을 함께 수행 | VLAN 내부 스위칭과 VLAN 간 라우팅 가능 |
| 무선 AP | 주로 1·2 | 무선 프레임·MAC | 무선 단말을 유선 브리지 영역에 연결 | 무선 매체 공유와 VLAN 브리징 |
| 모뎀 | 주로 1 | 신호 형식 | 전송 매체에 맞게 신호 변조·복조·변환 | 주소 기반 전달 장비가 아니다. |
| 응용 게이트웨이·프록시 | 주로 7 | 응용 메시지 | 연결 종단, 중계, 형식·정책 변환 | 양쪽에 별도 응용·전송 연결을 만들 수 있다. |
장비를 한 계층으로 분류하는 것은 주된 전달 판단 기준을 나타낸다. 실제 NIC는 물리·데이터 링크 기능을 함께 수행하고, 방화벽은 L3·L4·L7 정보를 검사할 수 있으며, 다계층 스위치는 L2와 L3를 모두 수행한다.
리피터와 허브
리피터는 신호가 약해지거나 왜곡되는 문제를 줄이기 위해 신호를 재생한다. 허브는 여러 포트를 가진 리피터처럼 한 포트에서 받은 비트를 다른 포트로 반복한다.
- 목적지 MAC을 보고 선택 전달하지 않는다.
- 연결된 장치가 하나의 공유 매체처럼 동작한다.
- 전통적 반이중 Ethernet에서는 동시에 송신하면 충돌할 수 있다.
- 하나의 충돌 영역과 하나의 브로드캐스트 영역을 공유한다.
허브가 여러 포트를 가졌다고 충돌 영역을 포트별로 나누는 것은 아니다.
브리지와 스위치
브리지는 두 개 이상의 LAN 구간을 연결하고 MAC 주소를 이용해 프레임을 필터링·전달한다. 스위치는 일반적으로 다중 포트, 고속 하드웨어 기반 브리지다.
- 출발지 MAC과 수신 포트를 학습한다.
- 목적지 MAC이 있는 포트를 조회한다.
- 알려진 유니캐스트는 필요한 포트로만 전달한다.
- 미지 유니캐스트와 브로드캐스트는 같은 VLAN 안에서 플러딩한다.
- 각 포트는 별도 충돌 영역으로 취급한다.
- 같은 VLAN은 하나의 브로드캐스트 영역이다.
라우터
라우터는 서로 다른 IP 네트워크 사이에서 패킷을 전달한다.
- 목적지 IP 주소와 라우팅 정보를 검사한다.
- 출력 인터페이스와 다음 홉을 선택한다.
- 입력 링크 프레임을 제거하고 출력 링크용 프레임을 새로 만든다.
- TTL 또는 Hop Limit을 감소시킨다.
- 링크 계층 브로드캐스트를 다른 인터페이스로 그대로 반복하지 않는다.
- 각 라우터 인터페이스는 일반적으로 별도 브로드캐스트 영역에 속한다.
라우터는 WAN에서만 사용하는 장비가 아니다. 한 건물의 VLAN 사이, 데이터센터 네트워크, 가정 LAN과 인터넷 사이에서도 라우팅을 수행한다.
게이트웨이
게이트웨이(gateway)는 문맥에 따라 의미가 달라진다.
- 기본 게이트웨이: 호스트가 로컬 네트워크 밖으로 패킷을 보낼 때 사용하는 기본 다음 홉 라우터
- 프로토콜 게이트웨이: 서로 다른 통신 규칙이나 주소 체계를 변환하는 장치·프로그램
- 응용 게이트웨이: 응용 연결을 종단하고 메시지를 검사·중계·변환하는 프록시
따라서 “게이트웨이는 무조건 OSI 7계층 장비” 또는 “게이트웨이는 라우터와 완전히 같은 말”이라는 선지는 문맥을 무시한 설명이다.
스위치의 MAC 학습과 프레임 전달
MAC 주소 테이블
스위치는 일반적으로 다음 정보를 관리한다.
(VLAN, MAC 주소) → 출력 포트, 학습 시각
표준적 기능 명칭은 포워딩 데이터베이스(FDB)에 가깝고, 현장에서는 구현에 사용되는 CAM 메모리에서 따와 CAM 테이블이라고도 부른다. VLAN을 사용하는 스위치에서는 같은 MAC 값이라도 VLAN 문맥이 함께 고려된다.
학습 순서
스위치가 포트 1에서 다음 프레임을 받았다고 하자.
출발지 MAC = A
목적지 MAC = D
처리는 다음 순서다.
- 출발지 MAC
A를 포트 1과 연결해 학습하거나 기존 항목을 갱신한다. - 목적지 MAC
D를 테이블에서 조회한다. D가 다른 포트에 있으면 해당 포트로 전달한다.D가 수신 포트 1에 있다고 학습되어 있으면 다른 포트로 전달하지 않는다.D가 없으면 같은 VLAN에서 수신 포트를 제외한 관련 포트로 플러딩한다.
스위치는 목적지 주소를 학습하는 것이 아니라 출발지 주소를 학습한다. 목적지 주소는 전달 결정을 위해 조회한다.
처음에는 플러딩, 이후에는 선택 전달
초기 테이블: 비어 있음
1) A가 D로 전송, 포트 1에서 수신
학습: A → 1
D 미지: 다른 포트로 플러딩
2) D가 A에 응답, 포트 4에서 수신
학습: D → 4
A 알려짐: 포트 1로만 전달
3) A가 다시 D로 전송
D 알려짐: 포트 4로만 전달
브로드캐스트는 목적지 하나를 찾는 프레임이 아니므로 MAC 테이블에 목적지가 있어도 같은 VLAN의 관련 포트로 전달된다.
충돌 영역·브로드캐스트 영역·VLAN
충돌 영역
충돌 영역(collision domain)은 공유 반이중 매체에서 둘 이상의 장치가 동시에 송신해 신호가 충돌할 수 있는 범위다.
- 리피터와 허브는 충돌 영역을 확장한다.
- 브리지와 스위치는 포트마다 충돌 영역을 분리한다.
- 전이중 스위치 링크에서는 송신·수신 경로가 분리되어 실제 Ethernet 충돌이 발생하지 않는다.
시험에서 “스위치 포트마다 하나의 충돌 영역”이라고 표현하는 것은 전통적 영역 분리 관점이다. 현대 전이중 링크에서는 충돌 자체가 없다는 점을 함께 기억한다.
브로드캐스트 영역
브로드캐스트 영역(broadcast domain)은 링크 계층 브로드캐스트 프레임이 전달되는 논리적 범위다.
- 허브는 브로드캐스트를 모든 포트에 반복한다.
- 스위치는 같은 VLAN 안에서 브로드캐스트를 플러딩한다.
- VLAN마다 별도 브로드캐스트 영역이 형성된다.
- 라우터는 일반적으로 링크 브로드캐스트를 다른 인터페이스로 전달하지 않는다.
장비별 영역 비교
| 구성 | 충돌 영역 | 브로드캐스트 영역 |
|---|---|---|
| 4대의 호스트가 하나의 허브에 연결 | 1개 | 1개 |
| 4대의 호스트가 하나의 스위치에 연결, 모두 같은 VLAN | 사용 중인 포트 기준 4개 | 1개 |
| 한 스위치에서 호스트를 VLAN 10과 VLAN 20으로 분리 | 포트별 분리 | 2개 |
| 라우터가 서로 다른 3개 LAN을 연결 | 각 링크·스위치 포트별 분리 | 3개 |
사용하지 않는 포트까지 무조건 충돌 영역 수에 포함하는지, 스위치 간 링크·라우터 링크를 포함하는지는 문제 그림과 전제를 확인해야 한다.
VLAN과 다계층 장비의 기본
VLAN은 스위치에서 논리적으로 분리한 브로드캐스트 영역이다. 서로 다른 VLAN 사이의 통신에는 일반적으로 라우팅 기능이 필요하다. VLAN은 링크 계층의 논리적 분할이고 IP 서브넷은 IP 주소 체계의 분할이므로 같은 용어는 아니다.
L3 스위치는 스위칭 기능과 함께 IP 라우팅을 수행한다. 방화벽이나 게이트웨이처럼 여러 계층의 정보를 처리하는 장비도 있으므로, 이름만으로 모든 기능을 특정 계층 하나에 고정하지 않는다. 문제에서 MAC 주소 학습을 묻는지 IP 경로 선택을 묻는지 기능을 확인한다.