هندسة معمارية

التعرّف على بنية المزاد في خدمات عروض الأسعار والمزادات

نظرة عامة

تقدّم خدمات عروض الأسعار والمزادات (B&A) مجموعة من الخدمات لمشتري الإعلانات وبائعيها التي تعمل في بيئة تنفيذ موثوقة (TEE) لتسهيل مزاد الجمهور المحمي (PA). توضّح هذه الصفحة إعدادات المزاد المختلفة التي يمكن استخدامها في B&A في مزاد الإعلانات المتجاوبة على شبكة البحث.

التعريفات

المصطلح الوصف
مزاد Protected Audience مزاد إعلانات يتضمن بيانات من عدّة مواقع إلكترونية
المزاد السياقي مزاد إعلاني لا يتضمن بيانات من مواقع إلكترونية متعددة يتّبع هذا المزاد مسار مزاد "عروض الأسعار في الوقت الفعلي" الحالي.
طلب المزاد الموحّد طلب يُرسِله رمز JavaScript الخاص بالبائع من المتصفّح ويتضمن الحمولة لكلّ من مزاد "شرائح الجمهور المحمية" والمزاد السياقي
خدمة إعلانات البائعين (SAS) الخدمة المسؤولة عن معالجة طلب المزاد الموحّد من المتصفّح قد يكون هذا هو خادم إعلانات RTB الحالي الخاص بالبائع. تتحمّل ميزة SAS مسؤولية تنظيم كلّ من مزادات الجمهور المستنِد إلى السياق والجمهور المحمي.
خدمة إعلانات المشترين الخدمة المسؤولة عن إرسال عرض سعر في مزاد الإعلانات حسب السياق قد يكون هذا هو خادم إعلانات ORTB الحالي الخاص بالمشتري.

خدمات للمشترين والبائعين

تتألف خدمات B&A من أربع خدمات للمشترين والبائعين:

  • بالنسبة إلى المشترين، تتوفّر خدمة عروض الأسعار وخدمة واجهة المستخدِم (BFE) للاستخدام.
  • تتوفّر للبائعين خدمة المزاد وخدمة Seller Front-End (SFE).
مُشارِك الخدمة الوصف
مشتري خدمة Buyer Front-End (BFE) تعالج الخدمة طلب GetBids من SFE الخاص بالبائع. وهي مسؤولة عن فك تشفير الحمولة وجلب إشارات K/V واستدعاء GenerateBids في Bidding Service.
خدمة عروض الأسعار تعالج الخدمة طلب GenerateBids من BFE. وهي مسؤولة عن تنفيذ منطق عروض أسعار المشتري وإنشاء عرض أسعار.
البائع خدمة Seller Front-End (SFE) تعالج الخدمة طلب SelectAd من خدمة إعلانات البائع. وهي مسؤولة عن فك تشفير الحمولة، واستدعاء عملية GetBids في BFE، وجلب إشارات K/V، واستدعاء عملية ScoreAd في خدمة المزاد، ثم عرض نتيجة مزاد B&A المشفَّرة إلى SAS.

عندما تكون الخدمة جزءًا من حِزمة البائع ذات المستوى الأعلى في مزاد يُديره الخادم يشارك فيه عدة بائعين، تعالج الخدمة أيضًا طلب GetComponentAuctionCiphertexts من SAS.

خدمات المزاد تعالج الخدمة طلب ScoreAd من SFE. وهي مسؤولة عن تنفيذ منطق احتساب النقاط للبائعين وتقديم نتيجة مدى ملاءمة عرض السعر.

بنية مزاد B&A في "إعلانات شبكة البحث" للويب

يوضّح المخطّط البياني التالي مزاد "شرائح الجمهور المحمية" الأساسي مع خدمات B&A مع بائع واحد ومشتري واحد. تمثّل المربّعات الحمراء السميكة الخدمات التي تعمل في بيئة التشغيل المخصّصة للتطبيقات فقط:

