
شما فکر می کنید که همگام سازی ساعت ها در ناوگانی از سرورهای مدرن یک مشکل حل شده است، اما در واقع حل آن یک چالش بسیار دشوار است، به خصوص اگر می خواهید به دقت نانوثانیه برسید. این همچنین به این معنی است که این اصل در علم کامپیوتر این است که هرگز نباید یک سیستم مبتنی بر ساعت بسازید. Clockwork.io که امروز یک دور سرمایه گذاری 21 میلیون دلاری سری A را اعلام کرد، وعده تغییر آن را با دقت همگام سازی تا 5 نانوثانیه با مهرهای زمانی سخت افزاری و صدها نانوثانیه با مهرهای زمانی نرم افزاری داده است.
بر اساس این کار، این شرکت امروز اولین محصول خود را با نام Latency Sensei عرضه می کند که می تواند داده های تأخیر بسیار خوبی را در محیط های ابری، محلی و ترکیبی به کاربران خود ارائه دهد که سپس می توانند از آن برای یافتن موانع و راه اندازی شبکه های خود استفاده کنند. مشتریان این شرکت در حال حاضر شامل نزدک، ولز فارگو و RBC هستند.

اعتبار تصویر: ساعت کاری
این استارت آپ توسط Yilong Geng، Deepak Merugu و Stanford Balaji Prabhakar، بنیانگذاران VMware، پروفسور علوم کامپیوتر در استنفورد، با مندل روزنبلوم، یکی از بنیانگذاران VMware و استاد علوم کامپیوتر در استنفورد، عضو هیئت مدیره و دانشمند ارشد تاسیس شد. . با توجه به شجره نامه این گروه، جای تعجب نیست که تحقیقات اصلی در پشت سیستم Clockwork بر اساس تحقیقات بنیادی دانشگاهی است که این تیم در استنفورد انجام دادند.
پروتکل همگامسازی زمان شبکه (NTP)، فرمت استانداردی که امروزه اکثر رایانهها برای همگامسازی ساعتها استفاده میکنند، در همه جا وجود دارد، اما چندان دقیق نیست. کارهایی برای بهبود این موضوع انجام شده است، مانند مشارکت فیس بوک در راه حل سخت افزاری برای پروژه Open Compute در سال گذشته، اما تیم Clockwork قول دقت بسیار بیشتری را می دهد.
“گاهی اوقات در مراکز داده، نمی توانستم آنها را برای لحظه ای به توافق برسانم. تلفن من و ایستگاه پایه اینجا احتمالاً در مورد دومی توافق دارند. سپس شما ریزتر و ظریف تر و ظریف تر می شوید – به میکروثانیه و نانوثانیه. خیلی سخت است. پرابهاکار توضیح داد که برای دو ساعت بسیار دشوار است که بفهمند دقیقا در چه نانو ثانیه هستند. او خاطرنشان کرد که همگام سازی یک بار این ساعت ها به اندازه کافی خوب نیست. همچنین باید آنها را هماهنگ نگه دارید. میتوانید ساعتهایی با دقت بالا که در برابر تغییرات دما و لرزشها مصون هستند را در سرور قرار دهید، اما این ساعت به سرعت از خود سرور گرانتر میشود.

اعتبار تصویر: ساعت کاری
برای حل این مشکل، تیم یک مدل سیستم و یادگیری ماشینی ساخت که به آن اجازه میدهد تا زمانی را که طول میکشد تا یک مهر زمانی به سرور برسد، اندازهگیری کند. این تفاوت چندانی با روش کار NTP ندارد، اما سپس تیم این کار را چند قدم جلوتر انجام میدهد، به مُهرهای زمانی مختلف نگاه میکند و سپس هم افست ساعت و هم اختلاف فرکانس نسبی را دریافت میکند. همه اینها سپس به مدل یادگیری ماشین ارسال می شود. علاوه بر این، تیم همچنین این سیستم را ساخته است تا ساعت های مختلف بتوانند با یکدیگر صحبت کنند و زمانی که هماهنگ نیستند را تشخیص دهند (و تصحیح کنند).
در غیاب مهرهای زمانی قابل اعتماد، سیستم های توزیع شده برای مدت طولانی مجبور به تکیه بر طرح های بدون ساعت بودند که سطح پیچیدگی بیشتری را به ساخت سیستم های پیچیده اضافه می کند. تیم Clockwork امیدوار است که کارش به محققان اجازه دهد تا با الگوریتمهای مبتنی بر زمان جدید در تعدادی از حوزههای مشکل مانند ثبات پایگاه داده، مرتبسازی رویداد، پروتکلهای توافقی و ثبتها آزمایش کنند.
مطالعه اولیه توسط تیم Rosenblum و Prabhakar درباره این بود که اگر بتوانید به ساعتها در یک سیستم توزیعشده اعتماد کنید، چه کاری میتوانید انجام دهید.
روزنبلوم گفت: “در حال حاضر، هیچ کس از زمان استفاده نمی کند، به جز شاید Spanner در گوگل، CockroachDB، یا کسی که کارهایی را با پایگاه داده انجام می دهد.” “ما معتقدیم که مکان های بسیار بیشتری وجود دارد، به خصوص که چیزهای مهم تر و بیشتر ظاهر می شوند. میتوانیم زمان را همگامسازی کنیم، زیرا نحوه انجام آن را به خوبی فهمیدیم. بنابراین ما پرسیدیم: آیا این بخشی از روند است که ما برنامه نویسی این سیستم ها را متفاوت شروع می کنیم؟ و [researchers] من از این فرصت برای تحقق آن کمی هیجان زده بودم.”
بنابراین، هنگامی که مشکلات همگامسازی حل شد، تیم Clockwork اکنون به دنبال ساخت محصولاتی بر اساس آن است که با Latency Sensei شروع میشود. اما پرابهاکار همچنین خاطرنشان کرد که تیم در حال حاضر روی پروژه دیگری کار می کند که تشخیص تراکم در مراکز داده را آسان تر می کند. او خاطرنشان کرد، TCP برای شبکه های گسترده عالی است، اما در داخل مرکز داده بسیار زیاد است. اما هنگامی که اطلاعات بیشتری در مورد شبکه و تاخیرهای آن دارید، میتوانید از این پروتکل برای ارائه نکات بهتر در مورد بهترین مسیریابی بستهها در مرکز داده برای پروتکل TCP استفاده کنید.
دور سری A این شرکت توسط NEA رهبری میشد که شامل سرمایهگذاران برجسته فرشته، از جمله جان هنسی، بنیانگذار MIPS، رام شریرام سرمایهگذار اولیه گوگل و جری یانگ، یکی از بنیانگذاران یاهو بود.