์๋
ํ์ธ์, Khabrovites!
์ฌ๋ฌผ ์ธํฐ๋ท(IoT, Internet of Things)์ ํ์ฌ ๊ฐ์ /์ฌ๋ฌด์ค ๋ฐ ์ธํฐ๋ท์์ ์ฌ์ฉ๋๋ ๊ธฐ์กด ๋คํธ์ํฌ ์ธํ๋ผ, ๊ธฐ์ ๋ฐ ํ๋กํ ์ฝ ์์ ๊ตฌ์ถ๋ ๊ฒ์ด๋ฉฐ ํจ์ฌ ๋ ๋ง์ ๊ฒ์ ์ ๊ณตํ ๊ฒ์ ๋๋ค.
์ด ๊ฐ์ด๋์ ๋ชฉ์ ์ IoT์ฉ ๋คํธ์ํน ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ํ๋กํ ์ฝ์ ๋ํ ๊ฐ๋ตํ ๊ฐ์๋ฅผ ์ ๊ณตํ๋ ๊ฒ์ ๋๋ค.
๋ฉ๋ชจ. ์ง์์ด ์์ด์ผ ํฉ๋๋ค.
IoT ๋คํธ์ํฌ
IoT๋ ๊ธฐ์กด TCP/IP ๋คํธ์ํฌ์์ ์คํ๋ฉ๋๋ค.
TCP/IP๋ ๊ฐ ๊ณ์ธต์ ํน์ ํ๋กํ ์ฝ์ด ์๋ XNUMX๊ณ์ธต ๋ชจ๋ธ์ ์ฌ์ฉํฉ๋๋ค. ์ผํฐ๋ฏธํฐ.
์๋ ๋ค์ด์ด๊ทธ๋จ์ ํ์ฌ ์ฌ์ฉ ์ค์ธ ํ๋กํ ์ฝ๊ณผ IoT์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋ ํ๋กํ ์ฝ์ ๋น๊ตํ ๊ฒ์ ๋๋ค.
์ฐจํธ ์ฐธ๊ณ :
-
๊ธ๊ผด ํฌ๊ธฐ๋ ํ๋กํ ์ฝ์ ์ธ๊ธฐ๋๋ฅผ ๋ํ๋ ๋๋ค. ์๋ฅผ ๋ค์ด ์ผ์ชฝ์ ์๋ IPv4๋ ์ต์ ์ธํฐ๋ท์์ ํจ์ฌ ๋ ๋ง์ด ์ฌ์ฉ๋๊ธฐ ๋๋ฌธ์ ํฌ๊ธฐ๊ฐ ๋ ํฝ๋๋ค. ๊ทธ๋ฌ๋ IPv6๊ฐ IoT์์ ๋ ๋ง์ด ๋ณด๊ธ๋ ๊ฒ์ผ๋ก ์์๋๋ฏ๋ก ์ค๋ฅธ์ชฝ์ด ๋ ์์ต๋๋ค.
-
๋ชจ๋ ํ๋กํ ์ฝ์ด ํ์๋๋ ๊ฒ์ ์๋๋๋ค.
-
๋๋ถ๋ถ์ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ฑ๋(์์ค 1 ๋ฐ 2) ๋ฐ ์์ฉ ํ๋ก๊ทธ๋จ ์์ค(์์ค 4)์ ์์ต๋๋ค.
-
๋คํธ์ํฌ ๋ฐ ์ ์ก ๊ณ์ธต์ ๋ณ๊ฒฝ๋์ง ์์ ์ํ๋ก ์ ์ง๋ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค.
๋งํฌ ๊ณ์ธต ํ๋กํ ์ฝ
๋ฐ์ดํฐ ๋งํฌ ๋ ๋ฒจ(Data Link)์์๋ ์ฅ์น๋ฅผ ์๋ก ์ฐ๊ฒฐํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ก์ปฌ ๋คํธ์ํฌ(๋ก์ปฌ ๋คํธ์ํฌ)์์ ๊ฐ๊น๊ณ ๋์(๋๋์ ๋คํธ์ํฌ) ๋ฐ ๊ธ๋ก๋ฒ ๋คํธ์ํฌ(๊ด์ญ ๋คํธ์ํฌ)์์ ์๋ก ๋ฉ๋ฆฌ ๋จ์ด์ ธ ์์ ์ ์์ต๋๋ค.
ํ์ฌ ์ด ์์ค์์ ๊ฐ์ ๋ฐ ์ฌ๋ฌด์ค ๋คํธ์ํฌ(LAN)๋ ์ด๋๋ท๊ณผ Wi-Fi๋ฅผ ์ฌ์ฉํ๊ณ ๋ชจ๋ฐ์ผ(WAN)์ 3G/4G๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ง์ IoT ์ฅ์น๋ ์ผ์์ ๊ฐ์ ์ ์ ๋ ฅ์ด๋ฉฐ ๋ฐฐํฐ๋ฆฌ๋ก๋ง ์ ์์ ๊ณต๊ธ๋ฐ์ต๋๋ค. ์ด ๊ฒฝ์ฐ ์ด๋๋ท์ ์ ํฉํ์ง ์์ง๋ง ์ ์ ๋ ฅ Wi-Fi ๋ฐ ์ ์ ๋ ฅ Bluetooth๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
๊ธฐ์กด ๋ฌด์ ๊ธฐ์ (Wi-Fi, Bluetooth, 3G/4G)์ด ๊ณ์ํด์ ์ด๋ฌํ ์ฅ์น๋ฅผ ์ฐ๊ฒฐํ๋ ๋ฐ ์ฌ์ฉ๋์ง๋ง ์ธ๊ธฐ๊ฐ ๋์์ง IoT ์ ํ๋ฆฌ์ผ์ด์ ์ฉ์ผ๋ก ํน๋ณํ ์ค๊ณ๋ ์๋ก์ด ๊ธฐ์ ๋ ์ดํด๋ณผ ๊ฐ์น๊ฐ ์์ต๋๋ค.
๊ทธ ์ค :
-
BLE - ๋ธ๋ฃจํฌ์ค ์ ์๋์ง
-
LoRaWAN - ์ฅ๊ฑฐ๋ฆฌ WAN
-
์๊ทธํญ์ค
-
LTE-M
๊ธฐ์ฌ์ ์์ธํ ์ค๋ช
๋์ด ์์ต๋๋ค.
๋คํธ์ํฌ ๊ณ์ธต
๋คํธ์ํฌ ๊ณ์ธต(๋คํธ์ํน)์์ ํ๋กํ ์ฝ์ ์ฅ๊ธฐ์ ์ผ๋ก ์ฐ์ธํ ๊ฒ์
๋๋ค.
์ ์ก ๊ณ์ธต
์ ์ก ๊ณ์ธต(Transport)์์ ์ธํฐ๋ท๊ณผ ์น์ TCP์ ์ํด ์ง๋ฐฐ๋ฉ๋๋ค. ์ด๊ฒ์ HTTP์ ๊ธฐํ ๋๋ฆฌ ์ฌ์ฉ๋๋ ์ธํฐ๋ท ํ๋กํ ์ฝ(SMTP, POP3, IMAP4 ๋ฑ) ๋ชจ๋์์ ์ฌ์ฉ๋ฉ๋๋ค.
๋ฉ์์ง์ ์ํ ์ฃผ์ ์ ํ๋ฆฌ์ผ์ด์ ๊ณ์ธต ํ๋กํ ์ฝ ์ค ํ๋๊ฐ ๋ ๊ฒ์ผ๋ก ์์๋๋ MQTT๋ ํ์ฌ TCP๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๊ทธ๋ฌ๋ ์์ผ๋ก๋ ๋ฎ์ ์ค๋ฒํค๋๋ก ์ธํด UDP๊ฐ IoT์ ๋ ๋ง์ด ๋ณด๊ธ๋ ๊ฒ์ผ๋ก ๊ธฐ๋ํฉ๋๋ค. ์๋ง๋ ๋ ๋๋ฆฌ ํผ์ ธ์์ ๊ฒ์
๋๋ค.
์ ํ๋ฆฌ์ผ์ด์ ๊ณ์ธต ๋ฐ ๋ฉ์์ง ํ๋กํ ์ฝ
IoT ํ๋กํ ์ฝ์ ์ค์ํ ํน์ฑ:
-
์๋ - ์ด๋น ์ ์ก๋๋ ๋ฐ์ดํฐ์ ์.
-
๋๊ธฐ ์๊ฐ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ด๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
-
์๋น ์ ๋ ฅ
-
๋ณด์.
-
์ํํธ์จ์ด ๊ฐ์ฉ์ฑ.
ํ์ฌ ์ด ์์ค์์ HTTP์ MQTT๋ผ๋ ๋ ๊ฐ์ง ์ฃผ์ ํ๋กํ ์ฝ์ด ํ๋ฐํ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค.
HTTP๋ ์๋ง๋ ์น(WWW)์ ๊ธฐ๋ฐ์ด ๋๋ ์ด ์์ค์์ ๊ฐ์ฅ ์ ์๋ ค์ง ํ๋กํ ์ฝ์ผ ๊ฒ์ ๋๋ค. ์น ์์ฉ ํ๋ก๊ทธ๋จ๊ณผ ์๋น์ค ๊ฐ์ ์ํธ ์์ฉ์ ์ํ ๊ธฐ๋ณธ ๋ฉ์ปค๋์ฆ์ธ REST API์ ์ฌ์ฉ๋๋ฏ๋ก IoT์ ๊ณ์ํด์ ์ค์ํ ๊ฒ์ ๋๋ค. ๊ทธ๋ฌ๋ ๋์ ์ค๋ฒํค๋๋ก ์ธํด HTTP๋ ์ฌ์ ํ ์ธํฐ๋ท์์ ๋๋ฆฌ ์ฌ์ฉ๋ ๊ฒ์ด์ง๋ง ์ฃผ์ IoT ํ๋กํ ์ฝ์ด ๋ ๊ฐ๋ฅ์ฑ์ ๋ฎ์ต๋๋ค.
MQTT(Message Queuing Telemetry Transport)๋ ๊ฐ๋ณ๊ณ ์ฌ์ฉํ๊ธฐ ์ฝ๊ธฐ ๋๋ฌธ์ IoT์ ์ฃผ์ ๋ฉ์์ง ํ๋กํ ์ฝ์ด ๋์์ต๋๋ค. ๊ธฐ์ฌ ๋ณด๊ธฐ
IoT์ฉ HTTP์ MQTT ๋น๊ต
MQTT๋ ๋น ๋ฅด๊ฒ IoT ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์ค์์ ํ์ค์ด ๋๊ณ ์์ต๋๋ค. ์ด๋ HTTP์ ๋นํด ๊ฐ๋ณ๊ณ ์๋๊ฐ ๋น ๋ฅด๋ฉฐ ์ผ๋์ผ(HTTP)์ด ์๋ ์ผ๋๋ค ํ๋กํ ์ฝ์ด๋ผ๋ ์ฌ์ค ๋๋ฌธ์ ๋๋ค.
๋ง์ ์ต์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐ ๋น์์ ์ฌ์ฉ ๊ฐ๋ฅํ๋ค๋ฉด HTTP ๋์ MQTT๋ฅผ ๊ธฐ๊บผ์ด ์ฌ์ฉํ ๊ฒ์ ๋๋ค.
์ข์ ์๋ ๊ธฐ์ฐจ/๋ฒ์ค/๋นํ๊ธฐ์ ๋์ฐฉ ๋ฐ ์ถ๋ฐ๊ณผ ๊ฐ์ ์ ๋ณด๋ฅผ ์ฌ๋ฌ ํด๋ผ์ด์ธํธ์๊ฒ ๋ณด๋ด๋ ๊ฒ์
๋๋ค. ์ด ์๋๋ฆฌ์ค์์ HTTP์ ๊ฐ์ ์ผ๋์ผ ํ๋กํ ์ฝ์ ๋ง์ ์ค๋ฒํค๋๊ฐ ์๊ณ ์น ์๋ฒ์ ๋ง์ ๋ถํ๋ฅผ ์ค๋๋ค. ์ด๋ฌํ ์น ์๋ฒ๋ฅผ ํ์ฅํ๋ ๊ฒ์ ์ด๋ ค์ธ ์ ์์ต๋๋ค. MQTT๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋ผ์ด์ธํธ๊ฐ ๋ก๋ ๋ฐธ๋ฐ์ฑ์ ์ํด ์ฝ๊ฒ ์ถ๊ฐํ ์ ์๋ ๋ธ๋ก์ปค์ ์ฐ๊ฒฐ๋ฉ๋๋ค. ๊ทธ๊ฒ์ ๋ํ ๋น๋์ค ์์ต์๋ฅผ๋ณด์ญ์์ค
๊ธฐํ ๋ฉ์์ง ํ๋กํ ์ฝ
HTTP๋ IoT ์์ฉ ํ๋ก๊ทธ๋จ์ฉ์ผ๋ก ์ค๊ณ๋์ง ์์์ง๋ง ์ธ๊ธํ ๋ฐ์ ๊ฐ์ด
๊ฑฐ์ ๋ชจ๋ IoT ํ๋ซํผ์ HTTP์ MQTT๋ฅผ ๋ชจ๋ ์ง์ํฉ๋๋ค.
๊ทธ๋ฌ๋ ๊ณ ๋ คํด์ผ ํ ๋ค๋ฅธ ํ๋กํ ์ฝ์ด ์์ต๋๋ค.
ํ๋กํ ์ฝ
-
MQTT - (๋ฉ์์ง ํ ์๊ฒฉ ์ธก์ ์ ์ก). TCP/IP๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ฒ์-๊ตฌ๋ ๋ชจ๋ธ์๋ ๋ฉ์์ง ๋ธ๋ก์ปค๊ฐ ํ์ํฉ๋๋ค. -
AMQP - (๊ณ ๊ธ ๋ฉ์์ง ๋๊ธฐ์ด ํ๋กํ ์ฝ). TCP/IP๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ฒ์์-๊ตฌ๋ ์ ๋ฐ ์ง์ ๊ฐ ๋ชจ๋ธ. -
COAP - (์ ์ฝ๋ ์ ํ๋ฆฌ์ผ์ด์ ํ๋กํ ์ฝ). UDP๋ฅผ ์ฌ์ฉํฉ๋๋ค. IoT์ฉ์ผ๋ก ํน๋ณํ ์ค๊ณ๋์์ผ๋ฉฐ HTTP์์์ ๊ฐ์ด ์์ฒญ-์๋ต ๋ชจ๋ธ์ ์ฌ์ฉํฉ๋๋ค.RFC 7252 . -
DDS - (๋ฐ์ดํฐ ์ ํต ์๋น์ค)
์ด
๊ทธ๋ฌ๋ ๋์ด์ผ๋ณด๋ฉด ์ธํฐ๋ท ์ด๊ธฐ์ ์ง๋ฐฐ์ ์ธ HTTP ํ๋กํ ์ฝ์ ๋ง์ ํ๋กํ ์ฝ ์ค ํ๋์ ๋ถ๊ณผํ์ต๋๋ค.
HTTP๋ ์๋ ํ์ผ ๋ฐ ์ด๋ฉ์ผ ์ ์ก์ฉ์ผ๋ก ๊ณ ์๋์ง ์์์ง๋ง ์ค๋๋ ์๋ ๋ ๊ฐ์ง ๋ชจ๋์ ์ฌ์ฉ๋ฉ๋๋ค.
IoT์ ๋ฉ์์ง ํ๋กํ ์ฝ์์๋ ๋์ผํ ์ผ์ด ๋ฐ์ํ ๊ฒ์ผ๋ก ์์ํฉ๋๋ค. ๋๋ถ๋ถ์ ์๋น์ค๋ ํ๋์ ์ฃผ์ ํ๋กํ ์ฝ์ ์ฌ์ฉํฉ๋๋ค.
์๋๋ ์ง๋ ๋ช ๋ ๋์ MQTT, COAP ๋ฐ AMQP์ ์ธ๊ธฐ๊ฐ ์ด๋ป๊ฒ ๋ณํ๋์ง ๋ณด์ฌ์ฃผ๋ Google ํธ๋ ๋ ์ฐจํธ์ ๋๋ค.
Google ํธ๋ ๋ ๊ฐ์
ํ๋ซํผ๋ณ ํ๋กํ ์ฝ ์ง์
-
Microsoft Azure - MQTT, AMQP, HTTP ๋ฐ HTTPS -
AWS - ์น์์ผ์ ํตํ MQTT, HTTPS, MQTT -
IBM Bluemix - MQTT, HTTPS, MQTT
-
Thingworx โ MQTT, HTTPS, MQTT, AMQP
๊ฐ์
๋๋ถ๋ถ์ ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ฑ๋(์์ค 1 ๋ฐ 2) ๋ฐ ์์ฉ ํ๋ก๊ทธ๋จ ์์ค(์์ค 4)์ ์์ต๋๋ค.
๋คํธ์ํฌ ๋ฐ ์ ์ก ๊ณ์ธต์ ๋ณ๊ฒฝ๋์ง ์์ ์ํ๋ก ์ ์ง๋ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค.
์ ํ๋ฆฌ์ผ์ด์ ๊ณ์ธต์์ IoT ๊ตฌ์ฑ ์์๋ ๋ฉ์์ง ํ๋กํ ์ฝ์ ์ฌ์ฉํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์์ง IoT ๊ฐ๋ฐ ์ด๊ธฐ ๋จ๊ณ์ ์์ง๋ง ํ๋ ๋๋ ๋ ๊ฐ์ ๋ฉ์์ง ํ๋กํ ์ฝ์ด ๋์ ๋ ๊ฒ์ ๋๋ค.
์ง๋ ๋ช ๋ ๋์ MQTT๊ฐ ๊ฐ์ฅ ์ธ๊ธฐ๋ฅผ ์ป์๊ณ ์ด์ ์ด ์ฌ์ดํธ์ ์ง์คํ๊ณ ์์ต๋๋ค.
HTTP๋ ์ด๋ฏธ ๊ธฐ์กด IoT ํ๋ซํผ์ ์ ๊ตฌ์ถ๋์ด ์๊ธฐ ๋๋ฌธ์ ๊ณ์ํด์ ์ฌ์ฉ๋ ๊ฒ์ ๋๋ค.
๊ทธ๊ฒ ๋ค์ผ. ์ฃผ์ ์ ๋ํ ๋ฌด๋ฃ ๋ฐ๋ชจ ๊ฐ์์ ๋ฑ๋กํ๋๋ก ์ด๋ํฉ๋๋ค.
"์ฅ์น์ ๋ํ ๋น ๋ฅธ ๋ช ๋ น์ ์ํ ์ฑ๋ด" .
๋ ์ฝ์ด๋ณด๊ธฐ:
์ถ์ฒ : habr.com