[CISCO Networking] 루핑(Looping)과 스패닝 트리 알고리즘(Spanning Tree Algorithm)

Hevton·2020년 9월 3일
0

이번 글에서는 루핑과 스패닝 트리 알고리즘에 대해 다루겠습니다. 결론부터 말하면, 루핑을 해결하기 위해 스패닝 트리 알고리즘이 도입되었습니다. 둘을 알고 가기 전에 우선 간단히 네트워크 용어 두개를 알아보고 가겠습니다.

∙ 폴트 톨러런트 (Fault tolerant)

폴트 톨러런트란 네트워크 상에 어떤 문제가 발생할 때를 대비하여 미리 장애 대비를 해놓는 것을 의미합니다.
예를 들어 피시방의 모든 컴퓨터가 하나의 라우터와 연결되어 있는데, 이 라우터가 고장나게 되면 모든 컴퓨터가 인터넷에 접속할 수 없게 됩니다. 따라서 라우터를 미리 두 대로 네트워크를 구성한 후 한 대가 죽었을 때 자동으로 다른 라우터가 기존의 라우터 역할을 수행하는 것입니다. 이렇듯 폴트 톨러런트란 대부분 이중 구조를 의미하고 전체 네트워크가 하나의 지점의 장애로 영향을 받는것을 방지하기 위한 대책입니다.

∙ 로드 밸런싱 (Load balancing)

길을 분산시키는 작업입니다. 인터넷 회선 하나보다 인터넷 회선 두 개를 사용해 데이터들이 두 라인 중 하나를 선택해서 이용하게끔 하는 방법입니다. 그러다가 회선 하나가 끊어지면 다른 회선으로 이전할 수 있게 되는데, 이럴 경우 로드 밸런싱과 폴트 톨러런트를 겸하게 됩니다,

루핑 (Looping)

루핑은 같은 네트워크 안에서 하나의 호스트가 다른 호스트 까지 이동하는 데 있어 경로가 두 가지 이상 있다면 발생하는 현상입니다.
이때 이 현상의 근본 원인은 브리지/스위치에 목적지까지의 경로가 두 개 이상 존재하면 반드시 루핑이 발생하기 때문입니다. (이더넷의 기본 성격이 붙어있는 모든 장치들에게 프레임을 전달하는 것이고, 브리지/스위치는 필터링과 플로딩의 기능이 있기 때문이죠)
두 호스트 사이에 브리지/스위치가 두 개 이상 생기게 되면 브리지/스위치는 두 호스트간의 통신에 있어 목적지 까지의 경로가 두 개 이상 존재하게 되는 것이죠 ( 같은 네트워크 상이므로 두 브리지/스위치도 서로 연결되어 있기 때문입니다. ) 보통 이런 경우는 로드 밸런싱 처럼 두 개의 경로를 이용하다가 하나의 경로가 끊어져도 다른 경로로 통신이 가능하게(또한 이는 폴트 톨러런트) 하기 위한 과정인데, 아무런 대안이 없는 상황이라면 무조건 루핑이라는 것이 발생하게 됩니다.
좀 더 들어가자면 이 루핑은 스위치/브리지가 두가지 경로 이상으로 연결되어 있으면 발생한다고 보시면 됩니다. (건너 건너 연결되어 있는 방식 포함입니다.) -> 이더넷의 쉐어드 방식 때문

스패닝 트리 알고리즘 (Spanning Tree Algorithm)

그럼 이 폴트 톨러런트와 로드 밸런싱을 가능케 할 수 있는 그 루핑의 대안이 바로 스패닝 트리 알고리즘 입니다. 스패닝 트리 알고리즘은 자동으로 루핑을 검색해서 루핑이 발생할 수 있는 상황을 미리 막아주는 역할을 합니다. 그 뜻이 과연 무슨뜻일까요? 바로 경로가 여러개라면 하나로 줄이는 것이겠죠? 맞습니다. 스패닝 트리 알고리즘은 스위치/브리지에서 발생할 수 있는 루핑을 미리 막기 위해 두 개 이상의 경로가 발생하면 하나를 제외하고 나머지 경로를 자동으로 막아두었다가 만약 기존 경로에 문제가 생기면 막아놓은 경로를 풀어서 데이터를 전송하는 알고리즘입니다.

이 때, 한 개의 링크가 끊어져서 다른 링크가 다시 살아나서 연결을 해주는데 걸리는 시간은 약 1분 이상입니다. 그러므로 사용자들이 1분 이상을 네트워크가 끊어진 상태로 기다려야만 하는 문제가 생깁니다. 이 점을 보완하기 위해 만들어진 기술이 있는데 바로 업링크 패스트(Uplink Fast) 라는 기술입니다, 이는 링크의 복구 시간이 1분 이상 걸리는 것을 2~3초 안에 가능하도록 만든 기술입니다.
또한 시스코의 이더 채널(Ether-Channel) 기술은 여러 개의 링크가 마치 하나의 링크처럼 인식되게 하여 스패닝 트리의 시간적 단점을 보완합니다. 요즘의 스위치들은 이런 기능들을 가지고 스패닝 트리 알고리즘의 약점들을 보완하고 있습니다.

출처 - '후니의 쉽게 쓴 네트워킹'

profile
놀만큼 놀았다.

0개의 댓글