DOI QR코드

DOI QR Code

Availability Analysis of 2N Redundancy System Using Stochastic Models

안정적인 서비스를 위한 2N 이중화 모델의 가용도 분석

  • Kim, Dong Hyun (school of Computer Science & Engineering, Pusan National University) ;
  • Lee, Yutae (Department of Information and Communications Engineering, Dongeui University)
  • Received : 2014.09.17
  • Accepted : 2014.10.20
  • Published : 2014.11.30

Abstract

The idea of redundancy is used in order to improve the availability of networks and systems and there are various methods for implementing redundancy. To perform the availability analysis various stochastic models have been used. In this paper, 2N redundancy with one active service unit and one standby service unit is considered. To evaluate the expected availability, we model 2N redundancy using Stochastic Reward Nets. This model can be solved using the SPNP package.

시스템 및 네트워크의 안정적인 서비스를 위한 기본적인 구조로 다양한 이중화 방식이 있다. 또한 시스템 및 네트워크의 성능을 분석하기 위하여 페트리네트에서부터 Stochastic Reward Net(SRN)에 이르기까지 다양한 성능 분석 모형이 존재한다. 본 논문에서는 정상 상태에서 하나의 액티브 서비스 유닛과 하나의 스탠바이 서비스 유닛을 가진 2N 이중화 방식을 SRN으로 모형화 한다. 성능 분석 소프트웨어인 추계적 페트리네트 패키지 SPNP를 사용하여 2N 이중화 방식의 가용도를 분석한다.

Keywords

Ⅰ. 서 론

네트워크 시스템을 개발할 때 고려해야 할 품질 요소는 크게 시스템의 처리 효율을 나타내는 성능과 시스템의 신뢰도를 높이기 위한 안정성으로 나눌 수 있다. 신뢰도, 가용도, 보수성 등이 시스템의 안정성을 나타내는 품질 요소에 해당하고, 처리율, 응답시간, 손실확률, 지연시간 등은 시스템의 성능을 나타내는 품질 요소에 해당한다.

신뢰도 및 가용도 모델은 시스템의 구조와 구성 요소의 고장 및 복구에 근거하여 시스템의 동작 행동을 분석할 수 있어야 한다. 컴퓨터 시스템에는 가용도를 향상시키기 위한 각종 기능이 내장되어 있다. 예를 들어, 장애에 대한 내구력을 강화하기 위한 프로세서의 이중화 기능, 장애를 조기에 검출하기 위한 프로세서 진단기능, 장애의 원인 규명을 용이하게 하기 위한 보수 정보의 로깅 기능 등이 있을 수 있다.

네트워크 및 시스템의 성능 및 안정성을 분석하는 도구에는 수학적인 분석 방법과 시뮬레이션을 통한 분석방법이 있다. 수학적 분석 방법에는 응용 확률론의 한 분야인 대기 행렬 이론을 이용하는 방법이 흔히 사용되고 있다. 대기 행렬 이론은 먼저 네트워크 및 시스템을 대기 행렬 모형으로 모델링하고 모델링한 대기 행렬 모형을 다양한 확률 과정을 이용하여 수학적으로 엄밀하게 분석하는 이론이다. 네트워크 및 시스템이 복잡해짐에 따라 대기 행렬 모형으로 모델링하는데 어려움이 있으며, 일단 모델링을 했다 하더라도 수학적으로 분석하기가 어려운 경우가 많다.

본 논문에서는 복잡해지는 네트워크 모델을 손쉽게 분석하기 위하여 여러 가지 성능분석 모델에 대해 알아보고, 이를 기반으로 이중화 모델에 대한 성능을 분석하고자 한다. 이러한 이중화 시스템의 성능 분석 문제를 해결하기 위해 본 논문에서는 이중화 시스템을 Stochastic Reward Net(SRN)으로 모델링하고 이를 Stochastic Petri Net Package(SPNP)를 이용하여 분석하고자 한다[1-3].

본 논문의 구성은 다음과 같다. 2장에서는 시스템 분석 모델과 이중화 모형에 대하여 소개하고, 3장에서는 2N 이중화 모델을 SRN 모델을 이용하여 설계한다. 4장에서는 설계된 SRN 모형을 분석하기 위한 시스템 파라미터를 설명하고 설계된 2N 이중화 모델의 성능을 분석한다. 5장에서는 논문의 결론을 맺고 향후 연구 방향을 소개한다.

 

Ⅱ. 관련연구

2.1. 시스템 분석모델