يُرسِل رمز JavaScript من جهة العميل طلب المزاد الموحّد إلى منصّة عرض الإعلانات. يُرسِل SAS طلبًا إلى SFE، ويُرسِل SFE طلبًا إلى BFE للحصول على عرض سعر.

(مخطّط بياني بالحجم الكامل)

  1. يُنشئ رمز JavaScript لخدمة SSP في صفحة الناشر بيانات مزاد الإعلانات المشفّرة للشبكة الإعلانية المتجاوبة من خلال طلب navigator.getInterestGroupAdAuctionData().
    • تحتوي الحمولة المشفّرة هذه على بيانات المشتري ولا يمكن فك تشفيرها إلا داخل وحدة SFE في وحدة TEE.
  2. يُرسِل رمز JavaScript في منصّة SSP طلب مزاد موحّدًا إلى "خدمة الإعلانات للبائعين".
    • يحتوي طلب المزاد الموحّد على كلّ من الحمولة النصية للمزاد السياقي لنظام ORTB والحِمل المشفّر للمزاد الإعلاني لتحديد المصدر والموقع.
    • خدمة إعلانات البائع هي خادم الإعلانات الحالي، ولا يتم تشغيلها في بيئة آمنة للبرامج.
  3. تستدعي خدمة إعلانات البائع خدمة RTB في منصّة إدارة الأداء لطلب عرض سعر المزاد السياقي وأي إشارات للمشتري يتم تمريرها إلى مزاد الإعلانات المتجاوبة اللاحق.
    • يمكن أن تكون هذه الخطوة هي خطوة يشير فيها المشتري إلى رغبته في المشاركة في مزاد الإعلانات المتجاوبة.
  4. بعد اكتمال المزاد السياقي، تُرسِل SAS طلب SelectAd إلى خدمة SFE.
    • تتم إضافة إشارة المشتري وعرض السعر الفائز في المزاد السياقي إلى الحمولة المطلوبة في SelectAd.
  5. تستدعي خدمة SFE في منصّة عرض الإعلانات خدمة BFE في منصّة إدارة الإعلانات مع طلب GetBids.
  6. يُطلِق BFE في منصّة DSP طلبًا إلى "خدمة عروض الأسعار" باستخدام GenerateBids.
  7. بعد استلام عرض السعر من SFE، يتم إجراء طلب ScoreAd إلى خدمة المزاد.
    • يتمّ عرض عرض السعر الذي يضمّ أعلى نتيجة مرغوب فيها في SAS، ثمّ تتمّ إعادة توجيهه إلى رمز JavaScript في الصفحة.
  8. يتم الانتهاء من المزاد في المتصفّح من خلال تمرير نتيجة مزاد B&A المشفَّرة إلى طلب navigator.runAdAuction().

إعدادات المزاد

يمكن إعداد مزاد "شرائح الجمهور المحمية" باستخدام "خدمات B&A" بالطرق التالية:

  • مزاد لبائع واحد مع مشتري الإعلانات الصورية
  • مزاد بالوضع المختلط مع المشترين على الأجهزة والمشترين من الأنشطة التجارية
  • مزاد يضمّ بائعين متعدّدين ويمكن تنظيمه على مستوى الجهاز أو الخادم

مشارك

لوصف كلّ إعدادات مزاد، يتمّ استخدام المشاركين التاليين في هذا الدليل:

مُشارِك الوصف
DSP-A مشتري على الجهاز فقط
DSP-B مشتري على الجهاز فقط
DSP-X مشتري الإعلانات التجارية
DSP-Y مشتري الإعلانات التجارية
SSP-TOP البائع من المستوى الأعلى
SSP-OD البائع على الجهاز فقط
SSP-BA بائع للأجهزة الجوّالة والأجهزة اللوحية فقط
SSP-MIX البائع الذي يستخدم نموذجًا مختلطًا

هناك أربعة منصّات لإدارة الأداء:

  • لا تشارك DSP-A وDSP-B إلا في المزادات على الجهاز فقط.
  • يشارك كلّ من DSP-X وDSP-Y في المزادات على الجهاز والمزادات على شبكة البحث والشبكة الإعلانية.

