Mimari

Teklif ve Açık Artırma Hizmetleri'nin açık artırma mimarisi hakkında bilgi edinin.

Genel Bakış

Teklifli sistem ve açık artırma (B&A) hizmetleri, Protected Audience (PA) açık artırmasını kolaylaştırmak için güvenilir yürütme ortamında (TEE) çalışan, reklam alıcıları ve satıcıları için bir dizi hizmet sunar. Bu sayfada, B&A'nın bir PA açık artırmasında kullanılabileceği çeşitli açık artırma yapılandırmaları açıklanmaktadır.

Tanımlar

Terim Açıklama
Protected Audience açık artırması Siteler arası verilerin kullanıldığı bir reklam açık artırması
İçeriğe dayalı açık artırma Siteler arası verilerin kullanılmadığı bir reklam açık artırması. Bu açık artırma, mevcut Gerçek Zamanlı Teklif Verme (GZT) açık artırma yolunu izler.
Birleştirilmiş açık artırma isteği Satıcının JavaScript kodu tarafından tarayıcıdan gönderilen ve hem Protected Audience açık artırması hem de bağlamsal açık artırma için yükü içeren bir istek.
Satıcı Reklam Hizmeti (SAS) Tarayıcıdan gelen birleştirilmiş açık artırma isteğini işlemekten sorumlu hizmet. Bu, satıcının mevcut RTB reklam sunucusu olabilir. SAS, hem bağlamsal hem de Protected Audience açık artırmalarını düzenlemekten sorumludur.
Alıcı Reklam Hizmeti Bağlamsal açık artırma teklifi göndermekten sorumlu hizmet. Bu, alıcının mevcut ORTB reklam sunucusu olabilir.

Alıcılar ve satıcılar için hizmetler

B&A Services, alıcılar ve satıcılar için dört hizmetten oluşur:

  • Alıcılar, Bidding Service (Teklif Verme Hizmeti) ve Buyer Front-End (BFE) Service (Alıcı Ön Uç Hizmeti) hizmetlerinden yararlanabilir.
  • Satıcılar, Açık Artırma Hizmeti ve Satıcı Tarafı Ön Uç (SFE) Hizmeti'ni kullanabilir.
Katılımcı Hizmet Açıklama
Alım sorumlusu Alıcı Tarafı Ön Uç (BFE) Hizmeti Hizmet, satıcının SFE'sinden gelen GetBids isteğini işler. Yükün şifresini çözmekten, K/V sinyallerini getirmekten ve Bidding Service'in GenerateBids işlevini çağırmaktan sorumludur.
Bidding Hizmeti Hizmet, BFE'den gelen GenerateBids isteğini işler. Alıcının teklif verme mantığını çalıştırmak ve teklif oluşturmakla sorumludur.
Satıcı Satıcı Ön Uç (SFE) Hizmeti Hizmet, Satıcı Reklam Hizmeti'nden gelen SelectAd isteğini işler. Yükün şifresini çözmek, BFE'nin GetBids işlemini çağırmak, K/V sinyallerini getirmek, Auction Service'in ScoreAd işlemini çağırmak ve ardından şifrelenmiş B&A açık artırma sonucunu SAS'a döndürmekle sorumludur.

Hizmet, sunucu tarafından düzenlenen çok satıcılı bir açık artırmada üst düzey satıcının yığınının bir parçası olduğunda SAS'tan gelen GetComponentAuctionCiphertexts isteğini de işler.

Auction Hizmeti Hizmet, SFE'den gelen ScoreAd isteğini işler. Satıcının puanlama mantığını çalıştırmaktan ve bir teklifin istenirlik puanını sağlamaktan sorumludur.

Web için PA B&A müzayedesinin mimarisi

Aşağıdaki şemada, tek satıcı ve tek alıcı ile B&A Hizmetleri'nin kullanıldığı temel Protected Audience açık artırması açıklanmaktadır. Kalın kırmızı çizgili kutular, TEE'de çalışan hizmetleri temsil eder:

