精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

排查網(wǎng)絡故障實踐:解決負載均衡的難題

責任編輯:editor006

作者:核子可樂譯

2015-08-14 16:00:08

摘自:it168網(wǎng)站

對網(wǎng)絡問題進行故障排查往往是件棘手的任務,而負載均衡器的存在則會帶來其它更為復雜的挑戰(zhàn)。對于那些時間增量達到1秒甚至更高的請求 響應組合,我們需要排查整個追蹤過程,直到找出顯著增加延遲水平的對應端口。

對網(wǎng)絡問題進行故障排查往往是件棘手的任務,而負載均衡器的存在則會帶來其它更為復雜的挑戰(zhàn)。我們很難判斷負載均衡器單純是在丟棄數(shù)據(jù)包、以某種方式變更數(shù)據(jù)包還是導致網(wǎng)絡整體延遲水平上升。不過在今天的文章中,我們將共享幾項常見技巧,相信它們能幫助各位更加輕松地發(fā)現(xiàn)問題所在。

對于任何一種故障排查流程來講,首先要做的肯定是檢查整套實體的統(tǒng)計信息。然而,即使統(tǒng)計信息顯示一切運轉正常,我們?nèi)匀徊荒芫痛伺懦嬖诰W(wǎng)絡問題的可能性。接下來,我們要做的就是引入故障排查領域的中立處理手段——數(shù)據(jù)包分析。雖然目前已經(jīng)有大量優(yōu)秀的收費數(shù)據(jù)包分析產(chǎn)品可供選擇,但我個人更青睞開源Wireshark。

當對包含負載均衡器的網(wǎng)絡體系進行問題分析時,首先要解決的問題就是該負載均衡器是否處于透明模式。在透明模式下,負載均衡器會將原有客戶IP作為源IP。而在非透明模式下,該負載均衡器則會利用虛擬IP地址——或者簡稱VIP——向服務器發(fā)送請求。一般情況下,負載均衡器大多會以非透明模式運行。

現(xiàn)在大家已經(jīng)準備好對文件進行追蹤了。在理想狀態(tài)下,我們可以在下圖中的每個點內(nèi)設置分接器。如果不具備分接器,大家也可以利用SPAN或者交換機上的鏡像端口捕捉相關流量。當然,大家也可以在防火墻以及負載均衡器上的入站與出站端口使用tcpdump。其中的關竅在于,我們必須在全部四個位置一次性捕捉數(shù)據(jù)包,從而通過四種不同的角度審視傳輸會話。

排查網(wǎng)絡故障實踐:解決負載均衡的難題

在捕捉到數(shù)據(jù)之后,大家必須從全部四個跟蹤文件當中找到同時存在的單一會話。一般來講,大家能夠通過過濾器找出請求與完成的兩個IP地址。不過請注意,負載均衡器是在服務器端執(zhí)行NAT的,因此對客戶端IP進行過濾對服務器端追蹤工作并無效果。

從第四層出發(fā)則能夠解決這一難題。大家可以在TCP報頭當中過濾序列號。不過需要注意的是,Wireshark會在默認情況下顯示相關序列號,因此我們最終可能會得到成百上千個以序列號1開頭的數(shù)據(jù)包。解決問題的關鍵在于關閉TCP設置當中的相關序列號功能。只需要取消勾選項,過濾結果就會顯示實際十位序列號,而非作為會話開頭的第一位數(shù)字。在對全部四個跟蹤文件進行相同序列號過濾之后,大家應該會在每個文件中找到對應的惟一數(shù)據(jù)包。

排查網(wǎng)絡故障實踐:解決負載均衡的難題

麻煩的部分在于,如果大家的負載均衡器在NAT端自行創(chuàng)建出了指向服務器的數(shù)據(jù)包,那么各個文件當中的序列字段將不再完全相同。在這種情況下,最理想的辦法是從應用層內(nèi)選擇惟一字段。對于HTTP,我建議大家使用Cookie字段;而對于HTTPS,Client Hello中的Random Bytes字段則最為合適。

排查網(wǎng)絡故障實踐:解決負載均衡的難題

最后,我們終于能夠捕捉到單一會話,并對該痕跡進行訪問了。首先,查看丟包情況。在Wireshark Expert Analysis當中,這些數(shù)據(jù)包會被標為“Previous segment no captured(即前段未被捕捉)。”這種情況可能出現(xiàn)在一個或者多個跟蹤文件當中,但不會是全部。舉例來說,如果大家在防火墻跟蹤文件的出站端而非入站端發(fā)現(xiàn)了來自服務器的響應,那么就會判斷出該數(shù)據(jù)包被防火墻丟棄。

在丟包查找完成后,檢查TCP握手以確保各TCP選項沒有在路徑中受到篡改。當路徑中的某個對話框自行創(chuàng)建數(shù)據(jù)包、而非以透明化方式直接經(jīng)過時,則窗口縮放與選擇性應答會出現(xiàn)消失趨勢。這兩個選項對于評估數(shù)據(jù)吞吐量而言非常重要,千萬不要忽略。

最后一個需要解決的問題就是在跟蹤文件中尋找高時間增量。通過對四個不同檢查點進行數(shù)據(jù)捕捉,大家肯定能夠發(fā)現(xiàn)的就是延遲水平的提升。首先查看握手,并以同步請求(SYN)與同步響應(SYN/ACK)之間的時間長度作為參考基準。查看跟蹤文件中指向最接近客戶端的防火墻的入站請求與響應。

對于那些時間增量達到1秒甚至更高的請求/響應組合,我們需要排查整個追蹤過程,直到找出顯著增加延遲水平的對應端口。其是否來自CPU處于運行峰值的防火墻?還是某個未能正常追蹤其NAT表的負載均衡器?當然,也可能是存在太多并發(fā)連接的服務器。排查整個追蹤流程將幫助大家了解問題的出現(xiàn)位置,同時明確哪些位置運轉正常。

在網(wǎng)絡排查工作當中,設置數(shù)據(jù)包捕捉可能會占用大量寶貴時間,但從長久角度看、這卻是一種節(jié)約時間的良好習慣。

鏈接已復制,快去分享吧

企業(yè)網(wǎng)版權所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 鹤壁市| 遵化市| 隆尧县| 贡山| 博湖县| 开封市| 库车县| 马鞍山市| 常宁市| 高要市| 太保市| 措美县| 裕民县| 巴中市| 兰考县| 新巴尔虎左旗| 白朗县| 吴忠市| 卢氏县| 兰西县| 遂宁市| 龙井市| 玛纳斯县| 高密市| 兴义市| 和田县| 泰和县| 菏泽市| 汉川市| 罗甸县| 昌都县| 托克逊县| 托克托县| 高青县| 南平市| 大连市| 吴川市| 孝义市| 高州市| 耿马| 平度市|