Teklifli sistem ve açık artırma hizmetleri entegrasyonu ve optimizasyonu

Android için Teklif Verme ve Açık Artırma Hizmetleri tasarım teklifi, Android'de Güvenilir Teklif ve Açık Artırma sunucusu kullanılarak yapılan açık artırmaların yürütülmesini ve veri akışını ayrıntılı bir şekilde açıklar. Geçiş halindeki verilerin yalnızca gizliliği koruyan API'ler ve güvenilir sunucular tarafından işlendiğinden emin olmak için veriler, iki yönlü Karma Ortak Anahtar Şifreleme kullanılarak istemci ile sunucu arasında şifrelenir.

Korunan kitle akışı görseli. Üç sütun, verilerin cihazlar, güvenilmeyen satıcı hizmetleri ve güvenilir yürütme ortamı arasında nasıl taşındığını gösterir.
Protected Audience açık artırma akışı.

Açık artırmanın daha önce açıklandığı şekilde gerçekleştirilmesi için cihazdaki satıcı reklam teknolojisinin aşağıdaki adımları gerçekleştirmesi gerekir:

  1. Sunucu açık artırması için veri toplayın ve şifreleyin
  2. Güvenilmeyen Satıcı Hizmetine istek gönderme
  3. Güvenilmeyen Satıcı Hizmetinden yanıt alma
  4. Protected Audience açık artırma yanıtının şifresini çözün ve açık artırma sonucunu alın

Protected Audience, sunucu açık artırmaları yayınlamayı desteklemek için iki yeni API'yi kullanıma sunuyor:

  1. getAdSelectionData API, sunucu açık artırması için veri toplar ve açık artırma verilerini içeren şifrelenmiş bir yük oluşturur. Teklif Verme ve Açık Artırma sunucusu; bir açık artırma yürütmek, açık artırma sonucunu oluşturmak ve açık artırma sonucunu döndürmek için bu yükü kullanır.
  2. Cihaz üzerinde reklam teknolojisi istemcileri, sunucu açık artırması tarafından oluşturulan sonucun şifresini çözmek ve kazanan reklam oluşturma URL'sini almak için persistAdSelectionResult API'yi çağırabilir.

Cihazdaki satıcı reklam teknolojisinin, açık artırma yürütmek için aşağıdakileri entegre etmesi ve oluşturması gerekir:

  1. Sunucu açık artırması Satıcısı için verileri toplama ve şifreleme: Reklam teknolojisi, şifrelenmiş yükü almak için getAdSelectionData API'yi çağırmalıdır.
  2. Güvensiz Satıcı Hizmeti Gönderme isteği gönder: getAdSelectionData API tarafından güvenilir olmayan satıcı hizmetine oluşturulan şifrelenmiş yükü ve güvenilmeyen satıcı hizmetinin bağlamsal sonuçlar oluşturmak için ihtiyaç duyduğu verileri içeren HTTP POST veya PUT isteği.
  3. Güvenilmeyen Satıcı Hizmeti'nden yanıt alma: Güvenilmeyen satıcı hizmetinden gelen yanıt, şifrelenmiş korumalı kitle açık artırma sonucunu ve içeriğe dayalı açık artırma sonucunu içerir.
  4. Korunan kitle açık artırma yanıtının şifresini çözün ve açık artırma sonucunu alın: Korunan kitle açık artırma sonucunun şifresini çözmek için satıcı reklam teknolojisinin persistAdSelectionResult API'sini çağırması gerekir. persistAdSelectionResult tarafından oluşturulan sonuç, reklam teknisyenlerinin açık artırmayı içeriğe dayalı reklamın mı yoksa korunan kitle reklamının mı kazanıp kazanmadığını ve geçerliyse kazanan korunan kitle reklamının URI'sını belirlemelerine yardımcı olacaktır.

Sunucu açık artırması için desteklenen özellikler