İstemci tarafı JavaScript kodu, birleştirilmiş açık artırma isteğini SSP'ye gönderir. SAS, SFE'ye istek gönderir ve SFE, teklif için BFE'ye istek gönderir.
(Tam boyutlu şema)
  1. Yayıncı sayfasındaki SSP'nin JavaScript kodu, navigator.getInterestGroupAdAuctionData() çağrısı yaparak şifrelenmiş B&A reklam açık artırması verilerini oluşturur.
    • Bu şifrelenmiş yük, alıcının verilerini içerir ve yalnızca bir TEE'deki SFE içinde şifresi çözülebilir.
  2. SSP JavaScript kodu, satıcı reklam hizmetine birleştirilmiş açık artırma isteği gönderir.
    • Birleştirilmiş açık artırma isteği hem düz metin ORTB bağlamsal açık artırma yükünü hem de şifrelenmiş B&A açık artırma yükünü içerir.
    • Satıcı reklam hizmeti, mevcut reklam sunucunuzdur ve TEE'de çalışmaz.
  3. Satıcı Reklam Hizmeti, içerik odaklı açık artırma teklifini ve sonraki PA açık artırmasına iletilecek tüm alıcı sinyallerini istemek için TTP'nin GZT hizmetini çağırır.
    • Bu, alıcının ÖA açık artırmasına katılma niyetini bildirdiği bir adım olabilir.
  4. Bağlamsal açık artırma tamamlandıktan sonra SAS, SelectAd isteğini SFE hizmetine gönderir.
    • İçeriğe dayalı açık artırma kazanan teklifi ve alıcı sinyalleri, SelectAd isteği yüküne eklenir.
  5. SSP'nin SFE hizmeti, GetBids isteğiyle DSP'nin BFE hizmetini çağırır.
  6. DSP'nin BFE'si, GenerateBids isteğiyle teklif verme hizmetini çağırır.
  7. Teklif SFE tarafından alındıktan sonra, Müzayede Hizmeti'ne ScoreAd çağrısı yapılır.
    • En yüksek uygunluk puanına sahip teklif, SAS'a döndürülür ve ardından sayfadaki JavaScript koduna iletilir.
  8. Şifrelenmiş B&A açık artırma sonucu navigator.runAdAuction() çağrısına iletilerek açık artırma tarayıcıda tamamlanır.

Açık artırma yapılandırmaları

B&A Hizmetleri ile Protected Audience açık artırması aşağıdaki şekillerde yapılandırılabilir:

  • B&A alıcılarının katıldığı tek satıcılı açık artırma
  • Cihaz üzerinde alıcılar ve B&A alıcılarının yer aldığı karma mod açık artırma
  • Cihaz veya sunucu tarafından düzenlenebilen çok satıcılı açık artırma

Katılımcı sayısı

Her bir açık artırma yapılandırmasını açıklamak için bu kılavuzda aşağıdaki katılımcılar kullanılır:

Katılımcı Açıklama
DSP-A Cihaz üzerinde satın alan kullanıcı
DSP-B Cihaz üzerinde satın alan kullanıcı
DSP-X B&A alıcısı
DSP-Y B&A alıcısı
SSP-TOP Üst düzey satıcı
SSP-OD Yalnızca cihaz üzerinde satıcı
SSP-BA Yalnızca marka ve reklam satıcısı
SSP-MIX Karma mod satıcı

Dört TTP vardır:

  • DSP-A ve DSP-B yalnızca cihaz üzerinde açık artırmalara katılır.
  • DSP-X ve DSP-Y hem cihaz üzerinde açık artırmalara hem de B&A açık artırmalarına katılır.

Dört SSP vardır ve her satıcı farklı bir açık artırma yapılandırması yürütür:

  • SSP-OD yalnızca cihaz üzerinde bir açık artırma düzenler.
  • SSP-BA, yalnızca marka ve reklamveren açık artırması düzenliyor
  • SSP-MIX karma modda bir açık artırma düzenliyor
  • SSP-TOP çok satıcılı bir açık artırma düzenliyor:
    • SSP-OD/BA/MIX, SSP-TOP'nın çok satıcılı açık artırmasına bileşen satıcı olarak katılabilir.

