İçeriğe geçin
buybitcoinsmart

Sözlük / Düğümler ve yazılım

Standart blok aktarımı

Standart blok aktarımı nedir?
Standart blok aktarımı, yeni bir bloğun düğümler arasında ilerlemesinin özgün yoludur: hash'i duyurulur, eşin istemesi beklenir, ardından bloğun tamamı ağ üzerinden gönderilir.

Her sıçramada, alıcının çoğunlukla zaten sahip olduğu veri için iki gidiş dönüş ve bir megabayt ya da daha fazlası. 2013 tarihli bir ölçüm çalışması, yeni bir bloğun bulunmasından sonra medyan düğümün bunu 6,5 saniye sonra öğrendiğini, ortalamanın ise 12,6 saniye olduğunu saptadı. Bitcoin Core, sıkıştırılmış blok aktarımını 23 Ağustos 2016 tarihinde 0.13.0 sürümünde sundu ve standart aktarım yedek yol haline geldi.

Nasıl çalışır

Standart blok aktarımı üç mesaj kullanır ve alıcı düğümün elinde ne olduğuna dair hiçbir varsayımda bulunmaz.

Bloğu bulan düğüm, yeni bloğun hash'ini adlandıran bir inv mesajı gönderir ya da BIP130, Bitcoin Core 0.12.0 sürümüne geldiğinden beri 80 baytlık başlığı doğrudan taşıyan bir headers mesajı gönderir; bu, eşi ayrı bir getheaders gidiş dönüşünden kurtarır. Alıcı o bloğa sahip olup olmadığını kontrol eder. Sahip değilse getdata ile yanıt verir. Bunun üzerine gönderen block mesajını iletir: başlık ve ardından her işlemin tam serileştirmesiyle, bir bloğu sınırlayan dört milyon ağırlık birimi bütçesine kadar.

İsraf, dile getirilince hemen görülür. Saatlerdir çalışan bir düğüm, o bloktaki neredeyse her işlemi yayınlandığında tek tek aldığı için zaten mempool'unda tutar. Standart aktarım bunların hepsini ikinci kez gönderir. Sıradan ödemelerle dolu bir blokta bu, eş başına ve blok başına bir megabaytın çok üzerinde gereksiz transfer demektir.

Sonuçlar yalnızca estetik değildi. Yavaş yayılma, eski blok oranını artırır, çünkü yeni bir bloğu henüz duymamış bir madenci eski uç üzerinde çalışmayı sürdürür. Eski bloklar küçük madencilere büyüklere olduğundan daha pahalıya mal olur, çünkü büyük bir havuz kendi bloklarını anında duyar. Bu nedenle daha hızlı aktarım, verimlilik olduğu kadar bir ademi merkeziyet argümanıydı ve hem BIP152 hem de büyük havuzların kendi aralarında işlettiği özel aktarım ağlarını harekete geçirdi.

Standart aktarım ortadan kalkmadı. Bir eş sıkıştırılmış bloklar üzerinde hiç anlaşmadığında, sıkıştırılmış yeniden oluşturma başarısız olduğunda ve eksik işlemler tamamlanamadığında ve ayrıca ilk blok indirmesi boyunca, senkronize olan bir düğümün birkaç eşten aynı anda getdata ile tam blok istediği durumda devreye girer; Bitcoin Core içinde eş başına aynı anda en fazla on altı istek bulunabilir.

Nerede görülür

Standart blok aktarımı, bir düğüm güncel olduğunda değil, çoğunlukla yetişmeye çalışırken görülür.

İlk senkronizasyon sırasında bloklara yönelik getdata trafiğe hâkimdir ve getpeerinfo içindeki mesaj başına sayaçlar bunu açıkça gösterir. Düğüm zincirin ucuna ulaştığında bu sayaçlar susar ve sıkıştırılmış blok sayaçları yerini alır. Yavaş bir bağlantıda çalışan ya da az eşi olan bir makine standart aktarıma daha sık geri döner ve belirti, ucun herkese açık bir blok gezgininin gösterdiğinin bir iki dakika gerisinde kalmasıdır.

Standart blok aktarımı vs sıkıştırılmış blok aktarımı

Standart aktarım bloğu gönderir; sıkıştırılmış aktarım onun bir tanımını gönderir ve gerisini alıcının yeniden oluşturmasına bırakır. Bir cmpctblock mesajı; başlığı, bir nonce'u ve her işlem için altı baytlık kısa bir tanımlayıcıyı taşır; böylece birkaç bin ödeme içeren bir blok, bir megabaytın çok üzerinde yerine yirmi kilobaytın altında tanımlanabilir. Alıcı bu tanımlayıcıları kendi mempool'uyla eşleştirir, eksik olanı getblocktxn ile ister ve bloğu yerel olarak birleştirir. Sonrasındaki doğrulama aynıdır: sıkıştırılmış aktarım baytların nasıl geldiğini değiştirir, geçerli bir blok sayılanı asla değiştirmez.

Karıştırılmaması gerekenler

Sık sorulan sorular

Bitcoin düğümleri blokları hâlâ standart yolla mı aktarıyor?

Evet, ama çoğunlukla yedek yol olarak. Sıkıştırılmış blok aktarımı Ağustos 2016'da Bitcoin Core 0.13.0 sürümüyle geldi ve olağan durumu üstlenir; standart aktarım, bir eş sıkıştırılmış bloklar üzerinde hiç anlaşmadığında, yeniden oluşturma başarısız olduğunda ve ilk blok indirmesi sırasında devreye girer.

Yavaş blok aktarımı ademi merkeziyet için neden önemliydi?

Çünkü gecikme eski bloklar üretir ve eski bloklar küçük madencilere büyüklerden daha pahalıya mal olur. Büyük bir havuz kendi bloğunu anında duyarken herkes bekler, bu nedenle daha hızlı yayılma ölçeğin doğuştan gelen avantajının bir kısmını ortadan kaldırdı.

Sıradaki okuma

İlgili terimler

Daha fazlası: Düğümler ve yazılım

Bu sayfayı İngilizce okuyun