新四季網

一種適應私有雲環境的通信平臺和通信方法

2023-04-28 08:53:51 1

專利名稱:一種適應私有雲環境的通信平臺和通信方法
技術領域:
本發明屬於通信技術領域,尤其涉及適應於私有雲環境的通信技術領域。
背景技術:
雲計算是一種將計算機軟硬體平臺作為一個資源,並將其計算能力等同於電廠提供的電力,可以按照佔用資源的數量和時間來收費的一種新的計算模式。這種彈性分配計算資源,不需要為大規模計算支付額外費用的方式,是IT界從所未有的。雲計算從網格計算和分布式並行計算發展演化而來,是一種利用大規模低成本運算單元通過網絡互連而組成的計算系統,雲計算系統具有很強的伸縮性和可定製性,平臺向上層的用戶提供各種計算服務。雲計算系統使用大量廉價的伺服器集群為系統提供硬體基礎設施,採用應用程式與底層服務協作開發,最大限度地利用資源,通過多個廉價的伺服器之間的冗餘,使雲計算具有高可用性、低成本、通用性強等特點,從而達到分布式計算的兩個重要目標可擴展性和高可用性。雲計算按雲服務的對象不同分為公有雲、私有雲。公有雲是面向外部用戶需求,通過開放網絡提供雲計算服務,如IDC,GoogleApp等。私有雲是指企業或者組織內部按照雲計算架構搭建一個內部使用的雲計算平臺,並根據企業內部需求提供雲計算服務。如在地震資料處理行業中,基於現有的大規模集群系統搭建一個私有雲計算平臺可以極大的提高地震資料處理速度。私有雲平臺的搭建需要著重考慮組件之間數據與信息的交換,組件之間的通信狀況嚴重影響系統提供的雲計算能力。進程通信(IPC)技術是指通過專門的通信機制實現進程間交換大量信息的通信技術。對集群計算和雲計算而言,進程通信是系統的核心組件,進程通信為系統上層的各計算組件協調工作,為完成海量計算任務提供了可能。現有私有雲系統的進程通信仍然採用複雜的分布式進程通信方式,如 CORBA(Common Object Request Broker Architecture) CORBA全稱是公共對象請求代理體系結構,是由OMG[7] (Ojbect Management Group)定義的通信標準,其使用了獨立於軟硬體平臺的IDL[8] (interface definition language)語言層對數據進行包裹,目標是實現不同平臺不同語言的程序之間相互交互。CORBA在通信域內有一個伺服器節點負責處理客戶機節點的對象請求,伺服器節點完成客戶機節點通信信息的轉發與路由工作,CORBA的體系結構如圖1所示CORBA通過在對象(Object)之間建立客戶/伺服器(C/幻模型,應用進程通過對象引用和產生樁代碼產生對象請求,然後通過對象請求代理將請求送達至伺服器,伺服器通過對象執行和產生框架代碼實現對象處理,對象請求代理對應用進程請求進行反饋。 CORBA通過ORB (Object Request Broker)實現服務端的信息對客戶端透明,並將客戶提出的所有需求送達至目的地。在集群環境和私有雲環境下,隨著系統的組件日益複雜,CORBA通信技術存在一定的缺陷。首先,CORBA的通信方式是同步的,客戶向伺服器發送請求後,阻塞等待伺服器處理,並在處理結果返回後才能進行下一步動作;其次,客戶和伺服器通信的對象是緊密耦合的,其生命周期很難把握,提高了系統編程的複雜性;最後,面對日益複雜的通信系統,點對點通信已經不能滿足通信需求,如在地震資料處理行業的集群系統中,由於系統組件之間通信量大且系統計算任務相對單一,現有的點對點通信就很難滿足通信需求。

發明內容
本發明的目的是為克服適應實際應用的需要,以方便將現有集群系統遷移到私有雲環境中,解決私有雲計算基礎服務平臺組件之間的通信問題,提出了一種適應私有雲環境的通信平臺和通信方法。本發明的技術方案是一種適應私有雲環境下的通信平臺,所述通信平臺至少包括兩個計算節點和一個伺服器節點,所述計算節點和伺服器節點通過網絡互相連接成分布式集群系統,每個計算節點表示系統中的一臺主機,主機中包含了許多的應用進程,其特徵在於,每個節點上掛載一個通信代理,所述節點內所有應用進程通過通信平臺提供的標準 API接口與本地通信代理連接,以實現應用進程間的點對點通信,並且通過在伺服器節點掛載消息伺服器應用進程,以實現應用進程間的一對多通信。本發明的另一技術方案是一種適應私有雲環境下的通信方法,其特徵在於,包括如下步驟步驟1.應用進程通過API接口發送數據到網絡;步驟2.通信代理獲取網絡數據;步驟3.通信代理處理消息數據;步驟4.消息伺服器獲取並處理髮布/訂閱消息;步驟5.應用進程通過API接口從網絡接收消息。本發明的有益效果是克服現有的私有雲系統通信方式只有同步通信方式,通信對象只局限於單節點,且通信域內採用傳統的客戶/伺服器模式使得伺服器完成所有應用進程間通信信息的轉發和路由工作,在通信量巨大的情況下伺服器節點開銷巨大等缺點, 提出了一種適應私有雲系統的通信平臺和通信方法。該通信平臺和通信方法採用基於消息的通信模型,可方便實現系統應用進程之間的同步和異步通信模式,完善通信需求;與傳統 C/S模式不同,本平臺的消息伺服器完成發布/訂閱通信,節點上的通信代理不經過消息伺服器完成點對點接通信,此設計模式可在通信量巨大的情況下,降低伺服器節點的開銷;通信平臺為系統所有進程解決進程間通信問題,系統應用進程開發人員不再編寫底層通信代理,降低了私有雲系統其他組件的開發難度。其優點具體體現在(1)本發明的通信平臺和通信方法採用基於消息的通信模型,方便地實現了同步與異步通信方式;(2)本發明的通信平臺和通信方法能有效實現系統各組件之間的解耦合性,並且屏蔽底層通信細節為系統上層應用進程提供統一的透明通信服務,軟體開發人員不需為每個應用進程單獨編寫底層通信代碼,大大降低系統軟體開發難度;(2)本發明的通信平臺和通信方法與COBRA的客戶/伺服器設計模式相比,通信平臺採用通信代理與消息伺服器相結合的架構設計方式,應用進程之間信息的轉發和路由不再只依靠伺服器節點,使系統具有通信數據吞吐量高,通信效率高,消息伺服器和通信代理性能消耗少等特點。


圖1是現有技術中的CORBA體系結構圖。圖2是本發明通信平臺的全局結構示意圖。圖3是本發明通信方法的全局流程示意圖。圖4是本發明通信方法步驟「應用進程通過API接口發送數據到網絡」的具體流程圖。圖5是本發明通信方法步驟「通信代理獲取網絡數據」的具體流程圖。圖6是本發明通信方法步驟「通信代理處理消息數據」的具體流程圖。圖7是本發明通信方法步驟「消息伺服器獲取並處理髮布/訂閱消息」的具體流程圖。
具體實施例方式下面結合附圖和具體實施例對本發明的技術方案做詳細的說明。本發明提出了一種適應私有雲環境下的通信平臺,如圖2所示,通信平臺至少包括兩個計算節點(本實施例中為兩個)和一個伺服器節點(本實施例中為一個),計算節點和伺服器節點(以下統稱節點)通過網絡互相連接成分布式集群系統。每個計算節點表示系統中的一臺主機,主機中包含了許多的應用進程。通信平臺特徵在於每個節點上掛載一個通信代理,節點內所有應用進程通過通信平臺提供的標準API (Application Process Interface)接口與本地通信代理連接,以實現應用進程間的點對點通信。通過在伺服器節點掛載消息伺服器應用進程,可實現應用進程間的一對多通信。API接口是通信平臺向應用進程提供透明通信服務的一系列API函數。通信平臺為維護應用進程信息提供了進程註冊和取消註冊的API函數;針對點對點和發布/訂閱二種通信模型,通信平臺提供了同步和異步發送接收API函數;根據通信數據類型是消息還是文件提供了消息與文件傳輸API函數。簡單介紹通信平臺提供的二種通信方式,一、點對點通信,消息轉發不通過消息伺服器節點,由通信代理直接轉發完成。由於應用進程可能在同一計算節點上,也可能不在同一計算節點上。點對點通信分為二種類型1.節點內應用進程之間的通信,2.節點間應用進程之間的通信。對於節點內或節點間進程間的通信,通信代理不加區分一律使用socket 進行通信,這樣的設計模式使得通信平臺易用且具有良好的擴展性。二、發布/訂閱通信, 應用進程發布消息和訂閱消息首先通過通信代理將消息發送到消息伺服器,消息伺服器再根據發布和訂閱情況,將消息廣播至訂閱該消息的應用進程。本領域的普通技術人員應該意識到,按照上述的連接關係,上述計算節點或伺服器節點的數量可以任意添加。本發明還提出了一種適應私有雲環境下的通信方法,如圖3所示,該通信方法的主要包括以下步驟步驟1.應用進程通過API接口發送數據到網絡。如圖4所示,應用進程首先向本地節點上的通信代理髮起網絡連接請求,應用進程與通信代理連接成功後應用進程使用註冊API函數向通信代理髮送應用進程信息,通信代理完成應用進程信息的維護。根據目的進程信息和應用進程的通信需求設置通信選項, 通信需求包括發送的數據類型是消息或是文件,通信方式是點對點通信或發布訂閱通信。 設置好通信選項後,使用相應的API函數,將按一定規則和協議序列化後的消息到發送到網絡中。步驟2.通信代理獲取網絡數據如圖5所示,應用進程無需知道底層通信細節只需完成步驟1中的操作,即可將需要通信的數據通過API接口發送至網絡中,具體的數據轉發過程由通信代理完成。在獲取網絡數據之前,通過代理完成與應用進程之間的交互完成接收會話連接的建立。首先通信代理啟動後綁定固定埠號,然後開始監聽該埠以等待網絡連接請求;收到新的連接請求後,建立接收會話連接等待接收LAN數據,並將新連接添加至接收會話連接信息表中,統一管理方便查詢。在步驟1結束後網絡中有新的數據到達,接收會話連接開啟接收線程讀底層socket接口完成數據的接收。網絡數據接收完成後,將數據按一定的規則和協議反序列化為自定義的消息格式,然後將消息放入消息接收隊列中等待後續數據處理。步驟3.通信代理處理消息數據。如圖6所示,通過步驟2,通信代理獲取到應用進程的通信數據,並將消息存放到接收隊列後通信代理開始處理消息數據。首先通信代理開啟消息處理線程循環處理接收隊列中的消息。其次,通信代理查詢發送會話連接信息表,查看通信代理與目的進程之間是否存在發送會話連接。如果通信代理與目的進程已建立發送會話連接,則將消息通過發送會話連接發送至網絡中;如果沒有與目的進程之間建立發送會話連接,則根據步驟1中設置的通信選項判斷通信類型,若通信類型是發布/訂閱,則通信代理向伺服器節點的通信代理髮起發送會話連接請求;若通信類型是點對點通信,再通過判定目的進程IP與通信代理 IP是否相同,相同則為節點內進程通信,通信代理向目的進程發起發送會話連接請求,若不同則為節點間進程通信,通信代理向目的進程所在通信代理髮起發送會話連接請求。連接請求若失敗,則該消息存放至消息失敗隊列中;連接成功後將新連接添加至發送會話連接信息表中,再將消息通過發送會話連接發送至網絡中。步驟4.消息伺服器獲取並處理髮布/訂閱消息。如圖7所示,通過步驟3,若通信類型是點對點通信則轉到步驟5。若通信類型是發布/訂閱則消息發送至消息伺服器節點的通信代理上,然後伺服器節點的通信代理再將消息轉發至消息伺服器,此處伺服器節點的通信代理獲取並處理數據與步驟2和步驟3相同,消息伺服器獲取消息與步驟5相同。消息伺服器在收到消息後判斷在步驟1中設置的消息類型,若是控制消息,採取取消主題消息或者取消訂閱消息的操作;若是主題消息則將消息添加至發布主題映射表;若是訂閱消息則將消息添加至訂閱主題映射表。新的消息添加到映射表後,進行主題消息的匹配。主題匹配有以下四種情況1)新主題消息有訂閱者; 2)新主題消息沒有訂閱者;幻新訂閱消息有主題發布者;4)新訂閱消息沒有主題發布者; 1)和3) 二種情況屬於主題匹配成功,主題匹配成功後消息伺服器將主題消息發送至伺服器掛載的通信代理上,然後消息伺服器上通信代理對消息分析處理後將消息發送至訂閱應用進程。步驟5.應用進程通過API接口從網絡接收消息。應用進程在啟動後綁定固定埠號,然後開始監聽該埠以等待網絡連接請求,收到新的連接請求後,建立應用進程的接收會話連接等待接收LAN數據。當通信代理向應用進程發送數據時,應用進程的接收會話連接調用通信平臺提供的同步或異步接收API函數獲取網絡中數據,然後再將數據按一定的規則和協議反序列化為消息。
本領域的普通技術人員將會意識到,這裡所述的實施例是為了幫助讀者理解本發明的原理,應被理解為本發明的保護範圍並不局限於這樣的特別陳述和實施例。本領域的普通技術人員可以根據本發明公開的這些技術啟示做出各種不脫離本發明實質的其它各種具體變形和組合,這些變形和組合仍然在本發明的保護範圍內。
權利要求
1.一種適應私有雲環境下的通信平臺,所述通信平臺至少包括兩個計算節點和一個伺服器節點,所述計算節點和伺服器節點通過網絡互相連接成分布式集群系統,每個計算節點表示系統中的一臺主機,主機中包含了許多的應用進程,其特徵在於,每個節點上掛載一個通信代理,所述節點內所有應用進程通過通信平臺提供的標準API接口與本地通信代理連接,以實現應用進程間的點對點通信,並且通過在伺服器節點掛載消息伺服器應用進程, 以實現應用進程間的一對多通信。
2.—種適應私有雲環境下的通信方法,其特徵在於,包括如下步驟步驟1.應用進程通過API接口發送數據到網絡;步驟2.通信代理獲取網絡數據;步驟3.通信代理處理消息數據;步驟4.消息伺服器獲取並處理髮布/訂閱消息;步驟5.應用進程通過API接口從網絡接收消息。
3.根據權利要求2所述的一種適應私有雲環境下的通信方法,其特徵在於,所述步驟1 的具體過程為應用進程首先向本地節點上的通信代理髮起網絡連接請求,應用進程與通信代理連接成功後應用進程使用註冊API函數向通信代理髮送應用進程信息,通信代理完成應用進程信息的維護;根據目的進程信息和應用進程的通信需求設置通信選項,通信需求包括發送的數據類型是消息或是文件,通信方式是點對點通信或發布訂閱通信;設置好通信選項後,使用相應的API函數,將按一定規則和協議序列化後的消息到發送到網絡中。
4.根據權利要求2所述的一種適應私有雲環境下的通信方法,其特徵在於,所述步驟 2的具體過程為應用進程可將需要通信的數據通過API接口發送至網絡中,具體的數據轉發過程由通信代理完成;在獲取網絡數據之前,通過代理完成與應用進程之間的交互完成接收會話連接的建立;首先通信代理啟動後綁定固定埠號,然後開始監聽該埠以等待網絡連接請求;收到新的連接請求後,建立接收會話連接等待接收LAN數據,並將新連接添加至接收會話連接信息表中,統一管理方便查詢。
5.根據權利要求2所述的一種適應私有雲環境下的通信方法,其特徵在於,所述步驟3 的具體過程為信代理獲取到應用進程的通信數據,並將消息存放到接收隊列後通信代理開始處理消息數據;首先通信代理開啟消息處理線程循環處理接收隊列中的消息;其次, 通信代理查詢發送會話連接信息表,查看通信代理與目的進程之間是否存在發送會話連接。如果通信代理與目的進程已建立發送會話連接,則將消息通過發送會話連接發送至網絡中;如果沒有與目的進程之間建立發送會話連接,則根據步驟1中設置的通信選項判斷通信類型,若通信類型是發布/訂閱,則通信代理向伺服器節點的通信代理髮起發送會話連接請求;若通信類型是點對點通信,再通過判定目的進程IP與通信代理IP是否相同,相同則為節點內進程通信,通信代理向目的進程發起發送會話連接請求,若不同則為節點間進程通信,通信代理向目的進程所在通信代理髮起發送會話連接請求。連接請求若失敗,則該消息存放至消息失敗隊列中;連接成功後將新連接添加至發送會話連接信息表中,再將消息通過發送會話連接發送至網絡中。
6.根據權利要求2所述的一種適應私有雲環境下的通信方法,其特徵在於,所述步驟 4的具體過程為通過步驟3,若通信類型是點對點通信則轉到步驟5 ;若通信類型是發布/ 訂閱則消息發送至消息伺服器節點的通信代理上,然後伺服器節點的通信代理再將消息轉發至消息伺服器,此處伺服器節點的通信代理獲取並處理數據與步驟2和步驟3相同,消息伺服器獲取消息與步驟5相同;消息伺服器在收到消息後判斷在步驟1中設置的消息類型, 若是控制消息,採取取消主題消息或者取消訂閱消息的操作;若是主題消息則將消息添加至發布主題映射表;若是訂閱消息則將消息添加至訂閱主題映射表。
7.根據權利要求2所述的一種適應私有雲環境下的通信方法,其特徵在於,所述步驟5 的具體過程為應用進程在啟動後綁定固定埠號,然後開始監聽該埠以等待網絡連接請求,收到新的連接請求後,建立應用進程的接收會話連接等待接收LAN數據。當通信代理向應用進程發送數據時,應用進程的接收會話連接調用通信平臺提供的同步或異步接收 API函數獲取網絡中數據,然後再將數據按一定的規則和協議反序列化為消息。
全文摘要
本發明涉及一種適應私有雲環境下的通信平臺和通信方法,所述通信平臺至少包括兩個計算節點和一個伺服器節點,所述計算節點和伺服器節點通過網絡互相連接成分布式集群系統,每個計算節點表示系統中的一臺主機,主機中包含了許多的應用進程,每個節點上掛載一個通信代理,所述節點內所有應用進程通過通信平臺提供的標準API接口與本地通信代理連接,以實現應用進程間的點對點通信,並且通過在伺服器節點掛載消息伺服器應用進程,以實現應用進程間的一對多通信。本發明的有益效果是克服現有的私有雲系統通信方式只有同步通信方式,通信對象只局限於單節點,且通信域內採用傳統的客戶/伺服器模式的缺點。
文檔編號H04L29/08GK102291467SQ20111027317
公開日2011年12月21日 申請日期2011年9月15日 優先權日2011年9月15日
發明者胡光岷, 趙太銀, 陳慧楠 申請人:電子科技大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