Share via


Azure NetApp Files için SMB performansına yönelik en iyi yöntemler

Bu makale, Azure NetApp Files için SMB performansını ve en iyi yöntemlerini anlamanıza yardımcı olur.

SMB Çok Kanal

Çok Kanallı SMB, SMB paylaşımlarında varsayılan olarak etkindir. Mevcut SMB birimleriyle önceden eşleşen tüm SMB paylaşımlarında özellik etkinleştirilmiştir ve yeni oluşturulan tüm birimlerde de özellik oluşturma sırasında etkinleştirilir.

Özellik etkinleştirmeden önce kurulan tüm SMB bağlantılarının, Çok Kanallı SMB işlevselliğinden yararlanmak için sıfırlanması gerekir. Sıfırlamak için SMB paylaşımının bağlantısını kesebilir ve yeniden bağlayabilirsiniz.

Windows, en iyi performansı sağlamak için Windows 2012'den bu yana Çok Kanallı SMB'yi desteklemiştir. Ayrıntılar için bkz . Çok Kanallı SMB Dağıtma ve Çok Kanallı SMB'nin temelleri.

Çok Kanallı SMB'nin avantajları

Çok Kanallı SMB özelliği, bir SMB3 istemcisinin tek bir ağ arabirimi kartı (NIC) veya birden çok NIC üzerinden bağlantı havuzu oluşturmasını ve bunları kullanarak tek bir SMB oturumu için istek göndermesini sağlar. Buna karşılık, tasarım gereği SMB1 ve SMB2, istemcinin tek bir bağlantı kurmasını ve belirli bir oturum için tüm SMB trafiğini bu bağlantı üzerinden göndermesini gerektirir. Bu tek bağlantı, tek bir istemciden elde edilebilecek genel protokol performansını sınırlar.

Çok Kanallı SMB performansı

Aşağıdaki testler ve grafikler, tek örnekli iş yüklerinde Çok Kanallı SMB'nin gücünü gösterir.

Rastgele G/Ç

İstemcide Çok Kanallı SMB devre dışı bırakıldığı için FIO ve 40 GiB çalışma kümesi kullanılarak saf 4 KiB okuma ve yazma testi gerçekleştirildi. SMB paylaşımı her test arasında ayrılmıştır ve RSS ağ arabirimi ayarları 1başına SMB istemci bağlantı sayısının artımları ,4,8,16, set-SmbClientConfiguration -ConnectionCountPerRSSNetworkInterface <count>şeklindedir. Testler, varsayılan ayarının 4 G/Ç yoğunluklu iş yükleri için yeterli olduğunu ve değerinin artırıldığını 8 ve 16 göz ardı edilebilir bir etkiye sahip olduğunu gösterir.

komutunetstat -na | findstr 445, öğesine ve 16'ye 48 artımlarla 1 ek bağlantılar kurulduğunu kanıtladı. Perfmon Per Processor Network Activity Cycles istatistiği tarafından doğrulandığı gibi her test sırasında SMB için dört CPU çekirdeği tam olarak kullanıldı (bu makalede yer almaz.)

Chart that shows random I/O comparison of SMB Multichannel.

Azure sanal makinesi SMB (veya NFS) depolama G/Ç sınırlarını etkilemez. Aşağıdaki grafikte gösterildiği gibi, D32ds örnek türü önbelleğe alınmış depolama IOPS için 308.000 ve kazınmamış depolama IOPS için 51.200 ile sınırlı bir hıza sahiptir. Ancak yukarıdaki grafikte SMB üzerinden önemli ölçüde daha fazla G/Ç gösterilmektedir.

Chart that shows random I/O comparison test.

Sıralı GÇ

Daha önce açıklanan rastgele G/Ç testlerine benzer testler 64 KiB sıralı G/Ç ile gerçekleştirildi. RSS ağ arabirimi başına istemci bağlantı sayısındaki artışların 4' değerinin ötesinde rastgele G/Ç üzerinde belirgin bir etkisi olmasa da, aynı durum sıralı G/Ç için de geçerli değildir. Aşağıdaki grafikte gösterildiği gibi, her artış okuma aktarım hızındaki ilgili artışla ilişkilidir. Her örnek türü/boyutu için Azure tarafından getirilen ağ bant genişliği kısıtlamaları nedeniyle yazma aktarım hızı sabit kaldı.

Chart that shows throughput test comparison.

Azure, her sanal makine türüne/boyutuna ağ hızı sınırları uygular. Hız sınırı yalnızca giden trafiğe uygulanır. Bir sanal makinede bulunan NIC'lerin sayısı, makine için kullanılabilir toplam bant genişliği miktarının hiçbir etkisine sahip değildir. Örneğin, D32ds örnek türünün 16.000 Mb/sn (2.000 MiB/sn) ağ sınırı vardır. Yukarıdaki sıralı grafikte gösterildiği gibi, sınır giden trafiği etkiler (yazmalar) ancak çok kanallı okumaları etkilemez.

