๋ถ„์‚ฐํ˜• ํ†ต์‹  ํด๋ผ์ด์–ธํŠธ Jami โ€œTaranisโ€ ์ถœ์‹œ

๋ถ„์‚ฐํ˜• ํ†ต์‹  ํ”Œ๋žซํผ Jami์˜ ์ƒˆ๋กœ์šด ๋ฆด๋ฆฌ์Šค๊ฐ€ ์ถœ์‹œ๋˜์–ด ์ฝ”๋“œ๋ช… "Taranis"๋กœ ๋ฐฐํฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” P2P ๋ชจ๋“œ์—์„œ ์ž‘๋™ํ•˜๊ณ  ๋†’์€ ์ˆ˜์ค€์˜ ๊ธฐ๋ฐ€์„ฑ๊ณผ ๋ณด์•ˆ์„ ์ œ๊ณตํ•˜๋ฉด์„œ ๋Œ€๊ทœ๋ชจ ๊ทธ๋ฃน๊ณผ ๊ฐœ๋ณ„ ํ†ตํ™” ๊ฐ„์˜ ํ†ต์‹ ์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ํ†ต์‹  ์‹œ์Šคํ…œ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด์ „์— Ring ๋ฐ SFLphone์œผ๋กœ ์•Œ๋ ค์ง„ Jami๋Š” GNU ํ”„๋กœ์ ํŠธ์ด๋ฉฐ GPLv3์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฐ”์ด๋„ˆ๋ฆฌ ์–ด์…ˆ๋ธ”๋ฆฌ๋Š” GNU/Linux(Debian, Ubuntu, Fedora, SUSE, RHEL ๋“ฑ), Windows, macOS, iOS, Android ๋ฐ Android TV์šฉ์œผ๋กœ ์ค€๋น„๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์กด ํ†ต์‹  ํด๋ผ์ด์–ธํŠธ์™€ ๋‹ฌ๋ฆฌ Jami๋Š” ์ข…๋‹จ ๊ฐ„ ์•”ํ˜ธํ™”(ํ‚ค๋Š” ํด๋ผ์ด์–ธํŠธ ์ธก์—๋งŒ ์กด์žฌ) ๋ฐ X.509 ์ธ์ฆ์„œ ๊ธฐ๋ฐ˜ ์ธ์ฆ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ๊ฐ„ ์ง์ ‘ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•จ์œผ๋กœ์จ ์™ธ๋ถ€ ์„œ๋ฒ„์— ์ ‘์†ํ•˜์ง€ ์•Š๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ์ „์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•ˆ์ „ํ•œ ๋ฉ”์‹œ์ง• ์™ธ์—๋„ ์Œ์„ฑ ๋ฐ ํ™”์ƒ ํ†ตํ™”, ์ „ํ™” ํšŒ์˜, ํŒŒ์ผ ๊ณต์œ , ํŒŒ์ผ ๋ฐ ํ™”๋ฉด ๊ณต์œ  ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ™”์ƒ ํšŒ์˜์˜ ๊ฒฝ์šฐ, ์„ฌ๊ธฐ๋Š” ์‚ฌ๋žŒ Intel Core i7-7700K 4.20GHz CPU, 32GB RAM, 100Mbps ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ตœ๋Œ€ 25๋ช…๊นŒ์ง€ ์ตœ์ƒ์˜ ํ™”์ƒ ํšŒ์˜ ํ’ˆ์งˆ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™”์ƒ ํšŒ์˜ ์ฐธ๊ฐ€์ž ํ•œ ๋ช…๋‹น ์•ฝ 2Mbps์˜ ๋Œ€์—ญํญ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ฒ˜์Œ์— ์ด ํ”„๋กœ์ ํŠธ๋Š” SIP ํ”„๋กœํ† ์ฝœ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์†Œํ”„ํŠธํฐ์œผ๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ์ง€๋งŒ ์˜ค๋žซ๋™์•ˆ ์ด ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋„˜์–ด P2P ๋ชจ๋ธ์„ ์„ ํ˜ธํ•˜๋ฉด์„œ SIP์™€์˜ ํ˜ธํ™˜์„ฑ๊ณผ ์ด ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ „ํ™”๋ฅผ ๊ฑธ ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์œ ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ๊ทธ๋žจ์€ ๋‹ค์–‘ํ•œ ์ฝ”๋ฑ(G711u, G711a, GSM, Speex, Opus, G.722)๊ณผ ํ”„๋กœํ† ์ฝœ(ICE, SIP, TLS)์„ ์ง€์›ํ•˜๋ฉฐ ๋น„๋””์˜ค, ์Œ์„ฑ ๋ฐ ๋ฉ”์‹œ์ง€์˜ ์•ˆ์ •์ ์ธ ์•”ํ˜ธํ™”๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์„œ๋น„์Šค ๊ธฐ๋Šฅ์—๋Š” ์ฐฉ์‹  ์ „ํ™˜ ๋ฐ ๋ณด๋ฅ˜, ํ†ตํ™” ๋…น์Œ, ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์ด ์žˆ๋Š” ํ†ตํ™” ๊ธฐ๋ก, ์ž๋™ ๋ณผ๋ฅจ ์กฐ์ ˆ, GNOME ๋ฐ KDE ์ฃผ์†Œ๋ก๊ณผ์˜ ํ†ตํ•ฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๋ฅผ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด Jami๋Š” ๋ธ”๋ก์ฒด์ธ ํ˜•ํƒœ์˜ ์ฃผ์†Œ๋ก ๊ตฌํ˜„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๋ถ„์‚ฐํ˜• ๊ธ€๋กœ๋ฒŒ ๊ณ„์ • ์ธ์ฆ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค(Ethereum ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ์ด ์‚ฌ์šฉ๋จ). ํ•˜๋‚˜์˜ ์‚ฌ์šฉ์ž ID(RingID)๋Š” ์—ฌ๋Ÿฌ ์žฅ์น˜์—์„œ ๋™์‹œ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์Šค๋งˆํŠธํฐ๊ณผ PC์—์„œ ์„œ๋กœ ๋‹ค๋ฅธ ID๋ฅผ ์œ ์ง€ํ•  ํ•„์š” ์—†์ด ์–ด๋–ค ์žฅ์น˜๊ฐ€ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ๋Š”์ง€์— ๊ด€๊ณ„์—†์ด ์‚ฌ์šฉ์ž์—๊ฒŒ ์—ฐ๋ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ RingID๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์ฃผ์†Œ๋ก์€ ์ „์ฒด ์ฃผ์†Œ๋ก์˜ ๋กœ์ปฌ ๋ณต์‚ฌ๋ณธ์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ž์‹ ์˜ ๋…ธ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜์—ฌ ์—ฌ๋Ÿฌ ์ฐธ๊ฐ€์ž๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋…ธ๋“œ ๊ทธ๋ฃน์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค(Jami๋Š” ๋˜ํ•œ ๊ด€๋ฆฌ๋˜๋Š” ๋ณ„๋„์˜ ๋‚ด๋ถ€ ์ฃผ์†Œ๋ก์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ).

