[네트워크] 스위치(Layer2:데이터링크)

찬들이·2022년 9월 12일
0

컴퓨터공학

목록 보기
22/34

🎯 스위치란?

로컬 홈 네트워크와 같은 네트워크 내의 장치 간 통신을 허용하는 네트워크 하드웨어 장치이다.
허브의 확장된 개념으로 디바이스에서 전송된 패킷이 허브에 연결된 모든 기기로 브로드캐스팅 시키는 반면, 스위치는 패킷의 목적지 주소로 지정된 디바이스로 이어지는 포트로만 패킷이 전달된다.

  • 전이중 통신방식

  • 연결된 디바이스들의 MAC주소와 포트가 기록된 MAC주소 테이블을 보유

  • 전송로에 장애 발생 시 현재 상태에서 예비 상태로 전환한다.

  • 2개의 노드가 서로 통신하는 동안, 다른 노드도 통신이 가능하다.

    동작 과정

  1. 다른 스위치와 같이 프로세서, 메모리, 펌웨어가 담겨 있는 플래시 롬으로 구성되어 있다.

  2. 부팅이 되면 스위치는 각 포트별로 연결 되어있는 노드의 상태를 확인한다.

  3. 각 노드의 MAC주소를 알아내서 메모리에 적재하고, 패킷이 전달될 때 이 정보를 바탕으로 스위칭한다.

  4. 스위치의 운영체제가 적재되거나 스위칭을 할 때 각 포트의 주소 정보가 저장된다.

  5. 스위칭 허브를 선택할 때 스위칭 허브가 얼마만큼의 메모리와 어느 정도의 주소 테이블을 저장할 수 있는지 확인한다.

  6. 보통의 스위치는 메모리 용량 이상의 주소가 저장된 경우, 스위칭 기능이 중지되며 더미 허브와 같은 방식으로 동작한다.

    패킷 전송 방식

    기본적으로 MAC 테이블에 존재하는 도착지 주소를 가진 패킷이 들어오면 매핑된 포트로만 패킷을 전송하고, 테이블에 존재하지 않는 도착지 주소를 가진 패킷이 들어오면 전체 포트로 패킷을 전송한다.
    이런 방식의 스위치 동작 방식은 3가지로 정의할 수 있다.

    플러딩

    스위치 초기 정보가 없고, MAC테이블도 비어있는 상태에서 패킷이 들어온 포트를 제외한 모든 포트로 패킷을 전달하는 작업

  • 플러딩이 많아지면 스위치가 제 역할을 못하게 되기 때문에, 스위치는 패킷 통신이 이루어질 때마다 MAC주소를 학습해서 MAC 주소 테이블을 만든다.

  • 스위치 간 통신을 위해 MAC정보가 사전에 설정되기도 한다.

  • 멀티/브로드캐스트의 경우 출발지가 사용되지 않기 때문에 전부 플러딩 된다.

    어드레스 러닝

    MAC테이블을 만들고 유지하는 작업이다.

  • 패킷을 받으면 받은 패킷과 포트번호를 MAC테이블에 작성한다.

    포워드/필터링

    패킷이 들어온 후 도착지 MAC주소를 확인하고 자신이 가진 MAC테이블과 비교해 맞는 정보가 있으면 매칭되는 해당 포트로 패킷을 보내는 과정을 포워딩이라 하고, 매칭되지 않는 나머지 포트로는 패킷을 보내지 않는 작업을 필터링이라 한다.

  • 일반적으로 유니캐스트 통신에서만 포워딩과 필터링 작업이 모두 수행된다.

    VLAN

    호스트의 물리적인 위치에 상관없이 포트를 기반으로 네트워크를 가상으로 구분한 논리적인 그룹

  • 하나의 네트워크를 여러 브로드캐스트 도메인으로 나누거나 통합하여 네트워크를 그룹형태로 구분하여 관리가 가능하다.

  • 일반 네트워크 영역으로 많이 사용된다.

🎯 STP

Spanning Tree Protocol은 스위치에서 루핑을 막아주기 위한 프로토콜으로, 스위치 브리지 구성에서 출발지부터 목적지까지의 경로가 두 개 이상 존재할 때, 한 개의 경로만을 남겨 두고 나머지는 모두 끊어 두었다가 사용하던 경로에 문제가 발생하면 그때 끊어두었던 경로를 하나씩 살리는 방식의 프로토콜이다.

Frame Looping시 발생하는 영향

  1. 브로드캐스팅 폭풍 발생

  2. MAC Address Table 불안정

  3. 이중 Frame 수신

    STP-동작방식

  4. STP가 동작을 시작하면 물리적으로 Loop 구조인 Network에서 특정 port를 차단 상태로 바꾸어 놓음으로써 논리적인 Loop가 발생하지 않게 한다.

  5. 그러다 다른 동작중인스위치의 Port가 Down되면 차단 상태로 바꿔놓은 특정 Port를 다시 전송 상태로 바꾸어 통신이 끊기지 않도록 한다.

  6. 그 Loop를 막는 경로를 구성하는 프레임을 BPDU라고 한다.

  • BPDU
    • Configuration BPDU: Switch 및 포트의 역할을 결정하기 위하여 사용되는 Frame
    • TCN BPDU: Switch Network의 구조가 변경되었을 때 알리기 위하여 사용되는 Frame
  1. Switch는 Configuration BPDU를 2초마다 전송하여 Root Switch를 선출하고, Switch Port의 역할을 결정하고 그 BPDU를 인접 Switch로 중계한다.

    STP-Port 상태

    STP는 Port의 상태를 차단, 청취, 학습, 전송및 비활성 상태로 분류한다.

  • 차단 : Data Frame을 송수신하지 않고 BPDU만 수신한다. Port가 활성화되면 RP DP일 때 청취, AP일 때 차단 상태가 된다. 만약 AP -> RP or DP로 변경되면 20초 후에 청취 상태로 변경된다.
  • 청취 : Port가 DP이면 청취 상태에서 BPDU를 전송한다. 15초가 지나면 학습 상태로 변하는데, 이 시간을 Forward Delay타이머라고 한다.
  • 학습 : MAC Address Table을 채우기 시작한다. 15초가 지나면 전송상태로 변하는데, 이 시간도 Forward Delay타이머라고 한다.
  • 전송 : Data Frame을 정상적으로 송수신한다.
profile
Junior-Backend-Developer

0개의 댓글