Cihaz üzerinde açık artırma için şu anda kullanılabilen tüm özellikleri desteklemeyi amaçlıyoruz. Sunucu açık artırmasında bu özelliklerin desteklenmesine ilişkin zaman çizelgesi şöyledir:

Cihaz Üzerinde Açık Artırma

Sunucu Açık Artırması

Geliştirici Önizlemesi

Beta

Geliştirici Önizlemesi

Beta

Etkinlik düzeyinde kazanç raporlaması

2023 1. Çeyrek

2023 3. Çeyrek

Yok

2023 4. Çeyrek

Şelale uyumlulaştırması

2023 1. Çeyrek

2023 4. Çeyrek

Yok

Ç1 24

Sıklık sınırı filtreleme

2023 2. Çeyrek

2023 3. Çeyrek

Yok

2023 4. Çeyrek

Filtreleme için içeriğe dayalı reklamları reklam seçimi iş akışına iletme

2023 2. Çeyrek

2024 1. Çeyrek

Yok

Yok

Etkileşim raporlama

2023 2. Çeyrek

2023 3. Çeyrek

Yok

2023 4. Çeyrek

Özel kitle yetkisine katılma

2023 3. Çeyrek

2023 4. Çeyrek

Yok

2023 4. Çeyrek

BGBM dışı faturalandırma

2023 3. Çeyrek

2023 4. Çeyrek

Hata ayıklama
raporlaması

2023 3. Çeyrek

2023 4. Çeyrek

2023 3. Çeyrek

2023 4. Çeyrek

Open Bidding Uyumlulaştırması

Yok

Yok

Yok

2024 1. Çeyrek

Uygulama yükleme reklamlarını filtreleme

2023 2. Çeyrek

2024 1. Çeyrek

Yok

2024 1. Çeyrek

Para birimi yönetimi

Yok

Yok

Yok

2024 1. Çeyrek

K-anon entegrasyonu

Yok

2024 1. Çeyrek

Yok

2024 1. Çeyrek

Gizli Toplama entegrasyonu

Yok

Yok

Yok

2024 3. Çeyrek

Protected Audience API'leri kullanarak Sunucu Açık Artırmaları yürütme

Geliştirici Önizleme kanalında, AdSelectionManager iki yeni API sunar: getAdSelectionData ve persistAdSelectionResult. Bu API'ler, reklam teknolojisi SDK'larının Teklifli Sistem ve Açık Artırma sunucularıyla entegre edilmesine olanak tanır.

Sunucu açık artırması için veri toplayın ve şifreleyin

getAdSelectionData API, BuyerInput ve ProtectedAudienceInput gibi Teklif Verme ve Açık Artırma bileşenleri için gerekli girişleri oluşturur ve sonucu arayana göstermeden önce verileri şifreler. Uygulamalar arasında veri sızıntısını önlemek için bu veriler cihazda bulunan tüm alıcıların bilgilerini içerir. Gizlilik konusunda dikkat edilmesi gereken noktalar bölümünden bu kararla ilgili daha fazla bilgi edinebilir ve bunu optimize etmek için boyutlarla ilgili dikkat edilmesi gereken noktalar bölümünü inceleyebilirsiniz.

API'ye erişmek için Protected Audience API'ye erişimin etkinleştirilmesi ve ACCESS_ADSERVICES_CUSTOM_AUDIENCE izninin arayanın manifest dosyasında tanımlanması gerekir.

public class AdSelectionManager {
    public void getAdSelectionData(
            GetAdSelectionDataRequest getAdSelectionDataRequest,
            Executor executor,
            OutcomeReceiver<GetAdSelectionDataOutcome, Exception> receiver) {}
}

GetAdSelectionDataRequest

Arayan, isteğe hizmet vermeden önce kayıt kontrolleri yapmak için kullanıldığından istekteki seller alanını ayarlamalıdır.

public class GetAdSelectionDataRequest {
  Public setSeller(AdTechIdentifier seller);
}

