0️⃣ 시작 전





1. TCP와 UDP 차이



1) TCP와 UDP는 OSI 7계층 중 TCP/IP의 전송 계층에서 사용되는 프로토콜

2) TCP는 연결 지향적 프로토콜 / UDP는 비연결형 프로토콜

3) TCP는 수신 여부를 확인하나 UDP는 수신 여부를 확인하지 않음

4) 때문에 UDP보다 TCP가 신뢰성이 높음

5) TCP flow







2. MQTT란 ?



1) 메세지 발행 - publishing / 주제 구독 - subscribe을 원칙으로 함

2) 저전력, 신뢰할 수 없는 네트워크에서 Non-TCP 기반으로 통신하기 위한 프로토콜

3) QoS를 통해 메시지 전송을 보증 가능

4) 메시지 전송 완료 패킷을 기다리기에 실패 시 재전송 가능

5) 확장성, 신뢰성, 보안, 지원 등 다방면에서 쉽게 사용 가능

6) 아래와 같이 ESP32와 Node-red를 이용하여 확인할 예정







1️⃣ MQTT 확인





1. 아래 링크에서 Host / Port / ClientID 확인

MQTT_Client_URL







2️⃣ esp32 코드 업로드





1. EspMQTTClient 라이브러리 설치









2. 아래 코드 참고하여 코드 수정 후 업로드

esp32코드는 Port 1883으로 설정 / MQTT Port는 8884로 설정











4. MQTT Client에서 연결 시도



연결이 완료 되면 아래와 같이 “connected”와 버튼이 “Disconnect”로 변경 됨









3️⃣ MQTT Messages 확인





1. 아래 순으로 Test









2. Topic 설정















3. 시리얼 모니터 및 MQTT 확인

시리얼모니터



MQTT









참고
https://mangkyu.tistory.com/15
https://dejavuhyo.github.io/posts/mqtt-concept/
https://cho-wifi-iot.blogspot.com/p/python-dht11-mqtt-node-red.html
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=changbab&logNo=221565552533