SlideShare a Scribd company logo
경희대학교 컴퓨터공학과
창의적 종합설계
2016. 06. 13
2012104094 서민석
2013104074 박나연
2013104091 용찬호
개량된 MQTT
노드 관리 시스템을
이용한
학교 알림 서비스
Creative Design
Presentation
2/ 12
프로젝트 소개
개량된 MQTT
Protocol
학교
알림 서비스
수업 공지
식단 알림
온습도 알림
클라이언트
APP
Android/IOS
 개량된 MQTT 프로토콜을 이용한 학교 메시지 알림 서비스
 각종 과목에 대한 수업 공지, 식단 알림, 온습도 알림 등을 받는다.
 사용자는 안드로이드 및 IOS 애플리케이션에서 메시지를 받을 수 있다.
3/ 12
MQTT?
 Publish-Subscribe 구조를 갖는 메시지 프로토콜
 저전력, 저대역폭 등 모바일 및 IoT기기에 최적화
 노드 수가 많아지면 일일이 관리 해주기 어렵다.
 Subscribe(구독)을 해야만 메시지를 받을 수 있다.
 그룹 기반의 시스템에는 적합하지 않다.
 Connection 관리를 제공하지 않는다.
Subscriber
4/ 12
개량된 MQTT 구조
 기존 MQTT 구조
BrokerPublisher
 연결을 맺은 뒤 필요한 Topic들을 일일이 구독
 개량된 MQTT 구조
 연결을 맺은 후 Monitor & DB에서 그룹화된 정보들을 전송
Subscriber Group
BrokerMonitor & DB
5/ 12
시스템 구성도
DatabaseBroker
 MQTT Broker Module
Monitor
 Database Connector
 Connection Administrator
 Holding Information
 User, Group
 Subscribe
 Log
Application (Client-1)
 Messaging Module
 Device Control Module
IoT Device (Client-1)
 Messaging Module
 Device Control Module
Publisher (Client-2)
 Publish Request Module
6/ 12
구조 상세
Monitor
 Database와 연결하여 각종 Topic에 대한 정보, User 정보, 사용자들의 구독
정보 들을 주고 받음
 Broker의 요청에 따라 정보를 전송
 Keep-alive 등 Connection 관리
Broker
 Publisher로부터 Publish 요청이 오면 Monitor에 데이터를 요청하여 Client
에게 실제 메시지를 전송해주는 중간 서버
Publisher
 특정 그룹에 대한 메시지 전송 요청을 Broker에게 전달
 Web Publisher, 온습도 센서 등
Client
 원하는 Topic을 구독
 구독한 Topic의 메시지를 브로커에서 받음
7/ 12
그룹 브로드 캐스팅
DatabaseBroker Monitor
Publisher
①
① 그룹 브로드캐스팅 메시지 전송 요청
② 해당 그룹 멤버 리스트를 Monitor에게 요청
③ 그룹 리스트 요청
④ 그룹에 해당되는 Client ID 리스트 반환
⑤ Broker에게 Client ID 리스트 전송
⑥ 해당 Client ID로 메시지 직접 전송
② ③
Subscriber Group
⑥
⑤ ④
※ Client는 구독 요청을 따로 하지 않아도 꼭 구독해야하는 것들은
Publisher에 의해 구독하고 있는 상태이다.
8/ 12
그룹 리스트와 Subscribe / Unsubscribe
그룹 리스트 확인에서
Sub/Unsub 가능
창의적 종합설계 구독
창의적 종합설계
영상 처리
학생회관 식단
연구실 온습도
자대 행정실
사용자는 클라이언트
App에서 존재하는 그룹
리스트를 확인할 수 있음
구독 시 해당 그룹의
메시지가 publish 될 때
메시지를 수신
9/ 12
Connection 정보를 통한 Keep-Alive 조정
DatabaseBroker Monitor
①
① 연결 요청(Login)을 전송
② Monitor에게 Login 요청을 위해 Client의 Username, 비밀번호 전송
③ Database의 정보와 일치하는지 확인
④ Database에서 일치한다는 Response 수신
⑤ 연결 로그 정보를 Database에 저장
⑥ 연결 로그 정보를 분석하여 Broker에게 특정 Client의 Keep-Alive 조정 요청 전송
⑦ Client의 Keep-Alive 조정
②
③
⑦ ⑥
④
Client
⑤
10/ 12
Client의 멀티 플랫폼을 위한 다양한 언어 Porting
Web
Publisher
Android IOS
 다양한 언어로 MQTT Client를 래핑하여 구현
 다양한 플랫폼에서 클라이언트 구동 가능
 개발자의 환경에 따라 적절한 클라이언트 구현을 위한 Framework화
