于:接收由所述第一主機(jī)寫(xiě)入的更新后的所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)和所述參考信息。
[0060]本發(fā)明實(shí)施例第三方面提供了一種處理報(bào)文的方法,所述方法包括:
[0061]第一網(wǎng)卡接收會(huì)話的第一報(bào)文,確定所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)為所述第一網(wǎng)卡的標(biāo)識(shí),對(duì)所述第一報(bào)文進(jìn)行處理,生成處理所述會(huì)話的其他報(bào)文時(shí)所依據(jù)的參考信息;
[0062]所述第一網(wǎng)卡接收第一主機(jī)發(fā)送的更新消息,所述更新消息用于指示所述第一網(wǎng)卡將所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)更新為第二網(wǎng)卡的標(biāo)識(shí);
[0063]所述第一網(wǎng)卡根據(jù)所述更新消息,將所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)更新為所述第二網(wǎng)卡的標(biāo)識(shí)。
[0064]本發(fā)明實(shí)施例第四方面提供了一種第一網(wǎng)卡,所述第一網(wǎng)卡包括:
[0065]處理器、存儲(chǔ)器、接收器,所述處理器與所述存儲(chǔ)器和接收器均通過(guò)總線連接,所述存儲(chǔ)器用于存儲(chǔ)所述處理器執(zhí)行的程序代碼;
[0066]所述接收器用于:接收會(huì)話的第一報(bào)文;接收第一主機(jī)發(fā)送的更新消息,所述更新消息用于指示所述第一網(wǎng)卡將所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)更新為第二網(wǎng)卡的標(biāo)識(shí);
[0067]所述處理器用于:確定所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)為所述第一網(wǎng)卡的標(biāo)識(shí),對(duì)所述第一報(bào)文進(jìn)行處理,生成處理所述會(huì)話的其他報(bào)文時(shí)所依據(jù)的參考信息;根據(jù)所述更新消息,將所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)更新為所述第二網(wǎng)卡的標(biāo)識(shí)。
[0068]本發(fā)明實(shí)施例第五方面提供了一種更新信息的方法,所述方法包括:
[0069]第一主機(jī)確定會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)需要更新,向所述第一網(wǎng)卡發(fā)送更新消息,所述更新消息用于指示所述第一網(wǎng)卡將所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)更新為第二網(wǎng)卡的標(biāo)識(shí);
[0070]所述第一主機(jī)接收所述第一網(wǎng)卡發(fā)送的更新后的所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)和參考信息,所述參考信息是所述第一網(wǎng)卡生成的處理所述會(huì)話的其他報(bào)文時(shí)所依據(jù)的信息;
[0071]所述第一主機(jī)將接收到的更新后的所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)和所述參考信息發(fā)送給所述第二網(wǎng)卡。
[0072]結(jié)合第五方面,在第五方面的第一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0073]所述第一主機(jī)統(tǒng)計(jì)被所述第二網(wǎng)卡丟棄的所述會(huì)話的報(bào)文的數(shù)量;
[0074]所述第一主機(jī)確定所述統(tǒng)計(jì)出的被所述第二網(wǎng)卡丟棄的所述會(huì)話的報(bào)文的數(shù)量大于預(yù)定閾值時(shí),所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)需要更新。
[0075]結(jié)合第五方面,在第五方面的第二種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0076]所述第一主機(jī)統(tǒng)計(jì)所述第一主機(jī)的轉(zhuǎn)發(fā)隊(duì)列中所述會(huì)話的報(bào)文的數(shù)量;
[0077]當(dāng)所述轉(zhuǎn)發(fā)隊(duì)列中所述會(huì)話的報(bào)文的數(shù)量大于預(yù)定閾值時(shí),所述第一主機(jī)確定所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)需要更新。
[0078]結(jié)合第五方面的第二種可能的實(shí)現(xiàn)方式,在第五方面的第三種可能的實(shí)現(xiàn)方式中,在所述第一主機(jī)接收所述第一網(wǎng)卡發(fā)送的更新后的所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)和參考信息之后,所述方法還包括:
[0079]所述第一主機(jī)將所述轉(zhuǎn)發(fā)隊(duì)列中所述會(huì)話的報(bào)文發(fā)送給所述第二網(wǎng)卡。
[0080]本發(fā)明實(shí)施例第六方面提供了一種第一主機(jī),所述第一主機(jī)包括:
[0081]處理器、存儲(chǔ)器、接收器和發(fā)送器,所述處理器與所述存儲(chǔ)器、接收器和發(fā)送器均通過(guò)總線連接,所述存儲(chǔ)器用于存儲(chǔ)所述處理器執(zhí)行的程序代碼;
[0082]所述處理器用于:確定會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)需要更新,向所述第一網(wǎng)卡發(fā)送更新消息,所述更新消息用于指示所述第一網(wǎng)卡將所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)更新為第二網(wǎng)卡的標(biāo)識(shí);
[0083]所述接收器用于:接收所述第一網(wǎng)卡發(fā)送的更新后的所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)和參考信息,所述參考信息是所述第一網(wǎng)卡生成的處理所述會(huì)話的其他報(bào)文時(shí)所依據(jù)的信息;
[0084]所述發(fā)送器用于:將接收到的更新后的所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)和所述參考信息發(fā)送給所述第二網(wǎng)卡。
[0085]結(jié)合第六方面,在第六方面的第一種可能的實(shí)現(xiàn)方式中,所述處理器還用于:
[0086]統(tǒng)計(jì)被所述第二網(wǎng)卡丟棄的對(duì)應(yīng)所述會(huì)話的其他報(bào)文的數(shù)量;
[0087]當(dāng)所述統(tǒng)計(jì)出的數(shù)量大于預(yù)定閾值時(shí),確定所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)需要更新。
[0088]結(jié)合第六方面,在第六方面的第二種可能的實(shí)現(xiàn)方式中,所述處理器還用于:
[0089]統(tǒng)計(jì)所述第一主機(jī)的轉(zhuǎn)發(fā)隊(duì)列中所述會(huì)話的報(bào)文的數(shù)量;
[0090]當(dāng)所述轉(zhuǎn)發(fā)隊(duì)列中所述會(huì)話的報(bào)文的數(shù)量大于預(yù)定閾值時(shí),確定所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)需要更新。
[0091]結(jié)合第六方面的第二種可能的實(shí)現(xiàn)方式,在第六方面的第三種可能的實(shí)現(xiàn)方式中,所述發(fā)送器還用于:
[0092]將所述轉(zhuǎn)發(fā)隊(duì)列中所述會(huì)話的報(bào)文發(fā)送給所述第二網(wǎng)卡。
[0093]本發(fā)明實(shí)施例中提供的一個(gè)或多個(gè)技術(shù)方案,至少具有如下技術(shù)效果或優(yōu)點(diǎn):
[0094]本發(fā)明實(shí)施例中,第一網(wǎng)卡接收會(huì)話的第一報(bào)文,確定會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)為所述第一網(wǎng)卡的標(biāo)識(shí),對(duì)所述第一報(bào)文進(jìn)行處理,生成處理所述會(huì)話的其他報(bào)文時(shí)所依據(jù)的參考信息;然后在將所述會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)更新為第二網(wǎng)卡的標(biāo)識(shí)之后,第二網(wǎng)卡獲得更新后的所述會(huì)話的目的網(wǎng)卡標(biāo)識(shí)和參考信息,這樣,第二網(wǎng)卡根據(jù)參考信息,確定會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)為所述第二網(wǎng)卡的標(biāo)識(shí)時(shí),對(duì)接收到的所述會(huì)話的其他報(bào)文進(jìn)行處理。因此,即使第一網(wǎng)卡與交換機(jī)之間的鏈路發(fā)生故障,第二網(wǎng)卡能夠獲得參考信息,且會(huì)話的目的網(wǎng)卡的標(biāo)識(shí)已更新為第二網(wǎng)卡的標(biāo)識(shí),所以第二網(wǎng)卡能夠?qū)邮盏降膱?bào)文進(jìn)行處理。
【附圖說(shuō)明】
[0095]為了更清楚地說(shuō)明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)要介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0096]圖1為本發(fā)明實(shí)施例提供的一種處理報(bào)文的系統(tǒng)的結(jié)構(gòu)示意圖;
[0097]圖2為本發(fā)明實(shí)施例提供的系統(tǒng)執(zhí)行處理報(bào)文的方法的信息交互示意圖;
[0098]圖3為本發(fā)明實(shí)施例提供的第一網(wǎng)卡執(zhí)行處理報(bào)文的方法的流程圖;
[0099]圖4為本發(fā)明實(shí)施例提供的第一網(wǎng)卡的結(jié)構(gòu)示意圖;
[0100]圖5為本發(fā)明實(shí)施例提供的第一主機(jī)執(zhí)行信息更新的方法的流程圖;
[0101]圖6為本發(fā)明實(shí)施例提供的第一主機(jī)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0102]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0103]未經(jīng)特別說(shuō)明,本發(fā)明實(shí)施例提到的網(wǎng)卡都是具有卸載功能的網(wǎng)卡。通常在網(wǎng)卡上實(shí)現(xiàn)硬件卸載的報(bào)文遵循的協(xié)議有:TCP(中文:傳輸控制協(xié)議;英文transmiss1nControl Protocol)、iSCSI (中文:互聯(lián)網(wǎng)小型計(jì)算機(jī)系統(tǒng)接口 ;英文:Internet SmallComputer System Interface)協(xié)議、FCoE (中文:以太網(wǎng)光纖通道;英文:Fibre Channelover Ethernet)協(xié)議等。
[0104]上述協(xié)議都是有狀態(tài)的協(xié)議,如果報(bào)文遵循的協(xié)議是有狀態(tài)的協(xié)議,則報(bào)文之間有依賴關(guān)系,上下文用于記錄報(bào)文之間的依賴關(guān)系,網(wǎng)卡依據(jù)上下文對(duì)報(bào)文進(jìn)行處理。由于原始報(bào)文經(jīng)網(wǎng)卡處理后變?yōu)橐烟幚淼膱?bào)文,所以報(bào)文之間的依賴關(guān)系相應(yīng)地發(fā)生改變,因此,網(wǎng)卡每次對(duì)報(bào)文進(jìn)行處理之后,上下文都會(huì)相應(yīng)地發(fā)生改變。網(wǎng)卡需要依據(jù)最新的上下文對(duì)報(bào)文進(jìn)行處理,如果依據(jù)的上下文不是最新的,則網(wǎng)卡不能對(duì)報(bào)文進(jìn)行正確地處理。本發(fā)明實(shí)施例中的上下文包括處理報(bào)文時(shí)所依據(jù)的參考信息和目的網(wǎng)卡的標(biāo)識(shí)。
[0105]卸載分為全卸載和半卸載。對(duì)于全卸載,完全由網(wǎng)卡對(duì)報(bào)文進(jìn)行處理,主機(jī)不參與報(bào)文處理,因此,網(wǎng)卡在處理第一個(gè)報(bào)文時(shí),沒(méi)有最新的上下文可以依據(jù),網(wǎng)卡處理完第一個(gè)報(bào)文之后,根據(jù)已處理的第一個(gè)報(bào)文,生成最新的上下文,網(wǎng)卡依據(jù)生成的最新的上下文,處理第一個(gè)報(bào)文之后的其他報(bào)文。
[0106]對(duì)于半卸載,主機(jī)首先處理一部分簡(jiǎn)單的報(bào)文,然后將剩余一部分復(fù)雜的報(bào)文卸載到網(wǎng)卡上,由網(wǎng)卡對(duì)剩余一部分復(fù)雜的報(bào)文進(jìn)行處理。因此,主機(jī)首先處理所述一部分簡(jiǎn)單的報(bào)文,然后已處理的所述一部分簡(jiǎn)單的報(bào)文,生成最新的上下文,并發(fā)送給網(wǎng)卡,同時(shí)將所述剩余一部分復(fù)雜的報(bào)文發(fā)送給網(wǎng)卡,網(wǎng)卡在處理所述剩余一部分復(fù)雜的報(bào)文中的第一個(gè)報(bào)文時(shí),依據(jù)主機(jī)發(fā)送的最新的上下文,對(duì)所述剩余一部分復(fù)雜的報(bào)文中的第一個(gè)報(bào)文進(jìn)行處理,網(wǎng)卡處理完所述剩余一部分復(fù)雜的報(bào)文中的第一個(gè)報(bào)文之后,根據(jù)已處理的所述剩余一部分復(fù)雜的報(bào)文中的第一個(gè)報(bào)文,生成最新的上下文,網(wǎng)卡依據(jù)生成的最新的上下文,處理所述剩余一部分復(fù)雜的報(bào)文中的第一個(gè)報(bào)文之后的其他報(bào)文。
[0107]首先以兩個(gè)具有卸載功能的網(wǎng)卡配置為第一主機(jī)的所屬網(wǎng)卡為例,說(shuō)明現(xiàn)有技術(shù)中的報(bào)文處理方法存在的技術(shù)問(wèn)題。
[0108]假設(shè)第一主機(jī)與第二主機(jī)通過(guò)交換機(jī)建立物理連接,且第一主機(jī)與第二主機(jī)之間建立有會(huì)話,該會(huì)話的目的網(wǎng)卡為第一網(wǎng)卡,交換機(jī)接收到第二主機(jī)發(fā)送給第一主機(jī)的對(duì)應(yīng)該會(huì)話的報(bào)文后,會(huì)轉(zhuǎn)發(fā)到第一網(wǎng)卡。
[0109]如果對(duì)應(yīng)該會(huì)話的報(bào)文全卸載,則第一網(wǎng)卡接收到第二主機(jī)通過(guò)交換機(jī)發(fā)送的對(duì)應(yīng)該會(huì)話的第一個(gè)報(bào)文后,對(duì)接收到的報(bào)文進(jìn)行處理。如果對(duì)應(yīng)該會(huì)話的報(bào)文半卸載,則第一主機(jī)處理對(duì)應(yīng)該會(huì)話的報(bào)文中的一部分報(bào)文后,根據(jù)已處理的報(bào)文,生成最新的上下文并發(fā)給第一網(wǎng)卡,第一網(wǎng)卡接收到第二主機(jī)通過(guò)交換機(jī)發(fā)送的對(duì)應(yīng)該會(huì)話的剩余部分報(bào)文后,第一網(wǎng)卡依據(jù)接收到的最新的上下文,對(duì)接收到的報(bào)文進(jìn)行處理。
[0110]無(wú)論是全卸載還是半卸載,第一網(wǎng)卡對(duì)接收到的報(bào)文進(jìn)行處理后,依據(jù)處理后的報(bào)文,生成最新的上下文,以便接收到第二主機(jī)通過(guò)交換機(jī)發(fā)送的對(duì)應(yīng)該會(huì)話的其他報(bào)文后,依據(jù)最新的上下文,對(duì)對(duì)應(yīng)該會(huì)話的其他報(bào)文進(jìn)行處理。當(dāng)?shù)谝痪W(wǎng)卡發(fā)生故障時(shí),交換機(jī)接收第二主機(jī)發(fā)送給第一主機(jī)的報(bào)文后,會(huì)轉(zhuǎn)發(fā)到第二網(wǎng)卡,由于最新的上下文是第一網(wǎng)卡生成的,緩存在第一網(wǎng)卡中,所以第二網(wǎng)卡中沒(méi)有最新的上下文,導(dǎo)致第二網(wǎng)卡無(wú)法對(duì)接收到的報(bào)文進(jìn)行處理。
[0111]面對(duì)上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了一種報(bào)文處理的方法,該方法適用于一種處理報(bào)文的系統(tǒng)。如圖1所示,該系統(tǒng)包括:第一主機(jī)、第一網(wǎng)卡和第二網(wǎng)卡,所述第一網(wǎng)卡和所述第二網(wǎng)卡配置為所述第一主機(jī)所屬的網(wǎng)卡,所述第一網(wǎng)卡和所述第二網(wǎng)卡均具有卸載功能。當(dāng)然,配置為所述第一主機(jī)所屬的網(wǎng)卡的具有卸載功能的網(wǎng)卡的數(shù)量也可以是兩個(gè)以上,本發(fā)明實(shí)施例以配置為所述第一主機(jī)所屬的具有卸載功能的網(wǎng)卡的數(shù)量是兩個(gè)為例進(jìn)行說(shuō)明。
[0112]其中,第一主機(jī)通過(guò)交換機(jī)與第二主機(jī)建立物理連接,交