
TinysSB는 분산 애플리케이션을 구현하는 근본적으로 탈 중앙 접근 방식 인 SSB (Secure Scuttlebutt) https://scuttlebutt.nz/의 변형입니다. 간단히 말해서 SSB와 함께 우리는 "서버가없는 소셜 미디어"를 얻습니다. TinysSB는 동일하게 동일하지만 120b의 작은 패킷 크기 덕분에 제약 환경에서 작업 할 수 있습니다.
SSB의 핵심은 단일 보증자 부록 전용 로그입니다. 결국 로그에 대한 모든 업데이트는 각 업데이트의 진위와 무결성을 확인할 수있는 이해 당사자에게 도달합니다. 이는 보조 전급차에도 적용되므로 SSB 인식 엔티티가 전달 체인의 잠재적 링크가됩니다. 복제 수단은 괜찮습니다. 블루투스 저 에너지, 인터넷 프로토콜, USB 스틱 또는 종이에 인쇄 된 데이터가 될 수있는 모든 복제 수단은 중앙에서 수집 및 파견 된 가십 프로토콜을 사용합니다.
각 부록 전용 로그는 사소한 충돌이없는 복제 데이터 유형 (CRDT)입니다. CRDT의 부록 전용 로그 세트. CRDT는 로컬 사이트가 사본을 보관 하고이 사본에 작용할 수있는 가상 (배포 된) 데이터로 가장 잘 이해됩니다. CRDTS는 다른 복제본으로 전송되는 업데이트 메시지의 로컬 수정 결과를 얻을 수 있도록 설계되었습니다. 이러한 업데이트가 올바르게 수집되면 모든 복제품이 중앙 엔터티가 개입하거나 도움을 줄 필요없이 동일한 공유 상태로 수렴하게됩니다. CRDTS와 함께 분산 응용 프로그램을 작성하려면 신중한 설계가 필요하지만 기기가 다시 연결될 때 모든 업데이트가 다른 복제품으로 원활하게 병합되기 때문에 장치가 오프라인 상태 일 때 계속 작동하는 응용 프로그램에서는 신중한 디자인이 필요합니다. 갈라!
TinysSB는 클래식 SSB IE의 핵심 개념, 서명 된 항목이있는 부록 전용 로그, 암호화 스위트 등의 핵심 개념을 상속합니다. TinysSB의 참신함은 그것에 있습니다.
데이터 패킷 형식은 매우 작고, 즉 120 바이트가 만들어졌습니다. 요점은 대역폭 및 스토리지 리소스가 거의없는 어려운 환경에서 TinysSB를 사용하는 것입니다.
TinysSB는 BLUETOOTH LOW ENERGY (BLE), LORA (Long-Range Radio)를 통해, 아마도 아마추어 라디오 밴드의 단파 이상으로도 이온권을 튕겨냅니다. 임베디드 장치는 이러한 패킷을 처리하고 저렴한 전급차 역할을 할 수있을 정도로 강력합니다.
더 높은 수준에서 SSB뿐만 아니라 TinysSB를 통한 분산 응용 프로그램의 설계는 동일합니다. CRDT 세계입니다.
TinysSB는 바젤 대학교 (University of Basel)의 컴퓨터 과학 학사 및 석사 수준에서 분산 프로그래밍 개념과 기술을 가르치는 데 사용됩니다.
(각 폴더 참조)