2P by GN⁺ | ★ favorite | 댓글 1개
  • 배터리 구동 커피 원두 표시 장치를 개선하던 과정에서 WiFi 전력 소모가 병목으로 드러나며 Thread가 저전력 대안으로 떠오름
  • Thread는 IEEE 802.15.4 기반 메시 네트워크에 6LoWPAN과 IPv6를 얹어, 기기가 IP 패킷으로 통신하고 Border Router로 홈 네트워크에 연결됨
  • Apple HomePod, Nest Hub, Home Assistant 동글, Eve Energy 같은 기존 기기가 Thread Border Router나 메시 확장 역할을 할 수 있어 취미 프로젝트에도 매력적으로 보였음
  • 하지만 Thread Group 라이선스는 사양 열람을 내부 용도로 제한하고, 구현·출시 권리는 회원에게만 부여하며 Implementer 멤버십은 연간 7,500달러임
  • OpenThread가 BSD 3-Clause 오픈소스 구현체여도, Thread Group 회원이 아니면 필요한 IP 권리를 받지 못하고 법적 조치 대상이 될 수 있음

WiFi 전력 소모가 드러난 계기

  • 2022년에 만든 커피 원두 보관·재고 표시 장치는 충전당 평균 40일 동작했고, 소프트웨어 조정 후 55일까지 늘어남
  • 더 긴 배터리 시간을 목표로 저전력 전자 회로를 학습하고, Nordic Semiconductors의 Power Profiler Kit 2로 전체 시스템을 프로파일링함
  • 디스플레이 펌웨어 일부를 다시 작성하고 DevKit의 문제 부품을 우회한 뒤, 큰 전력 요인 중 하나가 WiFi라는 점을 확인함
  • WiFi는 기존 인프라와 LAN 서비스를 그대로 쓰기 쉽지만, 연결 수립 시간이 길 수 있고 액세스 포인트 위치에 따라 높은 송신 전력이 필요해 이 용도에는 비효율적이었음

Thread가 매력적으로 보였던 이유

  • LoRa와 Zigbee 같은 대안도 전력 효율은 좋을 수 있지만, 디스플레이가 데이터를 주고받을 수신기·송신기·허브 같은 반대쪽 장치를 별도로 만들어야 했음
  • Thread는 Zigbee와 같은 물리 계층인 IEEE 802.15.4를 사용하고 메시 네트워크로 동작함
  • 6LoWPAN 기반이라 각 기기가 하나 이상의 IPv6 주소를 받고, 내부 주소 지정과 기기 간 통신도 IP 패킷으로 처리함
  • Thread 네트워크는 Border Router라는 브리지를 통해 일반 홈 네트워크에 연결되어, 기기와 애플리케이션이 IPv6로 서로 통신할 수 있음

이미 있는 홈 인프라와 개발 실험

  • Apple HomePod나 Nest Hub가 있으면 이미 Thread Border Router를 가진 셈이고, Home Assistant 사용자는 약 40유로짜리 동글로 Home Assistant 노드를 Border Router로 만들 수 있음
  • Eve Energy 같은 상시 전원 연결 스마트 플러그는 Thread 메시 네트워크의 범위를 넓히는 역할을 함
  • 실험에는 nRF52840-DK, nRF5340-DK, 디버깅용 nRF52840-Dongle이 사용됨
  • 짧은 시간 안에 Apple 기반 Thread 네트워크에 자체 Border Router를 연결하고, Wireshark로 Thread 네트워크를 스니핑하며, 두 DevKit 기반 자체 Thread 기기를 네트워크에 넣어 기대한 동작을 확인함
  • 원래 목표는 취미 개발자가 프로젝트를 WiFi나 Bluetooth에서 Thread로 옮기고 개선할 수 있도록 블로그 글 시리즈를 쓰는 것이었음