Client
Library
11/ 12
실행 화면(Android)
로
그
인
화
면
메
인
화
면
:
구
독
그
룹
표
시
12/ 12
실행 화면(Android)
그
룹
리
스
트
및
구
독
버
튼
세
부
메
시
지
정
보
감사합니다.

More Related Content

Similar to 개량된 MQTT 노드 관리 시스템을 이용한 학교 알림 서비스

InitVerse란 무엇입니까.pdf
InitVerse란 무엇입니까.pdfInitVerse란 무엇입니까.pdf
InitVerse란 무엇입니까.pdf
너무 블록체인
 
Pathway to real time mobile cloud
Pathway to real time mobile cloudPathway to real time mobile cloud
Pathway to real time mobile cloud
jhpark
 
리로그인 Relogin: 코드스테이츠 데모데이
리로그인 Relogin: 코드스테이츠 데모데이리로그인 Relogin: 코드스테이츠 데모데이
리로그인 Relogin: 코드스테이츠 데모데이
Code States 코드스테이츠
 
Open platform/API overview
Open platform/API overviewOpen platform/API overview
Open platform/API overview
Samsung Electronics
 
빅데이터캠퍼스 소개및데이터설명 최종
빅데이터캠퍼스 소개및데이터설명 최종빅데이터캠퍼스 소개및데이터설명 최종
빅데이터캠퍼스 소개및데이터설명 최종
bigdatacampus
 
Microservices
Microservices Microservices
Microservices
영기 김
 
미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...
미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...
미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...
너무 블록체인
 
Micro Service Architecture
Micro Service ArchitectureMicro Service Architecture
Micro Service Architecture
HEECHEOL YANG
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
uEngine Solutions
 
Social groupware daou office
Social groupware daou officeSocial groupware daou office
Social groupware daou office
ByungKyu Choi
 
2014 pc방화벽 시온
2014 pc방화벽 시온2014 pc방화벽 시온
2014 pc방화벽 시온
시온시큐리티
 
Iris-iPNS / 푸시 솔루션 (Push Solution) 제품 소개
Iris-iPNS / 푸시 솔루션 (Push Solution)  제품 소개Iris-iPNS / 푸시 솔루션 (Push Solution)  제품 소개
Iris-iPNS / 푸시 솔루션 (Push Solution) 제품 소개
현용 황
 
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista Community
 
포티넷 차세대 utm
포티넷 차세대 utm 포티넷 차세대 utm
포티넷 차세대 utm Yong-uk Choe
 
Oracle Blockchain Cloud 소개 - 콘솔 화면 포함
Oracle Blockchain Cloud 소개 - 콘솔 화면 포함Oracle Blockchain Cloud 소개 - 콘솔 화면 포함
Oracle Blockchain Cloud 소개 - 콘솔 화면 포함
Mee Nam Lee
 
Microsoft azure service 소개자료
Microsoft azure service 소개자료Microsoft azure service 소개자료
Microsoft azure service 소개자료
Alvin You
 
사물인터넷서비스와 클라우드
사물인터넷서비스와 클라우드사물인터넷서비스와 클라우드
사물인터넷서비스와 클라우드
봉조 김
 
구글앱스 및 전자결재 서비스 소개
구글앱스 및 전자결재 서비스 소개구글앱스 및 전자결재 서비스 소개
구글앱스 및 전자결재 서비스 소개
은진 양
 
SKHUFEEDS 소개 발표자료
SKHUFEEDS 소개 발표자료SKHUFEEDS 소개 발표자료
SKHUFEEDS 소개 발표자료
Youngbin Han
 