İstek doğrulandıktan sonra, cihaz üzerindeki alıcı verileri BuyerInput ve ProtectedAudienceInput dillerinde oluşturulur. Daha sonra son yük nesnesi, iki yönlü Karma Ortak Anahtar Şifreleme kullanılarak şifrelenir.

GetAdSelectionDataOutcome

GetAdSelectionDataOutcome, getAdSelectionData API'sinin sonucu olarak oluşturulur. Şunları içerir:

  1. adSelectionId: getAdSelectionData çağrısını tanımlamak için kullanılan opak tam sayı. Reklam teknolojisi müşterisi, getAdSelectionData çağrısına işaretçi görevi göreceğinden bu adSelectionId değerini sürdürmelidir. Bu tanımlayıcı, persistAdSelectionResult API'sinin Teklifli Sistem ve Açık Artırma sunucusundaki açık artırma sonucunun şifresini çözmek için gerekli olmasının yanı sıra reportImpression ile reportEvent API'leri için de gereklidir.
  2. adSelectionData: Bunlar, teklifli sistem ve açık artırma sunucusunun açık artırmalar yapmak için ihtiyaç duyacağı şifrelenmiş açık artırma verileridir. Bu yöntem şunları içerir:
    1. Özel Kitleler için sıklık sınırı, uygulama yükleme filtreleri ve sunucu açık artırması gereksinimlerine göre filtrelenmiş Özel Kitle verileri.
    2. Gelecekteki bir sürümde uygulama yükleme verileri bulunacaktır.
public class GetAdSelectionDataOutcome {
  Public getAdSelectionId(long adSelectionId);
  public byte[] getAdSelectionData();
}

Hatalar, istisnalar ve hata işleme

Reklam seçimi veri oluşturma işlemi geçersiz bağımsız değişkenler, zaman aşımları veya aşırı kaynak tüketimi gibi nedenlerle başarıyla tamamlanamazsa OutcomeReceiver.onError() geri çağırması aşağıdaki davranışlarla bir AdServicesException sağlar:

  1. getAdSelectionData, geçersiz bağımsız değişkenlerle başlatılırsa AdServicesException" neden olarak bir IllegalArgumentException belirtir.
  2. Diğer tüm hatalar, neden olarak IllegalStateException ile birlikte bir AdServicesException alır.

Güvenilmeyen bir satıcı hizmetine istek gönderme

Cihaz üzerindeki SDK AdSelectionData sayesinde, verileri bir POST veya PUT isteğine dahil ederek satıcının reklam hizmetine istek gönderebilir:

fetch('https://www.example-ssp.com/auction', {
  method: "PUT",
  body: data,
...
})

Bu verilerin kodlanmasından cihaz üzerindeki SDK sorumludur. İsteği satıcının reklam hizmetine çok parçalı/form-data olarak göndermek gibi alanı verimli bir çözüm kullanmanız önerilir.

Güvenilmeyen bir satıcı hizmetinden yanıt alma

Teklifli Sistem ve Açık Artırma Sunucusu açıklayıcıda ayrıntılı olarak açıklandığı gibi, güvenilmeyen satıcı hizmeti isteği aldığında, içeriğe dayalı reklamlar için iş ortağı alıcılara çağrı yapar.

Güvenilmeyen satıcı hizmeti, şifrelenmiş adSelectionData ve AuctionConfig öğelerini bir TEE'de çalışan Teklifli Sistem ve Açık Artırma sunucusunun SellerFrontEnd hizmetine yönlendirir.

Protected Audience açık artırması tamamlandığında SellerFrontEnd hizmeti, açık artırma sonucunu şifreler ve güvenilir olmayan satıcı hizmetine yanıt olarak döndürür.

Güvenilmeyen satıcı hizmeti, içeriğe dayalı reklam ve / veya şifrelenmiş Protected Audience açık artırma sonucu içeren cihaza yanıt gönderir.

Yanıt alındığında, cihazdaki satıcı reklam teknoloji kodu yanıtta yalnızca içeriğe dayalı reklamı kullanmayı seçebilir veya Protected Audience sonucunu almanın artımlı bir değeri olduğunu tespit ederse PersistAdSelectionResult API'yi çağırarak Protected Audience sonucunun şifresini çözmeyi seçebilir.

