로드 밸런싱 스위치

Load-balanced switch

로드 밸런싱 스위치는 각 패킷을 크로스바를 두 번 가로지르는 비용으로 중앙 중재 없이 100% 처리량을 보장하는 스위치 아키텍처다. 로드 밸런싱 스위치는 실용적인 중앙 중재점을 지나 규모가 큰 라우터에 대한 연구 대상이다.[vague]

소개

인터넷 라우터일반적으로 스위치와 연결된 회선 카드를 사용하여 구축된다. 적당한 총 대역폭을 지원하는 라우터는 그들의 스위치로 버스를 사용할 수 있지만, 높은 대역폭 라우터는 일반적으로 일종의 크로스바 상호연결을 사용한다. 크로스바에서는 각 출력이 하나의 입력에 연결되기 때문에 정보가 모든 출력에 동시에 흐를 수 있다. 패킷 교환에 사용되는 크로스 바는 일반적으로 초당 수천만 번 재구성된다. 이러한 구성의 스케줄은 중앙 결정자(예: Wavefront Arbiter)가 서로 정보를 전송하기 위한 라인 카드의 요청에 응답하여 결정한다.

완벽한 중재는 각 크로스바 입력 또는 출력의 최대 처리량에 의해서만 처리량이 제한될 수 있다. 예를 들어, A와 B로 들어오는 모든 트래픽이 C로 향하는 경우, A와 B가 함께 처리할 수 있는 최대 트래픽은 C에 의해 제한된다. 완벽한 중재는 크로스바에 있는 포트 수보다 훨씬 빠르게 확장되는 방대한 양의 연산이 필요한 것으로 나타났다. 실제 시스템은 합리적인 시간 단위로 계산할 수 있는 불완전한 중재 경험적 접근법(iSLIP 등)을 사용한다.

로드 밸런싱 스위치는 부하 분산 스위치와 관련이 없으며, 이는 웹 서버 팜의 프런트 엔드로 사용되는 라우터의 일종으로 요청을 많은 서버에 걸쳐 단일 웹 사이트로 분산시키는 것을 말한다.

기본 아키텍처

Load-balanced switch,basic.svg

오른쪽 그림에서 보듯이, 부하 균형 조정 스위치는 각각 속도 R의 N 입력 라인 카드를 가지고 있으며, 각각 속도 R/N의 링크에 의해 N 버퍼에 연결된다. 그 버퍼들은 각각 R/N 비율의 링크를 통해 각각 N개의 출력 라인 카드에 연결된다. 중앙의 버퍼는 N개의 가상 출력 대기열로 분할된다.

각 입력 라인 카드는 패킷을 N 버퍼로 균등하게 펼치는데, 이는 경합 없이 분명히 할 수 있는 것이다. 각 버퍼는 이러한 패킷을 R의 결합된 속도로 단일 버퍼 로컬 메모리에 기록한다. 동시에 각 버퍼는 각 가상 출력 대기열의 머리 부분에 있는 패킷을 각 출력 라인 카드에 전송하고, 다시 각 카드에 대한 R/N 속도로 전송한다. 출력 라인 카드는 이러한 패킷을 경합 없이 명확하게 라인 밖으로 전달할 수 있다.

로드 밸런싱 스위치의 각 버퍼는 공유 메모리 스위치 역할을 하며, 로드 밸런싱 스위치는 기본적으로 공유 메모리 스위치를 스케일업하는 방법이며, 패킷을 R/N 속도로 두 번 전달하는 것과 관련된 추가 대기 시간의 비용을 부담한다.

부하 분산 스위치를 조사하는 스탠포드 그룹은 버퍼 수가 라인 카드의 수와 동일한 구현에 집중하고 있다. 각 라인 카드에 버퍼 1개를 배치하고, 두 개의 상호연결 메시는 실제로 같은 메시로, 각 라인 카드 쌍 사이에 속도 2R/N을 공급한다. 그러나 기본적인 부하 분산형 스위치 구조는 버퍼를 라인 카드에 배치하거나 동일한 수의 버퍼와 라인 카드가 있을 필요가 없다.

부하 균형 조정 스위치의 한 가지 흥미로운 특성은, 비록 메쉬가 모든 라인 카드를 버퍼에 연결하기 위해 필요하지만, 메쉬가 비차단 크로스바 역할을 할 필요는 없으며, 연결부가 어떤 트래픽 패턴에도 반응할 필요는 없다는 것이다. 그러한 연결은 중앙에서 중재된 크로스바보다 훨씬 간단하다.

패킷을 순서대로 유지하는 중

동일한 출력으로 예정된 두 패킷이 한 라인 카드에 연속해서 도착하면, 두 개의 다른 수용 공간을 가질 수 있는 두 개의 다른 버퍼로 분산되어 패킷이 출력에 전달될 때까지 패킷을 다시 정렬할 수 있다. 재주문은 합법적이지만 TCP가 재주문된 패킷을 잘 수행하지 못하기 때문에 일반적으로 바람직하지 않다.

더 많은 지연 시간과 버퍼링을 추가함으로써 로드 밸런싱 스위치는 로컬 정보만 사용하여 흐름 내에서 패킷 순서를 유지할 수 있다. 그러한 알고리즘 중 하나는 FOFF(Fully Ordered Frames First)이다. FOFF는 병리학적 트래픽 패턴에 대한 취약성을 제거하고 우선순위를 구현하기 위한 메커니즘을 제공하는 추가적인 이점을 가지고 있다.

구현

단일 칩 크로스바 및 로드 밸런싱 중재자

스탠포드 대학 타이니 테라 프로젝트(Abrizio 참조)는 스위칭 패브릭 자체(크로스바 슬라이스 및 중재자)를 위해 최소 2개의 칩 설계가 필요한 스위치 아키텍처를 도입했다. 로드 밸런싱을 포함하도록 조정자를 업그레이드하고 이러한 장치를 결합하면 신뢰성, 비용 및 처리량 이점이 있을 수 있다.

단일 전역 라우터

부하 균형 조정 스위치의 라인 카드는 물리적으로 서로 가까이 있을 필요가 없으므로, 하나의 가능한 구현은 전체 대륙 또는 글로벌 크기의 백본 네트워크를 상호연결 메쉬로, 핵심 라우터를 "라인 카드"로 사용하는 것이다. 그러한 구현은 모든 지연 시간이 최악의 경우 전송 지연 시간의 두 배까지 증가하여 어려움을 겪는다. 그러나 그것은 많은 흥미로운 이점을 가지고 있다.

  • 대규모 백본 패킷 네트워크는 일반적으로 불완전한 용량 계획, 정체 및 기타 문제를 처리하기 위해 대용량(10배 이상)을 가지고 있다. 부하 분산형 스위치 백본은 전체 시스템에서 측정했을 때 단 2배의 과용량으로 100% 처리량을 제공할 수 있다.
  • 큰 백본망의 밑받침은 대개 빠르게 전환할 수 없는 광학 채널이다. 이들 채널은 부하 균형 조정 스위치 메쉬의 정속 2R/N 채널에 잘 매핑된다.
  • 글로벌 혼잡도가 없기 때문에 글로벌 혼잡정보에 근거해 노선표를 변경할 필요가 없다.
  • 노드 고장의 경우 재라우팅은 광학 채널의 구성을 변경할 필요가 있다. 그러나 경로 변경은 사전 계산될 수 있으며(실패할 수 있는 노드의 수가 한정되어 있을 뿐), 경로 변경은 추가적인 경로 테이블 변경이 필요한 혼잡함을 유발하지 않는다.

참조

외부 링크