Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
如何針對我的 Direct Connect 連線封包遺失進行疑難排解?
我使用 AWS Direct Connect 來傳輸資料。我將資料傳輸到 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體時遇到封包遺失的問題。如何隔離封包遺失?
簡短描述
當傳輸的資料封包無法抵達其目的地時就會發生封包遺失,導致網路效能問題。封包遺失是由目的地的低訊號強度、過量系統使用率、網路壅塞和網路路由設定不當所造成。
解決方案
針對您的網路裝置和 Direct Connect 連線執行下列檢查。
檢查 AWS Personal Health Dashboard 上的排程維護或事件
AWS Personal Health Dashboard 會顯示相關資訊,也會提供活動的通知。如需詳細資訊,請參閱 如何取得 Direct Connect 排程維護或事件的通知?
檢查 Direct Connect 端點、客戶閘道 (CGW) 和中級裝置 (第 1 層) 的指標
使用 CGW 和中級裝置,問題可能是在內部部署網路或前往 AWS 的傳輸路徑。在內部部署節點和中級裝置上檢查下列項目:
- 介面擺動的 CGW 日誌。
- 問題發生時 CGW 的 CPU 使用率。
- Direct Connect 連線終止時裝置上的指示燈讀數。
- Direct Connect 連線因為輸入錯誤、遞增架構錯誤、循環備援 (CRC) 錯誤、短小、巨大和調節而終止的裝置。
檢查 Direct Connect 連線指標 (第 1 層)
檢查下列 Direct Connect 指標:
- ConnectionErrorCount:套用統計數字加總,注意非零值表示 AWS 裝置上存在 MAC 級別錯誤。
- ConnectionLightLevelTX 和 ConnectionLightLevelRX:檢查發生問題時 Direct Connect 連線上記錄的燈號。可接受的範圍是 -14.4 到 2.50 dBm 之間。
- ConnectionBpsEgress 和 ConnectionBpsIngress:檢查因為連結壅塞而發生封包遺失時的 Direct Connect 連線上的流量。
如需詳細資訊,請參閱 Direct Connect 連線指標。
檢查非對稱次等最佳路由 (第 3 層)
如果內部部署防火牆執行會造成網路流量丟棄的單播反向路徑轉送,非對稱路由會造成封包遺失。使用內部部署網路的次等最佳路由也會造成封包遺失。
如需詳細資訊,請參閱在傳輸閘道中建立 VPN 作為 Direct Connect 的備份時,如何解決非對稱路由問題?
內部部署主機與 AWS 主機 (第 3 層) 之間的端對端雙向追蹤路由
在主機之間執行追蹤路由會決定在雙向採用的網路路徑。追蹤結果也會決定路由是否為非對稱、負載平衡等等。
1. 執行下列命令以安裝 traceroute:
Linux:
sudo yum install traceroute
Ubuntu:
sudo apt-get install traceroute
2.然後,針對 ICMP traceroute 執行類似以下的命令:
sudo traceroute -T -p <destination Port> <IP of destination host>
Windows 作業系統:
2. 解壓縮 Tracetcp ZIP 檔案。
3. 將 tracetcp.exe 複製到您的 C 磁碟機。
4. 安裝 WinPcap。
5. 開啟命令提示字元並且使用 *C:\Users\username>cd * 命令讓 WinPcap 的根目錄指向您的 C 磁碟機。
6. 使用下列命令執行 tracetcp:tracetcp.exe hostname:port 或 tracetcp.exe ip:port。
內部部署主機與 AWS 主機 (第 3 層) 之間的端對端雙向 MTR 測試
MTR 測試類似於 traceroute,允許探索主機之間網路連線路徑中的每個路由器。MTR 測試也會提供路徑中每個節點的資訊,例如封包遺失。
檢查 MTR 結果是否有封包遺失和網路延遲。躍點的網路遺失百分比可以指出路由器的問題。某些服務提供者會限制 MTR 使用的 ICMP 流量。若要判斷封包遺失是否是速率限制所造成,請檢閱後續躍點。如果後續躍點的損失顯示為 0.0%,這可能表示 ICMP 速率限制。
1. 執行下列命令以安裝 MTR:
Amazon Linux/REHEL:
$ sudo yum install mtr -y
Ubuntu:
sudo apt install mtr -y
Windows 作業系統:
下載並安裝 WinMTR。
**注意:**對於 Windows 作業系統,WinMTR 不支援以 TCP 為基礎的 MTR。
2. 對於內部部署 --> AWS 方向,在內部部署主機上執行 MTR (以 ICMP 和 TCP 為基礎):
$ mtr -n -c 100 <private IP of EC2> --report $ mtr -n -T -P <EC2 instance open TCP port> -c 100 <private IP of EC2> --report
3. 對於 AWS --> 內部部署方向,在 EC2 執行個體上執行 MTR (基於 ICMP 和 TCP):
$ mtr -n -c 100 <private IP of the local host> --report $ mtr -n -T -P <local host open TCP port> -c 100 <private IP of the local host> --report
檢閱內部部署主機與 AWS 主機 (第 3 層) 之間的路徑 MTU
最大傳輸單位 (MTU) 是透過網路連線傳遞的最大可允許封包大小。路徑 MTU 探索 (PMTUD) 會決定 MTU 路徑。如果封包太大,則會發生封包遺失。如需詳細資訊,請參閱 路徑 MTU 探索。
您可以使用 tracepath 檢查兩部主機之間的路徑 MTU。
1. 對於內部部署 --> AWS 方向,從本機主機在連接埠 80 上執行 tracepath:
$ tracepath -n -p 80 <EC2 private instance IP>
2.對於 AWS --> 內部部署方向,從 EC2 執行個體在連接埠 80 上執行 tracepath:
$ tracepath -n -p 80 <private IP of local host>
相關資訊
- 語言
- 中文 (繁體)

相關內容
- 已提問 1 年前
AWS 官方已更新 1 年前