PersistAdSelectionResult API'sı

Satıcı reklam teknolojisi, Protected Audience sonucunun şifresini çözmek için ikinci Protected Audience API'yi persistAdSelectionResult çağırabilir. API, sonucun şifresini çözer ve bir AdSelectionOutcome döndürür. Bu nesne, bugün cihaz üzerinde bir açık artırmadan döndürülen nesnedir.

Arayanın API'ye erişmek için Protected Audience API'ye erişimi etkinleştirmesi ve manifest dosyasında ACCESS_ADSERVICES_CUSTOM_AUDIENCE iznini tanımlaması gerekir.

    public void persistAdSelectionResult(
            PersistAdSelectionResultRequest persistAdSelectionResultRequest,
            Executor executor,
            OutcomeReceiver<AdSelectionOutcome, Exception> receiver) {}

PersistAdSelectionResultRequest

Arayan, istekte aşağıdakileri ayarlamalıdır:

public final class PersistAdSelectionResultRequest {
  Public setAdSelectionId(long adSelectionId);
  public setSeller(AdTechIdentifier seller);
  public setAdSelectionResult(byte[] adSelectionResult);
}
  1. adSelectionId: getAdSelectionData çağrısı tarafından oluşturulan ve arayanın sonucunun şifresini çözmek istediği opak tanımlayıcı.
  2. seller: İstek yerine sunulmadan önce kayıt kontrolleri yürütmek için istekte satıcı reklam teknolojisi tanımlayıcısının ayarlanması gerekir.
  3. adSelectionResult: Teklifli sistem ve açık artırma sunucusu tarafından oluşturulan, arayanın şifresini çözmek istediği şifrelenmiş açık artırma sonucu.

Reklam Seçimi Sonucu yanıtı

Bir Protected Audience kazananı varsa AdSelectionOutcome kazanan reklam oluşturma URI'sını döndürür.adSelectionResult kodunun şifresi çözüldüğünde raporlama verileri dahili olarak kalıcı olur. OutcomeReceiver.onResult() geri çağırma işlevi şunları içeren bir AdSelectionOutcome döndürür:

  • URI: Kazanan bir Protected Audience reklamı varsa kazanan reklam için bir reklam oluşturma URL'si döndürülür. Protected Audience kazananı yoksa "Uri.EMPTY döndürülür.
  • adSelectionId: Bu sunucu açık artırmasıyla ilişkili adSelectionId.

Hatalar, istisnalar ve hata işleme

Reklam seçimi veri oluşturma işlemi geçersiz bağımsız değişkenler, zaman aşımları veya aşırı kaynak tüketimi gibi nedenlerle başarıyla tamamlanamazsa OutcomeReceiver.onError() geri çağırması aşağıdaki davranışlarla bir AdServicesException sağlar:

  1. getAdSelectionData, geçersiz bağımsız değişkenlerle başlatılırsa AdServicesException, neden olarak bir IllegalArgumentException belirtir.
  2. Diğer tüm hatalar, neden olarak IllegalStateException ile birlikte bir AdServicesException alır.

Gizlilikle İlgili Dikkat Edilmesi Gereken Noktalar

adSelectionData, geçiş halindeki verilere yalnızca PPAPI ve güvenilir sunucular tarafından erişilebilmesini sağlamak için şifrelenir.

Şifrelemeye rağmen, adSelectionData boyutu nedeniyle veri sızıntısı meydana gelebilir. adSelectionData boyutu şu nedenlerle değişiklik gösterebilir:

  1. Cihazda CustomAudience verilerindeki değişiklikler mevcut.
  2. CustomAudience filtreleme mantığında değişiklikler yapıldı.
  3. getAdSelectionData çağrısının girişinde değişiklik yapıldı.

