루핑 Looping 이란?
L2구간 즉 LAN 구간의 네트워크 사이에서 일어나는 데이터의 송신 , 수신의 무한 반복으로 인하여
다른 데이터들의 통신이 불가능해지는 치명적인 현상입니다.
Looping의 원인
위 그림에서와 같이 Server에서 Client로 가는 스위치 - 스위치 사이에 경로가 2개일 경우
루핑 구조가 만들어지게 됩니다. 아래와 같은 절차로 루핑이 발생하게 됩니다.
1. Server가 Client의 IP로 데이터를 보내면 Lan 구간에서 통신에 필요한 MAC 주소를 모르기 때문에
ARP 브로드캐스팅을 하게 됩니다.
2. Server가 보낸 브로드캐스팅 메세지는 스위치 B에 도착 후 브로드 캐스팅 메세지인 것을 알게 된 스위치 B는
Flooding을 동작하게 됩니다.
Flooding 이란 간단하게 데이터가 들어온 포트를 제외한 나머지 포트 전부에 메세지를 보내는 브로드 캐스팅 동작입니다.
3. 스위치 B가 보낸 브로드 캐스팅 메세지는 스위치 A에 도착 스위치 A는 해당 메세지가 브로드 캐스팅 메세지인 것을 알고 똑같이 Flooding 동작을 취합니다.
여기서 정상적인 행위라면 들어온 포트 즉 스위치 B와 스위치 A가 연결된 포트를 제외하고 모든 포트에 뿌려 스위치 A
아래쪽에 위치한 Client들의 MAC주소를 등록하고 정상적인 통신을 위한 준비를 하게 됩니다.
하지만 스위치 B와 A가 연결된 경로가 2개기 때문에 1경로로 들어오면 2경로로 브로드 캐스팅 메세지를 보내고,
2경로로 들어오면 1경로로 보내는 즉, 서로 브로드 캐스팅 메세지만 받아 Flooding만 계에에에에에속 하게 되는
브로드캐스트 폭풍이 발생하게 됩니다.
스위치도 MAC Table이 존재 하니까 브로드 캐스팅이 필요없는 경우에는 Looping이 일어나지 않는가?
만약 MAC Table에 원하는 목적지의 MAC이 등록되어 있으면 브로드캐스팅이 발생하지 않기 때문에
Looping 현상이 발생하지 않을 수 있다.
하지만 장비를 Reboot를 진행해서 MAC Table이 클리어 되거나, MAC Table에 등록돼 있지않은 목적지와 통신하고자 한다면 Looping 현상이 발생
해결 방법
해결 방법은 바로 STP(Spanning Tree Protocol)을 사용하는 겁니다.
스패닝 트리 프로토콜이란 쉽게 말해 스위치 및 브리즈 등 L2 구간에서 두 개이상의 경로가
있을 경우 하나를 제외 나머지 경로를 차단해주는 프로토콜입니다.
STP에 대해 자세한 설명은 아래에!
STP
STP의 개념 및 원리
스패닝 트리 프로토콜의 개념 및 원리는 아래와 같이 R1 -> R2로 가는 경로가 2개 이상이 되었을 경우
Looping 현상이 발생하는 것을 방지하기 위해 사용한다.
위 와 같이 R1 -> R2로 갈 수 있는 경로가 2개 이상일 때 STP를 사용하면 아래처럼
STP가 여러 항목을 통해 최적의 우선 경로 순위를 선정해 그 경로를 제외한 나머지는 차단 시킨다.
STP가 설정된 환경에서 장애 발생 시
아래처럼 STP가 강제로 1개의 경로로만 만들었기 때문에 그 경로가 장애가 생겼을 경우
통신이 끊길 수도 있지만, 링크 장애 발생 시 자동으로 Down 시키고 나머지 링크를 Up 시킨다.
장애 발생시 해당 링크를 Down시키고 아래처럼 다른 경로를 Up
'일 > Network' 카테고리의 다른 글
IP 역추적 네트워크 단말기로 역추적 하기 (0) | 2024.10.15 |
---|---|
데이터가 전달되는 과정 TCP/IP 통신 과정 (2) | 2024.07.25 |
[L3 개념] PAT (Port Address Translation) 개념 정리 (0) | 2021.12.04 |
[L3 개념] NAT SNAT DNAT 네트워크 주소 변환 개념 , 정리 (0) | 2021.12.02 |
[TCP/IP 개념] 세션의 시작과 종료 3way , 4way Handshake (0) | 2021.11.18 |