ব্যস্ত ইন্টারফেসে tcpdumping করার সময় প্রচুর বাদ দেওয়া প্যাকেজ


12

আমার চ্যালেঞ্জ

আমাকে প্রচুর ডেটা-র ডিসিপিডাম্পিং করা দরকার - আসলে 2 টি ইন্টারফেস থেকে প্রিফিসিয়াল মোডে ছেড়ে যায় যা প্রচুর ট্র্যাফিক দেখতে সক্ষম হয়।

এটি যোগ করা

  • 2 টি ইন্টারফেস থেকে সমস্ত ট্র্যাফিক লম্পট মোডে লগ করুন
  • এই ইন্টারফেসগুলি একটি আইপি ঠিকানা বরাদ্দ করা হয় না
  • পিসিএপি ফাইলগুলি অবশ্যই প্রতি ~ 1 জি ঘোরানো উচিত
  • 10 টিবি ফাইল সংরক্ষণ করা হলে, সবচেয়ে পুরানো কাটা শুরু করুন

আমি বর্তমানে যা করি

এই মুহুর্তে আমি এইভাবে tcpdump ব্যবহার করি:

ifconfig ethX promisc
ifconfig ethX promisc
tcpdump -n -C 1000 -z /data/compress.sh -i any -w /data/livedump/capture.pcap $FILTER

$FILTERযে আমি ব্যবহার করতে পারেন src / DST ফিল্টার রয়েছে -i any। এর কারণ হ'ল, আমার দুটি ইন্টারফেস রয়েছে এবং আমি দু'টির পরিবর্তে একটি থ্রেডে ডাম্প চালাতে চাই।

compress.sh অন্য একটি সিপিইউ কোরে টর বরাদ্দ করার যত্ন নেয়, ডেটা সংকুচিত করুন, যুক্তিসঙ্গত ফাইলের নাম দিন এবং এটি সংরক্ষণাগার স্থানে সরিয়ে নিয়েছেন।

আমি দুটি ইন্টারফেস নির্দিষ্ট করতে পারি না, এইভাবে আমি anyইন্টারফেস থেকে ফিল্টার এবং ডাম্প ব্যবহার করা বেছে নিয়েছি ।

এই মুহুর্তে, আমি কোনও গৃহকর্মী করি না, তবে আমি মনিটরিং ডিস্কের পরিকল্পনা করছি এবং আমার যখন 100 জি বাকি থাকবে তখন আমি পুরানো ফাইলগুলি মুছতে শুরু করব - এটি ঠিক করা উচিত।

এবং এখন; আমার সমস্যা

আমি বাদ প্যাকেট দেখতে পাচ্ছি। এটি এমন একটি ডাম্প যা কয়েক ঘন্টা ধরে চলছে এবং প্রায় 250 জিগ পিসিপি ফাইল সংগ্রহ করেছে:

430083369 packets captured
430115470 packets received by filter
32057 packets dropped by kernel  <-- This is my concern

এত প্যাকেট ফেলে দেওয়া কীভাবে আমি এড়াতে পারি?

এই জিনিসগুলি আমি ইতিমধ্যে চেষ্টা করেছি বা দেখেছি

এর মান পরিবর্তিত হয়েছে /proc/sys/net/core/rmem_maxএবং /proc/sys/net/core/rmem_defaultযা সত্যই সহায়তা করেছিল - আসলে এটি ফেলে দেওয়া প্যাকেটের প্রায় অর্ধেকের যত্ন নিয়েছিল।

আমি গুল্পের দিকেও নজর রেখেছি - গুল্পের সমস্যাটি হ'ল এটি কোনও প্রক্রিয়াতে একাধিক ইন্টারফেস সমর্থন করে না এবং ইন্টারফেসের আইপি ঠিকানা না থাকলে এটি রাগান্বিত হয়। দুর্ভাগ্যক্রমে, এটি আমার ক্ষেত্রে একটি চুক্তি ভঙ্গকারী।

পরবর্তী সমস্যাটি হ'ল ট্র্যাফিক যখন পাইপ সত্ত্বেও প্রবাহিত হয় তবে আমি স্বয়ংক্রিয় রোটেশনটি পেতে পারি না। একটি বিশাল 10 টিবি ফাইল পাওয়া খুব দক্ষ নয় এবং আমার কাছে 10 টিবি + র‌্যামের একটি মেশিন নেই যা আমি ওয়্যারশার্ক চালাতে পারি, তাই এটি শেষ।

