從Windows XP時代開始,酷愛下載的同學(xué)安裝完系統(tǒng)都要做一件事:破解系統(tǒng)作出限制的TCP半開連接數(shù)。即使到了Windows 7時代,這個仍然是很多同學(xué)雷打不動的鐵律。不過,很多熱衷于破解的同學(xué)卻不知道什么是TCP半開連接數(shù),又為什么要進行破解,破解了能帶來什么好處?今天就一起來揭開這些謎團。
正本溯源:通上大橋前的限制
TCP半開連接是指發(fā)送了TCP連接請求,等待對方應(yīng)答的狀態(tài),此時連接并沒有完全建立起來,雙方還無法進行通信交互的狀態(tài),此時就稱為半連接。由于一個完整的TCP連接需要經(jīng)過三次握手才能完成,這里把三次握手之前的連接都稱之為半連接(見圖1)。
為了便于理解,我們把一次完整的TCP連接比作汽車通過一座大橋,在通過大橋之前的行程都稱之為TCP半開連接。TCP半開連接數(shù)就是大橋的車道,由于這個這個半連接數(shù)量如果設(shè)置過大,不僅耗費大量系統(tǒng)資源,而且還可能會遭受很多DDoS攻擊。因此,出于安全考慮,默認(rèn)XP SP2(包括SP3)只允許同時存在10個TCP半開連接,也就是說這個大橋只有10個車道,破解就是通過修改tcpip.sys,拓寬這個大橋,使之擁有更多的車道,也就是增加TCP半開連接數(shù)。這樣如果同時需要過橋的汽車較多,過橋等待的時間就更短了(注意:不是在橋上通行花費時間,是等待上橋的時間),破解半開連接數(shù)的意義也僅此而已。
不過并非大橋越寬越好,大橋?qū)挾纫蛯嶋H車流量匹配,比如,只要設(shè)計50車道就足夠車流順暢通過,設(shè)計成100車道就是浪費了。一般來說,在2M、4M寬帶條件下,TCP半開連接數(shù)只要設(shè)置為256左右即可。
分清概念,系統(tǒng)半開連接和軟件連接數(shù)
經(jīng)過上面的介紹,大家已經(jīng)了解系統(tǒng)TCP半開連接數(shù)的含義,對于P2P下載軟件來說,提高了系統(tǒng)的半開連接數(shù)后,軟件就可以同時發(fā)起更多的連接(當(dāng)然這個數(shù)值必須小于系統(tǒng)半開連接數(shù),否則會導(dǎo)致EventID 4226事件警告出現(xiàn))。修改系統(tǒng)半開連接數(shù)后,軟件就可以同時發(fā)起更多的連接,找到更多的源進行連接下載。比如,對于迅雷,如果將系統(tǒng)TCP半開連接數(shù)設(shè)置為256,那么迅雷全局最大連接數(shù)就要小于256,這個數(shù)值可以在迅雷控制面板窗口中進行設(shè)置(見圖2)。
江湖傳言,一一破解
TCP半開連接只是數(shù)據(jù)成功傳輸之前的“假連接”,對于實際數(shù)據(jù)傳輸并沒有實際的影響。不過,現(xiàn)在網(wǎng)上卻流傳很多關(guān)于tcpip.sys的傳言。來看看這些傳言有沒有事實依據(jù)。
傳言1:半開連接越多越好,修改后會明顯提速
如上所述,半開連接只是數(shù)據(jù)成功傳輸之前的“假連接”,此時并沒有建立成功的TCP連接,因此對于數(shù)據(jù)實際傳輸是沒有任何影響的。這里要分清半連接和TCP連接的不同含義,半開連接是系統(tǒng)允許同時發(fā)起連接的數(shù)量,TCP連接則是指完成握手后建立的數(shù)據(jù)傳輸,后者才是真正和下載速度相關(guān)的。XP系統(tǒng)并沒有限制成功連接的TCP數(shù)量。套用前面比喻就是,微軟只是控制同時過橋的汽車,但是對通過大橋的汽車數(shù)量并沒有限制。半開連接如果過多,反而造成系統(tǒng)負(fù)擔(dān)過重,影響軟件下載。
小提示:
為什么對下載速度沒有實質(zhì)提高,還要對半開連接數(shù)進行破解?同時開啟網(wǎng)絡(luò)任務(wù)較多時,由于系統(tǒng)限制了半開連接數(shù),會導(dǎo)致網(wǎng)絡(luò)斷流假象的出現(xiàn)。破解后,可加快網(wǎng)絡(luò)連接速度,縮短同時連接時的延遲時間(從幾毫秒到幾百毫秒)。
傳言2:全世界人民都在破解半開
對于P2P軟件來說,下載速度快慢只和源的多少、寬帶本身上傳/下載速率相關(guān)。因此對于寬帶速率較高的用戶,比如歐美用戶大多使用100M的光纖寬帶,此時破解TCP半開連接數(shù)就沒什么意義。因為在這種高帶寬條件下,系統(tǒng)允許發(fā)起半開連接數(shù)下就已經(jīng)可以達到下載極限值了。也就是說大橋設(shè)計通行速度已經(jīng)很高了,汽車到了橋頭就直接飛奔而上,根本不需要等待排隊上橋,因此高帶寬用戶無需進行TCP破解。
傳言3:Windows 7也需要破解半開限制
還在Beta版的時候,有人就發(fā)布號稱“地球第一款破解Windows 7 Tcpip.sys半開連接數(shù)限制的補丁”。實際上,從Windows Server 2008和Vista SP2開始,Windows中的TCP半開連接數(shù)限制就被禁用了,因此在Windows 7無需再進行任何的破解操作。對技術(shù)感興趣朋友,可以使用kernel debugger(核心調(diào)試器)查看。具體操作請參考http://bbs.pcbeta.com/thread-527318-1-1.html的介紹。