adSelectionData boyutundaki değişiklik, 1 bit sızıntısı tartışmasında belirtildiği gibi uygulamalar arası bir tanımlayıcı oluşturmak için kullanılabilir. 1 bit sızıntısı için geçerli olan birçok çözüm burada da geçerlidir.

Bu sızıntıları yönetmek amacıyla getAdSelectionData API'ye yapılan tüm çağrılar için aynı adSelectionData değerini oluşturmayı planlıyoruz. İlk sürümlerde, adSelectionData oluşturmak için cihazdaki tüm CustomAudiences kullanılır ve şifrelenmiş yük, boyut varyasyonlarını maskelemek için doldurulur. Ayrıca GetAdSelectionData giriş parametrelerinin, oluşturulan adSelectionData üzerindeki etkisini de kısıtlayacağız.

Ancak tüm cihaz üzerinde açık artırma verilerini kullanarak tüm reklam teknolojileri için aynı adSelectionData değerinin oluşturulması, artık reklam teknolojisi sunucusuna yapılan her çağrıda aktarılması gereken büyük bir yük oluşturur. Açık artırma yükü oluşturmak için cihaz üzerinde özel kitlelerin tamamını kullanmak, ekosistemin kötü amaçlı varlıkların kötüye kullanımına açık olmasını da sağlar. Bu endişeleri aşağıdaki Boyut optimizasyonları ve Kötüye kullanım önlemleri bölümlerinde ele aldık.

Boyut optimizasyonları

Reklam teknolojisi istemcisi SDK'sının, adSelectionData içeriğinin şifrelenmiş baytlarını reklam teknolojisi sunucusuna yapılan HTTP PUT/POST içeriğe dayalı çağrıya paketlemesi beklenir. Daha düşük geri dönüş süresi gecikmesi ve maliyet için yardımcı programı etkilemeden adSelectionData boyutunu mümkün olduğunca küçültmek gerekir.

