CLOSE_WAIT ve TIME_WAIT durumları nelerdir?


166

Ben ne zaman netstat -aWindows makinem, dört durumlardan biri ile limanların bir listesini almak:

- LISTENING
- CLOSE_WAIT
- TIME_WAIT
- ESTABLISHED

Ne yapmak CLOSE_WAITve ne TIME_WAITdemek / göstermek?



'man netstat' konusuna bakın, eyalet bölümüne ilerleyin: linux.die.net/man/8/netstat
MaQleod

1
Sistersite Server Fault ile ilgili bir cevaba utanmaz bir eklenti .
Hennes

Yanıtlar:


179

TCP / IP'nin çalışması nedeniyle, bağlantılar hemen kapatılamaz. Bağlantı kesildikten sonra paketler kullanım dışı olabilir veya yeniden gönderilebilir. CLOSE_WAIT uzak uç noktanın (bağlantının diğer tarafı) bağlantıyı kapattığını gösterir. TIME_WAIT, yerel bitiş noktasının (bu tarafın) bağlantıyı kapattığını gösterir. Bağlantı, gecikmiş paketlerin bağlantıyla eşleştirilebilmesi ve uygun şekilde ele alınabilmesi için çevresinde tutulmaktadır. Bağlantılar, dört dakika içinde zaman aşımına uğradıklarında kaldırılacaktır. Daha fazla ayrıntı için http://en.wikipedia.org/wiki/Transmission_Control_Protocol adresine bakın.


Ancak bu, fonksiyonlar geri döndükten sonra paketler gelse bile, uygulama tarafından hala atılacağı anlamına gelmez mi?
MonsterMMORPG

@MonsterMMORPG Bağlantı kapatıldıktan sonra kullanım dışı olan paketler ağ yığını tarafından ele alınacaktır. Bunlar genellikle normal kopya paket kurallarına göre güvenli bir şekilde atılabilir. Bilinmeyen bir aktif bağlantıyla ilişkili gibi görünen paketler normal olarak atılır ve bir yanıt oluşturur. WAIT devletleri bu trafiğe karşı koruma sağlar.
BillThor

29

Temel olarak "BEKLE", bir tarafın bağlantıyı kapattığı, ancak kapanmanın son onayının beklediği anlamına gelir.

Ayrıntılar için örneğin bu TCP durumları şemasına bakınız:

http://www.jxos.org/Projects/TCP/tcpstate.html


14
Bu doğru CLOSE_WAIT açıklar, ancak TIME_WAIT değil. TIME_WAIT, yerel uygulamanın bağlantıyı kapattığını ve diğer tarafın kendi FIN'ı onayladığını ve gönderdiğini belirtir. Şimdi, aynı bağlantı noktasının yeni bir kullanıcısını altüst edebilecek başıboş kopya paketleri bekliyoruz.
Chris Smowton

1
@ ChrisSmowton, Peki doğru terminolojiyi kim kullanıyor? Diyagram mı netstat? ( cf. )
Pacerier

@Pacerier Bence uyuşuyorlar - nerede katılmıyorum sence?
Chris Smowton

@ChrisSmowton Bu, bir sonraki liman sahibinin ekstra bayt alabileceği ve TIME_WAIT = 0 olarak ayarlarsak yanıtı kırabileceği anlamına gelir.
MonsterMMORPG

Muhtemel ama çok düşük bir olasılıkla, sıra numaralarının, akışın içine hapsolmuş paketi görmesi için uygulamanın eşleşmesi gerekeceği için ya da alıcının, doğru sıra numarası gelinceye kadar, görünüşte sıra dışı paketi tamponlaması gerekeceği için. İkincisinin pratikte yapılıp yapılmadığını size söyleyecek pratik uygulamalar hakkında yeterince bilgim yok.
Chris Smowton

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.