আইপ্রেট প্যাকেজে "ss" কমান্ড; টাইমওয়েট সকেটের জন্য স্ল্যাব সারণী কেন?


15

যদি এই প্রশ্নের সেরা ফোরাম না হয় তবে আমাকে ক্ষমা করুন, তবে এটি প্রোগ্রামিংয়ের চেয়ে কার্নেলের সাথে আরও প্রাসঙ্গিক বলে মনে হচ্ছে।

আমি একটি স্ক্রিপ্ট লিখছি যা ওপেন পোর্টগুলির জন্য সিস্টেমকে জিজ্ঞাসা করে যাতে আমরা পরিসংখ্যানগুলি গ্রাফ করতে এবং নিরীক্ষণ করতে পারি। এর জন্য, আমি আইপ্রেট প্যাকেজ থেকে "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 সকেট গণনার কী আছে? এই সংখ্যাটি কেন রিপোর্ট করা হয়েছে তা নির্ধারণ করতে আমি ব্যর্থ হচ্ছি, যতবারই আমি এটি চেষ্টা করেছি প্রতিটি সার্ভার জুড়ে কমান্ডটি চালিয়েছি, সংখ্যাটি সর্বদা শূন্য।


সত্যি বলতে কি, আপনি সম্ভবত প্রাসঙ্গিক কার্নেল মেইলিং তালিকা এক এই পোস্ট করে সেরা উত্তর পেতে চাই, দেখতে tux.org/lkml/#related-lists
jeremiahd

কোডটি কেবলমাত্র কতগুলি অপেক্ষাকৃত সকেটগুলি স্ল্যাবে বরাদ্দ করা হয়েছে তা দেখায়। আইএমও এটি কেবল মেমরির ব্যবহার নির্ধারণ করতে সহায়তা করে
উলিরিচ ড্যাঞ্জেল

উত্তর:


0

দেখে মনে tcp_tw_bucketsহচ্ছে চূড়ান্তভাবে পোলাকৃত যা লিনাক্স ২.6.১২ অনুসারে মুছে ফেলা হয়েছে

সুতরাং শেষ সংখ্যাটি সর্বদা 0 হবে যদি না এটি 7 বছরের পুরানো কার্নেলগুলিতে থাকে।

স্ল্যাব জিজ্ঞাসাবাদ হিসাবে, যতদূর আমি বলতে পারি এটি উপলব্ধ অন্যান্য পদ্ধতির তুলনায় হাস্যকরভাবে দ্রুত।


এটি যদি ২.6.১২ এর আগে কার্নেলে থাকে তবে মান স্ল্যাবস্ট্যাট.টিসিপি_টিউজ সমান s.tcp_tws হবে ? এই দুটি মানের মধ্যে কোন পার্থক্য আছে? (একজন / proc / নেট / সোকস্ট্যাট থেকে এবং একজন / proc / slabinfo থেকে)
রুয়ানাহাও
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.