কেন এমআরটি ট্রেস্রোয়েটের চেয়ে অনেক দ্রুত?


12

ইন mtrman পৃষ্ঠা, এটা লেখা আছে:

মিআরটি একটি একক নেটওয়ার্ক ডায়াগনস্টিক সরঞ্জামে ট্রেস্রোট এবং পিং প্রোগ্রামগুলির কার্যকারিতা একত্রিত করে

আমি mtrপ্রচুর ব্যবহার করি এবং এটি দেখতে অনেক দ্রুত traceroute। প্রবৃত্তিগতভাবে, mtrআমাকে উত্তর emidiately যখন দেয়, tracerouteতালিকা প্রতিটি IP ঠিকানা প্রত্যেক সেকেন্ড। আমার নিজের কম্পিউটারে, আমি ব্যবহার করেছি time mtr www.google.comএবং time traceroute www.google.comফলাফলটি 21.9s ভিএস 6.1 এস।

প্রশ্ন কেন? যেহেতু mtr = ping + traceroute, এর অর্থ এটি ধীর বা কমপক্ষে একই রকম নয় traceroute

কেউ আমাকে একটি যুক্তিসঙ্গত এবং বিস্তারিত উত্তর দিতে পারেন?

উত্তর:


21

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

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

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

উদাহরণস্বরূপ, যদি হপ নম্বর 2 সাড়া না দেয় (যা আমি একাধিক আইএসপিগুলিতে দেখেছি এমন একটি লক্ষণ), ট্রেস্রোয়েট হপ নম্বর 1 প্রদর্শন করবে এবং তারপরে হপ নম্বর 2 এবং 3 প্রদর্শন করার আগে কিছুক্ষণ অপেক্ষা করবে, যদিও হপ নম্বর থেকে উত্তর এসেছে 3 এসে পৌঁছেছে এটি প্রদর্শিত হচ্ছে না কারণ ট্রেস্রোয়েট এখনও হপ নম্বর 2 থেকে উত্তরের জন্য অপেক্ষা করছে M এমআরটিটিতে এই বাধা নেই এবং হপ নম্বর 3 থেকে উত্তরটি প্রদর্শন করতে পারে এবং এখনও হপ নম্বর 2 থেকে উত্তরটি প্রদর্শন করতে ফিরে যেতে পারে, যদি এটি পরে আসে।

অত্যধিক সমান্তরালতা আউটপুটটিকে ভুল হতে পারে। কিছু পরিস্থিতিতে আপনি কয়টি প্যাকেটের জন্য উত্তর পেতে পারেন তার সীমাবদ্ধতা রয়েছে। এই ক্ষেত্রে আরও প্যাকেট প্রেরণ প্রক্রিয়াটিকে ত্বরান্বিত করবে না, তবে এটি আরও হারিয়ে যাওয়া প্যাকেটগুলির কারণ হবে কারণ আপনি আরও প্যাকেট প্রেরণের সাথে একই সংখ্যার উত্তর পেয়েছেন।

এর একটি উদাহরণ হ'ল যখন রুটে কোনও হপ এআরপি অনুরোধের উত্তর দেয় না। সাধারণত প্রথম প্যাকেটটি একটি এআরপি অনুরোধকে ট্রিগার করে, এবং যদি আরও প্যাকেটগুলি এআরপি অনুরোধের সময় শেষ হওয়ার আগে উপস্থিত হয় তবে কেবলমাত্র সেই প্যাকেটগুলির মধ্যে শেষটি বাফার হবে এবং একটি উত্তর পেয়ে যাবে।

আর একটি পার্থক্য হ'ল সরঞ্জামটি আরও হপগুলি প্রদর্শন করা বন্ধ করার আগে কোনও প্রতিক্রিয়াবিহীন কয়টি হপ প্রদর্শিত হবে। আমি দেখেছি যতটা হুপ অনুরোধ করা হয়েছে (30 ডিফল্টরূপে) চালিয়ে যেতে দেখেছি, এমটিআর কমান্ডটি কোনও প্রতিক্রিয়া ছাড়াই পাঁচটি হप्स পাস করার সাথে সাথেই বন্ধ হয়ে যাবে।


এটি একটি আরও ভাল উত্তর।
নিক ডব্লিউ

3

