ইপিফার, স্ক্যাম্পার এবং পাথ এমটিইউ আবিষ্কারের প্যাকেটগুলি পথের এমটিইউতে একমত হয় না কেন?


11

আসুন দুটি দেবিয়ান হোস্টের মাঝে একটি ডেবিয়ান রাউটার দ্বারা পৃথক পৃথক পৃথক দুটি এমটিইউ আবিষ্কার করি যা শোরওয়াল-উত্পাদিত iptables নিয়ম চালায়। দুটি হোস্টের প্রত্যেকটিতে একটি একক ইথারনেট লিঙ্ক ব্যবহার করা হয় যখন রাউটার দুটি সংযুক্ত ইথারনেট লিঙ্কের উপর ট্যাগযুক্ত ভিএলএএন ব্যবহার করে।

স্ক্যাম্পার ব্যবহার :

root@kitandara:/home/jm# scamper -I "trace -M 10.64.0.2"
traceroute from 10.1.0.5 to 10.64.0.2
 1  10.1.0.1  0.180 ms [mtu: 6128]
 2  10.64.0.2  0.243 ms [mtu: 6128]

ভাল: 6128 বাইট প্রত্যাশিত ফলাফল (সস্তা রিয়েলটেক ইথারনেট অ্যাডাপ্টার একটি শালীন আকারের জাম্বো ফ্রেমগুলি পরিচালনা করতে পারে না)।

এখন, আইপিআইপি একটি থ্রুপুট পরীক্ষা করুক এবং এমটিইউ সম্পর্কে আমাদের বলি:

root@kitandara:/home/jm# iperf -c 10.64.0.2 -N -m
------------------------------------------------------------
Client connecting to 10.64.0.2, TCP port 5001
TCP window size: 66.2 KByte (default)
------------------------------------------------------------
[  3] local 10.1.0.5 port 59828 connected with 10.64.0.2 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  1011 MBytes   848 Mbits/sec
[  3] MSS size 6076 bytes (MTU 6116 bytes, unknown interface)

6116 বাইট? কেন?

এবং এখন সম্পূর্ণ আলাদা কিছুর জন্য আসুন দেখুন এই সেশনের ট্র্যাফিকটিতে আসলে কী রয়েছে:

root@kitandara:/home/jm# tshark -i eth0 -R "(ip.dst == 10.64.0.2) || (ip.src == 10.64.0.2)" | head
Capturing on eth0
  1.308557     10.1.0.5 -> 10.64.0.2    TCP 74 60310 > 5001 [SYN] Seq=0 Win=5340 Len=0 MSS=534 SACK_PERM=1 TSval=101928961 TSecr=0 WS=16
  1.308801    10.64.0.2 -> 10.1.0.5     TCP 74 5001 > 60310 [SYN, ACK] Seq=0 Ack=1 Win=18328 Len=0 MSS=6088 SACK_PERM=1 TSval=3764064056 TSecr=101928961 WS=64

6088 বাইট এমএসএস, যার অর্থ একটি 6128 এমটিইউ ... ভাল। তবে তারপরেই আইপিআরফ কেন 6116 বাইট এমটিইউ ঘোষণা করে?

এই মুহুর্তে পুরোপুরি স্ক্যাম্পার ট্রেস সেশনের সময় কী ঘটে থাকে তা নিবিড়ভাবে দেখার প্রয়োজন:

root@kitandara:/home/jm# tshark -i eth0 -R "(ip.dst == 10.64.0.2) || (ip.src == 10.64.0.2)"
Capturing on eth0
  0.000000     10.1.0.5 -> 10.64.0.2    UDP 58 Source port: 43870  Destination port: 33435
  0.000175     10.1.0.1 -> 10.1.0.5     ICMP 86 Time-to-live exceeded (Time to live exceeded in transit)
  0.050358     10.1.0.5 -> 10.64.0.2    UDP 58 Source port: 43870  Destination port: 33436
  0.050592    10.64.0.2 -> 10.1.0.5     ICMP 86 Destination unreachable (Port unreachable)
  0.099790     10.1.0.5 -> 10.64.0.2    UDP 6142 Source port: 43870  Destination port: 33437
  0.100912    10.64.0.2 -> 10.1.0.5     ICMP 590 Destination unreachable (Port unreachable)

