- 데이터 센터에서 사용하는 네트워크 토폴로지는 크게 두 가지가 있다.
- 하나는 기존의 3-Tier구조 (Access → Aggregation → Core)
- 또 다른 하나가 Spine-Leaf구조이다.
기존의 3티어 구조
- Access → Aggregation → Core구조로 올라가는 형식이다.
→ 위로 갈수록 트래픽이 집중됨 → 병목 가능성 높음.
- 예전에는 사용자 →서버, 서버→ 사용자의 남북트래픽(수직적 트래픽) 이 많았지만
- 점차 기술이 발전하면서, 서버와서버, VM과 VM, 컨테이너와 컨테이너등 동서트래픽(수평트래픽)이 많아졌는데 이런 상황에 3 Tier구조는 비효율적일 수 밖에없다. (위 아래로 움직이니까(
- 추가적으로 스위치를 추가하면 구조가 점점 더 복잡해졌고, 성능을 균일하게 유지하기가어려웠다.
- 물론 물리적인 선으로 보면 여러 많은 링크가 존재하지만 루프방지등을 목적으로 STP프로토콜 같은 걸 써서 경로 일부분을 막기도하면서 선이 많아보여도 실제 활용률은 Spine-leaf구조보다 낮다.
spine-leaf구조
- Leaf(리프 스위치) : 서버들이 직접 연결되는 스위치(Acess역할)
- Spine(스파인 스위치) : Leaf들을 서로 연결해주는 핵심 스위치
이때 모든 Leaf는 모든 Spine과 연결되며 leaf끼리의 통신은 반드시 spine을 거친다.
- 스파인 리프 구조는 Core가 없고, 여러개의 Spine으로 트래픽을 분산시키기 때문에 병목이 많이 제거된다.
- 또한 모든 Leaf와 Leaf사이의 거리가 2hop으로 거리가 동일하다. (Leaf → Spine → Leaf)
- spine을 추가하면 용량이 증가하고, Leaf가 추가되면 서버 수가 증가하는 등 구조 자체가 확장이 유리하다.
- ECMP(Equal Cost Multi Path) : 여러 경로를 동시에 사용하여 트래픽을 자동 분산한다.
- L3기반 fabric으로 설계됨.
- 여러 Spine으로 갈 수 있다면 ECMP로 동시에 나눠서 쓴다. (spine 1,2,3에 트래픽을 분배해서 )