本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種請求消息傳輸方法及裝置。
背景技術(shù):
信息和通信技術(shù)(informationandcommunicationstechnology,ict)技術(shù)是應信息時代對信息技術(shù)和通信技術(shù)的融合的需求產(chǎn)生的。
在ict網(wǎng)絡(luò)中,主要包括ict編排(ict-orchestration,ict-o)系統(tǒng),以及多個控制器,其中所述ict-o系統(tǒng)又稱為業(yè)務(wù)編排系統(tǒng),所述ict-o系統(tǒng)用于接收來自用戶的業(yè)務(wù)請求,并將該業(yè)務(wù)請求進行分解和重新設(shè)計等處理,轉(zhuǎn)換為該網(wǎng)絡(luò)中的控制器可以理解并執(zhí)行的多個請求消息,并將多個請求消息進行調(diào)度處理,將每個請求消息轉(zhuǎn)發(fā)至相應的控制器,所述ict-o系統(tǒng)中可以根據(jù)執(zhí)行功能的不同分為多個邏輯模塊,例如用于將業(yè)務(wù)請求進行分解和重新設(shè)計的業(yè)務(wù)分解設(shè)計模塊,用于對多個請求消息進行調(diào)度處理的執(zhí)行器,用于對每個請求消息轉(zhuǎn)發(fā)的分發(fā)器等;所述控制器具有邏輯控制功能,部署于所述ict-o系統(tǒng)與網(wǎng)絡(luò)設(shè)備和/或基礎(chǔ)設(shè)施之間,根據(jù)接收到的所述ict-o系統(tǒng)中請求消息,將所述請求消息對應的網(wǎng)絡(luò)指令發(fā)送至與所述請求消息相應的網(wǎng)絡(luò)設(shè)備和/或基礎(chǔ)設(shè)施。在該網(wǎng)絡(luò)中所述ict-o系統(tǒng)和每個控制器之間通過驅(qū)動適配插件進行交互。
為了解決管理容量和可靠性的問題,在該網(wǎng)絡(luò)中,采用服務(wù)集群化和云化部署方式,這樣,該網(wǎng)絡(luò)中的控制器的數(shù)量等級較高,驅(qū)動適配插件的數(shù)量等級也相應較高。
在該網(wǎng)絡(luò)中的ict-o系統(tǒng)在接收到用戶提出的針對一種類型的業(yè)務(wù)提出的業(yè)務(wù)請求后,將該業(yè)務(wù)請求進行分解,生成多個請求消息,每個請求消息中 包含其對應的目標控制器標識,并通過所述執(zhí)行器向所述分發(fā)器發(fā)送所述多個請求消息;所述分發(fā)器在接收到一個請求消息后,對多個驅(qū)動適配插件進行負載均衡,選擇一個適當?shù)尿?qū)動適配插件,并通過選擇的該驅(qū)動適配插件,將所述請求消息發(fā)送給該請求消息包含的目標控制器標識對應的目標控制器,其中,所述分發(fā)器選擇的該驅(qū)動適配插件為所述多個驅(qū)動適配插件中的任意一個。
然而,在實際場景中,某些驅(qū)動適配插件會無法與一些控制器連接的,這樣,在分發(fā)器接收到的請求消息的目標控制器與分發(fā)器選擇的驅(qū)動適配插件沒有連接的情況下,會導致請求消息傳輸失敗。因此,通過上述方法傳輸請求消息,會增加請求消息傳輸失敗的概率,降低了請求消息傳輸?shù)目煽啃浴?/p>
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種請求消息傳輸方法及裝置,用以解決現(xiàn)有技術(shù)中的ict網(wǎng)絡(luò)在傳輸請求消息時,會增加請求消息傳輸失敗的概率,降低了請求消息傳輸?shù)目煽啃缘膯栴}。
本發(fā)明提供的具體技術(shù)方案如下:
一方面,本發(fā)明實施例提供了一種請求消息傳輸方法,該方法可以適用于ict網(wǎng)絡(luò)中的ict-o系統(tǒng),該方法中的分發(fā)器可以為所述ict-o系統(tǒng)中的具有分發(fā)功能的模塊,該方法包括:
分發(fā)器接收到所述ict-o系統(tǒng)對一個業(yè)務(wù)請求分解后的請求消息后,首先獲取所述請求消息中包含的第一控制器的信息,例如所述第一控制器的路由標識等唯一標識所述第一控制器的信息,然后在存儲在本地或者所述ict-o系統(tǒng)中其他存儲設(shè)備中的多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系中,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器獲取所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個 驅(qū)動適配插件的運行狀態(tài),并在其中確定運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件;最終,所述分發(fā)器通過所述至少一個待選驅(qū)動適配插件中的一個待選驅(qū)動適配插件,將所述請求消息發(fā)送至所述第一控制器。
通過上述方法,由于所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器通過其中一個待選驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述第一控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
在一個可能的設(shè)計中,所述第一控制器的信息為所述第一控制器的路由標識,所述路由標識能夠唯一標識所述第一控制器,所述第一控制器的信息還可以為所述第一控制器的標識等信息。
在一個可能的設(shè)計中,所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的類型相同。由于不同的類型的驅(qū)動適配插件,維護的接口不同,因此,所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的接口與所述第一控制器的接口相匹配。
通過上述方式,所述第一驅(qū)動適配插件組中至少一個驅(qū)動適配插件的類型均相同,且該類型的驅(qū)動適配插件的接口與所述第一控制器的接口相匹配,所述分發(fā)器可以保證通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件接口不匹配導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,在控制器也劃分為不同的類型時,上述設(shè)計中的所 述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的類型與所述第一控制器的類型匹配。
在一個可能的設(shè)計中,在所述第一驅(qū)動適配插件組中包含至少一個驅(qū)動適配插件的類型不同的情況下,所述請求消息中還包含驅(qū)動適配插件的第一類型;所述分發(fā)器需要首先獲取所述請求消息中包含的所述第一類型;在所述至少一個驅(qū)動適配插件中確定類型與所述第一類型相同,且運行狀態(tài)為正常的所述至少一個待選驅(qū)動適配插件,從而得到所述至少一個待選驅(qū)動適配插件。其中所述請求消息中包含的驅(qū)動適配插件的第一類型,表示只有通過該第一類型的驅(qū)動適配插件,所述分發(fā)器才可以將所述請求消息成功傳輸給所述第一控制器,換句換說,所述第一類型的驅(qū)動適配插件的接口與所述第一控制器的接口相匹配。
通過上述方法,所述分發(fā)器后續(xù)可以在所述第一驅(qū)動適配插件組中篩選出第一類型的至少一個待選驅(qū)動適配插件,所述分發(fā)器可以保證通過所述至少一個待選驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件接口不匹配導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的連接限制數(shù)量相同,且所述第一驅(qū)動適配插件組中包含的驅(qū)動適配插件的數(shù)量小于或等于所述第一驅(qū)動適配插件組對應的每個控制器的連接限制數(shù)量。
通過上述方法,當所述第一控制器具有連接限制數(shù)量時,所述分發(fā)器可以保證通過所述第一驅(qū)動適配插件組中的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,避免所述第一驅(qū)動適配插件組中包含的驅(qū)動適配插件的數(shù)量大于所述第一控制器的連接限制數(shù)量時,所述分發(fā)器選擇的目標驅(qū)動適配插件未與所述第一控制相連導致的請求消息傳輸失敗的情況,提高了請求消息傳輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的歸屬地與所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的歸屬地相同。
通過上述方法,所述分發(fā)器可以保證通過所述第一驅(qū)動適配插件組中的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,避免由于所述第一驅(qū)動適配插件組中存在歸屬地與所述第一控制器的歸屬地不同的驅(qū)動適配插件時,所述分發(fā)器選擇的目標驅(qū)動適配插件與所述第一控制歸屬地不同導致的請求消息傳輸失敗的情況,提高了請求消息傳輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,當所述至少一個待選驅(qū)動適配插件的數(shù)目為多個時,所述分發(fā)器在通過所述至少一個待選驅(qū)動適配插件中的一個待選驅(qū)動適配插件,將所述請求消息發(fā)送至所述第一控制器時,可以通過對所述多個待選驅(qū)動適配插件進行負載均衡處理,從而在所述多個待選驅(qū)動適配插件中確定一個目標驅(qū)動適配插件,然而通過確定的所述目標驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。
通過上述方法,所述分發(fā)器通過對所述至少一個待選驅(qū)動適配插件進行負載均衡處理,確定其中一個目標驅(qū)動適配插件,可以保證所述至少一個待選驅(qū)動適配插件的負載均衡。
在一個可能的設(shè)計中,所述分發(fā)器使用的負載均衡處理的方法,可以包括多種,例如按照設(shè)定順序輪詢方法,或者隨機選擇方法等,或者選擇符合設(shè)定特征的方法等。
通過上述方法,所述分發(fā)器可以對所述至少一個待選驅(qū)動適配插件進行負載均衡處理,確定其中一個目標驅(qū)動適配插件。
另一方面,本發(fā)明實施例還提供了一種控制器的信息與驅(qū)動適配插件組的對應關(guān)系生成方法,該方法可以適用于ict網(wǎng)絡(luò)中的ict-o系統(tǒng),本方法中的分組管理器中分組管理器部署于所述ict-o系統(tǒng)中,該方法包括:
分組管理器獲取控制器的信息后,首先在ict網(wǎng)絡(luò)中的多個驅(qū)動適配插件 中,確定出與所述控制器相連的至少一個驅(qū)動適配插件;最后生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系,在所述驅(qū)動適配插件組包含所述至少一個驅(qū)動適配插件。
通過上述方法,由于所述驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述控制器相連,保證所述分發(fā)器通過所述驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,所述控制器的信息為所述控制器的路由標識,所述路由標識能夠唯一標識所述所述控制器,所述第一控制器的信息還可以為所述第一控制器的標識等信息。
在一個可能的設(shè)計中,所述分組管理器可以通過驅(qū)動適配插件的類型,在多個驅(qū)動適配插件中確定出所述控制器對應的至少一個驅(qū)動適配插件,即獲取所述多個驅(qū)動適配插件中每個驅(qū)動適配插件組的類型,然后在所述多個驅(qū)動適配插件中確定出類型相同的所述至少一個驅(qū)動適配插件。
通過上述方式,篩選出的至少一個驅(qū)動適配插件的類型均相同,且該類型的驅(qū)動適配插件的接口與所述控制器的接口相匹配,后續(xù)所述分發(fā)器可以保證通過上述至少一個驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,降低了由于控制器與驅(qū)動適配插件接口不匹配導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,所述至少一個驅(qū)動適配插件的數(shù)量小于或等于所述控制器的連接限制數(shù)量。通過這種方法,當所述控制器具有連接限制數(shù)量時,所述分發(fā)器可以保證通過上述至少一個驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,避免所述至少一個驅(qū)動適配插件的數(shù)量大于所述控制器的連接限制數(shù)量時,所述分發(fā)器選擇的目標驅(qū)動適配插件未與所述控制相連導致的請求消息傳輸失敗的情況,提高了請求消息傳 輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,所述至少一個驅(qū)動適配插件的歸屬地與所述控制器的歸屬地相同。通過這種方法,所述分發(fā)器可以保證通過所述至少一個驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,避免由于所述至少一個驅(qū)動適配插件中存在歸屬地與所述控制器的歸屬地不同的驅(qū)動適配插件時,所述分發(fā)器選擇的目標驅(qū)動適配插件與所述控制歸屬地不同導致的請求消息傳輸失敗的情況,提高了請求消息傳輸?shù)目煽啃浴?/p>
在一個可能的設(shè)計中,在所述分組管理器生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系后,所述分組管理器獲取所述至少一個驅(qū)動適配插件的運行狀態(tài),例如,所述分組管理器可以通過定時獲取所述至少一個驅(qū)動適配插件的運行狀態(tài),或者所述至少一個驅(qū)動適配插件可以定時上報所述至少一個驅(qū)動適配插件的運行狀態(tài),或者,所述至少一個驅(qū)動適配插件確定自身運行狀態(tài)發(fā)生變化時,上報當前自身的運行狀態(tài),這樣,所述分組管理器可以對所述驅(qū)動適配插件組中的所述至少一個驅(qū)動適配插件的運行狀態(tài)進行更新。
通過上述方法,所述分組管理器可以確定所述控制器對應的驅(qū)動適配插件組中每個驅(qū)動適配插件的運行狀態(tài)。在后續(xù)所述分發(fā)器在確定待選驅(qū)動適配插件時,可以根據(jù)所述分組管理器獲取的所述至少一個驅(qū)動適配插件的運行狀態(tài),在所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件。
在一個可能的設(shè)計中,所述分組管理器對生成的所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系進行后期維護,例如,當所述控制器注銷時,所述分組管理器刪除刪除所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系;驅(qū)動適配插件組中的驅(qū)動適配插件注銷時,刪除所述控制器對應的驅(qū)動適配插件組中的注銷的驅(qū)動適配插件;當所述分發(fā)器根據(jù)所述驅(qū)動適配插件組中的一個目標驅(qū)動適配插件發(fā)送請求消息給所述控制器發(fā)送失敗時,所述分組管理器也可以刪除所述控制器對應的驅(qū)動適配插件組中的所述目標驅(qū)動適配插件。
通過上述方法,所述分組管理器可以保證所述所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系中的所述驅(qū)動適配插件組中的每個驅(qū)動適配插件組在任何時刻均與所述控制器相連,保證在后續(xù)所述分發(fā)器可以通過所述驅(qū)動適配插件組中的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器。
又一方面,本發(fā)明實施例還提供了一種分發(fā)器,該分發(fā)器具有實現(xiàn)上述方法實例中分發(fā)器行為的功能。所述功能可以通過硬件實現(xiàn),也可以通過硬件執(zhí)行相應的軟件實現(xiàn)。所述硬件或軟件包括一個或多個與上述功能相對應的模塊。
在一種可能的設(shè)計中,所述分發(fā)器的結(jié)構(gòu)中包括接收單元、處理單元和發(fā)送單元,這些單元可以執(zhí)行上述方法示例中的相應功能,具體參見方法示例中的詳細描述,此處不做贅述。
在一種可能的設(shè)計中,所述分發(fā)器的結(jié)構(gòu)中包括收發(fā)器、處理器、總線以及存儲器,所述收發(fā)器用于與所述分發(fā)器相連的設(shè)備或模塊進行通信交互,所述處理器被配置為支持所述分發(fā)器執(zhí)行上述方法中相應的功能。所述存儲器與所述處理器耦合,其保存所述分發(fā)器必要的程序指令和數(shù)據(jù)。
又一方面,本發(fā)明實施例還提供了一種分組管理器,該分組管理器具有實現(xiàn)上述方法實例中分組管理器行為的功能。所述功能可以通過硬件實現(xiàn),也可以通過硬件執(zhí)行相應的軟件實現(xiàn)。所述硬件或軟件包括一個或多個與上述功能相對應的模塊。
在一種可能的設(shè)計中,所述分組管理器的結(jié)構(gòu)中包括處理單元和生成單元,這些單元可以執(zhí)行上述方法示例中的相應功能,具體參見方法示例中的詳細描述,此處不做贅述。
在一種可能的設(shè)計中,所述分組管理器的結(jié)構(gòu)中包括收發(fā)器、處理器、總線以及存儲器,所述收發(fā)器用于與所述分組管理器相連的其他設(shè)備進行通信交互,所述處理器被配置為支持所述分組管理器執(zhí)行上述方法中相應的功能。所述存儲器與所述處理器耦合,其保存所述分組管理器必要的程序指令和數(shù)據(jù)。
又一方面,本發(fā)明實施例提供了一種ict-o系統(tǒng),該系統(tǒng)包括分發(fā)器和分組管理器。該分發(fā)器具有實現(xiàn)上述方法實例中分發(fā)器行為的功能,該分組管理器具有實現(xiàn)上述方法實例中分組管理器行為的功能。
又一方面,本發(fā)明實施例提供了一種或多種計算機程序產(chǎn)品,該計算機程序產(chǎn)品中包含軟件程序,該軟件程序在被一個或多個處理器執(zhí)行時實現(xiàn)前述任意一個或多個方法。
采用本發(fā)明提供的請求消息傳輸方法,部署于ict-o系統(tǒng)中的分發(fā)器在接收到一個請求消息后,根據(jù)所述請求消息中包含的第一控制器的信息,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器在所述第一驅(qū)動適配插件組包含的所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,最終所述分發(fā)器可以通過一個待選驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。由于所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器通過其中一個待選驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述第一控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
附圖說明
圖1為本發(fā)明實施例提供的一種ict網(wǎng)絡(luò)的架構(gòu)示意圖;
圖2為本發(fā)明實施例提供的另一種ict網(wǎng)絡(luò)的架構(gòu)示意圖;
圖3為本發(fā)明實施例提供的一種請求消息傳輸方法流程圖;
圖4為本發(fā)明實施例提供的一種請求消息傳輸示例流程示意圖;
圖5為本發(fā)明實施例提供的一種分發(fā)器確定待選驅(qū)動適配插件的流程示意圖;
圖6為本發(fā)明實施例提供的一種控制器的信息與驅(qū)動適配插件組的對應關(guān)系生成方法流程圖;
圖7為本發(fā)明實施例提供的一種分發(fā)器的結(jié)構(gòu)示意圖;
圖8為本發(fā)明實施例提供的一種分組管理器的結(jié)構(gòu)示意圖;
圖9為本發(fā)明實施例提供的一種分發(fā)器的結(jié)構(gòu)圖;
圖10為本發(fā)明實施例提供的一種分組管理器的結(jié)構(gòu)圖。
具體實施方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明作進一步地詳細描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明實施例提供一種請求消息傳輸方法及裝置,用以解決現(xiàn)有技術(shù)中的ict網(wǎng)絡(luò)在傳輸請求消息時,會增加請求消息傳輸失敗的概率,降低了請求消息傳輸?shù)目煽啃缘膯栴}。其中,本發(fā)明所述方法和裝置基于同一發(fā)明構(gòu)思,由于方法及裝置解決問題的原理相似,因此裝置與方法的實施可以相互參見,重復之處不再贅述。
本發(fā)明實施例中,部署于ict-o系統(tǒng)中的分發(fā)器在接收到一個請求消息后,根據(jù)所述請求消息中包含的第一控制器的信息,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器在所述第一驅(qū)動適配插件組包含的所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,最終所述分發(fā)器可以通過一個待選驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。由于所述第一驅(qū)動適配插件組中包含的至少一 個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器通過其中一個待選驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述第一控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
本發(fā)明實施例提供的請求消息傳輸方法,適用于ict網(wǎng)絡(luò)中,如圖1所示,在該網(wǎng)絡(luò)中根據(jù)邏輯功能進行劃分,該網(wǎng)絡(luò)可以分為ict-o系統(tǒng)、管理與控制層、網(wǎng)絡(luò)設(shè)備層,其中,
用戶可以訪問所述ict-o系統(tǒng),所述用戶可以為運營商用戶(如業(yè)務(wù)支撐系統(tǒng)(businesssupportsystem,bss)、運營支撐系統(tǒng)(operationsupportsystem,oss)、管理員等),企業(yè)用戶,個人用戶以及開發(fā)者等。所述用戶可以通過網(wǎng)頁(web)控制臺戶其他系統(tǒng)發(fā)起業(yè)務(wù)請求,例如創(chuàng)建一個從深圳或北京的虛擬專用網(wǎng)絡(luò)(virtualprivatenetwork,vpn),或者在云上創(chuàng)建一個云主機等。
所述ict-o系統(tǒng)接收來自用戶的業(yè)務(wù)請求,并將該業(yè)務(wù)請求進行分解和重新設(shè)計等處理,轉(zhuǎn)換為該網(wǎng)絡(luò)中的管理與控制層中的控制器可以理解并執(zhí)行的多個請求消息,并將所述多個請求消息進行調(diào)度處理,將每個請求消息轉(zhuǎn)發(fā)至相應的控制器。其中,在所述ict-o系統(tǒng)通過驅(qū)動適配插件與所述管理與控制層中的控制器進行交互。
所述管理與控制層中包括多個具有邏輯控制以及管理功能的控制器(controller),例如網(wǎng)元管理系統(tǒng)(elementmanagementsystem,ems)/oss、訪問控制器(accesscontroller)、虛擬化網(wǎng)絡(luò)功能管理器(virtualisednetworkfunctionmanager,vnfm)、互聯(lián)網(wǎng)協(xié)議(internetprotocol,ip)城域(metro)控制器、智能(intellectualproperty,ip)核(core)控制器等。所述管理與 控制層中控制器在接收到所述ict-o系統(tǒng)中的請求消息后,根據(jù)所述請求消息管理和控制相應的網(wǎng)絡(luò)設(shè)備和/或基礎(chǔ)設(shè)施,即向相應的網(wǎng)絡(luò)設(shè)備和/或基礎(chǔ)設(shè)施發(fā)送網(wǎng)絡(luò)指令。
所述網(wǎng)絡(luò)設(shè)備層中包括網(wǎng)絡(luò)設(shè)備和基礎(chǔ)設(shè)施等,例如路由器(router)、交換機(switch)等,其中,所述網(wǎng)絡(luò)設(shè)備層中的網(wǎng)絡(luò)設(shè)備和基礎(chǔ)設(shè)施可以但不限于為以下應用場景中的設(shè)備:移動寬帶(mobilebroadband,mbb)網(wǎng)絡(luò)、固定寬帶(fixedbroadband,fbb)網(wǎng)絡(luò)、軟件定義網(wǎng)絡(luò)(softwaredefinednetwork,sdn)、網(wǎng)絡(luò)功能虛擬化(networkfunctionvirtualization,nfv)以及混合云(hybridcloud)。
基于如圖1所示的ict網(wǎng)絡(luò),本發(fā)明實施例提供了另一種可能的如圖2示出ict網(wǎng)絡(luò)的架構(gòu)。其中,在該ict網(wǎng)絡(luò)中,按照所述ict-o系統(tǒng)的邏輯功能,可以將所述ict-o系統(tǒng)不同分為多個邏輯模塊,如圖所示,所述ict-o系統(tǒng)中包括業(yè)務(wù)和實例管理模塊、業(yè)務(wù)分解設(shè)計模塊、執(zhí)行器、分發(fā)器以及分組管理器等。其中,
所述業(yè)務(wù)和實例管理模塊,為所述ict-o系統(tǒng)的入口,負責接收用戶通過web控制臺或其他系統(tǒng)發(fā)來的業(yè)務(wù)請求,并對所述業(yè)務(wù)請求的生命周期進行管理,用戶可以通過所述業(yè)務(wù)和實例管理模塊進行業(yè)務(wù)的新增、修改、刪除和查看等操作。
所述業(yè)務(wù)分解設(shè)計模塊,可以根據(jù)所述ict-o系統(tǒng)維護的網(wǎng)絡(luò)業(yè)務(wù)設(shè)計服務(wù)、與業(yè)務(wù)設(shè)計服務(wù)等,把面向用戶的所述業(yè)務(wù)請求通過分解和重新設(shè)計,轉(zhuǎn)換成ict網(wǎng)絡(luò)中的控制器可以理解和處理的、面向設(shè)備的多個請求消息,其中每個請求消息中包含其對應的目標控制器的信息。
所述執(zhí)行器,根據(jù)分解生成的多個請求消息之間的約束關(guān)系以及關(guān)聯(lián)關(guān)系,對所述多個請求消息進行調(diào)度,即所述執(zhí)行器需要保證面向設(shè)備的請求消息能夠快速且可靠的執(zhí)行,例如對于某些可以并行處理的請求消息,所述執(zhí)行器并行執(zhí)行這些請求消息;對于某些需要按照順序執(zhí)行的請求消息,所述執(zhí)行 器按照該順序依次執(zhí)行這些請求消息。
所述分發(fā)器,在多個驅(qū)動適配插件中,為每個請求消息選擇一個驅(qū)動適配插件,使每個請求消息可以通過選擇的驅(qū)動適配插件發(fā)送至相應的目標控制器。當所述ict-o系統(tǒng)中維護有分組管理器時,所述分組管理器可以為所述ict網(wǎng)絡(luò)中的每個控制器分配對應的驅(qū)動適配插件組,生成多個控制器的信息和驅(qū)動適配插件組的對應關(guān)系;所述分發(fā)器可以根據(jù)每個請求消息中包含的目標控制器的信息,確定驅(qū)動適配插件組,然后選擇驅(qū)動適配插件組中包含的一個驅(qū)動適配插件發(fā)送相應的請求消息。所述分發(fā)器可以包括具有分發(fā)特性的總線,本發(fā)明對此不做限定。
所述分組管理器,可以為所述ict網(wǎng)絡(luò)中的每個控制器分配對應的驅(qū)動適配插件組,生成多個控制器的信息和驅(qū)動適配插件組的對應關(guān)系,其中,任意一個控制器對應的驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件與所述控制器相連。其中,所述分組管理器可以根據(jù)網(wǎng)絡(luò)部署需求、地理位置的分布、執(zhí)行效率的需求、多用戶并發(fā)處理、可靠性的需要,分別為每個控制器分配對應的驅(qū)動適配插件組,從而生成多個控制器的信息和驅(qū)動適配插件組的對應關(guān)系。
在該ict網(wǎng)絡(luò)中的驅(qū)動適配插件,是連接控制器和所述ict-o系統(tǒng)的橋梁,其中,一個驅(qū)動適配插件可以對應至少一個控制器,而一個控制器也有至少一個驅(qū)動適配插件對應。
ict網(wǎng)絡(luò)通常情況下采用服務(wù)集群化和云化部署方式,這樣,該網(wǎng)絡(luò)中的控制器的數(shù)量等級較高,驅(qū)動適配插件的數(shù)量等級也相應較高。在現(xiàn)有技術(shù)中,ict-o系統(tǒng)中的分發(fā)器在收到一個請求消息后,對所述ict網(wǎng)絡(luò)中的所有驅(qū)動適配插件進行負載均衡,選擇其中一個適當?shù)尿?qū)動適配插件傳輸該請求消息。然而,由于所述ict網(wǎng)絡(luò)中的驅(qū)動適配插件的數(shù)量等級較高,所述分發(fā)器對所有驅(qū)動適配插件進行負載均衡,增加分發(fā)器的計算量,增加了篩選出適當?shù)尿?qū)動適配插件的時間,從而降低了用戶的體驗;
且所述ict網(wǎng)絡(luò)中的某些驅(qū)動適配插件與某些控制器之間不能建立連接,例如,某控制器具有連接限制數(shù)量,所述連接限制數(shù)量即所述控制器最多可連接的驅(qū)動適配插件的數(shù)量,因此,當所述ict網(wǎng)絡(luò)中的驅(qū)動適配插件大于所述連接限制數(shù)量時,所述ict網(wǎng)絡(luò)中最多有連接限制數(shù)量的驅(qū)動適配插件與所述控制器相連,其余的驅(qū)動適配插件不能與所述控制器相連;又例如,某控制器的歸屬地為北京,而某些驅(qū)動適配插件的歸屬地為深圳,因此,這些驅(qū)動適配插件不能與該控制器相連。基于以上描述,所述分發(fā)器為某請求消息選擇出的符合負載均衡的驅(qū)動適配插件與該請求消息對應的目標控制器未連接的概率較大,即該請求消息傳輸失敗的概率較大,該請求消息傳輸?shù)目煽啃暂^低。
參閱圖3所示,本發(fā)明實施例提供的一種請求消息傳輸方法,該方法可以適用于如圖1和圖2所示的ict網(wǎng)絡(luò)中的ict-o系統(tǒng),本發(fā)明實施例涉及的分發(fā)器為所述ict-o系統(tǒng)中具有分發(fā)功能的模塊。該方法的處理流程包括:
步驟301:分發(fā)器接收到請求消息后,獲取所述請求消息中包含的第一控制器的信息。
其中,所述請求消息為所述ict-o系統(tǒng)對接收的一個業(yè)務(wù)請求分解得到的多個請求消息中的一個,其中所述ict-o系統(tǒng)分解的每個請求消息中均包含對應的目標控制器的信息。所述第一控制器即為所述請求消息的目標控制器。
所述第一控制器的信息為唯一標識所述第一控制器的信息,例如所述第一控制器的標識等信息。
可選的,所述第一控制器的信息為所述第一控制器的路由標識,所述路由標識能夠唯一標識所述第一控制器。所述第一控制器的路由標識為所述第一控制器在向所述ict-o系統(tǒng)注冊時,所述ict-o系統(tǒng)生成的,可選的,所述ict-o系統(tǒng)按照設(shè)定規(guī)則,將所述第一控制器的標識進行轉(zhuǎn)換生成所述第一控制器的路由標識。
步驟302:所述分發(fā)器在多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系中,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一 控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連。
其中所述多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系可以存儲在所述分發(fā)器本地,或者存儲在所述ict-o系統(tǒng)中的其他存儲設(shè)備(例如分組管理器)中。
基于圖2中對ict-o系統(tǒng)的描述可知,所述ict-o系統(tǒng)中分組管理器可以為所述ict網(wǎng)絡(luò)中的每個控制器分配對應的驅(qū)動適配插件組,生成多個控制器的信息和驅(qū)動適配插件組的對應關(guān)系,且任意一個控制器對應的驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件與所述控制器相連。
由于所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
可選的,所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的類型相同。驅(qū)動適配插件可以根據(jù)網(wǎng)絡(luò)類型(如sdn、nfv等)、設(shè)備類型(如ip設(shè)備、廣域網(wǎng)(wideareanetwork)設(shè)備等)、協(xié)議類型(如開放式流(openflow)協(xié)議、表述性狀態(tài)傳遞(representationalstatetransfer,rest)協(xié)議、簡單對象訪問協(xié)議(simpleobjectaccessprotocol,soap)等)以及生產(chǎn)廠商劃分為不同的類型。
由于不同的類型的驅(qū)動適配插件,其請求的統(tǒng)一資源定位符(uniformresourcelocator,url)不同,維護的接口也不同,因此,所述第一驅(qū)動適配插件組中至少一個驅(qū)動適配插件的類型的均相同,且該類型的驅(qū)動適配插件的接口與所述第一控制器的接口相匹配??蛇x的,與所述驅(qū)動適配插件類似,當控制器也劃分為不同的類型時,所述第一驅(qū)動適配插件組中每個驅(qū)動適配插件的類型與所述第一控制器的類型匹配。
通過上述方式,所述第一驅(qū)動適配插件組中至少一個驅(qū)動適配插件的類型 均相同,且該類型的驅(qū)動適配插件的接口與所述第一控制器的接口相匹配,所述分發(fā)器可以保證通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件接口不匹配導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
當所述第一驅(qū)動適配插件組中包含至少一個驅(qū)動適配插件的類型不同,那么所述請求消息中還包含驅(qū)動適配插件的第一類型。
其中所述請求消息中包含的驅(qū)動適配插件的第一類型,表示只有通過該第一類型的驅(qū)動適配插件,所述分發(fā)器才可以將所述請求消息成功傳輸給所述第一控制器,即所述第一類型的驅(qū)動適配插件的接口與所述第一控制器的接口相匹配。
通過上述方法,所述分發(fā)器后續(xù)可以在所述第一驅(qū)動適配插件組中篩選出第一類型的至少一個待選驅(qū)動適配插件,所述分發(fā)器可以保證通過所述至少一個待選驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件接口不匹配導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
可選的,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的連接限制數(shù)量相同,且所述第一驅(qū)動適配插件組中包含的驅(qū)動適配插件的數(shù)量小于或等于所述第一驅(qū)動適配插件組對應的每個控制器的連接限制數(shù)量。
當所述ict網(wǎng)絡(luò)中存在具有連接限制數(shù)量的第二控制器時,任意一個第二控制器對應的驅(qū)動適配插件組中包含的驅(qū)動適配插件的數(shù)量小于或等于該第二控制器的連接限制數(shù)量,若存在連接限制數(shù)量相同的多個第二控制器時,所述多個第二控制器可以對應相同的驅(qū)動適配插件組。
通過上述方法,當所述第一控制器具有連接限制數(shù)量時,所述分發(fā)器可以保證通過所述第一驅(qū)動適配插件組中的任意一個驅(qū)動適配插件,都可以成功將 所述請求消息傳輸至所述第一控制器,避免所述第一驅(qū)動適配插件組中包含的驅(qū)動適配插件的數(shù)量大于所述第一控制器的連接限制數(shù)量時,所述分發(fā)器選擇的目標驅(qū)動適配插件未與所述第一控制相連導致的請求消息傳輸失敗的情況,提高了請求消息傳輸?shù)目煽啃浴?/p>
可選的,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的歸屬地與所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的歸屬地相同。
通過上述方法,所述分發(fā)器可以保證通過所述第一驅(qū)動適配插件組中的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,避免由于所述第一驅(qū)動適配插件組中存在歸屬地與所述第一控制器的歸屬地不同的驅(qū)動適配插件時,所述分發(fā)器選擇的目標驅(qū)動適配插件與所述第一控制歸屬地不同導致的請求消息傳輸失敗的情況,提高了請求消息傳輸?shù)目煽啃浴?/p>
步驟303:所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個驅(qū)動適配插件中確定至少一個待選驅(qū)動適配插件,所述至少一個待選驅(qū)動適配插件的運行狀態(tài)為正常。
在步驟303中,所述分發(fā)器可以在所述第一驅(qū)動適配插件組中確定出運行狀態(tài)為正常的待選驅(qū)動適配插件,進而在待選驅(qū)動適配插件中選擇一個目標驅(qū)動適配插件,所述分發(fā)器可以保證通過所述至少一個待選驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,避免由于驅(qū)動適配插件運行異常導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
可選的,當所述第一驅(qū)動適配插件組中包含至少一個驅(qū)動適配插件的類型不同,那么所述請求消息中還包含驅(qū)動適配插件的第一類型;
在所述分發(fā)器在確定所述至少一個待選驅(qū)動適配插件之前,所述方法還包括:
所述分發(fā)器獲取所述請求消息中包含的所述第一類型;
所述分發(fā)器在確定所述至少一個待選驅(qū)動適配插件,包括:
所述分發(fā)器在所述至少一個驅(qū)動適配插件中確定類型與所述第一類型相同的所述至少一個待選驅(qū)動適配插件。
通過上述方法,所述分發(fā)器后續(xù)可以在所述第一驅(qū)動適配插件組中篩選出第一類型的至少一個待選驅(qū)動適配插件,所述分發(fā)器可以保證通過所述至少一個待選驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件接口不匹配導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
步驟304:所述分發(fā)器通過所述至少一個待選驅(qū)動適配插件中的一個待選驅(qū)動適配插件,將所述請求消息發(fā)送至所述第一控制器。
當所述至少一個待選驅(qū)動適配插件的數(shù)目為多個時,所述分發(fā)器在執(zhí)行步驟304時,包括:
所述分發(fā)器通過對所述至少一個待選驅(qū)動適配插件進行負載均衡處理,確定目標驅(qū)動適配插件,所述目標驅(qū)動適配插件為所述至少一個待選驅(qū)動適配插件中的一個;
所述分發(fā)器通過所述目標驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。
其中,所述分發(fā)器使用的負載均衡處理的方法,可以包括多種,例如按照設(shè)定順序輪詢方法,或者隨機選擇方法等,或者選擇符合設(shè)定特征的方法,本發(fā)明對此不做限定。
所述分發(fā)器通過對所述至少一個待選驅(qū)動適配插件進行負載均衡處理,確定其中一個目標驅(qū)動適配插件,可以保證所述至少一個待選驅(qū)動適配插件的負載均衡。
采用本發(fā)明上述實施例中的請求消息傳輸方法,部署于ict-o系統(tǒng)中的分發(fā)器在接收到一個請求消息后,根據(jù)所述請求消息中包含的第一控制器的信息,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一 控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器在所述第一驅(qū)動適配插件組包含的所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,最終所述分發(fā)器可以通過一個待選驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。由于所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器通過其中一個待選驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述第一控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
基于上述實施例,本發(fā)明實施例提供了一種請求消息傳輸示例,參閱圖4所示,其中,在ict-o系統(tǒng)中包括執(zhí)行器和分發(fā)器,該示例的流程包括:
步驟401:所述執(zhí)行器向所述分發(fā)器發(fā)送請求消息,所述請求消息中攜帶控制器的信息——sdn_controller1。其中,所述請求消息為所述ict-o系統(tǒng)將一業(yè)務(wù)請求進行分解后得多的多個請求消息中的一個。
步驟402:所述分發(fā)器根據(jù)所述sdn_controller1,在多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系中,確定sdn_controller1對應的驅(qū)動適配插件組。其中確定的驅(qū)動適配插件組中包括與所述sdn_controller1對應的控制器相連的至少一個驅(qū)動適配插件,如圖5所示的分發(fā)器確定待選驅(qū)動適配插件的流程中的步驟501。
步驟403:所述分發(fā)器在確定的驅(qū)動適配插件組中篩選出至少一個待選驅(qū)動適配插件,每個待選驅(qū)動適配插件的運行狀態(tài)為正常。如圖5中的步驟502得到確定的驅(qū)動適配插件組中的多個驅(qū)動適配插件;再如步驟503所示,在多 個驅(qū)動適配插件中篩選運行狀態(tài)為正常的兩個待選驅(qū)動適配插件。
步驟404:所述分發(fā)器對所述至少一個待選驅(qū)動適配插件進行負載均衡處理,確定目標驅(qū)動適配插件。
步驟405:所述分發(fā)器將所述請求消息發(fā)送至所述目標驅(qū)動適配插件。
可選的,當所述分發(fā)器包括總線和處理模塊時,所述總線在收到所述請求消息后,通過所述處理模塊執(zhí)行所述步驟402至步驟404,并將所述目標驅(qū)動適配插件(即所述目標驅(qū)動適配插件的標識)返回給所述總線。所述總線再執(zhí)行步驟405。
步驟406:所述目標驅(qū)動適配插件將所述請求消息發(fā)送至所述sdn_controller1對應的控制器。
步驟407:所述sdn_controller1對應的控制器向所述目標驅(qū)動適配插件返回響應消息,可選的,所述響應消息為所述請求消息的執(zhí)行結(jié)果。
步驟408:所述目標驅(qū)動適配插件向所述分發(fā)器返回所述響應消息。
步驟409:所述分發(fā)器向所述執(zhí)行器返回所述響應消息。
在上述示例中,部署于ict-o系統(tǒng)中的分發(fā)器在接收到一個請求消息后,根據(jù)所述請求消息中包含的控制器的信息,確定所述控制器的信息對應的驅(qū)動適配插件組,其中,所述控制器與所述驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器在所述驅(qū)動適配插件組包含的所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,然后對所述至少一個待選驅(qū)動適配插件進行負載均衡處理,在所述至少一個待選驅(qū)動適配插件中確定目標驅(qū)動適配插件,最終所述分發(fā)器可以通過所述目標驅(qū)動適配插件將所述請求消息發(fā)送至所述控制器。由于所述驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述控制器相連,保證所述分發(fā)器通過所述驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述驅(qū)動適配插件 組中包含的至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器通過選擇的目標驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
根據(jù)以上實施例中的論述可知,在所述ict-o系統(tǒng)中需要維護多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系,所述多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系為所述ict-o系統(tǒng)生成,可選的,所述ict-o系統(tǒng)可以如圖1或圖2所示的ict網(wǎng)絡(luò)中的ict-o系統(tǒng),本發(fā)明實施例涉及的分組管理器可以為圖2中所示的分組管理器。參閱圖6所示,本發(fā)明實施例還提供了一種控制器的信息與驅(qū)動適配插件組的對應關(guān)系生成方法的流程包括:
步驟601:分組管理器獲取控制器的信息。
所述控制器的信息為可以唯一標識所述控制器的信息,例如所述控制器的標識等信息。
可選的,所述控制器的信息為所述控制器的路由標識,所述路由標識能夠唯一標識所述所述控制器。所述控制器的路由標識為所述控制器在向所述ict-o系統(tǒng)注冊時,所述ict-o系統(tǒng)生成的,可選的,所述ict-o系統(tǒng)按照設(shè)定規(guī)則,將所述控制器的標識進行轉(zhuǎn)換生成所述控制器的路由標識。
步驟602:所述分組管理器在多個驅(qū)動適配插件中,確定出所述控制器對應的至少一個驅(qū)動適配插件,其中,所述控制器與所述至少一個驅(qū)動適配插件相連。
可選的,所述分組管理器在多個驅(qū)動適配插件中,確定出所述控制器對應的至少一個驅(qū)動適配插件,包括:
所述分組管理器獲取所述多個驅(qū)動適配插件中每個驅(qū)動適配插件組的類型;
所述分組管理器在所述多個驅(qū)動適配插件中確定出類型相同的所述至少一個驅(qū)動適配插件。
由于不同的類型的驅(qū)動適配插件,其請求的統(tǒng)一資源定位符(uniformresourcelocator,url)不同,維護的接口也不同,因此,所述分組管理器確定與所述控制器的接口相匹配的驅(qū)動適配插件的接口,然后確定該驅(qū)動適配插件的類型,最終確定該類型的驅(qū)動適配插件的接口與所述控制器的接口相匹配。因此,所述分組管理器可以在多個驅(qū)動適配插件中篩選出類型相同的(即為該類型的)所述至少一個驅(qū)動適配插件??蛇x的,與所述驅(qū)動適配插件類似,當控制器也劃分為不同的類型時,所述分組管理器篩選出與所述控制器的類型匹配的所述第一驅(qū)動適配插件組中每個驅(qū)動適配插件的類型與所述第一控制器的所述至少一個驅(qū)動適配插件。
通過上述方式,篩選出的至少一個驅(qū)動適配插件的類型均相同,且該類型的驅(qū)動適配插件的接口與所述控制器的接口相匹配,后續(xù)所述分發(fā)器可以保證通過上述至少一個驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,降低了由于控制器與驅(qū)動適配插件接口不匹配導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
可選的,所述至少一個驅(qū)動適配插件的數(shù)量小于或等于所述控制器的連接限制數(shù)量。
通過上述方法,當所述控制器具有連接限制數(shù)量時,所述分發(fā)器可以保證通過上述至少一個驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,避免所述至少一個驅(qū)動適配插件的數(shù)量大于所述控制器的連接限制數(shù)量時,所述分發(fā)器選擇的目標驅(qū)動適配插件未與所述控制相連導致的請求消息傳輸失敗的情況,提高了請求消息傳輸?shù)目煽啃浴?/p>
可選的,所述至少一個驅(qū)動適配插件的歸屬地與所述控制器的歸屬地相同。
通過上述方法,所述分發(fā)器可以保證通過所述至少一個驅(qū)動適配插件中的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,避免由于所述至少一個驅(qū)動適配插件中存在歸屬地與所述控制器的歸屬地不同的驅(qū)動 適配插件時,所述分發(fā)器選擇的目標驅(qū)動適配插件與所述控制歸屬地不同導致的請求消息傳輸失敗的情況,提高了請求消息傳輸?shù)目煽啃浴?/p>
步驟603:所述分組管理器生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系,其中,所述驅(qū)動適配插件組包含所述至少一個驅(qū)動適配插件。
所述分組管理器生成所述控制器與驅(qū)動適配插件組的對應關(guān)系,可以提高后續(xù)所述分發(fā)器查找所述控制器對應的所述至少一個驅(qū)動適配插件的效率,同時,便于所述分組管理器管理和控制所述控制器與驅(qū)動適配插件組的對應關(guān)系。
可選的,在所述分組管理器生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系后,還包括:
所述分組管理器獲取所述至少一個驅(qū)動適配插件的運行狀態(tài)??蛇x的,所述分組管理器可以通過定時獲取所述至少一個驅(qū)動適配插件的運行狀態(tài),或者所述至少一個驅(qū)動適配插件可以定時上報所述至少一個驅(qū)動適配插件的運行狀態(tài),或者,所述至少一個驅(qū)動適配插件確定自身運行狀態(tài)發(fā)生變化時,上報當前自身的運行狀態(tài),本發(fā)明對此不做限定。
通過上述方法,所述分組管理器可以確定所述控制器對應的驅(qū)動適配插件組中每個驅(qū)動適配插件的運行狀態(tài)。在后續(xù)所述分發(fā)器在確定待選驅(qū)動適配插件時,可以根據(jù)所述分組管理器獲取的所述至少一個驅(qū)動適配插件的運行狀態(tài),在所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件。
可選的,所述分組管理器還要對生成的所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系進行后期維護,例如,當所述控制器注銷時,所述分組管理器刪除刪除所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系;驅(qū)動適配插件組中的驅(qū)動適配插件注銷時,刪除所述控制器對應的驅(qū)動適配插件組中的注銷的驅(qū)動適配插件;當所述分發(fā)器根據(jù)所述驅(qū)動適配插件組中的一個目標驅(qū)動適配插件發(fā)送請求消息給所述控制器發(fā)送失敗時,所述分組管理器也可以刪除所述控制 器對應的驅(qū)動適配插件組中的所述目標驅(qū)動適配插件。
可選的,所述分組管理器可以通過上述方法,生成多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系中的每個對應關(guān)系??蛇x的,所述分組管理器可以定期更新多個控制核的信息與驅(qū)動適配插件組的對應關(guān)系,可以在一個控制器或一個驅(qū)動適配插件向ict-o系統(tǒng)注冊時,所述分組管理器針對注冊的所述控制器或所述驅(qū)動適配插件,生成控制器與驅(qū)動適配插件組的對應關(guān)系,本發(fā)明對此也不做限定。
其中,在所述分組管理器根據(jù)驅(qū)動適配插件的類型,篩選驅(qū)動適配插件,進而生成控制器與驅(qū)動適配插件組的對應關(guān)系的情況下,這樣,在新的類型的控制器被開發(fā)出來時,所述分發(fā)器不需要修改或調(diào)整ict網(wǎng)絡(luò)中原有的驅(qū)動適配插件,因此不會中斷業(yè)務(wù),通過所述分組管理器針對該控制器生成的該控制器與驅(qū)動適配插件組的對應關(guān)系,所述分發(fā)器可以在該控制器對應的驅(qū)動適配插件組中選擇一個目標驅(qū)動適配插件向改控制器發(fā)送請求消息,縮短了業(yè)務(wù)處理時延,提高了用戶的體驗。
采用本發(fā)明實施例提供的控制器的信息與驅(qū)動適配插件組的對應關(guān)系生成方法,部署于ict-o系統(tǒng)中的分組管理器在獲取ict網(wǎng)絡(luò)中的一個控制器的信息后,在所述ict網(wǎng)絡(luò)中的多個驅(qū)動適配插件中確定出與所述控制器相連的至少一個驅(qū)動適配插件,并建立所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系,其中,所述驅(qū)動適配插件組包含所述至少一個驅(qū)動適配插件。這樣,由于所述驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述控制器相連,保證所述分發(fā)器通過所述驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
基于以上實施例,本發(fā)明還提供了一種分發(fā)器,該分發(fā)器可以為如圖1和圖2所示的ict網(wǎng)絡(luò)中的ict-o系統(tǒng)中具有分發(fā)功能的模塊。參閱圖7所示,該分發(fā)器700包括:接收單元701、處理單元702,以及發(fā)送單元703,其中,
接收單元701,用于接收請求消息;
處理單元702,用于獲取所述請求消息中包含的第一控制器的信息;
在多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系中,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;
在所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個驅(qū)動適配插件中確定至少一個待選驅(qū)動適配插件,所述至少一個待選驅(qū)動適配插件的運行狀態(tài)為正常;
發(fā)送單元703,用于通過所述至少一個待選驅(qū)動適配插件中的一個待選驅(qū)動適配插件,將所述請求消息發(fā)送至所述第一控制器。
可選的,所述第一控制器的信息為所述第一控制器的路由標識,所述路由標識能夠唯一標識所述第一控制器。
可選的,所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的類型相同。
可選的,所述請求消息中還包含驅(qū)動適配插件的第一類型;
所述處理單元702,還用于:
在所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個驅(qū)動適配插件中確定所述至少一個待選驅(qū)動適配插件之前,獲取所述請求消息中包含的所述第一類型;
所述處理單元702在所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個驅(qū)動適配插件中確定所述至少一個待選驅(qū)動適配插件時,具體用于:
在所述至少一個驅(qū)動適配插件中確定類型與所述第一類型相同,且運行狀態(tài)為正常所述至少一個待選驅(qū)動適配插件。
可選的,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的連接限制數(shù)量相同,且所述第 一驅(qū)動適配插件組中包含的驅(qū)動適配插件的數(shù)量小于或等于所述第一驅(qū)動適配插件組對應的每個控制器的連接限制數(shù)量。
可選的,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的歸屬地與所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的歸屬地相同。
可選的,當所述至少一個待選驅(qū)動適配插件的數(shù)目為多個時,所述處理單元702,還用于:
在所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個驅(qū)動適配插件中確定所述多個待選驅(qū)動適配插件之后,在所述發(fā)送單元通過所述至少一個待選驅(qū)動適配插件中的一個待選驅(qū)動適配插件,將所述請求消息發(fā)送至所述第一控制器之前,通過對所述多個待選驅(qū)動適配插件進行負載均衡處理,確定目標驅(qū)動適配插件,所述目標驅(qū)動適配插件為所述多個待選驅(qū)動適配插件中的一個;
所述發(fā)送單元703,具體用于:
通過所述目標驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。
采用本發(fā)明實施例提供的分發(fā)器,所述分發(fā)器根據(jù)所述請求消息中包含的第一控制器的信息,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器在所述第一驅(qū)動適配插件組包含的所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,最終所述分發(fā)器可以通過一個待選驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。由于所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的至 少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器通過其中一個待選驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述第一控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
基于以上實施例,本發(fā)明還提供了一種分組管理器,該分組管理器可以應用于如圖1和圖2所示的ict網(wǎng)絡(luò)中的ict-o系統(tǒng)中,該分組管理器具有生成控制器的信息與驅(qū)動適配插件組的對應關(guān)系的功能。參閱圖8所示,該分組管理器800包括:處理單元801和生成單元802,其中,
處理單元801,用于獲取控制器的信息;并
在多個驅(qū)動適配插件中,確定出所述控制器對應的至少一個驅(qū)動適配插件,其中,所述控制器與所述至少一個驅(qū)動適配插件相連;
生成單元802,用于生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系,其中,所述驅(qū)動適配插件組包含所述至少一個驅(qū)動適配插件。
可選的,所述控制器的信息為所述控制器的路由標識,所述路由標識能夠唯一標識所述所述控制器。
可選的,所述處理單元801,具體用于:
獲取所述多個驅(qū)動適配插件中每個驅(qū)動適配插件組的類型;
在所述多個驅(qū)動適配插件中確定出類型相同的所述至少一個驅(qū)動適配插件。
可選的,所述至少一個驅(qū)動適配插件的數(shù)量小于或等于所述控制器的連接限制數(shù)量。
可選的,所述至少一個驅(qū)動適配插件的歸屬地與所述控制器的歸屬地相同。
可選的,所述處理單元801,還用于:
在所述生成單元802生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系后,獲取所述至少一個驅(qū)動適配插件的運行狀態(tài)。
采用本發(fā)明實施例提供的分組管理器,所述分組管理器在獲取ict網(wǎng)絡(luò)中的一個控制器的信息后,在所述ict網(wǎng)絡(luò)中的多個驅(qū)動適配插件中篩選出與所述控制器相連的至少一個驅(qū)動適配插件,并建立所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系,其中,所述驅(qū)動適配插件組包含所述至少一個驅(qū)動適配插件。這樣,由于所述驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述控制器相連,保證所述分發(fā)器通過所述驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
需要說明的是,本發(fā)明實施例中對單元的劃分是示意性的,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式。在本申請的實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本申請的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)或處理器(processor)執(zhí)行本申請各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
基于以上實施例,本發(fā)明實施例還提供了一種分發(fā)器,該分發(fā)器可以為如圖1和圖2所示的ict網(wǎng)絡(luò)中的ict-o系統(tǒng)中具有分發(fā)功能的設(shè)備。參閱圖9所示,所述分發(fā)器900包括:收發(fā)器901、處理器902、總線903以及存儲器 904,其中,
所述收發(fā)器901、所述處理器902和所述存儲器904通過所述總線903相互連接;總線903可以是外設(shè)部件互連標準(peripheralcomponentinterconnect,簡稱pci)總線或擴展工業(yè)標準結(jié)構(gòu)(extendedindustrystandardarchitecture,簡稱eisa)總線等。所述總線可以分為地址總線、數(shù)據(jù)總線、控制總線等。為便于表示,圖9中僅用一條粗線表示,但并不表示僅有一根總線或一種類型的總線。
所述收發(fā)器901,用于與所述分發(fā)器900相連的其他設(shè)備進行通信交互。
所述處理器902,用于實現(xiàn)如圖3所示的請求消息傳輸方法,包括:
接收到請求消息后,獲取所述請求消息中包含的第一控制器的信息;
在多個控制器的信息與驅(qū)動適配插件組的對應關(guān)系中,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;
在所述第一驅(qū)動適配插件組中包含與所述第一控制器相連的的所述至少一個驅(qū)動適配插件中確定至少一個待選驅(qū)動適配插件,所述至少一個待選驅(qū)動適配插件的運行狀態(tài)為正常;
通過所述至少一個待選驅(qū)動適配插件中的一個待選驅(qū)動適配插件,將所述請求消息發(fā)送至所述第一控制器。
可選的,所述第一控制器的信息為所述第一控制器的路由標識,所述路由標識能夠唯一標識所述第一控制器。
可選的,所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的類型相同。
可選的,所述請求消息中還包含驅(qū)動適配插件的第一類型;
所述處理器902,還用于:
在所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個驅(qū)動適配插件中確定所述至少一個待選驅(qū)動適配插件之前,獲取所述請求 消息中包含的所述第一類型;
所述處理器902在所述第一驅(qū)動適配插件組中包含的與所述第一控制器相連的所述至少一個驅(qū)動適配插件中確定所述至少一個待選驅(qū)動適配插件時,具體用于:
在所述至少一個驅(qū)動適配插件中確定類型與所述第一類型相同,且運行狀態(tài)為正常的所述至少一個待選驅(qū)動適配插件。
可選的,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的連接限制數(shù)量相同,且所述第一驅(qū)動適配插件組中包含的驅(qū)動適配插件的數(shù)量小于或等于所述第一驅(qū)動適配插件組對應的每個控制器的連接限制數(shù)量。
可選的,在所述多個控制器與驅(qū)動適配插件組的對應關(guān)系中,所述第一驅(qū)動適配插件組對應的多個控制器中每個控制器的歸屬地與所述第一驅(qū)動適配插件組中包含的每個驅(qū)動適配插件的歸屬地相同。
可選的,當所述至少一個待選驅(qū)動適配插件的數(shù)目為多個時,所述處理器902在通過所述至少一個待選驅(qū)動適配插件中的一個待選驅(qū)動適配插件,將所述請求消息發(fā)送至所述第一控制器時,具體用于:
通過對所述多個待選驅(qū)動適配插件進行負載均衡處理,確定目標驅(qū)動適配插件,所述目標驅(qū)動適配插件為所述多個待選驅(qū)動適配插件中的一個;
通過所述目標驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。
存儲器904,用于存放程序等。具體地,程序可以包括程序代碼,該程序代碼包括計算機操作指令。存儲器904可能包含易失性存儲器(英文:volatilememory),例如隨機存取存儲器(英文:random-accessmemory,縮寫:ram);存儲器也可以是非易失性存儲器(英文:non-volatilememory),例如只讀存儲器(英文:read-onlymemory,縮寫:rom),快閃存儲器(英文:flashmemory),硬盤(英文:harddiskdrive,縮寫:hdd)或固態(tài)硬盤(英文:solid-statedrive,縮寫:ssd)、或者存儲器是能夠用于攜帶或存儲具有指令或數(shù)據(jù)結(jié)構(gòu)形式的 期望的程序代碼并能夠由計算機存取的任何其他介質(zhì),但不限于此。存儲器可以是上述存儲器的組合。處理器902執(zhí)行存儲器904所存放的應用程序,實現(xiàn)上述功能,從而實現(xiàn)如圖3所示的請求消息傳輸方法。
采用本發(fā)明實施例提供的分發(fā)器,所述分發(fā)器根據(jù)所述請求消息中包含的第一控制器的信息,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器在所述第一驅(qū)動適配插件組包含的所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,最終所述分發(fā)器可以通過一個待選驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。由于所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器其中一個待選驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述第一控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
基于以上實施例,本發(fā)明實施例還提供了一種分組管理器,該分組管理器可以為如圖1和圖2所示的ict網(wǎng)絡(luò)中的ict-o系統(tǒng)中,該分組管理器具有生成控制器的信息與驅(qū)動適配插件組的對應關(guān)系的功能。參閱圖10所示,所述分組管理器1000包括:收發(fā)器1001、處理器1002、總線1003以及存儲器1004,其中,
所述收發(fā)器1001、所述處理器1002和所述存儲器1004通過所述總線1003相互連接;總線1003可以是外設(shè)部件互連標準(peripheralcomponentinterconnect,簡稱pci)總線或擴展工業(yè)標準結(jié)構(gòu)(extendedindustrystandard architecture,簡稱eisa)總線等。所述總線可以分為地址總線、數(shù)據(jù)總線、控制總線等。為便于表示,圖10中僅用一條粗線表示,但并不表示僅有一根總線或一種類型的總線。
所述收發(fā)器1001,用于與所述分組管理器相連的其他設(shè)備進行通信交互。
所述處理器1002,用于實現(xiàn)如圖6所示的控制器的信息與驅(qū)動適配插件組的對應關(guān)系生成方法,包括:
獲取控制器的信息;
在多個驅(qū)動適配插件中,確定出所述控制器對應的至少一個驅(qū)動適配插件,其中,所述控制器與所述至少一個驅(qū)動適配插件相連;
生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系,其中,所述驅(qū)動適配插件組包含所述至少一個驅(qū)動適配插件。
可選的,所述控制器的信息為所述控制器的路由標識,所述路由標識能夠唯一標識所述所述控制器。
可選的,所述處理器1002在多個驅(qū)動適配插件中,確定出所述控制器對應的至少一個驅(qū)動適配插件時,具體用于:
獲取所述多個驅(qū)動適配插件中每個驅(qū)動適配插件組的類型;
在所述多個驅(qū)動適配插件中確定出類型相同的所述至少一個驅(qū)動適配插件。
可選的,所述至少一個驅(qū)動適配插件的數(shù)量小于或等于所述控制器的連接限制數(shù)量。
可選的,所述至少一個驅(qū)動適配插件的歸屬地與所述控制器的歸屬地相同。
可選的,所述處理器1002,還用于:
在生成所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系后,獲取所述至少一個驅(qū)動適配插件的運行狀態(tài)。
存儲器1004,用于存放程序等。具體地,程序可以包括程序代碼,該程序 代碼包括計算機操作指令。存儲器1004可能包含易失性存儲器(英文:volatilememory),例如隨機存取存儲器(英文:random-accessmemory,縮寫:ram);存儲器也可以是非易失性存儲器(英文:non-volatilememory),例如只讀存儲器(英文:read-onlymemory,縮寫:rom),快閃存儲器(英文:flashmemory),硬盤(英文:harddiskdrive,縮寫:hdd)或固態(tài)硬盤(英文:solid-statedrive,縮寫:ssd)、或者存儲器是能夠用于攜帶或存儲具有指令或數(shù)據(jù)結(jié)構(gòu)形式的期望的程序代碼并能夠由計算機存取的任何其他介質(zhì),但不限于此。存儲器可以是上述存儲器的組合。處理器1002執(zhí)行存儲器1004所存放的應用程序,實現(xiàn)上述功能,從而實現(xiàn)如圖6所示的控制器的信息與驅(qū)動適配插件組的對應關(guān)系生成方法。
采用本發(fā)明實施例提供的分組管理器,所述分組管理器在獲取ict網(wǎng)絡(luò)中的一個控制器的信息后,在所述ict網(wǎng)絡(luò)中的多個驅(qū)動適配插件中篩選出與所述控制器相連的至少一個驅(qū)動適配插件,并建立所述控制器的信息與驅(qū)動適配插件組的對應關(guān)系,其中,所述驅(qū)動適配插件組包含所述至少一個驅(qū)動適配插件。這樣,由于所述驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述控制器相連,保證所述分發(fā)器通過所述驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將請求消息傳輸至所述控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃浴?/p>
本發(fā)明實施例提供了一種請求消息傳輸方法及裝置,在該方法中,部署于ict-o系統(tǒng)中的分發(fā)器在接收到一個請求消息后,根據(jù)所述請求消息中包含的第一控制器的信息,確定所述第一控制器的信息對應的第一驅(qū)動適配插件組,其中,所述第一控制器與所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件相連;所述分發(fā)器在所述第一驅(qū)動適配插件組包含的所述至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,最終所述分發(fā)器可以通過一個待選驅(qū)動適配插件將所述請求消息發(fā)送至所述第一控制器。由 于所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件均與所述第一控制器相連,保證所述分發(fā)器通過所述第一驅(qū)動適配插件組中包含的任意一個驅(qū)動適配插件,都可以成功將所述請求消息傳輸至所述第一控制器,降低了由于控制器與驅(qū)動適配插件沒有連接導致的請求消息傳輸失敗的概率,提高了請求消息傳輸?shù)目煽啃?,另外,所述分發(fā)器在所述第一驅(qū)動適配插件組中包含的至少一個驅(qū)動適配插件中篩選出運行狀態(tài)為正常的至少一個待選驅(qū)動適配插件,進一步保證了所述分發(fā)器通過選擇的目標驅(qū)動適配插件,可以成功將所述請求消息傳輸至所述第一控制器,避免了由于驅(qū)動適配插件運行異常導致請求消息傳輸失敗的情況。
本領(lǐng)域內(nèi)的技術(shù)人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、cd-rom、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使 得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明實施例進行各種改動和變型而不脫離本發(fā)明實施例的精神和范圍。這樣,倘若本發(fā)明實施例的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。