adSelectionData boyutunu küçültmek için gelecekteki sürümlerde aşağıdaki optimizasyonları keşfetmeyi ve kullanıma sunmayı planlıyoruz:

  1. Dolgu ile sabit bir paket boyutu grubunda oluşturulan yük: Boyut değişimlerinden sızıntıyı en aza indirirken düşük yüke izin vermek amacıyla oluşturulan yük için sabit boyutlu paketleme kullanmanızı öneririz. Örneğin, paket sayısının küçük olması, getAdSelectionData çağrısı başına 3 bitten daha az entropi sızıntısına neden olur.

    Cihaz üzerindeki veriler maksimum paket boyutunu aşarsa hangi verilerin çıkarılacağına karar vermek için aşağıda belirtilen öncelik değerleri gibi stratejiler kullanılır.

  2. Alıcı Yapılandırması: Alıcıların alıcı başına yük yapılandırması oluşturmasına izin vermenin uygunluğunu değerlendiriyoruz. Bu yapılandırma, bir alıcının katılmak isteyeceği açık artırmaları belirlemek için faydalıdır. Uygunsa kayıt sırasında alıcı reklam teknolojisi, Protected Audience'ın yük yapılandırmasını günlük bir düzenli aralıklarla getireceği bir uç nokta kaydedebilir. Alternatif olarak, gizliliği korumaya yönelik API'ler alıcı reklam teknisyenlerinin bu uç noktayı kaydetmesine izin vermek için bir API ortaya çıkarır.

    Daha sonra bu yapılandırma, her getAdSelectionData isteği için alıcının oluşturulan adSelectionData öğesine katkısını değerlendirmek amacıyla kullanılır.

    Alıcı yük yapılandırması, alıcıların aşağıdakileri belirtmesine olanak tanır:

    1. İzin verilen satıcılar listesi: Alıcı Özel Kitleleri yüke yalnızca getAdSelectionData çağrısı izin verilenler listesindeki bir satıcı tarafından başlatılırsa eklenir. İzin verilenler listesini güncel tutmak için yük yapılandırmasını günlük aralıklarla getiririz.
    2. Satıcı başına boyut sınırı: Alıcı, belirli bir satıcı tarafından açık artırma başlatıldığında yüke gönderilecek veri boyutunu belirlemek için satıcı başına boyut sınırı belirtebilir. Bu, alıcı belirli satıcılara ait açık artırma verilerini işlemeye daha fazla kaynak ayırmak istiyorsa yararlı olur. SellerFrontendService, her bir BuyerFrontendService'e yalnızca alıcıya özel verileri yönlendirir. Dolayısıyla alıcı, satıcı başına boyut sınırı tanımlayarak, satıcının gerçekleştirdiği açık artırmalar için Teklifli Sistem ve Açık Artırma sunucusunun BuyerFrontendService tarafından kullanılan ve işlenen veri miktarını açıkça kontrol edebilir.
  3. Satıcı Yapılandırması: Satıcıların, yük boyutunu ve açık artırma katılımcılarını kontrol etmek için açık artırma parametreleri tanımlamasına olanak tanıyacak, satıcı başına açık artırma yapılandırmasının uygulanabilirliğini değerlendiriyoruz. Uygunsa satıcı reklam teknolojisi, kayıt sırasında Protected Audience'ın satıcı başına açık artırma yapılandırmasını düzenli aralıklarla getirebileceği uç noktayı belirtebilir. Daha sonra bu yapılandırma, her bir getAdSelectionData isteği için oluşturulan adSelectionData öğesinin bileşimini ve sınırlarını belirlemek amacıyla kullanılır.

    Alıcı yapılandırmasına benzer şekilde, satıcı başına yapılandırma da satıcıların bir açık artırmada hangi alıcı grubunu görmek istediklerini belirtmelerine ve yük boyutuna alıcı başına katkısı için sınırlar belirlemelerine olanak tanır.

    Satıcı açık artırma yapılandırması, satıcıların şunları belirtmesine olanak tanır:

    1. İzin verilen alıcı listesi: Belirli bir satıcı tarafından başlatılan açık artırmalarda, yalnızca izin verilenler listesindeki alıcılar açık artırmaya yönelik Özel Kitleler'e katkıda bulunabilir. İzin verilenler listesinin sunucu tarafı alıcı izin verilenler listesine göre güncel kalması için açık artırma yapılandırmasının günlük olarak güncellenmesi gerekir.
    2. Alıcı başına boyut sınırı: Satıcılar, her alıcı tarafından yüklenen veri boyutunu SellerFrontendService'e gönderilen yükte düzenlemek için alıcı başına sınır belirtebilir. Alıcı, alıcı başına boyut sınırını aşarsa beklenen sınırlar dahilinde verileri almak için alıcı yük yapılandırmasında belirlenen CustomAudience önceliği kullanılır.
    3. Alıcıya özel öncelik: Satıcıların alıcı başına önceliği belirlemesine izin verin. Yük boyutu yük boyutu sınırını aşarsa hangi alıcı verilerinin yükte tutulması gerektiğini tanımlamak için alıcı önceliği kullanılır.
    4. Yük için maksimum boyut sınırı: Farklı satıcılar, farklı kaynak tahsisine sahip olabilir ve istek başına açık artırma yükü için maksimum boyut sınırı belirlemek isteyebilir. Maksimum boyut sınırı, Protected Audience API tarafından ayarlanan sabit boyutlu paketlere uyar.
  4. Özel kitle değişiklikleri

    1. Özel Kitle önceliğini Belirt: Alıcıların Özel Kitlede öncelik değeri belirtmesine izin verin. Alıcı özel kitle grubunun satıcı başına veya alıcı başına boyut sınırlarını aşması durumunda açık artırmaya dahil edilmesi gereken özel kitleleri tanımlamak için priority alanı kullanılır. Özel Kitlede belirtilmemiş bir öncelik değeri varsayılan olarak 0.0 olur.
  5. Yük Verilerindeki Değişiklikler

    1. Yükte gönderilen verileri azaltın: Teklifli sistem ve açık artırma hizmetleri yükü optimizasyonu bölümünde ayrıntılı olarak açıklandığı gibi, daha yüksek yük; özel kitle ads verileri, kullanıcı teklif sinyalleri ve Android sinyalleri tarafından desteklenir. Daha yüksek yük aşağıdaki kriterlere göre azaltılabilir:
      1. İstemcinin, yükte reklam oluşturma kimlikleri (reklam nesneleri yerine) göndermesini sağlama.
      2. İstemcinin yükte hiç reklam verisi göndermemesini sağlamak.
      3. İstemci yükünde kullanıcı teklif sinyalleri gönderilmiyor.