ট্রেস্রোয়েট কমান্ডটি হপ প্রতি 3 টি প্রোব প্রেরণ করছে যদি আপনি এটি 1 টি প্রোবের মধ্যে সীমাবদ্ধ করেন -q 1তবে ফলাফলগুলি তুলনামূলক হয়ে যায়

time mtr -r -c 1 google.com
.
.
.
real    0m2.640s
user    0m0.003s
sys     0m0.018s


time traceroute6 -q 1 google.com
.
.
.
real    0m0.445s
user    0m0.006s
sys     0m0.007s

আমি তুলনামূলক পরীক্ষার মধ্যে মূল পার্থক্যগুলি ডিএনএস ক্যোয়ারির সময় এবং পথের পার্থক্যের সাথে সম্পর্কিত বলে আশা করব। আপনি খেয়াল করবেন যে আমার ট্রেস্রোয়েটটি এমটিআর এর পরে আরও দ্রুত তবে এটি সবসময় হয় না।


2

আমি মনে করি যে এটি রুট ট্রেসিং বাস্তবায়িত হয়েছে সেখান থেকে এসেছে। tracerouteধারাবাহিকভাবে গন্তব্যের পথে প্রতিটি হপের জন্য কমপক্ষে 3 টি প্যাকেট প্রেরণ করা হয়েছে।

mtr প্রথমে রুটের হপগুলি আবিষ্কার করুন এবং তারপরে সমান্তরালে প্রতিটি নোডে প্যাকেট প্রেরণ করুন।

আমার কাছে এটিও মনে হয় যেভাবে mtrহপ হ্যান্ডলগুলি পিং / প্রোবগুলিতে সাড়া না দেয় তার মধ্যে একটি পার্থক্য রয়েছে ; এটি এরপরে তত দ্রুত অগ্রাহ্য করে tracerouteযা তার 3 টি প্যাকেট সর্বদা প্রেরণ করে বলে মনে হয়, এমনকি যদি প্রথম প্রচেষ্টা প্রতিক্রিয়া পেতে ব্যর্থ হয়।


1

প্রাথমিক কারণ হ'ল ট্রেস্রোটি চালানো। এটি প্রথম হোস্টের জন্য একটির টিটিএলযুক্ত একটি ইউডিপি (বা উইন্ডোজে আইসিএমপি) প্যাকেট প্রেরণ করে এবং যখন এটি একটি টাইমআউট উত্তর পেয়ে থাকে (বা এটি কোনও অভ্যন্তরীণ সময়সীমা পাস করে), তখন এটি টিটিএল দিয়ে পরবর্তী হোস্টের জন্য পরবর্তী প্যাকেট তৈরি করে দুটি, এবং আরও (প্রতিটি হোস্টের জন্য টিটিএলে একটি যোগ করা)। সুতরাং ট্রেস্রোয়েটের মোট সময়টিতে প্রতিটি হোস্টের জন্য প্যাকেটগুলি প্রেরণ করা এবং প্রাপ্তি অন্তর্ভুক্ত রয়েছে, ধারাবাহিকভাবে ,.

এমটিআর, প্যাকেটগুলি যে পথটি নির্ধারণ করে তা নির্ধারণের পরে, সমস্ত আইএমএমপি ইকিও প্যাকেটকে সমান্তরালে প্রেরণ করে।


প্যাকেটগুলি কোথায় পাঠাতে হবে তা মিটার কীভাবে জানতে পারে?
ব্যবহারকারী 9517

হ্যাঁ, আমার এটি যুক্ত করা উচিত, যদিও এটি "প্রকৃতপক্ষে" কীভাবে জানতে পারে যে আমার উত্সটি পড়া দরকার বলে মনে হয় :)
নিকডাব্লু

[mtr] investigates the network connection between the host mtr runs on and a user-specified destination host. After it determines the address of each network hop between the machines
নিক ডব্লিউ

2
@ আইইন এটি আপনার নির্দিষ্ট করা ঠিকানায় সমস্ত প্যাকেট প্রেরণ করে। ত্রুটি ফিরে পাওয়ার আগে তারা কত দূরত্বে ভ্রমণ করবে তার জন্য আলাদা আলাদা প্যাকেটগুলি আলাদা আলাদা সর্বোচ্চ দূরত্ব নির্দিষ্ট করে। এমআরটি বা ট্রেস্রোয়েট দ্বারা প্রদর্শিত ঠিকানাগুলি কেবল উত্তর ফিরে এলেই জানা যায়।
ক্যাস্পার্ড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.