Thread Group 라이선스가 막는 부분

  • Thread는 IEEE 802.15.4, IPv6, CoAP 같은 자유롭고 공개된 표준을 기반으로 하지만, Thread 자체는 자유롭거나 공개된 기술이 아님
  • Thread Specification은 무료로 요청할 수 있지만, PDF는 비밀번호로 보호되고 DRM이 적용되어 있으며 워터마크가 강하게 들어감
  • 라이선스는 사양을 자체 내부 목적으로 보고 저장·복제·사용할 권리만 부여하며, 사양 구현 권리는 포함하지 않음
  • Thread 기술과 Thread Group 사양을 구현·실행·출시하려면 Thread Group 멤버십이 필요하고, 활성 멤버십 없이 Thread 기술을 출시하면 라이선스 비용을 포함한 법적 조치가 따를 수 있음
  • Thread Group IP를 구현할 수 있는 가장 저렴한 Implementer 멤버십은 연간 7,500달러
  • “innovative IoT start-up company”는 2년 무료 멤버십에 지원할 수 있지만, 이후에는 비용을 내야 하고 취미 개발자에게 적용되는 프로그램은 아님

OpenThread도 우회로가 되지 못함

  • OpenThread는 Thread의 오픈소스 구현체이며, 저장소는 BSD 3-Clause 라이선스를 사용함
  • 저장소의 NOTICE는 Thread Group 회원들이 특허와 기타 지식재산권을 보유할 수 있다고 밝힘
  • Thread Group에 가입하지 않고 OpenThread 기반 제품을 출시하면, Thread 기술을 실행·출시하는 데 필요한 IP 권리를 받지 못하고 법적 조치 대상이 될 수 있음
  • 비상업적 사용 예외가 없어 큰 비용을 감당하지 못하는 취미 개발자는 Thread를 합법적으로 사용할 방법이 없고, Thread 작동 방식을 다루는 블로그 시리즈도 쓰기 어렵다는 결론에 도달함

취미 개발자와 교육 측면의 문제

  • 상업 제품에서 멤버십이나 “Works with Thread” 같은 로고 사용 인증을 요구하는 방식은 전자 제품 판매 과정의 인증 절차로 받아들일 수 있는 범위임
  • 핵심 문제는 비상업 프로젝트까지 포함해 구현 자체를 포괄적으로 금지하는 라이선스 구조임
  • 취미 개발자가 Thread를 접하기 어려우면, 차세대 전기 엔지니어와 의사결정자가 산업계에 들어가기 전에 기술을 실험해 볼 기회도 줄어듦
  • Thread Group 회원 목록에는 Apple, Google, Amazon, Nordic, NXP, Qualcomm 같은 회사가 포함되어 있고, 이 회사들은 인기 홈 허브에 Thread를 탑재해 확산시킬 수 있음
  • 2024-04-19에 Thread Group 지원 이메일로 비상업 Thread 사용에 대한 clarification을 요청했고, 즉시 전달했다는 답장은 받았지만 추가 답변은 없었음
  • 2024-05-01에는 Thread Group 언론 연락처에 코멘트를 요청했으며, 게시 시점까지 답변은 없었고 보낸 메시지 전문은 별도 텍스트로 공개됨

댓글과 토론

