스위치

데브tty·2021년 9월 29일
0

네트워크

목록 보기
4/4

스위치

스위치는 2계층에서 MAC 주소를 기반으로 동작하는 하드웨어 장비이다. 스위치는 네트워크 중간에서 패킷을 받아 필요한 곳에만 패킷을 전달하는 동작을 수행한다. 이외에도 한대의 장비에서 논리적으로 네트워크를 분리할 수 있는 VLAN 기능과 네트워크 루프를 방지하는 스패닝 트리 프로토콜(STP)과 같은 기능을 가지고 있다.

PDU(헤더 + 데이터) 명칭 종류
1 계층 PDU : 비트
2계층 PDU : 프레임
3계층 PDU : 패킷
4계층 PUD : 세그먼트
5 ~ 7계층 PDU : 데이터

스위치 동작

스위치는 네트워크 통신을 중재하는 장비이다. 패킷 전송 경쟁을 없애고, 간섭 없이 통신을 가능하게 하도록 도와준다. 핵심 역할은 위치 파악과 해당 위치로 정확히 전송하는 일을 한다. MAC 주소 기반으로 동작하기 때문에 MAC 주소 테이블을 가지고 있다.

MAC 테이블은 MAC 주소와 포트로 짝을 이룬다. MAC 주소를 확인 후 해당 주소를 가진 포트로만 패킷을 전송한다.

스위치의 동작방식은 3가지로 구분 된다.
1. 플러딩
2. 어드레스 러닝
3. 포워딩/필터링

플러딩

스위치를 처음 부팅하면 스위치는 아무런 정보를 가지고 있지 않다. 이때는 통신 중재를 하지 못하고 허브처럼 기본적인 동작만을 한다. 허브처럼 동작하는 것을 플러딩이라 부른다.

허브는 들어온 패킷은 모두에게 전송한다. (브로드캐스트)

어드레스 러닝

패킷이 스위치에 들어오면 MAC 주소 테이블을 위해 해당 패킷을 출발지 주소와 포트 번호를 MAC 주소 테이블에 기록한다.

포워딩/필터링

MAC 주소가 일치하는 포트에 패킷을 보내는 행위를 포워딩 이라고한다. 이때 다른 포트에는 전송하지 않는데 이것을 필터링이라고 한다. 스위치에서는 포워딩과 필터링 작업이 동시에 이루어 질 수 있다.


VLAN

VLAN은 물리적 배치와 상관없이 LAN을 논리적을 분할, 구성하는 기술이다. VLAN은 논리적으로 분리한 네트워크 이므로 브로드캐스트, 유니캐스트로 통신할 수 없다. 브로트캐스트, 유니캐스트로 통신을 하기위해선 3계층 장비가 필요하다.

VLAN 동작 방식

내용이 방대하여, 정보를 원하는 경우 직접 찾아보자...!


STP

SPoF(Single Point of Failure)로 인한 전체 시스템 장애는 서비스에 있어 치명적이다. 이러한 것을 막기 위해 이중화 혹은 다중화 네트워크를 디자인하려고 노력한다.

네트워크를 스위치 1개로 구성한 경우 해당 스위치에 장애가 발생하면 전체 시스템이 장애를 겪는다.

SpoF를 막기위해 스위치를 2대 이상으로 구성했다고 가정해 보자. 이러한 스위치 디자인은 패킷이 네트워크를 따라 루프를 돌면서 장애를 발생시킬 수 있다. 이를 네트워크 Loop라고 부른다.

네트워크 루프(브로드캐스트 스톰)

루프 형태로 디자인된 스위치들에서 브로드캐스트가 들어온 경우, 입력된 포트를 제외한 모든 포트로 브로드캐스트가 전송된다. 스위치가 서로 연결 되어 있는 경우 브로드캐스트가 무한히 돌게 된다. 이는 네트워크 속도 저하를 유발한다.

네트워크 루프(MAC 러닝 중복 문제)

루프 형태로 디자인된 스위치에서 유니캐스트도 문제를 일으킨다. 스위치는 출발지 MAC 주소를 학습하는데 직접 전달되는 패킷과 스위치를 돌아 들어간 패킷 간의 포트가 달라 MAC 주소를 정상적으로 학습 할 수 없다. 이러한 현상을 MAC 어드레스 플래핑 이라고 부른다.

STP는 루프를 확인하고 적절히 포트를 사용하지 못하게 만들어 루프를 예방하는 매커니즘이다. STP는 전체적인 스위치 연결 상황 파악을 위해 BPDU(Bridge Protocol Data Unit)을 스위치 간에 전달하고 수집된 정보를 이용해 네트워크 트리를 만들어 루프 구간을 확인한다.

향상된 STP(RSTP, MST)

STP는 루프를 예방하기 위해 BPDU가 전달되는 시간을 고려한다. 이는 30 ~ 50초가 소요되는데 이는 TCP 기반 애플리케이션이 네트워크가 끊겼을때 30초를 기다리지 못하므로 STP 기반의 네트워크에 장애가 생기면 통신이 끊기게 된다. 이러한 현상을 해결하기 위해 RSTP, MST가 개발 되었다.

RSTP

RSTP는 기존의 STP가 30 ~ 50초가 소비되던 것을 3 ~ 5초로 줄인 매커니즘이다. 기본적인 작동 방식은 STP와 같으며 BPDU의 형식이 다양해져 이를 활용하여 루프를 감지한다. RSTP는 토폴로지 변경이 일어난 스위 자신이 모든 네트워케에 토폴로지 변경을 직접 전파한다.

MST

MST의 기본적인 아이디어는 매우 단순하다. 여러개의 VLAN을 그룹으로 묶고 그룹마다 별도의 STP가 동작한다.

STP는 루프 예방에 필수적이지만 스위치에 부담을 준다. 이러한 문제들을 해결하기 위해 PortFast, Uplink Fast, BackboneFast와 같은 기능들이 많지만 잘못 사용하는 경우 장애 발생의 원인이 되기도 한다. 이외에도 다양한 방법이 있으니 찾아보길 바란다.

profile
dev띠

0개의 댓글