-
1 # 四川談談
-
2 # 番茄style
網速快慢好比出遠門:
1. 出發前整理的太慢
2. 出發前得查一下怎麼走,看一下目的地在哪個地方
3. 在出行的過程遇到堵車
4. 車太慢,路太窄
5. 太遠了無法直達,得轉幾次車
6. 地方太遠了車得開好久
7. 中間由於特殊情況,乾脆不想去了,就留在某個中轉站了
8. 到了目的地,發現今天賓館都滿了不接待了
大家只要動腦想一想你出門旅遊會遇到哪些情況,基本上就差不多了。
所以一般情況下,從微觀上來講,無非就是從排隊時延,處理時延,傳輸時延,傳播時延四個方面去思考變慢的原因,因為一個影響一個分組的傳輸就是由這幾個時延來導致的。從宏觀上來講,就是比平時多執行了某些特別的操作,或者某些過程執行了多次,或是資料出發前就遇到了很多問題。
下面呢我們就具體的分析一下原因:
1.上網頻寬不足:所謂頻寬,就是指理論上單位時間傳輸的資料量,這明顯就是旅行中的馬路寬度麼,路越寬,能同時行走的車輛就越多。所以,本機上網的網路頻寬的大小會限制你的上網速度,幾年前一般都是2兆--4兆,現在理論上都到了100兆—300兆。為什麼說理論上呢?有誰覺得自己家電腦真的到了那麼快?
這裡呢,就再簡單給大家普及一個名詞——吞吐量,它是指在規定時間,空間以及網路路徑一定的情況下,下載檔案時實際獲得的頻寬。由於受使用者計算機效能,網路裝置質量,資源使用情況,訊號衰減等多個原因,所以我們的網路速度要比理論上小的多。
2.網路擁塞:這個很明顯就是堵車嘛~在網路高峰時期,通訊鏈路上存在大量的分組,這樣會嚴重影響網路報文的傳輸。按照日常生活的理解一般也就是造成延遲的結果,但是在網路中卻不是這麼簡單的影響。如果網路擁塞,網路節點(就是主機或者路由器)的接收能力小於資料到達的速率,就會出現資料包的丟失,延時增加等情況。為了緩解網路通道的壓力,網路協議設計時就制定了應對的措施,比如TCP的擁塞控制手段,在面對網路擁塞時,會迅速減小發送速率。
3.伺服器與客戶端的硬體配置不足:網路本身就是一個請求與應答的過程,所以資料無非就是在兩個機器上流動著。你請求資料,這個請求就得在你的機器上經過一系列處理,透過應用層,運輸層,網路層,鏈路層,物理層一層一層的傳下去,這就類比出行前你得準備各種東西吧。而伺服器傳送資料也要先一層層的解析出你的請求是什麼,然後又要經過一些處理把這個資料給客戶端發出去,這個過程是相當複雜的。說這些就是想說,你的資料肯定是要在兩個機器上進行各種處理的。
從伺服器上說,因為伺服器要處理大量訪問申請,所以必須要有足夠大的執行空間和足夠快的處理速度,一般的大一些網站的伺服器都是伺服器叢集,有非常多的cpu和相當大的記憶體,這樣才能保證能及時的接收並處理大量的客戶端請求,對於大資料的處理,就是透過把任務分給多個節點去執行,最後把結果整合到一臺機器上。
而客戶端的配置,包括CPU,記憶體等也會影響本地的軟體執行效能,所以你覺得網速慢也很有可能是你機器的問題。
4.DNS解析慢:DNS解析一般來說還是很快的,如果你的本地DNS伺服器快取了對方的IP資料,那就幾乎省略了這一步。DNS解析就像出行前要詢問一下地方在哪,不過不像我們用一下百度地圖就能查到,需要從根DNS伺服器——頂級域——權威域一層層遞迴或是迭代來查詢。
每次訪問都需要去用DNS來解析出IP地址,這一步雖然是基於UDP協議,但是仍然也需要多次完整的傳輸過程,所以DNS的解析速度是會影響上網速度的。總之,DNS的解析涉及到本地有沒有快取,查詢的迭代次數(或者是遞迴幾層)等原因。
5.訪問的伺服器距離太遠:這點可以從最簡單的傳播速度上考慮,也可以進一步從節點數量上考慮。假設從中國北京傳輸資訊到美國不需要其他節點,北京到上海也不需要其他節點,很明顯傳輸到上海的要快,因為傳播速度相同,距離遠了,自然就慢了。但是實際上,並不是這樣,北京到美國一個伺服器,中間不知道要經歷多少個節點,節點越多,就會增加各種處理時延,傳輸時延等,所以會嚴重影響上網速度,也就是為什麼訪問國外網的慢的一個重要因素。當然這也只是理論上的,因為訪問國外網站要經過國內各種過濾,篩選,攔截解析等等,所以經常慢的不行,甚至無法訪問。
6.如果是瀏覽器訪問慢的話,頁面包含冗餘的程式碼,或者有大的圖片等資原始檔都會影響訪問速度:因為網頁需要按照一定的順序執行html,css,js來佈局和獲取檔案。進一步解釋,由於js位於html檔案的不同位置,js如果對網頁的節點有重構行為,就會延遲網頁的載入。如果大的圖片先載入可能會讓個頁面載入的很慢,所以可以先載入整個佈局,再去載入圖片。這裡面涉及html等檔案的解析順序,屬於網站優化了~
7.另外從伺服器或客戶端的防火牆等軟體來看,也是導致速度變慢的一個原因,因為防火牆或是其他的一些安全軟體需要對各個包進行解析處理。而軟體的效能,複雜的功能等等,都會佔用系統資源,拖慢執行速度,從而影響上網軟體的執行速度。
————————————————
回覆列表
區域網傳輸提速方法如下:
啟用離線設定,最佳化共享連線效能:Windows Vista以上版本系統新增加了離線設定功能,巧妙地使用該功能,可以讓計算機系統自動將我們頻繁要訪問的共享資源直接快取到本地硬碟中,日後網路連線即使遇到問題不能正常工作時,我們也能很快地訪問到目標共享資源中的內容;很明顯,巧妙地啟用離線設定功能,可以大大最佳化共享連線效能。
首先在本地Windows 系統桌面中開啟“開始”選單,依次單擊其中的“設定”/“網路連線”命令,進入本地系統的網路連線列表視窗,用滑鼠右鍵單擊與目標共享資源相連的本地連線圖示,之後在彈出的右鍵選單中點選“屬性”選項,開啟對應本地連線的屬性設定對話方塊。
其次在該設定對話方塊的“常規”標籤設定頁面中點選“Internet協議(TCP/IP)”選項,同時點中“屬性”按鈕,此時系統螢幕上會自動出現一個TCP/IP協議的設定對話方塊,單擊“高階”按鈕,彈出高階TCP/IP協議設定對話方塊。接著單擊該設定對話方塊中的“WINS”標籤,開啟WINS標籤設頁面,在該頁面的“NetBIOS設定”設定項處,選中“禁用TCP/IP上的NetBIOS”專案,同時單擊“確定”按鈕儲存好上述設定操作,這樣一來本地Windows系統日後進行共享訪問連線時,SMB網路協議就能始終使用Direct hosting模式進行工作了,此時共享訪問連線也就能始終穩定了。
看下這樣能不能解決問題