...
각 채널의 연결을 원격 DRBD까지 통합하여 표현하면 다음과 같다.
Drawio | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
- Acceptor
- 리소스 파일의 outside IP/Port를 통해 원격 DRX의 접속을 받는다.
- 리소스 파일의 inside IP/Port를 통해 로컬 DRBD의 접속을 받는다.
- Connector
- 원격 DRX의 outside IP/Port로 접속한다.
- 로컬 DRBD에 접속한다.
...
정상적인 연결시 채널별 상태 변화는 다음과 같다.
Drawio | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
연결이 끊길 경우의 상태 변화:
- 로컬 DRBD와의 연결이 끊긴 경우
- 연결 종료를 위해 두 채널 모두 stopping 상태로 전환된다. (data 채널은 BAB를 비우기 위해 먼저 close pending 상태를 거치게 된다.)
- 연결을 종료하는 작업이 완료되면 stopped 상태로 전환된다.
- 로컬 DRBD와의 재 연결을 위해 connecting / waiting 상태로 전환된다.
- 원격 DRBD와 원격 DRX 사이의 연결이 끊긴 경우
- 위의 로컬 DRBD와의 연결이 끊긴 경우의 상황이 원격 DRX에서 발생하면서, 로컬 DRX도 같은 순서로 stopping, stopped를 거쳐 connecting / waiting 상태로 전환된다.
- 로컬 DRBD는 재 연결이 가능하므로 즉시 DRBD로부터 접속이 이루어진다.
- Acceptor에 DRBD가 연결되어 connected를 거쳐 establishing 상태로 전환된다.
- Connector는 원격 DRX가 원격 DRBD와 연결되지 않았으므로 connecting 상태로 유지된다.
- 원격 DRX와의 연결이 끊기는 경우
- 연결 종료를 위해 두 채널 모두 stopping 상태로 전환된다. (data 채널은 BAB를 비우기 위해 먼저 close pending 상태를 거치게 된다.)
- 연결을 종료하는 작업이 완료되면 stopped 상태로 전환된다.
- 원격 DRX와의 재 연결을 위해 bridging 상태로 전환된다.
...