بخشی از پاورپوینت

اسلاید 1 :

شبکه های کامپیوتری
نام گذاری و DNS

اسلاید 2 :

نام گذاری
برای تشخیص منابع به نام گذاری نیاز داریم.
بعد از نامگذاری، لازم است مکان منابع را پیدا کنیم.
نحوهی نامگذاری منابع؟
- سلسله مراتب نام گذاری
چگونه محل منابع را به طور کارآ تعیین می کنیم؟
-DNS یک نگاشت از نام ← مکان(آدرس IP) است.
چالش: چگونه این کار را در مقیاس وسیع و در سطح گسترده انجام دهیم؟

اسلاید 3 :

/etc/hosts
چرا از /etc/hosts استفاده نکنیم؟
- نامگذاری اولیه برای نگاشت آدرسها در سیستم یونیکس
- فضای نام مسطح
- جستجوی نگاشت در /etc/hosts
- نگه داری کپی اصلی توسط SRI-NIC
- بارگیری منظم
تعداد میزبانها مرتب افزایش مییافت:
- بارگیری های خیلی بیشتر
- بهروز رسانی های خیلی بیشتر

اسلاید 4 :

اهداف سیستم نام گذاری حوزه
اساساً یک پایگاه داده توزیع شده از نگاشت های نام به آدرس IP در سطح گسترده است.
اهداف :
- قابلیت مقیاس پذیری
- عدم وابستگی به یک سرور مرکزی
- استحکام

اسلاید 5 :

DNS Records
DB شامل چندتایهای است به نام رکورد منابع (RRs) است.
کلاسها = اینترنت(IN)، Chaosnet(CH)و غیره
هر کلاس مقادیر خود را بر اساس type تعریف می کند
در کلاس IN :
Type=A
name is hostname
value is IP address
Type=NS
name is domain (e.g. foo.com)
value is name of authoritative name server for this domain
Type=CNAME
name is an alias name for some “canonical” (the real) name
value is canonical name
Type=MX
value is hostname of mailserver associated with name

اسلاید 6 :

خواص ردیفهای جدول DNS
نگاشت های متفاوتی وجود دارد:
- یک حالت ساده: نگاشت 1-1 بین نام حوزه و آدرس IP
Kittyhawk.cmcl.cs.cmu.edu نگاشت می شود به 128.2.194.242
- نگاشت چندین اسم حوزه به یک آدرس IP
Eecs.mit.edu و cs.mit.edu هر دو به 18.62.1.6 نگاشت می شوند.
- نگاشت یک نام حوزهی منفرد به چندین آدرس IP گوناگون
aol.com و www.aol.comبه آدرس های IP گوناگونی نگاشت می شوند.

اسلاید 7 :

دید برنامه نویس از DNS
از لحاظ مفهومی، برنامه نویسان می توانند پایگاه داده DNS را به صورت مجموعه ایی از میلیون ها ساختار ردیفی از میزبانها ببینند. هر میزبان دارای یک ساختار ردیف میزبان در جدول DNS به شکل زیر است:

in_addr ساختاری متشکل از 4 بایت آدرس IP است.
توابعی برای بازیابی ردیفهای میزبانهای از DNS :
: gethostbyname کلید جستجو نام DNS میزبان است.
gethostbyaddr : کلید جستجو آدرس IP است.
/* DNS host entry structure */
struct hostent {
char *h_name; /* official domain name of host */
char **h_aliases; /* null-terminated array of domain names */
int h_addrtype; /* host address type (AF_INET) */
int h_length; /* length of an address, in bytes */
char **h_addr_list; /* null-terminated array of in_addr structs */
};

اسلاید 8 :

طراحی DNS : تعیین سلسله مراتب
root (.)
edu
net
org
com
gwu
ucb
wisc
cmu
mit
wail
هر نود در این سلسله مراتب فهرستی از اسامی که به پسوند یکسانی منتهی میشوند را نگهداری میکند.
پسوند = یک مسیر از پایین به بالا در درخت

