朱凌峰++王曉旭++趙健++馬迪揚(yáng)++張宏
摘要:泛在網(wǎng)絡(luò)是廣泛存在的網(wǎng)絡(luò),它以無所不在、無所不包、無所不能為基本特征,實(shí)現(xiàn)在任何時(shí)間,任何人以及人和物之間都能順暢地通信。末端物流是指送達(dá)給消費(fèi)者的物流,是以滿足配送環(huán)節(jié)的終端(客戶)為直接目的的物流活動(dòng)。本文基于泛在網(wǎng)絡(luò)環(huán)境,針對末端物流場景,有效地為用戶節(jié)點(diǎn)提供高效、自治且可靠的泛在接入與信息配送,給出了一種基于泛在網(wǎng)絡(luò)環(huán)境的泛在接入與信息配送系統(tǒng)模型。該模型在現(xiàn)有基于內(nèi)容的泛在接入與信息配送系統(tǒng)的基礎(chǔ)上,設(shè)計(jì)了新的模塊結(jié)構(gòu),并引入了基于空間、時(shí)間和其他約束條件的事件定義,描述泛在網(wǎng)絡(luò)泛在接入與信息配送系統(tǒng)中發(fā)送方及訂閱方的工作流程。
關(guān)鍵詞:移動(dòng)終端;泛在接入;信息配送
中圖分類號:TP391.41
文獻(xiàn)標(biāo)識碼:A
DOI: 10.3969/j.issn.1003-6970.2015.08.001
0 引言
國家經(jīng)濟(jì)在不斷的快速發(fā)展,新興的商業(yè)模式如在線訂餐等對貨品的傳遞也提出了新的要求,傳統(tǒng)的物流配送方式已不能滿足市場需求。與大地理跨度的物流相比,末端物流的地點(diǎn)數(shù)量龐大、線路情況復(fù)雜、配送時(shí)間受限。傳統(tǒng)的配送方式多為企業(yè)派專人上門配送或通知用戶到指定地點(diǎn)取貨,但受限于人力成本配送員數(shù)量遠(yuǎn)趕不上需求,用戶自取又使得用戶體驗(yàn)變差。這阻礙了社會經(jīng)濟(jì)的發(fā)展和人民對舒適安逸生活的追求。面對這些問題,各界在嘗試各種解決方案:增加配送人員、使用無人機(jī)配送、在便利店設(shè)立自提點(diǎn)……但是這些方案不可避免地會增加可觀的配送成本,且不夠靈活,無法同時(shí)滿足用戶和企業(yè)的需求,更無法解決末端物流的配送難題。尤其在現(xiàn)有的物流系統(tǒng)中,所有的貨品都需要經(jīng)過層層的中轉(zhuǎn)站,即便是同城甚至同街區(qū)的短距離配送,也需要一天甚至更多的時(shí)間,這已遠(yuǎn)遠(yuǎn)跟不上時(shí)代的發(fā)展的速度。而與此同時(shí),大量的行人、私家車輛在各條道路上往返,其運(yùn)力并未得到充分利用。因此如果采用一定的路徑規(guī)劃方案,實(shí)現(xiàn)對這些空閑運(yùn)力的有效利用,則可以在很大程度上解決末端物流的配送難題。而與傳統(tǒng)的末端物流系統(tǒng)相比,基于行人的物流配送系統(tǒng)具有成本低、覆蓋廣、響應(yīng)迅速、配送快捷的特點(diǎn),可以降低企業(yè)成本,提高顧客滿意度,具有十分重要的意義。
泛在網(wǎng)絡(luò)具有多終端性、異構(gòu)性、松耦合性等特征,而泛在接人與信息配送系統(tǒng)可以在時(shí)間、空間以及同步上完全解耦。因此完全可以將泛在接人與信息配送系統(tǒng)使用到末端物流的泛在網(wǎng)絡(luò)環(huán)境中。由于不同用戶對相同節(jié)點(diǎn)會有不同的感興趣的訂閱信息,系統(tǒng)需滿足對這些興趣節(jié)點(diǎn)的請求具有足夠的可表達(dá)性,而基于內(nèi)容的泛在接人與信息配送系統(tǒng)恰恰可以滿足這些特征。因此,本文提出的泛在網(wǎng)絡(luò)環(huán)境的泛在接人與信息配送系統(tǒng)采用了基于內(nèi)容的泛在接人與信息配送系統(tǒng)模型,并在該模型的基礎(chǔ)上進(jìn)行了擴(kuò)展。
1 泛在接入與信息配送模型
本文設(shè)計(jì)的基于內(nèi)容的泛在接人與信息配送系統(tǒng)模型主要實(shí)現(xiàn)形式有兩種:基于Map的系統(tǒng)模型和基于XML的系統(tǒng)模型。
(1)基于Map的泛在接人與信息配送系統(tǒng)模型
基于Map的泛在接人與信息配送系統(tǒng)中,事件的內(nèi)容是
若規(guī)定每個(gè)事件Map對應(yīng)唯一的attribute屬性,且各個(gè)訂閱條件均將該條件指定為各自對應(yīng)屬性的value集,這稱之為基于主題的泛在接人與信息配送系統(tǒng),該屬性attribute的每一個(gè)取值即為一個(gè)theme主題??梢哉J(rèn)為,基于主題的泛在接人與信息配送系統(tǒng)是基于Map的泛在接人與信息配送系統(tǒng)的一種特例。
泛在接人與信息配送系統(tǒng)是一種特殊的基于Map的泛在接人與信息配送系統(tǒng),它定義為每個(gè)事件Map中均只對應(yīng)一個(gè)attribute,且系統(tǒng)的訂閱條件均定義了attribute的值。
(2)基于XML的泛在接人與信息配送系統(tǒng)模型
在基于XML的泛在接人與信息配送系統(tǒng)中,主要將事件定義為一個(gè)XML文檔。此外,XML泛在接人與信息配送系統(tǒng)在Map的基礎(chǔ)上,為事件增加了一個(gè)數(shù)據(jù)區(qū),用于存放系統(tǒng)不能理解的相關(guān)數(shù)據(jù),它比基于Map的泛在接人與信息配送系統(tǒng)具有更為優(yōu)越的表現(xiàn)性能。
基于XML的泛在接人與信息配送系統(tǒng),可以表現(xiàn)為如下述圖1表示的形式,亦可表現(xiàn)為其他規(guī)定的XML表示形式。
XML具有較強(qiáng)的表達(dá)能力,但不同的用戶可能存有不同的XML Schema文檔。若系統(tǒng)訂閱者并不知道發(fā)布事件XML文檔所遵從的XML文檔規(guī)范,將不能正確的匹配事件。因此,為確保統(tǒng)一,基于XML的泛在接人與信息配送系統(tǒng)中,所有的事件和訂閱都必須遵守系統(tǒng)預(yù)先制定的XML Schema文檔。
若規(guī)定系統(tǒng)各事件的XML文檔只有一個(gè)元素節(jié)點(diǎn),且該節(jié)點(diǎn)具有若干的屬性,則該事件將演變?yōu)橐粋€(gè)基于Map的泛在接人與信息配送系統(tǒng)。因此,我們可以認(rèn)為基于Map的泛在接人與信息配送系統(tǒng)是一種特殊的基于XML的泛在接人與信息配送系統(tǒng)。
2 泛在接入與信息配送系統(tǒng)結(jié)構(gòu)
移動(dòng)節(jié)點(diǎn)則指那些隨著時(shí)間或其他情況的變化,改變其位置的相關(guān)人和設(shè)備等,如iPad、參與系統(tǒng)的人等。由于人會隨時(shí)走動(dòng),具有較大的移動(dòng)性,可將泛在網(wǎng)絡(luò)環(huán)境的重要參與者一一人,作為一個(gè)移動(dòng)節(jié)點(diǎn)來處理?;诖?,可以將含有平臺服務(wù)器、發(fā)布者(固定節(jié)點(diǎn)及移動(dòng)節(jié)點(diǎn))、移動(dòng)代理和訂閱者的泛在網(wǎng)絡(luò)環(huán)境的泛在接人與信息配送系統(tǒng)的簡圖表現(xiàn)為如圖2所示。
泛在網(wǎng)絡(luò)泛在接人與信息配送結(jié)構(gòu)中,平臺服務(wù)器(Platform Server)負(fù)責(zé)泛在接人與信息配送系統(tǒng)中Internet網(wǎng)絡(luò)節(jié)點(diǎn)和移動(dòng)代理間的消息傳遞(如訂閱信息和發(fā)布信息);移動(dòng)代理(Mobile Broker)則負(fù)責(zé)平臺服務(wù)器和與其相連的其他非Internet網(wǎng)絡(luò)的泛在節(jié)點(diǎn)(如用戶)進(jìn)行消息傳遞。通常情況下,可以采用移動(dòng)智能終端作為移動(dòng)代理,收集不同的人或相關(guān)設(shè)備的數(shù)據(jù)]。一方面,移動(dòng)智能終端可以通過短信息、藍(lán)牙或IEEE 802.15.4同其他非Internet網(wǎng)絡(luò)的泛在節(jié)點(diǎn)進(jìn)行連接;另一方面,它采用3G或Wi-Fi網(wǎng)絡(luò)連接上Internet網(wǎng)絡(luò)節(jié)點(diǎn)。
3 泛在接入與信息配送系統(tǒng)平臺設(shè)計(jì)
在泛在接人與信息配送系統(tǒng)中,系統(tǒng)訂閱者是指訂閱興趣節(jié)點(diǎn)信息的Internet網(wǎng)絡(luò)用戶節(jié)點(diǎn)或移動(dòng)智能終端用戶;發(fā)布者則是指發(fā)布訂閱數(shù)據(jù)信息的固定節(jié)點(diǎn)或移動(dòng)節(jié)點(diǎn)等泛在節(jié)點(diǎn)。為了實(shí)現(xiàn)與基于內(nèi)容的泛在接人與信息配送系統(tǒng)的統(tǒng)一,泛在網(wǎng)絡(luò)環(huán)境的泛在接人與信息配送系統(tǒng)中,將連接Internet網(wǎng)絡(luò)和移動(dòng)代理的平臺服務(wù)器稱為事件代理;移動(dòng)代理則是在基于內(nèi)容的泛在接人與信息配送系統(tǒng)上的延伸代理,負(fù)責(zé)泛在節(jié)點(diǎn)(固定節(jié)點(diǎn)和移動(dòng)節(jié)點(diǎn))與事件代理之間進(jìn)行訂閱信息的交互,事件代理和移動(dòng)代理統(tǒng)稱為代理節(jié)點(diǎn)。泛在網(wǎng)絡(luò)環(huán)境的泛在接人與信息配送系統(tǒng)框架如圖3所示,包括用戶接口模塊、消息注冊中心模塊、消息訂閱模塊3個(gè)部分。
用戶接口模塊是連接泛在網(wǎng)絡(luò)服務(wù)器和應(yīng)用客戶端的重要模塊。模塊中,用戶通過用戶接口模塊訪問泛在網(wǎng)絡(luò)提供的服務(wù),還可以訪問其它用戶終端的服務(wù)。用戶接口模塊提供了若干個(gè)用戶終端節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)都能為用戶節(jié)點(diǎn)或服務(wù)節(jié)點(diǎn)提供功能。
泛在網(wǎng)絡(luò)中,用戶和用戶之間、用戶和泛在網(wǎng)絡(luò)之間通信有大量數(shù)據(jù),這些數(shù)據(jù)中有很多消息存在類似或相同構(gòu)成,所以需要對這些消息進(jìn)行注冊。消息注冊中心由消息格式處理和注冊數(shù)據(jù)庫中心兩部分組成。
消息訂閱模塊負(fù)責(zé)為消息請求者提供查詢依據(jù),包含消息訂閱和消息訂閱庫兩個(gè)部分。
3.1 用戶接口模塊
用戶接口模塊中,用戶通過接口向泛在網(wǎng)絡(luò)發(fā)布和訂閱服務(wù)。當(dāng)系統(tǒng)中消息的發(fā)送方發(fā)布信息時(shí),發(fā)布方創(chuàng)建一個(gè)發(fā)布者對象,發(fā)送到移動(dòng)代理中。同理,當(dāng)服務(wù)訂閱者要訂閱事件時(shí),一個(gè)服務(wù)訂閱方可以訂閱多個(gè)訂閱消息。
如圖4所示,發(fā)布方用戶建立一個(gè)發(fā)布消息后,消息傳送至移動(dòng)代理。移動(dòng)代理接收到發(fā)布事件后,每隔一段時(shí)間判斷該代理節(jié)點(diǎn)中是否存在該發(fā)布事件的訂閱請求,若存在,則通過移動(dòng)代理將發(fā)布信息轉(zhuǎn)發(fā)給相應(yīng)的用戶;若不存在,則將該發(fā)布信息暫存在移動(dòng)代理中,若超過預(yù)定的暫存時(shí)間,則將該發(fā)布事件刪除。
訂閱者需要獲得發(fā)布者提供的事件時(shí),訂閱方向事件代理發(fā)布一個(gè)訂閱請求,事件代理接收到訂閱者發(fā)布的訂閱請求后,將該訂閱信息存儲進(jìn)本地內(nèi)存中,并監(jiān)測移動(dòng)代理發(fā)送過來的節(jié)點(diǎn)信息。若發(fā)現(xiàn)移動(dòng)發(fā)送過來的節(jié)點(diǎn)信息與事件代理本地已存儲的移動(dòng)代理信息相同,事件代理將存儲訂閱副本,并將訂閱方的訂閱請求轉(zhuǎn)發(fā)給移動(dòng)代理。
3.2 消息注冊中心模塊
泛在網(wǎng)絡(luò)中的用戶首先需要加入成為泛在網(wǎng)絡(luò)節(jié)點(diǎn)后,才能參與到泛在網(wǎng)絡(luò)環(huán)境的泛在接人與信息配送系統(tǒng)中。由于泛在網(wǎng)絡(luò)充斥了大量的用戶終端,這些終端之間存在著大量的服務(wù)信息,且類型眾多,用戶難以分辨這些類似或相同的服務(wù)。因此,需要采取相關(guān)技術(shù)對泛在網(wǎng)絡(luò)環(huán)境的服務(wù)事件進(jìn)行劃分。為區(qū)分這些信息,需要對消息進(jìn)行注冊。
在節(jié)點(diǎn)加入系統(tǒng)時(shí),用戶向事件代理發(fā)送注冊信息(Register-Message,RMsg),事件代理一旦接收到用戶發(fā)送過來的注冊信息,將向該用戶反饋一個(gè)唯一的訂閱ID號(SubID)。同時(shí),事件代理為用戶建立一個(gè)空白的XML文件,該XML文件存儲泛在節(jié)點(diǎn)的SubID和IP地址,維護(hù)事件代理和Internet網(wǎng)絡(luò)用戶的連接。之后,訂閱節(jié)點(diǎn)向事件代理發(fā)送“確認(rèn)連接”信息,便可與事件代理建立連接。當(dāng)事件代理收到“確認(rèn)連接”信息后,便將訂閱節(jié)點(diǎn)的SubID和IP地址存儲到該訂閱節(jié)點(diǎn)對應(yīng)的XML文件中。
同理,泛在網(wǎng)絡(luò)環(huán)境中的移動(dòng)代理需要通過向事件代理發(fā)送注冊信息,加入泛在接人與信息配送系統(tǒng)中。事件代理接收到移動(dòng)代理發(fā)送過來的注冊信息,將向移動(dòng)代理反饋一個(gè)臨時(shí)ID(Temporary ID,TID),并在內(nèi)存中為注冊的移動(dòng)代理創(chuàng)建一個(gè)XML文件。與泛在節(jié)點(diǎn)存儲的XML文件類似,每個(gè)XML文件中存儲了泛在網(wǎng)絡(luò)移動(dòng)代理的當(dāng)前位置信息。
用戶或移動(dòng)代理需要通過向系統(tǒng)中的事件代理發(fā)送訂閱請求之后,才能發(fā)送訂閱請求或獲得發(fā)布者發(fā)布的事件信息。如圖6所示,每個(gè)事件可以描述為一個(gè)三元組 <位置,時(shí)間,約束>。其中,事件的位置信息用loc={point,radius},point和radius分別表示訂閱請求所處的點(diǎn)和半徑;進(jìn)一步地,可以通過訂閱者訂閱請求所處的經(jīng)緯度來確定該訂閱事件的point點(diǎn)位置信息,時(shí)間間隔的信息則可用訂閱請求的開始時(shí)間(Begin-Time)和結(jié)束時(shí)間(End-Time)來表示。約束部分則存儲訂閱請求的其他約束條件。
泛在網(wǎng)絡(luò)環(huán)境的泛在接人與信息配送系統(tǒng)中,移動(dòng)代理節(jié)點(diǎn)能夠在其通信的范圍內(nèi)轉(zhuǎn)發(fā)訂閱信息給與其相連的泛在節(jié)點(diǎn)。用戶請求訂閱信息時(shí),事件代理將訂閱信息將請求的訂閱通知轉(zhuǎn)發(fā)給移動(dòng)代理。事件代理若發(fā)送訂閱信息給移動(dòng)代理,需要知道泛在接人與信息配送系統(tǒng)中的移動(dòng)代理所處的位置。因此,當(dāng)移動(dòng)代理的位置發(fā)生改變時(shí),需要及時(shí)將位置變化信息發(fā)送給事件代理。規(guī)定移動(dòng)代理的參數(shù)△Cupdate表示位置更新的時(shí)間間隔;發(fā)送的節(jié)點(diǎn)位置更新信息表示為LUpdate[TID,Loc],其中TID為移動(dòng)代理的ID號,Loc為移動(dòng)代理當(dāng)前的經(jīng)緯度信息,位置信息通過移動(dòng)電話中自帶的GPS定期取樣獲得。
3.3 消息訂閱模塊
泛在網(wǎng)絡(luò)環(huán)境的泛在接人與信息配送系統(tǒng)具體流程如圖7所示。
在泛在網(wǎng)絡(luò)泛在接人與信息配送模型中,消息訂閱模塊對發(fā)布者和訂閱者之間的訂閱消息匯總,包含消息訂閱存儲和消息訂閱庫在內(nèi)的一系列信息集合。消息訂閱模塊中,用戶首先向事件代理或移動(dòng)代理發(fā)出事件查詢申請,接著消息訂閱存儲模塊根據(jù)用戶的請求消息(req)查詢消息訂閱,最后將服務(wù)提供信息推送回用戶。通過這種方式,在訂閱者和發(fā)布者之間重新建立了一條鏈路,不必從頭開始索取服務(wù)資源。
4 結(jié)論
移動(dòng)終端的泛在接人與信息配送包括基于Map的泛在接人與信息配送系統(tǒng)和基于XML的泛在接人與信息配送系統(tǒng),主要包括發(fā)布者、事件代理、移動(dòng)代理和訂閱者四個(gè)部分。本文設(shè)計(jì)的模型框架包括用戶接口模塊、消息注冊中心模塊、消息訂閱模塊3個(gè)部分,能夠滿足末端物流過程中的加入、更新和事件的發(fā)布、訂閱等功能。