lunedì 7 ottobre 2013

Di Windows Server 2012 R2: Quale versione del protocollo SMB (SMB 1.0, SMB 2.0, SMB 2.1, SMB 3.0 o SMB 3.02) stai usando?

1. Introduzione
Con il rilascio di Windows 8.1 e Windows Server 2012 R2, sono spesso chiesto come le versioni precedenti di Windows si comporteranno durante la connessione da e verso queste nuove versioni. Aggiornamento a una nuova versione di SMB è qualcosa che è successo un paio di volte nel corso degli anni e abbiamo stabilito un processo nel protocollo stesso con cui client e server negoziano la versione più alta che sia di sostegno.

2. Versioni
Ci sono diverse versioni di SMB utilizzate dai sistemi operativi Windows:
  • CIFS - La versione antica di SMB che faceva parte di Microsoft Windows NT 4.0 nel 1996. SMB1 sostituisce questa versione.
  • SMB 1.0 (o SMB1) - La versione utilizzata in Windows 2000, Windows XP, Windows Server 2003 e Windows Server 2003 R2
  • SMB 2.0 (o SMB2) - La versione utilizzata in Windows Vista (SP1 o versione successiva) e Windows Server 2008
  • SMB 2.1 (o SMB2.1) - La versione utilizzata in Windows 7 e Windows Server 2008 R2
  • SMB 3.0 (o SMB3) - La versione utilizzata in Windows 8 e Windows Server 2012
  • SMB 3.02 (o SMB3) - La versione utilizzata in Windows 8.1 e Windows Server 2012 R2
Windows NT non è più supportato, quindi CIFS è definitivamente fuori. Windows Server 2003 R2 con Service Pack corrente è in fase di supporto esteso, in modo SMB1 è ancora in giro per un po '. SMB 2.x in Windows Server 2008 e Windows Server 2008 R2 sono sotto supporto Mainstream fino al 2015. È possibile trovare le informazioni più aggiornate sullapagina del supporto per Windows Server . Le informazioni sono soggette alla privacy Disclaimer Microsoft e Change Notice . È possibile utilizzare le pagine di supporto per trovare anche le informazioni sui criteri di supporto per Windows XP, Windows Vista, Windows 7 e Windows 8.
In Windows 8.1 e Windows Server 2012 R2, abbiamo introdotto la possibilità di disattivare completamente CIFS/SMB1 supporto, compresa la rimozione effettiva dei relativi file binari. Anche se questa non è la configurazione predefinita, si consiglia di disabilitare questa vecchia versione del protocollo in scenari dove non è utile, come Hyper-V su SMB. Potete trovare i dettagli su questa nuova opzione nel punto 7 di questo post del blog: Cosa c'è di nuovo in SMB PowerShell in Windows Server 2012 R2 .

3. Versioni negoziate
Ecco una tabella per aiutarvi a capire quale versione si finirà per utilizzare, a seconda di quale versione di Windows è in esecuzione come client SMB e quale versione di Windows è in esecuzione come server SMB:
OSDi Windows 8.1 
WS 2012 R2
Windows 8 
WS 2012
Windows 7 
WS 2008 R2
Windows Vista 
WS 2008
Precedenti
versioni
Di Windows 8.1
WS 2012 R2
SMB 3.02SMB 3.0SMB 2.1SMB 2.0SMB 1.0
Windows 8
WS 2012
SMB 3.0SMB 3.0SMB 2.1SMB 2.0SMB 1.0
Windows 7
WS 2008 R2
SMB 2.1SMB 2.1SMB 2.1SMB 2.0SMB 1.0
Windows Vista
WS 2008
SMB 2.0SMB 2.0SMB 2.0SMB 2.0SMB 1.0
Precedenti
versioni
SMB 1.0SMB 1.0SMB 1.0SMB 1.0SMB 1.0
* WS = Windows Server
  
4. Utilizzo di PowerShell per verificare la versione di SMB
In Windows 8 o Windows Server 2012, c'è un nuovo cmdlet PowerShell che può facilmente dire che versione di SMB il cliente ha negoziato con il file server. È sufficiente accedere a un file server remoto (o creare un nuovo mapping di esso) e utilizzare Get-SmbConnection. Ecco un esempio:
PS C: \> Get-SmbConnection
 