با توجه به درخت روبرو، اسامی زیر کجا ذخیره شده اند؟
Fred.com
Fred.edu
Fred.wisc.edu
Fred.cs.wisc.edu
Fred.cs.cmu.edu

اسلاید 9 :

طراحی DNS : تعریف نواحی
root
edu
net
org
com
gwu
ucb
cmu
mit
ece
cmcl
یک نود منفرد
زیر درخت
کل درخت
محدوده = قسمت هایی پیوسته از حوزهی نام مثل کل درخت، یک نود یا یک زیر درخت
هر محدوده به مجموعهای از سرورهای نام منتسب میشود:
این سرورها نگاشتهای محدوده را میدانند.

اسلاید 10 :

طراحی DNS
برای ایجاد یک محدوده جدید، باید صاحب یکی از محدودههای فعلی را متقاعد کنید که برای شما یک زیر-محدوده درست کند.
رکوردهای داخل محدوده در چندین خدمتگزار نام ذخیره میشوند.
سرورهای اصلی به طور دستی به روز رسانی میشوند.
سرورهای ثانویه از طریق انتقال محدودهی حوزه ی نام به روز رسانی میشوند.
انتقال محدوده به صورت یکجا و از طریق پیکربندی خدمتگزار DNS انجام می شود و برای اینکار از TCP استفاده می شود تا دادههای دو خدمتگزار مثل هم باشند.
نود صاحب محدوده یک رکورد NS برای زیر-محدوده ایجاد می کند.
این رکورد به خدمتگزار نام زیر-محدوده ی جدید اشاره میکند.
به عنوان مثال
cs.wisc.edu از طریق مدیریتwisc.edu ایجاد می شود .

اسلاید 11 :

سرورها یا resolver ها
هر میزبان یک resolver دارد.
معمولاْ یک کتابخانه است که کاربردها آن را لینک می کنند.
Resolver با خدمتگزار نام محلی تماس میگیرد.
خدمتگزار نام محلی به صورت دستی پیکربندی میشود. (مثل /etc/resolv.conf)
خدمتگزار نام:
یا مسؤل یک محدوده است.
نگاشت تمامی نامهای آن محدوده را می داند.
یا خدمتگزارهای نام زیر-محدوده را میشناسد.
این سرورها اسامی داخل زیر-محدوده را بهتر می شناسند.
اگر نگاشت یک نام را ندانیم، مستقیما از ریشه می پرسیم.

اسلاید 12 :

DNS : خدمتگزارهای نام ریشه
مسئول محدوده ی ریشه هستند.
تقریباًِ 13 خدمتگزار نام ریشه در جهان وجود دارد.
اسامی آنها به صورت:
{a-m}.root-servers.net است.
اگر خدمتگزار نام محلی نتواند یک نام را resolve کند سراغ یکی از خدمتگزارهای نام ریشه می رود.
خدمتگزار محلی با اسم خدمتگزارهای ریشهی معروف پیکربندی می شوند.

اسلاید 13 :

TLD و سرور های مسئول
حوزه های سطح بالا(TLD): مسئولcom, org, net, edu و تمام حوزه های سطح بالای کشورها از قبیل uk, fr, ca, و jp هستند.
شرکت راه حل های شبکه از سرورهای TLD مربوط به حوزه com نگهداری می کند.
شرکت Educause از حوزه edu نگهداری میکند.
سرورهای مسئول DNS: سرورهای DNS سازمانها مسئول تدارک نگاشت معتبر بین نام میزبانها و آدرس IP آنها برای سرورهای سازمان (شامل Web , mail) هستند.
می توان از طریق سازمان یا یک فراهم کننده ی خدمات از آنها نگهداری کرد.

اسلاید 14 :

خدمتگزار نام محلی
هر ISP (ISP محلی ، شرکت ، دانشگاه) یک خدمتگزار نام محلی دارد.
- که به آن «خدمتگزار نام پیش فرض» نیز گفته میشود.
زمانی که میزبان یک جستجوی DNS داشته باشد، جستجو را به خدمتگزار DNS محلی ارسال می کند.
- خدمتگزار DNS محلی به صورت یک میانجی، جستجو را به سلسله مراتب میفرستد.
- برای جستجوی نام میزبان های متداول (مثل گوگل) سرعت جستجو به میزان قابل ملاحظهای افزایش مییابد.

