ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 17_ 루핑(Looping)은 왜 생기는지/폴트 톨러런트(Fault Tolerant)/로드 밸런싱(Load Balancing)
    S T U D Y/Network 2021. 2. 8. 21:04
    728x90
    반응형

     

     

    * 루핑(Looping) 현상이란? 

     - 먼저 이더넷의 특성상 네트워크가 안정적이어야 데이터를 전송할 수 있음. 근데 프레임이 네트워크 위에서 계속해서 무한정으로 빙빙 돌아서 네트워크가 안정이 되기만을 기다리기만 하고 데이터 전송은 불가능해지는 상태를 루핑현상(Looping)이라고 부름.

     

     

    두 대의 호스트 사이 스위치나 브리지가 두 개 있다고 가정하고 보자. 이 말은 즉슨 하나의 호스트에서 가는 경로가 2개 이상 만들어 진다는 뜻과 같다. 왼쪽 브리지를 통해 가는 길과, 오른쪽 브리지를 통해 가는 길 하나가 보임. 이렇게 구성하는 이유는 하나의 경로가 끊어져도 다른 경로를 쓰기 위하기 때문임. 이렇게 구성하게 되면 루핑(Looping)이 발생하게 됨! 

     

    만약 호스트A가 브로드캐스트 패킷(Broadcast packet)을 보내면 이더넷의 특성에 따르면 같은 세그먼트에 있는 모든 네트워크 장비에 브로드캐스팅하며 양쪽 브리지로 전달됨. 

     

    그 다음 브리지는 전달된 패킷을 분석함. 이 패킷이 브로드캐스트 패킷이라는 것을 알게된 뒤 브리지는 Flooding(플로딩)을 함. 목적지 맥 어드레스를 보고 그 맥 어드레스가 자신의 브리지 테이블에 없거나, 멀티캐스트 주소이거나 브로드캐스트 주소인 경우엔 들어온 포트를 제외한 모든 경로에 뿌려주게됨. 이것이 바로 Flooding임.

     

    그럼 상대방 쪽 세그먼트로도 브로드캐스팅 패킷이 보내질 것. 고로 양쪽 브리지를 통해 네트워크가 계속 빙빙 도는 루핑이 발생할 수 밖에 없음. 

     

    이처럼 루핑이 발생하면 다른 데이터를 전송할 수 없음. CSMA/CD의 특성상 한 세그먼트 안에서 어느 순간엔 오직 한 호스트만이 통신할 수 있다는 규칙 때문에 그러함. 네트워크가 무용지물 상태가 됨.

     

    * 그렇다면 루핑을 막는 방법은?

    - 자동으로 루핑을 막아주는 알고리즘이 필요함. 우리는 이것을 스패닝 트리 알고리즘(Spanning Tree Algorithm)이라고 함. 브리지나 스위치에 목적지까지 경로가 두 개 이상 존재하면 반드시 루핑이 발생하게 되니 주의!

     

     

     * 폴트 톨러런트(Fault Tolerant)란?

    - 네트워크상 어떤 문제가 발생할 때를 대비하여 미리 장애 대비를 해놓는 것. 예를 들어, 한 PC방은 라우터 1대와 스위치 n대로 되어있다고 가정. 만약 라우터가 고장이 나면? 인터넷 회선이 살아 있어도 PC방에 온 손님들은 게임을 못할 것임. 그런데 만약 라우터가 2대였다면? 한 대가 죽었으니 나머지 한 대로 돌림. 무조건 여유분을 더 구비하는 것ㅇ ㅣ폴트 톨러런트가 아님. 두 대의 라우터로 네트워크를 구성한 뒤, 한 대가 죽었을 때 다른 한 대가 자동으로 기존 라우터의 일을 하게끔 세팅하는 것이 장애 대비책. 즉 폴트 톨러런트임.

     

     * 로드 밸런싱(Load Balancing)

     - 로드를 분산하는 것. 예를 들어, 1개의 인터넷 회선을 이용한 접속 대신 두 개의 인터넷 회선을 사용함. 그러면 데이터가 두 라인 중에 하나를 선택해서 들어가게 됨. 그래서 로드가 분산되는 효과를 얻을 수 있음. 그러다 하나의 회선이 끊어지면 나머지 하나의 회선으로 이전함. 이것은 폴트 톨러런트와 로드 밸런싱 둘 다를 겸함.

     

    대부분의 로드 밸런싱은 폴트 톨러런트가 가능함. 하지만 폴트 톨러런트는 로드 밸런싱이 안 되는 경우도 있음. 

    728x90
    반응형

    댓글

Designed by Tistory.