Jami์—์„œ ์‚ฌ์šฉ์ž์˜ ์ฃผ์†Œ๋ฅผ ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•ด OpenDHT ํ”„๋กœํ† ์ฝœ(๋ถ„์‚ฐ ํ•ด์‹œ ํ…Œ์ด๋ธ”)์ด ์‚ฌ์šฉ๋˜๋ฉฐ, ์ด๋Š” ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์žˆ๋Š” ์ค‘์•™ ์ง‘์ค‘์‹ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Jami์˜ ๊ธฐ๋ณธ์€ ์—ฐ๊ฒฐ ์ฒ˜๋ฆฌ, ํ†ต์‹  ๊ตฌ์„ฑ, ๋น„๋””์˜ค ๋ฐ ์‚ฌ์šด๋“œ ์ž‘์—…์„ ๋‹ด๋‹นํ•˜๋Š” ๋ฐฑ๊ทธ๋ผ์šด๋“œ ํ”„๋กœ์„ธ์Šค jami-daemon์ž…๋‹ˆ๋‹ค. jami-daemon๊ณผ์˜ ์ƒํ˜ธ ์ž‘์šฉ์€ LibRingClient ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. LibRingClient ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํด๋ผ์ด์–ธํŠธ ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์ถ•์„ ์œ„ํ•œ ๊ธฐ๋ฐ˜ ์—ญํ• ์„ ํ•˜๋ฉฐ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ํ”Œ๋žซํผ์— ์–ฝ๋งค์ด์ง€ ์•Š๋Š” ๋ชจ๋“  ํ‘œ์ค€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ LibRingClient ์œ„์— ์ง์ ‘ ์ƒ์„ฑ๋˜๋ฏ€๋กœ ๋‹ค์–‘ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•˜๊ณ  ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์š” ํ˜์‹ :

  • "์Šค์›œ(swarms)"์ด๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ์ƒˆ๋กœ์šด ๊ทธ๋ฃน ํ†ต์‹  ์‹œ์Šคํ…œ์˜ ์ดˆ๊ธฐ ๊ตฌํ˜„์ด ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•˜๋ฉด ์™„์ „ํžˆ ๋ถ„์‚ฐ๋œ P2P ์ฑ„ํŒ…์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ทธ ํ†ต์‹  ๊ธฐ๋ก์€ ๋ชจ๋“  ์‚ฌ์šฉ์ž ์žฅ์น˜์— ๋™๊ธฐํ™”๋œ ํ˜•์‹์œผ๋กœ ๊ณต๋™ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๊ตฌํ˜„์€ ์‚ฌ์šฉ์ž๊ฐ€ ํ•˜๋‚˜์˜ ๊ณ„์ •์— ์—ฐ๊ฒฐ๋œ ๋‹ค๋ฅธ ์žฅ์น˜์—์„œ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ๋‘ ์ฐธ๊ฐ€์ž ๊ฐ„์˜ ํ†ต์‹ ์œผ๋กœ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค(์ฑ„ํŒ… ๊ธฐ๋ก์€ ๋ชจ๋“  ์žฅ์น˜์—์„œ ๋™๊ธฐํ™”๋ฉ๋‹ˆ๋‹ค). ๋‹ค์Œ ๋ฒ„์ „์—๋Š” ์Šค์›œ ๋ชจ๋“œ์—์„œ ๊ทธ๋ฃน ์ฑ„ํŒ…์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.
     ๋ถ„์‚ฐํ˜• ํ†ต์‹  ํด๋ผ์ด์–ธํŠธ Jami "Taranis" ์ถœ์‹œ
  • ํ–ฅ์ƒ๋œ ํšŒ์˜ ์ง€์›. ๊ฐ ์ฐธ๊ฐ€์ž๋ฅผ ์ˆ˜๋™์œผ๋กœ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š๊ณ ๋„ ๋ชจ๋“  ์ˆ˜์‹  ์ „ํ™”๋ฅผ ํšŒ์˜์— ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ๋Š” "ํšŒ์˜ ์ง€์ " ๋ชจ๋“œ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์ฃผ์†Œ๋ก์— ์žˆ๋Š” ์‚ฌ์šฉ์ž๋งŒ ์—ฐ๊ฒฐํ•˜๋„๋ก ํ—ˆ์šฉํ•  ์ˆ˜ ์žˆ์Œ). ๊ธฐ๋ณธ ์ค‘์žฌ์ž๋ฅผ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•œ ์„ค์ •์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํšŒ์˜ ์ค‘์žฌ์ž์—๊ฒŒ๋Š” ์ฐธ๊ฐ€์ž์˜ ๋งˆ์ดํฌ๋ฅผ ์Œ์†Œ๊ฑฐ ๋ฐ ์Œ์†Œ๊ฑฐ ํ•ด์ œํ•  ์ˆ˜ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ฐธ๊ฐ€์ž๋ฅผ ์ œ๊ฑฐ(ํ‚ฅ)ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ๋„ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
     ๋ถ„์‚ฐํ˜• ํ†ต์‹  ํด๋ผ์ด์–ธํŠธ Jami "Taranis" ์ถœ์‹œ

    ์ฐธ๊ฐ€์ž๊ฐ€ ๋ฐœ์–ธํ•˜๊ณ  ์‹ถ์€ ๋งˆ์Œ์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” '์† ๋“ค๊ธฐ' ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

     ๋ถ„์‚ฐํ˜• ํ†ต์‹  ํด๋ผ์ด์–ธํŠธ Jami "Taranis" ์ถœ์‹œ

    ํ™”๋ฉด ๋‚ด์šฉ์„ ๋ฐฉ์†กํ•˜๋Š” ๊ธฐ๋Šฅ์ด ํ™•์žฅ๋˜์–ด ์ด์ œ ์ „์ฒด ํ™”๋ฉด์ด๋‚˜ ์„ ํƒํ•œ ์˜์—ญ์ด ์•„๋‹Œ ๊ฐœ๋ณ„ ์ฐฝ์˜ ๋‚ด์šฉ์„ ๋‹ค๋ฅธ ์ฐธ๊ฐ€์ž์—๊ฒŒ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

     ๋ถ„์‚ฐํ˜• ํ†ต์‹  ํด๋ผ์ด์–ธํŠธ Jami "Taranis" ์ถœ์‹œ
  • Android ํ”Œ๋žซํผ์šฉ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” ์ƒˆ๋กœ์šด ํ˜ธ์ถœ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. iOS ๋ฒ„์ „์€ ์žฅ์น˜๊ฐ€ ์ ˆ์ „ ๋ชจ๋“œ ๋˜๋Š” ์ ˆ์ „ ๋ชจ๋“œ์— ์žˆ์„ ๋•Œ ์—ฐ๊ฒฐ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.
     ๋ถ„์‚ฐํ˜• ํ†ต์‹  ํด๋ผ์ด์–ธํŠธ Jami "Taranis" ์ถœ์‹œ
  • Windows 11 ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru