劉 軍,孫桂蘭
(青島工學院,山東 青島 266300)
計算機和網絡技術的興起推動社會發展進入信息時代,對社會生產和生活的各個領域造成了強烈的沖擊。農業作為傳統行業也受到了信息化的深刻影響,原有生產和管理模式開始發生變革。各種高新技術的普及推廣為農業管理系統的建立創造了條件,增強了現代農業對新環境的適應能力[1]。農業是一個涉及多個方面的產業,以自然條件作為基礎,由人為因素進行控制。在自然條件中,土壤、作物和氣候因子之間相互作用,而在人為因素中,人力資源和機械又對農業生產效益起著決定性的作用。因此,將農業生產的各個要素連接在一起,建立完整的農業管理系統具有重要的現實意義。
近年來,信息科學迅猛發展,各種新型技術層出不窮,為農業管理系統的建立提供了支撐。黎冬媛等針對農業信息服務在實施和應用過程中的問題,基于ORM技術建立農業信息管理系統,有效提升了農業生產和商貿交易的信息化水平[2]。丁克奎等基于“3S”技術建立了包括農情采集終端、嵌入式軟件設計和精準農業服務的精準農業管理系統,可以保證農業的可持續發展[3]。梁斌等和張芳等分別基于WEB技術設計和開發了農業信息的管理系統,以滿足形勢變化對農業信息管理的要求[4-5]。此外,還有關于ZigBee、本體知識和物聯網等在農業管理系統中應用的報導,進一步豐富了農業管理系統的類型[6-8]。
現代農業的規模不斷擴大,信息內容也日益復雜,要處理的數據量迅速增加,傳統的農業管理系統已無法滿足實際需求。在這種情況下,農業管理系統的結構需要進行根本性的改良,才能適應新的功能要求。傳統的農業管理系統結構為集中式的網絡體系,無法在任何時間地點都能接入網絡并進行數據和服務的交換。與之相比,分布式的網絡管理方式采用對等式的體系架構,包含的多個管理者既有各自負責的區域,相互之間又能夠隨時通信,這種網絡管理模式具有更高的管理效率和性能,以及更強的抗攻擊性和可靠性[9]。
因此,人們提出了對等網(P2P)的概念,即系統是分布式的,沒有任何控制核心,其中的各個節點在功能上是等同的,沒有主從之分[10]。在P2P網絡系統中,所有的工作站和終端都是對等的實體,既可以對外提供服務,又能接受其它實體的服務請求[11]。P2P網絡具有完全分散的形式架構,每個實體同時具有客戶機和服務器的功能,相互之間交流互通,為整個網絡提供了豐富的信息資源[12]。這些特性賦予了P2P網絡在大規模數據下良好的可擴展性和跨域協作能力,黃桂奮等對此提出了基于P2P技術的跨域協作網絡管理系統,應用于新一代的教育科研主干網,取得了良好的運行效果[13]。
農業生產具有地域較廣、物資和人員分散的特點,集中式的管理體系導致信息的傳播速度慢,且成本較高,因此適合采用基于P2P技術的分布式管理體系[14]。目前,基于P2P技術的管理系統在農業中主要應用于農業咨詢體系和智能化的農業信息處理系統上,已經開始發揮出積極的作用。徐東升等通過對數字農業和網絡應用現狀的分析,提出了基于P2P技術的農業信息管理系統邏輯模型,為拓展P2P技術的應用范圍奠定了基礎[15]。但是,受各種因素的影響,目前P2P技術在農業領域的普及還不夠充分,還需要與農業生產的實際特點結合,加強技術功能開發,逐步覆蓋農業技術在線咨詢、農業遠程教育及農業環境監測等方面,推動農業的全面信息化。
為了加深P2P技術與農業的融合,本文設計了基于P2P網絡的農業管理系統,并對管理系統的類型、特點和總體結構進行了介紹。P2P網絡系統管理內容包括農業信息、農業專家和農業生產,涵蓋農業生產的關鍵要素,以期為農業的全面信息化提供技術支撐。
P2P網絡主要有集中目錄式、純分布式和混合式等類型,不同種類的P2P網絡具有各自的優缺點。集中目錄式P2P網絡以Napster軟件為代表,通過改變傳統的客戶端/服務器模式來弱化中央目錄服務器的作用。P2P網絡中的每個節點都是對等的,集中目錄模式充分發揮了各個節點的存儲能力。因此,這種模型具有較快的搜索速度和全面的搜索范圍,信息更新及時,且對寬帶的占用率不高;但是,受模式結構的限制,網絡缺乏伸縮性和容錯性中央服務器的問題會影響整個網絡的正常運行。
純分布式網絡以Gnutella模型為代表,這種模型賦予了網絡更強的伸縮性和容錯性,同時帶來信息量過大的問題,加重了網絡負擔。另外,這種模型無法實時獲得網絡的拓撲結構和對等點的信息,需要逐個核對確認。混合式模型吸收了前面兩者的特點,以高性能的節點作為中心節點,以此為基礎存儲其它子節點的信息,各種算法在中心節點之間轉發,并將查詢請求發送給子節點。這種模型查詢信息傳播所涉及的節點數較少,能為P2P網絡的擴展提供支持,單個節點故障對這個網絡的影響較小。混合式模型的缺點在于結構復雜,所需的設備多,實現難度較大。本文根據農業信息量大及結構復雜的特點,選擇混合式的P2P網絡構建農業管理系統。
農業管理系統基于P2P網絡構建,采用混合式的模型,包括網絡管理模塊、通信管理模塊、緩存管理模塊和下載管理模塊,如圖1所示。

圖1 農業管理系統的組成部分Fig.1 Component parts of agriculture management system
網絡管理模塊基于SNMP協議實現網絡管理功能,通過動態輪詢的機制按照設定的時間間隔采集來自不同版本的信息,并經過分析過濾后分類歸納到相應的下載管理模塊中。網絡管理模塊還負責節點加入申請的處理,即節點將網絡加入請求以數據包的形式發送給網絡管理模塊,模塊接收并解析數據包中的內容,完成節點IP地址和端口號等信息的審核后返回一個在線節點的信息,與申請的節點之間建立連接使其加入網絡。
通信管理模塊是網絡設備之間連接的紐帶,當工作站、終端設備等動態進入網絡時,通信管理模塊自動識別這些設備及其功能,并將加入申請發送給系統,完成對工作站、終端設備的連接和定位。通信管理模塊還負責農業管理網絡的日常維護,實時處理節點的設立和退出,保障數據信息的安全傳輸。通信管理模塊的第3個功能是將SNMP協議格式的信息轉換為P2P格式。網絡查詢的結果一般為MIB格式,通信管理模塊將其轉換為P2P網絡可以識別的XML格式,從而解決各個節點之間數據共享的問題。
緩存管理模塊是實現基于P2P網絡數據緩存功能的設備,用于及時處理客戶的訪問請求。這個模塊可以暫時保存訪問頻率較高的數據信息,對相同數據的訪問無需每次都從頭開始,減少了訪問的計算量和時間。緩存管理模塊具有相應的緩存策略,可以在緩存空間不足的情況下用最新的內容自動替代最早的內容,從而有效地提高P2P網絡的數據共享存取速度,發揮混合式模型的性能優勢。
下載管理模塊為滿足多個節點同時訪問資源的要求,具備多線程下載的功能,還能校驗數據以保證下載文件的完整性。該模塊所管理的節點處于4類不同的進程中,包括連接進程、協調進程、下載進程和上載進程。連接進程用于建立節點與資源庫之間的鏈接,協調進程負責維護特定連接對象之間的握手信息和查詢狀態。當有一個節點發出下載或上載請求時,便會啟動相應的下載或上傳連接,并對連接的狀態進行實時監控。下載進程是下載管理模塊中最主要的進程,由5種狀態組成,相互之間的關聯如圖2所示。

圖2 下載進程的狀態關聯Fig.2 Status association of download process
農業的地域分散,利用P2P網絡構建信息管理系統有利于充分整合各種類型的農業信息。農業信息的管理涉及農業生產信息、農業科技信息及農業數據庫等,將它們按照數字信息化的要求形成統一格式的信息,支撐農業信息管理系統功能的實現。具體的信息內容包括農作物數據庫、農業環境信息、農業經濟信息等,農業信息管理系統可以在此基礎上利用各種數學模型對農業問題做出決策,或者模擬農業生產的過程,優化農業物資在時間和空間上分布。
P2P網絡的農業專家管理系統吸收具有扎實理論基礎和豐富實踐經驗的農業專家加入,授予他們唯一的識別碼和在咨詢中較高的可信度。在P2P網絡中,農業專家和咨詢用戶組成了系統的各個節點,不同節點之間的信任問題是系統發揮作用的關鍵。系統采用對等誠信模型,以信譽度作為誠信的衡量指標。例如,某個節點的文件被其它節點下載,若文件的真實性較高,則信譽度就被對方提升一次,否則被降低一次。此外,用戶的節點還可以向專家的節點提出輔助決策申請,由專家節點根據自身經驗和下載管理模塊中的數據庫做出決策。以農作物的種植為例,在用戶提出申請后,專家節點根據作物、地域和氣候等信息做出是否適宜種植的決策,流程如圖3所示。

圖3 農業專家管理系統的決策流程Fig.3 Decision process of agricultural expert management system
為了加深P2P技術與農業的融合,基于P2P網絡設計了農業管理系統。P2P網絡3種不同的類型,都有各自的優缺點,根據農業信息量大及結構復雜的特點選擇混合式的P2P網絡構建農業管理系統。農業管理系統的組成部分包括網絡管理模塊、通信管理模塊、緩存管理模塊和下載管理模塊,能夠用于對農業信息和農業專家的管理,可為農業的全面信息化提供技術支撐。