Berapa lama fragmen TCP terfragmentasi disimpan di server TCP


10

Misalkan suatu fragmen TCP yang diberikan terfragmentasi menjadi dua datagram IP, dan bahwa datagram pertama sampai ke server TCP, tetapi datagram kedua tidak pernah tiba.

Setelah waktu tertentu server TCP mengirimkan keepalive, dan menentukan bahwa klien masih hidup. Apa yang dilakukan server TCP dengan datagram pertama ini? Apakah menunggu datagram kedua tiba, atau apakah membuang datagram pertama?

Jawaban:


8

Setelah waktu reassembly reassembly berakhir, fragmen dijatuhkan; ujung lainnya perlu mentransmisikan kembali.

Batas waktu ini umumnya dapat dikonfigurasi. Di Linux, secara default 30 detik dan dikontrol via /proc/sys/net/ipv4/ipfrag_time.


Apakah fragmen reassembly timeout sehubungan dengan fragmen pertama diterima, atau apakah timer reset untuk setiap fragmen baru tiba?
Randomblue

2
Saya pikir Anda harus membaca kode sumber untuk menjawabnya secara definitif.
Michael Hampton

2

Tidak ada jawaban pasti untuk pertanyaan ini;

Jika Anda melihat artikel ini tentang transmisi ulang adaptif Anda akan melihat TCP menggunakan RTT sebagai faktor dalam menghitung penundaan yang sesuai.

Ini adalah artikel yang lebih detail. Pada dasarnya, tidak ada nilai batas waktu khusus hanya untuk fragmentasi.

Ini artikel Cisco meskipun menunjukkan bahwa virtual firewall IOS XR memiliki batas waktu default 10 detik untuk fragmen, dengan timer dikonfigurasi sendiri. Saya menghubungkan ini untuk mengatakan OS dan perangkat akan berperilaku berbeda dan jika Anda melewatkan koneksi melalui perangkat seperti ini misalnya, itu bisa mengganggu koneksi Anda secara negatif.

Akan lebih baik untuk menghubungkan dua mesin dengan konfigurasi yang sama dengan cross over dan mulai menguji dari sana jika Anda ingin menguji efek keterlambatan fragmentasi.


Terima kasih. Apakah Anda berpikir bahwa batas waktu fragmen dalam artikel Cisco dihitung sehubungan dengan fragmen yang diterima pertama, atau fragmen yang terakhir diterima?
Randomblue

Fragmen yang diterima terakhir lebih masuk akal daripada yang pertama, tapi saya tidak tahu, itu merupakan kebijaksanaan Cisco dalam contoh itu.
jwbensley
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.