Hacker News 의견들
  • 우리 도시가 LoRaWAN을 선택한 이유 중 하나가 법적으로 덜 복잡해서였음
    다만 실제로 다루기는 훨씬 더 복잡하고, 덴마크 통신법 때문에 이런 기술에는 고속 “인터넷”에 대해 통신사에 사실상 독점권을 주는 황당한 제한이 붙음
    Thread에도 이 제한은 적용될 것 같음
    도시 입장에서는 안테나를 설치할 장소가 많다는 장점이 있음. 공립학교나 도서관 같은 곳은 시민 개인이 접근하기 어려운 좋은 위치임
    핵심은 도시가 LoRaWAN에 해당하는 인프라를 대중에게 열도록 만드는 것임. 도시 전역에 뭔가를 배포하고 싶다면 특히 그렇고, 다행히 내 도시는 그렇게 해줌
    프로젝트가 도시에도 도움이 되고 공개되어 있다면 전원도 무료로 쓰게 해주고, 재정 지원에도 관심을 보이는 경우가 많음
    그래도 전체적으로는 Thread를 쓰지 않는 게 낫다고 봄

  • “Thread Group에 가입할 만한 큰 버릴 돈이 없는 취미 개발자라면 Thread를 합법적으로 쓸 방법이 없다”는 말이 정말 맞나?
    라이선스 문구는 특허를 뜻하는 것 같고, 상업 활동이 없으면 개인 실험에는 특허가 적용되지 않는다고 생각했음
    더 넓게 보면 현재 특허 제도가 부여하는 독점의 부조리함이 여기서 드러남. 맞소송에 쓸 특허 포트폴리오가 있는 대기업은 OpenThread를 자유롭게 쓸 수 있지만, 중소기업과 스타트업은 그렇지 못함
    물론 그래도 나쁘고, 위축 효과도 큼

    • 지하실에서 하는 일이고 더 넓은 상업적·문화적 영향이 없다면 소송당할 가능성은 낮지만, 불가능한 건 아님
      특허에는 사적 사용 예외가 없음
      https://law.stackexchange.com/questions/24148/can-i-build-so...
    • 위 인용문은 제품 출시 이야기도 포함하고 있어서, 그걸 “가지고 놀거나 블로그 글을 쓸 수 없다”는 예시로 쓰는 이유를 모르겠음
      FAQ 질문은 “Thread Group에 가입하지 않고 OpenThread 기반 제품을 출시하지 못하게 막는 것은 무엇인가?”임
  • Thread 웹사이트 첫 화면에 “사용료 연 7,500달러”라고 적혀 있었다면 이 불평 글이 존재했을지 궁금함
    누군가 자기 제품 사용에 돈을 받으려는 게 문제라기보다, 그 사실을 알아내기 위해 애쓰게 만드는 게 문제임
    모든 것에 대해 정부가 가격 투명성을 의무화해야 한다고 봄. 꿈이겠지만

    • 적어도 Wikipedia는 있음
      https://en.wikipedia.org/wiki/Thread_(network_protocol)
      Thread는 사물인터넷 제품을 위한 IPv6 기반 저전력 메시 네트워킹 기술임. Thread 프로토콜 명세는 무료로 제공되지만, 최종 사용자 라이선스 계약에 동의하고 계속 준수해야 하며, 그 계약에는 “Thread 기술과 Thread Group 명세를 구현·실행·출시하려면 Thread Group 회원 자격이 필요하다”고 되어 있음
    • Thread Group 회원사들이 수년간 지식재산을 개발하며 투자한 연구개발 비용과, 개발자들이 그 위에서 얻는 상업적 가치를 생각해보면 흥미로운 비교가 됨
      예를 들어 Apple의 iOS API 위에 개발자가 빌드할 수 있는 것과 비교하면, Thread의 연간 라이선스 7,500달러는 Apple 개발자 라이선스 100달러의 75배임
      둘 중 하나는 비싸거나, 하나는 싼 셈임
    • 가격 투명성은 별개로, 연회비 면제나 무료 취미 라이선스를 요청하는 일이 정말 그렇게 어려운지 알고 있나?
      왜 모두가 그들이 소규모 개발자를 착취하려 한다고 가정하는지 모르겠음. 그냥 인력이 부족한 작은 조직이라 취미 라이선스까지 손이 안 갔거나, 사람들이 그런 걸 원하는지 아직 모를 수도 있음
      그래도 저자가 실제로 연락한 점은 좋음. 다만 “명확한 설명을 요청했다”가 무슨 뜻인지 궁금함. 이런 메일은 받기 두려운 종류임. 모호하고 개방형이고, 변호사에게 전화해야 할 것 같은 느낌임
      그냥 수수료를 면제해줄 수 있는지 물어본 걸까?
    • 월 20달러밖에 안 됨. 단, 얼마나 오래 내야 하는지는 묻지 말 것
  • 맞음. 그냥 Zigbee를 쓰면 됨
    3.x는 공개되어 있고 명세도 잘 되어 있으며, Home Assistant용 동글 브리지도 저렴함

  • Matter 명세도 비슷한 느낌임
    악마는 세부사항에 있고, 영리한 마케팅 때문에 사람들이 자기가 뭘 칭찬하는지 제대로 이해하지 못함
    진짜 문제는 여기에 돈을 투자하는 사람들임

    • 그보다 더 나아가서, 라이선스된 PKI 제공자가 서명한 기기 증명 인증서를 요구하지 않았나?
      그 부분을 보자마자 취미 개발자로서는 검토조차 포기했음
  • Thread 명세의 라이선스에 동의한 적 없이 OpenThread만 직접 쓰면 이 라이선스 조건이 적용되나?
    BSD 라이선스 말고는 아무것도 동의하지 않았다면 어떻게 소송당할 수 있는지 모르겠음

    • BSD 라이선스는 OpenThread 코드의 저작권을 선택적으로 허용해줄 뿐임
      특허나 저장소 밖의 저작권 같은 다른 법적 구조에는 영향을 주지 않음
    • 코드에는 공개 라이선스가 있어도 특정 특허 풀에는 가입해야 하는 경우와 비슷함
    • 아마 특허를 갖고 있을 것이고, 특허는 라이선스에 동의하지 않은 사람의 사용도 제한함
  • 방금 전까지 Thread를 들어본 적이 없었고, 계속 몰랐으면 좋았겠음
    세상에 화낼 이유가 더 필요하지 않았는데, 심지어 오늘은 좋은 하루였음
    그래도 진지하게는, 가능한 한 피하고 사라지기를 바라자는 쪽에 동의함
    누군가에게 이걸 실제로 받아들이거나 채택하라고 권하고 싶지는 않음

  • “Thread Group에 가입할 만한 큰 버릴 돈이 없는 취미 개발자라면 Thread를 합법적으로 쓸 방법이 없다”는 건, 관련 특허 범위가 있는지 누가 확인하기 전까지는 알 수 없음
    Compaq처럼 클린룸 방식으로 복제한 뒤, 정말 유효한 특허가 있다면 그 타격을 감수해줄 누군가가 필요함

    • 클린룸 절차는 복사하지 않고 재구현했다는 증거가 되지만, 특허 침해를 피하기에는 충분하지 않음
      그들이 청구한 내용을 하지 않도록 재설계하거나, 특허청이 일부 또는 전체 청구항을 잘못 허가했다고 설득하거나, 맞소송할 특허 자산을 쌓아두거나, 그냥 YOLO로 가야 함: https://paulgraham.com/softwarepatents.html
  • Thread가 가정용 통신의 사실상 표준이 되면, 규제 기관이 와서 강제로 열어주기를 기다려야 하나?
    어느 기관일지 두고 내기하지는 않겠지만, 다들 어느 쪽인지 알 것 같음

    • Google도 Oracle에 졌으니, 단순한 API 명세조차 임의로 닫힐 수 있는 세상임
      미국에 기술을 더 잘 이해하고 더 열린 판사와 공무원이 훨씬 많아지지 않는 한, 더 나아질 것 같지는 않음
      대선 후보들을 보면 더 그렇고
    • 정부는 사실상 표준 명세가 닫힌 상태로 남는 것을 허용하는 데 별 문제가 없음
      예를 들어 5G는 특허로 강하게 보호되고, MPEG도 마찬가지임
      보통 표준에 “필수”인 특허는 공정하고 합리적이며 비차별적인 조건, 즉 FRAND 조건으로 라이선스됨
      그래도 여전히 라이선스 비용을 내야 하며, 때로는 특허를 가진 개별 회사 모두에게 내야 하고, 때로는 표준의 전체 특허 풀을 대표하는 컨소시엄에 내야 함
  • 이런 수준의 라이선스에는 익숙하지 않은데, Thread의 라이선스가 제품에 통합하려면 돈을 내야 하는 Bluetooth와 비교하면 어떤가? https://www.bluetooth.com/develop-with-bluetooth/join/member...
    마침 이번 주에 Thread도 만져보고 있었음. 예제 프로젝트를 ESP32에 플래시하고 노트북에서 ping을 보내기까지 생각보다 쉬워서 놀랐음

    • 법률 문구에는 익숙하지 않지만, Bluetooth의 경우 많은 기기, 주로 극동에서 수입된 기기들이 “불법적으로” 구현해왔음
      이런 기기들은 Bluetooth 전체 이름을 표시하지 않고 “BT version x” 호환이라고 주장하는 경우가 있음
      그래서 Thread가 사용자들 사이에서 어느 정도 인기를 얻으면, 비슷한 이름으로 구현하지만 라이선스는 없는 저가 복제품이 익숙한 판매처에 곧 등장할 것 같음