002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장
002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장
002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장Cyworld AppStore (SK Communications)
 

Similar to 개량된 MQTT 노드 관리 시스템을 이용한 학교 알림 서비스 (20)

InitVerse란 무엇입니까.pdf
InitVerse란 무엇입니까.pdfInitVerse란 무엇입니까.pdf
InitVerse란 무엇입니까.pdf
 
Pathway to real time mobile cloud
Pathway to real time mobile cloudPathway to real time mobile cloud
Pathway to real time mobile cloud
 
리로그인 Relogin: 코드스테이츠 데모데이
리로그인 Relogin: 코드스테이츠 데모데이리로그인 Relogin: 코드스테이츠 데모데이
리로그인 Relogin: 코드스테이츠 데모데이
 
Open platform/API overview
Open platform/API overviewOpen platform/API overview
Open platform/API overview
 
빅데이터캠퍼스 소개및데이터설명 최종
빅데이터캠퍼스 소개및데이터설명 최종빅데이터캠퍼스 소개및데이터설명 최종
빅데이터캠퍼스 소개및데이터설명 최종
 
Microservices
Microservices Microservices
Microservices
 
미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...
미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...
미래 금융을 위한 디지털 청사진인 너무블록체인 블록체인을 살펴...
 
Micro Service Architecture
Micro Service ArchitectureMicro Service Architecture
Micro Service Architecture
 
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
유엔진 오픈소스 클라우드 플랫폼 (uEngine Microservice architecture Platform)
 
Social groupware daou office
Social groupware daou officeSocial groupware daou office
Social groupware daou office
 
2014 pc방화벽 시온
2014 pc방화벽 시온2014 pc방화벽 시온
2014 pc방화벽 시온
 