네트워크나 시스템을 모델링하는데 사용하는 대표적인 도구로서 페트리 네트가 있다. 페트리 네트는 장소, 천이, 토큰 등으로 구성되는데, 장소는 원으로, 천이는 막대로, 토큰은 점이나 숫자로 나타낸다. 토큰은 한장소로부터 천이를 거쳐서 다른 장소로 움직이며, 이때 천이의 통과를 발사라고 한다. 천이의 각 입력 장소에 적어도 하나의 토큰이 있으면 그 천이는 활성화되었다고 한다[4].

추계적 페트리 네트는 모델 규격을 명세화 할 수 있는 다양한 그래픽 기능을 가지고 있으며 대응되는 연속시간 마르코프 체인의 해에 의해 페트리 네트 모델의 해를 구할 수 있다. 추계적 페트리 네트는 각 천이에 발사시간을 할당한 페트리 네트의 확장모델이다. 발사시간이 지수분포를 따르는 천이를 시간천이라 하고, 시간의 지체 없이 바로 발사되는 천이를 즉시천이라고 한다[5].

확장된 추계적 페트리 네트는 최소한 하나의 즉시 천이가 발사 가능한 무형마킹과 시간 천이들의 마킹인 유형마킹으로 구성된다. 여기서 마킹이란 페트리 네트의 상태를 나타내는 것으로 토큰들이 할당된 장소나 개수가 같지 않으면 서로 다른 마킹에 해당된다[5].

확장된 추계적 페트리 네트에 모델링 기능을 강화하여 복잡한 시스템을 간결한 모형으로 모델링할 수 있도록 해 주는 모델이 바로 SRN이다. 이 SRN에서는 각 유형 마킹에 하나 이상의 보상율을 배정할 수 있다. 시간천이의 발사율, 다수의 입출력 아크, 그리고 마킹에 대한 보상율과 같은 파라미터는 SRN에서 장소에 있는 토큰 수에 대한 함수로 나타난다. SRN에서 모든 출력 값은 보상율 함수의 기댓값으로 표현된다. SRN 모델에 적당한 보상 값을 할당하여 시스템의 성능 값을 구할 수 있다.

이 SRN 모형은 모형에 따라 수학적으로 엄밀히 분석하는 것이 가능할 수도 있고, 수치적으로 분석할 수도있으며, 시뮬레이션을 통한 분석이 가능할 수도 있다. SRN 모형의 장점은 시스템의 동작 원리만 알면 분석을 위한 모델링 작업이 어렵지 않다는 데 있다.

SRN 모델의 해를 구하기 위해 소프트웨어 도구인 SPNP를 사용한다. SPNP에 대한 자세한 설명은 [5]를 참고한다. SRN은 SPNP에 의해 마르코프 보상 모델(Markov Reward Model)로 변환되며, 마르코프 보상 모델의 성능분석으로 SRN에서 지정한 성능을 구하게 된다. 즉 SRN 모델은 다음 단계에 의하여 해석적, 수치적으로 해를 구할 수 있다[6].

첫째, 모델로부터 도달성 그래프가 생성된다. 둘째, 도달성 그래프는 마르코프 보상 모델로 변환된다. 셋째, 마르코프 보상 모델로부터 수치적으로 해를 구한다. 마지막으로 구한 해의 기댓값으로 성능을 계산한다.

2.2. 이중화 기술

이중화 기술은 복수의 시스템을 이용해 서비스를 구성하여 장애 발생 시에도 그 가용성을 극대화시킬 수있다.

알려진 이중화 모델에는 2N 이중화, N+M 이중화, N-way 이중화, N-way Active 이중화 기법 등이 있고 본 논문에서는 다양한 이중화 기법 중 2N 이중화 기법에 대하여 설명하고 그 성능을 분석한다.

2N 이중화 모델에서 Service Group(SG)에는 모든 Service Instance(SI)에 대하여 액티브한 하나의 Service Unit(SU)과 모든 SI에 대하여 스탠바이인 하나의 SU가 존재한다. 각 SI에는 많아야 하나의 액티브 SU와 스탠바이 SU가 할당된다[7].

 

Ⅲ. 2N 이중화 모형의 SRN 모델

2N 이중화 모형의 SRN 모델을 설명하기 전에 이중화를 하지 않은 단일 시스템의 SRN모델에 대하여 알아본다.

단일 시스템은 한 개의 SU가 한 개의 SG로 동작한다. 하나의 SU는 액티브 상태로 동작하다 장애가 발생하면 수리하여 다시 액티브 상태로 동작한다. 그림 1은 단일 시스템의 SRN 모델을 나타내었다.

