本發(fā)明實施例涉及通信技術(shù)領(lǐng)域,并且更具體地,涉及數(shù)據(jù)傳輸方法及設(shè)備。
背景技術(shù):為了在特定節(jié)點對網(wǎng)絡(luò)數(shù)據(jù)的傳輸進行監(jiān)控或處理,引入了跨連接網(wǎng)絡(luò)裝置,如傳輸控制協(xié)議(TransmissionControlProtocol,TCP)代理(Proxy)。TCP代理分別與服務(wù)器和客戶端連接,實現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)的轉(zhuǎn)發(fā)和處理,其中,TCP代理轉(zhuǎn)發(fā)的網(wǎng)絡(luò)數(shù)據(jù)包括普通數(shù)據(jù)和緊急數(shù)據(jù)。在現(xiàn)有的機制中,由于數(shù)據(jù)報文格式中的緊急指針(UrgentPointer)信息和緊急指針?biāo)赶虻臄?shù)據(jù)(上述緊急數(shù)據(jù))只在應(yīng)用層進行解析,其中,緊急指針信息包括緊急標(biāo)志(報文格式中的URG標(biāo)志位),緊急數(shù)據(jù)起始序列號(報文格式中的TCP報文序列號)和緊急數(shù)據(jù)結(jié)束位置(報文格式中的緊急指針)。但是,TCP代理并不關(guān)心上層應(yīng)用,對緊急指針信息和緊急數(shù)據(jù)直接轉(zhuǎn)發(fā),導(dǎo)致數(shù)據(jù)處理不夠靈活。
技術(shù)實現(xiàn)要素:本發(fā)明實施例提供一種數(shù)據(jù)傳輸方法及設(shè)備,能夠提高數(shù)據(jù)處理的靈活性。第一方面,提供了一種數(shù)據(jù)傳輸方法,該方法包括:傳輸控制協(xié)議TCP代理接收網(wǎng)絡(luò)數(shù)據(jù),所述網(wǎng)絡(luò)數(shù)據(jù)攜帶緊急指針信息和緊急數(shù)據(jù);所述TCP代理獲取所述緊急指針信息和所述緊急數(shù)據(jù);所述TCP代理根據(jù)所述緊急指針信息對所述緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù);所述TCP代理在報文中填充所述緊急指針信息和所述處理后的緊急數(shù)據(jù),并轉(zhuǎn)發(fā)所述報文。結(jié)合第一方面,在第一方面的另一種實現(xiàn)方式中,所述報文為TCP報文,所述TCP代理在報文中填充所述緊急指針信息和所述處理后的緊急數(shù)據(jù),包括:所述TCP代理將所述緊急指針信息中的緊急標(biāo)志填充在所述TCP報文的TCP選項中,并將所述緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及所述處理后的緊急數(shù)據(jù)填充在所述TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。結(jié)合第一方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第一方面的另一種實現(xiàn)方式中,所述報文為TCP報文,所述TCP代理在報文中填充所述緊急指針信息和所述處理后的緊急數(shù)據(jù),包括:所述TCP代理將所述TCP報文中的緊急指針URG標(biāo)志置位,將所述緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及所述處理后的緊急數(shù)據(jù)填充在所述TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。結(jié)合第一方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第一方面的另一種實現(xiàn)方式中,在所述TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中還包括所述TCP代理接收到所述緊急數(shù)據(jù)時,所述緊急數(shù)據(jù)在數(shù)據(jù)流中相對于普通數(shù)據(jù)的位置的信息。結(jié)合第一方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第一方面的另一種實現(xiàn)方式中,所述TCP代理在報文中填充所述緊急指針信息和所述處理后的緊急數(shù)據(jù),包括:所述TCP代理將所述報文中的消息類型標(biāo)識設(shè)置為所述緊急指針信息中的緊急標(biāo)志,將所述緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及所述緊急數(shù)據(jù)填充在所述報文的載荷中,所述報文包括TCP報文或用戶數(shù)據(jù)報協(xié)議UDP報文。結(jié)合第一方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第一方面的另一種實現(xiàn)方式中,所述網(wǎng)絡(luò)數(shù)據(jù)還攜帶普通數(shù)據(jù)且所述報文還包括所述普通數(shù)據(jù)。結(jié)合第一方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第一方面的另一種實現(xiàn)方式中,所述對所述緊急數(shù)據(jù)進行數(shù)據(jù)處理,包括:對所述緊急數(shù)據(jù)進行壓縮或解壓,對所述緊急數(shù)據(jù)進行去重或恢復(fù),或者對所述緊急數(shù)據(jù)進行加密或解密。第二方面,提供了一種傳輸控制協(xié)議TCP代理,該設(shè)備包括:接收單元,用于接收網(wǎng)絡(luò)數(shù)據(jù),所述網(wǎng)絡(luò)數(shù)據(jù)攜帶緊急指針信息和緊急數(shù)據(jù);獲取單元,用于獲取所述接收單元接收的所述緊急指針信息和所述緊急數(shù)據(jù);處理單元,用于根據(jù)所述獲取單元獲取的所述緊急指針信息對所述獲取單元獲取的所述緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù);填充單元,用于在報文中填充所述緊急指針信息和所述處理單元處理的所述處理后的緊急數(shù)據(jù);發(fā)送單元,用于轉(zhuǎn)發(fā)所述報文。結(jié)合第二方面,在第二方面的另一種實現(xiàn)方式中,所述報文為TCP報文,所述填充單元具體用于:將所述緊急指針信息中的緊急標(biāo)志填充在所述TCP報文的TCP選項中,并將所述緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及所述處理后的緊急數(shù)據(jù)填充在所述TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。結(jié)合第二方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第二方面的另一種實現(xiàn)方式中,所述報文為TCP報文,所述填充單元具體用于:將所述TCP報文中的緊急指針URG標(biāo)志置位,將所述緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及所述處理后的緊急數(shù)據(jù)填充在所述TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。結(jié)合第二方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第二方面的另一種實現(xiàn)方式中,所述填充單元具體用于:將所述報文中的消息類型標(biāo)識設(shè)置為所述緊急指針信息中的緊急標(biāo)志,將所述緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及所述緊急數(shù)據(jù)填充在所述報文的載荷中,所述報文包括TCP報文或用戶數(shù)據(jù)報協(xié)議UDP報文。結(jié)合第二方面或其上述實現(xiàn)方式中的任一種實現(xiàn)方式,在第二方面的另一種實現(xiàn)方式中,所述處理單元具體用于:對所述緊急數(shù)據(jù)進行壓縮或解壓,對所述緊急數(shù)據(jù)進行去重或恢復(fù),或者對所述緊急數(shù)據(jù)進行加密或解密。本發(fā)明實施例通過TCP代理獲取接收到的網(wǎng)絡(luò)數(shù)據(jù)中所攜帶的緊急指針信息和緊急數(shù)據(jù),根據(jù)緊急指針信息對緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù),在報文中填充緊急指針信息和處理后的緊急數(shù)據(jù),并轉(zhuǎn)發(fā)該報文,從而優(yōu)化網(wǎng)絡(luò)數(shù)據(jù)的處理,有效地提高數(shù)據(jù)處理的靈活性。附圖說明為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是本發(fā)明一個實施例的數(shù)據(jù)傳輸方法的流程圖。圖2是本發(fā)明一個實施例的數(shù)據(jù)傳輸方法的過程的示意性流程圖。圖3是本發(fā)明一個實施例的TCP代理的結(jié)構(gòu)框圖。圖4是本發(fā)明另一個實施例的TCP代理的結(jié)構(gòu)框圖。具體實施方式下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。圖1是本發(fā)明一個實施例的數(shù)據(jù)傳輸方法的流程圖。圖1的方法由TCP代理執(zhí)行。101,傳輸控制協(xié)議TCP代理接收服務(wù)器或客戶端發(fā)送的網(wǎng)絡(luò)數(shù)據(jù),網(wǎng)絡(luò)數(shù)據(jù)攜帶緊急指針信息和緊急數(shù)據(jù)。102,TCP代理獲取緊急指針信息和緊急數(shù)據(jù)。103,TCP代理根據(jù)緊急指針信息對緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù)。104,TCP代理在報文中填充緊急指針信息和處理后的緊急數(shù)據(jù),并轉(zhuǎn)發(fā)報文。本發(fā)明實施例通過TCP代理獲取接收到的網(wǎng)絡(luò)數(shù)據(jù)中所攜帶的緊急指針信息和緊急數(shù)據(jù),根據(jù)緊急指針信息對緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù),在報文中填充緊急指針信息和處理后的緊急數(shù)據(jù),并轉(zhuǎn)發(fā)該報文,從而優(yōu)化網(wǎng)絡(luò)數(shù)據(jù)的處理,有效地提高數(shù)據(jù)處理的靈活性??蛇x地,作為一個實施例,在步驟103中,對緊急數(shù)據(jù)進行處理包括但不限于:對緊急數(shù)據(jù)進行壓縮或解壓,對緊急數(shù)據(jù)進行去重或恢復(fù),或者對緊急數(shù)據(jù)進行加密或解密等處理。例如,可以根據(jù)緊急數(shù)據(jù)量的大小確定是否對緊急數(shù)據(jù)進行處理,當(dāng)根據(jù)緊急指針信息確定緊急數(shù)據(jù)的長度大于或等于某一閾值(如一個最大報文段長度(MaxSegmentSize,MSS))時,則對該緊急數(shù)據(jù)進行壓縮或去重。這樣,減少數(shù)據(jù)的傳輸量,能夠有效地利用資源,提高緊急數(shù)據(jù)的傳輸速率。又例如,當(dāng)根據(jù)緊急指針信息(包括緊急標(biāo)志、緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置)確定緊急數(shù)據(jù)的長度小于某一閾值時,可以將該緊急數(shù)據(jù)在數(shù)據(jù)TCP代理層直接轉(zhuǎn)發(fā),可選地,無需對普通數(shù)據(jù)處理完后再轉(zhuǎn)發(fā)緊急數(shù)據(jù)。因此,能夠使得客戶端或服務(wù)器及時處理緊急數(shù)據(jù)。應(yīng)理解,上述例子僅僅是示例性的,本發(fā)明實施例TCP代理如何處理緊急數(shù)據(jù)獲得處理后的緊急數(shù)據(jù)并不限定。進一步地,可以并行處理網(wǎng)絡(luò)數(shù)據(jù)中的普通數(shù)據(jù),可選地,當(dāng)發(fā)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)攜帶有緊急數(shù)據(jù)時,可以不再對網(wǎng)絡(luò)數(shù)據(jù)中的普通數(shù)據(jù)進行緩存,并行處理緊急數(shù)據(jù)和普通數(shù)據(jù)(如對普通數(shù)據(jù)進行去重處理)。在步驟103之后,可以同時轉(zhuǎn)發(fā)緊急數(shù)據(jù)和普通數(shù)據(jù)。當(dāng)然,也可以分別單獨處理網(wǎng)絡(luò)數(shù)據(jù)中的普通數(shù)據(jù)和緊急數(shù)據(jù)。因此,可以基于緊急數(shù)據(jù)的處理情況對普通數(shù)據(jù)進行處理,能夠提高數(shù)據(jù)處理的靈活性。本發(fā)明實施例對此并不限定。可選地,作為另一個實施例,在步驟104中,TCP代理可以根據(jù)數(shù)據(jù)轉(zhuǎn)發(fā)方式在報文中填充緊急指針信息和進行處理后的緊急數(shù)據(jù),轉(zhuǎn)發(fā)該報文。可選地,數(shù)據(jù)轉(zhuǎn)發(fā)方式可以是本發(fā)明提供的TCP選項方式、改進的TCP緊急方式、或者私有消息方式。當(dāng)然,數(shù)據(jù)轉(zhuǎn)發(fā)方式也可以采用現(xiàn)有的TCP緊急方式。應(yīng)理解,本發(fā)明實施例對此并不限定。還應(yīng)理解,本發(fā)明實施例對報文的形式并不限定,報文可以是TCP報文,也可以是用戶數(shù)據(jù)報協(xié)議(UserDatagramProtocol,UDP)報文,等等。具體地,在TCP選項方式中,上述報文為TCP報文,TCP代理將緊急指針信息中的緊急標(biāo)志填充在TCP報文的TCP選項(option)中,并將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及處理后的緊急數(shù)據(jù)填充在TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。在改進的TCP緊急方式中,上述報文為TCP報文,TCP代理將TCP報文中的緊急指針URG標(biāo)志置位(即表示緊急指針信息中的緊急標(biāo)志)、緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及處理后的緊急數(shù)據(jù)填充在TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。進一步地,在TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中還可以包括TCP代理接收到緊急數(shù)據(jù)時,緊急數(shù)據(jù)在數(shù)據(jù)流中相對于普通數(shù)據(jù)的位置的信息。在私有消息方式中,報文可以是TCP報文或UDP報文,將報文中的消息類型標(biāo)識設(shè)置為緊急指針信息中的緊急標(biāo)志,將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及緊急數(shù)據(jù)填充在報文的載荷中。現(xiàn)有的TCP緊急方式可參考現(xiàn)有技術(shù),此處不再贅述??蛇x地,可以在TCP代理中預(yù)先設(shè)置上述一種或多種數(shù)據(jù)轉(zhuǎn)發(fā)方式。TCP代理可以根據(jù)緊急數(shù)據(jù)的情況選擇緊急指針信息和緊急數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)發(fā)方式,或者可以根據(jù)數(shù)據(jù)流的上下文信息選擇緊急指針信息和緊急數(shù)據(jù)的數(shù)據(jù)轉(zhuǎn)發(fā)方式。例如,當(dāng)緊急數(shù)據(jù)的長度大于或等于某一閾值(如一個MSS的長度)時,則可以選擇TCP選項方式、或者私有消息方式,或者改進的緊急方式轉(zhuǎn)發(fā)經(jīng)壓縮處理后的緊急數(shù)據(jù)。又例如,當(dāng)緊急數(shù)據(jù)的長度小于某一閾值(如一個MSS的長度)時,則可以選擇改進的TCP緊急方式或者現(xiàn)有的TCP緊急方式直接轉(zhuǎn)發(fā)該緊急數(shù)據(jù)??蛇x地,還可以在上述報文中填充普通數(shù)據(jù),即TCP代理將緊急數(shù)據(jù)和普通數(shù)據(jù)一起轉(zhuǎn)發(fā)出去。例如,當(dāng)對緊急數(shù)據(jù)和接收到的普通數(shù)據(jù)并行進行去重處理時,可以選擇TCP緊急方式將經(jīng)去重處理后的緊急數(shù)據(jù)和普通數(shù)據(jù)一起打包轉(zhuǎn)發(fā)出去。如果采用現(xiàn)有技術(shù)的TCP緊急方式轉(zhuǎn)發(fā)經(jīng)過處理后的網(wǎng)絡(luò)數(shù)據(jù),將會改變網(wǎng)絡(luò)數(shù)據(jù)的傳輸順序,導(dǎo)致緊急數(shù)據(jù)在數(shù)據(jù)流中的相對于普通數(shù)據(jù)的位置發(fā)生改變,甚至丟失緊急數(shù)據(jù)。通過本發(fā)明實施例提供的數(shù)據(jù)轉(zhuǎn)發(fā)方式能夠明確緊急數(shù)據(jù)的傳輸順序和緊急數(shù)據(jù)在數(shù)據(jù)流中相對于普通數(shù)據(jù)的位置,避免緊急數(shù)據(jù)的丟失。另外,本發(fā)明的實施例還可以在轉(zhuǎn)發(fā)報文之前對緊急數(shù)據(jù)進行加密,提高了數(shù)據(jù)傳輸?shù)陌踩?。需要說明的是,本發(fā)明實施例的客戶端和服務(wù)器之間可以有1個或多個TCP代理,每個TCP代理能夠?qū)崿F(xiàn)網(wǎng)絡(luò)數(shù)據(jù)的處理和轉(zhuǎn)發(fā),當(dāng)客戶端和服務(wù)器之間具有多個TCP代理時,相鄰的兩個TCP代理可以預(yù)先協(xié)同采用可以接受的數(shù)據(jù)轉(zhuǎn)發(fā)方式。下面結(jié)合具體的例子詳細(xì)描述本發(fā)明實施例。圖2是本發(fā)明一個實施例的數(shù)據(jù)傳輸方法的過程的示意性流程圖。201,TCP代理接收網(wǎng)絡(luò)數(shù)據(jù)。具體地,由TCP代理中的TCPIP棧(Stack)實現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)的接收。202,TCP代理從步驟201中接收的網(wǎng)絡(luò)數(shù)據(jù)中獲取緊急指針和緊急數(shù)據(jù)。具體地,TCP代理中的TCP代理層從TCPIP棧接收的網(wǎng)絡(luò)數(shù)據(jù)中獲取緊急指針和緊急數(shù)據(jù)。203,TCP代理對緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù)。可選地,對緊急數(shù)據(jù)進行處理包括但不限于:對緊急數(shù)據(jù)進行壓縮或解壓,對緊急數(shù)據(jù)進行去重或恢復(fù),或者對緊急數(shù)據(jù)進行加密或解密等處理。例如,可以根據(jù)緊急數(shù)據(jù)量的大小確定是否對緊急數(shù)據(jù)進行處理,當(dāng)根據(jù)緊急指針信息確定緊急數(shù)據(jù)的長度大于或等于某一閾值(如一個MSS長度)時,則對該緊急數(shù)據(jù)進行壓縮或去重。這樣,減少數(shù)據(jù)的傳輸量,能夠有效地利用資源,提高緊急數(shù)據(jù)的傳輸速率。又例如,當(dāng)根據(jù)緊急指針信息確定緊急數(shù)據(jù)的長度小于某一閾值時,可以將該緊急數(shù)據(jù)在數(shù)據(jù)TCP代理層直接轉(zhuǎn)發(fā),可選地,無需對普通數(shù)據(jù)處理完后再轉(zhuǎn)發(fā)緊急數(shù)據(jù)。因此,能夠使得客戶端或服務(wù)器及時處理緊急數(shù)據(jù)。應(yīng)理解,上述例子僅僅是示例性的,本發(fā)明實施例TCP代理如何處理緊急數(shù)據(jù)獲得處理后的緊急數(shù)據(jù)并不限定??蛇x地,TCP代理還可以對網(wǎng)絡(luò)數(shù)據(jù)中的普通數(shù)據(jù)進行處理(步驟204)。進一步地,可以在處理緊急數(shù)據(jù)的同時并行處理網(wǎng)絡(luò)數(shù)據(jù)中的普通數(shù)據(jù)。例如,當(dāng)發(fā)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)攜帶有緊急數(shù)據(jù)時,可以不再對網(wǎng)絡(luò)數(shù)據(jù)中的普通數(shù)據(jù)進行緩存,并行處理緊急數(shù)據(jù)和普通數(shù)據(jù)(如對普通數(shù)據(jù)進行去重處理)。當(dāng)然,也可以分別單獨處理網(wǎng)絡(luò)數(shù)據(jù)中的普通數(shù)據(jù)和緊急數(shù)據(jù)。因此,可以基于緊急數(shù)據(jù)的處理情況對普通數(shù)據(jù)進行處理,能夠提高數(shù)據(jù)處理的靈活性。本發(fā)明實施例對此并不限定。具體地,由TCP代理中的數(shù)據(jù)處理(DataProcess)模塊實現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)(網(wǎng)絡(luò)數(shù)據(jù)或緊急數(shù)據(jù))的數(shù)據(jù)處理。205,TCP代理選擇數(shù)據(jù)轉(zhuǎn)發(fā)方式。具體地,由數(shù)據(jù)處理模塊選擇數(shù)據(jù)轉(zhuǎn)發(fā)方式。數(shù)據(jù)轉(zhuǎn)發(fā)方式可以是本發(fā)明提供的TCP選項方式、改進的TCP緊急方式、或者私有消息方式。具體的實施方式可以參考上述,此處不再贅述。例如,數(shù)據(jù)轉(zhuǎn)發(fā)方式可以示意性地(以表格形式)表示如下:通過本發(fā)明實施例提供的數(shù)據(jù)轉(zhuǎn)發(fā)方式能夠明確緊急數(shù)據(jù)的傳輸順序和緊急數(shù)據(jù)在數(shù)據(jù)流中相對于普通數(shù)據(jù)的位置,避免緊急數(shù)據(jù)的丟失,并且還能夠?qū)崿F(xiàn)緊急數(shù)據(jù)的加密,提高數(shù)據(jù)傳輸?shù)陌踩?。?dāng)然,數(shù)據(jù)轉(zhuǎn)發(fā)方式也可以采用現(xiàn)有的TCP緊急方式。應(yīng)理解,本發(fā)明實施例對此并不限定。206,TCP代理轉(zhuǎn)發(fā)報文。具體地,數(shù)據(jù)處理模塊將報文通過TCP代理層,從TCPIP棧轉(zhuǎn)發(fā)出去。報文可以是TCP報文,也可以是UDP報文。TCP根據(jù)步驟205選擇的數(shù)據(jù)轉(zhuǎn)發(fā)格式將緊急指針信息和緊急數(shù)據(jù)填充在報文中,轉(zhuǎn)發(fā)該報文??蛇x地,還可以在上述報文中填充普通數(shù)據(jù),即TCP代理將緊急數(shù)據(jù)和普通數(shù)據(jù)一起轉(zhuǎn)發(fā)出去。例如,當(dāng)對緊急數(shù)據(jù)和接收到的普通數(shù)據(jù)并行進行去重處理時,可以選擇TCP緊急方式將經(jīng)去重處理后的緊急數(shù)據(jù)和普通數(shù)據(jù)一起打包轉(zhuǎn)發(fā)出去??蛇x地,TCP代理還可以分別單獨轉(zhuǎn)發(fā)普通數(shù)據(jù)和緊急數(shù)據(jù)。應(yīng)理解,本發(fā)明實施例對此并不限定。圖3是本發(fā)明一個實施例的TCP代理的結(jié)構(gòu)框圖。圖3的TCP代理300包括接收單元301,獲取單元302、處理單元303、填充單元304和發(fā)送單元305。接收單元301,用于接收網(wǎng)絡(luò)數(shù)據(jù),網(wǎng)絡(luò)數(shù)據(jù)攜帶緊急指針信息和緊急數(shù)據(jù)。獲取單元302,用于獲取接收單元302接收的緊急指針信息和緊急數(shù)據(jù)。處理單元303,用于根據(jù)獲取單元302獲取的緊急指針信息對獲取單元302獲取的緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù)。填充單元304,用于在報文中填充獲取單元302獲取的緊急指針信息和處理單元303處理的處理后的緊急數(shù)據(jù)。發(fā)送單元305,用于轉(zhuǎn)發(fā)報文。本發(fā)明實施例通過TCP代理獲取接收到的網(wǎng)絡(luò)數(shù)據(jù)中所攜帶的緊急指針信息和緊急數(shù)據(jù),根據(jù)緊急指針信息對緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù),在報文中填充緊急指針信息和處理后的緊急數(shù)據(jù),并轉(zhuǎn)發(fā)該報文,從而優(yōu)化網(wǎng)絡(luò)數(shù)據(jù)的處理,有效地提高數(shù)據(jù)處理的靈活性。TCP代理300可實現(xiàn)圖1和圖2的實施例,因此為避免重復(fù),不再詳細(xì)描述。可選地,作為一個實施例,填充單元304還可以用于根據(jù)數(shù)據(jù)轉(zhuǎn)發(fā)方式在報文中填充緊急指針信息和處理后的緊急數(shù)據(jù)??蛇x地,數(shù)據(jù)轉(zhuǎn)發(fā)方式可以是本發(fā)明提供的TCP選項方式、改進的TCP緊急方式、或者私有消息方式等。進一步地,數(shù)據(jù)轉(zhuǎn)發(fā)方式為TCP選項方式且報文為TCP報文,填充單元304具體用于:將緊急指針信息中的緊急標(biāo)志填充在TCP報文的TCP選項中,并將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及處理后的緊急數(shù)據(jù)填充在TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。數(shù)據(jù)轉(zhuǎn)發(fā)方式為改進的TCP緊急方式且報文為TCP報文,填充單元304具體用于:將TCP報文中的緊急指針URG標(biāo)志置位,將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及處理后的緊急數(shù)據(jù)填充在TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。數(shù)據(jù)轉(zhuǎn)發(fā)方式為私有消息方式,填充單元304具體用于:將報文中的消息類型標(biāo)識設(shè)置為緊急指針信息中的緊急標(biāo)志,將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及緊急數(shù)據(jù)填充在報文的載荷中,報文可以是TCP報文,也可以是UDP報文。通過本發(fā)明實施例提供的數(shù)據(jù)轉(zhuǎn)發(fā)方式能夠明確緊急數(shù)據(jù)的傳輸順序和緊急數(shù)據(jù)在數(shù)據(jù)流中相對于普通數(shù)據(jù)的位置,避免緊急數(shù)據(jù)的丟失,并且還能夠?qū)崿F(xiàn)緊急數(shù)據(jù)的加密,提高數(shù)據(jù)傳輸?shù)陌踩?。?dāng)然,數(shù)據(jù)轉(zhuǎn)發(fā)方式也可以采用現(xiàn)有的TCP緊急方式。應(yīng)理解,本發(fā)明實施例對此并不限定??蛇x地,作為另一個實施例,處理單元303具體用于:對緊急數(shù)據(jù)進行壓縮或解壓,對緊急數(shù)據(jù)進行去重或恢復(fù),或者對緊急數(shù)據(jù)進行加密或解密。具體實施例可以參考上述,此處不再贅述,應(yīng)理解,本發(fā)明實施例TCP代理如何處理緊急數(shù)據(jù)并不限定。本發(fā)明實施例進一步給出實現(xiàn)上述方法實施例中各步驟及方法的裝置實施例。圖4是本發(fā)明又一個實施例的TCP代理的結(jié)構(gòu)框圖,在該實施例中,設(shè)備400包括處理器401,存儲器402,發(fā)送器403和接收器404。處理器401控制設(shè)備400的操作,處理器401還可以稱為CPU。存儲器402可以包括只讀存儲器和隨機存取存儲器,并向處理器401提供指令和數(shù)據(jù)。存儲器402的一部分還可以包括非易失行隨機存取存儲器(NVRAM)。處理器401,存儲器402,發(fā)送器403和接收器404通過總線系統(tǒng)410耦合在一起,其中總線系統(tǒng)410除包括數(shù)據(jù)總線之外,還包括電源總線、控制總線和狀態(tài)信號總線。但是為了清楚說明起見,在圖中將各種總線都標(biāo)為總線系統(tǒng)410。上述本發(fā)明實施例揭示的方法可以應(yīng)用上述的設(shè)備400。其中,處理器401可能是一種集成電路芯片,具有信號的處理能力。在實現(xiàn)過程中,上述方法的各步驟可以通過處理器401中的硬件的集成邏輯電路或者軟件形式的指令完成。接收器404,用于接收網(wǎng)絡(luò)數(shù)據(jù),網(wǎng)絡(luò)數(shù)據(jù)攜帶緊急指針信息和緊急數(shù)據(jù)。處理器401,用于獲取接收器404接收的緊急指針信息和緊急數(shù)據(jù);還用于根據(jù)獲取的緊急指針信息對獲取的緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù);還用于在報文中填充獲取的緊急指針信息和處理后的緊急數(shù)據(jù)。發(fā)送器403,用于轉(zhuǎn)發(fā)報文。本發(fā)明實施例通過TCP代理獲取接收到的網(wǎng)絡(luò)數(shù)據(jù)中所攜帶的緊急指針信息和緊急數(shù)據(jù),根據(jù)緊急指針信息對緊急數(shù)據(jù)進行數(shù)據(jù)處理獲得處理后的緊急數(shù)據(jù),在報文中填充緊急指針信息和處理后的緊急數(shù)據(jù),并轉(zhuǎn)發(fā)該報文,從而優(yōu)化網(wǎng)絡(luò)數(shù)據(jù)的處理,有效地提高數(shù)據(jù)處理的靈活性。設(shè)備400可實現(xiàn)圖1和圖2的實施例,因此為避免重復(fù),不再詳細(xì)描述??蛇x地,作為一個實施例,處理器401還可以用于根據(jù)數(shù)據(jù)轉(zhuǎn)發(fā)方式在報文中填充緊急指針信息和處理后的緊急數(shù)據(jù)。可選地,數(shù)據(jù)轉(zhuǎn)發(fā)方式可以是本發(fā)明提供的TCP選項方式、改進的TCP緊急方式、或者私有消息方式等。進一步地,數(shù)據(jù)轉(zhuǎn)發(fā)方式為TCP選項方式且報文為TCP報文,處理器401具體用于:將緊急指針信息中的緊急標(biāo)志填充在TCP報文的TCP選項中,并將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及處理后的緊急數(shù)據(jù)填充在TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。數(shù)據(jù)轉(zhuǎn)發(fā)方式為改進的TCP緊急方式且報文為TCP報文,處理器401具體用于:將TCP報文中的緊急指針URG標(biāo)志置位,將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及處理后的緊急數(shù)據(jù)填充在TCP報文的數(shù)據(jù)區(qū)緊急數(shù)據(jù)域中。數(shù)據(jù)轉(zhuǎn)發(fā)方式為私有消息方式,處理器401具體用于:將報文中的消息類型標(biāo)識設(shè)置為緊急指針信息中的緊急標(biāo)志,將緊急指針信息中的緊急數(shù)據(jù)起始序列號和緊急數(shù)據(jù)結(jié)束位置,以及緊急數(shù)據(jù)填充在報文的載荷中,報文可以是TCP報文,也可以是UDP報文。通過本發(fā)明實施例提供的數(shù)據(jù)轉(zhuǎn)發(fā)方式能夠明確緊急數(shù)據(jù)的傳輸順序和緊急數(shù)據(jù)在數(shù)據(jù)流中相對于普通數(shù)據(jù)的位置,避免緊急數(shù)據(jù)的丟失,并且還能夠?qū)崿F(xiàn)緊急數(shù)據(jù)的加密,提高數(shù)據(jù)傳輸?shù)陌踩?。?dāng)然,數(shù)據(jù)轉(zhuǎn)發(fā)方式也可以采用現(xiàn)有的TCP緊急方式。應(yīng)理解,本發(fā)明實施例對此并不限定??蛇x地,作為另一個實施例,處理器401具體用于:對緊急數(shù)據(jù)進行壓縮或解壓,對緊急數(shù)據(jù)進行去重或恢復(fù),或者對緊急數(shù)據(jù)進行加密或解密。具體實施例可以參考上述,此處不再贅述,應(yīng)理解,本發(fā)明實施例TCP代理如何處理緊急數(shù)據(jù)并不限定。本領(lǐng)域普通技術(shù)人員可以意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、或者計算機軟件和電子硬件的結(jié)合來實現(xiàn)。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。所述功能如果以軟件功能單元的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:U盤、移動硬盤、只讀存儲器(ROM,Read-OnlyMemory)、隨機存取存儲器(RAM,RandomAccessMemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。