هناك أربعة وسطاء عرض مبيعات، وينفّذ كل بائع إعدادات مزاد مختلفة:

  • SSP-OD تُجري مزادًا على الجهاز فقط
  • SSP-BA تُجري مزادًا للإعلانات الصورية والإعلانات المتجاوبة فقط
  • SSP-MIX يُجري مزادًا بالوضع المختلط
  • SSP-TOP يُجري مزادًا يضمّ بائعين متعدّدين:
    • SSP-OD/BA/MIX مشاركة بائعي المكوّنات في مزاد "SSP-TOP" المتعدد البائعين

مزاد الإعلانات الصورية للبائع الفردي

في الإعداد الخاص ببائع واحد، يُجري بائع واحد مزادًا يشارك فيه عدة مشترين. إذا كان البائع يُجري مزادًا للإعلانات الصورية، يجب أن يُجري المشترون مجموعة خدمات المشترين من"خدمات الإعلانات الصورية" لإرسال عرض سعر إلى المزاد. ولا يحتاج المشترون والبائعون إلى استخدام مقدّم خدمة السحابة الإلكترونية نفسه.

بنية البائع الفردي التي يتواصل فيها واجهة برمجة تطبيقات واحدة للبائع مع واجهة برمجة تطبيقات متعددة للبائعين الخارجيين لتلقّي عروض الأسعار

(مخطّط بياني بالحجم الكامل)

في الإعداد السابق، يُجري SSP-BA مزادًا للإعلانات الصورية يشارك فيه DSP-X وDSP-Y باستخدام حزمة المشترين في خدمات الإعلانات الصورية. تُجري "خدمة الإعلانات" الخاصة بالبائع مزادًا سياقيًا أولاً لكلّ من DSP-X وDSP-Y، ثم تُجري مزادًا للجمهور المحمي من خلال إرسال طلب SelectAd إلى "خدمة SFE" الخاصة بالبائع. يتمّ تمرير عرض السعر الفائز في المزاد السياقي والإشارات لكلّ مشترٍ إلى طلب SelectAd. بعد ذلك، تُرسِل خدمة SFE طلبات GetBids إلى BFE لكلّ من DSP-X وDSP-Y، ما سيؤدي إلى استدعاء خدمة عروض الأسعار لإنشاء عرض سعر.

يتم عرض نتيجة مزاد B&A المشفّرة للعميل، ويتم تمريرها إلى طلب runAdAuction(). تظهر إعدادات مزاد البائع الفردي على النحو التالي:

await navigator.runAdAuction({
  seller: 'https://ssp-ba.example',
  requestId: 'g8312cb2-da2d-4e9b-80e6-e13dec2a581c',
  serverResponse: Uint8Array(560) [193, 120, 4, ] // Encrypted B&A auction result
})

تأتي قيمة requestId من طلب getInterestGroupAdAuctionData() على العميل، وتأتي بيانات serverResponse من مزاد B&A من جهة الخادم.

المزاد المختلط

في الإعدادات المختلطة، يمكن للمشترين المشاركة في مزاد البائع من خلال التطبيق على الجهاز أو من خلال B&A. تمثّل الأسهم الزرقاء مسار المزاد على الجهاز، بينما تمثّل الأسهم الحمراء مسار المزاد في B&A:

بنية البائع في الوضع المختلط حيث يمكن للمشترين إرسال عروض أسعارهم من الأجهزة أو من خلال ميزة "الاستناد إلى البيانات والسلوك"

(مخطّط بياني بالحجم الكامل)

في هذا الإعداد، DSP-A وDSP-B هما مشتريان يرسلان عروض أسعارهما على الجهاز، وDSP-X وDSP-Y هما مشتريان يرسلان عروض أسعارهما باستخدام B&A. يشارك المشترون على الجهاز في مزاد إعلانات المنتجات داخل المتجر على الجهاز في المتصفّح، ويشارك المشترون من الأنشطة التجارية التي تبيع السلع والخدمات في عملية إعداد مزاد الأنشطة التجارية التي تبيع السلع والخدمات الموضّحة في قسم مزاد البائع الفردي.