그림 1.단일 시스템의 SRN 모형 Fig. 1 SRN model of single system

본 논문에서는 두 개의 SU로 이루어진 한 개의 SG를 다룬다. 두 개의 SU를 각각 SU1, SU2라 한다. SG는2N 이중화 구조로 동작하는데, 정상상태에서 두 SU 중 하나는 액티브 상태에 있게 되고, 다른 하나는 스탠바이 상태에 있게 된다.

그림 2는 SU가 두 개인 2N 이중화 모형의 SRN 모델 이다. 모델은 [8]의 SRN 모형을 참고하여 설계하였다. 각 SU는 active, standby, active_faulty, standby_faulty, unistantiated, instantiated 중 하나의 상태에 있게 되고, 이 상태를 각각 하나의 장소로 표시하였다. 천이 Tiaf와 Tisf는 SUi가 각각 액티브 상태와 스탠바이 상태에서 결함이 발생하는 것을 나타내는데, 정상 상태에서 결함이 발생할 때까지의 시간은 발생률이 각각 λiaf와 λisf인 지수 분포를 따른다고 가정한다. 천이 Tiac와 Tisc는 SUi가 각각 active_faulty 상태와 standby_faulty 상태에서 cleanup 과정을 수행하는 것을 나타내는데, 그 기간은 rate이 각각 λiac와 λisc인 지수분포를 따른다고 가정한다. 천이 Tiwa는 SUi를 인스턴트화하는 과정을 나타내며 그 기간은 rate이 λiwa인 지수 분포를 따른다고 가정한다.

그림 2.2N 이중화 시스템의 SRN 모형[8] Fig. 2 SRN model of 2N redundancy system[8]

천이 Tisa_aa는 SUi가 스탠바이 상태에서 액티브 상태로 전환하는 것을 나타내며, guard 조건 Gisa_aa를 만족할 때 활성화되어 천이를 완료하는데 걸리는 시간은 rate이 λisa_aa인 지수분포를 따른다고 가정한다. 천이 Tisa와 Tiaa는 instantiated 된 SUi가 각각 스탠바이 상태와 액티브 상태로 전환하는 것을 나타내며, 각각 guard 조건 Gisa와 Giaa를 만족할 때 활성화되어 천이를 완료하는데 걸리는 시간은 rate이 각각 λisa와 λiaa인 지수 분포를 따른다고 가정한다.

이중화 모형의 각 천이에 대한 guard 조건은 표1과 같다[8].

표 1.2N 이중화 모형의 guard 조건 Table. 1 Guard conditions of 2N redundancy model

 

Ⅳ. 2N 이중화 모형의 성능평가

4.1. 성능분석을 위한 시스템 파라미터

2N 이중화 모델의 성능평가지표로 가용도를 이용한다. 가용도란 이용자의 입장에서 보아 어느 정도 사용할 수 있는가 하는 것을 표시하는 것으로 임의의 시간에 시스템이 가용한 상태에 있을 확률로 계산할 수있다.

표2는 가용도를 구하기 위해 SU가 두 개인 2N 이중화 시스템의 가용도를 분석하기 위한 파라미터 값이다. 이 파라미터 값 중 일부는 [8]에서 제시한 값을 사용하였다.

표 2.SU가 두 개인 2N 이중화 모형의 성능평가 파라미터 Table. 2 Performance parameters of 2N redundancy model with two SUs

4.2. 2N 이중화 시스템의 가용도

그림 1와 같은 단일 시스템을 표2의 파라미터를 사용하여 가용도를 분석하면 99.9984%로 99.999%(five nines)의 가용도에 미치지 못한다.

본 절에서는 SU가 두 개인 2N 이중화 시스템을 고려했을 때 가용도가 얼마나 향상되는지 알아본다. 이 경우에 시스템은 하나의 액티브 SU와 하나의 스탠바이SU로 구성되며 스페어 SU는 존재하지 않는다.

표 3은 1/λsa의 값을 100 ms로 설정하고, 1/λaa의 값이 100 ms, 200 ms, 300 ms, 400 ms, 500 ms인 경우 각각에 대하여, 스탠바이 SU를 액티브 SU로 전환하는 시간(1/λsa_aa)을 100 ms에서 500 ms까지 변화시키면서 2N 이중화 시스템의 가용도를 분석한 것이다. 스탠바이 에서 액티브로 전환하는 시간이 길어짐에 따라 가용도가 낮아지는 것을 알 수 있다. 또한 표2의 시스템 파라미터를 적용했을 때, 99.999%(five nines)의 가용도를 얻기 위해서는 스탠바이 SU를 액티브 SU로 전환하는 시간(1/λsa_aa)을 400 ms이하로 유지할 필요가 있다는 것을 표 3을 통해 알 수 있다.

