SWIM 프로토콜

SWIM Protocol
SWIM "아웃소싱 하트비트"

확장성이 약한 감염 스타일의 프로세스 그룹 멤버십(SWIM) 프로토콜은 분산 시스템에서 사용되는 "아웃소싱 하트비트"[1]에 기반한 그룹 멤버십 프로토콜로, 2001년 [2][3]Indranil Gupta에 의해 처음 도입되었습니다.장애 검출과 그룹 멤버쉽 전파를 조합한 하이브리드 알고리즘입니다.

프로토콜

프로토콜에는 고장 감지기 구성 요소전파 구성 요소라는 두 가지 구성 요소가 있습니다.

Failure Detector Component는 다음과 같이 작동합니다.

  1. T' 단위마다 각 노드 1 \ N_)는 멤버십목록 내의 임의의 다른 ( 2 \ 2에 ping을 전송합니다.
  2. 1 2({로부터 응답을 수신한 N 2({ N_}})는 정상으로 판단되고 N1은 N({}})에 대한 "마지막 수신된" 타임스탬프를 현재 시간으로 업데이트합니다.
  3. 1 응답을 수신하지 N 1 목록에 있는 k개의 다른 노드 3, + }({ N_3+k}\})문의하여 N 2+k})에합니다
  4. T' 시간 단위 이후: 응답이 정상적으로 수신되지 않으면 1 N 실패로 합니다.

보급 구성요소는 다음과 같이 작동합니다.

  • 장애가 발생한 하면 가 발생한 노드에 대한 정보를 포함한 멀티캐스트메시지를 멤버쉽목록의 나머지 노드에 보냅니다.
  • 그룹에 들어가거나 나가는 노드에 대한 자발적인 요구도 멀티캐스트를 통해 전송됩니다.

특성.

이 프로토콜은 다음과 같은 보증을 제공합니다.

  • 뛰어난 완성도:완전한 완전성이 보증됩니다(예: 그룹 내 노드의 크래시 장애는 결국 모든 라이브 노드에 의해 검출됩니다).
  • 탐지 시간:노드 장애에서 검출까지의 예상 시간 값은 T value 1 -- f {\이며, {\ T 프로토콜 기간의 이고 {{ style fruction이다.

내선번호

원래 SWIM 문서에는 프로토콜을 보다 [2]견고하게 하기 위해 다음과 같은 확장 기능이 나와 있습니다.

  • 의심:ping 메시지에 응답하지 않는 노드는 처음에는 장애로 표시되지 않습니다.대신에, 이러한 노드는 「의심」이라고 마크 됩니다.「의심」노드를 검출한 노드는, 이 메카니즘을 포함한 다른 모든 노드에 멀티 캐스트를 송신합니다.타임아웃 임계값 전에 '의심스러운' 노드가 ping에 응답하면 'alive' 메시지가 멀티캐스트를 통해 전송되어 노드에서 '의심스러운' 라벨이 삭제됩니다.
  • 감염 스타일의 전파:멀티 캐스트를 통해 노드 장애 정보를 전파하는 대신 프로토콜 메시지는 노드 활성 판정에 사용되는 ping 메시지에 따라 피기백됩니다.이것은 가십 유포에 해당한다.
  • 라운드 로빈 프로브 타깃 선택:각 프로토콜 시간 단계 동안 무작위로 프로브할 노드를 선택하는 대신, 프로토콜은 각 노드가 프로브 타깃의 라운드 로빈 선택을 수행하도록 수정된다.이는 평균 탐지 시간을 저하시키지 않고 프로토콜의 최악의 탐지 시간을 제한합니다.

참고 항목

레퍼런스

  1. ^ Petrov, Alex (2019). Database Internals. O'Reilly Media.
  2. ^ a b Gupta, Indranil; Chandra, Tushar D.; Goldszmidt, Germán S. (August 1, 2001). "On scalable and efficient distributed failure detectors". Proceedings of the Twentieth Annual ACM Symposium on Principles of Distributed Computing. PODC '01. Newport, Rhode Island, USA: Association for Computing Machinery: 170–179. doi:10.1145/383962.384010. ISBN 978-1-58113-383-7. S2CID 216594.
  3. ^ a b Das, A.; Gupta, I.; Motivala, A. (June 23, 2002). "SWIM: scalable weakly-consistent infection-style process group membership protocol". Proceedings International Conference on Dependable Systems and Networks: 303–312. doi:10.1109/DSN.2002.1028914. ISBN 0-7695-1597-5. S2CID 11094028.