마이크로컨트롤러와 기타 리소스가 제한된 기기에서 실행되며 하드웨어 접근 모듈을 제공하는 경량 Python 3 구현체입니다.
cesanta/mongoose
마이크로컨트롤러용 TCP/IP 스택, TLS 1.3, HTTP, WebSocket, MQTT 및 펌웨어 OTA 업데이트를 제공하는 두 파일로 구성된 임베디드 C 네트워킹 라이브러리입니다.
- 스타
- 13,105
- 포크
- 2,955
- 열린 이슈
- 3
- 마지막 커밋
- 그저께
어떤 프로젝트인가요?
Mongoose는 임베디드 C/C++ 프로젝트를 위한 네트워킹 라이브러리입니다. 드라이버가 포함된 TCP/IP 스택, TLS 1.3, HTTP, WebSocket, MQTT 및 펌웨어 OTA 업데이트를 외부 의존성 없이 두 개의 소스 파일인 mongoose.c와 mongoose.h에 담았습니다. 베어메탈이나 RTOS에서 실행할 수 있으며, lwIP 또는 Zephyr 같은 기존 스택 위에서 사용할 수도 있습니다.
이 라이브러리는 STM32, NXP i.MX RT, MCX, RW612 계열부터 ESP32, Raspberry Pi RP2040/RP2350, Renesas RA 및 TI 부품은 물론 Linux, macOS, Windows까지 지원합니다. 이벤트 기반 API는 단일 이벤트 관리자 루프와 연결별 핸들러 함수를 사용합니다. 내장 프로토콜에는 일반 TCP/UDP, SNTP, 비동기 DNS, Modbus-TCP도 포함됩니다.
프로젝트는 GPLv2 또는 상용 라이선스로 이중 라이선스가 제공되며, 상용 사용자를 위해 유료 지원과 보안 업데이트도 제공합니다.
핵심 기능
- 01다양한 MCU 이더넷 및 Wi-Fi 칩용 드라이버가 포함된 TCP/IP 스택
- 02내장 TLS 1.3 또는 외부 mbedTLS 및 OpenSSL 사용
- 03HTTP 서버 및 클라이언트, WebSocket, MQTT 지원
- 04여러 STM32, RP2040/2350, ESP32 및 NXP 플랫폼용 펌웨어 OTA 업데이트
- 05외부 의존성이 없는 순수 ISO C 및 C++ 소스
활용 사례
- 마이크로컨트롤러 기반 장치에 웹 설정 대시보드 추가
- IoT 장치에서 MQTT 브로커로 텔레메트리 전송
- 임베디드 하드웨어에 무선 펌웨어 업데이트 제공
- 리소스가 제한된 보드에서 소규모 REST API 제공
빠른 시작
- 1
mongoose.c와 mongoose.h를 프로젝트에 복사합니다
- 2
mongoose.h를 include하고 이벤트 루프를 설정하는 main.c를 작성합니다
- 3
C 컴파일러로 프로그램을 빌드합니다
cc main.c mongoose.c
사용 전 알아둘 점
- GPLv2 또는 상용 라이선스에 따라 이중 라이선스가 적용되므로, 클로즈드 소스 제품에는 유료 상용 라이선스가 필요합니다.
- 상용 지원과 보안 수정의 조기 제공은 유료 라이선스를 통해서만 이용할 수 있습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- mongoose은(는) 무엇인가요?
- 마이크로컨트롤러용 TCP/IP 스택, TLS 1.3, HTTP, WebSocket, MQTT 및 펌웨어 OTA 업데이트를 제공하는 두 파일로 구성된 임베디드 C 네트워킹 라이브러리입니다. Mongoose는 임베디드 C/C++ 프로젝트를 위한 네트워킹 라이브러리입니다. 드라이버가 포함된 TCP/IP 스택, TLS 1.3, HTTP, WebSocket, MQTT 및 펌웨어 OTA 업데이트를 외부 의존성 없이 두 개의 소스 파일인 mongoose.c와 mongoose.h에 담았습니다. 베어메탈이나 RTOS에서 실행할 수 있으며, lwIP 또는 Zephyr 같은 기존 스택 위에서 사용할 수도 있습니다.
- mongoose은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- mongoose은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- mongoose은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. mongoose의 마지막 커밋은 2026년 10월 23일입니다.
- mongoose은(는) 어디에 사용할 수 있나요?
- 마이크로컨트롤러 기반 장치에 웹 설정 대시보드 추가 IoT 장치에서 MQTT 브로커로 텔레메트리 전송 임베디드 하드웨어에 무선 펌웨어 업데이트 제공 리소스가 제한된 보드에서 소규모 REST API 제공
- mongoose는 어떻게 설치하나요?
- mongoose.c와 mongoose.h를 프로젝트에 복사합니다 mongoose.h를 include하고 이벤트 루프를 설정하는 main.c를 작성합니다 C 컴파일러로 프로그램을 빌드합니다: cc main.c mongoose.c
- mongoose은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/cesanta/mongoose
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
LLVM 기반 Go 컴파일러로, 마이크로컨트롤러, WebAssembly(WASM/WASI), 명령줄 도구를 대상으로 합니다.
ESP32, ESP8266, BK72xx 및 RP2040 마이크로컨트롤러를 Home Assistant와 다른 홈 자동화 시스템에서 제어하는 스마트 기기로 바꿔 주는 설정 기반 시스템입니다.
ESP32-CAM 기반 장치로 아날로그 수도·가스·전력 계량기를 촬영하고, 온디바이스 AI로 검침값을 디지털 값으로 변환합니다.
HTTP/1, HTTP/2, WebSocket 트래픽을 검사하는 콘솔·명령줄·웹 인터페이스를 갖춘 TLS 지원 인터셉팅 HTTP 프록시입니다.
xiaozhi-esp32 ESP32 음성 기기를 위한 Python/Java/Vue 백엔드 서버로, MQTT+UDP, WebSocket, MCP, 화자 인식, 지식 베이스를 지원합니다.