표 3.SU가 두 개인 2N 이중화 시스템에서 1/λ sa_aa과 1/λ aa에 따른 가용도(%) Table. 3 Availability of 2N redundancy system in two SUs according to 1/λ sa_aa and 1/λ aa(%)

표 4는 1/λaa의 값을 500 ms로 설정하고, 1/λsa의 값이 100 ms, 200 ms, 300 ms, 400 ms, 500 ms인 경우 각각에 대하여, 스탠바이 SU를 액티브 SU로 전환하는시간(1/λsa_aa)을 100 ms에서 500 ms까지 변화시키면서 2N 이중화 시스템의 가용도를 분석한 것이다. 이러한 환경에서도 스탠바이에서 액티브로 전환하는 시간이 길어짐에 따라 가용도가 낮아지는 것을 알 수 있다. 또한 표2의 시스템 파라미터를 적용했을 때, 99.999% (five nines)의 가용도를 얻기 위해서는 스탠바이 SU을 액티브 SU로 전환하는 시간(1/λsa_aa)을 400 ms이하 로 유지할 필요가 있다는 것을 표4를 통해서도 알 수 있다.

표 4.SU가 2개인 2N 이중화 시스템에서 1/λsa_aa과 1/λsa에 따른 가용도(%) Table. 4 Availability of 2N redundancy system in two SUs according to 1/λ sa_aa and 1/λ sa(%)

 

Ⅴ. 결론 및 향후 연구

본 연구는 안정적인 서비스를 위한 2N 이중화 모델의 가용도를 분석하는 연구로 먼저 성능분석 모델에 대하여 설명하였다. 복잡한 이중화 시스템을 효율적으로 분석하기 위해 SRN을 기반으로 이중화 모형을 모델링 하였고, 이것을 SPNP를 이용하여 구현하였다. 구현된 2N 이중화 모델의 SPNP 모형을 이용하여 시스템 변수에 따른 가용도를 분석하였다.

향후, 다양한 시스템 변수에 따른 가용도 분석 기법과 시스템 변수들 간의 가용도 향상 방법에 대하여 연구할 것이다. 또한 2N 이중화와 다른 N+M, N-way, N-way Active 등의 이중화 방식의 성능을 비교할 것이다.

References

  1. K. S. Trivedi, J. K. Muppala, S. P. Woolet, and B. R. Haverkort, "Composite performance and dependability analysis," Performance Evaluation, vol. 14, pp. 197-215, 1992. https://doi.org/10.1016/0166-5316(92)90004-Z
  2. B. R. Haverkort, "Approximate performability and dependability modeling using generalized stochastic Petri nets," Performance Evaluation, vol. 18, pp.61-78, 1993. https://doi.org/10.1016/0166-5316(93)90027-R
  3. A. Bobbio and K. S. Trivedi, "Computing cumulative measures of stiff Markov chains using aggregation," IEEE Transaction on Computers, vol. 39, no. 10, pp.1291-1298, 1990. https://doi.org/10.1109/12.59859
  4. M. Malhotra, J. K. Muppala, and K. S. Trivedi, "Stiffnesstolerant methods for transient analysis of stiff Markov chains," Microelectron. Relib., vol. 34, no. 11, pp.1825-1841, 1994. https://doi.org/10.1016/0026-2714(94)90137-6
  5. G. Ciardo and K. S. Trivedi, "SPNP Users Manual, Version 6.0," Duke University, Technical report, 1999.
  6. V. Mainkar and K. S. Trivedi, "Sufficient conditions for existence of a fixed point stochastic reward net-based iterative models," IEEE Transaction on Software Engineering, vol. 22, no. 9, pp.640-653, Sep., 1996. https://doi.org/10.1109/32.541435
  7. The Service Availability Forum, Application Interface Specification, April 2003, http://www.saforum.org.
  8. A. Kanso, F. Khendek, A. Mishra, and M. Toeroe, "Integrating Legacy Applications for High Availability: a Case Study", in Proceeding of the 2011 IEEE 13th International Symposium on High-Assurance Systems Engineering, pp. 83-90, 2011.