起通信時,若與該VM連接的虛擬交換機根據(jù)該VM發(fā)送的報文 匹配不到轉(zhuǎn)發(fā)流表,則該虛擬交換機會通過安全通道(如化enFlow安全通道)將該VM發(fā) 送的數(shù)據(jù)報文或該數(shù)據(jù)報文的報頭相關(guān)信息上送給控制設(shè)備。本文的實施例中W將VM發(fā) 送的數(shù)據(jù)報文上送控制設(shè)備為例。
[0072] 第六步,控制設(shè)備接收到虛擬交換機1上送的數(shù)據(jù)報文時,根據(jù)該數(shù)據(jù)報文的目 的IPQP2-1)地址在全局端口表中匹配到對應(yīng)的MC地址(MAC2-1),并使用該匹配到的 MC地址(MAC2-1)替換該數(shù)據(jù)報文的目的MC地址(全局虛MC地址)。
[0073] 第走步,該控制設(shè)備根據(jù)全局端口表為該數(shù)據(jù)報文下發(fā)轉(zhuǎn)發(fā)流表,使虛擬交換機1 根據(jù)該轉(zhuǎn)發(fā)流表轉(zhuǎn)發(fā)該數(shù)據(jù)報文。
[0074] 下發(fā)的轉(zhuǎn)發(fā)流表中匹配內(nèi)容為:端口 1-1、源MC地址(MAC1-1),源IP地址 (IPl-I),和目的 IP 地址(IP2-1);
[007引執(zhí)行操作為;替換目的MC地址(全局虛MC地址G-MAC)為VM2-1的MC地址 (MAC2-1),并輸出到端口 2-1,隧道IP地址為TIP2, VXLAN2。
[0076] 其中,MC2-1、端口 2-1、隧道IP地址TIP2均根據(jù)數(shù)據(jù)報文的目的IP地址在全局 端口表中查找到,并同時查找到對應(yīng)的子網(wǎng)標識,再根據(jù)本地配置的子網(wǎng)標識和VXLAN標 識的對應(yīng)關(guān)系,確定VXLAN。
[0077] 下面W圖1中的VMl-I與VM1-2通信為例,詳細說明同一子網(wǎng)中的VM如何實現(xiàn)通 信。
[007引在具體實現(xiàn)VMl-I與VM1-2的通信時,可W同上述VMl-I與VM2-1的通信過程類 似,即控制設(shè)備接收到ARP請求報文時,只要發(fā)送端MC地址和發(fā)送端IP地址在全局端口 表中綁定存在,即該ARP請求報文為合法報文,無論發(fā)送端IP地址和目標端IP地址是否屬 于同一子網(wǎng),都為該ARP請求報文響應(yīng)全局虛MC地址,后續(xù)數(shù)據(jù)報文轉(zhuǎn)發(fā)過程也類似。
[0079] 也可W在確定發(fā)送端IP地址和目標端IP地址屬于同一子網(wǎng)時,直接響應(yīng)目標端 IP地址對應(yīng)的實際MC地址,W進行后續(xù)的數(shù)據(jù)轉(zhuǎn)發(fā)。該種實現(xiàn)方式具體如下:
[0080] 第一步,VMl-I確定本地不存在VM1-2的IP地址對應(yīng)的ARP表項,則發(fā)起ARP請 求。
[00引]由于VMl-I的IP地址和VM1-2的IP地址在同一網(wǎng)段,因此,該ARP請求的目標端 IP地址為VM1-2的IP地址。
[0082] 第二步,虛擬交換機1接收到該ARP請求報文時,將該ARP請求報文上送控制設(shè) 備。
[0083] 第H步,控制設(shè)備接收到該ARP請求報文時,根據(jù)全局端口表確定該ARP請求報文 的發(fā)送端IP地址和目標端IP地址屬于同一子網(wǎng)時,在全局端口表中匹配到目標端IP地址 對應(yīng)的MC地址(MAC1-2),并通過虛擬交換機1響應(yīng)給VMl-I。
[0084] 第四步,VMl-I接收到響應(yīng)的MC1-2時,在本地建立ARP表項,并使用該MC地址 向VM2-1發(fā)送數(shù)據(jù)報文。
[0085] 該數(shù)據(jù)報文的目的IP地址為IP1-2,目的MAC地址為MAC1-2。
[0086] 第五步,虛擬交換機1接收到該數(shù)據(jù)報文時,若在本地未匹配到對應(yīng)的轉(zhuǎn)發(fā)流表, 則將該數(shù)據(jù)報文上送控制設(shè)備;否則,根據(jù)本地匹配的轉(zhuǎn)發(fā)流表轉(zhuǎn)發(fā)。
[0087] 第六步,控制設(shè)備接收到虛擬交換機I上送的數(shù)據(jù)報文時,并根據(jù)全局端口表為 該數(shù)據(jù)報文下發(fā)轉(zhuǎn)發(fā)流表,使虛擬交換機1根據(jù)該轉(zhuǎn)發(fā)流表轉(zhuǎn)發(fā)該數(shù)據(jù)報文。
[0088] 下發(fā)的轉(zhuǎn)發(fā)流表中匹配內(nèi)容為;端口 1-1、源MC地址MCl-I,源IP地址1-1,和 目的IP地址1-2 ;
[0089] 執(zhí)行操作為;輸出到端口 1-2,隧道IP地址為TIPl,VXLANl。
[0090] 本申請具體實施例中的控制設(shè)備是可W軟硬件結(jié)合的可編程設(shè)備,從硬件層面而 言,具體參見圖4,圖4為本申請具體實施例中包含報文處理裝置的控制設(shè)備的硬件結(jié)構(gòu)示 意圖??刂圃O(shè)備包括;非易失性存儲器、CPU、轉(zhuǎn)發(fā)芯片和內(nèi)存;
[00川其中,
[0092] 非易失性存儲器,用于存儲指令代碼;所述指令代碼被CPU執(zhí)行時完成的操作主 要為內(nèi)存中報文處理裝置完成的功能。
[0093] CPU,用于與轉(zhuǎn)發(fā)芯片通信,進行報文的收發(fā);用于與非易失性存儲器通信,讀取和 執(zhí)行非易失性存儲器中存儲的所述指令代碼,完成上述報文處理裝置中的接收單元、處理 單元、發(fā)送單元和確定單元完成的功能,W及對從轉(zhuǎn)發(fā)芯片上送的報文的處理。
[0094] 轉(zhuǎn)發(fā)芯片,用于通過該芯片上的端口連接到主機設(shè)備,負責報文的收發(fā)處理,將 CPU發(fā)來的指令和流轉(zhuǎn)發(fā)表發(fā)送給主機設(shè)備,將主機設(shè)備發(fā)來的報文上送給CPU ;
[0095] 內(nèi)存,用于與CPU協(xié)作運行,使指令代碼實例化,形成接收單元、處理單元、發(fā)送單 元和確定單元完成的功能W完成上述對報文的處理。
[0096] 從軟件層面而言,應(yīng)用于控制設(shè)備中的報文處理裝置包括:接收單元401、發(fā)送單 元402和處理單元403 ;
[0097] 接收單元401,用于接收主機設(shè)備上送的地址解析協(xié)議ARP請求報文;接收主機設(shè) 備因需轉(zhuǎn)發(fā)的數(shù)據(jù)報文匹配不到轉(zhuǎn)發(fā)流表而上送的轉(zhuǎn)發(fā)流表請求;
[0098] 發(fā)送單元402,用于當接收單元401接收到主機設(shè)備上送的ARP請求報文時,將本 地配置的全局虛媒體訪問控制MC地址響應(yīng)給該主機設(shè)備;將處理單元403生成的轉(zhuǎn)發(fā)流 表發(fā)送給所述主機設(shè)備,使所述主機設(shè)備轉(zhuǎn)發(fā)與該轉(zhuǎn)發(fā)流表匹配的數(shù)據(jù)報文;
[0099] 處理單元403,用于當接收單元401接收到主機設(shè)備上送的轉(zhuǎn)發(fā)流表請求,且所述 數(shù)據(jù)報文的目的MC地址為全局虛MC地址時,根據(jù)該數(shù)據(jù)報文的目的因特網(wǎng)協(xié)議IP地址 在全局端口表中匹配MAC地址;并根據(jù)全局端口表生成轉(zhuǎn)發(fā)流表;該轉(zhuǎn)發(fā)流表中包括;使用 根據(jù)該數(shù)據(jù)報文的目的IP地址在全局端口表中匹配到的MC地址替換該數(shù)據(jù)報文的目的 MAC地址的操作指示。
[0100] 較佳地,
[0101] 處理單元403,進一步用于當所述轉(zhuǎn)發(fā)流表請求W數(shù)據(jù)報文的形式上送時,使用根 據(jù)該數(shù)據(jù)報文的目的IP地址在全局端口表中匹配到的MC地址替換該數(shù)據(jù)報文的目的MC 地址;
[0102] 發(fā)送單元402,進一步用于將處理單元403替換目的MC地址的數(shù)據(jù)報文發(fā)送給所 述主機設(shè)備,使所述主機設(shè)備轉(zhuǎn)發(fā)。
[0103] 較佳地,該裝置進一步包括:確定單元404 ;
[0104] 確定單元404,用于當接收單元401接收到ARP請求報文時,確定該ARP請求報文 的發(fā)送端MAC地址和發(fā)送端IP地址在全局端口表中是否存在對應(yīng)表項;
[010引處理單元403,進一步用于當確定單元404確定該ARP請求報文的發(fā)送端MAC地址 和發(fā)送端IP地址在全局端口表中不存在對應(yīng)表項時,根據(jù)該ARP請求報文的發(fā)送端MC地 址和發(fā)送端IP地址生成丟棄流表;
[0106] 發(fā)送單元402,進一步用于將處理單元403生成的丟棄流表發(fā)送給所述主機設(shè)備, 使所述主機設(shè)備接收到源MAC地址和源IP地址與該丟棄流表匹配的報文進行丟棄處理;當 確定單元404確定該ARP請求報文的發(fā)送端MC地址和發(fā)送端IP地址在全局端口表中存 在對應(yīng)表項時,將本地配置的全局虛MAC地址響應(yīng)給所述主機設(shè)備。
[0107] 較佳地,
[0108] 確定單元404,進一步用于當確定該ARP請求報文的發(fā)送端MC地址和發(fā)送端IP 地址在全局端口表中存在對應(yīng)表項時,確定發(fā)送端IP地址和目標端IP地址是否屬于同一 子網(wǎng);
[0109] 處理單元403,進一步用于當確定單元404確定發(fā)送端IP地址和目標端IP地址屬 于同一子網(wǎng)時,根據(jù)目標端IP地址在全局端口表中匹配到對應(yīng)MC地址;
[0110] 發(fā)送單元402,進一步用于將處理單元403在全局端口表中匹配到的對應(yīng)MC地址 響應(yīng)給所述主機設(shè)備;當確定單元404確定發(fā)送端IP地址和目標端IP地址不屬于同一子 網(wǎng)時,將本地配置的全局虛MAC地址響應(yīng)給所述主機設(shè)備。
[0111] 較佳地,
[0112] 處理單元403,進