زمان رفتوبرگشت و فاصلهٔ بستهها
کمیتهای بیرون از دستگاه · به ثانیهٔ SI بیان میشوند · RTT و Δt میان بستهها
در سال 1983 مایک موس، در حالی که خرابیای را در شبکهای پی میگرفت، در یک شب برنامهای کوچک نوشت که به ماشینی درخواستی کوتاه میفرستاد و زمان سپریشده تا پاسخ را چاپ میکرد. نام را از مردم سونار گرفت: زیردریایی تَقی میفرستد و به پژواک گوش میسپارد، و فاصله از یک اختلاف زمانی به دست میآید. از همین عادت سنجیدن یکا زاده شد: آنچه ثبت میشود نه راه رفتن است و نه راه بازگشتن، بلکه همهٔ حلقه.
باریکی کار در این است که رفتوبرگشت با یک ساعت سنجیده میشود: درخواست از همان ماشینی میرود که پاسخ به آن میرسد، و از این رو اختلاف خوانشها به همساز بودن ساعتهای آن سو بستگی ندارد. تأخیر یکسویه را چنین آسان نمیتوان به دست آورد — برای آن ساعتهایی باید که باریکتر از خود تأخیر همگام باشند، یعنی یا پیمانی جداگانه برای انتقال زمان، یا گیرندهٔ زمان ماهوارهای در هر دو سر.
01 · تعریف
زمان رفتوبرگشت فاصلهٔ میان فرستادن یک بسته و رسیدن پاسخ به آن است، سنجیده با یک و همان ساعت. فاصلهٔ بستهها زمان میان رها کردن دو بستهٔ همسایه از یک جریان است؛ آن را شبکه نمینهد، بلکه آن که شبکه را بار میکند.
رفتوبرگشت از سه جزء با سرشتهای گوناگون فراهم میآید، و جدا کردن آنها اهمیت دارد، زیرا هر یک را جور دیگری درمان میکنند. نخستین زمان پخش است، که درازای مسیر و سرعت نور در تار آن را مینهند و جز در برابر کابلی کوتاهتر به چیزی وا نمیرود. دومین ردیفسازی است، زمان راندن بسته به خط، و هرچه خط تندتر باشد کمتر میشود. سومین صف در میانگیرهای گرههای میانی است، و تنها همین به اینکه شبکه در آن دم چقدر بار دارد بستگی دارد.
از اینجا نکتهای نهچندان آشکار برمیآید: خط را میتوان ده برابر پهن کرد و رفتوبرگشت هیچ دگرگون نشود، چراکه پهن کردن تنها ردیفسازی را برمیدارد، حال آنکه صفها و درازای مسیر همانجا میمانند که بودند. بیش از این: در میانگیرهایی که «برای هر پیشامد» فراخ ساخته شدهاند بستهها گم نمیشوند بلکه میمانند، و رفتوبرگشت زیر بار تا ثانیهها میبالد — همان دردی که آن را bufferbloat نامیدند.
فاصلهٔ بستهها بیهوده در کنارش نایستاده است: نزدیک به هرچه بر جریان میگذرد، نسبت فاصله به رفتوبرگشت آن را تعیین میکند. تا زمانی که بستهها بیش از بازگشت تأییدها بیرون میروند، فرستنده کور کار میکند و باید در مسیر همان اندازه داده نگه دارد که از نظر فیزیکی در آن میگنجد — و آن اندازه درست حاصلضرب سرعت در رفتوبرگشت است.
مسیری برگزینید و نشانگر را بر اندازهٔ بسته بگردانید. بستهٔ آبی از قفسهٔ چپ به راست میرود و نارنجی بازمیگردد؛ نوار زیر مسیر رفتوبرگشت را به سه جزء میشکافد تا پیدا شود که بهراستی صرف چه میشود. پهن کردن خط تنها بخش میانی را کوتاه میکند — همان بخشی که در مسیرهای دراز به هر روی کوچکترین است.
حافظه پیش از دگرگونی الگوریتمها ارزان شد، و سازندگان در دستگاهها صفهایی به صدها بسته گذاشتند، به این گمان که میانگیر افزون زیانی ندارد. وارونه از آب درآمد: صف پر بستهها را گم نمیکند بلکه نگه میدارد، فرستنده هیچ نشانی از گرفتگی نمیگیرد و همچنان بار میریزد. رفتوبرگشت بر خط خانگی زیر بار به یک ثانیه و نیم رسید، در حالی که سرعت همان ماند.
02 · تبدیل
رفتوبرگشت، لوله و جریان بستهها
رفتوبرگشت را با هر یکایی که خواستی وارد کن، و شناسنامه آن را به دیگر یکاها برمیگرداند و سپس آنچه را که بدان بستگی دارد میشمارد: در سرعتهای گوناگون چه اندازه داده در مسیر میگنجد، پنجره چه مرزی مینهد، و رمزگذارهای گوناگون چه فاصلهای میان بستهها برمیگزینند.
سرعت برای شمردن گنجایش از مسیری گرفته میشود که در بخش تعاملی برگزیدهاید؛ در تنظیمهای ریزتر میتوان آن را بر یک گیگابیت ثابت کرد.
پینگ درست آن را نمیسنجد که برنامهٔ کاربردی بدان نیاز دارد. رسیدگی به درخواست پژواک در گرهی دور راهی جداگانه میرود و بیشتر وقتها از کنار بخش شمارندهٔ اصلی میگذرد، و از این رو تأخیر آن با تأخیر پیوندی راستین یکی نیست؛ دستگاههای دیگر باز به چنین درخواستهایی از همه دیرتر پاسخ میدهند، یا هرگز. از این رو پینگ بزرگ همیشه به معنای پیوند کند نیست، و کوچک هم پیوند تند را ضمانت نمیکند.
| مقدار | یادداشت | ||
|---|---|---|---|
| {u} | {name} | {value} | {note} |
03 · مرتبههای بزرگی
مقیاس لگاریتمی: از میکروثانیه تا ثانیه04 · ابزارهای اندازهگیری
زمان رفتوبرگشت را با چه میگیرند
برنامه بستهای با نشانهٔ زمانی میفرستد و بازگشتش را چشمبهراه میماند، و اختلاف خوانشها همان رفتوبرگشت است. برتریاش در این است که یک ساعت بس است و از آن سو جز خواستِ پاسخ دادن چیزی خواسته نمیشود؛ کاستیاش در این که از راهی جداگانه و نه لزوماً تند پاسخ میدهد.
اگر همهٔ داد و ستد ضبط شود، رفتوبرگشت از خود جریان به دست میآید: از زمان میان بیرون رفتن یک پاره و رسیدن تأیید آن. بدینسان درست همان تأخیری سنجیده میشود که برنامهٔ کاربردی میبیند، و افزون بر آن پراکندگی نیز پیدا میشود — همان که در گفتوگو بیش از تأخیر یکنواخت آزار میدهد.
دستگاههایی که زمان را راست در تراشهٔ شبکه نشانه میزنند، ناپیداییای را که سامانهٔ عامل میآورد برمیدارند و تفکیک را به دهها نانوثانیه میرسانند. بنا بر پیمانی جداگانه داد و ستد میکنند که در آن هر سر دو نشانه مینهد — و همین است که میگذارد رفتوبرگشت به دو نیمهٔ نابرابرش بخش شود.
تأخیر یکسویه تنها آنجا سنجیده میشود که ساعتهای دو سر باریکتر از خود تأخیر به زمانی مشترک آورده شده باشند — برای این کار خطها را با پیمانی جداگانه برای همسازی نشانهگذاری میکنند یا گیرندههای زمان ماهوارهای مینهند. بی آن، رفتوبرگشت تنها عدد درستکار میماند.
05 · قواعد نگارش
رفتوبرگشت با یکایش، پراکندگی جدا
نشانه را با سه حرف بزرگ لاتین و بی نقطه مینویسند، ارزش را با یکایش و با گفتن اینکه دقیقاً چه سنجیده شده: یک نمونهٔ تنها، میانگین یک رشته، یا میانهٔ آن. پراکندگی را در کنارش همچون عددی جدا میآورند، زیرا میانگین بهتنهایی چیزی از یکنواخت رفتن بستهها نمیگوید.
نگارش نخست بی یکا سر میکند و با آن بی معنا نیز: صد و سی از چه — میلیثانیه یا میکروثانیه؟ دومی گمان را به جای سنجش جا میزند، حال آنکه راه رفتن و راه بازگشتن بیشتر وقتها از مسیرهای گوناگون میگذرند و نیمهها نابرابر درمیآیند. سومی رایجترین خطا را تکرار میکند و رفتوبرگشت را ویژگی خط میگیرد نه همهٔ مسیر. چهارمی کمیتها را میآمیزد: فاصلهٔ میان بستهها رفتوبرگشت نیست.
06 · یکاهای همسایه
رفتوبرگشت مسیر را از سوی زمان وصف میکند، سرعت از سوی اندازه، و حاصلضرب آن دو کمیت سومی میدهد، گنجایش مسیر، که بی آن هیچ پیوند تندی بر فاصلهٔ دور سامان نمیگیرد. کنارش پراکندگی تأخیر ایستاده است، که در گفتوگو و بازی بیش از عقبماندگی یکنواخت آزار میدهد.
چه اندازه در یک ثانیه میگنجد
سرعت × رفتوبرگشت
لرزش بنا بر RFC 3550
از شناسنامههای Simetrium در کنار آناند بیت و بایت، که گنجایش مسیر را با آنها میشمارند، ثانیه، که هر دو کمیت سرانجام بدان بازمیگردند، دسیبل از ترازنامههای خط و تپش ساعت، که مرز تفکیک نشانههای زمانی سختافزار را مینهد.
07 · بخش تاریخی
تَق و پژواک
آنگاه که میان دانشگاه کالیفرنیا و پژوهشگاه منلوپارک نخستین واژه گذر داده شد، کاربر آن را با تلفن املا میکرد و تأیید را حرف به حرف چشمبهراه میماند. پیوند بر حرف سوم گسست، اما خود شیوهٔ کار — فرستادند، پاسخ را چشمبهراه ماندند، به ساعت نگریستند — همان از آب درآمد که تا امروز به کار است.
مایک موس برنامهاش را در یک شب نوشت، در حالی که خرابیای را پی میگرفت، و آن را از آوای ژرفاسنج نام نهاد: تکانهای کوتاه و سپس چشمبهراهی بازتاب. نام چنان درست افتاد که فعل «پینگ کردن» بسی فراتر از پیشهٔ شبکه به زبان درآمد و اکنون هر پیام کوتاهی را میرساند که میفرستند تا بدانند کسی هست یا نه.
در پاییز 1986 گذردهی یکی از خطهای دانشگاهی هزار برابر افت کرد: فرستندگان که تأییدی نمیگرفتند، پیوسته رونوشتهای تازه میفرستادند و مسیر را یکسره از پا درآوردند. ون جیکوبسن درمانی پیشنهاد کرد که تا امروز کارگر است: رفتوبرگشت و پراکندگیاش را زیر نظر داشتن و بالیدن آنها را نشانهٔ گرفتگی گرفتن، یعنی فرستادن را پیش از آغاز هدررفتها لگام زدن.
الگوریتمهای امروزیِ مهار جریان دیگر هدررفتها را زیر نظر ندارند، بلکه راست همان بالیدن رفتوبرگشت را، و فرستادن را پیش از آنکه صف مجال پر شدن یابد لگام میزنند. مسیریابهای خانگی نظمهایی یافتهاند که میانگیر را از روی قصد کوتاه نگه میدارند — و رفتوبرگشت زیر بار از یک ثانیه و نیم به دهها میلیثانیه بر همان خط میافتد.
نیمهٔ رفتوبرگشت گمان است، نه سنجش
رفتوبرگشت از آن رو آسان است که همسازی ساعتها را نمیخواهد: هم فرستادن و هم گرفتن را یک دستگاه نشانه میزند، و واگرایی مقیاسها بهسادگی در اختلاف وارد نمیشود. درست از همین رو پینگ همهجا کار میکند و تنظیمی نمیخواهد، حال آنکه تأخیر یکسویه کمیتی بهمراتب دمدمیتر است و همسازیای باریکتر از آنچه سنجیده میشود میطلبد.
عادت نصف کردن رفتوبرگشت از همین رو پابرجاست، هرچند کم چیزی آن را پشتیبانی میکند: جریان به سوی آن سو و جریان بازگشتی کم نیست که از مسیرهای گوناگون میگذرند، با درازا و بار گوناگون، چنانکه نیمههای راستین میتوانند دو برابر تفاوت داشته باشند. کمیتی که در همهٔ پیشهٔ شبکه از همه آسانتر سنجیده میشود، همان است که از همه بیشتر نادرست خوانده میشود.
فهرست · یکاهای اندازهگیری
شناسنامهای برای هر کمیت
هفت یکای پایهٔ SI، بیست و دو یکای برآمده با نام ویژهٔ خود، و کمیتهای بیرون از دستگاه که بی آنها نه فن کار میکند نه گاهشمار.