যদি এই প্রশ্নের সেরা ফোরাম না হয় তবে আমাকে ক্ষমা করুন, তবে এটি প্রোগ্রামিংয়ের চেয়ে কার্নেলের সাথে আরও প্রাসঙ্গিক বলে মনে হচ্ছে।
আমি একটি স্ক্রিপ্ট লিখছি যা ওপেন পোর্টগুলির জন্য সিস্টেমকে জিজ্ঞাসা করে যাতে আমরা পরিসংখ্যানগুলি গ্রাফ করতে এবং নিরীক্ষণ করতে পারি। এর জন্য, আমি আইপ্রেট প্যাকেজ থেকে "ss" কমান্ডটি ব্যবহার করছি। আপনি যদি নির্বাহ করেন তবে আপনি এর ss -s|grep estab
অনুরূপ আউটপুট পাবেন:
TCP: 296 (estab 6, closed 238, orphaned 0, synrecv 0, timewait 238/0), ports 0
আমার প্রশ্নটি টাইমওয়েট ভেরিয়েবলের সাথে সম্পর্কিত, যা টিআইএমE_ওয়াত রাজ্যে গণিত সকেটগুলি দেখায়। আমি যখন স্ল্যাশের পরে কোন সংখ্যাটি উল্লেখ করা হয়েছিল তা বের করার চেষ্টা করার পরে এটি উত্স কোড অনুসন্ধানের ঘূর্ণিঝড়ের মধ্যে পরিণত হয়েছিল যা শেষ পর্যন্ত আমাকে নিম্নলিখিত স্নিপেটটি সন্ধান করতে পরিচালিত হয়েছিল:
printf("TCP: %d (estab %d, closed %d, orphaned %d, synrecv %d, timewait %d/%d), ports %d\n",
s.tcp_total + slabstat.tcp_syns + s.tcp_tws,
sn.tcp_estab,
s.tcp_total - (s.tcp4_hashed+s.tcp6_hashed-s.tcp_tws),
s.tcp_orphans,
slabstat.tcp_syns,
s.tcp_tws, slabstat.tcp_tws,
slabstat.tcp_ports
);
আমাকে অবশ্যই স্বীকার করতে হবে, "স্ল্যাবস্ট্যাট" বলতে কী বোঝার কথা ছিল তা অনুসন্ধানের ফলে স্ল্যাব ক্যাশে এবং তাদের রিপোর্টিং ইন্টারফেস / প্রোক / স্লাবিনফো-তে আমার শিক্ষার কারণ হয়েছিল।
প্রশ্ন: স্ল্যাবটেবলের সাথে TIME_WAIT সকেট গণনার কী আছে? এই সংখ্যাটি কেন রিপোর্ট করা হয়েছে তা নির্ধারণ করতে আমি ব্যর্থ হচ্ছি, যতবারই আমি এটি চেষ্টা করেছি প্রতিটি সার্ভার জুড়ে কমান্ডটি চালিয়েছি, সংখ্যাটি সর্বদা শূন্য।