System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及計算機,特別是涉及一種網關確定方法、裝置、計算機設備和存儲介質。
技術介紹
1、計算機網絡中的數據包紛繁復雜,但是卻亂中有序,它們可以根據不同的屬性劃分為不同的數據流,例如網際互連協議(internet?protocol,ip),媒體存取控制位址(media?access?control?address,mac位址)等。在云計算領域內一個虛擬私有云(virtualprivate?cloud,vpc)會擁有多個網關,可以根據路由規則和數據包的目的地址負責將不同的數據包送入對應的網關。
2、傳統技術中,流量出公網在云計算領域中是一個很常見的需求,為了節省費用,用戶通常會在自己的vpc中創建一個網絡地址轉換網關(network?address?translation,nat網關),并且將自己的彈性網絡地址(elastic?ip,eip)綁定到nat網關上,并配置路由下一跳為nat網關,數據包由此通過nat網關從私網ip轉為公網ip,實現和公網通信。而對于預算充足且對性能要求較高的客戶,會將自己的eip直接綁定在單獨一個虛機上,并配置一個下一跳為互聯網網關(internet?gateway,igw)的路由。
3、雖然可以通過該方式完成下一跳網關的選取,但當為nat網關和igw配置的路由均相同時,就會產生路由重疊,例如一個子網中存在兩個0.0.0.0/0的路由,下一跳分別為nat網關和igw,因此,存在網關選取不準確的問題。
技術實現思路
1、基于此,有必要
2、第一方面,本申請提供了一種網關確定方法,包括:
3、根據待傳輸數據所屬目標虛擬網卡的協議地址,確定預設關聯流表中是否存在包含協議地址的目標關聯表項;預設關聯流表用于指示目標虛擬網卡是否關聯有彈性網絡地址;
4、若存在,則根據目標關聯表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關;
5、若不存在,則根據目標虛擬網卡的協議地址和目標虛擬網卡的路由地址,確定待傳輸數據的目標網關。
6、在其中一個實施例中,目標關聯表項中還包括路由匹配條件;根據目標關聯表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關,包括:
7、根據目標關聯表項,從預設路由流表中匹配滿足路由匹配條件的目標路由表項;
8、根據目標路由表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關。
9、在其中一個實施例中,路由匹配條件包括第一寄存器置位和第二寄存器置位;第二寄存器置位為虛擬網絡標識;相應的,根據目標關聯表項,從預設路由流表中匹配滿足路由匹配條件的目標路由表項,包括:
10、將目標關聯表項中的第一寄存器置位,更新為地址關聯標識;
11、根據地址關聯標識和虛擬網絡標識,從預設路由流表中匹配包含地址關聯標識和虛擬網絡標識的目標路由表項。
12、在其中一個實施例中,根據目標路由表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關,包括:
13、獲取目標路由表項中的網關標識和網關地址;
14、根據網關標識、網關地址和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關。
15、在其中一個實施例中,若存在至少兩類目標網關,則方法還包括:
16、在各目標網關的路由地址均相同的情況下,從各目標網關中選取出互聯網關,并獲取互聯網關的網關描述信息;
17、根據互聯網關的網關描述信息,生成預設路由流表中的路由表項。
18、在其中一個實施例中,預設關聯流表采用以下方式生成:
19、根據參考虛擬網卡的網卡描述信息,確定參考虛擬網卡是否關聯有彈性網絡地址;
20、針對關聯有彈性網絡地址的參考虛擬網卡,根據參考虛擬網卡的協議地址,生成參考虛擬網卡對應的參考關聯表項;
21、將關聯有彈性網絡地址的參考虛擬網卡對應的參考關聯表項進行組合,得到預設關聯流表。
22、第二方面,本申請還提供了一種網關確定裝置,包括:
23、關聯確定模塊,用于根據待傳輸數據所屬目標虛擬網卡的協議地址,確定預設關聯流表中是否存在包含協議地址的目標關聯表項;預設關聯流表用于指示目標虛擬網卡是否關聯有彈性網絡地址;
24、網關確定模塊,用于若存在,則根據目標關聯表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關;若不存在,則根據目標虛擬網卡的協議地址和目標虛擬網卡的路由地址,確定待傳輸數據的目標網關。
25、第三方面,本申請還提供了一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,所述處理器執行所述計算機程序時實現以下步驟:
26、根據待傳輸數據所屬目標虛擬網卡的協議地址,確定預設關聯流表中是否存在包含協議地址的目標關聯表項;預設關聯流表用于指示目標虛擬網卡是否關聯有彈性網絡地址;
27、若存在,則根據目標關聯表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關;
28、若不存在,則根據目標虛擬網卡的協議地址和目標虛擬網卡的路由地址,確定待傳輸數據的目標網關。
29、第四方面,本申請還提供了一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現以下步驟:
30、根據待傳輸數據所屬目標虛擬網卡的協議地址,確定預設關聯流表中是否存在包含協議地址的目標關聯表項;預設關聯流表用于指示目標虛擬網卡是否關聯有彈性網絡地址;
31、若存在,則根據目標關聯表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關;
32、若不存在,則根據目標虛擬網卡的協議地址和目標虛擬網卡的路由地址,確定待傳輸數據的目標網關。
33、第五方面,本申請還提供了一種計算機程序產品,包括計算機程序,該計算機程序被處理器執行時實現以下步驟:
34、根據待傳輸數據所屬目標虛擬網卡的協議地址,確定預設關聯流表中是否存在包含協議地址的目標關聯表項;預設關聯流表用于指示目標虛擬網卡是否關聯有彈性網絡地址;
35、若存在,則根據目標關聯表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關;
36、若不存在,則根據目標虛擬網卡的協議地址和目標虛擬網卡的路由地址,確定待傳輸數據的目標網關。
37、上述網關確定方法、裝置、計算機設備和存儲介質,根據待傳輸數據所屬目標虛擬網卡的協議地址,確定預設關聯流表中是否存在包含協議地址的目標關聯表項;預設關聯流表用于指示目標虛擬網卡是否關聯有彈性網絡地址;若存在,則根據目標關聯表項和目標虛擬網卡對應的路由地址,確定待傳輸數據的目標網關;若不存在,則根據目標虛擬網卡的協議地址和目標虛擬網卡的路由地址,確定待傳輸數據的目標網關。本實施例中通過設置預設本文檔來自技高網...
【技術保護點】
1.一種網關確定方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述目標關聯表項中還包括路由匹配條件;所述根據所述目標關聯表項和所述目標虛擬網卡對應的路由地址,確定所述待傳輸數據的目標網關,包括:
3.根據權利要求2所述的方法,其特征在于,所述路由匹配條件包括第一寄存器置位和第二寄存器置位;所述第二寄存器置位為虛擬網絡標識;相應的,所述根據所述關聯表項,從預設路由流表中匹配滿足所述路由匹配條件的目標路由表項,包括:
4.根據權利要求2所述的方法,其特征在于,所述根據所述目標路由表項和所述目標虛擬網卡對應的路由地址,確定所述待傳輸數據的目標網關,包括:
5.根據權利要求1-4任一項所述的方法,其特征在于,若存在至少兩類目標網關,則所述方法還包括:
6.根據權利要求1-4任一項所述的方法,其特征在于,所述預設關聯流表采用以下方式生成:
7.一種網關確定裝置,其特征在于,所述裝置包括:
8.一種計算機設備,包括存儲器和處理器,所述存儲器存儲有計算機程序,其特征在于,所述處理器
9.一種計算機可讀存儲介質,其上存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現權利要求1至6中任一項所述的方法的步驟。
10.一種計算機程序產品,包括計算機程序,其特征在于,該計算機程序被處理器執行時實現權利要求1至6中任一項所述的方法的步驟。
...【技術特征摘要】
1.一種網關確定方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述目標關聯表項中還包括路由匹配條件;所述根據所述目標關聯表項和所述目標虛擬網卡對應的路由地址,確定所述待傳輸數據的目標網關,包括:
3.根據權利要求2所述的方法,其特征在于,所述路由匹配條件包括第一寄存器置位和第二寄存器置位;所述第二寄存器置位為虛擬網絡標識;相應的,所述根據所述關聯表項,從預設路由流表中匹配滿足所述路由匹配條件的目標路由表項,包括:
4.根據權利要求2所述的方法,其特征在于,所述根據所述目標路由表項和所述目標虛擬網卡對應的路由地址,確定所述待傳輸數據的目標網關,包括:
5.根據權利要求1-4任一項所述的方法...
【專利技術屬性】
技術研發人員:吉浩瑋,董俠飛,施凱東,張帆,任帥,
申請(專利權)人:天翼云科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。