麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

信息處理方法、處理節點及網絡節點與流程

文檔序號:11254038閱讀:1125來源:國知局
信息處理方法、處理節點及網絡節點與流程
本發明涉及網絡
技術領域
,尤其涉及一種信息處理方法、處理節點及網絡節點。
背景技術
:在云平臺中等網絡平臺,虛擬機發送的數據局包,需要通過網絡節點上的虛擬路由器進行源地址轉換(sourcenetworkaddresstranslation,snat)之后,轉發到外網。這樣雖然實現了將平臺內虛擬機發送的數據包順利的通過源地址轉換到外網,但是snat由網絡節點進行,這樣就會導致網絡節點的超載的現象,并導致數據傳輸的效率低。與此同時,在進行snat時,需要為每一個虛擬機分配為一個將數據包轉發到外網的公網網絡協議(internetprotocol,ip)地址,需要使用的ip地址多,導致外網ip地址緊張。技術實現要素:有鑒于此,本發明實施例期望提供的信息處理方法、處理節點及網絡節點,可至少部分解決上述問題。為達到上述目的,本發明的技術方案是這樣實現的:本發明實施例第一方面提供一種信息處理方法,包括:計算節點接收待轉發的數據包;獲取所述數據包對應的會話信息,其中,所述會話信息至少包括:虛擬機的虛機網絡協議ip地址、虛機端口號、公網ip地址和公網端口號;根據所述會話信息,進行數據包從虛擬機所在私網與公網之間所述數據包傳輸的地址轉換;在完成所述地址轉換之后,轉發所述數據包。基于上述方案,所述獲取所述數據包對應的會話信息,包括:當所述計算節點接收到所述虛擬機向外轉發的數據包時,向網絡節點發送會話申請;接收所述網絡節點響應所述會話申請為所述虛擬機分配的所述公網ip地址和公網端口號;記錄所述虛機ip地址、所述虛機端口號、所述公網ip地址和所述公網端口號,以形成所述會話信息。基于上述方案,所述根據所述會話信息,進行數據包從虛擬機所在內網與外網之間數據包傳輸的地址轉換,包括:將所述虛擬機發送給所述公網的數據包中攜帶的所述虛機ip地址及所述虛機端口號,替換為所述公網ip地址和所述公網端口號;和/或,將所述公網發送的數據包中攜帶的所述公網ip地址和所述公網端口號,替換成所述虛機ip地址及所述虛機端口號。基于上述方案,所述會話信息中還包括:所述虛擬機所在的虛擬局域網的虛擬局域網標識;其中,在所述私網內,所述虛擬局域網標識、所述虛擬機的虛機ip地址及所述虛機端口號,能夠唯一標識所述虛擬機;在所述私網內,所述公網ip地址和所述公網端口號,能夠唯一標識所述虛擬機。基于上述方案,所述方法還包括:當所述計算節點接收到所述外網發送給虛擬機的數據包時,根據所述數據包中攜帶的所述公網ip地址及端口號查詢所述會話信息,確定待接收數據包的虛擬機;將所述外網發送給虛擬機的數據包轉發給確定的所述虛擬機。本發明實施例第二方面提供一種信息處理方法,包括:網絡節點為虛擬機分配公網ip地址及公網端口號,其中,所述公網ip地址及所述公網端口號在所述虛擬機所在的私網內,能夠唯一標識所述虛擬機;將所述公網ip地址和公網端口號,發送給所述虛擬機所在的計算節點;其中,所述公網ip地址及所述公網端口號,所述虛擬機的虛機ip地址及虛機端口號,共同形成用于地址轉換的會話信息。基于上述方案,所述方法還包括:接收所述計算機節點在所述虛擬機需要向公網發送數據包時,發送的會話申請;所述為虛擬機分配公網ip地址及公網端口號,包括:根據所述會話申請,為所述虛擬機分配為所述公網ip地址及所述公網端口號。基于上述方案,所述方法還包括:對應記錄所述公網ip地址、所述公網端口號及所述虛擬機所在計算節點的地址,形成流表;將所述流表下發給所述私網與公網之間進行數據轉換的交換機。本發明實施例第三方面提供一種計算節點,包括:第一接收單元,用于接收待轉發的數據包;獲取單元,用于獲取所述數據包對應的會話信息,其中,所述會話信息至少包括:虛擬機的虛機ip地址、虛機端口號、公網ip地址和公網端口號;轉換單元,用于根據所述會話信息,進行數據包從虛擬機所在私網與公網之間所述數據包傳輸的地址轉換;第一發送單元,用于在完成所述地址轉換之后,轉發所述數據包。基于上述方案,所述獲取單元,用于當所述計算節點接收到所述虛擬機向外轉發的數據包時,向網絡節點發送會話申請;所述第一接收單元,還用于接收網絡節點響應所述會話申請為所述虛擬機分配的所述公網ip地址和公網端口號;所述計算節點還包括:第一記錄單元,用于記錄所述虛機ip地址、所述虛機端口號、所述公網ip地址和所述公網端口號,以形成所述會話信息。基于上述方案,所述轉換單元,具體用于將所述虛擬機發送給所述公網的數據包中攜帶的所述虛機ip地址及所述虛機端口號,替換為所述公網ip地址和所述公網端口號;和/或,將所述公網發送的數據包中攜帶的所述公網ip地址和所述公網端口號,替換成所述虛機ip地址及所述虛機端口號。基于上述方案,所述會話信息中還包括:所述虛擬機所在的虛擬局域網的虛擬局域網標識;其中,在所述私網內,所述虛擬局域網標識、所述虛擬機的虛機ip地址及所述虛機端口號,能夠唯一標識所述虛擬機;在所述私網內,所述公網ip地址和所述公網端口號,能夠唯一標識所述虛擬機。基于上述方案,所述計算節點還包括:確定單元,用于當所述計算節點接收到所述外網發送給虛擬機的數據包時,根據所述數據包中攜帶的所述公網ip地址及端口號查詢所述會話信息,確定待接收數據包的虛擬機;所述第一發送單元,用于將所述外網發送給虛擬機的數據包轉發給確定的所述虛擬機。本發明實施例第四方面提供一種網絡節點,包括:分配單元,用于為虛擬機分配公網ip地址及公網端口號,其中,所述公網ip地址及所述公網端口號在所述虛擬機所在的私網內,能夠唯一標識所述虛擬機;第二發送單元,用于將所述公網ip地址和公網端口號,發送給所述虛擬機所在的計算節點;其中,所述公網ip地址及所述公網端口號,所述虛擬機的虛機ip地址及虛機端口號,共同形成用于地址轉換的會話信息。基于上述方案,所述網絡節點還包括:第二接收單元,用于接收所述計算機節點在所述虛擬機需要向公網發送數據包時,發送的會話申請;所述分配單元,具體用于根據所述會話申請,為所述虛擬機分配為所述公網ip地址及所述公網端口號。基于上述方案,所述網絡節點還包括:第二記錄單元,用于對應記錄所述公網ip地址、所述公網端口號及所述虛擬機所在計算節點的地址,形成流表;所述第二發送單元,還用于將所述流表下發給所述私網與公網之間進行數據轉換的交換機。本發明實施例提供的信息處理方法、處理節點及網絡節點,在進行地址轉換時,還引入了虛機端口號和公網端口號。一個公網ip地址最多可對應65536個端口號,一個公網ip地址和一個公網端口號分配給一臺虛擬機,相當于將一個公網ip地址分配給一個虛擬機,顯然可以大大減少私網和公網數據包交互過程中所需的ip地址,提升了ip地址的有效使用率,在不增加ip地址的情況下,實現了對私網內虛擬機的數量的增加,從而實現了私網的擴容。于此同時,地址轉換轉而由每一個設置有虛擬機的計算節點進行,不在由數量相對較少的網絡節點進行,從而實現了地址轉換的分散式處理,減少了網絡節點擁堵導致的地址轉換慢及數據轉發效率低的問題;具有地址轉換效率高及數據包轉發效率高的特點。附圖說明圖1為本發明實施例提供的第一種信息處理方法的流程示意圖;圖2為本發明實施例提供的第二種信息處理方法的流程示意圖;圖3為本發明實施例提供的第三種信息處理方法的流程示意圖;圖4為本發明實施例提供的一種計算節點的結構示意圖;圖5為本發明實施例提供的一種網絡節點的結構示意圖;圖6為本發明實施例提供的第四種信息處理方法的流程示意圖;圖7為本發明實施例提供的第五種信息處理方法的流程示意圖。具體實施方式以下結合說明書附圖及具體實施例對本發明的技術方案做進一步的詳細闡述。如圖1所示,本實施例提供一種信息處理方法,應用于計算節點中,包括:步驟s110:接收待轉發的數據包;步驟s120:獲取所述數據包對應的會話信息,其中,所述會話信息至少包括:虛擬機的虛機ip地址、虛機端口號、公網ip地址和公網端口號;步驟s130:根據所述會話信息,進行數據包從虛擬機所在私網與公網之間所述數據包傳輸的地址轉換;步驟s140:在完成所述地址轉換之后,轉發所述數據包。本實施例所述的計算節點可為設置有所述虛擬機的處理節點。該計算節點可為提供計算資源及存儲資源的服務器或電子設備。在本實施例中所述計算節點上可以設置一臺或多臺虛擬機,通常情況下,一個計算節點都會設置兩臺或兩臺以上的虛擬機。在本實施例中由計算節點來進行公網地址和私網地址的轉換,而非網絡節點進行地址轉換,相當于將由整個計算平臺中的一個或少數幾個網絡節點的地址轉換負荷轉移到各個計算節點身上。通常情況下,一個計算平臺中所述計算節點的個數會多于所述網絡節點的個數。這樣的話,顯然減輕了網絡節點的負荷,減少了所有地址轉換都集中在網絡節點上導致的地址轉換時延大,進而導致的數據包轉發時延大的問題。在本實施例中所述計算機節點可能會接收到外網轉發給虛擬機的數據包,也可能會接收到虛擬機轉換給數據包。總之,不管是數據包需要轉發給虛擬機還是虛擬機的數據包轉發給外網,都會經過計算節點。在本實施例步驟s110中接收的待轉發的數據包可能來自外網,也可以能來自私網。在本實施例中所述外網和私網可能會通過路由器或交換機進行隔離。由于外網和私網的隔離,在私網內數據包基于私網的ip地址進行轉發,在公網內數據包基于公網ip地址進行轉發。一個私網可能僅設置一個或少量的公網地址。這里的私網ip地址即為前述的虛機ip地址。在步驟s120中會獲取該數據包的會話信息,該會話信息中除了該數據包的虛機ip地址和私網ip地址以外,還包括虛擬機端口號及公網端口。通常不同的端口號可以共用一個ip地址。一個虛擬機通常連接到一個虛擬機端口號上。多個公網端口也可能共用一個公網ip地址,不同的虛擬機可能會通過不同的公網端口對外發數據包或接收數據包。這里的獲取會話信息,可包括:從網絡節點接收該數據包的會話信息,或該數據包對應的虛擬機的會話信息;若計算節點事先存儲了會話信息,則可以在本地查詢該會話信息。例如,在計算節點中專門設置了一個命名空間,該命名空間包括一個或多個存儲區域。該命名空間內存儲有各種繪畫信息,可用于snat。在本實施例中的地址轉換即為所述源地址轉換,即將數據包中的源地址進行替換。例如,虛擬機發送到外網的數據包的源地址,由虛擬機在私網的地址轉換成外網地址。在本實施例中所述snat時,不僅涉及ip地址轉換,還包括源端口轉換。例如,將虛擬機端口號轉換為虛擬機的外網端口號。由于一個端口號會對應于多個ip地址,一個ip地址也可能會對應于多個端口號;但是一個ip地址和一個端口號的組合,可以唯一標識一臺所述虛擬機。這樣的話,在進行sant時,不僅進行ip地址的轉換,而且進行端口號的轉換,這樣的話,在ip地址有限的情況下,多臺虛擬機可以共用一個公網ip地址和一個虛機ip地址,僅需連接在不同的公網端口號及虛擬機端口號即可,顯然可以在不增加ip地址的情況下,增加私網內的虛擬機太熟,從而達到虛擬機擴容的效果。在本實施例中在獲取到會話信息之后,會根據會話信息進行地址轉換。在本實施例中所述地址轉換可為公網到私網的地址轉換,也可以是私網到公網的地址轉換。在完成地址轉換之后,計算節點會將待轉發的數據包轉發到對應的節點上。例如,將需要轉發到外網的數據包,轉發給交換機,由交換機將已經完成源地址替換的數據包轉發到外網。再例如,所述計算節點也可以將需要轉發給虛擬機的數據包完成地址轉換之后,轉發數據包,由于進行了源地址轉換,該數據包自動會根據虛機ip地址及虛擬機端口號,通過對應的虛擬機端口號尋址到對應的虛擬機,完成數據包的轉發。總之,在本實施例中首先由計算節點進行數據包snat,使得sant的負荷分散到各個計算節點,而非集中在網絡節點,從而減少了網絡節點的擁塞,從而減少了因網絡節點擁塞導致的轉發時延大的問題;與此同時,由于進行snat時,引入了端口號,這樣的話,使得計算平臺內多臺虛擬機可以共用一個虛機ip地址和一個公網ip地址,從而實現了私網內虛擬機的擴容,減少了ip地址的使用。在一些實施例中,所述公網ip地址及公網端口號可以是靜態分配的,一旦分配除非虛擬機取消等異常情況,所述虛機ip地址、虛擬機端口號、公網ip地址及公網端口號一般不會發生變化。在本實施例中一方面為了再次提升ip地址和端口號的有效利用率,會采用動態分配的方式分配公網ip地址及公網端口號。以下提供一種公網ip地址和公網端口號的分配方式,如圖2所示,所述步驟s120可包括:步驟s121:當所述計算節點接收到所述虛擬機向外轉發的數據包時,向網絡節點發送會話申請;步驟s122:接收所述網絡節點響應所述會話申請為所述虛擬機分配的所述公網ip地址和公網端口號;步驟s123:記錄所述虛機ip地址、所述虛機端口號、所述公網ip地址和所述公網端口號,以形成所述會話信息。在本實施例中所述計算機節點接收到一個虛擬機向外轉發的數據包(即向外網轉發數據包)時,向網絡節點發送會話申請。通常該會話申請中會攜帶虛機ip地址和虛機端口號;這樣方便網絡節點記錄,將公網ip地址和公網端口號分配給了哪些一個虛擬機及該虛擬機對應的虛機端口號。網絡節點接收到該會話申請之后,會根據當前公網ip地址和公網端口號的分配情況,將當前可用的公網ip地址和公網端口號分配給對應的虛擬機。網絡節點完成分配之后,會將分配的公網ip地址和公網端口號返回給計算節點,這樣的話,計算節點就會接收到會話申請返回的公網ip地址及公網端口號。在本實施例中計算機節點可能在一個時刻點會向網絡節點發送不同虛擬機的多個會話申請,為了方便計算節點的區分,所述網絡節點返回的信息中,不僅可以攜帶所述公網ip地址和公網端口號,還會攜帶對應的虛機ip地址和虛機端口號。在步驟s123中計算節點會對應記錄所述虛機ip地址、所述虛機端口號、所述公網ip地址和所述公網端口號,形成所述會話信息。在本實施例中所述計算節點可存儲在前述命名空間內。在虛擬機向外發送數據包時,計算節點存儲了有所述會話信息,虛擬機的數據包發送出去之后,可能會接收到外網返回的數據包,由于虛擬機在向外發送數據包時,已經形成了會話信息,故計算節點在向虛擬機發送數據包時,可以在本地進行查詢即可,不需要再次向網絡節點進行查詢。外網的數據包接入計算平臺(如云平臺)的轉發節點(如交換機)之后,所述交換機會根據數據包中目的地址中的公網ip地址及公網端口號轉發給對應的計算節點,這樣計算節點就會接收到基于公網ip地址和公網端口號為目的地址轉發的數據包,再基于其內部存儲的會話信息或從網絡平臺查詢的會話信息,確定出該帶轉發的數據包對應的虛擬機,并將數據包直接轉發給對應的虛擬機。具體如,所述方法還包括:當所述計算節點接收到所述外網發送給虛擬機的數據包時,根據所述數據包中攜帶的所述公網ip地址及端口號查詢所述會話信息,確定待接收數據包的虛擬機;將所述外網發送給虛擬機的數據包轉發給確定的所述虛擬機。當然,在本實施例中所述公網ip地址和公網端口號是有一定的時效的,若超過時效,則該公網ip地址和公網端口號被網絡節點失效,對應的虛擬機不再使用該公網ip地址和公網端口號的權限,若需要再次使用則需要再次申請分配。當然上述方法可以用于靜態分配方式的首次公網ip地址和公網端口號的分配,也可以用于動態分配方式中的每一次公網ip地址及公網端口號的分配。當虛擬機向外網發送包時,所述步驟s130可包括:將所述虛擬機發送給所述公網的數據包中攜帶的所述虛機ip地址及所述虛機端口號,替換為所述公網ip地址和所述公網端口號;當外網向虛擬機發送數據包時,所述步驟s130可包括:將所述公網發送的數據包中攜帶的所述公網ip地址和所述公網端口號,替換成所述虛機ip地址及所述虛機端口號。在有些實施例中,當接收到外網發送的數據包時,計算節點不做snat,直接通過查詢所述會話消息,轉發給對應的虛擬機即可。在一些實施例中,所述會話信息中還包括:所述虛擬機所在的虛擬局域網的虛擬局域網標識;其中,在所述私網內,所述虛擬局域網標識、所述虛擬機的虛機ip地址及所述虛機端口號,能夠唯一標識所述虛擬機;在所述私網內,所述公網ip地址和所述公網端口號,能夠唯一標識所述虛擬機。在本實施例中為了進一步提升私網ip地址的有效使用率,在本實施例中還引入了虛擬局域網標識(vxlanid),這樣的話,在私網內還可以通過vxlanid進一步區分虛擬機,兩臺虛擬機的虛機ip地址、虛機端口號及vxlanid這三個信息只要一個不同,就可以用于區分虛擬機,顯然,再次提升了一個虛機ip地址對應的虛擬機的臺數,再次提升了虛機ip地址的有效使用率,實現了在保持私網內虛機ip地址不變的情況下,增加了私網內可設置的虛擬機的臺數。在一些情況下,所述方法還包括:判斷所述計算節點當前的負載率;若所述負載率大于預設閾值時,則將待轉發的數據包轉發給網絡節點,這樣的話,可以由網絡節點進行基于虛擬機的虛機ip地址、虛機端口號、公網ip地址和公網端口號或虛擬機的虛機ip地址、虛擬局域網標識、虛機端口號、公網ip地址和公網端口號,進行snat,以避免計算節點負載過大時導致的擁堵問題,導致的數據包轉發延時。這樣的話,網絡節點和計算節點之間可以相互轉移負載,盡可能提升數據包的轉發效率。在一些實施例中,若所述網絡節點當前負載率比較低,則所述網絡節點可向計算節點發送對應的通知;則在上述實施例中,所述若所述負載率大于預設閾值時,則將待轉發的數據包轉發給網絡節點,可包括:當接收到指示網絡節點負載率低于指定值時發送的通知,且當前計算節點的負載率高于預定閾值時,將待轉發的數據包發送給網絡節點。如圖3所示,本實施例提供一種信息處理方法,應用于網絡節點中,包括:步驟s210:為虛擬機分配公網ip地址及公網端口號,其中,所述公網ip地址及所述公網端口號在所述虛擬機所在的私網內,能夠唯一標識所述虛擬機;步驟s220:將所述公網ip地址和公網端口號,發送給所述虛擬機所在的計算節點;其中,所述公網ip地址及所述公網端口號,所述虛擬機的虛機ip地址及虛機端口號,共同形成用于地址轉換的會話信息。在本實施例中所述網絡節點,不僅會為虛擬機分配公網ip地址和公網端口號,還會將對應的分配的公網ip地址和公網端口號返回給計算節點,由計算節點保存,用于進行snat。在一些情況下,所述步驟s220中可以僅向計算節點返回公網ip地址及公網端口號,由計算節點基于本次會話的會話標識,自動形成至少包括虛擬ip地址、虛機端口號、公網ip地址和公網端口號的會話信息。在一些實施例中,所述網絡節點也可以直接形成所述會話信息返回給計算節點,這樣計算節點直接存儲即可。在本實施例中所述網絡節點會向計算節點發送公網ip地址和公網端口號,可方便計算節點自身進行snat,一方面減少網絡節點的負荷,一方面進行snat時還基于虛機端口號和公網端口號進行,則可以在不進行虛機ip地址和公網ip地址增加的情況下,實現虛機的擴容。在一些實施例中,所述方法還包括:接收所述計算機節點在所述虛擬機需要向公網發送數據包時,發送的會話申請;所述步驟s210,包括:根據所述會話申請,為所述虛擬機分配為所述公網ip地址及所述公網端口號。在本實施例中計算節點會在接收到虛擬機轉發給外網的數據包時發送的會話申請,在接收到會話申請之后分配所述公網ip地址及公網端口號。在一些實施例中,如圖3所示,所述方法還包括:步驟s230.:對應記錄所述公網ip地址、所述公網端口號及所述虛擬機所在計算節點的地址,形成流表;步驟s240:將所述流表下發給所述私網與公網之間進行數據轉換的交換機。在本實施例中所述網絡節點還會形成流表,該流表至少包括公網ip地址、公網端口號及計算節點的地址。通過將流表轉發給交換機,這樣交換機在接收到外網轉發的數據包時,就可以根據目的地址轉發到對應的計算節點上。所述計算節點的地址可為所述計算節點的媒體訪問控制(mac)地址,也可以是所述計算節點的私網ip地址。在本實施中用于交換機轉換的流表至少包括:公網ip地址、公網端口號及計算節點的ip地址,引入了公網端口號。在一些實施例中,所述方法還包括:當網絡節點的負載率低于指定值時,可以向計算節點發送通知,以便計算節點在負載很高時,向網絡節點轉移進行snat的負載,從而確保數據包的轉發效率。如圖4所示,本實施例提供一種計算節點,包括:第一接收單元110,用于接收待轉發的數據包;獲取單元120,用于獲取所述數據包對應的會話信息,其中,所述會話信息至少包括:虛擬機的虛機ip地址、虛機端口號、公網ip地址和公網端口號;轉換單元130,用于根據所述會話信息,進行數據包從虛擬機所在私網與公網之間所述數據包傳輸的地址轉換;第一發送單元140,用于在完成所述地址轉換之后,轉發所述數據包。在本實施例中所述第一接收單元110,可對應于網絡接口,可用于接收到外網轉發的數據包,也可以對應于內網的數據總線,接收來自虛擬機的數據包。所述獲取單元120及轉換單元130,可對應于計算節點內的處理器或處理電路。所述處理器可包括中央處理器、微處理器、數字信號處理器、應用處理器或可編程陣列。所述處理電路可為專用集成電路。所述處理器或處理電路,可用于通過執行預定指令,可在本地查詢獲得會話信息,或從網絡節點獲得會話信息。所述第一發送單元140,同樣可對應于網絡接口或內部數據總線,可以用于數據包的轉發。可選地,所述獲取單元120,用于當所述計算節點接收到所述虛擬機向外轉發的數據包時,向網絡節點發送會話申請;所述第一接收單元110,還用于接收網絡節點響應所述會話申請為所述虛擬機分配的所述公網ip地址和公網端口號;所述計算節點還包括:第一記錄單元,用于記錄所述虛機ip地址、所述虛機端口號、所述公網ip地址和所述公網端口號,以形成所述會話信息。本實施例中還設置有第一記錄單元,第一記錄單元可對應于計算機存儲介質,可用于記錄所述會話信息。可選地,所述轉換單元130,具體用于將所述虛擬機發送給所述公網的數據包中攜帶的所述虛機ip地址及所述虛機端口號,替換為所述公網ip地址和所述公網端口號。可選地,所述轉換單元130,還可用于將所述公網發送的數據包中攜帶的所述公網ip地址和所述公網端口號,替換成所述虛機ip地址及所述虛機端口號。所述轉換單元130既可以進行外網數據包到虛擬機的snat,也可以進行虛擬機數據包到外網數據的snat。可選地,所述會話信息中還包括:所述虛擬機所在的虛擬局域網的虛擬局域網標識;其中,在所述私網內,所述虛擬局域網標識、所述虛擬機的虛機ip地址及所述虛機端口號,能夠唯一標識所述虛擬機;在所述私網內,所述公網ip地址和所述公網端口號,能夠唯一標識所述虛擬機。在本實施例中所述會話信息,會話信息中還可包括虛擬局域網標識,通過虛擬局域網標識,可對私網內的虛機進行進一步擴容。可選地,所述計算節點還包括:確定單元,用于當所述計算節點接收到所述外網發送給虛擬機的數據包時,根據所述數據包中攜帶的所述公網ip地址及端口號查詢所述會話信息,確定待接收數據包的虛擬機;所述第一發送單元140,還用于將所述外網發送給虛擬機的數據包轉發給確定的所述虛擬機。在本實施例中計算節點轉發外網來的數據包時,不做地址轉換,直接通過查詢會話信息進行轉發,可以再次提升數據包的轉發效率。如圖5所示,本實施例提供一種網絡節點,包括:分配單元210,用于為虛擬機分配公網ip地址及公網端口號,其中,所述公網ip地址及所述公網端口號在所述虛擬機所在的私網內,能夠唯一標識所述虛擬機;第二發送單元220,用于將所述公網ip地址和公網端口號,發送給所述虛擬機所在的計算節點;其中,所述公網ip地址及所述公網端口號,所述虛擬機的虛機ip地址及虛機端口號,共同形成用于地址轉換的會話信息。本實施例提供一種網絡節點,可用于為虛擬機分配公網ip地址和公網號,并會將公網ip地址及公網端口號返回給計算節點,由計算節點進行snat。所述分配單元210可對應于處理器或處理電路,這里的處理器或處理電路的描述可以參見前述實施例,在此就不重復了。所述第二發送單元220可對應于網絡節點與計算節點的連接接口。該連接接口可為有線接口,也可以為無線接口。可選地,所述網絡節點還包括:第二接收單元,用于接收所述計算機節點在所述虛擬機需要向公網發送數據包時,發送的會話申請;所述分配單元210,具體用于根據所述會話申請,為所述虛擬機分配為所述公網ip地址及所述公網端口號。在本實施例中所述第二接收單元同樣可定于與計算節點的連接接口,從而可以接收會話申請。分配單元210具體在接收到會話申請之后,為虛擬機分配公網ip地址及公網端口號。可選地,所述網絡節點還包括:第二記錄單元,用于對應記錄所述公網ip地址、所述公網端口號及所述虛擬機所在計算節點的地址,形成流表;所述第二發送單元220,還用于將所述流表下發給所述私網與公網之間進行數據轉換的交換機。在本實施例中所述網絡節點還包括第二記錄單元,該第二記錄單元可包括存儲介質,可用于存儲所述流表。第二發送單元220還與交換機相連,用于將所述流表轉發給交換機,方便交換機在接收到外網數據包時,向對應的計算節點轉發數據包。以下結合上述實施例提供幾個具體示例:示例一:本示例提供一種應用于云平臺的信息處理方法,該云平臺內所有計算節點共用一個公網ip地址。在不同的虛擬機與外網交互數據包時,共用一個公網ip地址(簡稱snatip),采用不同的端口號區分不同的虛擬機。snat的操作分布在每一臺計算節點上,虛擬機發向外網的流量根據虛機ip,虛機端口號,vxlanid,分得該snatip的一個公網端口,做snat.該會話信息在整個云平臺環境中具有唯一性。從外部網絡返回的流量,在交換機上根據公網ip和公網端口號進行轉發計算節點上,再由計算節點進行snat后轉發到對應的虛擬機上。一個公網ip可以建立65536個端口的鏈接,若環境中第一個公網ip的端口用盡,則再分配一個公網ip。每個計算節點上建立一個snat的命名空間,并記錄該計算節點上的所有會話信息,記錄格式如下:計算節點192.168.1.1(11:11:11:11:11:11)上記錄的會話信息可如表1:表1計算節點192.168.1.2(22:22:22:22:22:22)上記錄的會話信息可如表2:表2云平臺的網絡節點上記錄公網ip分配請求,形成的流表可如表3:公網ip公網端口號計算節點mac地址15.15.15.100111:11:11:11:11:1115.15.15.100211:11:11:11:11:1115.15.15.100311:11:11:11:11:1115.15.15.100422:22:22:22:22:2215.15.15.100522:22:22:22:22:2215.15.15.200111:11:11:11:11:1115.15.15.200222:22:22:22:22:22表3計算節點snat操作流程如下描述。虛擬機發起對外發送數據包時,虛擬機對外流量到達該虛擬機所在計算節點的snat命名空間;計算節點新增的snat代理組件向網絡節點發起snat的會話申請;網絡節點將當前使用的公網ip的一個未使用端口返回給計算節點,并記錄該計算節點ip,公網ip及公網端口號,并下發對應的流表至計算機點連接公網的交換機上,流表指示目的ip及端口對應的轉發mac;計算節點將虛機ip,虛機端口號,虛假所在網絡的vxlanid,公網ip,公網端口號記錄在本機的會話信息表中,并根據公網ip與端口號對該報文做snat;外網返回的數據包到達時,交換機根據數據包中目的ip,目的端口號查詢流表得到對應mac,并將報文轉發到對應的計算節點;計算節點收到報文后,根據公網ip及公網端口號查詢對應的會話信息,也就得到了對應的虛機ip地址及虛機端口號等信息,可以將報文轉發至正確的虛機。示例二:如圖6所示,本示例提供一種信息處理方法,包括:步驟1:虛擬機發送的數據包達到計算節點的snat命名空間;步驟2:snat命名空間向snat代理組件請求snat信息;步驟3:sant代理組件向網絡節點請求santip地址及公網端口號;步驟4:網絡節點向計算節點返回snatip地址及公網端口號;步驟5:網絡節點向交換機下發流表;步驟6:snat命名空間記錄會話信息,并進行snat,具體地,snat命名空間基于snat代理組件向sant命名空間返回snatip地址及公網端口號,形成并記錄會話信息;步驟7:將數據包轉發給交換機。示例三:如圖7所示,本示例提供一種信息處理方法,包括:步驟11:交換機接收到外網發送的數據包;步驟12:交換機根據流表轉發到對應的計算節點;步驟13:計算節點的snat命名空間根據會話信息,轉發至對應的虛擬機在本申請所提供的幾個實施例中,應該理解到,所揭露的設備和方法,可以通過其它的方式實現。以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,如:多個單元或組件可以結合,或可以集成到另一個系統,或一些特征可以忽略,或不執行。另外,所顯示或討論的各組成部分相互之間的耦合、或直接耦合、或通信連接可以是通過一些接口,設備或單元的間接耦合或通信連接,可以是電性的、機械的或其它形式的。上述作為分離部件說明的單元可以是、或也可以不是物理上分開的,作為單元顯示的部件可以是、或也可以不是物理單元,即可以位于一個地方,也可以分布到多個網絡單元上;可以根據實際的需要選擇其中的部分或全部單元來實現本實施例方案的目的。另外,在本發明各實施例中的各功能單元可以全部集成在一個處理模塊中,也可以是各單元分別單獨作為一個單元,也可以兩個或兩個以上單元集成在一個單元中;上述集成的單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能單元的形式實現。本領域普通技術人員可以理解:實現上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括:移動存儲設備、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質。以上所述,僅為本發明的具體實施方式,但本發明的保護范圍并不局限于此,任何熟悉本
技術領域
的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應以所述權利要求的保護范圍為準。當前第1頁12
當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 南和县| 高邮市| 诸暨市| 斗六市| 普兰店市| 遵义市| 静乐县| 崇阳县| 沾益县| 泗洪县| 江津市| 嘉峪关市| 福鼎市| 汕头市| 曲周县| 苏尼特左旗| 兴和县| 台山市| 泸州市| 怀安县| 阿鲁科尔沁旗| 峡江县| 惠州市| 宜章县| 大足县| 汕头市| 定南县| 太康县| 永嘉县| 定远县| 遂昌县| 芦溪县| 嘉祥县| 灌云县| 舟山市| 常熟市| 铜陵市| 宁晋县| 合山市| 栖霞市| 睢宁县|