يتم تنفيذ المزاد السياقي أولاً لجميع المشترين من أجل جمع عرض السعر الفائز في المزاد السياقي وإشارات المشترين. بعد ذلك، يتمّ تنفيذ مزاد B&A ويتمّ تمرير إشارات المشترين من المزاد السياقي إلى طلب SelectAd المرسَل إلى SFE. تتم إعادة توجيه نتيجة مزاد B&A المشفّرة التي تم عرضها من SFE إلى المتصفّح. بعد مزاد B&A، يتمّ نقل نتيجته إلى المزاد على الجهاز الذي يشارك فيه المشترون على الجهاز.

تبدو إعدادات المزاد المختلط لبائع واحد للجزء الذي يتم إجراؤه على الجهاز من المزاد على النحو التالي:

await navigator.runAdAuction({
  seller: 'https://ssp-mix.example',
  decisionLogicURL: 'https://ssp-ba.example/score-ad.js',
  componentAuctions: [
    // B&A auction
    {
      seller: 'https://ssp-mix.example',
      requestId: 'f5135cb2-da2d-4e9b-80e6-e13dec2a581c',
      serverResponse: Uint8Array(560) [133, 20, 14, ]
    },
    // On-device auction
    {
      seller: 'https://ssp-mix.example',
      interestGroupBuyers: ['https://dsp-a.example', 'https://dsp-b.example'],
      decisionLogicURL: 'https://ssp-mix.example/on-device-score-ad.js',
    }
  ]
})

إجراء عمليات موازٍ لمزادات الإعلانات على الجهاز وإعلانات "الحملات على شبكة البحث"

في حال عدم استخدام ميزة "المعالجة المُوازية"، يتم تنفيذ المزادات بشكل تسلسلي، حيث يتم تنفيذ المزاد السياقي أولاً، ثم مزاد B&A، ثم مزاد "الإعلانات على الأجهزة فقط". عند تنفيذ المعالجة المتزامنة، يتمّ تشغيل المزاد السياقي أولاً مرّة أخرى، ولكن يتمّ بثّ نتيجته وإشاراته مرة أخرى إلى العميل لبدء المزاد على الجهاز بشكل متزامن قبل انتهاء مزاد B&A.

مخطّط بياني يصف كيفية إعادة بث عروض أسعار المزاد السياقي وإشاراته ونتيجة SelectAd إلى رمز JavaScript للمتصفّح

(مخطّط بياني بالحجم الكامل)

يُرسِل رمز JavaScript في المتصفّح طلب المزاد الموحّد إلى SAS، ويبدأ SAS المزاد السياقي ومزاد B&A للإعلانات الصورية. عندما تتلقّى تقنية SAS ردًا من خادم عروض الأسعار في الوقت الفعلي الخاص بالمشتري، يشير المشتري إلى أنّه يمكن إعادة بث مزاد الإعلانات على الجهاز إلى المتصفّح، بالإضافة إلى الفائز في المزاد السياقي بعد استلام جميع عروض الأسعار. تُستخدَم إشارات المشترين التي يتم بثّها لإنشاء عرض سعر على الجهاز، ويتم استخدام الفائز في المزاد السياقي كحدّ أدنى لعرض السعر عند احتساب عروض الأسعار.

في نموذج SAS، ينشئ البائع UUID معرّف عشوائي يتم ضبطه في عنوان الاستجابة Ad-Auction-Result-Nonce عند بث بيانات المزاد السياقي إلى المتصفّح. يتم استخدام مفتاح الالتقاط نفسه في طلب SelectAd المُرسَل إلى SFE من أجل مزاد B&A، ويتم تضمين مفتاح الالتقاط هذا في استجابة SelectAd المُرسَلة من SFE. خلال مرحلة المزاد من جهة العميل، يتحقّق المتصفّح من أنّ الرمز المؤقت في رأس استجابة Ad-Auction-Result-Nonce يتطابق مع الرمز المؤقت في الحمولة المشفّرة لنتيجة المزاد.

