一種tcp連接的time_wait狀態(tài)下節(jié)省內(nèi)存的方法
【專利摘要】本發(fā)明公開了一種TCP連接的TIME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,它是在TCP連接進(jìn)入TIME_WAIT狀態(tài)時(shí),采用Timewait控制模塊取代TCP控制模塊,其中所述的Timewait控制模塊用于維護(hù)TCP連接。本發(fā)明在保持TIME_WAIT狀態(tài)時(shí)連接的超時(shí)時(shí)間一致的前提下,能夠降低系統(tǒng)內(nèi)存損耗,緩解了在高并發(fā)連接下,由于TIME_WAIT狀態(tài)的超時(shí)時(shí)間導(dǎo)致的服務(wù)器性能下降、網(wǎng)絡(luò)阻塞等現(xiàn)象。
【專利說(shuō)明】—種TCP連接的TIME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及網(wǎng)絡(luò)傳輸領(lǐng)域,特別涉及一種TCP連接的TIME_WAIT(等待足夠的時(shí)間以確保遠(yuǎn)程TCP接收到連接中斷請(qǐng)求的確認(rèn))狀態(tài)下節(jié)省內(nèi)存的方法。
【背景技術(shù)】
[0002]網(wǎng)絡(luò)協(xié)議層使用協(xié)議控制模塊(PCB:protocol control block)存放各UDP (UserDatagram Protocol,用戶數(shù)據(jù)包協(xié)議)和 TCP (Transmission Control Protocol 傳輸控制協(xié)議)插口所要求的多個(gè)信息片?;ヂ?lián)網(wǎng)協(xié)議維護(hù)包括互聯(lián)網(wǎng)協(xié)議控制模塊(簡(jiǎn)稱:inpcb)和TCP控制模塊(簡(jiǎn)稱:tcpcb)。由于UDP是無(wú)連接的,所以一個(gè)端結(jié)點(diǎn)需要的所有信息都可以在互聯(lián)網(wǎng)協(xié)議控制模塊中找到,不需要UDP控制模塊。
[0003]互聯(lián)網(wǎng)互聯(lián)網(wǎng)協(xié)議控制模塊含有所有UDP和TCP端結(jié)點(diǎn)共有的信息:外部和本地IP地址、外部和本地端號(hào)、IP首部原型、該端結(jié)點(diǎn)使用的IP選項(xiàng)以及一個(gè)指向該端結(jié)點(diǎn)目的地址選路表入口的指針。TCP控制模塊包含了 TCP為各連接維護(hù)的所有結(jié)點(diǎn)信息:兩個(gè)方向的序號(hào)、窗口大小、重傳次數(shù)等等。
[0004]根據(jù)《TCP/IP詳解》中的TCP的建立和終止中有關(guān)"TCP的終止〃的講解,TCP的終止通過(guò)雙方的四次握手實(shí)現(xiàn)。發(fā)起終止的一方執(zhí)行主動(dòng)關(guān)閉,響應(yīng)的另一方執(zhí)行被動(dòng)關(guān)閉,TCP正常關(guān)閉連接的狀態(tài)變化如附圖1所示:①主動(dòng)關(guān)閉方更改狀態(tài)為FIN_WAIT_1,關(guān)閉應(yīng)用程序進(jìn)程,發(fā)出一個(gè)TCP的FIN包;②接收方收到FIN包,返回一個(gè)帶確認(rèn)序號(hào)的ACK,同時(shí)向自己對(duì)應(yīng)的進(jìn)程發(fā)送一個(gè)文件結(jié)束符E0F,同時(shí)更改狀態(tài)為CL0SE_WAIT,主動(dòng)關(guān)閉方接到ACK后狀態(tài)更改為FIN_WAIT_2 接收方關(guān)閉應(yīng)用程序進(jìn)程,更改狀態(tài)為L(zhǎng)AST_ACK,并向?qū)Ψ桨l(fā)出一個(gè)TCP的FIN包;④發(fā)起方接到FIN后狀態(tài)更改為HME_WAIT,并發(fā)出這個(gè)FIN的ACK確認(rèn)。ACK發(fā)送成功后雙方TCP狀態(tài)變?yōu)镃LOSED。
[0005]根據(jù)TCP協(xié)議,主動(dòng)發(fā)起關(guān)閉的一方,會(huì)進(jìn)入HME_WAIT狀態(tài)。TCP實(shí)現(xiàn)必須可靠地終止連接的兩個(gè)方向(全雙工關(guān)閉),持續(xù)2MSL (Max Segment Lifetime最大分段生存時(shí)間)通常是被要求的,一般缺省時(shí)間為60-240秒,即TME_WAIT狀態(tài)需維持2MSL。設(shè)置HME_WAIT狀態(tài)主要有以下兩個(gè)原因:①防止上一次連接中的數(shù)據(jù)包迷路后重新出現(xiàn),會(huì)影響第二個(gè)擁有相同相關(guān)五元組的新連接(經(jīng)過(guò)2MSL,上一次連接中所有的重復(fù)包都會(huì)消失),所以該連接的新的替身必須在前一個(gè)連接替身關(guān)閉2MSL之后才能再次發(fā)起;②可靠的關(guān)閉TCP連接,如圖2所示,在主動(dòng)關(guān)閉方發(fā)送的最后一個(gè)ACK,有可能丟失,那么另一端將超時(shí)并重傳最后的FIN報(bào)文段,因此,在主動(dòng)關(guān)閉的一端保留連接的狀態(tài)信息,這樣它才能在需要的時(shí)候重傳最后的確認(rèn)報(bào)文段;否則,它收到最后的FIN報(bào)文段后就無(wú)法重傳最后一個(gè)ACK,而只能發(fā)出RST報(bào)文段,從而造成虛假的錯(cuò)誤信息,所以主動(dòng)關(guān)閉方要處于TIME_WAIT狀態(tài),而不能是CLOSED。
[0006]綜上,TCP在關(guān)閉連接時(shí),主動(dòng)關(guān)閉的一方為應(yīng)對(duì)網(wǎng)絡(luò)丟包情況,保證對(duì)方連接能夠完整關(guān)閉,需要保存一個(gè)HME_WAIT狀態(tài)的連接,并且所述HME_WAIT狀態(tài)應(yīng)保持時(shí)間足夠長(zhǎng),例如2MSL。但是,常規(guī)的設(shè)置方法容易產(chǎn)生幾方面的問(wèn)題,首先在高并發(fā)連接下,常導(dǎo)致服務(wù)器性能下降,甚至阻塞網(wǎng)絡(luò),嚴(yán)重影響服務(wù);其次,在TCP連接比較多的時(shí)候,累積的HME_WAIT連接會(huì)占用大量系統(tǒng)內(nèi)存,從而降低系統(tǒng)的處理能力;再次,雖然現(xiàn)有技術(shù)出現(xiàn)了對(duì)通用的TCP協(xié)議棧采用通過(guò)修改內(nèi)核參數(shù)來(lái)減少TIME_WAIT超時(shí)時(shí)間,緩解了內(nèi)存的損耗,但與此同時(shí)也降低了 HME_WAIT機(jī)制的安全性,系統(tǒng)只能在HME_WAIT連接較多時(shí)作為一個(gè)臨時(shí)解決方案,不能作為一個(gè)性能可靠的持久解決方案。
【發(fā)明內(nèi)容】
[0007]為克服已有技術(shù)中存在的問(wèn)題,本發(fā)明的目的是提供一種TCP連接的HME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,該方法不減少TIME_WAIT狀態(tài)下連接的超時(shí)時(shí)間,也能夠降低系統(tǒng)內(nèi)存損耗。
[0008]一種TCP連接的HME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,是在TCP連接進(jìn)入HME_WAIT狀態(tài)時(shí),采用Timewait控制模塊取代TCP控制模塊,其中所述的Timewait控制模塊用于維護(hù)TCP連接,它至少包括互聯(lián)網(wǎng)協(xié)議控制模塊數(shù)據(jù)、維護(hù)TCP狀態(tài)數(shù)據(jù)、接收序列號(hào)數(shù)據(jù)和超時(shí)定時(shí)器數(shù)據(jù)。
[0009]進(jìn)一步地,在所述的在TCP連接即將進(jìn)入HME_WAIT狀態(tài)時(shí),主動(dòng)關(guān)閉方收發(fā)數(shù)據(jù)包的步驟如下:
[0010]步驟1,主動(dòng)關(guān)閉方在FIN_WAIT_2狀態(tài)下收到FIN,創(chuàng)建Timewait控制模塊,將其狀態(tài)設(shè)為TIME_WAIT,更新recvnextseq,將TCP控制模塊中t_inpcb指針更新到所述的Timewait控制模塊中,刪除TCP控制模塊;然后,
[0011]步驟2,啟動(dòng)TME_WAIT定時(shí)器,設(shè)置系統(tǒng)必要的TME_WAIT狀態(tài)時(shí)間段;然后,
[0012]步驟3,對(duì)上述FIN數(shù)據(jù)包回應(yīng)ACK。
[0013]進(jìn)一步地,是當(dāng)TCP連接進(jìn)入HME_WAIT狀態(tài)后,如果tcpcb_>t_state為--ΜΕ_WAIT,則將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊。
[0014]更進(jìn)一步地,當(dāng)TCP連接進(jìn)入TIME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的具體步驟包括:
[0015]主動(dòng)關(guān)閉方收到FIN,則重置HME_WAIT定時(shí)器,并對(duì)該FIN段回應(yīng)ACK。
[0016]更進(jìn)一步地,當(dāng)TCP連接進(jìn)入TIME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的具體步驟還包括:
[0017]主動(dòng)關(guān)閉方收到RST,則釋放TCP連接資源,跳轉(zhuǎn)到CLOSED狀態(tài),提前終止--ΜΕ_WAIT狀態(tài)。
[0018]更進(jìn)一步地,當(dāng)TCP連接進(jìn)入TIME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的具體步驟還包括:
[0019]主動(dòng)關(guān)閉方收到SYN,當(dāng)SYN報(bào)文段的新的起始序號(hào)大于連接上最后收到的序號(hào),則調(diào)用TCP_CL0SE,釋放處于TME_WAIT狀態(tài)原有連接的PCB進(jìn)程控制塊和TCP控制模塊,控制跳轉(zhuǎn)到尋找監(jiān)聽服務(wù)器,為新的連接創(chuàng)建新的插口。 [0020]本發(fā)明在保持TME_WAIT狀態(tài)時(shí)連接的超時(shí)時(shí)間一致的前提下,能夠降低系統(tǒng)內(nèi)存損耗,緩解了在高并發(fā)連接下,由于TIME_WAIT狀態(tài)的超時(shí)時(shí)間導(dǎo)致的服務(wù)器性能下降、網(wǎng)絡(luò)阻塞等現(xiàn)象;提高了在TCP連接較多、累積大量HME_WAIT時(shí)系統(tǒng)的處理能力;同時(shí),維持TIME_WAIT的超時(shí)時(shí)間與通用TCP控制模塊的超時(shí)時(shí)間一致,既緩解了內(nèi)存的損耗,也 保證了 HME_WAIT機(jī)制的安全性。
【專利附圖】
【附圖說(shuō)明】
[0021]圖1是已有技術(shù)中TCP正常關(guān)閉連接的狀態(tài)變化示意圖;
[0022]圖2是已有技術(shù)中最后一個(gè)報(bào)文段丟失時(shí)的TCP連接關(guān)閉示意圖;
[0023]圖3是本發(fā)明系統(tǒng)HME_WAIT狀態(tài)下維護(hù)TCP連接控制模塊前后比較示意圖;
[0024]圖4是本發(fā)明Timewait控制模塊代替TCP控制塊所占內(nèi)存空間比較示意圖;
[0025]圖5是本發(fā)明在TCP連接即將進(jìn)入HME_WAIT狀態(tài)時(shí)主動(dòng)關(guān)閉方接受和發(fā)送數(shù)據(jù)包步驟示意圖。
[0026]圖6是TIME_WAIT狀態(tài)下2MSL超時(shí)時(shí)間段內(nèi)可能收到被動(dòng)關(guān)閉方發(fā)來(lái)的報(bào)文段傳輸不意圖;
【具體實(shí)施方式】
[0027]在以下的敘述中,為了使讀者更好地理解本申請(qǐng)而提出了許多技術(shù)細(xì)節(jié)。但是,本領(lǐng)域的普通技術(shù)人員可以理解,即使沒(méi)有這些技術(shù)細(xì)節(jié)和基于以下各實(shí)施方式的種種變化和修改,也是本申請(qǐng)各權(quán)利要求所要求保護(hù)的技術(shù)方案。
[0028]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明的實(shí)施方式作進(jìn)一步地詳細(xì)描述。
[0029]FreeBSD (一種UNIX操作系統(tǒng))定義了互聯(lián)網(wǎng)協(xié)議控制模塊和TCP控制模塊?;ヂ?lián)網(wǎng)協(xié)議控制模塊與TCP控制模塊彼此對(duì)應(yīng),都帶有指向?qū)Ψ降闹羔?,維護(hù)一個(gè)正常的TCP連接所需要的信息量比較大,TCP控制塊中包含發(fā)送/接受序列號(hào),發(fā)送/接受窗口,擁塞控制,重傳機(jī)制參數(shù)維護(hù),其它特殊功能參數(shù)及相關(guān)定時(shí)器。但是本發(fā)明注意到維護(hù)一個(gè)HME_WAIT狀態(tài)連接的信息量則比較小,除了需要保留互聯(lián)網(wǎng)協(xié)議控制模塊外,只需維護(hù)TCP狀態(tài)、接收序列號(hào)和一個(gè)超時(shí)定時(shí)器等,如圖3所示,為TIME_WAIT狀態(tài)下維護(hù)TCP連接控制模塊前后比較,本發(fā)明Timewait控制模塊定義為tcpcbJIMEWAIT,其中數(shù)據(jù)狀態(tài)和指向互聯(lián)網(wǎng)協(xié)議控制模塊指針應(yīng)和TCP控制模塊中相應(yīng)字段位置一一對(duì)應(yīng)。
[0030]再如圖3及圖4所示,當(dāng)TCP連接進(jìn)入TIME_WAIT狀態(tài)時(shí),采用一個(gè)精簡(jiǎn)的數(shù)據(jù)結(jié)構(gòu)Timewait控制模塊取代TCP控制模塊,這樣我們既能在HME_WAIT狀態(tài)下維持不變的時(shí)間段,例如2MSL時(shí)間段,使得系統(tǒng)正確處理在第一個(gè)ACK (最長(zhǎng)生存時(shí)間為MSL)丟失的情況下,能夠收到對(duì)端重傳的FIN(最長(zhǎng)生存時(shí)間為MSL),然后重傳ACK,同時(shí)也降低了內(nèi)存的使用。
[0031]本發(fā)明一種TCP連接的TME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,是在TCP連接進(jìn)入TIME_WAIT狀態(tài)時(shí),采用Timewait控制模塊取代通用TCP控制模塊,其中Timewait控制模塊用于維護(hù)TCP連接,它至少包括互聯(lián)網(wǎng)協(xié)議控制模塊數(shù)據(jù)、維護(hù)TCP狀態(tài)數(shù)據(jù)、接收序列號(hào)數(shù)據(jù)和超時(shí)定時(shí)器數(shù)據(jù)等。
[0032]進(jìn)一步地,如圖5,所述的在TCP連接即將進(jìn)入HME_WAIT狀態(tài)時(shí),主動(dòng)關(guān)閉方接收和發(fā)送數(shù)據(jù)包的步驟如下:
[0033]步驟1,主動(dòng)關(guān)閉方在FIN_WAIT_2狀態(tài)下收到FIN,說(shuō)明是正常收到對(duì)端過(guò)來(lái)的FIN數(shù)據(jù)包,這時(shí)創(chuàng)建Timewait控制模塊,將其狀態(tài)設(shè)為HME_WAIT,更新recvnextseq,將TCP控制模塊中t_inpcb指針更新到所述的Timewait控制模塊中,刪除TCP控制模塊;然后,
[0034]步驟2,啟動(dòng)HME_WAIT定時(shí)器,設(shè)置系統(tǒng)必要的HME_WAIT狀態(tài)時(shí)間段,例如設(shè)置時(shí)間為2MSL ;然后,
[0035]步驟3,對(duì)上述FIN數(shù)據(jù)包回應(yīng)ACK。
[0036]圖6顯示了 TME_WAIT狀態(tài)下2MSL時(shí)間段中可能收到被動(dòng)關(guān)閉方發(fā)來(lái)的報(bào)文段。當(dāng)超過(guò)2MSL時(shí)間段后,主動(dòng)關(guān)閉方可以發(fā)起該連接的新的替身。
[0037]TIME_WAIT狀態(tài)下收到FIN、ACK、RST、SYN的數(shù)據(jù)處理與通常協(xié)議棧數(shù)據(jù)處理有所不同,當(dāng)TCP連接的狀態(tài)為HME_WAIT狀態(tài)時(shí),如果tcpcb->t_state為HME_WAIT,需要將TCP控制模塊結(jié)構(gòu)強(qiáng)制轉(zhuǎn)化為Timewait控制模塊結(jié)構(gòu)。詳細(xì)處理可參考RFC793和RFC1337使用說(shuō)明。上述描述了即將進(jìn)入HME_WAIT狀態(tài)(即當(dāng)前狀態(tài)為FIN_WAIT_2)時(shí)主動(dòng)關(guān)閉方接收和發(fā)送數(shù)據(jù)包的步驟,緊接著在HME_WAIT狀態(tài)下主動(dòng)關(guān)閉方接收數(shù)據(jù)包的處理還包括:
[0038]進(jìn)一步地,是當(dāng)TCP連接進(jìn)入HME_WAIT狀態(tài)后,如果tcpcb_>t_state為--ΜΕ_WAIT,則將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊。
[0039]更進(jìn)一步地,當(dāng)TCP連接進(jìn)入TME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的具體步驟包括:
[0040]主動(dòng)關(guān)閉方收到FIN,則重置HME_WAIT定時(shí)器,并對(duì)該FIN段回應(yīng)ACK。
[0041]更進(jìn)一步地,當(dāng)TCP連接進(jìn)入TIME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的具體步驟還包括:
[0042]主動(dòng)關(guān)閉方收到RST,則釋放TCP連接資源,跳轉(zhuǎn)到CLOSED狀態(tài),提前終止--ΜΕ_WAIT狀態(tài)。
[0043]更進(jìn)一步地,當(dāng)TCP連接進(jìn)入TIME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的具體步驟還包括:
[0044]主動(dòng)關(guān)閉方收到SYN,當(dāng)SYN報(bào)文段的新的起始序號(hào)大于連接上最后收到的序號(hào),則調(diào)用TCP_CL0SE,釋放處于TME_WAIT狀態(tài)原有連接的PCB進(jìn)程控制塊和TCP控制模塊,控制跳轉(zhuǎn)到尋找監(jiān)聽服務(wù)器,為新的連接創(chuàng)建新的插口。
[0045]需要說(shuō)明的是,本發(fā)明各設(shè)備實(shí)施方式中提到的各單元都是邏輯單元,在物理上,一個(gè)邏輯單元可以是一個(gè)物理單元,也可以是一個(gè)物理單元的一部分,還可以以多個(gè)物理單元的組合實(shí)現(xiàn),這些邏輯單元本身的物理實(shí)現(xiàn)方式并不是最重要的,這些邏輯單元所實(shí)現(xiàn)的功能的組合才是解決本發(fā)明所提出的技術(shù)問(wèn)題的關(guān)鍵。此外,為了突出本發(fā)明的創(chuàng)新部分,本發(fā)明沒(méi)有引入上述各設(shè)備實(shí)施方式以及與解決本發(fā)明所提出的技術(shù)問(wèn)題關(guān)系不太密切的單元,但這并不表明不存在上述設(shè)備實(shí)施方式以及其它有關(guān)實(shí)施單元。
[0046] 雖然通過(guò)參照本發(fā)明的某些優(yōu)選實(shí)施方式,已經(jīng)對(duì)本發(fā)明進(jìn)行了圖示和描述,但本領(lǐng)域的普通技術(shù)人員應(yīng)該明白,可以在形式上和細(xì)節(jié)上對(duì)其作各種改變,而不偏離本發(fā)明的精神和范圍。
【權(quán)利要求】
1.一種TCP連接的TIME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,其特征是在TCP連接進(jìn)入TIME_WAIT狀態(tài)時(shí),采用Timewait控制模塊取代TCP控制模塊,其中所述的Timewait控制模塊用于維護(hù)TCP連接,它至少包括互聯(lián)網(wǎng)協(xié)議控制模塊數(shù)據(jù)、維護(hù)TCP狀態(tài)數(shù)據(jù)、接收序列號(hào)數(shù)據(jù)和超時(shí)定時(shí)器數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的一種TCP連接的TIME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,其特征是在所述的在TCP連接即將進(jìn)入TIME_WAIT狀態(tài)時(shí),主動(dòng)關(guān)閉方收發(fā)數(shù)據(jù)包的步驟如下: 步驟1,主動(dòng)關(guān)閉方在FIN_WAIT_2狀態(tài)下收到FIN,創(chuàng)建Timewait控制模塊,將其狀態(tài)設(shè)為TIME_WAIT,更新recvnextseq,將TCP控制模塊中t_inpcb指針更新到所述的Timewait控制模塊中,刪除TCP控制模塊;然后, 步驟2,啟動(dòng)TME_WAIT定時(shí)器,設(shè)置系統(tǒng)必要的TME_WAn狀態(tài)時(shí)間段;然后, 步驟3,對(duì)上述FIN數(shù)據(jù)包回應(yīng)ACK。
3.根據(jù)權(quán)利要求1所述的一種TCP連接的TIME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,其特征是當(dāng)TCP連接進(jìn)入HME_WAIT狀態(tài)后,如果tcpcb->t_state為HME_WAIT,則將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊。
4.根據(jù)權(quán)利要求3所述的一種TCP連接的TIME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,其特征是當(dāng)TCP連接進(jìn)入HME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的處理步驟包括: 主動(dòng)關(guān)閉方收到FIN,則重置HME_WAIT定時(shí)器,并對(duì)該FIN段回應(yīng)ACK。
5.根據(jù)權(quán)利要求3或4所述的一種TCP連接的TIME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,其特征是當(dāng)TCP連接進(jìn)入HME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的處理步驟還包括: 主動(dòng)關(guān)閉方收到RST,則釋放TCP連接資源,跳轉(zhuǎn)到CLOSED狀態(tài),提前終止TME_WAIT狀態(tài)。
6.根據(jù)權(quán)利要求3至5之一所述的一種TCP連接的HME_WAIT狀態(tài)下節(jié)省內(nèi)存的方法,其特征是當(dāng)TCP連接進(jìn)入TME_WAIT狀態(tài)后,所述的將TCP控制模塊強(qiáng)制轉(zhuǎn)化為Timewait控制模塊的處理步驟還包括: 主動(dòng)關(guān)閉方收到SYN,當(dāng)SYN報(bào)文段的新的起始序號(hào)大于連接上最后收到的序號(hào),則調(diào)用TCP_CL0SE,釋放處于TME_WAIT狀態(tài)原有連接的PCB進(jìn)程控制塊和TCP控制模塊,控制跳轉(zhuǎn)到尋找監(jiān)聽服務(wù)器,為新的連接創(chuàng)建新的插口。
【文檔編號(hào)】H04L29/06GK103973657SQ201310043485
【公開日】2014年8月6日 申請(qǐng)日期:2013年2月4日 優(yōu)先權(quán)日:2013年2月4日
【發(fā)明者】穆秀玫, 付正立, 鄭智仁, 李樹峰, 貝少峰 申請(qǐng)人:華耀(中國(guó))科技有限公司