728x90

오블완 10

Distributed System 15

Fault Tolerance 이어서Consensus: 합의하나 이상의 시스템이 값을 제안할 때, 시스템들이 어떻게 합의하여 하나의 값을 결정할까?전제 조건(Prerequisite)이 있는데, 결함 허용 프로세스 그룹에서는 모든 비결함 프로세스가 다른 비결함 프로세스와 동일한 명령을 동일한 순서로 실행해야된다는 것이다. 이 말은, 비결함 그룹 구성원들은 다음에 실행할 명령에 대해 합의해야된다는 것이다.Flooding-based Consensus 시스템에는 프로세스 그룹 P = {$P_1, ... P_n$}이 있고, Fail-stop 실패 의미론(신뢰할 수 있는 실패 감지 기능)을 가정한다. 클라이언트가  특정 프로세스 $P_i$에 접촉하여 명령 실행을 요청하면, 모든 $P_i$는 제안된 명령 목록을 유지한..

DKU/분산처리 2024.11.21

Error Control 6

Performance of FEC Channel Model채널의 모델에는 다양한 종류가 존재한다. Performance anaylsis of (3, 1) Repetition Code 성능 분석을 위한 환경 가정을 먼저 해보겠다.각 전송된 기호는 독립적으로 0 또는 1일 가능성이 같고, 기호 오류 확률은 $\epsilon \in [0, 1/2]$이다.  코드 되지 않은 경우의 검출 실패 확률코드 되지 않은 경우는 데이터가 전송될 때 오류 검출 및 수정 코드 없이 전송되는 것이다.기호 오류 확률 $\epsilon$이 주어졌을 때, 전체 오류가 발생할 확률(전송된 기호가 수신될 때 원래의 값과 달라지는 경우)은 다음과 같다. P(A) = 0 (정상적인 경우)와 P(B) = $\epsilon$(오류가 발생한 경..

Error Control 5

FEC 이어서(7, 4) Hamming CodeEncoding인코더로의 input word는 $U = (U_1, U_2, U_3, U_4)$이며, 모든 $i \in \left\{1,2,3,4\right\}$에 대해 $U_i \in \left\{0,1\right\}$이다.인코더에서 생성된 output word는 $X = (X_1, ..., X_7)$이며, 모든 $j \in \left\{1,2,...,7\right\}$에 대해 $X_j \in \left\{0,1\right\}$이다. 인코딩 규칙과 그에 따른 코드워드는 아래와 같다. Encoding: 생성행렬(7, 4) 해밍코드의 생성 행렬(Generator matrix) G는 4×7 행렬로 표현된다. 생성행렬을 통한 인코딩은 $X = UG$로 생성된다. 첫..

Distributed System 14

Fault ToleranceDependability: 신뢰성컴포넌트는 클라이언트에게 서비스를 제공한다. 그리고 서비스를 제공하기 위해 그 컴포넌트는 다른 컴포넌트의 서비스를 필요로 할 수 있다. 즉, 컴포넌트는 다른 컴포넌트에 의존할 수 있다는 것이다.다음은 신뢰성과 관련된 요구사항들이다.Availability(가용성): 사용 가능Reliability(신뢰성): 서비스의 연속적 제공Safety(안전성):  아주 낮은 재앙(catastrophes) 가능성Maintainability(유지보수성): 수리하기 용이컴포넌트 C가 시간 T = 0에서 정상적으로 작동한 상태에서 [0, t) 동안 정상적으로 작동할 확률을 Reliability R(t) 라고한다.Mean Time To Failure, MTTF (평균 고..

DKU/분산처리 2024.11.18

ARQ for Deep Space Communications 과제 분석

과제의 내용은 ARQ 심층 우주 통신 중 갈릴레오 우주선의 목성 탐사 임무에 대한 내용이였다.목성을 탐사한 시스템이 지구로 사진을 보내기 위해 Stop and Wait ARQ를 사용했을 때의 성능을 분석하는 것이다. 1. Let $N_P$ denote the length of the packet(the number of binary digits that comprise a packet), calculate $N_P$. 먼저 사진 한 장의 bit를 계산해 보면, 100(lines)×100(pixels)×10(bits) = 100000 bits 이다.여기서 한 장의 사진은 100개의 패킷들로 이루어져 있으므로, 100000bits / 100packets = 1000 bits가 된다.$N_P$ = 1000 b..

Error Control 4

Forward  Error Correction, FEC (전진 오류 수정)FEC는 송신자가 패킷에 특수 기능을 추가하여 수신자가 수신된 패킷의 오류를 수정할 수 있도록 한다. 송신기의 인코딩송신기가 수신기로 전송할 이진 기호 스트림이 있다고 가정한다. 이진 기호 스트림은 길이 k인 기호 블록으로 분할된다. 이러한 기호 블록은 인코더에 입력하는 input word라고 하며, $U = (U_1, ..., U_k)$로 표시된다. 여기서 모든 $i \in \left\{1, ..., k\right\}$에 대해 $U_i \in \left\{1, 0\right\}$ 이다. input word는 $\left\{0, 1\right\}^k$ 집합에서 $2^k$개의 값 중 하나를 가질 수 있다. 인코더는 길이 k인 inpu..

Error Control 3

Selective Repeat ARQ큐에 패킷이 있고 전송할 준비가 되었다면, 맨 앞에 있는 패킷을 전송한다. 그리고 이 패킷에 대한 ACK timer를 시작한다.큐에서 아직 전송된 적이 없는 후속 패킷들도 전송하는데, 각 패킷에 대한 ACK timer를 시작한다.타임아웃 기간 내에 ACK을 수신했는지 확인한다. ACK을 수신한 경우, 인증된 패킷을 큐에서 제거하고, 후속 패킷들을 전송하며 ACK 타이머 또한 작동시킨다. 만약 ACK을 수신하지 못한 경우, 큐에서 ACK을 받지 못한 패킷을 재전송하며 이 패킷에 대한 ACK timer를 다시 시작한다. 이후에 후속 패킷들을 전송하며 ACK 타이머 또한 작동시킨다. Stop and Wait ARQ나, Go and Back ARQ 같은 경우에는 타이머를 하나..

Error Control 2

전 글에서는 Stop and Wait ARQ에 대해서 배웠다.이번 글에서는 Go Back N ARQ에 대해 알아볼 것이다.Go Back N ARQ먼저 Go Back N ARQ 에서 송신자와 수신자가 어떻게 작동하는지 알아보자.대기열의 맨 앞에 패킷이 있고, 전송할 준비가 되었다면 해당 패킷을 전송한다.ACK timer를 시작하고 대기열의 후속 패킷을 전송한다. 전송되었지만 아직 확인되지 않은 패킷 수가 N을 초과하지 않는 한 계속 전송이 가능하다.타임 아웃 기간 내에 ACK를 수신했는지 확인한다. 수신했다면, 대기열의 맨 앞에 있는 패킷을 제거하고, 새로운 대기열의 맨 앞 패킷에 대한 ACK 타이머를 갱신한다. 이때도 역시 대기열의 후속 패킷을 전송하되, 전송되었지만 아직 확인되지 않은 패킷 수가 N을 ..

Error Control

수신자가 받은 패킷이 송신자가 보낸 패킷과 다를 때, 해당 패킷에서 오류가 발생했다고 얘기한다.이러한 오류는 잡음과 간섭에 의해 발생할 수 있다. 오류의 주요 원인들로는,전자들의 무작위 운동자연 현상: 번개, 태양 흑점 등인간 활동: 전기 점화 시스템, 모터 및 스위칭 시스템 등기호 간 간섭(Inter-symbol interference): 인접한 신호가 서로 영향을 미치는 현상혼선(Crosstalk): 신호 간의 전자기적 결합에 의해 발생하는 현상에코: 부적절하게 끝난 회로에서 먼 쪽으로부터 전자기 에너지가 반사되는 현상등이 존재한다. 오류를 제어하는 방식은 두 가지로 분류된다.closed-loop error control scheme(폐쇄 루프 오류 제어 방식): automatic repeat req..

Distributed System 13

이전 글에서는 데이터 중심의 일관성 모델에 대해서 알아봤다.이번엔 클라이언트 중심 일관성 모델에 대해서 알아보자. Client-centric Consistency Models: 클라이언트 중심 일관성 모델데이터 중심 일관성 모델은 데이터 저장소에 대해 시스템 전체의 일관성 보장을 목표로 한다.하지만 클라이언트 중심 일관성 모델은 주로 동시 업데이트가 거의 없는 애플리케이션에 사용되기 때문에, 대부분의 연산은 데이터를 읽는데 중점을 둔다.따라서 매우 약한 일관성이 특징이다. 시스템 전반의 일관성을 유지하기 보다는, 특정 클라이언트의 요구에 집중함으로써 시스템 전체의 일관성을 피할 수 있는 방법을 보여준다. 대부분의 대규모 분산 시스템은 확장성을 위해 복제를 적용하지만, 약한 일관성만 지원한다.예들 들어, ..

DKU/분산처리 2024.11.11
728x90