Chart that shows sequential I/O comparison test.

SMB İmzalama

SMB protokolü, dosya ve yazdırma paylaşımı ve uzak Windows yönetimi gibi diğer ağ işlemleri için temel sağlar. Aktarımdaki SMB paketlerini değiştiren ortadaki adam saldırılarını önlemek için, SMB protokolü SMB paketlerinin dijital olarak imzalanmasını destekler.

SMB İmzalama, Azure NetApp Files tarafından desteklenen tüm SMB protokolü sürümleri için desteklenir.

SMB İmzalamanın performans etkisi

SMB İmzalama, SMB performansı üzerinde silinici bir etkiye sahiptir. Performans düşüşünün diğer olası nedenlerinin yanı sıra, her paketin dijital olarak imzalanması, aşağıdaki perfmon çıkışında gösterildiği gibi ek istemci tarafı CPU kullanır. Bu durumda, SMB İmzalama dahil olmak üzere SMB'nin sorumluluğu Core 0'da görünür. Önceki bölümdeki çok kanallı olmayan sıralı okuma aktarım hızı sayılarıyla karşılaştırıldığında, SMB İmzalama'nın genel aktarım hızını 875MiB/sn'den yaklaşık 250MiB/sn'ye düşürdüğü gösterilmiştir.

Chart that shows SMB Signing performance impact.

1 TB veri kümesine sahip tek bir örnek için performans

Okuma/yazma karmaları olan iş yükleri hakkında daha ayrıntılı içgörüler sağlamak için aşağıdaki iki grafik, 1 TB veri kümesine sahip ve 4'lü çok kanallı SMB ile 50 TB'lık tek bir Ultra hizmet düzeyinde bulut hacminin performansını gösterir. Ağ bant genişliğinin (numjobs=16) tam olarak kullanılmasını sağlamak için en uygun 16 IODepth kullanıldı ve Esnek GÇ (FIO) parametreleri kullanıldı.

Aşağıdaki grafikte tek bir VM örneği ve %10 aralıklarla okuma/yazma karışımı ile 4k rastgele G/Ç sonuçları gösterilmektedir:

Chart that shows Windows 2019 standard _D32ds_v4 4K random IO test.

Aşağıdaki grafik sıralı G/Ç sonuçlarını gösterir:

Chart that shows Windows 2019 standard _D32ds_v4 64K sequential throughput.

1 TB veri kümesine sahip 5 VM kullanarak ölçeği genişletirken performans

5 VM'ye sahip bu testler, her işlemin kendi dosyasına yazmasıyla tek VM ile aynı test ortamını kullanır.

Aşağıdaki grafikte rastgele G/Ç sonuçları gösterilmektedir:

Chart that shows Windows 2019 standard _D32ds_v4 4K 5-instance randio IO test.

Aşağıdaki grafik sıralı G/Ç sonuçlarını gösterir:

Chart that shows Windows 2019 standard _D32ds_v4 64K 5-instance sequential throughput.

Hyper-V ethernet bağdaştırıcılarını izleme

FIO ile testte kullanılan stratejilerden biri ayarlamaktır numjobs=16. Bunun yapılması, Microsoft Hyper-V Ağ Bağdaştırıcısı'nı en üst düzeye çıkarmak için her işi 16 belirli örneğe çatallar.

Performans İzleyicisi Sayaç Ağ Arabirimi > Ekle Microsoft Hyper-V Ağ Bağdaştırıcısı'nı seçerek Windows Performans İzleyicisi'daki > bağdaştırıcıların > her birinde etkinlik olup olmadığını de kontrol edebilirsiniz.

Screenshot that shows Performance Monitor Add Counter interface.

Birimlerinizde veri trafiği çalıştırıldıktan sonra Bağdaştırıcılarınızı Windows Performans İzleyicisi'de izleyebilirsiniz. Bu 16 sanal bağdaştırıcının tümünü kullanmıyorsanız, ağ bant genişliği kapasitenizi en üst düzeye çıkarmıyor olabilirsiniz.

Screenshot that shows Performance Monitor output.

SMB şifrelemesi

Bu bölüm SMB şifrelemesini (SMB 3.0 ve SMB 3.1.1) anlamanıza yardımcı olur

SMB şifrelemesi , SMB verilerinin uçtan uca şifrelenmesini sağlar ve güvenilmeyen ağlarda gizlice dinleme olaylarına karşı verileri korur. SMB şifrelemesi SMB 3.0 ve üzerinde desteklenir.

