Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)Nghiên cứu giao thức MQTT(Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT (tt)
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
-
ĐỖ HUY NAM
NGHIÊN CỨU GIAO THỨC MQTT (MESSAGE QUEUE TELEMETRY TRANSPORT) VÀ ỨNG DỤNG THU THẬP
DỮ LIỆU CẢM BIẾN THEO MQTT
Chuyên ngành: Khoa học máy tính
Mã số: 60.48.01.01
TÓM TẮT LUẬN VĂN THẠC SĨ
HÀ NỘI - 2017
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: Tiến sĩ: Hoàng Lê Minh…
Phản biện 1: ………
Phản biện 2: ………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3MỞ ĐẦU
IoT hiện nay đang là một xu hướng mạnh mẽ trên toàn thế giới, mở ra những cơ hội chưa từng có cho các nền kinh tế, doanh nghiệp, tổ chức và cá nhân để cạnh tranh trong môi trường mới Rất nhiều các công ty tập đoàn có giá trị thị trường lớn đang đầu tư vào tỷ đô la vào nghiên cứu và phát triển lĩnh vực này trên thế giới
Cha đ của IoT - ông Kevin shton nhà sáng lập Trung tâm uto-ID tại Viện Công nghệ Massachusetts, M từng giải thích, IoT được hiểu đơn giản là viễn cảnh mà tất cả đồ vật trên thế giới, từ chiếc máy bay khổng lồ cho đến những vật d ng bình thường nh b trong cuộc s ng, đều được kết n i, truyền tải, tương tác và trao đổi dữ liệu với nhau qua mạng internet Khi đó, m i đồ vật sẽ được gán một m nhận dạng, gi ng như địa ch IP trên
hệ th ng Nhờ vậy, người d ng có thể tương tác, điều khiển và kiểm soát mọi thứ trong cuộc
s ng thông qua những thiết bị thông minh, như điện thoại thông minh, máy tính bảng 12
Phạm vi ứng d ng công nghệ IoT thực sự rộng lớn và đa dạng, từ quản l giao thông, quản l đô thị, quản l môi trường, ứng phó khẩn cấp đến mua sắm thông minh, các dịch v
y tế chăm sóc sức kh e
IoT gần đây đ đạt được lực k o rất lớn IoT thách thức các doanh nghiệp, các công
ty nh , và các nhà phát triển với những vấn đề mới để giải quyết đặc biệt là vấn đề giao tiếp giữa các thiết bị IoT Để các thiết bị có thể giao tiếp với nhau, chúng sẽ cần một hoặc nhiều giao thức, có thể xem là một thứ ngôn ngữ chuyên biệt để giải quyết một tác v nào đó Chắc chắn chúng ta đ ít nhiều sử d ng một trong những giao thức phổ biến nhất thế giới,
đó là HTTP để tải web Ngoài ra chúng ta còn có SMTP, POP, IM P dành cho email, FTP
d ng để trao đổi file…
Những giao thức như thế này hoạt động ổn bởi các máy chủ web, mail và FTP thường không phải nói với nhau nhiều, khi cần, một phần mềm phiên dịch đơn giản sẽ đứng
ra làm trung gian để hai bên hiểu nhau Còn với các thiết bị IoT, chúng phải đảm đương rất nhiều thứ, phải nói chuyện với nhiều loại máy móc thiết bị khác nhau Đáng tiếc rằng hiện người ta chưa có nhiều sự đồng thuận về các giao thức để IoT trao đổi dữ liệu Nói cách khác, tình hu ng này gọi là "giao tiếp thất bại", một bên nói nhưng bên kia không mu n và không thể nghe Hiện nay có rất nhiều giao thức giao tiếp giữa các thiết bị IoT được đưa ra như: HTTP, Universal Plug and Play (UPnP), CoAP, XMPP, MQTT
Trang 4Trong giai đoạn gần đây giao thức MQTT đang nổi lên như là một giao thức được sử
d ng phổ biến d ng cho giao tiếp IoT, rất nhiều h ng công nghệ lớn đ sử d ng, áp d ng và
h trợ giao thức MQTT cho các ứng d ng của mình như: Facebook cho ứng d ng Facebook Messenger, IBM, Intel, Amazon, WSO2, Microsoft [7]
Đó là l do tôi chọn đề tài: “Nghiên cứu giao thức MQTT (Message Queue Telemetry Transport) và ứng dụng thu thập dữ liệu cảm biến theo MQTT” làm luận
văn t t nghiệp
Cấu trúc của luận văn được chia làm ba chương, với nội dung chính của m i chương như sau:
Chương 1: Tổng quan về Internet of Things (IoT)
Chương 2: Tìm hiểu giải pháp thu thập dữ liệu cảm biến bằng công nghệ IoT
Chương 3: Xây dựng ứng d ng IoT thu thập dữ liệu cảm biến theo giao
thức MQTT
CHƯƠNG I: TỔNG QUAN VỀ INTERNET OF THINGS (IoT)
Trong khoảng hai năm trở lại đây, chắc hẳn chúng ta đ không ít lần nghe thoáng qua
về khái niệm IoT, hay bắt gặp tin tức về các sản phẩm được quảng cáo là ph c v cho nhu
Trang 5cầu “smart home” nhà thông minh Trong đó, những thiết bị gia d ng như lò nướng hay tủ lạnh có thể "nói chuyện" được với nhau Nhưng chúng kết n i với nhau như thế nào, và liệu
xu hướng này có thực sự b ng nổ, đưa chúng ta đến một thế giới tương lai như trong game hay phim ảnh? Trong b i cảnh mà hàng ngày càng nhiều chủng loại thiết bị được gán mác
“thông minh - smart” và thi nhau “lên mây-cloud” như hiện nay, sẽ là không thừa khi chúng
ta tìm hiểu các kiến thức căn bản về hệ sinh thái IoT này
1.1 Giới thiệu về IoT
Hình 1 1: Mô hình Internet of Things
(Nguồn: Tham khảo từ internet)
IoT là khái niệm để ch các thiết bị có khả năng kết n i với nhau, kết n i với Internet
và tạo nên một mạng lưới các thiết bị thông minh ph c v cho cuộc s ng người d ng 12
Trang 61.1.1 Định nghĩa về IoT
Hình 1 2: Sự tăng trưởng của các thiết bị IoT [12]
IoT là thuật ngữ d ng để ch các đ i tượng có thể được nhận biết cũng như ch sự tồn tại của chúng trong một kiến trúc mang tính kết n i C m từ này được đưa ra bởi Kevin shton vào năm 1999 Ông là một nhà khoa học đ sáng lập ra Trung tâm uto-ID ở đại học MIT, nơi thiết lập các quy chuẩn toàn cầu cho RFID cũng như một s loại cảm biến khác [14]. Lợi ích và vai trò của IoT
IoT có ảnh hưởng và ứng d ng rất rộng r i trên nhiều lĩnh vực như: quản l hạ tầng,
y tế, xây dựng và tự động hóa, giao thông, quân sự, truyền thông, tài chính…
C thể trong lĩnh vực y tế, các thiết bị IoT có thể được sử d ng để cho ph p theo dõi sức kh e từ xa và hệ th ng thông báo khẩn cấp Các thiết bị theo dõi sức kh e như đo huyết
áp, nhịp tim hay các thiết bị tiên tiến có khả năng giám sát cấy gh p đặc biệt như máy điều hòa nhịp tim, máy trợ thính… đang được đưa vào nghiên cứu, sản xuất để ph c v cho nhu cầu của con người một cách t i ưu nhất
Nhờ IoT, có nhiều tưởng độc đáo đ trở thành hiện thực Không ch phát huy t t hơn cho công d ng v n có của thiết bị, IoT còn góp phần đem lại cuộc s ng t t đẹp hơn cho con người
Có thể nói, lợi ích của IoT đ i với cuộc s ng của con người hiện đại là vô c ng phong phú Không những ch quan tâm chăm lo về vấn đề sức kh e, mà còn hướng đến những lợi ích khác về mặt an ninh, giáo d c
Trang 7Theo như dự báo của các chuyên gia về tiềm năng của IoT đến năm 2020, họ cho rằng, IoT sẽ càng ngày càng phát triển mạnh mẽ hơn nữa IoT đ và đang trở thành chìa khóa thành công trong tương lai 1
1.1.2 Các cơ hội và xu hướng phát triển của IoT
IoT là xu hướng phát triển mạnh mẽ của thế giới và đ bắt đầu xuất hiện tại Việt Nam như nhà thông minh, giao thông thông minh, đô thị thông minh… Trên nền tảng của
b n tr cột công nghệ là mạng x hội, công nghệ di động, phân tích dữ liệu lớn, điện toán đám mây, IoT được dự báo sẽ đem lại một kỷ nguyên mới b ng nổ cả về s lượng kết n i với khoảng 80 tỷ kết n i vào năm 2020 cũng như các dịch v , ứng d ng trên nền Internet, tạo động lực phát triển kinh tế, đổi mới công nghệ, từ đó tác động đến mọi mặt đời s ng kinh tế x hội của các qu c gia
Trên thế giới đ hình thành các liên minh IoT như liên kết qu c tế giữa các khu vực (EU - Hàn Qu c, EU - Trung Qu c, EU - Nhật Bản… , liên minh các h ng Intel, Samsung, Dell, Broadcom Tại Việt Nam, S.M .C với Social mạng x hội , Mobility di động , nalytics phân tích dữ liệu lớn và Cloud điện toán đám mây đang tạo ra xu thế phát triển
"thông minh" trên mọi lĩnh vực 3
Bùng nổ những trang chia sẻ cộng đồng
Việc b ng nổ những trang web chia s cộng động được tích hợp với chức năng chia
s ảnh, âm nhạc hay video nhằm k o mọi người gần lại nhau hơn trong một “thế giới phẳng” yêu cầu một mạng lưới truyền tải có dung lượng lớn để đảm bảo yêu cầu ngày một cao hơn của người d ng
Nhiều hơn những trang tìm kiếm
Ngày càng có nhiều hơn những trang web tìm kiếm, chia s và lưu trữ thông tin, thông tin ngày một nhiều lên yêu cầu một hệ th ng lưu trữ có thể th a m n yêu cầu của người d ng
Những trang chia sẻ đa phương tiện
Youtube là trang mạng nổi tiếng nhất trong lĩnh vực tạo và chia s video trên mạng,
c ng với đó là các trang chia s âm nhạc và hình ảnh khác Những trang ứng d ng này yêu cầu dung lượng lớn cả về vấn đề lưu trữ cũng như truyền tải
Nguồn lợi mới trong lĩnh vực kinh doanh
IoT mở ra cơ hội đổi mới công nghệ và ước đoán sẽ mang lại các giá trị tương đương 19.000 tỷ USD trong vòng 10 năm tới Hiện nay có khoảng 8 tỷ các thiết bị kết n i, nhưng
Trang 8đến năm 2020 sẽ lên tới 80 tỷ thiết bị Một s tưởng và sản phẩm về IoT đ bắt đầu xuất hiện như nhà thông minh, các thiết bị điều khiển trong gia đình, giao thông
Sự phát triển của IoT tạo ra b n bước chuyển dịch trong vai trò của các nhà khai thác viễn thông Vai trò đầu tiên là thu thập dữ liệu để nâng cao hiệu quả nội bộ như hệ th ng báo cáo và roaming Vai trò thứ hai là phân tích thông tin tương tác của khách hàng, để cung cấp những dịch v IoT mang tính cá nhân cho các thuê bao của mình Vai trò thứ ba là
sử d ng cơ sở dữ liệu phân tích là giá trị, kết n i với các công ty cung cấp dịch v ở lĩnh vực khác tạo ra sản phẩm hiệu quả Vai trò thứ tư là cung cấp dịch v quản l dữ liệu cho các kết n i IoT, làm cầu n i giữa các công ty cung cấp ứng d ng IoT với chính các kết n i IoT có SIM và không có SIM để các bên đều mua được dịch v mình cần và bán được dịch
v mình có một cách hiệu quả 2
Để có thể triển khai IoT thành công và bền vững, cần phải cân nhắc đến b n yếu t là nền tảng phần mềm, hệ sinh thái giữa các ngành, quá trình chuẩn hóa về công nghệ và giải quyết được những lo lắng của khách hàng liên quan tới đảm bảo tính riêng tư và an toàn
Mặc d khái niệm IoT được đưa ra từ lâu Nhưng trong những năm gần đây nó mới được nhiều doanh nghiệp cũng như các nhà khoa học để và phát triển mạnh mẽ Trong các năm gần đây tại các triển l m công nghệ CES, triễn l m di động toàn cầu các h ng sản xuất lớn thay nhau đưa ra các thiết bị thông minh: tivi thông minh, tủ lạnh thông minh và tưởng về nhà thông minh, giao thông thông minh, thành ph thông minh liên t c được giới thiệu Và khi gây được sự chú của cộng đồng, IoT đ cho thấy tiềm năng của mình bằng những con s đáng kinh ngạc
IoT đang trở thành xu hướng toàn cầu, được dự đoán là sẽ tạo ra sự b ng nổ kinh tế mới và là thị trường thiết bị lớn nhất trên thế giới Ước tính đến năm 2019, thị trường này sẽ gấp đôi quy mô thị trường smartphone, PC, tablet, xe hơi kết n i và thị trường các thiết bị đeo trên người cộng lại IoT sẽ mang lại 1,7 nghìn tỷ USD giá trị gia tăng cho nền kinh tế toàn cầu trong 4 năm tới, bao gồm phần cứng, phần mềm, chi phí lắp đặt, dịch v quản l ,
và giá trị kinh tế tạo ra từ hiệu quả của IoT 2
1.1.3 Các công nghệ nền tảng của IoT
Các công nghệ chủ ch t của IoT đó là, RFID, Sensor, Smart, Nano Sự phát triển của những công nghệ nói trên cũng có thể coi là xu hướng phát triển của IoT
Trang 9
1.2 Tổng quan về giao thức thu thập dữ liệu IoT
1.2.1 Giao thức MQTT
1.2.1.1 Giới thiệu về giao thức MQTT
MQTT được tạo ra bởi Tiến sĩ ndy Standford-Clark của IBM và Arlen Nipper of Arcom (bây giờ Eurotech in 1999 như một phương thức đáng tin cậy hiệu quả với chi phí
để kết n i các thiết bị giám sát sử d ng trong các ngành công nghiệp dầu m và khí đ t với các máy chủ doanh nghiệp từ xa Khi thử thách với việc tìm kiếm một cách để đẩy dữ liệu
từ các cảm biến đường ng trong sa mạc để quản lý hệ th ng SCADA, họ quyết định một giao thức TCP/IP dựa trên mô hình xuất bản/đăng k publish/subscribe đó sẽ là sự kiện hướng tới giảm chi phí giữ liên kết truyền hình vệ tinh [7]
1.2.1.2 Mô hình giao thức MQTT
Hình 1 5: Mô hình giao thức MQTT [7]
Một phiên làm việc MQTT được chia thành b n giai đoạn: kết n i, xác thực, giao tiếp và chấm dứt Một khách hàng bắt đầu bằng cách tạo ra một kết n i TCP/IP cho broker bằng cách sử d ng một cổng tiêu chuẩn hoặc một cổng tùy ch nh được xác định bởi các nhà khai thác của nhà môi giới Khi kết n i, điều quan trọng là nhận ra rằng các máy chủ có thể tiếp t c một phiên cũ nếu được cung cấp với một danh tính khách hàng tái sử d ng
Trang 101.2.1.3 Định dạng thông điệp MQTT
1.2.1.4 Môi trường hoạt động MQTT
Bởi vì MQTT không được thiết kế với an ninh trong tâm trí, giao thức có truyền
th ng được sử d ng trong các mạng lưới an toàn, back-end cho các m c đích ứng d ng c thể Cấu trúc đề MQTT có thể dễ dàng tạo thành một cái cây khổng lồ và không có cách nào
rõ ràng làm thế nào để phân chia một cây thành các miền logic nh hơn có thể được liên Điều này làm cho nó khó khăn để tạo ra một mạng lưới MQTT khả năng mở rộng trên toàn cầu, bởi vì như kích thước của các chủ đề cây trồng, độ phức tạp tăng lên
1.2.2 Giao Thức CoAP
1.2.2.1 Giới thiệu về giao thức CoAP
Các giao thức CoAP là cần thiết vì các giao thức truyền th ng được coi là "quá nặng" cho các ứng d ng liên quan đến các thiết bị IoT hạn chế Mạng lưới các nút kết thúc IoT có
xu hướng "nén -lossy", nhưng các thiết bị năng lượng thấp mà dựa vào họ được kỳ vọng sẽ tiếp t c hoạt động - được trang bị pin hoặc thu năng lượng - trong nhiều năm và cần phải tiêu hao ít năng lượng càng t t [8]
CoAP là một giao thức phần mềm cho ph p đơn giản ràng buộc nhiều thứ chẳng hạn như cảm biến năng lượng thấp và cơ cấu chấp hành để giao tiếp tương tác thông qua internet Nó chạy trên các thiết bị có h trợ các UDP, và thực hiện một "nhẹ" lớp ứng d ng
có tính năng kích thước nh nhắn, quản lý tin nhắn và trên không nhắn nhẹ l tưởng cho các thiết bị điện năng thấp, bộ nhớ thấp
1.2.2.2 Mô hình giao thức CoAP
1.2.2.3 Định dạng thông điệp CoAP
1.2.2.4 Môi trường hoạt động CoAP
CoAP là một giao thức sử d ng chủ yếu như là một giao thức một-một cho chuyển trạng thái thông tin giữa máy khách và máy chủ Trong khi nó có h trợ cho quan sát tài nguyên, CoAP là phù hợp nhất với một mô hình chuyển trạng thái, không hoàn toàn là dựa trên sự kiện
Thông tin thiết bị, thiết bị điều khiển và thiết bị thông tin liên lạc trong mạng gia đình thông minh có các ký tự của chi phí thấp và trọng lượng nhẹ Như vậy, CoAP có thể được xem là sự lựa chọn giao thức t t nhất cho các mạng truyền thông gia đình thông minh
Trang 11Mạng nhà thông minh cung cấp kiểm soát và giám sát năng lượng của các thiết bị trong nhà Hệ th ng kiểm soát năng lượng sử d ng quản lý ổ cắm thông minh và thiết bị sử
d ng màn hình điện để cung cấp điện áp, thông tin năng lượng hiện tại và khác Nó có thể nhận ra cảnh báo tai nạn, điều khiển từ xa và tiết kiệm năng lượng năng động Cấu trúc hệ
th ng được thể hiện trong Hình 1.15 M i bộ sưu tập nút dữ liệu với CoAP khách hàng có thể trao đổi thông tin với các nút khác CoAP có thể được cài đặt được trong mạng LAN hoặc Internet Không gi ng như nhiều giao thức không dây cho các thiết bị, Co P đ thiết
kế không bị hạn chế trong một mạng nội bộ nhưng cung cấp nền tảng cơ bản của trang web Trong hệ th ng này, các proxy CoAP-HTTP được sử d ng để cung cấp cho khách hàng kết
n i HTTP đến tài nguyên Co P và ngược lại [8]
Hình 1 15: Hệ thống kiểm soát năng lƣợng [8]
1.2.3 Một số ưu điểm của MQTT so với các giao thức IoT khác
MQTT là một giao thức truyền thông nhiều-nhiều để truyền các thông điệp giữa nhiều khách hàng thông qua broker trung tâm Nó tách riêng người sản suất (producer) và người tiêu th (consumer) bằng cách cho phép các client gửi bản tin đi và có các broker quyết định đường đi và sao ch p bản tin MQTT có một s h trợ để duy trì bản tin, nhưng
nó làm t t nhất nhiệm v là bus truyền dữ liệu trực tiếp
Giao thức MQTT thì nhẹ nhàng và nhanh hơn Nó mất rất ít bytes cho việc kết n i với server và kết n i có thể giữ trạng thái mở xuyên su t
MQTT hoạt động t t trong môi trường băng thông thấp, độ trễ cao, sử d ng ít năng lượng