Tek satıcılı B&A açık artırması

Tek satıcılı kurulumda, bir satıcı birden fazla alıcının katıldığı bir açık artırma düzenler. Satıcı bir B&A açık artırması yayınlıyorsa alıcıların açık artırmaya teklif göndermek için B&A Hizmetleri alıcı yığınını çalıştırması gerekir. Alıcıların ve satıcıların aynı bulut sağlayıcıyı kullanması gerekmez.

Tek satıcılı bir mimaride, bir SFE teklif almak için birden fazla BFE ile iletişim kurar.
(Tam boyutlu şema)

Önceki kurulumda SSP-BA, DSP-X ve DSP-Y'nin B&A Hizmetleri'nin alıcı yığınını kullanarak katıldığı bir B&A açık artırması yürütür. Satıcının reklam hizmeti, önce DSP-X ve DSP-Y için içerik odaklı bir açık artırma gerçekleştirir, ardından SelectAd isteğini satıcının SFE hizmetine göndererek bir Protected Audience açık artırması gerçekleştirir. İçeriğe dayalı açık artırmada kazanan teklif ve her alıcıya ait sinyaller SelectAd çağrısına iletilir. Ardından SFE hizmeti, GetBids isteklerini DSP-X ve DSP-Y'nin BFE'sine gönderir. Bu BFE, teklif oluşturmak için teklif hizmetini çağırır.

Şifrelenmiş B&A açık artırma sonucu istemciye döndürülür ve runAdAuction() çağrısına iletilir. Tek satıcılı bir açık artırma yapılandırması aşağıdaki gibi görünür:

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 değeri, istemcideki getInterestGroupAdAuctionData() çağrısından, serverResponse verileri ise sunucu tarafındaki B&A açık artırmasından gelir.

Karma mod açık artırması

Karma mod yapılandırmasında, satın alma uzmanları satıcının açık artırmasına cihaz üzerinde veya B&A'dan katılabilir. Mavi oklar cihaz üzerinde açık artırma yolunu, kırmızı oklar ise B&A açık artırma yolunu gösterir:

Alıcıların tekliflerini cihaz üzerinden veya B&A'dan gönderebildiği karma modlu bir satıcı mimarisi.
(Tam boyutlu şema)

Bu kurulumda DSP-A ve DSP-B, tekliflerini cihaz üzerinde gönderen alıcılar, DSP-X ve DSP-Y ise tekliflerini B&A kullanarak gönderen alıcılardır. Cihaz üzerindeki alıcılar, tarayıcıda cihaz üzerinde PA açık artırmasına katılır. B&A alıcıları ise Tek satıcılı açık artırma bölümünde açıklanan B&A açık artırma kurulumuna katılır.

Bağlamsal açık artırma, bağlamsal açık artırmayı kazanan teklifi ve alıcı sinyallerini toplamak için önce tüm alıcılar için yürütülür. Ardından, B&A açık artırması çalışır ve bağlamsal açık artırmadaki alıcı sinyalleri, SFE'ye gönderilen SelectAd isteğine iletilir. SFE'den döndürülen şifrelenmiş B&A açık artırma sonucu tarayıcıya iletilir. B&A açık artırmasından sonra sonuç, cihaz üzerinde alıcıların katıldığı cihaz üzerinde açık artırmaya aktarılır.

Açık artırmanın cihaz üzerinde bölümü için karma modlu tek satıcılı açık artırma yapılandırması aşağıdaki gibi görünür:

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',
    }
  ]
})

Cihaz üzerinde ve B&A açık artırmalarının paralelleştirilmesi

Paralelleştirme olmadan açık artırmalar sırayla yürütülür. Önce içerik açık artırması, ardından B&A açık artırması ve son olarak cihaz üzerinde açık artırma çalıştırılır. Paralelleştirme uygulandığında, içerik açık artırması tekrar önce çalışır ancak sonuç ve sinyalleri, B&A açık artırması bitmeden cihaz üzerinde açık artırmayı paralel olarak başlatmak için istemciye geri aktarılır.