Yukarıda bahsedilen stratejiler reklam teknisyenlerinin adSelectionData yük bileşimini ve sınırlarını yönetmek için yapılandırmalar tanımlamasına olanak tanır. Bununla birlikte, yapılandırma parametrelerini değiştirerek adSelectionData boyutunun değiştirilmesini sağlayan bir faktör de olabilirler. Bunu önlemek için yapılandırma, yapılandırılan uç noktadan Protected Audience tarafından günlük olarak getirilir.

Gecikme optimizasyonu

Sunucu açık artırmalarının istenen fayda düzeyini sağlaması için getAdSelectionData API ve persistAdSelectionResult API'nin çağrı başına düşük gecikme süresine sahip olması gerekir. 2023'te API'ler için özellik desteği sunmayı hedeflesek de bir sonraki sürümümüzde gecikme karşılaştırmalarına ve API'ler için optimizasyonlara odaklanacağız.

Gecikmeyi kabul edilebilir sınırlar dahilinde tutmak için aşağıdaki stratejileri araştırıyoruz:

  1. Satıcı başına Korunan Kitle verilerinin önceden oluşturulması: Satıcı açık artırma yapılandırması ve alıcı yük yapılandırması önemli bir süre boyunca (günlük) sabit olacağından platform, uygun Protected Audience verilerini önceden hesaplayabilir ve depolayabilir.

    Bu, platformun özel kitle güncellemelerini izleyecek bir mekanizma oluşturmasını ve güncellemelere dayalı olarak önceden oluşturulmuş Protected Audience verilerini değiştirmesini gerektirir. Ayrıca platformun, özel kitle güncellemeleri ile sunucu açık artırması için oluşturulan adSelectionData içindeki değişikliği görme arasındaki gecikmeli reklam teknolojisinde SLO'ları beyan etmesi gerekir.

    Bir cihaz, değişen süreç önceliklerine sahip sınırlı bir kaynak hesaplama modeli sağladığından, bu önceden oluşturma olanağını sağlamanın yüksek güvenilirlik ve SLO garantilerini beraberinde getirmenin gerektiğini biliyoruz.

    Bu durumda, Korunan Kitle verilerinin önceden oluşturulması temel alınır

    1. Satıcı, Protected Audience verilerini önceden oluşturma seçeneğini etkinleştirebilir.
    2. Belirli bir satıcının başlattığı açık artırmaya katılmaya uygun alıcılar.
    3. Yükün bir parçası olabilecek alıcı başına özel kitleleri aşağıdaki bilgilere göre tanımlama:
      1. Alıcı başına boyut sınırları, satıcı yapılandırmasında tanımlanan alıcı başına öncelik ve maksimum boyut sınırları.
      2. Satıcı başına boyut sınırı, alıcı yapılandırmasında tanımlanan özel kitle önceliği.
  2. Negatif filtrelemenin istekli uygulaması: Satıcı tarafından tercih edilirse platform, Korunan Kitle verilerini önceden oluşturarak ve kritik getAdSelectionData çağrısına negatif filtre uygulayarak adSelectionData değerini önceden hesaplayabilir. Bu, satıcıların negatif filtrelemede eskiliği kabul ederken gecikmeyi azaltmayı dengelemesine olanak tanır.

    Platform, gerekirse en güncel hesaplamaya olanak tanımak için Satıcı yapılandırmasında eskilik sınırıyla varsayılan bir seçenek ve getAdSelectionData içinde bir geçersiz kılma seçeneği sağlayarak bu desteği sağlayabilir. Alternatif olarak platform, açık artırmayı hazırlamak için getAdSelectionData tarihinden önce çağrılacak ek bir başlatma API'si sağlayabilir.

  3. Birden fazla açık artırma için yük hesaplaması: Bazı durumlarda, artan veri eskiliğine pahasına gecikmeye yüksek performans gösteren bir API'ye sahip olmak tercih edilebilir. Platform bunu sağlamak için tüm yükü hesaplamak amacıyla bir başlatma API'si sunabilir ve arayana hesaplanan yük için bir referans sağlayabilir.

    Sonraki getAdSelectionData çağrılarında arayan, adSelectionData nesli için kullanılacak önceden hesaplanmış yüke referans sağlayabilir.