আপনার কি কোন পরামর্শ আছে? পুরোপুরি আমার ট্র্যাফিক ডাম্প করার আরও ভাল উপায়।


আমার ক্ষেত্রে আমি বিকল্প -s0 বিকল্পটি ব্যবহার করছিলাম, এটি -s1600 (এমটিইউয়ের ঠিক উপরে) এ আমার জন্য সমাধান করেছে for
ল্যাটিনসুড

উত্তর:


11

tcpdump একটি রিং বাফারে আগত ডেটা সঞ্চয় করে। Tcpdump এর বিষয়বস্তু প্রসেস করার আগে যদি বাফারটি ওভারফ্লো হয় তবে আপনি প্যাকেটগুলি হারাবেন।

ডিফল্ট রিং বাফার আকার সম্ভবত 2048 (2MiB)।

বাফারের আকার বাড়াতে, -Bবিকল্পটি যুক্ত করুন :

tcpdump -B 4096 ...

আপনার দ্রুত ডিস্ক স্টোরেজ ব্যবহার করার চেষ্টা করা উচিত।


আমি বাফারের আকার পরিবর্তন করার চেষ্টা করব। আমি প্রায় নিশ্চিত যে ডিস্ক স্টোরেজ গতি সমস্যা নয়। এটি প্রায় 15M / সেকেন্ডের সাথে ডেটা লেখার সময় এবং 17 গিগ ফাইলটি ডিড করার সময়: 17179869184 বাইট (17 গিগাবাইট) অনুলিপি করা হয়েছে, 23.5737 গুলি, 729 এমবি / সে (বিএস = 8 কে গণনা = 2048 কে ব্যবহার করে)
ফ্রেডস হ্যানসেন

7

আমি বেঁচে থাকার একটি সমাধান খুঁজে পেয়েছি। বাদ দেওয়া প্যাকেজগুলি .0047% থেকে .00013% এ হ্রাস পেয়েছে - যা প্রথমে তেমনটি মনে হয় না, তবে আমরা যখন কয়েক মিলিয়ন প্যাকেটের কথা বলছি তখন এটি বেশ অনেক কিছু।

সমাধানটিতে বেশ কয়েকটি জিনিস রয়েছে। মাইকেল হ্যাম্পটনের পরামর্শ অনুসারে রিং বাফার আকারটি পরিবর্তন করতে হবে।

এছাড়াও, আমি একটি র‌্যামফস তৈরি করেছি এবং এটিতে সরাসরি ডাম্পিং করেছি, রাম্পগুলি থেকে ডিস্কে ডাম্পগুলি সরিয়ে নেওয়ার যত্ন নিতে আমার কম্প্রেস স্ক্রিপ্টটি আবার লিখেছি। এটি কেবলমাত্র পরিমাণটি খুব অল্প পরিমাণে হ্রাস পেয়েছে, তবে উল্লেখযোগ্য হিসাবে যথেষ্ট - যদিও ডিস্কের সমস্ত পরীক্ষার এবং বেঞ্চমার্কিং থেকে দেখা যায় যে ডিস্কটি কোনও বাধা নয়। আমার ধারণা এখানে অ্যাক্সেসটাইম খুব গুরুত্বপূর্ণ।

হাইপার থ্রেডিং অক্ষম করা আপনি যা ভাবেন তার চেয়ে অনেক বেশি করে।


আপনার অর্থ কি "হাইপার থ্রেডিং অক্ষম করা" অনেক সাহায্য করে? এটি কতটা সাহায্য করতে পারে? ধন্যবাদ।
পোরডেভোপার

সত্যি বলতে কি, আমি আর স্পষ্টিকরগুলি মনে করতে পারি না। আমি তখন থেকে কর্মক্ষেত্র পরিবর্তন করেছি, তবে আমি যা লিখেছি তা থেকে মনে হয় হাইপার থ্রেডিং অক্ষম করা সমস্যার সমাধান করেছে।
ফ্রেডস হ্যানসেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.