Bağlamsal açık artırma teklifinin, sinyallerin ve SelectAd sonucunun tarayıcı JavaScript koduna nasıl geri aktarıldığını açıklayan bir şema
(Tam boyutlu şema)

İstemcideki JavaScript kodu, birleştirilmiş açık artırma isteğini SAS'ye gönderir. SAS, bağlamsal açık artırmayı ve PA B&A açık artırmasını başlatır. SAS, alıcının RTB sunucusundan bir yanıt aldığında, tüm teklifler alındıktan sonra bağlamsal açık artırma kazananıyla birlikte cihaz üzerinde açık artırma için alıcı sinyalleri tarayıcıya geri aktarılabilir. Yayınlanan alıcı sinyalleri, cihaz üzerinde bir teklif oluşturmak için kullanılır. Tekliflere puan verilirken bağlamsal açık artırma kazananı, teklif tabanı olarak kullanılır.

SAS'ta satıcı, bağlamsal açık artırma verileri tarayıcıya aktarılırken Ad-Auction-Result-Nonce yanıt başlığında ayarlanan bir UUID nonce oluşturur. Aynı nonce, B&A açık artırması için SFE'ye yapılan SelectAd çağrısında kullanılır ve bu nonce, SFE'den döndürülen SelectAd yanıtına dahil edilir. İstemci tarafı açık artırma aşamasında tarayıcı, Ad-Auction-Result-Nonce yanıt üstbilgisindeki nonce'ın şifrelenmiş açık artırma sonucu yükündeki nonce ile eşleştiğini doğrular.

Karma modda paralelleştirme hakkında daha fazla bilgi edinmek için açıklayıcı metne bakın.

Çok satıcılı açık artırma

B&A ile PA çok satıcılı açık artırması çalıştırmanın iki yolu vardır:

  1. Her bileşen satıcısının reklam hizmetine yapılan çağrının tarayıcıdan kaynaklandığı, cihaz tarafından düzenlenen açık artırma
  2. Her bileşen satıcısının reklam hizmetine yapılan çağrının en üst düzeydeki satıcının reklam hizmetinden kaynaklandığı, sunucu tarafından düzenlenen açık artırma

Cihaz tarafından düzenlenen çok satıcılı açık artırma

Cihaz tarafından düzenlenen çok satıcılı açık artırmada, her bileşen satıcı açık artırmasını istediği yapılandırmada çalıştırmakta serbesttir. Cihaz üzerinde satış yapanlar, B&A satıcıları ve karma modda satış yapanlar üst düzey açık artırmaya katılabilir.