Iris-iPNS / 푸시 솔루션 (Push Solution) 제품 소개
Iris-iPNS / 푸시 솔루션 (Push Solution)  제품 소개Iris-iPNS / 푸시 솔루션 (Push Solution)  제품 소개
Iris-iPNS / 푸시 솔루션 (Push Solution) 제품 소개
 
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
Cloud-Barista 제3차 오픈 컨퍼런스 : CB-Dragonfly - 멀티 클라우드 통합 모니터링 프레임워크(Multi-Cloud ...
 
포티넷 차세대 utm
포티넷 차세대 utm 포티넷 차세대 utm
포티넷 차세대 utm
 
Oracle Blockchain Cloud 소개 - 콘솔 화면 포함
Oracle Blockchain Cloud 소개 - 콘솔 화면 포함Oracle Blockchain Cloud 소개 - 콘솔 화면 포함
Oracle Blockchain Cloud 소개 - 콘솔 화면 포함
 
Microsoft azure service 소개자료
Microsoft azure service 소개자료Microsoft azure service 소개자료
Microsoft azure service 소개자료
 
사물인터넷서비스와 클라우드
사물인터넷서비스와 클라우드사물인터넷서비스와 클라우드
사물인터넷서비스와 클라우드
 
구글앱스 및 전자결재 서비스 소개
구글앱스 및 전자결재 서비스 소개구글앱스 및 전자결재 서비스 소개
구글앱스 및 전자결재 서비스 소개
 
SKHUFEEDS 소개 발표자료
SKHUFEEDS 소개 발표자료SKHUFEEDS 소개 발표자료
SKHUFEEDS 소개 발표자료
 
002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장
002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장
002. 인프라 지원 프로그램 소개 sk컴즈 최윤난 차장
 

개량된 MQTT 노드 관리 시스템을 이용한 학교 알림 서비스

  • 1. 경희대학교 컴퓨터공학과 창의적 종합설계 2016. 06. 13 2012104094 서민석 2013104074 박나연 2013104091 용찬호 개량된 MQTT 노드 관리 시스템을 이용한 학교 알림 서비스 Creative Design Presentation
  • 2. 2/ 12 프로젝트 소개 개량된 MQTT Protocol 학교 알림 서비스 수업 공지 식단 알림 온습도 알림 클라이언트 APP Android/IOS  개량된 MQTT 프로토콜을 이용한 학교 메시지 알림 서비스  각종 과목에 대한 수업 공지, 식단 알림, 온습도 알림 등을 받는다.  사용자는 안드로이드 및 IOS 애플리케이션에서 메시지를 받을 수 있다.
  • 3. 3/ 12 MQTT?  Publish-Subscribe 구조를 갖는 메시지 프로토콜  저전력, 저대역폭 등 모바일 및 IoT기기에 최적화  노드 수가 많아지면 일일이 관리 해주기 어렵다.  Subscribe(구독)을 해야만 메시지를 받을 수 있다.  그룹 기반의 시스템에는 적합하지 않다.  Connection 관리를 제공하지 않는다.
  • 4. Subscriber 4/ 12 개량된 MQTT 구조  기존 MQTT 구조 BrokerPublisher  연결을 맺은 뒤 필요한 Topic들을 일일이 구독  개량된 MQTT 구조  연결을 맺은 후 Monitor & DB에서 그룹화된 정보들을 전송 Subscriber Group BrokerMonitor & DB
  • 5. 5/ 12 시스템 구성도 DatabaseBroker  MQTT Broker Module Monitor  Database Connector  Connection Administrator  Holding Information  User, Group  Subscribe  Log Application (Client-1)  Messaging Module  Device Control Module IoT Device (Client-1)  Messaging Module  Device Control Module Publisher (Client-2)  Publish Request Module
  • 6. 6/ 12 구조 상세 Monitor  Database와 연결하여 각종 Topic에 대한 정보, User 정보, 사용자들의 구독 정보 들을 주고 받음  Broker의 요청에 따라 정보를 전송  Keep-alive 등 Connection 관리 Broker  Publisher로부터 Publish 요청이 오면 Monitor에 데이터를 요청하여 Client 에게 실제 메시지를 전송해주는 중간 서버 Publisher  특정 그룹에 대한 메시지 전송 요청을 Broker에게 전달  Web Publisher, 온습도 센서 등 Client  원하는 Topic을 구독  구독한 Topic의 메시지를 브로커에서 받음
  • 7. 7/ 12 그룹 브로드 캐스팅 DatabaseBroker Monitor Publisher ① ① 그룹 브로드캐스팅 메시지 전송 요청 ② 해당 그룹 멤버 리스트를 Monitor에게 요청 ③ 그룹 리스트 요청 ④ 그룹에 해당되는 Client ID 리스트 반환 ⑤ Broker에게 Client ID 리스트 전송 ⑥ 해당 Client ID로 메시지 직접 전송 ② ③ Subscriber Group ⑥ ⑤ ④ ※ Client는 구독 요청을 따로 하지 않아도 꼭 구독해야하는 것들은 Publisher에 의해 구독하고 있는 상태이다.
  • 8. 8/ 12 그룹 리스트와 Subscribe / Unsubscribe 그룹 리스트 확인에서 Sub/Unsub 가능 창의적 종합설계 구독 창의적 종합설계 영상 처리 학생회관 식단 연구실 온습도 자대 행정실 사용자는 클라이언트 App에서 존재하는 그룹 리스트를 확인할 수 있음 구독 시 해당 그룹의 메시지가 publish 될 때 메시지를 수신
  • 9. 9/ 12 Connection 정보를 통한 Keep-Alive 조정 DatabaseBroker Monitor ① ① 연결 요청(Login)을 전송 ② Monitor에게 Login 요청을 위해 Client의 Username, 비밀번호 전송 ③ Database의 정보와 일치하는지 확인 ④ Database에서 일치한다는 Response 수신 ⑤ 연결 로그 정보를 Database에 저장 ⑥ 연결 로그 정보를 분석하여 Broker에게 특정 Client의 Keep-Alive 조정 요청 전송 ⑦ Client의 Keep-Alive 조정 ② ③ ⑦ ⑥ ④ Client ⑤
  • 10. 10/ 12 Client의 멀티 플랫폼을 위한 다양한 언어 Porting Web Publisher Android IOS  다양한 언어로 MQTT Client를 래핑하여 구현  다양한 플랫폼에서 클라이언트 구동 가능  개발자의 환경에 따라 적절한 클라이언트 구현을 위한 Framework화 Client Library