এই সমস্ত প্যাকেটের 24১০৮ দৈর্ঘ্যের দুটি শেষের ব্যতীত 24 টির udp.leth থাকে ... তবে কীভাবে স্ক্যাম্পার আমাদের জানায় যে এমটিইউ পথটি 6128?

6108, 6116, 6128 ... এতগুলি এমটিইউ থেকে বেছে নিতে হবে!


কোন উত্তর কি আপনাকে সাহায্য করেছে? যদি তা হয় তবে আপনার উত্তরটি গ্রহণ করা উচিত যাতে উত্তরটি সন্ধান চিরকালের জন্য পপিং না হয়ে থাকে। বিকল্পভাবে, আপনি নিজের উত্তর সরবরাহ করতে এবং গ্রহণ করতে পারেন।
রন মউপিন

উত্তর:


4

অনেক আগ্রহব্যাঞ্জক.

এমএসএস (সর্বোচ্চ বিভাগের আকার) = এমটিইউ - আইপি শিরোনাম = 6076।

6076 + 40 = 6116।

এটি কি হতে পারে যে ডিবিয়ান আইপি শিরোনামে আইপি বিকল্পগুলি ক্ষেত্র ব্যবহার করছে? এটি অতিরিক্ত 12 বাইট হতে পারে ...


এটি কি সম্ভব যে টিসিপি হ্যান্ডশেকটি একটি 6128 বাইট এমটিইউ প্রতিষ্ঠা করে এবং তখন আইপিআফটি জানতে পারে যে তিনি একসাথে 6116 বাইটের বেশি সংক্রমণ করতে ব্যর্থ হয়েছেন - যা "অফিসিয়াল" একের সাথে সম্পর্কযুক্ত এক প্রকারের এমপিউইউ হবে?
জিন-মার্ক লিওটিয়র

আইপি বিকল্পগুলি যাই হোক না কেন, এমন কোনও প্যাডিং নেই যা দৈর্ঘ্যটি নিশ্চিত করে (আইপি বিকল্পগুলি + প্যাডিং) = 32 বিট?
জিন-মার্ক লিওটিয়র

12 বাইট… আপনি "আইপি অপশনগুলি" পরিবর্তে "টিসিপি বিকল্পগুলি" বোঝাতে চাইছেন না?
জিন-মার্ক লিওটিয়র

আমি আইপিএফ সেশনের টিসিপি বিকল্পগুলি নমুনা দিয়েছিলাম: দৃশ্যত সর্বদা 12 বাইট (কেবলমাত্র টাইমস্ট্যাম্পগুলি)
জ্যান-মার্ক লিওটিয়র

2
Github.com/jasonrm/iperf/blob/… এ একটি মন্তব্য বলেছে "// পড়ার মাপের উপর নজর রাখুন -> এমটিইউ আকারের কিছু ইঙ্গিত দেয়" এবং github.com/jasonrm/iperf/blob/… এ অন্য একজন বলেছেন "রিপোর্ট এমএসএস এবং এমটিইউ, এমএসএস দেওয়া (বা এর একটি অনুমান) "- আশ্চর্যজনকভাবে বিবেচনা করে যে আইপিআরফ প্রকৃত পাথ এমটিইউ আবিষ্কারকে সমর্থন করবে বলে মনে করা হচ্ছে।
জিন-মার্ক লিওটিয়র

3

tshark ইথারনেট ফ্রেমের আকারের প্রতিবেদন করছে: 6142 - 14 (ইথারনেট শিরোলেখ) = 6128 আইপি বাইট।

এমটিইউ আবিষ্কারের জন্য বৃহত প্যাকেটগুলি অনুসন্ধান করার আগে স্ক্যাম্পার ছোট প্যাকেটগুলির সাথে একটি ট্রেস্রোলেট তৈরি করে (সেই কারণেই আপনি ছোট প্যাকেটগুলি একটি বৃহত্তর পরে অনুসরণ করেন)। সমস্ত প্যাকেটগুলি বাতিল / প্রতিক্রিয়াশীল এবং কেবল বড় বড়গুলির মধ্যে পার্থক্য করার জন্য এটি দরকারী।

https://www.usenix.org/conference/imc-05/inferring-and-debugging-path-mtu-discovery-failures

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