Iroh
공개키 기반 초고속 P2P 네트워크 연결 라이브러리 오픈소스
About
- p2p that just works : "저 전화기로 연결해줘" 하면 위치와 상관없이 가장 빠른 네트워크 연결을 유지하는 API 제공
- 네트워크 주소나 IP가 아닌 공개키(Public Key, dial keys) 기반으로 대상 노드와 연결하는 API 제공
- 최적의 경로를 찾아 직접 연결(Hole-punching) 또는 공개 릴레이 서버를 통해 항상 가장 빠른 연결을 유지
- QUIC 기반(Quinn 사용) 으로 암호화, 동시 스트림, 데이터그램, 지연 없는 통신을 기본 제공하며, 헤드 오브 라인 블로킹이 발생하지 않음
- head-of-line-blocking : 네트워크 통신에서 한 줄의 데이터(패킷) 흐름 중 앞쪽의 일부 데이터가 지연될 경우, 그 뒤에 있는 모든 데이터도 함께 대기하며 전체 전송 지연이 발생하는 현상
- 동일한 API로 ESP32, Raspberry Pi, Linux에서 실행 가능하며, 장치들이 자동으로 서로를 발견 - 브로커나 게이트웨이 필요없음