اطّلِع على الشرح لمعرفة المزيد من المعلومات عن ميزة "التوازي في الوضع المختلط".

مزاد يضمّ بائعين متعدّدين

تتوفّر طريقتان لإجراء مزاد متعدد البائعين في "إعلانات المنتجات داخل التطبيق" باستخدام ميزة "الاستهداف والتقييم":

  1. مزاد منظَّم على مستوى الجهاز يبدأ فيه الطلب إلى خدمة الإعلانات الخاصة بكل بائع مكوّن من المتصفّح
  2. مزاد ينظّمه الخادم حيث تأتي المكالمة إلى خدمة الإعلانات الخاصة بكل بائع مكوّن من خدمة الإعلانات الخاصة بالبائع من المستوى الأعلى

مزاد البائعين المتعدّدين الذي ينظّمه الجهاز

في مزاد متعدد البائعين يتم تنظيمه على مستوى الجهاز، يكون كل بائع مكوّنات حرًا في تنفيذ مزاد له وفقًا لإعدادات من اختياره. يمكن للبائعين على الأجهزة وبائعي المحتوى الرقمي وبائعي المحتوى المختلط المشاركة في المزاد على مستوى التطبيق.

مخطّط بياني يصف كيف يمكن لبائعين متعدّدين يستخدمون إعدادات مزاد مختلفة إرسال نتيجة المزاد إلى البائع من المستوى الأعلى

(مخطّط بياني بالحجم الكامل)

في هذا الإعداد، يُجري "SSP-TOP"، وهو البائع من المستوى الأعلى، مزادًا يشارك فيه بائعون متعدّدون، وهم "SSP-OD" و"SSP-BA" و"SSP-MIX":

  • يُجري "SSP-OD" مزادًا لإعلانات مخاطبة الجمهور على الأجهزة فقط، ويرسل إعدادات مزاد المكوّنات على الأجهزة إلى البائع من المستوى الأعلى.
  • تُجري شركة SSP-BA مزادًا للإعلانات المتجاوبة على شبكة البحث، وتُرسِل طلب مزاد موحّدًا إلى"خدمة إعلانات البائع" وتُجري مزاداتها الخاصة بالإعلانات السياقية والإعلانات المتجاوبة على شبكة البحث. يتم إرسال النتائج إلى البائع من المستوى الأعلى.
  • SSP-MIX، الذي يدير مزادًا في الوضع المختلط، ينفِّذ مزاد B&A أولاً على الخادم، ثم يرسل كلّ من نتيجة مزاد B&A وإعدادات المزاد على الجهاز.

يجمع البائع من المستوى الأعلى إعدادات مزادات المكوّنات من كل بائع، وينشئ إعداد مزاد يشبه ما يلي:

await navigator.runAdAuction({
  seller: 'https://ssp-top.example',
  decisionLogicURL: 'https://ssp-top.example/score-ad.js',
  componentAuctions: [
    // SSP-BA's B&A-only auction
    {
      seller: 'https://ssp-ba.example',
      requestId: 'g8312cb2-da2d-4e9b-80e6-e13dec2a581c',
      serverResponse: Uint8Array(560) [193, 120, 4, ] // Encrypted B&A auction result
    },
    // SSP-MIX's B&A auction of mixed-mode
    {
      seller: 'https://ssp-mix.example',
      requestId: 'f5135cb2-da2d-4e9b-80e6-e13dec2a581c',
      serverResponse: Uint8Array(560) [133, 20, 4, ] // Encrypted B&A auction result
    }.
    // SSP-MIX's on-device auction of mixed-mode
    {
      seller: 'https://ssp-mix.example',
      interestGroupBuyers: ['https://dsp-a.example', 'https://dsp-b.example'],
      decisionLogicURL: 'https://ssp-mix.example/score-ad.js',
    }
    // SSP-OD's on-device auction
    {
      seller: 'https://ssp-od.example',
      interestGroupBuyers: ['https://dsp-a.example', 'https://dsp-b.example'],
      decisionLogicURL: 'https://ssp-od.example/score-ad.js',
    }
  ]
})

