DnsOptions

class DnsOptions


فئة تضبط وظيفة حلّ أسماء المضيفين في Cronet يُرجى العِلم أنّه على الرغم من أنّنا نشير إلى DNS باعتباره الآلية الأكثر شيوعًا المستخدمة للاختصار، تنطبق الإعدادات على الوسائل الأخرى لحلّ أسماء المضيفين، مثل حلّ ملفات المضيفين.

يحلّ Cronet أسماء المضيفين بطريقتَين: إما باستخدام أداة حلّ النظام (باستخدام getaddrinfo التي توفّرها مكتبات النظام)، أو باستخدام أداة حلّ مخصّصة مضمّنة في حزمة الشبكات التي يستخدمها Cronet.

توفّر الحزمة المضمّنة عدة مزايا مقارنةً باستخدام أداة حلّ النظام:

  • تم تصميمها لتلبية احتياجات حزمة الشبكات، لا سيما السرعة والثبات.
  • getaddrinfo هي عملية حظر تتطلّب تخصيص سلاسل محادثات عاملة وتجعل الإلغاء مستحيلاً (علينا إيقاف سلسلة المحادثات إلى أن تكتمل العملية)
  • لا تقدّم واجهة getaddrinfo أي معلومات عن السبب الرئيسي للأخطاء
  • لا يقدّم struct addrinfo أي مدة بقاء (TTL) للعناوين التي يتم عرضها. يحدّ ذلك من مرونة التعامل مع التخزين المؤقت (مثل السماح باستخدام سجلات نظام أسماء النطاقات القديمة) ويتطلّب منّا إما الاعتماد على ذاكرات التخزين المؤقت لنظام أسماء النطاقات في نظام التشغيل، أو أن نكون حذرين للغاية بشأن مدة البقاء.
  • كجزء من نظام التشغيل، يتطوّر getaddrinfo ببطء. يسمح استخدام حزمة مخصّصة لـ Cronet بتقديم ميزات مثل نظام أسماء النطاقات المشفّر بشكل أسرع.

لا ينطبق معظم الإعدادات في هذه الفئة إلا إذا تم استخدام برنامج تعيين نظام أسماء النطاقات المضمّن.

ملخّص

الأنواع المضمّنة

أداة إنشاء لـ DnsOptions

شرح توضيحي لواجهات برمجة التطبيقات التي لا تُعتبر مستقرة بعد

فئة تضبط وظيفة نظام أسماء النطاقات القديم في Cronet

أداة إنشاء لـ StaleDnsOptions

الوظائف العامة

builder

java-static fun builder(): DnsOptions.Builder!

getEnableStaleDns

fun getEnableStaleDns(): Boolean?

getPersistHostCache

fun getPersistHostCache(): Boolean?

getPersistHostCachePeriodMillis

fun getPersistHostCachePeriodMillis(): Long?

getPreestablishConnectionsToStaleDnsResults

fun getPreestablishConnectionsToStaleDnsResults(): Boolean?

getStaleDnsOptions

fun getStaleDnsOptions(): DnsOptions.StaleDnsOptions?

getUseBuiltInDnsResolver

fun getUseBuiltInDnsResolver(): Boolean?