اسلاید 15 :

مثالی از جستجو
قدم های لازم برای پیدا کردن نگاشت www.wisc.edu
کاربرد gethostbyname() (resolver) را فرا می خواند.
resolver با خدمتگزار نام محلی (S1) ارتباط برقرار می کند.
S1 از سرور ریشه (S2) در مورد (www.wisc.edu) سوال میکند.
S2 رکورد NS مربوط به wisc.edu(S3) را به عنوان پاسخ برمیگرداند.
رکورد A مربوط به S3 را چگونه پیدا کنیم؟
این معمولاً بخشی از اطلاعات اضافی است که در جواب برمیگردد و به آن پیش واکشی میگویند.
S1 از S3 راجع به www.wisc.edu میپرسد.
S3 نیز رکورد A مربوط به www.wisc.edu را برمیگرداند.
ممکن است چندین رکورد A در جواب برگردد. معنای این کار چیست؟

اسلاید 16 :

قالب پیام DNS
شناسه :
16 بیت برای پرس و جو، پاسخ نیز از شناسهی یکسانی استفاده میکند.

پرچم ها :
پرس و جو یا پاسخ
درخواست بازگشت
امکان استفاده از بازگشت
پاسخ معتبر است.

اسلاید 17 :

روش های جستجو
جستجوی بازگشتی :
سرور به جای ما دست به کار شده و برای اطلاعات بیشتر جستجو می کند(بازگشتی).
فقط جواب پایانی یا «پیدا نشد» را برمی گرداند.

جستجوی تکراری:
جواب های سرور به اندازه ای است که می داند. (تکراری)
«من این اسم را نمی دانم اما از این سرور بپرس»

تاثیر حجم کار در انتخاب؟
سرور محلی معمولاً بازگشتی کار میکند.
سرور ریشه و راه دور به صورت تکراری کار میکند.
میزبان متقاضی
surf.eurecom.fr
gaia.cs.umass.edu
خدمتگزار نام ریشه
خدمتگزار نام مسئول
dns.cs.umass.edu
خدمتگزار نام میانی
dns.umass.edu
جستجوی تکراری

اسلاید 18 :

حجم کار و حافظه ی نهان
جواب های DNS در حافظه ی نهان ذخیره میشوند.
جواب های سریع برای پرس وجوهای تکراری.
دیگر پرس و جوها ممکن است از بخشی از پرس وجوهای قبلی استفاده شوند.
مثل رکوردهای NS برای حوزها
پرس و جوهای منفی DNS نیز در حافظه ی نهان ذخیره می شوند.
مجبور نیستیم که اشتباهات قبلی را تکرار کنیم.
از قبیل غلط املایی، جستجوی رشته های داخل resolv.conf
دادههای ذخیره شده در حافظه ی نهان بعد از مدتی حذف میشوند.
طول عمر (ttl) داده ها به وسیله دارنده ی داده تعیین می شود.
هنگام ارسال رکورد ttl آن نیز ارسال میشود.
معمولاً خدمتگزار نام محلی اطلاعات سرورهای TLD را در حافظهی نهان ذخیره میکند.
بنابراین تعداد مراجعات به خدمتگزارهای نام ریشه کمتر میشود.

اسلاید 19 :

مثالی از DNS در عمل
resolver
مشتری
خدمتگزار DNS
محلی
root & edu
DNS server
ns1.wisc.edu
DNS server
www.cs.wisc.edu
NS ns1.cs.wisc.edu
ns1.cs.wisc.edu
DNS
server

اسلاید 20 :

جستجوهای بعدی
مشتری
خدمتگزارDNS محلی
root & edu
DNS server
wisc.edu
DNS server
cs.wisc.edu
DNS
server
ftp.cs.wisc.edu
ftp=IPaddr
ftp.cs.wisc.edu

در متن اصلی پاورپوینت به هم ریختگی وجود ندارد. برای مطالعه بیشتر پاورپوینت آن را خریداری کنید