Farklı açık artırma yapılandırmaları çalıştıran birden fazla satıcının açık artırma sonuçlarını üst düzey satıcıya nasıl gönderebileceğini açıklayan bir şema.
(Tam boyutlu şema)
Bu kurulumda, üst düzey satıcı olan "SSP-TOP", "SSP-OD", "SSP-BA" ve "SSP-MIX"in katıldığı çok satıcılı bir açık artırma yürütür: * Yalnızca cihaz üzerinde çalışan bir PA açık artırması yürüten "SSP-OD", cihaz üzerinde bileşen açık artırması yapılandırmasını üst düzey satıcıya gönderir. * Bir B&A açık artırması yürüten "SSP-BA", satıcı reklam hizmetine birleştirilmiş açık artırma isteği gönderir ve kendi içeriğe dayalı ve B&A açık artırmalarını yürütür. Sonuçlar, üst düzey satıcıya gönderilir. * Karma mod açık artırması yürüten `SSP-MIX`, sunucuda önce B&A açık artırmasını yürütür, ardından hem B&A açık artırma sonucunu hem de cihaz üzerinde açık artırma yapılandırmasını gönderir. Üst düzey satıcı, her satıcıdan bileşen açık artırması yapılandırmalarını toplar ve aşağıdakine benzer bir açık artırma yapılandırması oluşturur: ```js await navigator.runAdAuction({ seller: 'https://ssp-top.example', decisionLogicURL: 'https://ssp-top.example/score-ad.js', componentAuctions: [ // SSP-BA'nın yalnızca B&A açık artırması { seller: 'https://ssp-ba.example', requestId: 'g8312cb2-da2d-4e9b-80e6-e13dec2a581c', serverResponse: Uint8Array(560) [193, 120, 4, …] // Şifrelenmiş B&A açık artırma sonucu }, // SSP-MIX'in karma modlu B&A açık artırması { seller: 'https://ssp-mix.example', requestId: 'f5135cb2-da2d-4e9b-80e6-e13dec2a581c', serverResponse: Uint8Array(560) [133, 20, 4, …] // Şifrelenmiş B&A açık artırma sonucu }. // SSP-MIX'in karma modlu cihaz üzerinde açık artırması { seller: 'https://ssp-mix.example', interestGroupBuyers: ['https://dsp-a.example', 'https://dsp-b.example'], decisionLogicURL: 'https://ssp-mix.example/score-ad.js', } // SSP-OD'nin cihaz üzerinde açık artırması { seller: 'https://ssp-od.example', interestGroupBuyers: ['https://dsp-a.example', 'https://dsp-b.example'], decisionLogicURL: 'https://ssp-od.example/score-ad.js', } ] }) ``` ### Sunucu tarafından düzenlenen çok satıcılı açık artırma Sunucu tarafından düzenlenen çok satıcılı açık artırmada, bileşen satıcının reklam hizmetlerine yapılan çağrılar üst düzey satıcının reklam hizmetinden yapılır. Bu kurulumda, bileşen satıcıları cihaz üzerinde veya karma modda açık artırma yürütemez. Tüm satıcılar B&A'yı kullanmalı ve tüm alıcılar tekliflerini B&A'yı kullanarak göndermelidir.
Üst düzey STP, satıcı reklam hizmetine birleştirilmiş açık artırma isteği gönderir. Satıcı reklam hizmeti, GetComponentAuctionCipherTexts işlemini çalıştırmak için SFE'yi çağırır. Döndürülen şifreli metinler daha sonra kendi B&A açık artırmalarını yürüten her bileşen satıcısının reklam hizmetine gönderilir.
(Tam boyutlu şema)

Bu şemada, SSP-TOP, SSP-BA-X ve SSP-BA-Y'nin katıldığı, sunucu tarafından düzenlenen çok satıcılı bir açık artırma yürütmektedir.

Tüm katılımcılar için içerik bağlamına dayalı ve PA açık artırmalarının yükünü içeren tek bir birleştirilmiş açık artırma isteği, tarayıcıdan üst düzey satıcının reklam hizmetine gönderilir. Ardından SAS, yüklemi kullanarak SFE'ye GetComponentAuctionCiphertexts çağrısı yapar. SFE, yükün şifresini çözer, yükleri her bileşen satıcısına göre ayırır ve yeniden şifrelenmiş yükleri üst düzey satıcının SAS'ına döndürür.

GetComponentAuctionCiphertexts istek ve yanıtı için proto tanımları şunlardır:

// 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;
}

Her bileşen satıcının yüküyle birlikte, üst düzey satıcının SAS'ı bileşen satıcıların SAS'ını çağırır ve her bileşen SAS, kendi bileşen B&A açık artırmasını yürütür. Ardından, bileşen açık artırmalarının sonuçları üst düzey satıcının SFE'sine döndürülür ve bileşen açık artırması teklifleri üst düzey satıcının açık artırma hizmeti tarafından puanlanır. En yüksek istenirlik puanına sahip teklif SFE'ye döndürülür ve bu şifrelenmiş yük, istemciye döndürülmek üzere SAS'a gönderilir. Tarayıcıda, üst düzey satıcı navigator.runAdAuction() işlevini çağırarak ve şifrelenmiş sunucu açık artırma sonucu yükünü sağlayarak açık artırmayı tamamlar.

Sonraki adımlar

Bu kılavuzu okuduktan sonra aşağıdaki adımları uygulayabilirsiniz:

Daha fazla bilgi

Sorularınız mı var?