KR101383691B1 - 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법 - Google Patents

무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법 Download PDF

Info

Publication number
KR101383691B1
KR101383691B1 KR1020100103929A KR20100103929A KR101383691B1 KR 101383691 B1 KR101383691 B1 KR 101383691B1 KR 1020100103929 A KR1020100103929 A KR 1020100103929A KR 20100103929 A KR20100103929 A KR 20100103929A KR 101383691 B1 KR101383691 B1 KR 101383691B1
Authority
KR
South Korea
Prior art keywords
update
target node
code image
script
mesh network
Prior art date
Application number
KR1020100103929A
Other languages
English (en)
Other versions
KR20100120110A (ko
Inventor
정종수
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020100103929A priority Critical patent/KR101383691B1/ko
Publication of KR20100120110A publication Critical patent/KR20100120110A/ko
Priority to US13/280,957 priority patent/US8793680B2/en
Application granted granted Critical
Publication of KR101383691B1 publication Critical patent/KR101383691B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/02Arrangements for optimising operational condition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Abstract

본 발명은 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법에 관한 것이다. 즉, 본 발명에서는 무선 메쉬 네트워크에서의 각 노드가 커널, 네트워크 스택, 응용 프로토콜 등의 공통적으로 사용하는 바이너리 정보를 이용하여 기지국에서 타겟 노드까지 원본 이미지 대신 차분 스크립트를 전송하는 방식으로 노드간 협력을 통한 펌웨어 업데이트를 수행함으로서 대역폭을 절약하면서도 보다 안정적으로 펌웨어의 업데이트 및 유지 관리가 가능하도록 한다.

Description

무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법{APPARATUS AND METHOD FOR COOPERATIVELY UPDATING FIRMWARE ON WIRELESS MESH NETWORK}
본 발명은 무선 메쉬 네트워크(wireless mesh network)에 관한 것으로, 특히 무선 메쉬 네트워크에서 노드(node)간의 협력을 통해 대역폭(bandwidth)을 절약하면서도 안정적으로 펌웨어 업데이트(firmware update)를 수행할 수 있도록 하는 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법에 관한 것이다.
통상적으로, 무선 메쉬 네트워크 기술이란 기존의 무선 LAN에서 사용되는 액세스 포인트(access point)에 멀티홉 라우팅 등의 네트워킹 기능을 탑재하고 이들을 무선 통신 기술을 이용하여 서로 연결함으로써 유선망과의 연결 없이도 광범위한 지역을 커버할 수 있도록 하는 네트워크 기술을 말한다.
위와 같은 무선 메쉬 네트워크에서는 노드들이 사람의 손이 닿기 힘든 곳에 설치되거나 많은 수의 노드들이 설치되기 때문에 한번 설치하면 수거하기가 어려우며, 이에 따라 노드들의 소프트웨어를 유지보수하기가 어렵다. 이를 해결하기 위하여 무선으로 노드들의 펌웨어를 업데이트하는 다양한 FOTA(Firmware Over-the-Air) 기술들이 제안되고 있다.
이러한 기술들은 대부분 펌웨어 업데이트를 위한 코드 이미지의 크기를 줄이는 것을 기본으로 한다. 노드에서 실행중인 코드 이미지와 새롭게 전송할 코드 이미지를 비교하여 리눅스의 diff 프로그램처럼 둘 사이의 차이점을 기술한 차분 스크립트를 생성한다. 타겟 노드는 이렇게 생성된 스크립트를 이용하여 기존 실행코드 이미지와 새로운 실행코드 이미지간 중복되는 부분을 최대한 활용, 새로운 실행코드 이미지를 생성한다.
이러한 방법은 기존 코드에서 일부 부분만 수정되는 경우에 약간의 스크립트 전송으로 새로운 코드를 생성 가능하므로, 대역폭 절약의 효과가 매우 크다. 하지만 기존 코드 이미지와 전혀 다른 새로운 이미지로 변경할 때에는 스크립트의 크기보다 새로운 코드 이미지 자체의 크기가 작을 수 있다.
한편, 무선 메쉬 네트워크에서는 노드들이 자율적으로 네트워크를 구성하며 멀티홉으로 데이터를 전송한다. 이러한 환경에서 특정 지역의 여러 노드들을 비슷한 내용으로 업데이트하기 위해서는 비슷한 데이터를 멀티홉으로 여러 번 전송해야 하므로 대역폭 낭비가 발생한다.
즉, 종래 무선 메쉬 네트워크에서 순차적 네트워크 리프로그래밍(re-programing)의 개념을 도시한 도 1에서 보여 지는 바와 같이, 종래에는 기지국(base station : BS)(100)에서 업데이트가 필요한 타겟 노드(target node)까지 중간 노드에서 업데이트를 위한 동일한 데이터 크기의 원본 이미지(raw image)를 계속 전송하도록 하고 있어 이미지의 업데이트를 위해 네트워크의 대역폭 사용이 크게 됨으로써 네트워크의 대역폭(bandwidth)이 불필요하게 낭비되는 문제점이 있었다.
따라서, 본 발명은 무선 메쉬 네트워크에서의 각 노드가 커널, 네트워크 스택, 응용 프로토콜 등의 공통적으로 사용하는 바이너리 정보를 이용하여 기지국에서 타겟 노드까지 원본 이미지 대신 차분 스크립트를 전송하는 방식으로 노드간 협력을 통한 펌웨어 업데이트를 수행함으로서 대역폭을 절약하면서도 보다 안정적으로 펌웨어의 업데이트 및 유지 관리가 가능하도록 하는 무선 메쉬 네트워크에서 협력적 무선 펌웨어 업데이트 장치 및 방법을 제공하고자 한다.
상술한 본 발명은 무선 메쉬 네트워크에서 펌웨어 업데이트 장치로서, 상기 메쉬 네트워크내 각 노드별 실행코드 상기 실행코드 이미지와 이미지의 버전 정보를 저장하는 코드 이미지 DB와, 상기 메쉬 네트워크내 임의의 타겟 노드에 대한 실행코드 이미지의 업데이트가 필요한 경우 상기 코드 이미지 DB내 저장된 상기 타겟 노드의 실행코드 이미지와 이웃 노드들의 실행코드 이미지를 참조하여 코드 업데이트 스크립트를 생성한 후, 상기 코드 업데이트 스크립트를 이용하여 상기 타겟 노드에 대한 업데이트를 수행하는 업데이트 스크립트 생성기를 포함한다.
또한, 상기 코드 이미지 DB는, 상기 업데이트 스크립트 생성기에 의해 상기 타겟노드에 대한 업데이트가 수행되는 경우 상기 업데이트된 새로운 실행코드 이미지를 갱신 저장하는 것을 특징으로 한다.
또한, 상기 업데이트 스크립트 생성기는, 상기 타겟 노드의 업데이트가 필요한 경우, 상기 타겟 노드로 업데이트 요청 메시지를 전송하고, 상기 타겟 노드로부터 상기 업데이트 요청 메시지에 대응하는 업데이트 응답 메시지를 수신한 후, 상기 업데이트 응답 메시지에 포함된 정보를 이용하여 상기 타겟 노드의 업데이트를 위한 코드 업데이트 스크립트를 생성하는 것을 특징으로 한다.
또한, 상기 업데이트 요청 메시지는, 상기 무선 메쉬 네트워크와 업데이트 스크립트 생성기간 데이터 송/수신을 인터페이스하는 기지국을 통해 상기 타겟 노드로 전송되는 것을 특징으로 한다.
또한, 상기 타겟 노드는, 상기 업데이트 요청 메시지의 수신 시 상기 업데이트 요청 메시지에 포함된 새로운 실행코드 이미지의 버전이 현재 버전보다 높을 경우, 이웃 노드들에게 업데이트 협조 요청 메시지를 멀티캐스트 전송하는 것을 특징으로 한다.
또한, 상기 업데이트 협조 요청 메시지는, 상기 타겟 노드로부터 기설정된 홉수의 멀티캐스트 반경의 이웃 노드들에게 전송되는 것을 특징으로 한다.
또한, 상기 타겟 노드는, 상기 업데이트 협조 요청 메시지를 멀티캐스트 전송한 후, 기설정된 시간동안 상기 이웃 노드들로부터 상기 업데이트 협조 요청 메시지에 대한 업데이트 협조 응답 메시지를 수신하는 것을 특징으로 한다.
또한, 상기 타겟 노드는, 상기 업데이트 협조 응답 메시지를 수신하는 경우, 상기 업데이트 협조 응답 메시지를 바탕으로 이웃 노드들의 참여 여부 정보를 포함하는 업데이트 응답 메시지를 상기 업데이트 스크립트 생성기로 전송하는 것을 특징으로 한다.
또한, 상기 업데이트 스크립트 생성기는, 상기 타겟 노드의 현재 실행코드 이미지와 이웃 노드들의 실행코드 이미지들을 대상으로 각각 차분 스크립트를 생성하고, 상기 차분 스크립트와 상기 실행코드 이미지가 참조된 이웃 노드들과의 거리 정보를 참조하여 최소의 대역폭을 사용하는 코드 업데이트 스크립트를 생성하고 이를 상기 타켓 노드로 전송하여 업데이트를 수행하는 것을 특징으로 한다.
또한, 상기 타켓 노드는, 상기 업데이트 스크립트 생성기로부터 전송되는 상기 코드 업데이트 스크립트를 하나의 행씩 실행시키면서 업데이트할 새로운 코드 이미지를 생성하는 것을 특징으로 한다.
또한, 상기 타겟 노드는, 상기 새로운 실행코드 이미지의 생성 시, 이웃 노드들로부터 참조해야 하는 실행코드 이미지가 있는 경우, 해당 이웃 노드로 코드 참조 요청 메시지를 전송하고 응답을 수신하여 상기 참조가 필요한 실행코드 이미지를 생성하는 것을 특징으로 한다.
또한, 본 발명은 무선 메쉬 네트워크에서 펌웨어 업데이트 방법으로서, 상기 메쉬 네트워크내 임의의 타겟 노드에 대해 실행코드 이미지의 업데이트가 필요한지를 검사하는 단계와, 상기 실행코드 이미지의 업데이트가 필요한 경우 상기 타겟 노드의 현재 실행코드 이미지와 이웃 노드들의 실행코드 이미지를 참조하여 실행코드 업데이트 스크립트를 생성하는 단계와, 상기 코드 업데이트 스크립트를 이용하여 상기 타겟 노드에 대한 실행코드 이미지를 생성하는 단계와, 상기 타겟 노드에서 생성된 실행코드 이미지의 무결성을 검증하기 위하여 해쉬 함수를 통한 다이제스트를 생성하는 단계와, 상기 생성된 다이제스트의 비교를 통해 실제 업데이트 실행 여부를 결정하는 단계를 포함한다.
또한, 상기 코드 업데이트 스크립트를 생성하는 단계는, 상기 타겟 노드의 업데이트가 필요한 경우, 상기 타겟 노드로 업데이트 요청 메시지를 전송하는 단계와, 상기 타겟 노드로부터 상기 업데이트 요청 메시지에 대응하는 업데이트 응답 메시지를 수신하는 단계와, 상기 업데이트 응답 메시지에 포함된 정보를 이용하여 상기 타겟 노드의 업데이트를 위한 코드 업데이트 스크립트를 생성하는 단계를 포함한다.
또한, 상기 코드 업데이트 스크립트를 생성하는 단계는, 상기 타겟 노드의 현재 실행코드 이미지와 이웃 노드들의 실행코드 이미지들을 대상으로 각각 차분 스크립트를 생성하는 단계와, 상기 차분 스크립트와 상기 실행코드 이미지가 참조된 이웃 노드들과의 거리 정보를 참조하여 최소의 대역폭을 사용하는 코드 업데이트 스크립트를 생성하는 단계와, 상기 생성된 코드 업데이트 스크립트를 상기 타켓 노드로 전송하여 업데이트를 수행하는 단계를 포함한다.
또한, 상기 실행코드 이미지의 업데이트를 수행하는 단계는, 상기 타겟 노드에 대해 업데이트할 새로운 실행코드 이미지를 생성한 경우 생성된 이미지의 다이제스트를 생성하여 펌웨어 업데이트 장치로 생성 이미지 확인 메시지를 전송하는 단계와, 상기 다이제스트와 원본 실행코드 이미지의 다이제스트 값 비교를 통해 무결성을 검증하고, 검증되는 경우 상기 타겟 노드에서 펌웨어 업데이트를 수행하도록 업데이트 실행 메시지를 상기 타겟 노드로 전송하는 단계와, 상기 업데이트 실행 메시지를 수신한 상기 타겟 노드에서 펌웨어 업데이트를 수행하고, 정상적으로 업데이트 되는 경우 상기 코드 이미지 DB로 업데이트 확인 메시지를 전송하는 단계와, 상기 코드 이미지 DB에서 상기 업데이트 확인 메시지를 수신한 경우, DB내 해당 내용을 갱신하는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 업데이트 요청 메시지의 수신 시, 상기 타겟 노드에서 상기 업데이트 요청 메시지에 포함된 새로운 실행코드 이미지의 버전이 현재 버전과 같은지를 검사하는 단계와, 상기 새로운 실행코드 이미지의 버전이 현재 버전보다 높은 경우, 이웃 노드들에게 업데이트 협조 요청 메시지를 멀티캐스트 전송하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 업데이트 협조 요청 메시지를 멀티캐스트 전송한 후, 상기 타겟 노드에서 기설정된 시간동안 상기 이웃 노드들로부터 상기 업데이트 협조 요청 메시지에 대한 응답 메시지를 수집하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 업데이트 협조 응답 메시지를 수신하는 경우, 상기 타겟 노드에서 상기 업데이트 협조 응답 메시지를 바탕으로 이웃 노드들의 참여 여부 정보를 포함하는 업데이트 응답 메시지를 반송하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 업데이트 협조 요청 메시지는, 상기 타겟 노드로부터 기설정된 홉수의 멀티캐스트 반경의 이웃 노드들에게 전송되는 것을 특징으로 한다.
본 발명에서는 무선 메쉬 네트워크에서의 각 노드가 커널, 네트워크 스택, 응용 프로토콜 등의 공통적으로 사용하는 바이너리 정보를 이용하여 기지국에서 타겟 노드까지 원본 이미지 대신 차분 스크립트를 전송하는 방식으로 노드간 협력을 통한 펌웨어 업데이트를 수행함으로서 대역폭을 절약하면서도 보다 안정적으로 펌웨어의 업데이트 및 유지 관리가 가능하게 되는 이점이 있다.
도 1은 기지국에서 타겟 노드까지 원본 이미지를 전송하는 종래의 무선 메쉬 네트워크에서의 펌웨어 업데이트 방법을 설명하기 위한 도면,
도 2는 무선 메쉬 네트워크의 노드간 실행코드 이미지의 구성을 도시한 도면,
도 3은 본 발명의 실시 예에 따른 무선 메쉬 네트워크에서 협력적 무선 펌웨어 업데이트 장치의 구성을 도시한 도면,
도 4는 본 발명의 실시 예에 따른 무선 펌웨어 업데이트 장치에서 타겟 노드에 대한 업데이트를 요청하는 처리 흐름을 도시한 도면,
도 5는 본 발명의 실시 예에 따른 무선 펌웨어 업데이트 장치에서 타겟 노드에 대한 업데이트를 응답을 처리하는 처리 흐름을 도시한 도면,
도 6은 본 발명의 실시 예에 따라 업데이트 스크립트 전송 및 이웃 노드에게 코드 참조를 요청하는 신호 처리 흐름을 도시한 도면,
도 7은 본 발명의 실시 예에 따른 업데이트에 따라 코드 이미지 및 다이제스트를 생성하는 신호 처리 흐름을 도시한 도면,
도 8은 본 발명의 실시 예에 따라 코드 이미지의 무결성을 확인 후, 펌웨어 업데이트를 실행하는 신호 처리 흐름을 도시한 도면,
도 9는 본 발명의 실시 예에 따라 펌웨어 업데이트가 완료된 후, 업데이트 완료 상태를 보고하고, 코드 이미지 DB의 내용을 갱신하는 신호 처리 흐름을 도시한 도면,
도 10은 본 발명의 실시 예에 따른 무선 메쉬 네트워크에서 협력적 펌웨어 업데이트를 통한 순차적 네트워크 리프로그래밍 개념을 도시한 도면.
이하, 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 2는 무선 메쉬 네트워크의 노드간 실행코드 이미지의 구성을 도시한 것이다.
도 2에서 보여지는 바와 같이, 무선 메쉬 네트워크에서의 각 노드들은 서로 수행하는 응용 프로그램(application program)이 다를 수 있다. 하지만 커널(kernel), 네트워크 스택(network stack), 응용 프로토콜(application protocol) 등은 모든 노드들이 공통적으로 사용하기 때문에 각 노드의 코드 이미지에는 해당 모듈들의 바이너리(binary)가 공통적으로 존재할 수 있다. 이러한 성질을 응용하여 응용 프로그램 외의 다른 공통적인 부분들을 업데이트할 때에는 이웃 노드들을 활용하게 하면 효율적으로 업데이트가 가능하다.
도 3은 본 발명의 실시 예에 따른 무선 메쉬 네트워크에서 협력적 무선 펌웨어 업데이트 장치의 구성을 도시한 것이다.
위 도 3을 참조하면 본 발명의 무선 펌웨어 업데이트 장치(300)는 무선 메쉬 네트워크를 구성하는 노드들(310)과 노드들에서 현재 실행중인 코드 이미지를 관리하는 코드 이미지 DB(data base)(302), 그리고 업데이트 스크립트 생성기(304) 등을 포함한다.
업데이트 스크립트 생성기(304)는 특정 노드의 실행 코드를 변경하고자 할 때 코드 이미지 DB(302)에 저장되어 있는 해당 노드와 그 노드의 이웃 노드들의 실행코드 이미지를 참고하여 코드 업데이트 스크립트(code update script)(305)를 생성한다.
코드 이미지 DB(302)에는 각 노드별 실행 코드 이미지와 이미지의 버전 번호(verson number) 등이 저장되어 있다. 따라서 어떤 노드의 실행 코드 이미지가 변경되었다면, 코드 이미지 DB(302)에도 변경된 이미지 데이터가 갱신되어야 한다. 이때, 실행코드 이미지들을 저장하고 관리하는 이유는 코드 이미지를 업데이트할 때 생성할 차분 스크립트에 활용하기 위함이다. 각 노드에는 실행할 코드 이미지의 버전 관리를 위하여 현재 실행중인 코드의 버전 등의 정보를 별도로 저장한다.
도 4는 본 발명의 실시 예에 따른 무선 펌웨어 업데이트 장치(300)에서 타겟노드(target node)(400)에 대한 업데이트를 수행하기 위한 신호 처리 흐름을 도시한 것으로, 특히 업데이트를 요청하는 처리 흐름을 도시한 것이다.
이하 도 4를 참조하여 무선 펌웨어 업데이트 장치(300)에서 노드간 스크립트의 전송을 통해 타겟 노드(400)에 대한 협력적 업데이트를 수행하는 동작을 상세히 설명하기로 한다.
위 도 4를 참조하면, 기지국(base station)(306)에서 업데이트할 타겟 노드(400)의 새로운 코드 이미지가 생성되었다면, 코드 이미지 DB(302)에 저장되어 있는 타겟 노드(400)의 버전을 참조하여 해당 타겟 노드(400)에게 현재 실행되고 있는 코드의 버전과 그보다 한 계단 높은 새로운 버전의 번호를 포함하는 업데이트 요청 메시지를 생성하여 전송한다(S10).
그러면, 업데이트 요청 메시지를 수신한 타겟 노드(400)는 메시지에 포함된 현재 버전 값이 자신의 현재 버전보다 높을 경우, 업데이트 협조 요청 메시지를 주변에 멀티캐스트(multicast) 전송한 후(S12), 일정 시간 동안 업데이트 협조 응답 메시지를 수집한다.
이때, 타겟 노드(400)는 업데이트 협조 요청 메시지를 1홉 또는 그 이상 홉의 멀티캐스트 반경의 이웃 노드들(402)에게 전송한다. 이때, 멀티캐스트의 반경은 기지국(306)과 타겟 노드(400)간 거리보다 가까워야 네트워크 대역폭을 절약할 수 있을 것으로 기대된다.
도 5는 본 발명의 실시 예에 따른 무선 펌웨어 업데이트 장치(300)에서 타겟노드(400)에 대한 업데이트를 수행하기 위한 신호 처리 흐름을 도시한 것으로, 특히 업데이트를 응답을 처리하는 처리 흐름을 도시한 것이다.
이하 도 5를 참조하여 무선 펌웨어 업데이트 장치(300)에서 노드간 스크립트의 전송을 통해 타겟 노드(400)에 대한 협력적 업데이트를 수행하는 동작을 상세히 설명하기로 한다.
먼저, 업데이트 협조 요청 메시지를 수신한 이웃 노드들(402)은 업데이트 협조 응답 메시지를 통해 협조 가능 여부를 해당 노드에게 통보한다(S14). 이웃 노드들(402)은 만약 전원 부족 등의 문제로 협조가 불가능할 경우 협조를 거절할 수 있다. 타겟 노드(400)는 일정 시간 동안 수집한 업데이트 협조 응답 메시지를 바탕으로 이웃 노드들(402)의 참여 여부 정보를 포함하는 업데이트 응답 메시지를 기지국(306)으로 전송한다(S16).
그러면, 기지국(306)은 수신된 업데이트 응답 메시지를 업데이트 스크립트 생성기(304)로 인가하며, 업데이트 스크립트 생성기(304)는 업데이트 응답 메시지에 포함된 정보들을 활용하여 코드 업데이트 스크립트를 생성한다(S18). 이때, 업데이트 스크립트 생성기(304)는 코드 이미지 DB(302)에 저장된 타겟 노드(400)와 이웃 노드들(402)의 코드 이미지들을 활용하여 네트워크 대역폭을 최소한으로 사용하는 코드 업데이트 스크립트를 생성한다.
즉, 업데이트 스크립트 생성기(304)는 타겟 노드(400)의 현재 이미지와 이웃 노드들(402)의 이미지들을 대상으로 각각 차분 스크립트를 생성하고, 이 차분 스크립트들과 참조한 이웃 노드들(402)과의 거리 등을 고려하여 최소의 네트워크 대역폭을 사용하는 업데이트 스크립트를 생성한다.
도 6은 본 발명의 실시 예에 따라 업데이트 스크립트 전송 및 이웃 노드에게 코드 참조를 요청하는 신호 처리 흐름을 도시한 것이다.
위 도 6에서 보여지는 바와 같이, 도 4 내지 도 5의 과정을 통해 생성된 코드 업데이트 스크립트(305)는 타겟 노드(400)에 업데이트 스크립트 메시지를 통해 전송된다(S20). 그러면, 타겟 노드(400)는 스크립트를 한 행씩 실행시켜 나가면서 새로운 코드 이미지를 생성한다. 이때 만일 이웃 노드들(402)로부터 참조해야 할 코드 조각이 있다면 코드 참조 요청 메시지를 이웃 노드들(402)에 전송한다(S22). 이에 따라 이웃 노드들(402)은 후술될 도 7에 도시된 바와 같은 코드 참조 응답 메시지를 통해 해당 이미지 조각을 제공한다(S24).
도 7은 본 발명의 실시 예에 따른 업데이트에 따라 코드 이미지 및 다이제스트를 생성하는 신호 처리 흐름을 도시한 것이다.
타겟 노드(400)는 이웃 노드들(402)로부터의 코드 참조 응답 메시지를 통해 완성된 이미지는 해쉬 함수 등을 통해 다이제스트를 생성하여(S26), 생성 이미지 확인 메시지를 기지국(306)에 전송한다(S28). 그러면, 기지국(306)은 이 다이제스트 값과 새로운 이미지의 원본의 다이제스트 값을 비교하여 생성된 이미지의 무결성을 검증한다.
이후 도 8에 도시된 바와 같이 업데이트 스크립트 생성기(304)에서 타겟 노드(400)로 업데이트 실행 메시지를 전송하고(S30), 타겟 노드(400)에서는 펌웨어 업데이트를 실행하게 된다(S32). 이어, 타겟 노드(400)가 업데이트되는 경우에는 도 9에서 도시된 바와 같이 타겟 노드(400)가 업데이트 완료된 후 업데이트 확인 메시지를 기지국(306)을 통해 업데이트 스크립트 생성기(304)에 전송하게 되며(S34), 업데이트 스크립트 생성기(304)는 코드 이미지 DB(302)에 타겟 노드(400)의 실행코드 이미지를 갱신시킨다(S34).
도 10은 본 발명의 실시 예에 따른 무선 메쉬 네트워크에서 협력적 펌웨어 업데이트를 통한 순차적 네트워크 리프로그래밍 개념을 도시한 것이다.
종래의 차분 스크립트 전송 방법에서는 기지국에서 타겟 노드까지 원본 이미지 대신 스크립트를 전송하여 네트워크 대역폭 낭비를 줄일 수 있으며, 이러한 경우 차분 스크립트를 얼마나 작게 만들 수 있는가가 성능의 핵심 요소가 됨은 전술한 바와 같다.
이에 따라, 본 발명에서는 도 10에서 보여지는 바와 같이 타겟 노드의 과거 이미지뿐만 아니라 타겟 노드의 주변 노드들의 이미지도 참고하여 차분 스크립트를 생성하므로 기존 차분 스크립트보다 훨씬 작은 스크립트를 만들 수 있다.
또한 네트워크상의 여러 노드들을 대상으로 공통적인 기능을 순차적으로 업데이트하는 경우(network reprogramming), 어떤 노드의 업데이트가 완료된 후, 그 다음 노드로 하여금 완료된 노드의 이미지를 참조하도록 하면, 전체 네트워크에 걸쳐 원형 이미지 전송을 최소화하고 이를 크기가 작은 스크립트로 대신 전송함으로써 효율적인 펌웨어 업데이트를 진행할 수 있다. 특히, 새로운 이미지가 기존 이미지와 공통점이 거의 없어 종래의 차분 스크립트로 별다른 이득을 취하지 못할 경우에도 네트워크 대역폭 사용 절약 이득이 클 것으로 기대된다.
상술한 바와 같이, 본 발명에서는 무선 메쉬 네트워크에서의 각 노드가 커널, 네트워크 스택, 응용 프로토콜 등의 공통적으로 사용하는 바이너리 정보를 이용하여 기지국에서 타겟 노드까지 원본 이미지 대신 차분 스크립트를 전송하는 방식으로 노드간 협력을 통한 펌웨어 업데이트를 수행함으로서 대역폭을 절약하면서도 보다 안정적으로 펌웨어의 업데이트 및 유지 관리가 가능하도록 한다.
한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 따라서 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
300 : 펌웨어 업데이트 장치 302 : 코드 이미지 DB
304 : 업데이트 스크립트 생성기 306 : 기지국

Claims (18)

  1. 무선 메쉬 네트워크에서 펌웨어 업데이트 장치로서,
    상기 메쉬 네트워크내 각 노드별 실행코드 이미지와 상기 실행코드 이미지의 버전 정보를 저장하는 코드 이미지 DB와,
    상기 메쉬 네트워크내 임의의 타겟 노드에 대한 실행코드 이미지의 업데이트가 필요한 경우 상기 코드 이미지 DB내 저장된 상기 타겟 노드의 실행코드 이미지와 이웃 노드들의 실행코드 이미지를 참조하여 코드 업데이트 스크립트를 생성한 후, 상기 코드 업데이트 스크립트를 이용하여 상기 타겟 노드에 대한 업데이트를 수행하는 업데이트 스크립트 생성기
    를 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  2. 제 1 항에 있어서,
    상기 코드 이미지 DB는,
    상기 업데이트 스크립트 생성기에 의해 상기 타겟노드에 대한 업데이트가 수행되는 경우 상기 업데이트된 새로운 실행코드 이미지를 갱신 저장하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  3. 제 1 항에 있어서,
    상기 업데이트 스크립트 생성기는,
    상기 타겟 노드의 업데이트가 필요한 경우, 상기 타겟 노드로 업데이트 요청 메시지를 전송하고, 상기 타겟 노드로부터 상기 업데이트 요청 메시지에 대응하는 업데이트 응답 메시지를 수신한 후, 상기 업데이트 응답 메시지에 포함된 정보를 이용하여 상기 타겟 노드의 업데이트를 위한 코드 업데이트 스크립트를 생성하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  4. 제 3 항에 있어서,
    상기 타겟 노드는,
    상기 업데이트 요청 메시지의 수신 시 상기 업데이트 요청 메시지에 포함된 새로운 실행코드 이미지의 버전이 현재 버전보다 높을 경우, 이웃 노드들에게 업데이트 협조 요청 메시지를 멀티캐스트 전송하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  5. 제 4 항에 있어서,
    상기 업데이트 협조 요청 메시지는,
    상기 타겟 노드로부터 기설정된 홉수의 멀티캐스트 반경의 이웃 노드들에게 전송되는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  6. 제 4 항에 있어서,
    상기 타겟 노드는,
    상기 업데이트 협조 요청 메시지를 멀티캐스트 전송한 후, 기설정된 시간동안 상기 이웃 노드들로부터 상기 업데이트 협조 요청 메시지에 대한 업데이트 협조 응답 메시지를 수신하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  7. 제 6 항에 있어서,
    상기 타겟 노드는,
    상기 업데이트 협조 응답 메시지를 수신하는 경우, 상기 업데이트 협조 응답 메시지를 바탕으로 이웃 노드들의 참여 여부 정보를 포함하는 업데이트 응답 메시지를 상기 업데이트 스크립트 생성기로 전송하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  8. 제 1 항에 있어서,
    상기 업데이트 스크립트 생성기는,
    상기 타겟 노드의 현재 실행코드 이미지와 이웃 노드들의 실행코드 이미지들을 대상으로 각각 차분 스크립트를 생성하고, 상기 차분 스크립트와 상기 실행코드 이미지가 참조된 이웃 노드들과의 거리 정보를 참조하여 최소의 대역폭을 사용하는 코드 업데이트 스크립트를 생성하고 이를 상기 타켓 노드로 전송하여 업데이트를 수행하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  9. 제 8 항에 있어서,
    상기 타켓 노드는,
    상기 업데이트 스크립트 생성기로부터 전송되는 상기 코드 업데이트 스크립트를 하나의 행씩 실행시키면서 업데이트할 새로운 실행코드 이미지를 생성하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  10. 제 9 항에 있어서,
    상기 타겟 노드는,
    상기 새로운 실행코드 이미지의 생성 시, 이웃 노드들로부터 참조해야 하는 실행코드 이미지가 있는 경우, 해당 이웃 노드로 코드 참조 요청 메시지를 전송하고 응답을 수신하여 상기 참조가 필요한 실행코드 이미지를 생성하는 무선 메쉬 네트워크에서 펌웨어 업데이트 장치.
  11. 무선 메쉬 네트워크에서 펌웨어 업데이트 방법으로서,
    상기 메쉬 네트워크내 임의의 타겟 노드에 대해 실행코드 이미지의 업데이트가 필요한지를 검사하는 단계와,
    상기 실행코드 이미지의 업데이트가 필요한 경우 상기 타겟 노드의 현재 실행코드 이미지와 이웃 노드들의 실행코드 이미지를 참조하여 실행코드 업데이트 스크립트를 생성하는 단계와,
    상기 코드 업데이트 스크립트를 이용하여 상기 타겟 노드에 대한 실행코드 이미지의 업데이트를 수행하는 단계
    를 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
  12. 제 11 항에 있어서,
    상기 코드 업데이트 스크립트를 생성하는 단계는,
    상기 타겟 노드의 업데이트가 필요한 경우, 상기 타겟 노드로 업데이트 요청 메시지를 전송하는 단계와,
    상기 타겟 노드로부터 상기 업데이트 요청 메시지에 대응하는 업데이트 응답 메시지를 수신하는 단계와,
    상기 업데이트 응답 메시지에 포함된 정보를 이용하여 상기 타겟 노드의 업데이트를 위한 코드 업데이트 스크립트를 생성하는 단계
    를 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
  13. 제 11 항에 있어서,
    상기 코드 업데이트 스크립트를 생성하는 단계는,
    상기 타겟 노드의 현재 실행코드 이미지와 이웃 노드들의 실행코드 이미지들을 대상으로 각각 차분 스크립트를 생성하는 단계와,
    상기 차분 스크립트와 상기 실행코드 이미지가 참조된 이웃 노드들과의 거리 정보를 참조하여 최소의 대역폭을 사용하는 코드 업데이트 스크립트를 생성하는 단계와,
    상기 생성된 코드 업데이트 스크립트를 상기 타켓 노드로 전송하여 업데이트를 수행하는 단계
    를 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
  14. 제 11 항에 있어서,
    상기 실행코드 이미지의 업데이트를 수행하는 단계는,
    상기 타겟 노드에 대해 업데이트할 새로운 실행코드 이미지를 생성한 경우 생성된 이미지의 다이제스트를 생성하여 펌웨어 업데이트 장치로 생성 이미지 확인 메시지를 전송하는 단계와,
    상기 다이제스트와 원본 실행코드 이미지의 다이제스트 값 비교를 통해 무결성을 검증하고, 검증되는 경우 상기 타겟 노드에서 펌웨어 업데이트를 수행하도록 업데이트 실행 메시지를 상기 타겟 노드로 전송하는 단계와,
    상기 업데이트 실행 메시지를 수신한 상기 타겟 노드에서 펌웨어 업데이트를 수행하고, 정상적으로 업데이트 되는 경우 상기 코드 이미지 DB로 업데이트 확인 메시지를 전송하는 단계와,
    상기 코드 이미지 DB에서 상기 업데이트 확인 메시지를 수신한 경우, DB내 해당 내용을 갱신하는 단계
    를 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
  15. 제 12 항에 있어서,
    상기 업데이트 요청 메시지의 수신 시, 상기 타겟 노드에서 상기 업데이트 요청 메시지에 포함된 새로운 실행코드 이미지의 버전이 현재 버전과 같은지를 검사하는 단계와,
    상기 새로운 실행코드 이미지의 버전이 현재 버전보다 높은 경우, 이웃 노드들에게 업데이트 협조 요청 메시지를 멀티캐스트 전송하는 단계
    를 더 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
  16. 제 15 항에 있어서,
    상기 업데이트 협조 요청 메시지를 멀티캐스트 전송한 후, 상기 타겟 노드에서 기설정된 시간동안 상기 이웃 노드들로부터 상기 업데이트 협조 요청 메시지에 대한 응답 메시지를 수집하는 단계를 더 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
  17. 제 16 항에 있어서,
    상기 업데이트 협조 응답 메시지를 수신하는 경우, 상기 타겟 노드에서 상기 업데이트 협조 응답 메시지를 바탕으로 이웃 노드들의 참여 여부 정보를 포함하는 업데이트 응답 메시지를 반송하는 단계를 더 포함하는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
  18. 제 15 항에 있어서,
    상기 업데이트 협조 요청 메시지는,
    상기 타겟 노드로부터 기설정된 홉수의 멀티캐스트 반경의 이웃 노드들에게 전송되는 무선 메쉬 네트워크에서 펌웨어 업데이트 방법.
KR1020100103929A 2010-10-25 2010-10-25 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법 KR101383691B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100103929A KR101383691B1 (ko) 2010-10-25 2010-10-25 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법
US13/280,957 US8793680B2 (en) 2010-10-25 2011-10-25 Apparatus and method for cooperatively updating firmware on wireless mesh network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100103929A KR101383691B1 (ko) 2010-10-25 2010-10-25 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20100120110A KR20100120110A (ko) 2010-11-12
KR101383691B1 true KR101383691B1 (ko) 2014-04-09

Family

ID=43405860

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100103929A KR101383691B1 (ko) 2010-10-25 2010-10-25 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법

Country Status (2)

Country Link
US (1) US8793680B2 (ko)
KR (1) KR101383691B1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100951622B1 (ko) * 2008-05-02 2010-04-09 강릉원주대학교산학협력단 무선센서 네트워크의 노드에 대한 펌웨어 업데이트 방법 및이에 사용되는 펌웨어 업데이트장치
US8997085B2 (en) * 2011-06-24 2015-03-31 International Business Machines Corporation Image delta-based upgrade of complex stack in software appliance
US8972972B2 (en) * 2012-09-13 2015-03-03 Elemental Technologies, Inc. Handshaking methodology and redundant data channel between servers during software upgrade
US9081643B2 (en) * 2012-09-21 2015-07-14 Silver Sring Networks, Inc. System and method for efficiently updating firmware for nodes in a mesh network
WO2014158194A1 (en) * 2013-03-29 2014-10-02 Hewlett-Packard Development Company, L.P. Update of programmable for computing nodes
KR101495749B1 (ko) * 2013-05-02 2015-02-25 (주)누리텔레콤 원격 검침 시스템에서 노드 업그레이드 방법 및 그 장치
EP3040858A1 (en) * 2014-12-31 2016-07-06 Echelon Corporation A method and system of processing an image update
US10101987B2 (en) 2015-03-11 2018-10-16 Echelon Corporation Method and system of processing an image upgrade
US9763062B2 (en) * 2015-04-01 2017-09-12 Synapse Wireless, Inc. Rapid deployment of software updates in multi-hop wireless networks
US9665469B2 (en) * 2015-07-24 2017-05-30 American Megatrends, Inc. System and method of runtime downloading of debug code and diagnostics tools in an already deployed baseboard management controller (BMC) devices
US10303456B2 (en) * 2017-03-23 2019-05-28 Intel Corporation Technologies for performing energy efficient software distribution
JP6536618B2 (ja) * 2017-04-20 2019-07-03 富士通株式会社 情報処理装置、情報処理システム、及び制御プログラム
US11231448B2 (en) 2017-07-20 2022-01-25 Targus International Llc Systems, methods and devices for remote power management and discovery
KR102034427B1 (ko) * 2018-02-21 2019-10-18 주식회사 펀진 IoT 기기 및 그것의 펌웨어 업데이트 방법
CN109002318A (zh) * 2018-07-25 2018-12-14 郑州云海信息技术有限公司 一种cpld的固件更新方法、装置、设备及介质
US11012853B2 (en) 2018-11-20 2021-05-18 Parallel Wireless, Inc. Secure software update in a wireless mesh radio network using peer-to-peer file sharing
CA3148974A1 (en) 2019-08-22 2021-02-25 Targus International Llc Systems and methods for participant-controlled video conferencing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060258344A1 (en) 2002-08-22 2006-11-16 Shao-Chun Chen Mobile handset update package generator that employs nodes technique
US20070050762A1 (en) 2004-04-06 2007-03-01 Shao-Chun Chen Build optimizer tool for efficient management of software builds for mobile devices
KR20090062317A (ko) * 2007-12-12 2009-06-17 한국전자통신연구원 멀티홉 무선망에서 시스템 업그레이드 방법 및 시스템

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6802061B1 (en) * 1996-12-12 2004-10-05 Microsoft Corporation Automatic software downloading from a computer network
US6836483B1 (en) * 1998-06-24 2004-12-28 Research Investment Network, Inc. Message system for asynchronous transfer
US7073172B2 (en) * 1998-09-21 2006-07-04 Microsoft Corporation On demand patching of applications via software implementation installer mechanism
US8875116B2 (en) 2000-11-17 2014-10-28 Hewlett-Packard Development Company, L.P. Network for updating firmware and / or software in wireless communication devices
US7814474B2 (en) * 2000-11-17 2010-10-12 Hewlett-Packard Development Company, L.P. Updatable mobile handset based on Linux with compression and decompression techniques
US7246351B2 (en) * 2001-02-20 2007-07-17 Jargon Software System and method for deploying and implementing software applications over a distributed network
EP1398948B1 (en) * 2002-09-13 2013-11-06 Ricoh Company, Ltd. Image forming apparatus, methods used therein and a computer readable storage medium
US8316361B2 (en) * 2003-01-09 2012-11-20 Hewlett-Packard Development Company, L.P. Method of enabling a user to update one or more low-level resources of a computer system in a user-friendly manner
US7739679B2 (en) * 2004-04-06 2010-06-15 Hewlett-Packard Development Company, L.P. Object ordering tool for facilitating generation of firmware update friendly binary image
US7958502B2 (en) * 2005-08-05 2011-06-07 Hewlett-Packard Development Company, L.P. Efficient generator of update packages for mobile devices that uses non-ELF preprocessing
US7996829B2 (en) * 2006-07-31 2011-08-09 Hewlett-Packard Development Company, L.P. Managing software revisions for servers in an infrastructure
EP1903437A3 (en) * 2006-07-31 2008-10-22 Seiko Epson Corporation Update data transmission method, firmware writing system, and update data transmission program
WO2008025018A2 (en) * 2006-08-24 2008-02-28 Chumby Industries, Inc. Networked personal audiovisual device having flexible housing
US7870548B2 (en) * 2007-01-05 2011-01-11 Inventec Corporation Method for updating an image file
US8375381B1 (en) * 2007-07-30 2013-02-12 Adobe Systems Incorporated Management user interface for application execution environment
US8448161B2 (en) * 2007-07-30 2013-05-21 Adobe Systems Incorporated Application tracking for application execution environment
US8418168B2 (en) * 2008-05-29 2013-04-09 Research In Motion Limited Method and system for performing a software upgrade on an electronic device connected to a computer
KR101019822B1 (ko) 2008-12-04 2011-03-04 포항공과대학교 산학협력단 무선 센서 네트워크에서 센서 노드 소프트웨어 업데이트 방법 및 장치
WO2010135696A1 (en) * 2009-05-21 2010-11-25 Salesforce.Com, Inc. System, method and computer program product for versioning components of an application
US8429640B2 (en) * 2009-06-05 2013-04-23 Dell Products L.P. System and method for modifying firmware
US8464249B1 (en) * 2009-09-17 2013-06-11 Adobe Systems Incorporated Software installation package with digital signatures
US8612516B2 (en) * 2011-11-28 2013-12-17 Wyse Technology Inc. Deployment of a driver or an application on a client device having a write-filter

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060258344A1 (en) 2002-08-22 2006-11-16 Shao-Chun Chen Mobile handset update package generator that employs nodes technique
US20070050762A1 (en) 2004-04-06 2007-03-01 Shao-Chun Chen Build optimizer tool for efficient management of software builds for mobile devices
KR20090062317A (ko) * 2007-12-12 2009-06-17 한국전자통신연구원 멀티홉 무선망에서 시스템 업그레이드 방법 및 시스템

Also Published As

Publication number Publication date
US20120102478A1 (en) 2012-04-26
US8793680B2 (en) 2014-07-29
KR20100120110A (ko) 2010-11-12

Similar Documents

Publication Publication Date Title
KR101383691B1 (ko) 무선 메쉬 네트워크에서의 협력적 무선 펌웨어 업데이트 장치 및 방법
US8910141B2 (en) Distribution of software updates in wireless multihop networks
US8340131B2 (en) Efficient broadcast of data in a communication network
US8634342B2 (en) Upgrading mesh access points in a wireless mesh network
US11038767B2 (en) Discovery of a set of nodes in a network
US9065810B2 (en) Daisy chain distribution in data centers
CN102224751A (zh) 用于动态的自动通信路径选择、分布式装置同步以及任务委派的系统和方法
KR101757417B1 (ko) 무선통신에서의 통신노드 펌웨어 업데이트 방법
US9763062B2 (en) Rapid deployment of software updates in multi-hop wireless networks
Li et al. Distributed dataset synchronization in disruptive networks
WO2014057595A1 (ja) 通信端末間情報交換方法および通信端末
US20130311611A1 (en) Method and device for executing a device management command based on an execution time
CN102292936A (zh) 链路状态数据库同步检测方法及路由设备
CN110582060A (zh) 通信方法、装置、节点设备及其存储介质
KR100929235B1 (ko) 무선 센서 네트워크의 동적 재구성방법 및 그 시스템
Pule et al. Firmware updates over the air mechanisms for low power wide area networks: A review
Yang et al. Distributed age-of-information optimization in edge computing for internet of vehicles
US20240121297A1 (en) Method and apparatus for distributed synchronization
Lee et al. Policy-based reprogramming for wireless sensor networks
CN117914634A (zh) 控制指令的发送方法、装置、存储介质及电子装置
Ponce et al. D3. 4-Final Report on Reliable Assessment of Global State
CN116074144A (zh) 家居控制系统、方法、电子设备及存储介质
Weinschrott und Informationstechnik
Soysal A distributed algorithmic approach for improving reliability and energy efficiency in Wireless Sensor Networks
Kumar Transmission of data through a MOBINET protocol to handle the duplication problem from the mobile sensor side

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170327

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180403

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190325

Year of fee payment: 6