ServerName Nomecondivisione UserName credenziali NumOpens Dialetto 
------------------------------------ ---------------- 
FileServer1 IPC $ dominio \ UtenteN ... DomainName.Testi ... 3.00 0 
FileServer1 FileShare dominio \ UtenteN ... DomainName.Testi ... 3.00 14 
FileServ2 FS2 dominio \ UtenteN ... DomainName.Testi ... 3.02 3  VNX3 Share1 dominio \ UtenteN ... DomainName.Testi ... 3.00 6 Filer2 Biblioteca dominio \ UtenteN ... DomainName.Testi ... 3.00 8
DomainCtrl1 Nomedominio netlogon \ Compu ... DomainName.Testi ... 2.10 1
Nel precedente esempio, un server chiamato "FileServer1" poteva negoziare fino alla versione 3.0. FileServ2 può utilizzare la versione 3.02. Ciò significa che il client e il server supportano l'ultima versione del protocollo SMB. Si può anche vedere che un altro server denominato "DomainCtrl1" è stato solo in grado di negoziare fino alla versione 2.1. Probabilmente si può intuire che si tratta di un controller di dominio che esegue Windows Server 2008 R2. Alcuni dei server della lista non si esegue Windows, mostrando il dialetto che queste implementazioni non Windows SMB negoziate con questo client specifico di Windows.
Se si desidera solo per trovare la versione di SMB in esecuzione sul proprio computer, è possibile utilizzare una condivisione di loopback in combinazione con il cmdlet Get-SmbConnection. Ecco un esempio:
PS C: \> dir \ \ localhost \ c $ 
 
Directory: \ \ localhost \ c $ 

 
Modalità LastWriteTime Lunghezza Nome 

-------------------------- - 
d ---- 2012/05/19 01:54 PerfLogs 
dr - 6/1/2012 23:58 Program Files 
dr - 2012/06/01 11:58 Program Files (x86) 
dr - 2012/05/24 03:56 Utenti 
d ---- 6/5/2012 03:00 di Windows
  
PS C: \> Get-SmbConnection-ServerName localhost
  
ServerName Nomecondivisione UserName credenziali NumOpens Dialetto 
-------- -------------------------------------------- 
localhost c $ dominio \ UtenteN ... DomainName.Testi ... 3.02 0

Avete circa 10 secondi dopo che si esegue il comando "dir" per eseguire il cmdlet "Get-SmbConnection". Il client SMB sarà abbattere le connessioni se non vi è attività tra il client e il server. Potrebbe essere utile sapere che è possibile utilizzare l'alias "gsmbc" al posto del nome completo cmdlet.

5. Caratteristiche e funzionalità
Ecco un breve riassunto di ciò che è cambiato con ogni versione di SMB:
  • Da SMB 1.0 per SMB 2.0 - La prima grande riprogettazione di SMB
    • Aumento della condivisione di file di scalabilità
    • Miglioramento delle prestazioni
      • Richiesta compounding
      • Operazioni asincrone
      • Grandi letture / scritture
    • Più sicuro e robusto
      • Piccolo set di comandi
      • Firma ora usa HMAC SHA-256 invece di MD5
      • SMB2 durata
  • Da SMB 2.0 a SMB 2.1
    • Miglioramenti di leasing file
    • Grande sostegno MTU
    • BranchCache
  • Da SMB 2.1 a SMB 3.0
    • Disponibilità
      • SMB Failover trasparente
      • SMB Testimone
      • SMB multicanale
    • Prestazione
      • SMB Scale-Out
      • SMB diretta (SMB 3.0 su RDMA)
      • SMB multicanale
      • Directory Leasing
      • BranchCache V2
    • Backup
      • VSS per la condivisioni di file remoti
    • Sicurezza
      • Crittografia SMB utilizzando AES-CCM (Opzionale)
      • Firma ora utilizza AES-CMAC
    • Amministrazione
      • SMB PowerShell
      • Miglioramento dei contatori delle prestazioni
      • Migliorata Eventing
  • Da SMB 3.0 per SMB 3.02
    • Ribilanciamento automatico dei client Scale-Out File Server
    • Miglioramento delle prestazioni di SMB diretta (SMB su RDMA)
    • Supporto per più istanze SMB su una scala-Out File Server
È possibile ottenere ulteriori dettagli sui miglioramenti SMB 2.0 sopra elencati
È possibile ottenere ulteriori dettagli sui miglioramenti SMB 3.0 sopra elencati
È possibile ottenere ulteriori dettagli sulle SMB 3.02 miglioramenti in Windows Server 2012 R2 ahttp://technet.microsoft.com/en-us/library/hh831474.aspx

6. Raccomandazione
Raccomandiamo vivamente di aggiornare alla versione più recente di SMB, che vi darà la più scalabilità, le migliori prestazioni, la massima disponibilità e la più sicura implementazione SMB.
Tenete a mente che Windows Server 2012 Hyper-V e Windows Server 2012 R2 Hyper-V supporta solo SMB 3.0 per l'archiviazione di file remoto. Ciò è dovuto principalmente alle caratteristiche di disponibilità (SMB failover trasparente, SMB Testimone e SMB multicanale), che non esistevano nelle precedenti versioni di SMB. La scalabilità e le prestazioni aggiuntive sono anche i benvenuti in questo scenario di virtualizzazione. L'Hyper-V Best Practices Analyzer (BPA) avvisa se viene rilevata una versione precedente.

7. Conclusione
Siamo entusiasti SMB3, ma siamo anche sempre preoccupati per mantenere il più possibile la compatibilità all'indietro. Sia SMB 3.0 e SMB 3.02 portare diverse nuove funzionalità chiave e vi invitiamo a saperne di più su di loro. Speriamo che sarete convinti di cominciare a pianificare i vostri aggiornamenti il ​​più presto possibile.