Yukarıda bahsedilen üç stratejinin tümü ilk keşif aşamasındadır ve platformun gecikme için optimize etmek için ilerleyebileceği yönü tanımlamayı amaçlamaktadır. API'nin gecikme profillerini ve reklam teknolojisi gereksinimlerini daha ayrıntılı bir şekilde keşfettikçe ek stratejiler önermeye devam edeceğiz.

Kötüye kullanım azaltma ve tanımlama

Gizlilikle ilgili hususlarda belirtildiği gibi adSelectionData, cihazdaki tüm alıcı verileri kullanılarak oluşturulur.

Ancak adSelectionData çıktısını oluşturmak için cihazdaki tüm alıcı verileri kullanılırsa kötü amaçlı bir varlık alıcı gibi davranarak Android performansını düşürmek için sahte alıcı verileri oluşturabilir, reklam teknolojisinin açık artırmalar veya teklif verme maliyetlerini artırmak için yükü şişirebilir ve daha pek çok şey yapabilir.

Çözüm

Boyut konusunda dikkat edilmesi gereken noktalar bölümünde belirtilen bazı önlemler (ör. izin verilenler listesindeki satıcıları içeren alıcı yükü yapılandırması ve izin verilenler listesine eklenmiş alıcıları içeren satıcı açık artırma yapılandırması), yükteki beklenmedik verilerin hariç tutulmasına yardımcı olabilir.

STP'lerin alıcı önceliğini belirlemesini sağlamak, oluşturulan yüke alıcı başına kota yerleştirmek ve açık artırma yükü başına maksimum bir boyut belirlemek gibi boyut açısından üzerinde düşünülmesi gereken diğer önlemler de kötü amaçlı yük şişirmenin etkisini azaltmaya yardımcı olabilir. Bu önlemlerin amacı, reklam teknisyenlerinin birlikte çalışacakları reklam teknolojisini tanımlamalarına ve işlemeleri gereken yük için kabul edilebilir sınırlar belirlemelerine olanak tanır.

Daha önce de belirtildiği gibi, kötüye kullanım karşıtı ve boyut kısıtlamalarıyla ilgili olarak sunulan tüm çözümler, gizlilikle ilgili hususlara uygun olmalıdır.

Kötü amaçlı varlıkların tespiti

Yukarıda bahsedilen hafifletmeler, sunucu açık artırmaları için adSelectionData neslini korurken, kötü amaçlı varlıkların tanımlanmasına veya platformu kötüye kullanımlardan (ör. bir alıcıdan benzeri görülmemiş sayıda özel kitle oluşturulması) korumaya yardımcı olmaz.

Platform istikrarını ve sağlığını korumak için kötü amaçlı varlıkları tanımlayacak, kötüye kullanım vektörlerini tanımlayacak ve belirli saldırıların nedenini belirleyecek bir mekanizma bulmamız gerekiyor. Sonraki sürümlerde, olası kötüye kullanım vektörlerini ve bunlara karşı uygulanmakta olan koruma yöntemlerini ayrıntılı olarak açıklayacağız.