İstemci, depolamaya istek gönderirken isteği şifreler ve bu da depolama alanının şifresini çözer. Yanıtlar sunucu tarafından benzer şekilde şifrelenir ve istemci tarafından şifresi çözülür.

Windows 10, Windows 2012 ve sonraki sürümleri SMB şifrelemesini destekler.

SMB şifrelemesi ve Azure NetApp Files

SMB şifrelemesi, Azure NetApp Files için paylaşım düzeyinde etkinleştirilir. SMB 3.0, AES-CCM algoritmasını kullanırken, SMB 3.1.1 AES-GCM algoritmasını kullanır.

SMB şifrelemesi gerekli değildir. Bu nedenle, yalnızca kullanıcı Azure NetApp Files'ın etkinleştirmesini isterse belirli bir paylaşım için etkinleştirilir. Azure NetApp Files paylaşımları hiçbir zaman İnternet'e sunulmaz. Bunlara yalnızca belirli bir sanal ağ içinden, VPN veya hızlı yol üzerinden erişilebilir, bu nedenle Azure NetApp Files paylaşımları doğal olarak güvenlidir. SMB şifrelemesini etkinleştirme seçeneği tamamen kullanıcıya bağlıdır. Bu özelliği etkinleştirmeden önce beklenen performans cezasına dikkat edin.

SMB şifrelemesinin istemci iş yükleri üzerindeki etkisi

SMB şifrelemesi hem istemciyi (iletileri şifrelemek ve şifresini çözmek için CPU yükü) hem de depolama alanını (aktarım hızındaki azalmalar) etkilese de, aşağıdaki tabloda yalnızca depolama etkisi vurgulanır. İş yüklerini üretime dağıtmadan önce şifreleme performansı etkisini kendi uygulamalarınıza karşı test etmelisiniz.

G/Ç profili Etki
İş yüklerini okuma ve yazma %10 ile %15 arası
Yoğun meta veri %5

Hızlandırılmış Ağ

Maksimum performans için mümkün olduğunca sanal makinelerinizde Hızlandırılmış Ağ'ı yapılandırmanız önerilir. Aşağıdaki noktaları aklınızda bulundurun:

  • Azure portalı, bu özelliği destekleyen sanal makineler için Hızlandırılmış Ağ'a varsayılan olarak olanak tanır. Ancak Ansible ve benzer yapılandırma araçları gibi diğer dağıtım yöntemleri bunu yapamayabilir. Hızlandırılmış Ağ'ın etkinleştirilmemesi makinenin performansını etkileyebilir.
  • Hızlandırılmış Ağ, bir örnek türü veya boyutu için destek olmaması nedeniyle sanal makinenin ağ arabiriminde etkinleştirilmediyse, daha büyük örnek türleriyle devre dışı kalır. Bu gibi durumlarda el ile müdahale etmeniz gerekir.
  • Azure NetApp Files'ın ayrılmış alt ağında NIC'ler için hızlandırılmış ağ ayarlamaya gerek yoktur. Hızlandırılmış ağ, yalnızca Azure sanal makineleri için geçerli olan bir özelliktir. Azure NetApp Files NIC'leri tasarıma göre iyileştirilmiştir.

RSS

Azure NetApp Files, alma tarafı ölçeklendirmeyi (RSS) destekler.

Çok Kanallı SMB etkinleştirildiğinde, bir SMB3 istemcisi tek RSS özellikli bir ağ arabirim kartı (NIC) üzerinden Azure NetApp Files SMB sunucusuna birden çok TCP bağlantısı kurar.

Azure sanal makine NIC'lerinizin RSS'yi destekleyip desteklemediğini görmek için aşağıdaki komutu Get-SmbClientNetworkInterface çalıştırın ve alanını RSS Capabledenetleyin:

Screenshot that shows RSS output for Azure virtual machine.

SMB istemcilerinde birden çok NIC

SMB için istemcinizde birden çok NIC yapılandırmamalısınız. SMB istemcisi, SMB sunucusu tarafından döndürülen NIC sayısıyla eşleşecektir. Her depolama birimine bir ve yalnızca bir depolama uç noktasından erişilebilir. Bu, belirli bir SMB ilişkisi için yalnızca bir NIC kullanılacağı anlamına gelir.

Aşağıdaki çıkışta Get-SmbClientNetworkInterace gösterildiği gibi, sanal makine 15 ve 12 adlı 2 ağ arabirimine sahiptir. Aşağıdaki komutu Get-SmbMultichannelConnectionaltında gösterildiği gibi, rss özellikli iki NICs olsa da, SMB paylaşımıyla bağlantılı olarak yalnızca arabirim 12 kullanılır; arabirim 15 kullanımda değildir.

Screeshot that shows output for RSS-capable NICS.

Sonraki adımlar