TWI584607B - 基於藍牙網路的端對端連線方法 - Google Patents
基於藍牙網路的端對端連線方法 Download PDFInfo
- Publication number
- TWI584607B TWI584607B TW105102464A TW105102464A TWI584607B TW I584607 B TWI584607 B TW I584607B TW 105102464 A TW105102464 A TW 105102464A TW 105102464 A TW105102464 A TW 105102464A TW I584607 B TWI584607 B TW I584607B
- Authority
- TW
- Taiwan
- Prior art keywords
- node
- identification information
- routing
- reply
- bluetooth
- Prior art date
Links
Description
本發明係與基於藍牙網路的連線方法有關,特別有關於基於藍牙網路的端對端連線方法。
藍牙網路技術為當前最廣為使用的無線個人區域網路技術(Wireless Personal Area Network,WPAN)。相較於使用Wi-Fi網路技術的電子裝置,使用藍牙網路技術的電子裝置具有低功耗(low energy)、連線建立時間短及低資料延遲(data latency)等優點。
請參閱圖1,為現有藍牙網路系統的架構圖。於現有藍牙網路系統中,複數藍牙節點40-48(如筆記型電腦、智慧型手機、藍牙滑鼠、穿戴式裝置或藍牙耳機)僅可使用主從式(server-client)架構來建立直接藍牙連接以進行資料傳輸,而使得傳輸距離大幅受限。
具體而言,由於使用主從式架構,於現有藍牙網路系統中,單一藍牙連接的有效範圍(約為半徑30公尺)即為現有藍牙網路系統的最大傳輸範圍。並且,由於最大傳輸範圍過小,現有藍牙網路系統即便具有上述優點,亦無法適用於大區域物聯網,而使現有藍牙網路系統發展受限。
是以,現有藍牙網路系統存在上述問題,而亟待更有效的方案被提出。
本發明之主要目的,係在於提供一種基於藍牙網路的端對端連線方法,可提升藍牙網路的傳輸範圍。
為達上述目的,本發明係提供一種基於藍牙網路的端對端連線方法,運用於一藍牙網路系統,該藍牙網路系統包括可於一廣播模式及一掃描模式間進行切換的一第一節點、一第二節點及一第三節點,該基於藍牙網路的端對端連線方法包括下列步驟:a)該第一節點於切換至該廣播模式時對外發送一路由需求;b)該第二節點於切換至該掃描模式、接收該路由需求且依據該路由需求的一需求終點識別資訊判斷該第二節點非為一目的節點時,切換至該廣播模式來對外轉發該路由需求;c)該第三節點於切換至該掃描模式、接收該路由需求且依據該需求終點識別資訊判斷該第三節點為該目的節點時,切換至該廣播模式來回傳一路由回覆;d)該第二節點於切換至該掃描模式、接收該路由回覆且依據該路由回覆的一回覆終點識別資訊判斷該第二節點非為一來源節點時,切換至該廣播模式來轉發該路由回覆;e)該第一節點於切換至該掃描模式、接收該路由回覆且依據該回覆終點識別資訊判斷該第一節點為該來源節點時,依據該路由回覆決定一路由路徑;及f)該第一節點經由該路由路徑與該第三節點進行資料傳輸。
本發明經由使用端對端架構來傳輸資料可有效提升藍牙網路的傳輸範圍。
10‧‧‧藍牙模組
12‧‧‧記憶體
122、122a、122b、122c、122d‧‧‧路由表
124‧‧‧電腦程式
14‧‧‧處理器
160‧‧‧感測模組
162‧‧‧定位模組
20‧‧‧第一節點
22‧‧‧第二節點
24‧‧‧第三節點
30‧‧‧外部裝置
32‧‧‧網際網路
40-48‧‧‧藍牙節點
S10-S32‧‧‧端對端連線步驟
S50-S54‧‧‧路由路徑替換步驟
S60-S62‧‧‧第一傳輸步驟
S70-S72‧‧‧第二傳輸步驟
S720-S734‧‧‧資料緩存步驟
圖1為現有藍牙網路系統的架構圖。
圖2為本發明第一實施例的藍牙節點的架構圖。
圖3為本發明第一實施例的藍牙網路系統的架構圖。
圖4為本發明第一實施例的基於藍牙網路的端對端連線方法的流程圖。
圖5為本發明第二實施例的基於藍牙網路的端對端連線方法的部分流程圖。
圖6為本發明第二實施例的基於藍牙網路的端對端連線方法的部分流程圖。
圖7為本發明第三實施例的基於藍牙網路的端對端連線方法的部分流程圖。
圖8為本發明第四實施例的基於藍牙網路的端對端連線方法的部分流程圖。
圖9A為本發明的建立端對端連線的第一示意圖。
圖9B為本發明的建立端對端連線的第二示意圖。
圖9C為本發明的建立端對端連線的第三示意圖。
圖9D為本發明的建立端對端連線的第四示意圖。
圖9E為本發明的建立端對端連線的第五示意圖。
圖9F為本發明的建立端對端連線的第六示意圖。
圖9G為本發明的資料傳輸的第一示意圖。
圖9H為本發明的資料傳輸的第二示意圖。
茲就本發明之一較佳實施例,配合圖式,詳細說明如後。
首請參閱圖2,為本發明第一實施例的藍牙節點架構圖。如圖2所示,本實施例的藍牙節點主要包括藍牙模組10、記憶體12及電性連接上述元件的處理器14。
較佳地,記憶體12儲存路由表120及電腦程式122,並且路由表120包括目標節點欄位及次站節點欄位。
於本發明之另一實施例中,藍牙節點可進一步包括電性連接處理器14的感測模組160(如溫度計、心跳儀、血壓計、加速度計或陀螺儀)、定位模組162(如使用北斗定位系統(BDS)或全球定位系統(GPS)的定位器)或警示模組164(如蜂鳴器、揚聲器或指示燈)。
於本發明之另一實施例中,藍牙節點可進一步包括電性連接處理器14的外接模組18。外接模組18可直接連接外部裝置30(如顯示器、印表機、管控主機、路由器或網路存取系統(NAS))或經由網際網路32間接連接外部裝置30(如雲端主機)。較佳地,外接模組18係USB傳輸模組、Wi-Fi傳輸模組、HDMI傳輸模組、乙太網(Ethernet)傳輸模組或乙太網供電(PoE)傳輸模組(可同時提供藍牙節點運作所需電力),但不以此限定。
值得一提的是,不同於同時支援主從式架構及點對點架構的Wi-Fi節點,藍牙節點(如圖3所示之第一節點20、第二節點22及第三節點24)於連接建立過程中,並無法同時進行廣播及掃描(即無法同時搜尋其他藍牙節點亦可被其他藍牙節點搜尋),並且,於資料傳輸過程中,藍牙節點無法與連線對象以外的其他藍牙節點同時進行資料的發送及接收。
具體而言,藍牙節點需切換至廣播模式方可廣播自身的相關識別資訊至其他節點,並需切換至掃描模式方可掃描並取得其他節點的相關識別資訊。此外,當藍牙節點僅於作為伺服端(server)時可發送大量資料至其他節點,並僅於作為用戶端(client)時可自伺服端接收大量資料。由於具有上述特性,
藍牙節點並無法如同Wi-Fi節點直接適用點對點架構,亦無法直接建立點對點連線。
較佳地,各藍牙節點可取得預設的模式切換時間(如30秒),並於計時模式切換時間經過時,自掃描模式切換至廣播模式或自廣播模式切換至掃描模式。更進一步地,前述模式切換時間係各藍牙節點於進行模式切換前隨機生成(如自1-60秒隨機選取)。
續請同時參閱圖3,為本發明第一實施例的藍牙網路系統的架構圖。本實施例的藍牙網路系統包括複數藍牙節點。本實施例的各藍牙節點係與圖2所示之藍牙節點相同或相似,於此不再贅述。
並且,為方便說明,於後續說明中係對複數藍牙節點分別給予不同之命名。具體而言,第一節點20係複數藍牙節點中用來作為資料傳輸來源的來源節點,第二節點22係複數藍牙節點中用來作為資料傳輸中繼的中繼節點,第三節點24係複數藍牙節點中用來作為資料傳輸目的地的目的節點。本發明的主要技術特徵在於,第一節點20可自至少一第二節點22中選擇較佳的路由路徑,並依據所選的路由路徑與第三節點24進行資料傳輸(容後詳述)。
值得一提的是,雖於本說明書係以第一節點20為來源節點,第二節點22為中繼節點,第三節點24為目的節點來加以說明,但本發明所屬技術領域中具有通常知識者自可理解,第一節點20、第二節點22及第三節點24之命名係為方便說明,而非用以限定前述藍牙節點為特殊功能節點。於其他實施方式中,第一節點20亦可為中繼節點或目的節點,第二節點22亦可為來源節點或目的節點,第三節點24亦可為來源節點或中繼節點。並且,第一節點20、第二節點22及第三節點24可為相同類型或不同類型的具有藍牙模組的電子裝置,如筆記型電腦、平板電腦、藍牙滑鼠、藍牙耳機、智慧型手機、穿戴式裝置或智慧型電器,但不以此限定。
續請一併參閱圖4,為本發明第一實施例的基於藍牙網路的端對端連線方法的流程圖。
本發明之各實施例的基於藍牙網路的端對端連線方法(以下簡稱端對端連線方法)係使用圖2所示之藍牙節點及圖3所示之藍牙網路系統來加以實現。
更進一步地,各藍牙節點的電腦程式122分別記錄有用於實現本發明各實施例的端對端連線方法的程式碼或機械碼(machine code)。各藍牙節點的處理器14執行電腦程式122的程式碼或機械碼後,可分別執行本發明各實施例的端對端連線方法的各步驟。
第一節點20於切換至廣播模式時,對外發送路由需求(步驟S10)。具體而言,第一節點20係持續於廣播模式及掃瞄模式間進行切換,並於經由人機介面(圖未標示)接受使用者操作且切換至廣播模式時,廣播路由需求至鄰近的藍牙節點(即中繼節點,以第二節點22為例)。
較佳地,路由需求係為封包形式,並包括需求服務識別碼、需求起點識別資訊、需求終點識別資訊及需求轉發識別資訊。需求服務識別碼用以識別封包類型(如識別封包為路由需求封包、路由回覆封包或資料封包)。需求起點識別資訊用以記錄路由需求的起點的識別資訊(如硬體位址(MAC address)或公開位址(public address))。需求終點識別資訊用以記錄路由需求的終點的識別資訊(如硬體位址或公開位址)。需求轉發識別資訊用以記錄轉發路由需求的各藍牙節點的識別資訊(如硬體位址或公開位址)。
更進一步地,第一節點20係先將對應需求封包的識別碼作為需求服務識別碼,將第一節點20的第一識別資訊作為需求起點識別資訊,將第三節點24的第三識別資訊作為需求終點識別資訊,將第一識別資訊作為需求轉發識別資訊,並對外發送處理後的路由需求。
接著,第二節點22判斷是否切換至掃描模式且接收路由需求(步驟S12)。具體而言,第二節點22係持續於廣播模式及掃瞄模式間進行切換,並於切換至掃描模式且接收路由需求時,執行步驟S14,否則再次執行步驟S12以持續判斷。
接著,第二節點22依據路由需求更新第二節點22的路由表120(下稱第二路由表)(步驟S14)。具體而言,第二節點22係將所收到的路由需求的需求起點識別資訊記錄於第二路由表的第二目標節點欄位,並將需求轉發識別資訊記錄於第二路由表的第二次站節點欄位。
接著,第二節點22判斷自身是否為目的節點(步驟S16)。具體而言,第二節點22比較第二識別資訊與需求終點識別資訊是否相符。若兩者相符,則第二節點22為目的節點,否則,第二節點22非為目的節點。
若第二節點22判斷自身為目的節點,則執行步驟S20,否則,執行步驟S18以轉發路由需求。
承上所述,由於第二節點非為目的節點,第二節點22將接著切換至廣播模式來轉發路由需求(步驟S18)。具體而言,第二節點22係以第二識別資訊更新路由需求的需求轉發識別資訊(如加入第二識別資訊,或以第二識別資訊取代原先記錄的第一識別資訊),再切換至廣播模式來轉發更新後的路由需求至另一藍牙節點(如另一第二節點22或第三節點24)。
以轉發至第三節點24為例,第三節點24可如同第二節點22執行步驟S12-S16。
具體而言,第三節點24切換至廣播模式並接收路由需求時更新第三節點24的路由表120(下稱第三路由表)。更進一步地,第三節點24係將所收到的路由需求的需求起點識別資訊記錄於第三路由表的第三目標節點欄位,並將需求轉發識別資訊記錄於第三路由表的第三次站節點欄位。接著,第三節點24比
較第三識別資訊與需求終點識別資訊並判定兩者相符,而判定第三節點24為目的節點。
承上所述,由於第三節點24係目的節點,第三節點24將不再轉發路由需求(即不執行步驟S18),而切換至廣播模式來回傳路由回覆(步驟S20)。
具體而言,第三節點24產生對應路由需求的路由回覆並回傳所產生的路由回覆。
較佳地,路由回覆亦為封包形式,並包括回覆服務識別碼、回覆起點識別資訊、回覆終點識別資訊及回覆轉發識別資訊。回覆服務識別碼用以識別封包類型(如識別封包為路由需求封包、路由回覆封包或資料封包)。回覆起點識別資訊用以記錄路由回覆的起點的識別資訊。回覆終點識別資訊用以記錄路由回覆的終點的識別資訊。回覆轉發識別資訊用以記錄轉發路由需求的各藍牙節點的識別資訊。
更進一步地,第三節點24係先將對應回覆封包的識別碼作為回覆服務識別碼,將需求終點識別資訊(即第三識別資訊)作為回覆起點識別資訊,將需求起點識別資訊(即第一識別資訊)作為回覆終點識別資訊,將第三識別資訊作為回覆轉發識別資訊,並對外發送處理後的路由回覆。
接著,第二節點22判斷是否切換至掃描模式且接收路由回覆(步驟S22)。若是,則執行步驟S24,否則再次執行步驟S22。第二節點22於接收路由回覆後,依據路由回覆更新第二路由表(步驟S24)。具體而言,第二節點22係將所收到的路由回覆的回覆起點識別資訊記錄於第二路由表的第二目標節點欄位,並將回覆轉發識別資記錄於第二路由表的第二次站節點欄位。
接著,第二節點22判斷自身是否為來源節點(步驟S26)。具體而言,第二節點22係比較第二識別資訊與回覆終點識別資訊是否相符。若兩者相符,則第二節點22為來源節點,否則,第二節點22非為來源節點。
若第二節點22判斷自身為來源節點,則執行步驟S30,否則執行步驟S28以轉發路由回覆。
承上所述,由於第二節點非為來源節點,第二節點22將切換至廣播模式來轉發路由回覆(步驟S28)。具體而言,第二節點22先以第二識別資訊更新路由回覆的回覆轉發識別資訊(如加入第二識別資訊,或以第二識別資訊取代原先記錄的第三識別資訊),再切換至廣播模式來轉發路由回覆至另一藍牙節點(如另一第二節點22或第一節點20)。
以轉發至第一節點20為例,第一節點20可如同第二節點22執行步驟S22-S26。
具體而言,第一節點20切換至廣播模式並接收路由回覆時更新第一節點20的路由表120(下稱第一路由表)。更進一步地,第一節點20係將所收到的路由回覆的回覆起點識別資訊記錄於第一路由表的第一目標節點欄位,並將回覆轉發識別資訊記錄於第一路由表的第一次站節點欄位。接著,第一節點20比較第一識別資訊與回覆終點識別資訊並判定兩者相符,而判定第一節點20為來源節點。
承上所述,由於第一節點20係來源節點,第一節點20將不再轉發路由回覆(即不執行步驟S28),而決定路由路徑(步驟S30)。
具體而言,第一節點20依據所收到的路由回復的回覆轉發識別資訊來決定自第一節點20經過第二節點22至第三節點30的路由路徑。
接著,第一節點20經由路由路徑來與第三節點24進行資料傳輸(步驟S32)。
值得一提的是,前述更新路由表步驟(即步驟S14及S24)非為本發明之必要步驟,本發明所屬技術領中具有通常知識者可依需求任意增減前述更新路由表步驟。
本發明可有效提升藍牙網路的傳輸範圍,並可有效降低藍牙網路的建置成本。
續請一併參閱圖5,為本發明第二實施例的基於藍牙網路的端對端連線方法的部分流程圖。本實施例與第一實施例差異在於,本實施例的端對端連線方法於步驟S32後更包括以下步驟。
步驟S50:第一節點20持續偵測當前所使用的路由路徑是否中斷。若偵測路由路徑中斷,則執行步驟S52,否則,再次執行步驟S32以繼續使用當前的路由路徑來傳輸資料。
步驟S52:第一節點20判斷是否所有備用路徑皆中斷。具體而言,於步驟S30中,第一節點可依據所收到的路由回覆決定複數條候選路徑,從複數候選路徑中決定最佳的候選路徑(如傳輸速度最快、經過節點數最少或距離最短)作為用以傳輸資料的路由路徑,並將剩下的候選路徑記錄為備用路徑,其中各備用路徑係經過至少一與路由路徑不同的第二節點22,且各備用路徑所經過的第二節點22不完全相同。
接著,當偵測路由路徑中斷時,第一節點20判斷所記錄的備用路徑是否皆中斷。若存在未中斷的備用路徑,則執行步驟S54,否則執行步驟S56。
步驟S54:第一節點20將未中斷的備用路徑做為新的路由路徑,並再次執行步驟S32以使用新的路由路徑來進行資料傳輸。
較佳地,若存在複數備用路徑時,第一節點20可選擇最佳的備用路徑作為新的路由路徑。
若於步驟S52判斷所有備用路徑皆中斷時,執行步驟S56:第一節點20判斷是否需重新進行路由。若是(如使用者仍有資料傳輸需求),則再次執行步驟S10以重新路由。否則(如使用者無資料傳輸需求),結束端對端連線方法。
值得一提的是,第一節點20亦可不先行判斷是否需重新路由(即不執行步驟S56),而於每次判斷所有備用路徑皆中斷時,直接執行步驟S10以重新路由。
本發明於偵測路由路徑中斷時直接啟用備用路徑,相較於重新路由,可有效減少連線中斷時間並節省節點資源(啟用備用路徑所需時間及運算傳輸資源遠小於重新路由所需時間及運算傳輸資源)。
並且,由於本發明係使用藍牙模組來傳輸資料而非使用Wi-Fi模組,使用者可將閒置的Wi-Fi網路另作他用(如經由Wi-Fi直連來連接外部裝置30或連接網際網路32)。
續請一併參閱圖6為本發明第二實施例的基於藍牙網路的端對端連線方法的部分流程圖。本實施例與第一實施例差異在於,本實施例的端對端連線方法的步驟S32更包括以下步驟。
步驟S60:各藍牙節點依據路由路徑依序建立藍牙連接並傳送資料。
步驟S62:各藍牙節點依據路由表120判斷自身是否為目的節點。若是,則完成資料傳輸,否則,再次執行步驟S60來資料轉傳至另一藍牙節點。
舉例來說,第一節點20可依據第一路由表及路由路徑與第二節點22建立第一藍牙連接,並經由第一藍牙連接傳送資料至所連接的第二節點22。
第二節點22於判斷自身非為目的節點時,依據第二路由表及路由路徑與另一第二節點22建立第二藍牙連接,並經由第二藍牙連接轉傳資料至另一第二節點22。接著,其他第二節點22重複執行上述操作直到將資料傳輸至鄰近第三節點24的第二節點22。
最後,鄰近第三節點24的第二節點22於判斷自身非為目的節點時,依據第二路由表及路由路徑與第三節點24建立第三藍牙連接,並經由第三藍牙連接轉傳資料至第三節點24以完成端對端資料傳輸。
本發明經由建立對應路由路徑的複數藍牙連接並進行資料傳輸,可有效於藍牙網路中實現端對端資料傳輸。
續請一併參閱圖7,為本發明第三實施例的基於藍牙網路的端對端連線方法的部分流程圖。如圖2及圖3所示,於本實施例中,第三節點24更連接外部裝置30。
較佳地,當外部裝置30係雲端主機時,第三節點24可經由網際網路32連接外部裝置30,當外部裝置30係管控主機或週邊裝置(如印表機、掃描器或顯示器)時,第三節點24可經由內部網路(如Wi-Fi區域網路、ZigBee區域網路或乙太區域網路)或傳輸線(如USB傳輸線)連接外部裝置30
本實施例與第一實施例差異在於,本實施例的端對端連線方法的步驟S32更包括以下步驟。
步驟S70:第一節點20取得資料。
步驟S72:第一節點20經由路由路徑及第三節點24來發送所取得資料至外部裝置30。
本發明經由基於藍牙網路的端對端連線,可有效共享任一藍牙節點所連接的外部裝置。
舉例來說,藍牙節點為感測器,並設置於監測環境(如廠房或樹林),外部裝置30為雲端主機。各藍牙節點可經由感測模組160感測資料,並經由路由路徑及其他藍牙節點來發送感測資料至外部裝置30。由於藍牙節點可同時作為感測器及中繼節點,使用者僅需設置藍牙節點,不須另外設置中繼裝置,亦可動態擴大藍牙網路的資料傳輸範圍,而可有效降低系統設置成本。
於另一例子中,藍牙節點為定位裝置,並由被監控者(如病患或囚犯)配戴,外部裝置30為管控主機。各藍牙節點可經由定位模組162取得定位資料,並經由路由路徑及其他藍牙節點來發送定位資料至外部裝置30。更進一步地,藍牙節點可於依據定位資料判斷被監控者離開監控環境(如醫院或監獄)時,經由警示模組164發出警示(如發出警示聲或閃爍警示燈或經由路由路徑發送警示訊息至管控主機)。
由於藍牙節點可同時作為定位裝置及中繼節點,即便被監控者逃離監控環境,只要逃離的被監控者附近存在其他藍牙節點(如其他被監控者或警衛),藍牙節點仍可回傳定位資料至管控主機,而可使監控者快速掌握被監控者位置。
續請一併參閱圖8為本發明第四實施例的基於藍牙網路的端對端連線方法的部分流程圖。本實施例與第三實施例差異在於,本實施例的端對端連線方法的步驟S72更包括以下步驟。
步驟S720:第一節點20發送資料至第三節點24。
步驟S722:第三節點24判斷外部連接(即與外部裝置30間的連接)是否中斷。若是,則執行步驟S724,否則執行步驟S730。
步驟S724:第三節點24將欲傳輸的資料暫存於記憶體12。
步驟S726:第三節點24持續偵測外部連接是否恢復。若是,執行步驟S728,否則執行步驟S732。
步驟S728:第三節點24自記憶體12讀取暫存的資料,並轉傳資料至外部裝置30。
若於步驟S722中判斷外部連接未中斷,則執行步驟S730:第三節點24直接轉傳資料至外部裝置30。
若於步驟S726中偵測外部連接未恢復,則執行步驟S732:第三節點24偵測電源是否關閉。若是,則執行步驟S734,否則再次執行步驟S726。
步驟S734:第三節點24於偵測電源關閉後自動抹除暫存資料。具體而言,第三節點24可將資料暫存於揮發性記憶體(如RAM)以使電源關閉後可自動抹除暫存資料。
值得一提的是,當電源關閉時,由於第三節點24的藍牙模組亦將關閉(即其他藍牙節點無法連接第三節點24),此時暫存資料已因藍牙連接中斷而被判定為傳輸失敗。若持續保留此筆資料僅會造成儲存資源的浪費。本發明經由自動抹除傳輸失敗的暫存資料,可有效節省儲存空間。
請參閱圖9A至圖9H,圖9A為本發明的建立端對端連線的第一示意圖,圖9B為本發明的建立端對端連線的第二示意圖,圖9C為本發明的建立端對端連線的第三示意圖,圖9D為本發明的建立端對端連線的第四示意圖,圖9E為本發明的建立端對端連線的第五示意圖,圖9F為本發明的建立端對端連線的第六示意圖,圖9G為本發明的資料傳輸的第一示意圖,圖9H為本發明的資料傳輸的第二示意圖,用以示例性說明端對端連線方法。並且,於本例子中,藍牙網路系統包括來源節點A,中繼節點B及中繼節點C,目的節點D。並且,來源節點A的識別資訊為“A”,中繼節點B的識別資訊為“B”,中繼節點C的識別資訊為“C”,目的節點D的識別資訊為“D”。
如圖9A所示,首先,來源節點A切換至廣播模式並廣播路由需求(Route Request,RREQ)至鄰近的中繼節點B,其中路由需求的需求起點識別資訊為“A”,需求終點識別資訊為“D”,需求轉發識別資訊為“A”。
中繼節點B於切換至掃描模式後接收來自來源節點A的路由需求,並依據路由需求更新路由表120b,即將需求起點識別資訊“A”記錄於目標節點欄位,並將需求轉發識別資訊的最後一筆(即“A”)記錄於次站節點欄位。
接著,如圖9B所示,中繼節點B於判斷自身非為目的節點時,依據自身的識別資訊“B”更新需求轉發識別資訊(如更新為A→B),切換至廣播模式並分別轉傳更新後的路由需求至鄰近的中繼節點C及目的節點D。
中繼節點C於切換至掃描模式後接收來自中繼節點B的路由需求,並依據路由需求更新路由表120c,即將需求起點識別資訊“A”記錄於目標節點欄位,並將需求轉發識別資訊的最後一筆(即“B”)記錄於次站節點欄位。
目的節點D於切換至掃描模式後接收來自中繼節點B的路由需求,並依據路由需求更新路由表120d,即將需求起點識別資訊“A”記錄於目標節點欄位,並將需求轉發識別資訊的最後一筆(即“B”)記錄於次站節點欄位。
接著,如圖9C所示,中繼節點C於判斷自身非為目的節點時,依據自身的識別資訊“C”更新需求轉發識別資訊(如更新為A→B→C),切換至廣播模式並轉傳更新後的路由需求至鄰近的目的節點D。
目的節點D於切換至掃描模式後接收來自中繼節點C的路由需求,並依據路由需求再次更新路由表120d,即將需求轉發識別資訊的最後一筆(即“C”)記錄於對應目標節點欄位“A”的次站節點欄位。
接著,如圖9D所示,目的節點D於判斷自身為目的節點時,切換至廣播模式並依據路由表120d分別回傳路由回覆(Route Reply,RREP)至鄰近的中繼節點B及中繼節點C,其中路由回覆的回覆起點識別資訊為“D”,回覆終點識別資訊為“A”,回覆轉發識別資訊為“D”。
中繼節點B於切換至掃描模式後接收來自目的節點D的路由回覆並依據路由回覆更新路由表120b,即將回覆起點識別資訊“D”記錄於目標節點欄位,並將回覆轉發識別資訊的最後一筆(即“D”)記錄於次站節點欄位。
中繼節點C於切換至掃描模式後接收來自目的節點D路由回覆,並依據路由回覆更新路由表120c,即將回覆起點識別資訊“D”記錄於目標節點欄位,並將回覆轉發識別資訊的最後一筆(即“D”)記錄於次站節點欄位。
接著,如圖9E所示,中繼節點C於判斷自身非為來源節點時,依據自身的識別資訊“C”更新回覆轉發識別資訊(如更新為D→C),切換至廣播模式並轉傳更新後的路由回覆至鄰近的中繼節點B。
中繼節點B於切換至掃描模式後接收來自中繼節點C的路由回覆,並依據路由回覆再次更新路由表120b,即將回覆起點識別資訊“D”記錄於目標節點欄位,並將回覆轉發識別資訊的最後一筆(即“C”)記錄於對應目標節點欄位“D”的次站節點欄位。
接著,如圖9F所示,中繼節點B於判斷自身非為來源節點時,依據自身的識別資訊“B”更新回覆轉發識別資訊(如更新為D→C→B及D→B),切換至廣播模式並轉傳更新後的路由回覆至鄰近的來源節點A。
來源節點A於切換至掃描模式後接收來自中繼節點B的路由回覆,並依據路由回覆更新路由表120a,即將回覆起點識別資訊“D”記錄於目標節點欄位,並將回覆轉發識別資訊的最後一筆(即“B”)記錄於次站節點欄位。
接著,來源節點A可由路由回覆的回覆轉發識別資訊得到兩條候選路徑(即B→D及B→C→D),並於兩條候選路徑中選擇較佳的候選路徑作為路由路徑(於此以選擇較短的候選路徑B→D為例)。
接著,如圖9G所示,來源節點A可依據路由表120a及所決定的路由路徑與中繼節點B建立藍牙連接,其中來源節點A為伺服端(server),中繼節點B為用戶端(client)。來源節點A經由所建立的藍牙連接傳送資料至中繼節點B。
接著,如圖9H所示,中繼節點B可依據路由表120b及路由路徑與目的節點D建立藍牙連接,其中中繼節點B為伺服端,目的節點D為用戶端。中繼節點B經由所建立的藍牙連接轉傳資料至目的節點D以完成端對端資料傳輸。
值得一提的是,當中繼節點B與目的節點D間的連接中斷或連接品質不佳(如距離過遠)時,來源節點A可適時改選候選路徑B→C→D作為新的路由路徑來持續傳輸資料。藉此,本發明可使用最佳路徑進行資料傳輸,而可提供更好的網路服務品質。
本發明經由於藍牙網路中實現近似點對點(peer-to-peer,P2P)架構且具有傳輸延遲(delay)的端對端(end-to-end)架構,可有效提升藍牙網路的傳輸距離。
以上所述僅為本發明之較佳具體實例,非因此即侷限本發明之專利範圍,故舉凡運用本發明內容所為之等效變化,均同理皆包含於本發明之範圍內,合予陳明
S10-S32‧‧‧端對端連線步驟
Claims (8)
- 一種基於藍牙網路的端對端連線方法,運用於一藍牙網路系統,該藍牙網路系統包括可於一廣播模式及一掃描模式間進行切換的一第一節點、一第二節點及一第三節點,該基於藍牙網路的端對端連線方法包括下列步驟:a)該第一節點於切換至該廣播模式時對外發送一路由需求;b)該第二節點於切換至該掃描模式、接收該路由需求且依據該路由需求的一需求終點識別資訊判斷該第二節點非為一目的節點時,將該路由需求的一需求起點識別資訊記錄於一第二路由表的一第二目標節點欄位,將該路由需求的一需求轉發識別資訊記錄於該第二路由表的一第二次站節點欄位,依據該第二節點的一第二識別資訊更新該路由需求的該需求轉發識別資訊,並切換至該廣播模式來對外轉發更新後的該路由需求;c)該第三節點於切換至該掃描模式、接收該路由需求且依據該需求終點識別資訊判斷該第三節點為該目的節點時,將該路由需求的該需求起點識別資訊記錄於一第三路由表的一第三目標節點欄位並作為一路由回覆的一回覆終點識別資訊,將該路由需求的該需求轉發識別資訊記錄於該第三路由表的一第三次站節點欄位並作為該路由回覆的一回覆起點識別資訊,並切換至該廣播模式來回傳該路由回覆;d)該第二節點於切換至該掃描模式、接收該路由回覆且依據該路由回覆的該回覆終點識別資訊判斷該第二節點非為一來源節點時,將該路由回覆的該回覆起點識別資訊記錄於第二路由表的該第二目標節點欄位,將該路由回覆的該回覆轉發識別資訊記錄於該第二路由表的該第二次站節點欄位,並依據該第二節點的該第二識別資訊更新該路由回覆的該回覆轉發識別資訊,並切換至該廣播模式來轉發更新後的該路由回覆;e)該第一節點於切換至該掃描模式、接收該 路由回覆且依據該回覆終點識別資訊判斷該第一節點為該來源節點時,將該路由回覆的該回覆起點識別資訊記錄於一第一路由表的一第一目標節點欄位,將該路由回覆的該回覆轉發識別資訊記錄於該第一路由表的一第一次站節點欄位,並依據該路由回覆的該回覆轉發識別資訊來決定一路由路徑;及f)該第一節點經由該路由路徑與該第三節點進行資料傳輸。
- 如請求項1所述之基於藍牙網路的端對端連線方法,其中該第一節點、該第二節點及該第三節點係於計時隨機生成的一模式切換時間經過時,自該掃描模式切換至該廣播模式或自該廣播模式切換至該掃描模式。
- 如請求項1所述之基於藍牙網路的端對端連線方法,其中該步驟e之後更包括下列步驟:e1)於偵測該路由路徑中斷且至少一備用路徑未中斷時,將未中斷的該備用路徑做為新的該路由路徑,其中該備用路徑係經過至少一與該路由路徑不同的該第二節點;及e2)於偵測該路由路徑及該備用路徑中斷時,跳至該步驟a。
- 如請求項1所述之基於藍牙網路的端對端連線方法,其中該步驟f包括下列步驟:f11)該第一節點依據該第一路由表及該路由路徑與複數該第二節點之一建立一第一藍牙連接,並經由該第一藍牙連接傳送資料至該第二節點;f12)該第二節點依據該第二路由表及該路由路徑與另一該第二節點建立一第二藍牙連接,並經由該第二藍牙連接轉傳資料至另一該第二節點;及f13)該第二節點依據該第二路由表及該路由路徑與該第三節點建立一第三藍牙連接,並經由該第三藍牙連接轉傳資料至該第三節點。
- 如請求項1所述之基於藍牙網路的端對端連線方法,其中該第三節點連接一外部裝置,於該步驟f中,該第一節點係經由該路由路徑及該第三節點與該外部裝置進行資料傳輸。
- 如請求項5所述之基於藍牙網路的端對端連線方法,其中該步驟f包括下列步驟:f21)該第一節點經由該路由路徑傳送資料至該第三節點;f22)該第三節點於偵測與該外部裝置間的連接中斷時,暫存資料;及f23)於偵測與該外部裝置間的連接恢復時,轉傳資料至該外部裝置。
- 如請求項5所述之基於藍牙網路的端對端連線方法,其中該第一節點係一感測器,該外部裝置係一雲端主機,該步驟f包括下列步驟:f31)該第一節點取得一感測資料;及f32)經由該路由路徑、該第三節點及網際網路傳送該感測資料至該外部裝置。
- 如請求項5所述之基於藍牙網路的端對端連線方法,其中該第一節點係一定位裝置,該外部裝置係一管控主機,該步驟f包括下列步驟:f41)該第一節點取得一定位資料;及f42)經由該路由路徑及該第三節點傳送該定位資料至該外部裝置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105102464A TWI584607B (zh) | 2016-01-27 | 2016-01-27 | 基於藍牙網路的端對端連線方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105102464A TWI584607B (zh) | 2016-01-27 | 2016-01-27 | 基於藍牙網路的端對端連線方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI584607B true TWI584607B (zh) | 2017-05-21 |
TW201728099A TW201728099A (zh) | 2017-08-01 |
Family
ID=59367523
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105102464A TWI584607B (zh) | 2016-01-27 | 2016-01-27 | 基於藍牙網路的端對端連線方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI584607B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1408159A (zh) * | 1999-12-06 | 2003-04-02 | 艾利森电话股份有限公司 | 作为对于路由发现的触发机制的广播 |
CN1659830A (zh) * | 2002-05-30 | 2005-08-24 | 摩托罗拉公司 | 用于嵌套移动网络中的路由优化的方法与设备 |
TW200943831A (en) * | 2008-04-03 | 2009-10-16 | Univ Nat Taiwan | Automatic-routing gateway device for wireless sensing network |
TWI462621B (zh) * | 2008-10-17 | 2014-11-21 | Microchip Tech Inc | 用於改良操作範圍利用無線節點之適應性頻道選擇 |
-
2016
- 2016-01-27 TW TW105102464A patent/TWI584607B/zh not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1408159A (zh) * | 1999-12-06 | 2003-04-02 | 艾利森电话股份有限公司 | 作为对于路由发现的触发机制的广播 |
CN1659830A (zh) * | 2002-05-30 | 2005-08-24 | 摩托罗拉公司 | 用于嵌套移动网络中的路由优化的方法与设备 |
TW200943831A (en) * | 2008-04-03 | 2009-10-16 | Univ Nat Taiwan | Automatic-routing gateway device for wireless sensing network |
TWI462621B (zh) * | 2008-10-17 | 2014-11-21 | Microchip Tech Inc | 用於改良操作範圍利用無線節點之適應性頻道選擇 |
Also Published As
Publication number | Publication date |
---|---|
TW201728099A (zh) | 2017-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10715634B2 (en) | System and method for creating virtual interfaces based on network characteristics | |
RU2682930C2 (ru) | Выбор маршрута в беспроводных сетях | |
US10292060B2 (en) | Autonomous, power-dictated message routing for multi-hop mesh network outage communications | |
US9379979B2 (en) | Method and apparatus for establishing a virtual interface for a set of mutual-listener devices | |
JP2004282270A (ja) | 無線アドホック通信システム、端末、その端末における処理方法並びにその方法を端末に実行させるためのプログラム | |
CN103561442A (zh) | 一种发布/订阅式系统中移动接收者数据传输方法 | |
WO2019119346A1 (zh) | 一种通信路径确定方法及网络设备 | |
CN104301912A (zh) | 一种路径通断的检测方法和装置 | |
US10609621B2 (en) | Directed acyclic graph optimization for future time instance requested by a child network device | |
US9504020B2 (en) | Method for exchanging information between communication terminals, and communication terminal | |
US11197224B1 (en) | Systems and methods for routing messages through wireless networks | |
JP2010050909A (ja) | センサノード及びセンサノードの起動用idの自律的設定方法 | |
WO2019237263A1 (zh) | 低功耗蓝牙网络维护方法、电子设备、蓝牙网络和介质 | |
JP7142107B2 (ja) | 親/子関係を保持しながらのpan切り換え | |
TWI584607B (zh) | 基於藍牙網路的端對端連線方法 | |
JP2013005413A (ja) | 通信システム、無線機器、及び、無線機器のプログラム | |
WO2017024952A1 (zh) | 设备到设备的无线网格网络的路由寻找方法和装置 | |
JP5935571B2 (ja) | 帯域幅制御装置、帯域幅制御方法、および、帯域幅制御プログラム | |
JP4219366B2 (ja) | マルチポイントリンク対話環境を構築する方法とシステム | |
KR101751891B1 (ko) | 오픈플로우 무선 메쉬 네트워크 환경에서의 오픈플로우 컨트롤러, 오픈플로우 컨트롤러의 토폴로지 디스커버리 방법, 오픈플로우 메쉬 장치 및 오픈플로우 메쉬 장치의 피어 탐지 방법 | |
WO2015015562A1 (ja) | 無線式データ収集システムおよび無線式データ収集方法 | |
JP6274913B2 (ja) | メッシュネットワークシステム、中継装置、メッシュネットワークの制御方法、及びプログラム | |
JP6207770B1 (ja) | 通信システム、通信機器および通信先の切換え方法 | |
JP2004129164A (ja) | 移動端末、転送装置、通信システム、通信方法及びプログラム | |
US10959176B1 (en) | Systems and methods for stunning network nodes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |