메뉴 여닫기
환경 설정 메뉴 여닫기
개인 메뉴 여닫기
로그인하지 않음
지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

Link-Layer Switches

noriwiki

상위 문서: Switched Local Area Networks

개요

스위치(switch)는 link layer에서 작동하며, 프레임을 받아서 이를 송신 링크(link)로 forwarding하는 역할을 한다.

Forwarding and Filtering

Filtering은 프레임을 어떤 인터페이스로 전달할지 혹은 단순히 버릴지(drop)를 결정하는 스위치 기능이다. 또한, forwarding은 프레임을 어느 인터페이스로 보낼지를 결정하고, 실제로 그 인터페이스들로 프레임을 이동시키는 기능이다. 스위치의 filtering과 forwarding은 스위치 테이블(switch table)을 사용하여 수행된다. 스위치 테이블에는 LAN에 있는 일부 호스트 및 라우터들에 대한 항목이 저장되어 있다. 스위치 테이블의 각 항목은 MAC 주소와, 해당 MAC 주소로 이어지는 스위치 인터페이스, 해당 항목이 테이블에 저장된 시각을 의미한다:

Address Interface Time
62-FE-F7-11-89-A3 1 9:32
7C-BA-B2-B4-91-10 3 9:36
... ... ...

이러한 프레임 forwarding 방식은 데이터그램 forwarding 방식과 비슷한 면이 많다. 하지만 중요한 차이점은 스위치는 MAC 주소 기반으로 프레임을 전달하며, 라우터는 IP 주소 기반으로 데이터그램을 전달한다는 것이다. 또한, 전통적인 스위치 테이블[1]은 라우터의 포워딩 테이블(forwarding table)과는 매우 다른 방식으로 구축된다.

스위치의 filtering과 forwarding이 어떻게 작동하는지를 이해하기 위해, 목적지 주소가 DD-DD-DD-DD-DD-DD인 프레임이 인터페이스 x에서 스위치로 도착한다고 가정하자. 이때 스위치는 MAC 주소 DD-DD-DD-DD-DD-DD을 이용해 스위치 테이블을 탐색한다. 이때 다음 세 가지 경우가 존재한다:

  1. 해당 목적지 MAC 주소에 대한 항목이 테이블에 저장되어 있지 않은 경우
    • 이 경우, 스위치는 프레임의 복사본을 인터페이스 x를 제외한 모든 출력 인터페이스 버퍼에 전송한다.
    • 즉, 목적지 주소에 대한 정보가 없을 경우, 스위치는 프레임을 브로드캐스트한다.
  2. 해당 프레임이 인터페이스 x에서 전송되었고, 목적지 MAC 주소도 인터페이스 x 방향인 경우
    • 이는 프레임이 이미 목적지와 같은 LAN 세그먼트에서 브로드캐스트된 것이며, 프레임이 목적지에 이미 도달했거나 도달 가능한 상태이므로 스위치는 프레임을 폐기한다. 즉, filtering 기능을 수행한다.
  3. 해당 프레임이 인터페이스 x에서 전송되었고, 목적지 MAC 주소가 인터페이스 y(단, y ≠ x)에 연결된 것으로 테이블에 저장되어 있는 경우
    • 이 경우, 프레임은 인터페이스 y에 연결된 LAN 세그먼트로 전달되어야 한다. 즉, forwarding 기능을 수행한다.

위에서 예시로 보여진 스위치 테이블을 바탕으로 목적지 MAC 주소가 62-FE-F7-11-89-A3인 프레임이 인터페이스 1로부터 스위치에 도착한 상황을 가정하자. 스위치는 자신의 테이블을 확인하고, 해당 목적지가 인터페이스 1에 연결된 LAN 세그먼트에 있다는 것을 확인한다. 이는 해당 LAN 세그먼트에서 프레임이 브로드캐스팅된 결과이므로, 스위치는 프레임을 filtering한다. 만약 동일한 목적지 주소를 가진 프레임이 인터페이스 2로부터 도착했다면, 스위치는 다시 테이브를 확인하고 해당 목적지가 인터페이스 1 방향에 있다는 것을 확인한다. 따라서 스위치는 프레임을 인터페이스 1에게 forwarding한다.

Self-Learning

스위치 테이블은 자동으로, 동적으로, 자율적으로 구성된다. 즉, 네트워크 관리자나 어떤 프로토콜의 개입 없이 스위치는 스스로 학습(self-learning)한다. 이 기능은 다음과 같은 방식으로 작동한다:

  1. 스위치 테이블은 초기에는 비어 있다.
  2. 각 인터페이스에서 프레임이 수신될 때마다, 스위치는 테이블에 다음 정보를 저장한다:
    1. 프레임의 출발지 주소 필드에 있는 MAC 주소
    2. 프레임이 도착한 인터페이스 번호
    3. 현재 시각
    • 이러한 방식으로, 스위치는 송신자가 어떤 LAN 세그먼트에 있는지를 테이블에 기록한다.
    • 만약 LAN의 모든 호스트가 프레임을 하나씩 전송한다면, 모든 호스트가 스위치 테이블에 기록된다.
  3. 일정 시간[2] 동안 해당 MAC 주소를 출발지 주소로 하는 프레임이 도착하지 않으면, 스위치는 테이블에서 해당 주소를 삭제한다.
    • 이를 통해, 만약 한 PC가 다른 PC로 교체되어 다른 MAC 주소를 가지게 된다면, 원래 PC의 MAC 주소는 결국 스위치 테이블에서 제거된다.

각주

  1. 즉, SDN이 아닌 맥락에서의
  2. 이 일정 시간은 aging time이라고 한다.