NakedFlower 님의 블로그

물리 계층과 데이터링크 계층 네트워크 장비 본문

CS/네트워크

물리 계층과 데이터링크 계층 네트워크 장비

nakedflower 2025. 9. 30. 11:03

물리 계층에는 주소 개념이 없다

- 단지 호스트와 통신 매체 간의 연결과 통신 매체 상의 송수신이 이루어질 뿐

- 물리 계층 장비는 송수신되는 정보에 대한 어떠한 조작(송수신 내용 변경)이나 판단도 하지 않음

 

데이터 링크 계층에는 주소 개념이 있다

- MAC 주소

- 데이터 링크 계층 이상 장비들은 송수신지 특정 가능, 송수신 정보에 대한 조작 가능

 

 

대표적인 물리 계층 네트워크 장비

  • 허브(반이중 통신) - CSMA/CD 라는 프로토콜을 이용하여 충돌 완화

물리 계층의 허브(hub)

  • 여러 대의 호스트를 연결하는 장치
  • 리피터 허브(repeater hub) 혹은 이더넷 허브(Ethernet hub)
  • 포트(port) - 커넥터를 연결할 수 있는 연결 지점

 

허브의 특징

 

1. 받은 정보는 다른 모든 포트로 내보냄 (정보에 대한 어떠한 조작도 판단도 하지 않음) -> 불필요한 트래픽이 많아짐 -> 데이터 링크 계층에서 패킷의 MAC 주소를 확인하고 자신과 관련없는 주소는 폐기

2. 반이중 통신

  • 반이중(half duplex) 모드 - 마치 1차선 도로처럼 송수신을 번갈아 가면서 하는 통신 방식
  • 전이중(full duplex) 모드 - 송수신을 동시에 양방향으로 할 수 있는 통신 방식

위의 허브의 특징들이 야기하는 가장 큰 문제는 충돌이다.

  • 동시에 허브에 신호를 송신하면 충돌이 발생
  • 허브에 호스트가 많이 연결되어 있을수록 충돌 발생 가능성이 높음

콜리전 도메인 - 충돌이 발생할 수 있는 영역 허브에 연결된 모든 호스트는 같은 콜리전 도메인에 속함

이런 문제를 해결하기 위한 방법으로는 크게 2가지 있다

  1. CSMA/CD 사용
  2. 스위치 사용

CSMA/CD (Carrier Sense Multiple Access with Collision Detection)

반이중 이더넷 네트워크에서 충돌을 방지하는 대표적인 프로토콜 -> 반이중 이더넷을 대표하는 송수신 방법

 

1) 캐리어 감지 통신 매체의 현재 사용 여부 검사: 메시지를 보내기 전 현재 전송 중인 것이 있는지를 먼저 확인

2) 다중 접근 복수의 호스트가 부득이 동시에 네트워크에 접근할 때: 충돌 발생

3) 충돌 검출

  • 전송 중단, 충돌 발생을 알리는 잼 신호(jam signal) 보냄
  • 임의의 시간 동안 기다린 뒤에 재전송


지금부터는 대표적인 데이터 링크 계층 네트워크 장비인 스위치에 대해 알아보자

 

허브의 충돌 문제

  • CSMA/CD로 어느 정도 완화할 수 있었지만... 보다 근본적인 해결 방법이 있다
  • 전달받은 신호를 수신지 호스트가 연결된 포트로만 내보내고, 전이중 모드로 통신하면 된다!

이를 위한 장비가 바로 스위치(switch)

  • 허브와는 달리 특정 MAC 주소를 가진 호스트에만 프레임 전달 가능
  • 전이중 모드 통신 지원
  • CSMA/CD 프로토콜이 필요하지 않음

스위치의 특징으로는 크게 2가지가 있다

  • 전이중 통신
  • VLAN 기능

보통 스위치라고 하면 L2스위치를 지칭하는 경우가 많음

 

스위치의 주요 기능

  • 스위치의 MAC주소 학습 기능 -> 전달받은 신호를 원하는 포트로만 내보냄 -> 포트별로 콜리전 도메인이 나누어지기에 충돌 위험이 감소
  • 스위치의 VLAN 기능 -> 논리적으로 LAN을 분리하는 가상의 LAN, VLAN 구성 가능

스위치의 MAC 주소 학습 기능 (MAC address learning)

  • 특정 포트와 해당 포트에 연결된 호스트의 MAC 주소와의 관계를 기억
  • 원하는 호스트에만 프레임을 전달
  • MAC 주소 테이블(MAC address table)
    • 스위치 포트와 연결된 호스트의 MAC 주소 간의 연결 관계를 나타내는 정보

 

아래는 MAC주소 테이블의 예시다

 

 

스위치가 MAC주소를 학습할 때 크게 3가지 방법을 이용한다.

  • 플러딩 허브처럼 모든 포트로 프레임 전송 -> 호스트 C는 스위치로 응답 프레임 전송
  • 포워딩과 필터링 호스트 B, D가 연결된 포트로는 내보내지 않도록 필터링, 호스트 C가 연결된 포트로 프레임을 포워딩
  • 에이징: 만약 MAC 주소 테이블에 등록된 포트에서 일정 시간 동안 프레임을 받지 못하면 해당 항목은 삭제

VLAN을 쉽게 표현하자면 다음과 같다

 

한 대의 물리적 스위치라 해도
"호스트의 물리적 위치와 관계 없이"
마치 여러 대의 스위치가 있는 듯이

 

스위치의 VLAN 기능

 

  • VLAN(Virtual LAN) - 한 대의 스위치로 가상의 LAN을 만드는 방법
  • 불필요한 트래픽(허브, 스위치의 플러딩)으로 인한 성능 저하 방지

 

 

VLAN은 사실상 다른 LAN: 서로 다른 네트워크로 간주, 브로드캐스트 도메인이 달라짐

 

VLAN의 종류: 포트 기반 VLAN

  • 스위치의 포트가 VLAN을 결정하는 방식
    • 특정 포트에 VLAN을 할당한 뒤, 해당 포트에 호스트를 연결하여 VLAN에 참여
    • 호스트 A와 B는 VLAN2에 할당된 포트에 연결되어 있으므로 같은 LAN에 속한 셈
    • 호스트 C는 VLAN3에 속해 있으므로 호스트 A, B와는 다른 LAN에 속한 셈

 

 

MAC 기반 VLAN

 

- 사전에 설정된 MAC 주소에 따라 VLAN이 결정

- 송수신하는 프레임 속 MAC 주소가 호스트가 속할 VLAN을 결정하는 방식

 

 

포트 기반 VLAN은 정적 VLAN

MAC 기반 VLAN은 동적 VLAN

'CS > 네트워크' 카테고리의 다른 글

IP의 핵심 기능  (0) 2025.10.01
네트워크 계층의 기능, 존재 목적, IP 패킷 그리고 ARP  (0) 2025.10.01
NIC, 케이블  (0) 2025.09.29
이더넷 기술  (0) 2025.09.29
[네트워크 기초] 패킷 & OSI 7계층 & TCP/IP  (0) 2025.09.27