STP(Spanning Tree protocol) 정의 및 동작 원리
STP(스패닝 트리 프로토콜)는 네트워크 토폴로지 내에서 루핑을 방지하는 데 사용되는 레이어 2 네트워크 프로토콜입니다. STP는 중복 경로가 포함된 근거리 통신망( LAN )에서 컴퓨터가 데이터를 교환할 때 발생하는 문제를 방지하기 위해 만들어졌습니다. 트래픽 흐름을 주의 깊게 모니터링하고 제어하지 않으면 데이터가 네트워크 세그먼트 주위를 순환하는 루프에 갇혀 성능에 영향을 미치고 트래픽이 거의 중단될 수 있습니다.
네트워크 세그먼트를 연결할 때 네트워크는 중복 경로로 구성되는 경우가 많습니다. 중복성은 장애로부터 보호하는 데 도움이 되지만 브리지 또는 스위치 루핑으로 이어질 수도 있습니다 . 루핑은 데이터가 중복 경로를 따라 소스에서 대상으로 이동하고 데이터가 동일한 경로를 중심으로 순환하기 시작하여 증폭되어 브로드캐스트 폭풍(Broadcast Storm)을 일으킬 때 발생합니다.
STP는 중복 링크를 포함하는 LAN에서 브리지 루핑을 방지하는 데 도움이 됩니다. STP가 없으면 중복성(redundancy)을 구현하기 어렵고 네트워크 루핑도 방지할 수 없습니다. STP는 모든 네트워크 링크를 모니터링하고 중복 연결을 식별하며 루핑을 유발할 수 있는 포트를 비활성화합니다.
LAN은 종종 여러 네트워크 세그먼트로 나뉘며 브리지를 사용하여 개별 세그먼트 쌍을 연결합니다. 프레임이라고 불리는 각 메시지는 의도한 대상으로 전송되기 전에 브리지를 통과합니다. 브리지는 메시지가 발신자와 동일한 세그먼트 내의 대상에 대한 것인지 아니면 다른 세그먼트에 대한 것인지 확인한 다음 그에 따라 메시지를 전달합니다. STP와 관련하여 사용될 때 브리지 라는 용어는 네트워크 스위치를 나타낼 수도 있습니다 .
브리지는 대상 주소를 확인하고 어떤 컴퓨터가 어떤 세그먼트에 있는지 파악한 후 올바른 나가는 포트를 통해 올바른 경로로 데이터를 전달합니다 . 네트워크 세분화 및 브리징은 각 세그먼트에 동일한 수의 컴퓨터가 있다고 가정할 때 네트워크 경로에 대한 경쟁의 양을 절반으로 줄일 수 있습니다. 결과적으로 네트워크가 중단될 가능성이 훨씬 줄어듭니다.
분할된 LAN은 네트워크 링크를 사용할 수 없는 경우에도 통신을 계속할 수 있도록 중복 브리지와 경로로 설계되는 경우가 많습니다. 그러나 이로 인해 네트워크가 루핑에 더 취약해지기 때문에 이러한 가능성을 방지하기 위한 시스템을 마련해야 하며 이것이 바로 STP가 필요한 이유입니다.
STP가 활성화되면 각 브리지는 네트워크 세그먼트에 최초 메시지를 보내 어떤 컴퓨터가 어떤 세그먼트에 있는지 알아냅니다. 이 과정을 통해 브릿지는 컴퓨터의 위치를 파악하고 그 내용을 테이블에 기록합니다. 후속 메시지가 전송되면 브리지는 테이블을 사용하여 메시지를 전달할 세그먼트를 결정합니다. 브리지가 자체적으로 네트워크에 대해 학습할 수 있도록 하는 것을 투명 브리징 이라고 하며 , 이 프로세스를 통해 관리자가 브리징을 수동으로 설정할 필요가 없습니다.
중복 경로가 포함된 네트워크에서 브리지는 트래픽 흐름을 제어하고 루핑을 방지하기 위해 네트워크의 토폴로지를 지속적으로 이해해야 합니다. 이를 위해 스패닝 트리 프로토콜을 사용하는 확장 LAN을 통해 BPDU(브리지 프로토콜 데이터 단위)를 교환합니다. BPDU는 STP 작업을 수행하는 데 사용되는 네트워크 정보를 브리지에 제공하는 데이터 메시지입니다.
STP의 핵심은 각 STP 지원 브리지에서 실행되는 스패닝 트리 알고리즘입니다. 이 알고리즘은 중복 경로가 존재할 때 브리지 루프를 방지하도록 특별히 설계되었습니다. BPDU를 사용하여 중복 링크를 식별하고 메시지 전달을 위한 최상의 데이터 경로를 선택합니다. 또한 알고리즘은 포트 상태를 설정하여 패킷 전달을 제어합니다.
STP 포트 상태란 무엇인가?
네트워크 브리지에서 STP가 활성화되면 각 포트는 프레임 전달을 제어하는 5가지 상태 중 하나로 설정됩니다.
- Disabled : 포트는 프레임 전달 또는 STP 작업에 참여하지 않습니다.
- Blockikng : 포트는 프레임 전달에 참여하지 않으며 연결된 네트워크 세그먼트에서 수신된 프레임을 삭제합니다. 그러나 포트는 계속해서 BPDU를 수신하고 처리합니다.
- Listening : 차단 상태에서 포트는 수신 대기 상태로 전환됩니다. 포트는 연결된 네트워크 세그먼트에서 프레임을 삭제하거나 다른 포트에서 전달됩니다. 그러나 BPDU를 수신하고 처리를 위해 스위치 모듈로 리디렉션합니다.
- Learning : 포트는 청취 상태에서 학습 상태로 이동합니다. BPDU를 수신하고 처리하지만 연결된 네트워크 세그먼트에서 프레임을 삭제하거나 다른 포트에서 전달됩니다. 또한 학습된 정보로 주소 테이블을 업데이트하기 시작합니다. 또한 사용자 프레임을 처리하지만 해당 프레임을 전달하지는 않습니다.
- Forwarding : 포트는 학습 상태에서 전달 상태로 이동하고 네트워크 세그먼트를 통해 프레임 전달을 시작합니다. 여기에는 연결된 네트워크 세그먼트의 프레임과 다른 포트에서 전달된 프레임이 포함됩니다. 또한 포트는 계속해서 BPDU를 수신하고 처리하며 주소 테이블은 계속 업데이트됩니다.
STP는 상대적으로 짧은 순서로 차단 상태에서 전달 상태를 거쳐 이동하며 일반적으로 각 상태에 대해 15~20초가 소요됩니다. 모든 포트는 차단 상태에서 시작됩니다. 비활성화된 경우 포트는 활성화 시 바로 차단 상태로 들어갑니다. STP는 포트 전체의 상태 균형을 유지하여 브리지 루핑을 방지하는 동시에 중복성을 가능하게 합니다.
STP 모드란 무엇인가?
STP 모드를 이해하려면 STP의 시작으로 돌아가는 것이 도움이 됩니다. 원래 스패닝 트리 프로토콜과 알고리즘은 Radia Perlman이 Digital Equipment Corporation에서 근무하던 1985년에 발명되었습니다. 스패닝 트리 프로토콜은 나중에 IEEE (Institute of Electrical and Electronics Engineers )에 의해 표준화되었습니다. 그 이후로 프로토콜은 다양한 방식으로 발전했으며 새로운 변형이 도입되었습니다.
다음 표는 가장 일반적인 스패닝 트리 프로토콜의 개요를 제공합니다. 그러나 모든 브리지와 스위치가 이러한 프로토콜을 모두 지원하는 것은 아니며 여기에 나열되지 않은 다른 스패닝 트리 기반 프로토콜도 있습니다.
IEEE 표준 열은 프로토콜이 원래 기반으로 한 표준을 보여줍니다. IEEE는 일반적으로 이러한 표준을 재구성하므로 현재 STP 기능을 통합하는 표준을 추적하는 것은 혼란스러울 수 있습니다. 예를 들어, 802.1D는 802.1w도 통합된 802.1D-2004 개정판에서 업데이트되었습니다. 이후 802.1Q-2014 표준이 공개됐는데, 여기에는 801.1D에 명시된 기능이 대부분 포함됐다.
스위치 열에는 브리지나 스위치에서 STP를 활성화할 때 프로토콜 모드를 지정하는 데 사용해야 하는 옵션이 표시됩니다. STP를 활성화하려면 네트워크 관리자가 장치에 연결하고 전역 구성 모드로 들어가서 다음 형식으로 명령을 실행합니다.
스패닝 트리 모드 <프로토콜 모드>
예를 들어 스위치에서 RSTP(Rapid STP)를 활성화하려면 관리자는 다음 명령을 실행합니다.
스패닝 트리 모드 rstp
STP를 활성화하는 것 외에도 관리자는 네트워크의 중앙 STP 참조 지점 역할을 할 루트 브리지를 선택해야 합니다. 관리자는 루트 포트와 지정된 포트도 식별해야 합니다. 루트 포트는 프레임을 루트 브리지로 전달하는 브리지 포트이고, 지정 포트는 루트 브리지에서 떨어진 곳으로 프레임을 전달하는 브리지 포트입니다.
STP를 반드시 사용해야 하나요?
STP는 브리지 루핑과 이에 따른 브로드캐스트 폭풍을 방지합니다. 일단 구성되면 STP는 특정 중복 링크를 자동으로 비활성화하고 어떤 링크가 활성화되어 있는지 결정합니다. 이러한 방식으로 브리지 루핑 위험 없이 재난으로부터 보호하기 위한 장애 조치 서비스를 제공하는 중복 데이터 경로로 네트워크를 구성할 수 있습니다.
STP는 다음과 같은 몇 가지 중요한 이점을 제공합니다.
- 검증된 기술;
- 구현 및 유지 관리가 쉽습니다.
- 브리지 및 스위치에 대한 광범위한 지원;
- 링크 중복성을 촉진하는 동시에 바람직하지 않은 루프를 방지합니다. 그리고
- 기본 데이터 경로를 사용할 수 없는 경우 백업 사용을 지원합니다 .
이러한 이점에도 불구하고 STP에는 다음과 같은 과제가 있습니다.
- 데이터 센터가 더 많은 가상화 기술을 사용함에 따라 STP는 증가된 입출력 요구를 처리하지 못할 수도 있습니다 .
- STP를 사용하면 전체 네트워크 용량이 실현되지 않습니다. 네트워크에 동일한 비용의 여러 경로가 있는 경우에도 모든 트래픽은 스패닝 트리로 정의된 단일 경로를 따라 흐릅니다. 이러한 트래픽 제한은 대체 경로 및 보다 직접적인 경로가 차단됨을 의미합니다.
이러한 문제에도 불구하고 STP의 이점은 일반적으로 위험보다 큽니다. 그러나 필요한 수준의 서비스를 제공하려면 STP 구현을 신중하게 계획하고 배포해야 합니다. 또한 어떤 스패닝 트리 프로토콜을 사용할지 주의를 기울여야 하며, 네트워크 전체에 동일한 프로토콜이 구현되어야 합니다.
STP(스패닝 트리 프로토콜)의 대안
STP의 두 가지 주요 대안은 TRILL(Transparent Interconnection of Lots of Links)과 SPB (Shortest Path Bridging )입니다.
Radia Perlman은 스패닝 트리 알고리즘을 개선하는 방법으로 TRILL을 개발했습니다. 그 후 이 프로토콜은 IETF (Internet Engineering Task Force)에 의해 표준화되었습니다 . TRILL은 레이어 3 네트워크 라우팅 기술을 사용하여 인터넷 프로토콜 노드 에 단일 IP 서브넷으로 나타나는 링크 클라우드를 만듭니다 .
TRILL은 최단 경로 라우팅 프로토콜을 사용하며 STP와 동시에 사용할 수 있습니다.
TRILL의 주요 이점은 네트워크 용량을 확보한다는 것입니다. 최단 경로 라우팅은 효율성을 향상시키고 비용 대비 이익 비율을 감소시킵니다. 클라우드 컴퓨팅 인프라를 실행하는 데이터 센터는 하드웨어 장애 발생 시 STP보다 복구 시간이 더 빠르기 때문에 TRILL을 선택할 수 있습니다.
SPB(802.1aq)는 IEEE와 IETF가 공동 개발했습니다. SPB는 MPLS (Multiprotocol Label Switching)의 효율성 과 이더넷 의 효율성을 결합합니다 . SPB는 STP와 역호환됩니다.
'IT기술' 카테고리의 다른 글
SASE(Secure Access Service Edge)란 무엇인가? (0) | 2024.02.27 |
---|---|
양자컴퓨팅(Quantum computing)이란 ? (0) | 2024.02.18 |
CNaaS(Cloud Network-as-a-Service) 란? (0) | 2024.02.05 |
머신러닝(ML) 이란 ? 유형, 모델, 비즈니스 사용사례 (0) | 2024.01.29 |
CASB(Cloud Access Security Broker)란 ? (0) | 2024.01.28 |
댓글