ฉันมีปัญหาดังต่อไปนี้: เมื่อฉันดึงหน้าจากHackageฉันได้รับความล่าช้ามาก (ประมาณ 30 วินาที) คำขอเพิ่มเติมนั้นเร็ว แต่ถ้าฉันไม่เชื่อมต่อกับมันภายในสองสามนาทีปัญหาก็จะกลับมา
สิ่งที่น่าสนใจเกี่ยวกับปัญหานี้คือ:
- มันเฉพาะกับไซต์นี้โดยเฉพาะ (แฮ็กเกจ) - ฉันไม่ได้รับปัญหาที่คล้ายกันกับเว็บไซต์อื่น ๆ (และฉันเยี่ยมชมค่อนข้างน้อย);
- มันดูเหมือนจะเฉพาะเจาะจงกับ ISP ของฉัน - เมื่อฉันเชื่อมต่อจากที่อื่น ๆ ก็ไม่มีปัญหาเช่นนั้น
ไม่เกี่ยวข้องกับ DNS หรือปัญหาการเชื่อมต่อ - อันที่จริงแล้วการเชื่อมต่อ TCP นั้นถูกสร้างขึ้นอย่างรวดเร็ว เป็นการตอบสนอง HTTP ที่ใช้เวลานานเกินไปดังที่เห็นได้จากตัวอย่างการจับแพ็คเก็ตตัวอย่างต่อไปนี้:
1 0.000000000 192.168.1.101 -> 66.193.37.204 TCP 66 41518 > http [SYN] Seq=0 Win=13600 Len=0 MSS=1360 SACK_PERM=1 WS=16 2 0.205708000 66.193.37.204 -> 192.168.1.101 TCP 66 http > 41518 [SYN, ACK] Seq=0 Ack=1 Win=5840 Len=0 MSS=1440 SACK_PERM=1 WS=128 3 0.205759000 192.168.1.101 -> 66.193.37.204 TCP 54 41518 > http [ACK] Seq=1 Ack=1 Win=13600 Len=0 4 0.205846000 192.168.1.101 -> 66.193.37.204 HTTP 158 GET /packages/hackage.html HTTP/1.1 5 0.406461000 66.193.37.204 -> 192.168.1.101 TCP 54 http > 41518 [ACK] Seq=1 Ack=105 Win=5888 Len=0 6 28.433860000 66.193.37.204 -> 192.168.1.101 TCP 1494 [TCP segment of a reassembled PDU] 7 28.433904000 192.168.1.101 -> 66.193.37.204 TCP 54 41518 > http [ACK] Seq=105 Ack=1441 Win=16480 Len=0 8 28.434211000 66.193.37.204 -> 192.168.1.101 HTTP 1404 HTTP/1.1 200 OK (text/html) 9 28.434228000 192.168.1.101 -> 66.193.37.204 TCP 54 41518 > http [ACK] Seq=105 Ack=2791 Win=19360 Len=0 10 28.434437000 192.168.1.101 -> 66.193.37.204 TCP 54 41518 > http [FIN, ACK] Seq=105 Ack=2791 Win=19360 Len=0 11 28.635146000 66.193.37.204 -> 192.168.1.101 TCP 54 http > 41518 [FIN, ACK] Seq=2791 Ack=106 Win=5888 Len=0 12 28.635191000 192.168.1.101 -> 66.193.37.204 TCP 54 41518 > http [ACK] Seq=106 Ack=2792 Win=19360 Len=0
(การจับแพ็คเก็ตในรูปแบบ pcap-ng )
curl http://hackage.haskell.org/packages/hackage.html
จับภาพนี้แสดงให้เห็นว่าสิ่งที่เกิดขึ้นในช่วงที่เรียบง่าย
มันไม่สำคัญว่าฉันอยู่หลังเราเตอร์ - มันเหมือนกันเมื่อฉันเชื่อมต่อโดยตรง ประเภทการเชื่อมต่อคือ PPPoE
ฉันทำซ้ำปัญหาบนคอมพิวเตอร์ 3 เครื่องที่ใช้ Linux และ Windows
จะวินิจฉัยปัญหาดังกล่าวได้อย่างไร?