BSR ์ฐ๊ฒฐ ์ค๊ฐ
๊ฐ์
BSR์ ํ๋์ ๋ฆฌ์์ค์ ๋ํด ๋ ๊ฐ์ ์ฑ๋๋ก ๋์ํฉ๋๋ค. ๊ฐ ์ฑ๋์ ์ฐ๊ฒฐ ๋ฐฉํฅ์ด ์๋ก ๋ฐ๋๋ก ์๋ฆฝ๋์ด, ์๋ฒ/ํด๋ผ์ด์ธํธ๋ก ๊ตฌ๋ถํ ์ ์๋ P2P๊ตฌ์กฐ๋ก ๋์ํฉ๋๋ค.
BSR์ ํต์ ์ ์ค๊ณํ๊ธฐ ์ํด์ DRX๋ ๋ ๊ฐ์ ์ฑ๋์ ์ฌ์ฉํ๋๋ฐ, DRX๊ฐ ์ฐ๊ฒฐ ๊ณผ์ ์ด ๋ํด์ง๋ฉด ์ฐ๊ฒฐ์ด ์ด 6๊ฐ๋ก ๋์ด๋ฉ๋๋ค.
๋ก์ปฌ DRX์์๋ ์๊ฒฉ DRX์ ์๊ฒฉ BSR์ ์ฐ๊ฒฐ ์ํ๋ฅผ ์ ์ธํ 4๊ฐ์ ์ฐ๊ฒฐ๋ง ํ์ธ ํ ์ ์์ต๋๋ค.
์ฐ๊ฒฐ ๊ตฌ์กฐ
------------------------------------------------------------------------------------------- Name Type local-bsr-ip State local-drx-ip State remote-drx-ip ------------------------------------------------------------------------------------------- r0-node2-node1 data (local-bsr) -established-> (local-drx) <-bridged----- (remote-drx) r0-node2-node1 meta (local-bsr) <-established- (local-drx) -----bridged-> (remote-drx) ------------------------------------------------------------------------------------------- All connections : 2, Established : 2
๊ฐ๊ฐ์ ๋ฆฌ์์ค๋ ์์ ํ ๋
๋ฆฝ๋์ด ์๋ํ๋ฉฐ, ํ๋์ ๋ฆฌ์์ค๋ ๋๊ฐ์ ์ฑ๋๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์์ ์ถ๋ ฅ์์ย ์ฒซ๋ฒ์งธ ์ฑ๋์ด Acceptor, ๋๋ฒ์งธ ์ฑ๋์ด Connector์ ํด๋นํฉ๋๋ค.
ํ๋์ ์ฑ๋์ ๋ ๊ฐ์ ์ฐ๊ฒฐ(๋ก์ปฌ BSR, ์๊ฒฉ DRX)์ ๊ด๋ฆฌํฉ๋๋ค.
๊ฐ ์ฑ๋์ ์ฐ๊ฒฐ์ ์๊ฒฉ BSR๊น์ง ํตํฉํ์ฌ ํํํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- Acceptor
- ๋ฆฌ์์ค ํ์ผ์ outside IP/Port๋ฅผ ํตํด ์๊ฒฉ DRX์ ์ ์์ ๋ฐ๋๋ค.
- ๋ฆฌ์์ค ํ์ผ์ inside IP/Port๋ฅผ ํตํด ๋ก์ปฌ BSR์ ์ ์์ ๋ฐ๋๋ค.
- Connector
- ์๊ฒฉ DRX์ outside IP/Port๋ก ์ ์ํ๋ค.
- ๋ก์ปฌ BSR์ ์ ์ํ๋ค.
๊ฐ๊ฐ์ ์ฑ๋์ DRX๊ฐ ์ฐ๊ฒฐ์ ์ฑ๋ ์ ํ(meta/data)์ด ์ ํด์ง์ง ์์ ์ํ์ด๋ฉฐ, BSR๊ณผ์ ์ฐ๊ฒฐ์ด ์๋ฆฝ๋๋ฉด BSR๋ก๋ถํฐ ์ฑ๋ ์ ํ์ ๋ฐ์ต๋๋ค..
์ ์ ์ํ
๋ถ๋ฅ | ์ํ ๊ฐ | ์ฑ๋ | ์ค๋ช | ๋์ |
---|---|---|---|---|
์ค๋น ์ค | allocating | ์ ์ฒด | BAB ๋ฉ๋ชจ๋ฆฌ ํ ๋น ์ค | ๋ฉ๋ชจ๋ฆฌ ํ ๋น์ด ์๋ฃ๋๋ฉด bridging ์ํ๋ก ์ ํ |
DRX๊ฐ ์ฐ๊ฒฐ | bridging | ์ ์ฒด | ์๊ฒฉ DRX์ ์ฐ๊ฒฐ ์๋ ์ค | ์ฐ๊ฒฐ์ด ์๋ฃ๋๋ฉด bridged ์ํ๋ก ์ ํ |
bridged | ์ ์ฒด | ์๊ฒฉ DRX์ ์ฐ๊ฒฐ๋จ | ์ํ ๋ณ๊ฒฝ ํ ์ฆ์ waiting/connecting ์ํ๋ก ์ ํ | |
BSR๊ณผ์ ์ฐ๊ฒฐ | waiting | Acceptor | BSR์ ์ฐ๊ฒฐ์ ๊ธฐ๋ค๋ฆฌ๋ ์ค | BSR๊ณผ ์ฐ๊ฒฐ๋๋ฉด connected ์ํ๋ก ์ ํ |
connecting | Connector | BSR๋ก ์ฐ๊ฒฐ ์ค | ์๊ฒฉ DRX๋ก๋ถํฐ ์ฑ๋ ์ ํ์ ๋ฐ์ BSR์ ์ ์ | |
connected | Acceptor | BSR์ ์ฐ๊ฒฐ๋จ | BSR๋ก๋ถํฐ ์ฑ๋ ์ ํ์ ๋ฐ์ ์๊ฒฉ DRX์ ์ ๋ฌํ๊ณ establishing ์ํ๋ก ์ ํ | |
establishing | ์ ์ฒด | ์ฐ๊ฒฐ ์๋ฆฝ์ค | Connector: ์๊ฒฉ DRX๋ก ์ฐ๊ฒฐ ์๋ฆฝ ์ด๋ฒคํธ๋ฅผ ์ ๋ฌํ๊ณ ย established ์ํ๋ก ์ ํ Acceptor: ์๊ฒฉ DRX๋ก๋ถํฐ ์ฐ๊ฒฐ ์๋ฆฝ ์ด๋ฒคํธ๋ฅผ ๋ฐ์ผ๋ฉดย established ์ํ๋ก ์ ํ | |
established | ์ ์ฒด | ์ฐ๊ฒฐ์ด ์๋ฆฝ๋จ | BSR์ ํต์ ๋ฐ์ดํฐ๋ฅผ ์ค๊ณํ๋ค | |
์ฐ๊ฒฐ ์ค์ง | close_pending | ์ ์ฒด | ์ฐ๊ฒฐ์ ๋ซ๊ธฐ ์ ์ ์ ๋ฆฌ ๋จ๊ณ | BAB์ ๋จ์์๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํ๊ณ stopping ์ํ๋ก ์ ํ |
stopping | ์ ์ฒด | ์ฐ๊ฒฐ ๋ซ๋ ์ค | ํ์ฌ ์ฐ๊ฒฐ์ ๋ซ๊ณ stopped ์ํ๋ก ์ ํ | |
stopped | ์ ์ฒด | ์ฐ๊ฒฐ์ด ๋ซํ | ์ฌ ์ฐ๊ฒฐ์ ์ค๋นํ๊ณ ย bridging ์ํ๋ก ์ ํ |
์ผ๋ฐ์ ์ธ ์ํ๋ณํ ์์
์ ์์ ์ธ ์ฐ๊ฒฐ์ ์ฑ๋๋ณ ์ํ ๋ณํ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
์ฐ๊ฒฐ์ด ๋๊ธธ ๊ฒฝ์ฐ์ ์ํ ๋ณํ:
- ๋ก์ปฌ BSR๊ณผ์ ์ฐ๊ฒฐ์ด ๋๊ธด ๊ฒฝ์ฐ
- ์ฐ๊ฒฐ ์ข ๋ฃ๋ฅผ ์ํด ๋ ์ฑ๋ ๋ชจ๋ stopping ์ํ๋ก ์ ํ๋๋ค. (data ์ฑ๋์ BAB๋ฅผ ๋น์ฐ๊ธฐ ์ํด ๋จผ์ close pending ์ํ๋ฅผ ๊ฑฐ์น๊ฒ ๋๋ค.)
- ์ฐ๊ฒฐ์ ์ข ๋ฃํ๋ ์์ ์ด ์๋ฃ๋๋ฉด stopped ์ํ๋ก ์ ํ๋๋ค.
- ๋ก์ปฌ BSR๊ณผ์ ์ฌ ์ฐ๊ฒฐ์ ์ํด connecting / waiting ์ํ๋ก ์ ํ๋๋ค.
- ์๊ฒฉ BSR๊ณผ ์๊ฒฉ DRX ์ฌ์ด์ ์ฐ๊ฒฐ์ด ๋๊ธด ๊ฒฝ์ฐ
- ์์ ๋ก์ปฌ BSR๊ณผ์ ์ฐ๊ฒฐ์ด ๋๊ธด ๊ฒฝ์ฐ์ ์ํฉ์ด ์๊ฒฉ DRX์์ ๋ฐ์ํ๋ฉด์, ๋ก์ปฌ DRX๋ ๊ฐ์ ์์๋ก stopping, stopped๋ฅผ ๊ฑฐ์ณ connecting / waiting ์ํ๋ก ์ ํ๋๋ค.
- ๋ก์ปฌ BSR์ ์ฌ ์ฐ๊ฒฐ์ด ๊ฐ๋ฅํ๋ฏ๋ก ์ฆ์ BSR๋ก๋ถํฐ ์ ์์ด ์ด๋ฃจ์ด์ง๋ค.
- Acceptor์ BSR์ด ์ฐ๊ฒฐ๋์ด connected๋ฅผ ๊ฑฐ์ณ establishing ์ํ๋ก ์ ํ๋๋ค.
- Connector๋ ์๊ฒฉ DRX๊ฐ ์๊ฒฉ BSR๊ณผ ์ฐ๊ฒฐ๋์ง ์์์ผ๋ฏ๋ก connecting ์ํ๋ก ์ ์ง๋๋ค.
- ์๊ฒฉ DRX์์ ์ฐ๊ฒฐ์ด ๋๊ธฐ๋ ๊ฒฝ์ฐ
- ์ฐ๊ฒฐ ์ข ๋ฃ๋ฅผ ์ํด ๋ ์ฑ๋ ๋ชจ๋ stopping ์ํ๋ก ์ ํ๋๋ค. (data ์ฑ๋์ BAB๋ฅผ ๋น์ฐ๊ธฐ ์ํด ๋จผ์ close pending ์ํ๋ฅผ ๊ฑฐ์น๊ฒ ๋๋ค.)
- ์ฐ๊ฒฐ์ ์ข ๋ฃํ๋ ์์ ์ด ์๋ฃ๋๋ฉด stopped ์ํ๋ก ์ ํ๋๋ค.
- ์๊ฒฉ DRX์์ ์ฌ ์ฐ๊ฒฐ์ ์ํด bridging ์ํ๋ก ์ ํ๋๋ค.
์ํ๊ฐ์ ๋ฐ๋ฅธ ๋์ ์ํฉ ๋ถ์
Acceptor ์ฑ๋ | Connector ์ฑ๋ | ์ํฉ ๋ถ์ |
---|---|---|
allocating | allocating | TX BAB์ ํฌ๊ธฐ๊ฐ ๋งค์ฐ ํฌ๊ฑฐ๋ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ํ ๋น๋์ด ์๋๊ฐ ๋๋ฆฐ ๊ฒฝ์ฐ ๋ณผ ์ ์๋ค. |
bridging | bridging | ์๊ฒฉ DRX๊ฐ ์ข ๋ฃ๋์๊ฑฐ๋, ๋ก์ปฌ DRX์ ์๊ฒฉ DRX๊ฐ ์๋ก์๊ฒ ์ ์ํ ์ ์๋ค. |
bridging | connecting | ๋ก์ปฌ DRX์ ์๊ฒฉ DRX๊ฐ ์ ์ํ ์ ์๋ค. |
waiting | bridging | ์๊ฒฉ DRX์ ์ ์ํ ์ ์๋ค. |
waiting | connecting | ๋ก์ปฌ BSR์ ๋ฆฌ์์ค๊ฐ ์ฐ๊ฒฐ์ค ์ํ๊ฐ ์๋๊ฑฐ๋ ๋ก์ปฌ DRX์ ์ ์ํ ์ ์๋ค. |
establishing | connecting | ๋ก์ปฌ BSR์ ์ฐ๊ฒฐ๋๋ ์๊ฒฉ DRX๊ฐ ์๊ฒฉ BSR์ ์ฐ๊ฒฐํ ์ ์๋ค. |
established | connecting | ๋ก์ปฌ BSR์์ ๋ก์ปฌ DRX์๋ ์ฐ๊ฒฐ์ด ๋์ง๋ง ๋ก์ปฌ DRX๊ฐ ๋ก์ปฌ BSR์ ์ฐ๊ฒฐํ ์ ์๋ค. |
establishing | established | ์๊ฒฉ BSR์์ ์๊ฒฉ DRX์๋ ์ฐ๊ฒฐ์ด ๋์ง๋ง ์๊ฒฉ DRX๊ฐ ์๊ฒฉ BSR์ ์ฐ๊ฒฐํ ์ ์๋ค. |
waiting | established | ๋ก์ปฌ DRX์์ ๋ก์ปฌ BSR๋ก ์ฐ๊ฒฐ์ ๋์ง๋ง ๋ก์ปฌ BSR์ด ๋ก์ปฌ DRX์ ์ฐ๊ฒฐํ ์ ์๋ค. |
established | connecting | ์๊ฒฉ DRX์์ ์๊ฒฉ BSR๋ก ์ฐ๊ฒฐ์ ๋์ง๋ง ์๊ฒฉ BSR๊ฐ ์๊ฒฉ DRX์ ์ฐ๊ฒฐํ ์ ์๋ค. |