{"id":109957,"date":"2021-08-02T21:36:29","date_gmt":"2021-08-02T14:36:29","guid":{"rendered":"https:\/\/tino.org\/?p=2454"},"modified":"2025-06-10T10:57:34","modified_gmt":"2025-06-10T03:57:34","slug":"giao-thuc-mqtt-la-gi","status":"publish","type":"post","link":"https:\/\/tino.vn\/blog\/giao-thuc-mqtt-la-gi\/","title":{"rendered":"Giao th\u1ee9c MQTT l\u00e0 g\u00ec? C\u00e1c kh\u00e1i ni\u1ec7m li\u00ean quan \u0111\u1ebfn giao th\u1ee9c MQTT trong IoT"},"content":{"rendered":"\n<p><strong>S\u1edf h\u1eefu nh\u1eefng t\u00ednh n\u0103ng m\u1ea1nh m\u1ebd, MQTT \u0111\u00e3 tr\u1edf th\u00e0nh giao th\u1ee9c \u0111\u01b0\u1ee3c ng\u01b0\u1eddi d\u00f9ng s\u1eed d\u1ee5ng ph\u1ed5 bi\u1ebfn hi\u1ec7n nay. V\u1eady giao th\u1ee9c MQTT l\u00e0 g\u00ec? T\u00ednh n\u0103ng <meta charset=\"utf-8\"><strong>giao th\u1ee9c MQTT<\/strong> nh\u01b0 th\u1ebf n\u00e0o? H\u00e3y c\u00f9ng Tino Group t\u00ecm hi\u1ec3u qua b\u00e0i vi\u1ebft d\u01b0\u1edbi \u0111\u00e2y nh\u00e9!<\/strong> <\/p>\n\n\n\n<h2 id=\"Giao_th\u1ee9c_MQTT_l\u00e0_g\u00ec?\"><a id=\"post-2454-_32ewx92egjuz\"><\/a><strong>Giao th\u1ee9c MQTT l\u00e0 g\u00ec?<\/strong><\/h2>\n\n\n\n<h3 id=\"\u0110\u1ecbnh_ngh\u0129a\"><a id=\"post-2454-_aow614d2pkto\"><\/a><strong>\u0110\u1ecbnh ngh\u0129a<\/strong><\/h3>\n\n\n\n<p>   MQTT l\u00e0 t\u1eeb vi\u1ebft t\u1eaft c\u1ee7a c\u1ee5m<strong> Message Queuing Telemetry Transport <\/strong>(t\u1ea1m d\u1ecbch:<em> giao th\u1ee9c truy\u1ec1n th\u00f4ng \u0111i\u1ec7p<\/em>. \u0110\u00e2y l\u00e0 m\u1ed9t trong nh\u1eefng gi\u1ea3i ph\u00e1p ti\u00eau chu\u1ea9n c\u1ee7a <a href=\"https:\/\/tino.vn\/blog\/iot-platform-la-gi\/\" target=\"_blank\" rel=\"noreferrer noopener\">IoT<\/a> (<strong>Internet of Things<\/strong>) v\u00ec qu\u00e1 tr\u00ecnh truy\u1ec1n t\u1ea3i c\u1ee7a MQTT r\u1ea5t nh\u1eb9, \u0111\u1ed9 ch\u00ednh x\u00e1c cao v\u00e0 kh\u1ea3 n\u0103ng k\u1ebft n\u1ed1i b\u0103ng th\u00f4ng hi\u1ec7u qu\u1ea3. MQTT c\u00f2n \u0111\u01b0\u1ee3c hi\u1ec3u l\u00e0 m\u1ed9t giao th\u1ee9c nh\u1eafn tin th\u00f4ng minh v\u00e0 \u0111\u01a1n gi\u1ea3n, \u0111\u01b0\u1ee3c t\u1ea1o ra nh\u1eb1m ph\u1ee5c v\u1ee5 cho c\u00e1c thi\u1ebft b\u1ecb h\u1ea1n ch\u1ebf v\u1ec1 b\u0103ng th\u00f4ng. <\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/06\/1_word-image-19.jpg\" alt=\"giao-thuc-mqtt-la-gi\" class=\"wp-image-2457\" width=\"700\" title=\"\"><\/figure><\/div>\n\n\n\n<p>   Nhi\u1ec7m v\u1ee5 c\u1ee7a giao th\u1ee9c MQTT l\u00e0 h\u1ed7 tr\u1ee3 ng\u01b0\u1eddi d\u00f9ng \u0111\u1ecdc, xu\u1ea5t b\u1ea3n d\u1eef li\u1ec7u. B\u00ean c\u1ea1nh \u0111\u00f3, giao th\u1ee9c n\u00e0y c\u00f2n gi\u00fap b\u1ea1n g\u1eedi l\u1ec7nh \u0111\u1ec3 \u0111i\u1ec1u khi\u1ec3n t\u1eeb xa. Nh\u1eefng ho\u1ea1t \u0111\u1ed9ng n\u00e0y \u0111\u1ec1u th\u00f4ng qua n\u00fat c\u1ea3m bi\u1ebfn v\u00e0 m\u1ed9t s\u1ed1 t\u00ednh n\u0103ng kh\u00e1c. Nhi\u1ec1u ng\u01b0\u1eddi cho r\u1eb1ng MQTT l\u00e0 ph\u01b0\u01a1ng ti\u1ec7n \u0111\u1ec3 c\u00e1c thi\u1ebft b\u1ecb giao ti\u1ebfp v\u1edbi nhau d\u1ec5 d\u00e0ng h\u01a1n. <\/p>\n\n\n\n<h3 id=\"L\u1ecbch_s\u1eed_h\u00ecnh_th\u00e0nh\"><a id=\"post-2454-_aaib7uwlnsob\"><\/a><strong>L\u1ecbch s\u1eed h\u00ecnh th\u00e0nh<\/strong><\/h3>\n\n\n\n<p>   MQTT ch\u00ednh th\u1ee9c ra \u0111\u1eddi v\u00e0o cu\u1ed1i nh\u1eefng n\u0103m 1990. Giao th\u1ee9c n\u00e0y \u0111\u01b0\u1ee3c ph\u00e1t minh b\u1edfi hai k\u1ef9 s\u01b0 t\u00e0i n\u0103ng &#8211; Andy Stanford-Clark v\u00e0 Arlen Nipper. Nhi\u1ec7m v\u1ee5 c\u1ee7a MQTT l\u00e0 \u201cph\u01b0\u01a1ng ti\u1ec7n\u201d giao ti\u1ebfp gi\u1eefa hai thi\u1ebft b\u1ecb. \u0110i\u1ec3n h\u00ecnh l\u00e0 \u0111\u01b0\u1eddng \u1ed1ng d\u1ea7u kh\u00ed v\u00e0 <a href=\"https:\/\/tino.vn\/blog\/scada-la-gi\/\" target=\"_blank\" rel=\"noreferrer noopener\">SCADA<\/a> (h\u1ec7 th\u1ed1ng gi\u00e1m s\u00e1t v\u00e0 thu th\u1eadp d\u1eef li\u1ec7u). <\/p>\n\n\n\n<p>\n  Tr\u01b0\u1edbc khi MQTT xu\u1ea5t hi\u1ec7n, c\u00e1c thi\u1ebft b\u1ecb n\u00e0y kh\u00f4ng th\u1ec3 giao ti\u1ebfp v\u1edbi nhau. B\u1edfi v\u00ec ch\u00fang ch\u1ec9 s\u1eed d\u1ee5ng c\u00e1c giao th\u1ee9c \u0111\u1ed9c quy\u1ec1n, ri\u00eang bi\u1ec7t. Nh\u1edd MQTT, v\u1ea5n \u0111\u1ec1 n\u00e0y \u0111\u00e3 \u0111\u01b0\u1ee3c kh\u1eafc ph\u1ee5c nhanh ch\u00f3ng. Ngo\u00e0i ra, \u0111i\u1ec3m m\u1ea1nh c\u1ee7a giao th\u1ee9c n\u00e0y l\u00e0: nh\u1eb9, b\u0103ng th\u00f4ng t\u1ed1i thi\u1ec3u, d\u1ec5 tri\u1ec3n khai, cung c\u1ea5p d\u1eef li\u1ec7u ch\u1ea5t l\u01b0\u1ee3ng,&#8230; Do \u0111\u00f3, MQTT \u0111\u00e3 \u0111\u01b0\u1ee3c \u1ee9ng d\u1ee5ng m\u1ea1nh m\u1ebd h\u01a1n.\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/06\/2_word-image-20.jpg\" alt=\"giao-thuc-mqtt-la-gi\" class=\"wp-image-2459\" width=\"700\" title=\"\"><\/figure><\/div>\n\n\n\n<h3 id=\"Th\u00e0nh_ph\u1ea7n_v\u00e0_c\u00e1ch_th\u1ee9c_ho\u1ea1t_\u0111\u1ed9ng_c\u1ee7a_MQTT\"><a id=\"post-2454-_ew0u9sln1z0v\"><\/a><strong>Th\u00e0nh ph\u1ea7n v\u00e0 c\u00e1ch th\u1ee9c ho\u1ea1t \u0111\u1ed9ng c\u1ee7a MQTT<\/strong><\/h3>\n\n\n\n<h4 id=\"Th\u00e0nh_ph\u1ea7n\"><a id=\"post-2454-_z4jxlbb7jtjs\"><\/a><strong>Th\u00e0nh ph\u1ea7n<\/strong><\/h4>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<ul class=\"wp-block-list\"><li><strong>MQTT broker:<\/strong> L\u00e0 th\u00e0nh ph\u1ea7n \u0111\u01b0\u1ee3c t\u1ea1o ra d\u01b0\u1edbi d\u1ea1ng m\u00e3 ngu\u1ed3n m\u1edf. M\u1ed9t s\u1ed1 MQTT broker c\u00f3 h\u1ed7 tr\u1ee3 d\u1ecbch v\u1ee5 \u0111i\u1ec7n to\u00e1n \u0111\u00e1m m\u00e2y. Ch\u1ee9c n\u0103ng c\u1ee7a th\u00e0nh ph\u1ea7n n\u00e0y l\u00e0 s\u00e0ng l\u1ecdc tin nh\u1eafn theo k\u00eanh. K\u1ebf \u0111\u00f3, ch\u00fang \u0111\u01b0a c\u00e1c tin nh\u1eafn n\u00e0y \u0111\u1ebfn thi\u1ebft b\u1ecb ho\u1eb7c \u1ee9ng d\u1ee5ng \u0111\u00e3 \u0111\u0103ng k\u00fd k\u00eanh \u1ea5y.\n  <\/li><li><strong>MQTT client:<\/strong> Th\u00e0nh ph\u1ea7n n\u00e0y \u0111\u01b0\u1ee3c n\u1ed1i k\u1ebft v\u1edbi broker \u0111\u1ec3 truy\u1ec1n v\u00e0 nh\u1eadn d\u1eef li\u1ec7u. Trong \u0111\u00f3, client g\u1eedi d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 publisher, client \u0111\u0103ng k\u00fd nh\u1eadn d\u1eef li\u1ec7u l\u00e0 subscriber\n  <\/li><li><strong>Topic: <\/strong>L\u00e0 ch\u1ee7 \u0111\u1ec1 hay k\u00eanh \u0111\u01b0\u1ee3c qu\u1ea3n l\u00fd b\u1edfi broker v\u00e0 \u0111\u01b0\u1ee3c trao \u0111\u1ed5i b\u1edfi c\u00e1c client v\u1edbi nhau\n  <\/li><\/ul>\n<\/div><\/div>\n\n\n\n<h4 id=\"C\u00e1ch_th\u1ee9c_ho\u1ea1t_\u0111\u1ed9ng\"><a id=\"post-2454-_yy0oes825rp9\"><\/a><strong>C\u00e1ch th\u1ee9c ho\u1ea1t \u0111\u1ed9ng<\/strong><\/h4>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<ul class=\"wp-block-list\"><li><strong>Broker:<\/strong> \u0110\u01b0\u1ee3c xem l\u00e0 t\u00e2m \u0111i\u1ec3m gi\u1eefa c\u1ee7a m\u1ecdi k\u1ebft n\u1ed1i \u0111\u1ebfn t\u1ea5t c\u1ea3 client. Broker \u0111\u1ea3m nhi\u1ec7m vai tr\u00f2 nh\u1eadn tin nh\u1eafn, th\u00f4ng \u0111i\u1ec7p \u0111\u01b0\u1ee3c truy\u1ec1n t\u1ea3i t\u1eeb publisher. Sau \u0111\u00f3, th\u00e0nh ph\u1ea7n n\u00e0y s\u1ebd s\u1eafp x\u1ebfp l\u1ea1i ch\u00fang v\u00e0 chuy\u1ec3n \u0111\u1ebfn c\u00e1c subscriber nh\u1ea5t \u0111\u1ecbnh.\n  <\/li><li><strong>Client:<\/strong> C\u00f4ng vi\u1ec7c c\u1ee7a client l\u00e0 xu\u1ea5t b\u1ea3n ho\u1eb7c \u0111\u0103ng k\u00fd nhi\u1ec1u k\u00eanh kh\u00e1c nhau\n  <\/li><li><strong>Publisher:<\/strong> C\u00f3 ch\u1ee9c n\u0103ng truy\u1ec1n t\u1ea3i th\u00f4ng \u0111i\u1ec7p, tin nh\u1eafn \u0111\u1ebfn b\u1ea5t k\u1ef3 k\u00eanh n\u00e0o\n  <\/li><li><strong>Subscriber:<\/strong> C\u00f3 ch\u1ee9c n\u0103ng nh\u1eadn th\u00f4ng \u0111i\u1ec7p, tin nh\u1eafn t\u1eeb nh\u1eefng k\u00eanh \u0111\u00e3 \u0111\u0103ng k\u00fd. Tuy nhi\u00ean, th\u00e0nh ph\u1ea7n n\u00e0y ch\u1ec9 c\u00f3 th\u1ec3 nh\u1eadn d\u1eef li\u1ec7u t\u1eeb publisher khi \u0111\u00e3 \u0111\u0103ng k\u00fd ch\u00ednh x\u00e1c k\u00eanh t\u01b0\u01a1ng \u1ee9ng.\n  <\/li><\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/06\/2_word-image-21.jpg\" alt=\"giao-thuc-mqtt-la-gi\" class=\"wp-image-2461\" width=\"700\" title=\"\"><\/figure><\/div>\n\n\n\n<h2 id=\"M\u1ed9t_s\u1ed1_kh\u00e1i_ni\u1ec7m_li\u00ean_quan_\u0111\u1ebfn_MQTT\"><a id=\"post-2454-_e1bll3jspkfn\"><\/a><strong>M\u1ed9t s\u1ed1 kh\u00e1i ni\u1ec7m li\u00ean quan \u0111\u1ebfn MQTT<\/strong><\/h2>\n\n\n\n<h3 id=\"MQTT_&#8211;_Publish\/Subscribe_(Xu\u1ea5t_b\u1ea3n\/\u0110\u0103ng_k\u00fd)\"><a id=\"post-2454-_fa9cufegge6k\"><\/a><strong>MQTT &#8211; Publish\/Subscribe (Xu\u1ea5t b\u1ea3n\/\u0110\u0103ng k\u00fd)<\/strong><\/h3>\n\n\n\n<p>\n  Khi giao th\u1ee9c MQTT ho\u1ea1t \u0111\u1ed9ng, nh\u1eefng MQTT client (hay c\u00f2n \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 node tr\u1ea1m) s\u1ebd k\u1ebft n\u1ed1i v\u1edbi m\u1ed9t broker (<strong>MQTT server<\/strong>). C\u00e1c node tr\u1ea1m s\u1ebd \u0111\u0103ng k\u00fd v\u1edbi m\u1ed9t v\u00e0i k\u00eanh (<strong>Topic<\/strong>). Ch\u1eb3ng h\u1ea1n nh\u01b0: \u201c\/client1\/channel1\u201d, \u201c\/client2\/channel2\u201d. Ho\u1ea1t \u0111\u1ed9ng n\u00e0y \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 Subscribe (<em>\u0110\u0103ng k\u00fd<\/em>). B\u1ea1n c\u00f3 th\u1ec3 h\u00ecnh dung qu\u00e1 tr\u00ecnh n\u00e0y t\u01b0\u01a1ng t\u1ef1 nh\u01b0 vi\u1ec7c b\u1ea1n \u0111\u0103ng k\u00fd m\u1ed9t k\u00eanh tr\u00ean Youtube.\n<\/p>\n\n\n\n<p>\n  Khi \u1ea5y, nh\u1eefng d\u1eef li\u1ec7u v\u00e0 k\u00eanh \u0111\u00e3 Subscribe s\u1ebd \u0111\u01b0\u1ee3c g\u1eedi \u0111\u1ebfn m\u1ed7i client th\u00f4ng qua c\u00e1c note tr\u1ea1m. Qu\u00e1 tr\u00ecnh client g\u1eedi d\u1eef li\u1ec7u \u0111\u1ebfn m\u1ed9t k\u00eanh g\u1ecdi l\u00e0 Publish (<em>Xu\u1ea5t b\u1ea3n<\/em>).\n<\/p>\n\n\n\n<h3 id=\"MQTT_&#8211;_Message_(Tin_nh\u1eafn)\"><a id=\"post-2454-_r9mhhcud5bgo\"><\/a><strong>MQTT &#8211; Message (Tin nh\u1eafn)<\/strong><\/h3>\n\n\n\n<p>\n  Tin nh\u1eafn trong giao th\u1ee9c MQTT \u0111\u01b0\u1ee3c \u0111\u1ecbnh d\u1ea1ng theo ki\u1ec3u plain-text. Tuy nhi\u00ean, ng\u01b0\u1eddi d\u00f9ng c\u00f3 th\u1ec3 t\u00f9y ch\u1ec9nh tin nh\u1eafn th\u00e0nh c\u00e1c \u0111\u1ecbnh d\u1ea1ng kh\u00e1c. Message l\u00e0 nh\u1eefng th\u00f4ng tin trao \u0111\u1ed5i gi\u1eefa c\u00e1c thi\u1ebft b\u1ecb c\u1ee7a b\u1ea1n. Ch\u00fang c\u00f3 th\u1ec3 l\u00e0 l\u1ec7nh ho\u1eb7c d\u1eef li\u1ec7u.\n<\/p>\n\n\n\n<h3 id=\"MQTT_&#8211;_Topic_(K\u00eanh)\"><a id=\"post-2454-_8b7h4o57lxiz\"><\/a><strong>MQTT &#8211; Topic (K\u00eanh)<\/strong><\/h3>\n\n\n\n<p>\n  Ch\u1ee7 \u0111\u1ec1 l\u00e0 m\u1ed9t trong nh\u1eefng kh\u00e1i ni\u1ec7m quan tr\u1ecdng trong giao th\u1ee9c MQTT. C\u00fang \u0111\u01b0\u1ee3c xem l\u00e0 \u201cs\u1ee3i d\u00e2y n\u1ed1i k\u1ebft\u201d gi\u1eefa Publish (<em>xu\u1ea5t b\u1ea3n<\/em>) v\u00e0 Subscribe (<em>\u0111\u0103ng k\u00fd<\/em>). N\u1ebfu m\u1ed9t tin nh\u1eafn \u0111\u01b0\u1ee3c xu\u1ea5t b\u1ea3n trong m\u1ed9t k\u00eanh, nh\u1eefng ng\u01b0\u1eddi \u0111\u0103ng k\u00fd k\u00eanh \u1ea5y s\u1ebd nh\u1eadn \u0111\u01b0\u1ee3c tin nh\u1eafn n\u00e0y.\n<\/p>\n\n\n\n<p>\n  Nh\u1eefng k\u00eanh n\u00e0y tr\u00ecnh b\u00e0y theo d\u1ea1ng chu\u1ed7i v\u00e0 ph\u00e2n t\u00e1ch v\u1edbi nhau b\u1edfi d\u1ea5u g\u1ea1ch ch\u00e9o (\/). Trong \u0111\u00f3, m\u1ed7i d\u1ea5u g\u1ea1ch ch\u00e9o bi\u1ec3u th\u1ecb m\u1ed9t c\u1ea5p \u0111\u1ed9 c\u1ee7a k\u00eanh. \u0110i\u1ec3n h\u00ecnh nh\u01b0 vi\u1ec7c b\u1ea1n t\u1ea1o k\u00eanh cho tivi trong v\u0103n ph\u00f2ng t\u1ea1i nh\u00e0 c\u1ee7a m\u00ecnh: home\/office\/tivi.\n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/06\/2_word-image-22.jpg\" alt=\"giao-thuc-mqtt-la-gi\" class=\"wp-image-2463\" width=\"700\" title=\"\"><\/figure><\/div>\n\n\n\n<p>   B\u1ea1n c\u1ea7n l\u01b0u \u00fd, nh\u1eefng k\u00eanh n\u00e0y c\u00f3 s\u1ef1 ph\u00e2n bi\u1ec7t gi\u1eefa ch\u1eef hoa v\u00e0 ch\u1eef th\u01b0\u1eddng. Ch\u1eb3ng h\u1ea1n nh\u01b0: <em>home\/office\/tivi<\/em> s\u1ebd kh\u00e1c v\u1edbi<em> home\/office\/Tivi<\/em>. B\u00ean c\u1ea1nh \u0111\u00f3, th\u00f4ng qua giao th\u1ee9c MQTT, b\u1ea1n c\u00f3 th\u1ec3 khai b\u00e1o c\u00e1c k\u00eanh c\u1ea5p b\u00e1ch. <\/p>\n\n\n\n<p>\n  V\u00ed d\u1ee5 b\u1ea1n s\u1eed d\u1ee5ng h\u1ec7 th\u1ed1ng c\u1ea3m bi\u1ebfn \u0111o th\u00f4ng tin m\u00f4i tr\u01b0\u1eddng trong nh\u00e0. T\u00f9y theo s\u1ed1 l\u01b0\u1ee3ng c\u0103n ph\u00f2ng trong ng\u00f4i nh\u00e0 c\u1ee7a b\u1ea1n s\u1ebd c\u00f3 b\u1ed9 c\u1ea3m bi\u1ebfn m\u00f4i tr\u01b0\u1eddng ri\u00eang. V\u1eady, k\u00eanh truy\u1ec1n t\u1ea3i th\u00f4ng tin m\u00f4i tr\u01b0\u1eddng trong nh\u00e0 b\u1ea1n s\u1ebd \u0111\u01b0\u1ee3c khai b\u00e1o nh\u01b0 sau:\n<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p>\n  home\/bedroom\/temperature: k\u00eanh th\u00f4ng tin v\u1ec1 \u0111\u1ed9 \u1ea9m trong ph\u00f2ng ng\u1ee7\n<\/p>\n\n\n\n<p>\n  home\/living-room\/humidity: k\u00eanh th\u00f4ng tin v\u1ec1 \u0111\u1ed9 \u1ea9m trong ph\u00f2ng kh\u00e1ch\n<\/p>\n<\/div><\/div>\n\n\n\n<h3 id=\"MQTT_&#8211;_QoS\"><a id=\"post-2454-_7uertjlc5ruo\"><\/a><strong>MQTT &#8211; QoS<\/strong><\/h3>\n\n\n\n<p>   QoS l\u00e0 t\u1eeb vi\u1ebft c\u1ee7a c\u1ee5m <strong>Qualities of Service<\/strong> (t\u1ea1m d\u1ecbch: <em>ch\u1ea5t l\u01b0\u1ee3ng d\u1ecbch v\u1ee5<\/em>). Ng\u01b0\u1eddi d\u00f9ng c\u00f3 3 l\u1ef1a ch\u1ecdn khi Publish v\u00e0 Subscribe: <\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<ul class=\"wp-block-list\"><li>QoS0: Broker v\u00e0 client s\u1ebd g\u1eedi d\u1eef li\u1ec7u duy nh\u1ea5t 1 l\u1ea7n d\u1ef1a tr\u00ean giao th\u1ee9c TCP\/IP.   <\/li><li>QoS1: Broker v\u00e0 client \u0111\u01b0\u1ee3c ph\u00e9p g\u1eedi d\u1eef li\u1ec7u t\u1ed1i thi\u1ec3u 1 l\u1ea7n v\u00e0 nh\u1eadn x\u00e1c nh\u1eadn t\u1eeb \u0111\u1ea7u kia   <\/li><li>QoS2: Broker v\u00e0 client g\u1eedi d\u1eef li\u1ec7u v\u00e0 \u0111\u1ea7u b\u00ean kia ch\u1ec9 nh\u1eadn \u0111\u00fang 1 l\u1ea7n. Ho\u1ea1t \u0111\u1ed9ng n\u00e0y th\u00f4ng qua 4 b\u01b0\u1edbc b\u1eaft tay.   <\/li><\/ul>\n<\/div><\/div>\n\n\n\n<h3 id=\"MQTT_&#8211;_Retain\"><a id=\"post-2454-_sec5nzhjds1e\"><\/a><strong>MQTT &#8211; Retain<\/strong><\/h3>\n\n\n\n<p>\n  Trong giao th\u1ee9c MQTT, retain \u0111\u00f3ng vai tr\u00f2 l\u00e0 flag (<em>l\u00e1 c\u1edd<\/em>) g\u1eafn cho m\u1ed9t tin nh\u1eafn. B\u00ean c\u1ea1nh \u0111\u00f3, retain ch\u1ec9 nh\u1eadn nh\u1eefng gi\u00e1 tr\u1ecb l\u00e0 0 ho\u1eb7c 1 (t\u01b0\u01a1ng t\u1ef1 nh\u01b0 gi\u00e1 tr\u1ecb false ho\u1eb7c true). Trong \u0111\u00f3, n\u1ebfu retain l\u00e0 1, broker s\u1ebd gi\u1eef l\u1ea1i tin nh\u1eafn cu\u1ed1i c\u00f9ng c\u1ee7a 1 k\u00eanh k\u00e8m theo QoS t\u01b0\u01a1ng \u1ee9ng. Client s\u1ebd nh\u1eadn \u0111\u01b0\u1ee3c tin nh\u1eafn \u1ea5y khi \u0111\u0103ng k\u00fd v\u00e0o k\u00eanh ch\u1ee9a tin nh\u1eafn \u0111\u01b0\u1ee3c l\u01b0u l\u1ea1i. \n<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/06\/2_word-image-23.jpg\" alt=\"giao-thuc-mqtt-la-gi\" class=\"wp-image-2465\" width=\"700\" title=\"\"><\/figure><\/div>\n\n\n\n<h3 id=\"MQTT_&#8211;_Bridge\"><a id=\"post-2454-_4cmv0yt2g6ix\"><\/a><strong>MQTT &#8211; Bridge<\/strong><\/h3>\n\n\n\n<p>\n  \u0110\u00e2y l\u00e0 m\u1ed9t t\u00ednh n\u0103ng quan tr\u1ecdng c\u1ee7a MQTT broker. Ch\u00fang c\u00f3 vai tr\u00f2 gi\u00fap MQTT broker k\u1ebft n\u1ed1i v\u00e0 trao \u0111\u1ed5i d\u1eef li\u1ec7u v\u1edbi nhau. T\u00ednh n\u0103ng n\u00e0y ch\u1ec9 \u0111\u01b0\u1ee3c th\u1ef1c hi\u1ec7n khi c\u00f3 \u00edt nh\u1ea5t 2 broker. Trong \u0111\u00f3, c\u00f3 m\u1ed9t broker s\u1ebd bi\u1ebfn \u0111\u1ed5i th\u00e0nh bridge v\u1edbi nh\u1eefng th\u00f4ng s\u1ed1 sau:\n<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<ul class=\"wp-block-list\"><li><strong>Address<\/strong>: T\u00ean \u0111\u1ecba ch\u1ec9 broker c\u1ea7n k\u1ebft n\u1ed1i <\/li><li><strong>Bridge_protocol_version<\/strong>: Phi\u00ean b\u1ea3n m\u1edbi c\u1ee7a MQTT \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng cho 2 broker <\/li><li><strong>Topic<\/strong>: Bao g\u1ed3m: t\u00ean topic \u0111\u01b0\u1ee3c trao \u0111\u1ed5i gi\u1eefa 2 broker, chi\u1ec1u trao \u0111\u1ed5i v\u00e0 topic mapping gi\u1eefa 2 broker <\/li><\/ul>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter is-resized\"><img decoding=\"async\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/06\/2_word-image-2.png\" alt=\"giao-thuc-mqtt-la-gi\" class=\"wp-image-2467\" width=\"700\" title=\"\"><\/figure><\/div>\n\n\n\n<p>   V\u1edbi nh\u1eefng th\u00f4ng tin \u0111\u01b0\u1ee3c cung c\u1ea5p ph\u00eda tr\u00ean, ch\u00fang t\u00f4i hy v\u1ecdng b\u1ea1n \u0111\u00e3 gi\u1ea3i \u0111\u00e1p \u0111\u01b0\u1ee3c c\u00e1c th\u1eafc m\u1eafc li\u00ean quan \u0111\u1ebfn MQTT. N\u1ebfu \u0111ang theo \u0111u\u1ed5i c\u00e1c d\u1ef1 \u00e1n IoT, ki\u1ebfn th\u1ee9c c\u01a1 b\u1ea3n v\u1ec1 giao th\u1ee9c MQTT s\u1ebd l\u00e0 \u201ch\u00e0nh trang\u201d thi\u1ebft y\u1ebfu d\u00e0nh cho b\u1ea1n. Ch\u00fac b\u1ea1n c\u00f3 th\u1ec3 chinh ph\u1ee5c \u0111\u01b0\u1ee3c giao th\u1ee9c MQTT nh\u00e9!<\/p>\n\n\n\n<h2 id=\"Nh\u1eefng_c\u00e2u_h\u1ecfi_th\u01b0\u1eddng_g\u1eb7p_v\u1ec1_giao_th\u1ee9c_MQTT\"><a id=\"post-2454-_gtcak577j9ah\"><\/a><strong>Nh\u1eefng c\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p v\u1ec1 giao th\u1ee9c MQTT<\/strong><\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1627914571956\" class=\"rank-math-list-item\">\n<h3 id=\"Giao_th\u1ee9c_MQTT_ph\u00f9_h\u1ee3p_v\u1edbi_m\u00f4i_tr\u01b0\u1eddng_n\u00e0o?\"><strong>Giao th\u1ee9c MQTT ph\u00f9 h\u1ee3p v\u1edbi m\u00f4i tr\u01b0\u1eddng n\u00e0o?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>MQTT l\u00e0 giao th\u1ee9c th\u00f4ng minh, s\u1edf h\u1eefu nhi\u1ec1u t\u00ednh n\u0103ng thi\u1ebft th\u1ef1c. Do \u0111\u00f3 \u0111\u00e2y ch\u00ednh l\u00e0 s\u1ef1 l\u1ef1a ch\u1ecdn ho\u00e0n h\u1ea3o cho:<br \/>&#8211; Qu\u00e1 tr\u00ecnh giao ti\u1ebfp gi\u1eefa m\u00e1y v\u00e0 m\u00e1y (M2M)<br \/>&#8211; Nh\u1eefng thi\u1ebft b\u1ecb nh\u00fang b\u1ecb gi\u1edbi h\u1ea1n v\u1ec1 b\u1ed9 nh\u1edb v\u00e0 t\u1ed1c \u0111\u1ed9<br \/>&#8211; N\u01a1i c\u00f3 nh\u00e0 m\u1ea1ng vi\u1ec5n th\u00f4ng \u0111\u1eaft, thi\u1ebfu uy t\u00edn v\u00e0 b\u0103ng th\u00f4ng th\u1ea5p<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1627914597784\" class=\"rank-math-list-item\">\n<h3 id=\"T\u00ednh_b\u1ea3o_m\u1eadt_c\u1ee7a_MQTT_c\u00f3_t\u1ed1t_h\u01a1n_HTTP_kh\u00f4ng?\"><strong>T\u00ednh b\u1ea3o m\u1eadt c\u1ee7a MQTT c\u00f3 t\u1ed1t h\u01a1n HTTP kh\u00f4ng?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>C\u00e2u tr\u1ea3 l\u1eddi l\u00e0 \u201cC\u00f3\u201d. So v\u1edbi HTTP, giao th\u1ee9c MQTT c\u00f3 l\u1ee3i th\u1ebf h\u01a1n v\u1ec1 t\u00ednh b\u1ea3o m\u1eadt d\u1eef li\u1ec7u truy\u1ec1n. \u1ede qu\u00e1 tr\u00ecnh m\u00e3 h\u00f3a tr\u1ecdng t\u1ea3i (payload), MQTT \u0111\u00e3 truy\u1ec1n tin nh\u1eafn th\u00f4ng qua SSL\/TLS.<br \/>Trong khi \u0111\u00f3, HTTP kh\u00f4ng h\u1ed7 tr\u1ee3 m\u00e3 h\u00f3a v\u00e0 d\u1eef li\u1ec7u s\u1eb5n c\u00f3 \u1edf d\u1ea1ng plain text. V\u1eady n\u00ean, giao th\u1ee9c c\u00f3 kh\u1ea3 n\u0103ng b\u1ecb x\u00e2m nh\u1eadp b\u1ea5t c\u1ee9 l\u00fac n\u00e0o. Tuy nhi\u00ean, ng\u01b0\u1eddi d\u00f9ng c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng HTTPS \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o t\u00ednh b\u1ea3o m\u1eadt t\u1ed1t h\u01a1n.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1627914618851\" class=\"rank-math-list-item\">\n<h3 id=\"\u01afu_\u0111i\u1ec3m_c\u1ee7a_giao_th\u1ee9c_MQTT_l\u00e0_g\u00ec?\"><strong>\u01afu \u0111i\u1ec3m c\u1ee7a giao th\u1ee9c MQTT l\u00e0 g\u00ec?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>&#8211; C\u00f3 t\u00ednh b\u1ea3o m\u1eadt, an to\u00e0n th\u00f4ng tin cao<br \/>&#8211; Nh\u1eb9 v\u00e0 t\u1ed1i \u01b0u<br \/>&#8211; Tin nh\u1eafn \u0111\u01b0\u1ee3c g\u1eedi \u0111i \u0111\u00e1ng tin c\u1eady<br \/>&#8211; C\u00f3 kh\u1ea3 n\u0103ng truy\u1ec1n th\u00f4ng theo hai h\u01b0\u1edbng<br \/>&#8211; H\u1ed7 tr\u1ee3 \u0111a d\u1ea1ng c\u00e1c thi\u1ebft b\u1ecb k\u1ebft n\u1ed1i<br \/>&#8211; Kh\u1eafc ph\u1ee5c h\u1ea1n ch\u1ebf v\u1ec1 m\u1ea1ng vi\u1ec5n th\u00f4ng k\u00e9m ch\u1ea5t l\u01b0\u1ee3ng<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1627914656899\" class=\"rank-math-list-item\">\n<h3 id=\"H\u1ea1n_ch\u1ebf_c\u1ee7a_MQTT_l\u00e0_g\u00ec?\"><strong>H\u1ea1n ch\u1ebf c\u1ee7a MQTT l\u00e0 g\u00ec?<\/strong><\/h3>\n<div class=\"rank-math-answer \">\n\n<p>&#8211; Giao th\u1ee9c MQTT ch\u1ec9 s\u1eed d\u1ee5ng TLS\/SSL \u0111\u1ec3 b\u1ea3o m\u1eadt, ch\u00fang kh\u00f4ng \u0111\u01b0\u1ee3c m\u00e3 h\u00f3a<br \/>&#8211; Kh\u00f4ng kh\u1ea3 thi cho vi\u1ec7c m\u1edf r\u1ed9ng m\u1ea1ng MQTT tr\u00ean to\u00e0n c\u1ea7u<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<p>\n  M\u1ecdi th\u1eafc m\u1eafc v\u00e0 g\u00f3p \u00fd li\u00ean quan, xin vui l\u00f2ng<a href=\"https:\/\/tino.vn\/blog\/\"> li\u00ean h\u1ec7 ngay Tino Group<\/a> \u0111\u1ec3 \u0111\u01b0\u1ee3c t\u01b0 v\u1ea5n chi ti\u1ebft ho\u1eb7c<a href=\"https:\/\/www.facebook.com\/tino.com.vn\" rel=\"nofollow noopener\" target=\"_blank\"> Fanpage<\/a> \u0111\u1ec3 c\u1eadp nh\u1eadt nh\u1eefng th\u00f4ng tin m\u1edbi nh\u1ea5t nh\u00e9!\n<\/p>\n\n\n\n<p>\n  Tinh g\u1ecdn quy tr\u00ecnh &#8211; ch\u1ea1m \u0111\u1ec9nh doanh thu &#8211; Tino Group t\u1ef1 tin \u0111\u1ed3ng h\u00e0nh c\u00f9ng doanh nghi\u1ec7p Vi\u1ec7t tr\u00ean h\u00e0nh tr\u00ecnh chuy\u1ec3n \u0111\u1ed5i s\u1ed1!\n<\/p>\n\n\n\n<p><strong>C\u00d4NG TY C\u1ed4 PH\u1ea6N T\u1eacP \u0110O\u00c0N TINO<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Tr\u1ee5 s\u1edf ch\u00ednh: L17-11, T\u1ea7ng 17, T\u00f2a nh\u00e0 Vincom Center, S\u1ed1 72 L\u00ea Th\u00e1nh T\u00f4n, Ph\u01b0\u1eddng B\u1ebfn Ngh\u00e9, Qu\u1eadn 1, Th\u00e0nh ph\u1ed1 H\u1ed3 Ch\u00ed Minh<\/li><li>T\u1ed5ng \u0111\u00e0i mi\u1ec5n ph\u00ed: 1800 6734<\/li><li>Email: info@tino.org<\/li><li>Website: <a href=\"https:\/\/tino.vn\/blog\/\">www.tino.org<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>S\u1edf h\u1eefu nh\u1eefng t\u00ednh n\u0103ng m\u1ea1nh m\u1ebd, MQTT \u0111\u00e3 tr\u1edf th\u00e0nh giao th\u1ee9c \u0111\u01b0\u1ee3c ng\u01b0\u1eddi d\u00f9ng s\u1eed d\u1ee5ng ph\u1ed5 bi\u1ebfn hi\u1ec7n nay. V\u1eady giao th\u1ee9c MQTT l\u00e0 g\u00ec? T\u00ednh n\u0103ng giao th\u1ee9c MQTT nh\u01b0 th\u1ebf n\u00e0o? H\u00e3y c\u00f9ng Tino Group t\u00ecm hi\u1ec3u qua b\u00e0i vi\u1ebft d\u01b0\u1edbi \u0111\u00e2y nh\u00e9! Giao th\u1ee9c MQTT l\u00e0 g\u00ec? \u0110\u1ecbnh ngh\u0129a [&hellip;]<\/p>\n","protected":false},"author":24,"featured_media":2455,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7347],"tags":[6149],"class_list":["post-109957","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-chuyen-doi-so","tag-chuyen-doi-so"],"_links":{"self":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/109957","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/users\/24"}],"replies":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/comments?post=109957"}],"version-history":[{"count":1,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/109957\/revisions"}],"predecessor-version":[{"id":114166,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/109957\/revisions\/114166"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media\/2455"}],"wp:attachment":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media?parent=109957"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/categories?post=109957"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/tags?post=109957"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}