مزاد متعدد البائعين منظَّم من الخادم

في مزاد متعدد البائعين ينظّمه الخادم، يتم إجراء طلبات الاتصال بخدمات الإعلانات الخاصة ببائع المكوّنات من خدمة الإعلانات الخاصة ببائع المستوى الأعلى. في هذا الإعداد، لا يمكن لبائعي المكوّنات إجراء مزاد على الجهاز أو مزاد في الوضع المختلط، ويجب أن يستخدم جميع البائعين ميزة "الاستهداف والتقييم" ويجب أن يرسل جميع المشترين عروض أسعارهم باستخدام ميزة "الاستهداف والتقييم".

تُرسِل منصّة SSP ذات المستوى الأعلى طلب مزاد موحّدًا إلى "خدمة إعلانات البائع". تستدعي "خدمة الإعلانات للبائعين" "واجهة برمجة التطبيقات لعرض الإعلانات" لتنفيذ عملية GetComponentAuctionCipherTexts. بعد ذلك، يتم إرسال النصوص المشفّرة المعروضة إلى خدمة الإعلانات الخاصة بكل بائع مكوّنات يُجري مزادات B&A الخاصة به.

(مخطّط بياني بالحجم الكامل)

في هذا المخطّط البياني، يُجري SSP-TOP مزادًا لبائعين متعدّدين ينظّمه الخادم ويشارك فيه SSP-BA-X وSSP-BA-Y.

يتم إرسال طلب مزاد موحّد واحد يحتوي على الحمولة لهما من المتصفح إلى خدمة الإعلانات الخاصة بالبائع من المستوى الأعلى. بعد ذلك، يُجري SAS طلبًا GetComponentAuctionCiphertexts إلى SFE مع الحمولة. ستفكّ خدمة SFE تشفير الحمولة وتفصل الحمولات حسب كل بائع مكوّن، وتعيد الحمولات التي تمت إعادة تشفيرها إلى مفتاح التشفير المشترَك (SAS) الخاص بالبائع من المستوى الأعلى.

في ما يلي تعريفات proto لطلب GetComponentAuctionCiphertexts وردّه:

// Request sent from the top-level seller's ad service to SFE
message GetComponentAuctionCiphertextsRequest {
  bytes protected_auction_ciphertext = 1; // Generated in the browser
  repeated string component_sellers = 2; // The list of all component sellers
}

// Response returned from SFE to the top-level seller's ad service
message GetComponentAuctionCiphertextsResponse {
  // A map of component sellers and their re-encrypted payloads
  map<string, bytes> seller_component_ciphertexts = 1;
}

مع حمولة كل بائع مكوّن، تستدعي خدمة SAS الخاصة بالبائع من المستوى الأعلى خدمة SAS الخاصة ببائعي المكوّنات، وتنفيذ كل خدمة SAS للمكوّن لمزاد B&A الخاص بالمكوّن. بعد ذلك، يتم عرض نتائج مزادات المكوّنات في صفحة SFE الخاصة بالبائع من المستوى الأعلى، ويتم احتساب عروض أسعار مزادات المكوّنات من خلال خدمة المزاد الخاصة بالبائع من المستوى الأعلى. يتمّ إرجاع عرض السعر الذي يضمّ أعلى نتيجة مرغوب فيها إلى SFE، ويتمّ إرسال الحمولة المشفّرة إلى SAS لإعادتها إلى العميل. في المتصفّح، يُنهي البائع من المستوى الأعلى المزاد من خلال استدعاء navigator.runAdAuction() وتقديم الحمولة المشفّرة لنتيجة مزاد الخادم.

الخطوات التالية

بعد قراءة هذا الدليل، يمكنك اتّخاذ الخطوات التالية:

مزيد من المعلومات

هل لديك أسئلة؟