版權聲明:可以任意轉載,轉載時請務必以超鏈接形式標明文章原始出處和作者信息
一、測試思路
二、測試詳細設定
4、在請求期間用以下命令統計netstat,輸出的數字減1後爲當前與瀏覽器請求圖片而建立的TCP連接數,減1是因爲要html網頁請求建立的TCP連接,具體見下方截圖
netstat -a -t|grep http|tee rst.txt|wc -l
客戶端
(tcp.DstPort == 80 and ipv4.DestinationAddress == 192.168.1.101)or(tcp.SrcPort == 80 and ipv4.SourceAddress == 192.168.1.101)
以下是在W7中用IE8請求包含一組圖片的網頁(上方截圖的網頁)的netstat和MS Network Monitor抓包的截圖,在請求多組圖片時結果與一組類似,只是數量增加,這裏不再列舉
三、測試結果
1、IE7未做測試是因爲找不到合適的機器,有一個筆記本有IE7,但因爲機主工作需要做兼容性測試,安裝了Internet collection後懷疑被污染導致最後放棄了IE7的測試
2、關於IE6、8的per host max,XP註冊表中的值與IE6實測結果一致,爲2個,但IE8在W7註冊表中寫着是6個,實際卻是16個
3、關於IE的process max,IE6最多在16個域名的情況下達到32(2×16)個連接,IE8在5個域名的情況下達到80(16×5)個連接,此後便沒有嘗試增加更多的 host測試,是否受系統的TCP最大連接數影響也沒有進一步驗證,考慮這年頭的迅雷、驢子等下載軟件都會主動幫用戶修改這個值,上限應該不是問題
在測試的過程中順帶有以下發現
a、點擊“轉到”,在IE下不會發起任何請求,僅僅是重新渲染而已,但FF(3.5)有些不同,如果超過一定時間,會就地址欄中的URL發起一次請求,但不會對頁面元素髮起任何請求,如果不是304,則請求新增加的元素(僅僅請求新增加的元素),這裏的一定時間確切是多長也未知,感覺是1分鐘b、按F5或者點擊“刷新”按鈕,會將現有所有內容與服務器確認,也就是發起的HTTP請求頭中包含If-Modified-Since和If-None-Match這兩個字段,服務器依據這兩個字段進行對比,瀏覽器收到304響應則不再重新獲取c、Ctrl + F5則是所有內容都重新加載,服務器不會有304響應,因爲這時發起的HTTP請求頭中沒有If-Modified-Since和If-None-Match這兩個字段d、在地址欄輸入相同地址(或者選中、回車),等同於與“轉到”