کادملیا
جزئیات سیستم > جداول مسیریابی با اندازه ثابت

این بخش برای استفاده از تنها یک بیت ساده سازی شده است. برای اطلاعات بیشتر در مورد جداول مسیریابی واقعی به بخش جداول مرجع تقویت شده مراجعه کنید.
جداول مسیریابی اندازه ثابت در نسخه قبل از رسیدگی مقاله اصلی ارائه شده است و در نسخه بعدی فقط برای برخی از اثبات های ریاضی استفاده می شود. یک اجرای واقعی کادملیا دارای جدول مسیریابی با اندازه ثابت نیست بلکه دارای جدول مسیریابی با اندازه پویا است.
جداول مسیریابی کادملیا شامل یک لیست برای هر بیت شناسه گره است. (به عنوان مثال اگر یک شناسه گره شامل 128 بیت باشد ، یک گره تعداد 128 عدد از این لیستها را نگه می دارد. ) یک لیست دارای ورودی های زیادی است. هر ورودی در یک لیست داده های لازم را برای یافتن گره دیگر در اختیار دارد. داده های موجود در هر ورودی لیست معمولاً آدرس IP ، پورت و شناسه گره دیگر است. هر لیست با فاصله مشخصی از گره مطابقت دارد. گره های که می تواند در n امین لیست جا بگیرند باید یک بیت n ام متفاوت از شناسه (ID) گره داشته باشند. اولین بیت n-1 شناسه نامزد باید با شناسه گره مطابقت داشته باشد. این بدان معنی است که جمع کردن لیست اول بسیار آسان است زیرا 1/2 گره های موجود در شبکه کاندیدای قرارگرفتن در  دوردست هستند. در لیست بعدی فقط می توان از 1/4 از گره های موجود در شبکه استفاده کرد (یک بیت نزدیک تر از اول) و غیره.
با داشتن یک شناسه 128 بیتی ، هر گره در شبکه گره های دیگر را در یکی از 128 فاصله مختلف ، یک فاصله خاص در هر بیت طبقه بندی می کند.
وقتی گره ها در شبکه برخورد داشته باشند ، به لیست ها اضافه می شوند . این کار شامل عملیات ذخیره سازی و بازیابی و حتی کمک به گره های دیگر برای یافتن کلید است. هر گره ای که با آن روبرو می شوید برای درج در لیست ها در نظر گرفته می شود. بنابراین ، دانشی که گره از شبکه دارد بسیار پویا است. این ویژگی باعث می شود شبکه به طور مداوم به روز شود و مقاومت در برابر خرابی ها یا حملات را افزایش دهد.
در ادبیات کادملیا، از لیست ها به (k-سطل) یاد می شود . k یک عدد سیستمی مانند 20 است. هر (k-سطل) لیستی است که دارای ورودی های K در داخل خودش است. یعنی برای شبکه ای با k = 20 ، هر گره دارای لیست هایی است که حداکثر 20 گره را برای یک بیت خاص (فاصله خاص از خود) دارد.
از آنجا که گره های ممکن برای هر(k-سطل)به سرعت کاهش می یابد (زیرا گره های بسیار کمی در آن نزدیکی وجود خواهد داشت) ،  بیت پایینتر (k-سطل) ، تمام گره ها را در آن بخش از شبکه به طور کامل نگاشت می کنند. از آنجا که مقدار شناسه های ممکن بسیار بزرگتر از هر تعداد گره ممکن است  ، برخی از (k-سطل) ها که مربوط به مسافت های بسیار کوتاه هستند ، خالی باقی می مانند.
شبکه ساده سمت راست را در نظر بگیرید. اندازه شبکه 2 به توان 3 یا 8 کلید و گره حداکثر است. هفت گره برای شرکت کردن وجود دارند. حلقه های کوچک در پایین گره مورد نظر گره شش (دودویی 110) به رنگ سیاه است. در این شبکه سه سطل K برای هر گره وجود دارد. گره های صفر ، یک و دو (باینری 000 ، 001 و 010) نامزد دورترین سطل K هستند . گره سه (دودویی 011 ، نشان داده نشده است) در شبکه شرکت نمی کند. در سطل k میانی ، گره های چهار و پنج (باینری 100 و 101) قرار می گیرند. سرانجام ، سطل سوم k فقط می تواند شامل گره هفت باشد (باینری 111). هر یک از سه سطل K در یک دایره خاکستری محصور شده است. اگر اندازه k-bucket دو بود ، دورترین 2-سطل فقط می تواند حاوی دو تا از سه گره باشد. به عنوان مثال ، اگر گره شش گره یک و دو را در دورترین 2 سطل داشته باشد ، برای یافتن محل (آدرس ip) گره صفر ، باید یک جستجوی شناسه گره به این گره ها بخواهید. هر گره همسایگی خود را به خوبی می شناسد و با چند گره دورتر ارتباط دارد که می تواند به گره های دیگر دورتر کمک کند.
مشخص است که گره هایی که مدت طولانی در یک شبکه متصل شده اند ، احتمالاً در آینده برای مدت طولانی متصل خواهند بود.   به دلیل این توزیع آماری ، کادملیاگره های متصل طولانی را برای ماندن در سطل های K انتخاب می کند. این تعداد گره های معتبر شناخته شده را در آینده افزایش می دهد و شبکه پایدار تری را فراهم می کند.
هنگامی که یک سطل k کامل است و یک گره جدید برای آن سطل k کشف می شود ، کمترین گره اخیراً در سطل k دیده می شود PINGed. اگر مشخص شود که گره هنوز زنده است ، گره جدید در یک لیست ثانویه ، یک حافظه نهان جایگزین قرار می گیرد. حافظه پنهان جایگزینی فقط درصورتی استفاده می شود که یک گره در سطل k جواب ندهد. به عبارت دیگر: گره های جدید فقط در صورت ناپدید شدن گره های قدیمی استفاده می شوند.