Re: [programming] ngebebasin port

2001-04-28 Terurut Topik Eko Bono


--- Ronux Sadrux [EMAIL PROTECTED] schrieb:  
 iya 
 
 program saya tuh namanya program abcd.pl ...
 dia nge-bind ke port 1234
 
 kadang2, dia gak respon sama paket2 yang dateng ke dia ...
 nah kalo udah gitu, saya ctrl-c --- program mati ...
 
 nah, ketika saya jalankan si abcd.pl lagi, dia gak bisa nge-bind
 port 1234 lagi, soalnya port tsb masih dianggap dipake oleh si
 abcd.pl
 lama yang udah di-ctrl-c itu ... gitu lho ...

Kemungkinan besar kuncinya di sini,socket yang anda bikin
tidak di closed dengan cara semestinya. Anda harus membuat
handler yang menangkap signal Ctrl+C , dan disini socket
anda harus ditutup dengan semestinya.

Eko

__
Do You Yahoo!?
Gesendet von Yahoo! Mail - http://mail.yahoo.de


Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]




Re: [programming] ngebebasin port

2001-04-28 Terurut Topik rurie muharto

 kadang2, dia gak respon sama paket2 yang dateng ke dia ...
 nah kalo udah gitu, saya ctrl-c --- program mati ...
 
 nah, ketika saya jalankan si abcd.pl lagi, dia gak bisa nge-bind
 port 1234 lagi, soalnya port tsb masih dianggap dipake oleh si abcd.pl
 lama yang udah di-ctrl-c itu ... gitu lho ...
 
 nah, biar si abcd.pl saya itu bisa jalan lagi, berarti si port 1234 itu
 harus di'bebasin' dulu kan? saya perlu informasi itu saja (dulu) .. hehehe
 ..

knp gak dijadiin aja input port-nya argumen tersendiri- abcd.pl -port
supaya portnya gampang diganti2.  --he..he
biasanya port yg udah diassign (programnya udah diterminate) bakal ilang
sendiri tergantung waktu delay.

 saya lagi nyari2 bug program ini kok ... kenapa dia nggak respon paket,
 tapi untuk emergency-nya, ya skr saya hanya perlu cara nge-bebasin
 port 1234 itu saja dulu ... agak barbar memang, tapi jauh lebih baik
 daripada saya musti reboot linux-box saya kan?

.. lebih baik juga kalo pake C dengan setsockopt-nya dan SO_REUSEADDRnya.
(apa perl punya identik setsockopt ??) 


regards,

-rurie-




Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]




Re: [programming] ngebebasin port

2001-04-28 Terurut Topik Yohanes Nugroho

On Sat, 28 Apr 2001, rurie muharto wrote:

  tapi untuk emergency-nya, ya skr saya hanya perlu cara nge-bebasin
  port 1234 itu saja dulu ... agak barbar memang, tapi jauh lebih baik
  daripada saya musti reboot linux-box saya kan?
 
 .. lebih baik juga kalo pake C dengan setsockopt-nya dan SO_REUSEADDRnya.
 (apa perl punya identik setsockopt ??) 
 

punya, ada di manual perlfunc


-- 
Salam
Yohanes

http://www.negeriimpian.com




Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]




Re: [programming] ngebebasin port

2001-04-28 Terurut Topik Ronux Sadrux



 SO_REUSEADDR, selama proses penutupan soket server, port ybs
 tidak dibisa langsung dipakai listen lagi oleh proses lain (kl
 sekitar 30 detik. CMIIW)

lebih deh dr 30 detik 
masalahnya program di client error-handler-nya gak begitu bagus
kalau ada 'access denid' -- port yang gak ada yang listen ...
--- emang program dadakan nih .. hehehe

kalo lebih dr 30 detik, kelamaan deh 
kalo port di abcd.pl diganti2, harus ngerubah di client donk?
itu lebih berabe lagi 

emang kesimpulan saya sih, saya musti ngebenerin programnya --overall--
dan ini sedang saya kerjain,

thx for your attention 

ronux.



Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]




Re: [programming] ngebebasin port

2001-04-28 Terurut Topik P.Y. Adi Prasaja

On Sat, Apr 28, 2001 at 01:01:50PM +0700, Yohanes Nugroho wrote:
  BTW, sepertinya ini tidak berhubungan langsung dengan pertanyaan.
  setsockopt() setahu saya untuk bisa melakukan multiple listen() pada
  satu socket ...
 
 benar

ups.. sorry, saya salah ternyata :-)

 programnya gagal waktu bind karena portnya sudah terpakai, kalau
 portnya di reuse programnya bisa membind port yang sama jadi tetap bisa
 jalan kalau dijalankan 2 kali. Socket desc yang berbeda nggak pengaruh
 untuk proses bind.

Yup. khusus untuk tcp, selama ada proses aktif yang listen() di
(local) address yang sama, maka bind() akan gagal. Dalam hal ini
SO_REUSEADDR hanya berfungsi dalam hal: proses 'parent' yang
melakukan listen() berhenti, tetapi masih ada child yang aktif di
(local) address yang sama.

Jadi dalam hal ini melacaknya sbb: waktu 'macet' stop server,
jalankan 'netstat -tnl', kalau masih ada yang listen di (local)
address yang sama, option SO_REUSEADDR tidak akan membantu.

BTW, nampaknya penggunaan option SO_REUSEADDR untuk tcp server boleh
dibilang good practice ya .. ini karena saya lihat semua aplikasi tcp
server pakai option ini :-)

Salam,

P.Y. Adi Prasaja



Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]