BranchCacheBranchCache

Si applica a: Windows Server (canale semestrale), Windows Server 2016Applies to: Windows Server (Semi-Annual Channel), Windows Server 2016

Questo argomento, destinato a professionisti IT (Information Technology), fornisce informazioni generali su BranchCache, incluse le relative modalità, caratteristiche e funzionalità, nonché la funzionalità BranchCache disponibile in diversi sistemi operativi.This topic, which is intended for Information Technology (IT) professionals, provides overview information about BranchCache, including BranchCache modes, features, capabilities, and the BranchCache functionality that is available in different operating systems.

Nota

Oltre a questo argomento, è disponibile la seguente documentazione relativa a BranchCache.In addition to this topic, the following BranchCache documentation is available.

Che saranno interessati a BranchCache?Who will be interested in BranchCache?

Per gli amministratori di sistema, architetti di soluzioni di rete o archiviazione o altri professionisti IT, BranchCache può rivelarsi utile nei seguenti casi:If you are a system administrator, network or storage solution architect, or other IT professional, BranchCache might interest you under the following circumstances:

  • Si progetta o si supporta l'infrastruttura IT per un'organizzazione con due o più percorsi fisici e una connessione WAN (Wide Area Network) dalle succursali alla sede centrale.You design or support IT infrastructure for an organization that has two or more physical locations and a wide area network (WAN) connection from the branch offices to the main office.

  • Si progetta o supporta l'infrastruttura IT per un'organizzazione che ha implementato tecnologie cloud e in cui i dipendenti usano una connessione WAN per accedere ai dati e alle applicazioni da posizioni remote.You design or support IT infrastructure for an organization that has deployed cloud technologies, and a WAN connection is used by workers to access data and applications at remote locations.

  • Si desidera ottimizzare l'utilizzo della larghezza di banda WAN riducendo il traffico di rete tra le succursali e la sede centrale.You want to optimize WAN bandwidth usage by reducing the amount of network traffic between branch offices and the main office.

  • È stata eseguita o pianificata la distribuzione di server di contenuti presso la sede centrale che corrispondono alle configurazioni descritte in questo argomento.You have deployed or are planning on deploying content servers at your main office that match the configurations that are described in this topic.

  • I computer client nelle succursali eseguono Windows 10, Windows 8.1, Windows 8 o Windows 7.The client computers in your branch offices are running Windows 10, Windows 8.1, Windows 8, or Windows 7 .

Questo argomento include le sezioni seguenti:This topic includes the following sections:

Che cos'è BranchCache?What is BranchCache?

BranchCache è una tecnologia di ottimizzazione (WAN) della larghezza di banda di rete WAN inclusa in alcune edizioni dei sistemi operativi Windows 10 e Windows Server 2016, nonché in alcune edizioni di Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8 , Windows Server 2008 R2 e Windows 7.BranchCache is a wide area network (WAN) bandwidth optimization technology that is included in some editions of the Windows Server 2016 and Windows 10 operating systems, as well as in some editions of Windows Server 2012 R2, Windows 8.1, Windows Server 2012, Windows 8, Windows Server 2008 R2 and Windows 7. Per ottimizzare la larghezza di banda della rete WAN quando gli utenti accedono al contenuto di server remoti, BranchCache recupera il contenuto dai server di contenuti della sede centrale o ospitati nel cloud e lo memorizza nella cache presso le succursali, consentendo ai computer client delle succursali stesse di accedere al contenuto in locale anziché attraverso la rete WAN.To optimize WAN bandwidth when users access content on remote servers, BranchCache fetches content from your main office or hosted cloud content servers and caches the content at branch office locations, allowing client computers at branch offices to access the content locally rather than over the WAN.

Presso le filiali, il contenuto viene archiviato su server configurati per ospitare la cache oppure, se è disponibile alcun server nella succursale, nei computer client che eseguono Windows 10, Windows 8.1, Windows 8 o Windows 7.At branch offices, content is stored either on servers that are configured to host the cache or, when no server is available in the branch office, on client computers that are running Windows 10, Windows 8.1, Windows 8 or Windows 7. Dopo che un computer client ha richiesto e ricevuto contenuto dalla sede centrale e il contenuto è stato memorizzato nella cache presso la succursale, gli altri computer della stessa succursale possono ottenere il contenuto in locale anziché scaricandolo dal server di contenuti tramite il collegamento WAN.After a client computer requests and receives content from the main office and the content is cached at the branch office, other computers at the same branch office can obtain the content locally rather than downloading the content from the content server over the WAN link.

Per le successive richieste dello stesso contenuto da parte dei computer client, questi ultimi scaricano le informazioni sul contenuto dal server anziché dal contenuto effettivo.When subsequent requests for the same content are made by client computers, the clients download content information from the server instead of the actual content. Le informazioni sul contenuto sono costituite da hash che vengono calcolati usando blocchi del contenuto originale e sono estremamente piccoli rispetto al contenuto nei dati originali.Content information consists of hashes that are calculated using chunks of the original content, and are extremely small compared to the content in the original data. Le informazioni sul contenuto vengono quindi usate dai computer client per individuare il contenuto da una cache nella succursale, indipendentemente dal fatto che la cache si trovi in un computer client o in un server.Client computers then use the content information to locate the content from a cache in the branch office, whether the cache is located on a client computer or on a server. I computer client e i server usano le informazioni sul contenuto anche per proteggere il contenuto memorizzato nella cache in modo che non sia accessibile da parte di utenti non autorizzati.Client computers and servers also use content information to secure cached content so that it cannot be accessed by unauthorized users.

BranchCache aumenta la produttività degli utenti migliorando i tempi di risposta alle query sul contenuto per i client e i server delle succursali e consente di migliorare le prestazioni di rete riducendo il traffico sui collegamenti WAN.BranchCache increases end user productivity by improving content query response times for clients and servers in branch offices, and can also help improve network performance by reducing traffic over WAN links.

Modalità di BranchCacheBranchCache modes

BranchCache presenta due modalità operative: modalità cache distribuita e modalità cache ospitata.BranchCache has two modes of operation: distributed cache mode and hosted cache mode.

Quando si distribuisce BranchCache in modalità cache distribuita, la cache di contenuti presso una succursale viene distribuita tra i computer client.When you deploy BranchCache in distributed cache mode, the content cache at a branch office is distributed among client computers.

Quando si distribuisce BranchCache in modalità cache ospitata, la cache di contenuti presso una succursale è ospitata su uno o più computer server, denominati server cache ospitata.When you deploy BranchCache in hosted cache mode, the content cache at a branch office is hosted on one or more server computers, which are called hosted cache servers.

Nota

BranchCache può essere distribuito con entrambe le modalità, ma è possibile usare una sola modalità per succursale.You can deploy BranchCache using both modes, however only one mode can be used per branch office. Ad esempio, se sono presenti due succursali, una con un server e una priva di server, è possibile distribuire BranchCache in modalità cache ospitata in quella che contiene un server e in modalità cache distribuita in quella che contiene solo computer client.For example, if you have two branch offices, one which has a server and one which does not, you can deploy BranchCache in hosted cache mode in the office that contains a server, while deploying BranchCache in distributed cache mode in the office that contains only client computers.

Nella figura seguente BranchCache è distribuito in entrambe le modalità.In the following illustration, BranchCache is deployed in both modes.

Modalità di BranchCache

La modalità cache distribuita è più adatta per le piccole succursali che non dispongono di un server locale da usare come server cache ospitata.Distributed cache mode is best suited for small branch offices that do not contain a local server for use as a hosted cache server. La modalità cache distribuita consente di distribuire BranchCache senza aggiunta di hardware nelle succursali.Distributed cache mode allows you to deploy BranchCache with no additional hardware in branch offices.

Se la succursale in cui si desidera distribuire BranchCache contiene un'infrastruttura supplementare, ad esempio uno o più server che eseguono altri carichi di lavoro, la distribuzione di BranchCache in modalità cache ospitata risulta vantaggiosa per i seguenti motivi:If the branch office where you want to deploy BranchCache contains additional infrastructure, such as one or more servers that are running other workloads, deploying BranchCache in hosted cache mode is beneficial for the following reasons:

Aumento della disponibilità della cacheIncreased cache availability

La modalità cache ospitata aumenta l'efficienza della cache in quanto il contenuto è disponibile anche se il client che ha richiesto originariamente i dati è offline.Hosted cache mode increases the cache efficiency because content is available even if the client that originally requested and cached the data is offline. Poiché il server cache ospitata è sempre disponibile, vengono memorizzati più contenuti nella cache, con conseguente aumento dei risparmi di larghezza di banda WAN e miglioramento dell'efficienza di BranchCache.Because the hosted cache server is always available, more content is cached, providing greater WAN bandwidth savings, and BranchCache efficiency is improved.

Memorizzazione nella cache centralizzata per succursali con più subnetCentralized caching for multiple-subnet branch offices

La modalità cache distribuita opera su un'unica subnet.Distributed cache mode operates on a single subnet. In una succursale con più subnet configurata per la modalità cache distribuita, un file scaricato in una subnet non può essere condiviso con i computer client su altre subnet.At a multiple-subnet branch office that is configured for distributed cache mode, a file downloaded to one subnet cannot be shared with client computers on other subnets.

Di conseguenza, i client in altre subnet, non essendo in grado di rilevare che il file è già stato scaricato, lo recuperano dal server di contenuti della sede centrale, usando larghezza di banda WAN durante il processo.Because of this, clients on other subnets, unable to discover that the file has already been downloaded, get the file from the main office content server, using WAN bandwidth in the process.

Quando si distribuisce la modalità cache ospitata, invece, questo non accade: tutti i client in una succursale con più subnet possono accedere a un'unica cache, archiviata sul server cache ospitata, anche se i client si trovano su subnet diverse.When you deploy hosted cache mode, however, this is not the case - all clients in a multiple-subnet branch office can access a single cache, which is stored on the hosted cache server, even if the clients are on different subnets. Inoltre, BranchCache in Windows Server 2016, Windows Server 2012 R2 e Windows Server 2012 offre la possibilità di distribuire più server cache ospitata per succursale.In addition, BranchCache in Windows Server 2016, Windows Server 2012 R2, and Windows Server 2012 provides the ability to deploy more than one hosted cache server per branch office.

Attenzione

Se si usa BranchCache per la memorizzazione nella cache SMB di file e cartelle, non disabilitare i file offline.If you use BranchCache for SMB caching of files and folders, do not disable Offline Files. Se si disabilitano i file offline, la memorizzazione nella cache SMB BranchCache non funzionerà correttamente.If you disable Offline Files, BranchCache SMB caching does not function correctly.

Server di contenuti abilitati per BranchCacheBranchCache-enabled content servers

Quando si distribuisce BranchCache, il contenuto di origine viene archiviato nel server contenuti abilitati per BranchCache nella sede principale o in un data center cloud.When you deploy BranchCache, the source content is stored on BranchCache-enabled content servers in your main office or in a cloud data center. BranchCache supporta i seguenti tipi di server di contenuti:The following types of content servers are supported by BranchCache:

Nota

Solo contenuto di origine, vale a dire, contenuto che i computer client ottengono inizialmente da un server di contenuti abilitato per BranchCache - viene accelerato da BranchCache.Only source content - that is, content that client computers initially obtain from a BranchCache-enabled content server - is accelerated by BranchCache. Il contenuto che i computer client ottengono direttamente da altre fonti, ad esempio server Web su Internet o Windows Update, non viene memorizzato nella cache dai computer client o dai server cache ospitata e quindi condiviso con altri computer nella succursale.Content that client computers obtain directly from other sources, such as Web servers on the Internet or Windows Update, is not cached by client computers or hosted cache servers and then shared with other computers in the branch office. Se si vuole accelerare il contenuto di Windows Update, tuttavia, è possibile installare un server applicazioni di Windows Server Update Services (WSUS) in un data center cloud o dell'ufficio principale e configurarlo come server di contenuti BranchCache.If you want to accelerate Windows Update content, however, you can install a Windows Server Update Services (WSUS) application server at your main office or cloud data center and configure it as a BranchCache content server.

Server WebWeb servers

Server Web supportati includono i computer che eseguono Windows Server 2016, Windows Server 2012 R2, Windows Server 2012 o Windows Server 2008 R2 cui è installato il ruolo server Server Web (IIS) e che usano (Hypertext Transfer Protocol (HTTP) o Secure HTTP HTTPS).Supported Web servers include computers that are running Windows Server 2016, Windows Server 2012 R2, Windows Server 2012, or Windows Server 2008 R2 that have the Web Server (IIS) server role installed and that use Hypertext Transfer Protocol (HTTP) or HTTP Secure (HTTPS).

È necessario inoltre che nel server Web sia installata la funzionalità BranchCache.In addition, the Web server must have the BranchCache feature installed.

File serverFile servers

File server supportati includono i computer che eseguono Windows Server 2016, Windows Server 2012 R2, Windows Server 2012 o Windows Server 2008 R2 con il ruolo server Servizi File e BranchCache per file di rete installato il servizio ruolo.Supported file servers include computers that are running Windows Server 2016, Windows Server 2012 R2, Windows Server 2012, or Windows Server 2008 R2 that have the File Services server role and the BranchCache for Network Files role service installed.

Questi file server usano SMB (Server Message Block) per lo scambio di informazioni tra computer.These file servers use Server Message Block (SMB) to exchange information between computers. Al termine dell'installazione del file server, è necessario anche condividere le cartelle e abilitare la generazione hash per le cartelle condivise usando Criteri di gruppo o Criteri del computer locale per abilitare BranchCache.After you complete installation of your file server, you must also share folders and enable hash generation for shared folders by using Group Policy or Local Computer Policy to enable BranchCache.

Server applicazioniApplication servers

Server applicazioni supportati includono i computer che eseguono Windows Server 2016, Windows Server 2012 R2, Windows Server 2012 o Windows Server 2008 R2 con trasferimento in Background Intelligent Service (BITS) installato e abilitato.Supported application servers include computers that are running Windows Server 2016, Windows Server 2012 R2, Windows Server 2012, or Windows Server 2008 R2 with Background Intelligent Transfer Service (BITS) installed and enabled.

È necessario inoltre che nel server applicazioni sia installata la funzionalità BranchCache.In addition, the application server must have the BranchCache feature installed. Ad esempio dei server applicazioni, è possibile distribuire server Microsoft Windows Server Update Services (WSUS) e Microsoft System Center Configuration Manager Branch Distribution Point come server di contenuti BranchCache.As examples of application servers, you can deploy Microsoft Windows Server Update Services (WSUS) and Microsoft System Center Configuration Manager Branch Distribution Point servers as BranchCache content servers.

BranchCache e il cloudBranchCache and the cloud

Il cloud presenta enormi potenzialità in fatto di riduzione delle spese operative e di raggiungimento di nuovi livelli di scala, ma l'allontanamento dei carichi di lavoro dalle persone che dipendono da essi può determinare un aumento dei costi di rete e compromettere la produttività.The cloud has enormous potential to reduce operational expenses and achieve new levels of scale, but moving workloads away from the people who depend on them can increase networking costs and hurt productivity. Gli utenti pretendono prestazioni elevate e non è rilevante in cui sono ospitati applicazioni e dati.Users expect high performance and don't care where their applications and data are hosted.

BranchCache consente di migliorare le prestazioni delle applicazioni di rete e di ridurre il consumo di larghezza di banda con una cache di dati condivisa.BranchCache can improve the performance of networked applications and reduce bandwidth consumption with a shared cache of data. Aumenta la produttività nelle succursali e sedi centrali in cui i lavoratori usano server distribuiti nel cloud.It improves productivity in branch offices and in headquarters, where workers are using servers that are deployed in the cloud.

Dato che BranchCache non richiede nuovi componenti hardware o modifiche alla topologia di rete, è una soluzione eccellente per migliorare le comunicazioni tra uffici e cloud pubblici e privati.Because BranchCache does not require new hardware or network topology changes, it is an excellent solution for improving communication between office locations and both public and private clouds.

Nota

Perché alcuni proxy Web non è in grado di elaborare le intestazioni Content-Encoding non standard, è consigliabile usare BranchCache con Hyper Text Transfer Protocol Secure (HTTPS) e non HTTP.Because some Web proxies cannot process non-standard Content-Encoding headers, it is recommended that you use BranchCache with Hyper Text Transfer Protocol Secure (HTTPS) and not HTTP.

=== Per altre informazioni sulle tecnologie cloud in Windows Server 2016, vedere Software Defined Networking (SDN).======= For more information about cloud technologies in Windows Server 2016, see Software Defined Networking (SDN).

Versioni di informazioni sul contenutoContent information versions

Esistono due versioni delle informazioni sul contenuto:There are two versions of content information:

  • Informazioni sul contenuto compatibili con i computer che eseguono Windows Server 2008 R2 e Windows 7 sono denominate versione 1, o V1.Content information that is compatible with computers running Windows Server 2008 R2 and Windows 7 is called version 1, or V1. Con BranchCache V1, nella segmentazione di file i segmenti sono più grandi rispetto a BranchCache V2 e hanno dimensione fissa.With V1 BranchCache file segmentation, file segments are larger than in V2 and are of fixed size. Date le grandi dimensioni fisse dei segmenti di file, quando un utente apporta una modifica che si ripercuote sulla lunghezza del file, viene invalidato non solo il segmento contenente la modifica, ma anche tutti i segmenti successivi fino alla fine del file.Because of large fixed segment sizes, when a user makes a change that modifies the file length, not only is the segment with the change invalidated, but all of the segments to the end of the file are invalidated. Pertanto, la successiva chiamata del file modificato da parte di un altro utente della succursale limita il risparmio di larghezza di banda nella rete WAN, poiché i contenuti modificati e tutti quelli a seguire vengono trasmessi attraverso il collegamento WAN.The next call for the changed file by another user in the branch office therefore results in reduced WAN bandwidth savings because the changed content and all content after the change are sent over the WAN link.

  • Informazioni sul contenuto compatibili con i computer che eseguono Windows Server 2016, Windows 10, Windows Server 2012 R2, Windows 8.1, Windows Server 2012 e Windows 8 sono denominate versione 2, o V2.Content information that is compatible with computers running Windows Server 2016, Windows 10, Windows Server 2012 R2, Windows 8.1, Windows Server 2012, and Windows 8 is called version 2, or V2. Le informazioni V2 sul contenuto usano segmenti più piccoli e di dimensioni variabili, che meglio tollerano le modifiche apportate all'interno dei file.V2 content information uses smaller, variable-sized segments that are more tolerant to changes within a file. Ciò aumenta la possibilità che vengano riutilizzati i segmenti appartenenti a una versione precedente del file quando gli utenti accedono a una versione aggiornata, provocando il recupero della sola porzione modificata del file dal server di contenuti e pertanto un consumo di larghezza di banda ridotto nella rete WAN.This increases the probability that segments from an older version of the file can be reused when users access an updated version, causing them to retrieve only the changed portion of the file from the content server, and using less WAN bandwidth.

Nella tabella seguente sono contenute informazioni sulla versione delle informazioni sul contenuto usata, in base al client, al server di contenuti e ai sistemi operativi della cache ospitata usati nella distribuzione di BranchCache.The following table provides information on the content information version that is used depending upon which client, content server, and hosted cache server operating systems you are using in your BranchCache deployment.

Nota

Nella tabella seguente, l'acronimo "So" sta per sistema operativo.In the table below, the acronym "OS" means operating system.

SO clientClient OS SO server di contenutiContent Server OS SO server cache ospitataHosted Cache Server OS Versione delle informazioni sul contenutoContent Information Version
Windows Server 2008 R2 e Windows 7Windows Server 2008 R2 and Windows 7 Windows Server 2012 o versione successivaWindows Server 2012 or later Windows Server 2012 o versione successiva; Nessuna per la modalità cache distribuitaWindows Server 2012 or later; none for distributed cache mode V1V1
Windows Server 2012 o versione successiva; Windows 8 o versioni successiveWindows Server 2012 or later; Windows 8 or later Windows Server 2008 R2Windows Server 2008 R2 Windows Server 2012 o versione successiva; Nessuna per la modalità cache distribuitaWindows Server 2012 or later; none for distributed cache mode V1V1
Windows Server 2012 o versione successiva; Windows 8 o versioni successiveWindows Server 2012 or later; Windows 8 or later Windows Server 2012 o versione successivaWindows Server 2012 or later Windows Server 2008 R2Windows Server 2008 R2 V1V1
Windows Server 2012 o versione successiva; Windows 8 o versioni successiveWindows Server 2012 or later; Windows 8 or later Windows Server 2012 o versione successivaWindows Server 2012 or later Windows Server 2012 o versione successiva; Nessuna per la modalità cache distribuitaWindows Server 2012 or later; none for distributed cache mode V2V2

Quando si dispone di server di contenuti e i server cache ospitata che eseguono Windows Server 2016, Windows Server 2012 R2 e Windows Server 2012, usano la versione di informazioni sul contenuto che è appropriata in base sul sistema operativo del client BranchCache che richiede le informazioni.When you have content servers and hosted cache servers that are running Windows Server 2016, Windows Server 2012 R2, and Windows Server 2012, they use the content information version that is appropriate based on the operating system of the BranchCache client that requests information.

Quando i computer che eseguono Windows Server 2012 e Windows 8 o versioni successive richiedono contenuti, i server cache ospitata e contenuti usano informazioni sul contenuto V2; Quando i computer che eseguono Windows Server 2008 R2 e Windows 7 richiedono contenuti, i server cache ospitata e contenuti usano informazioni V1 sui contenuti.When computers running Windows Server 2012 and Windows 8 or later operating systems request content, the content and hosted cache servers use V2 content information; when computers running Windows Server 2008 R2 and Windows 7 request content, the content and hosted cache servers use V1 content information.

Importante

Quando si distribuisce BranchCache in modalità Cache distribuita, i client che usano versioni di informazioni sui contenuti diversi non condividono le informazioni tra di loro.When you deploy BranchCache in distributed cache mode, clients that use different content information versions do not share content with each other. Ad esempio, un computer client che eseguono Windows 7 e un computer client che eseguono Windows 10 che vengono installati nella stessa filiale non condividere contenuto con loro.For example, a client computer running Windows 7 and a client computer running Windows 10 that are installed in the same branch office do not share content with each other.

Come BranchCache gestisce gli aggiornamenti del contenuto nei fileHow BranchCache handles content updates in files

Quando gli utenti delle succursali modificano o aggiornare il contenuto dei documenti, le modifiche vengono scritte direttamente al server di contenuti nella sede centrale senza coinvolgimento di BranchCache.When branch office users modify or update the contents of documents, their changes are written directly to the content server in the main office without BranchCache's involvement. indipendentemente dal fatto che l'utente abbia scaricato il documento dal server di contenuti o lo abbia ottenuto da una cache ospitata o distribuita nella succursale.This is true whether the user downloaded the document from the content server or obtained it from either a hosted or distributed cache in the branch office.

Quando il file modificato viene richiesto da un altro client in una succursale, i nuovi segmenti del file vengono scaricati dal server della sede centrale e vengono aggiunti alla cache distribuita oppure ospitata in tale succursale.When the modified file is requested by a different client in a branch office, the new segments of the file are downloaded from the main office server and added to the distributed or hosted cache in that branch. Gli utenti delle succursali ricevono quindi sempre le versioni più aggiornate dei contenuti memorizzati nella cache.Because of this, branch office users always receive the most recent versions of cached content.

Guida all'installazione di BranchCacheBranchCache installation guide

È possibile utilizzare Server Manager in Windows Server 2016 per installare la funzionalità BranchCache oppure il BranchCache per il servizio ruolo file di rete del ruolo del server Servizi File.You can use Server Manager in Windows Server 2016 to install either the BranchCache feature or the BranchCache for Network Files role service of the File Services server role. La tabella seguente consente di stabilire se installare il servizio ruolo o la funzionalità.You can use the following table to determine whether to install the role service or the feature.

FunzionalitàFunctionality Ubicazione del computerComputer location Elemento di BranchCache da installareInstall this BranchCache element
Server di contenuti (server applicazioni basati su BITS)Content server (BITS-based application server) Sede centrale o data center cloudMain office or cloud data center Funzionalità BranchCacheBranchCache feature
Server di contenuti (server Web)Content server (Web server) Sede centrale o data center cloudMain office or cloud data center Funzionalità BranchCacheBranchCache feature
Server di contenuti (file server usando il protocollo SMB)Content server (file server using the SMB protocol) Sede centrale o data center cloudMain office or cloud data center Servizio ruolo BranchCache per file di rete del ruolo server Servizi file.BranchCache for Network Files role service of the File Services server role
Server cache ospitataHosted cache server SuccursaleBranch office Funzionalità BranchCache con modalità server cache ospitata abilitataBranchCache feature with hosted cache server mode enabled
Computer client abilitato per BranchCacheBranchCache-enabled client computer SuccursaleBranch office Nessuna installazione necessaria. sufficiente abilitare BranchCache e una modalità di BranchCache (distribuita o ospitata) sul clientNo installation needed; just enable BranchCache and a BranchCache mode (distributed or hosted) on the client

Per installare il servizio ruolo o la funzionalità, aprire Server Manager e selezionare i computer in cui si desidera abilitare la funzionalità BranchCache.To install either the role service or the feature, open Server Manager and select the computers where you want to enable BranchCache functionality. In Server Manager fare clic su Gestionee quindi su Aggiungi ruoli e funzionalità.In Server Manager, click Manage, and then click Add Roles and Features. Verrà visualizzata l' Aggiunta guidata ruoli e funzionalità .The Add Roles and Features wizard opens. Durante la procedura guidata selezionare le opzioni seguenti:As you run the wizard, make the following selections:

  • Nella pagina Seleziona tipo di installazione della procedura guidata selezionare Installazione basata su ruoli o basata su funzionalità.On the wizard page Select Installation Type, select Role-based or Feature-based Installation.

  • Nella pagina della procedura guidata Selezione ruoli Server, se si sta installando un abilitata BranchCache file server, espandere servizi File e archiviazione e servizi File e iSCSI, e quindi selezionare BranchCache per file di rete.On the wizard page Select Server Roles, if you are installing a BranchCache-enabled file server, expand File and Storage Services and File and iSCSI Services, and then select BranchCache for Network Files. Per risparmiare spazio su disco, è anche possibile selezionare i deduplicazione dati ruolo del servizio e quindi continuare la procedura guidata per l'installazione e il completamento.To save disk space, you can also select the Data Deduplication role service, and then continue through the wizard to installation and completion. Se non vuoi installare un file server abilitato BranchCache, non installare il ruolo Servizi File e archiviazione con la BranchCache per il servizio ruolo file di rete.If you do not want to install a BranchCache-enabled file server, do not install the File and Storage Services role with the BranchCache for Network Files role service.

  • Nella pagina della procedura guidata Selezione funzionalità, se si installa un server di contenuti che non è un file server o se si sta installando un server cache ospitata, selezionare BranchCachee quindi continuare la procedura guidata installazione e al completamento.On the wizard page Select features, if you are installing a content server that is not a file server or you are installing a hosted cache server, select BranchCache, and then continue through the wizard to installation and completion. Se non si desidera installare un server di contenuti diverso da un file server o da un server cache ospitata, non installare la funzionalità BranchCache.If you do not want to install a content server other than a file server or a hosted cache server, do not install the BranchCache feature.

Versioni del sistema operativo per BranchCacheOperating system versions for BranchCache

Di seguito è riportato un elenco di sistemi operativi che supportano i diversi tipi di funzionalità BranchCache.Following is a list of operating systems that support different types of BranchCache functionality.

Sistemi operativi per la funzionalità del computer client BranchCacheOperating systems for BranchCache client computer functionality

I sistemi operativi seguenti forniscono BranchCache con supporto per servizio trasferimento intelligente in Background (BITS), Hyper Text Transfer Protocol (HTTP) e Server Message Block (SMB).The following operating systems provide BranchCache with support for Background Intelligent Transfer Service (BITS), Hyper Text Transfer Protocol (HTTP), and Server Message Block (SMB).

  • Windows 10 EnterpriseWindows 10 Enterprise

  • Windows 10 EducationWindows 10 Education

  • Windows 8.1 EnterpriseWindows 8.1 Enterprise

  • Windows 8 EnterpriseWindows 8 Enterprise

  • Windows 7 EnterpriseWindows 7 Enterprise

  • Windows 7 UltimateWindows 7 Ultimate

Nei seguenti sistemi operativi, BranchCache non supporta la funzionalità HTTP e SMB, ma supporta la funzionalità BranchCache BITS.In the following operating systems, BranchCache does not support HTTP and SMB functionality, but does support BranchCache BITS functionality.

  • Windows 10 Pro, BITS supportano soloWindows 10 Pro, BITS support only

  • Windows 8.1 Pro, BITS supportano soloWindows 8.1 Pro, BITS support only

  • Windows 8 Pro, BITS supportano soloWindows 8 Pro, BITS support only

  • Windows 7 Pro, BITS supportano soloWindows 7 Pro, BITS support only

Nota

BranchCache non è disponibile per impostazione predefinita nei sistemi operativi Windows Server 2008 o Windows Vista.BranchCache is not available by default in the Windows Server 2008 or Windows Vista operating systems. In questi sistemi operativi, tuttavia, se si scarica e installa l'aggiornamento di Windows Management Framework, la funzionalità BranchCache è disponibile solo per il servizio trasferimento intelligente in Background (BITS) protocollo.On these operating systems, however, if you download and install the Windows Management Framework update, BranchCache functionality is available for the Background Intelligent Transfer Service (BITS) protocol only. Per altre informazioni e per scaricare Windows Management Framework, vedere Windows Management Framework (Windows PowerShell 2.0, WinRM 2.0 e BITS 4.0) a https://go.microsoft.com/fwlink/?LinkId=188677.For more information, and to download Windows Management Framework, see Windows Management Framework (Windows PowerShell 2.0, WinRM 2.0, and BITS 4.0) at https://go.microsoft.com/fwlink/?LinkId=188677.

Sistemi operativi per la funzionalità Server di contenuti BranchCacheOperating systems for BranchCache content server functionality

È possibile usare i sistemi operativi della famiglia Windows Server 2016, Windows Server 2012 R2 e Windows Server 2012 come server di contenuti BranchCache.You can use the Windows Server 2016, Windows Server 2012 R2, and Windows Server 2012 families of operating systems as BranchCache content servers.

Inoltre, i sistemi operativi della famiglia Windows Server 2008 R2 è utilizzabile come server di contenuti BranchCache, con le eccezioni seguenti:In addition, the Windows Server 2008 R2 family of operating systems can be used as BranchCache content servers, with the following exceptions:

  • BranchCache non è supportato nelle installazioni Server Core di Windows Server 2008 R2 Enterprise con Hyper-V.BranchCache is not supported in Server Core installations of Windows Server 2008 R2 Enterprise with Hyper-V.

  • BranchCache non è supportato nelle installazioni Server Core di Windows Server 2008 R2 Datacenter con Hyper-V.BranchCache is not supported in Server Core installations of Windows Server 2008 R2 Datacenter with Hyper-V.

Sistemi operativi per la funzionalità Server cache ospitata BranchCacheOperating systems for BranchCache hosted cache server functionality

È possibile usare i sistemi operativi della famiglia Windows Server 2016, Windows Server 2012 R2 e Windows Server 2012 come server cache ospitata di BranchCache.You can use the Windows Server 2016, Windows Server 2012 R2, and Windows Server 2012 families of operating systems as BranchCache hosted cache servers.

Inoltre, i seguenti sistemi operativi Windows Server 2008 R2 può essere utilizzati come server cache ospitata di BranchCache:In addition, the following Windows Server 2008 R2 operating systems can be used as BranchCache hosted cache servers:

  • Windows Server 2008 R2 EnterpriseWindows Server 2008 R2 Enterprise

  • Windows Server 2008 R2 Enterprise con Hyper-VWindows Server 2008 R2 Enterprise with Hyper-V

  • Installazione di Windows Server 2008 R2 Enterprise Server CoreWindows Server 2008 R2 Enterprise Server Core Installation

  • Windows Server 2008 R2 Enterprise installazione Server Core con Hyper-VWindows Server 2008 R2 Enterprise Server Core Installation with Hyper-V

  • Windows Server 2008 R2 per sistemi basati su ItaniumWindows Server 2008 R2 for Itanium-Based Systems

  • Windows Server 2008 R2 DatacenterWindows Server 2008 R2 Datacenter

  • Windows Server 2008 R2 Datacenter con Hyper-VWindows Server 2008 R2 Datacenter with Hyper-V

  • Windows Server 2008 R2 Datacenter installazione Server Core con Hyper-VWindows Server 2008 R2 Datacenter Server Core Installation with Hyper-V

Sicurezza di BranchCacheBranchCache Security

BranchCache implementa un approccio "sicuro da progettazione" che agisce direttamente in parallelo alle architetture di sicurezza di rete esistenti, senza richiedere apparecchiature aggiuntive o complesse configurazioni di sicurezza supplementari.BranchCache implements a secure-by-design approach that works seamlessly alongside your existing network security architectures, without the requirement for additional equipment or complex additional security configuration.

BranchCache non è invasivo e non modifica alcun processo di autenticazione o autorizzazione di Windows.BranchCache is non-invasive and does not alter any Windows authentication or authorization processes. Dopo la distribuzione di BranchCache, l'autenticazione continua ad avvenire mediante le credenziali di dominio e il funzionamento dell'autorizzazione con gli elenchi di controllo di accesso (ACL) è invariato.After you deploy BranchCache, authentication is still performed using domain credentials, and the way in which authorization with Access Control Lists (ACLs) functions is unchanged. Anche le altre configurazioni continuano a funzionare come prima della distribuzione di BranchCache.In addition, other configurations continue to function just as they did before BranchCache deployment.

Il modello di sicurezza di BranchCache è basato sulla creazione di metadati, sotto forma di una serie di hash.The BranchCache security model is based on the creation of metadata, which takes the form of a series of hashes. Questi hash sono denominati anche informazioni sul contenuto.These hashes are also called content information.

Dopo la creazione, le informazioni sul contenuto vengono usate negli scambi di messaggi di BranchCache al posto dei dati veri e propri e vengono scambiate mediante i protocolli supportati (HTTP, HTTPS e SMB).After content information is created, it is used in BranchCache message exchanges rather than the actual data, and it is exchanged using the supported protocols (HTTP, HTTPS, and SMB).

I dati nella cache vengono mantenuti crittografati e non sono accessibili ai client che non sono autorizzati ad accedere al contenuto tratto dalla fonte originale.Cached data is kept encrypted and cannot be accessed by clients that do not have permission to access content from the original source. I client devono essere autenticati e autorizzati dall'origine del contenuto originale per poter recuperare i metadati di contenuto e devono disporre dei metadati di contenuto per accedere alla cache nell'ufficio locale.Clients must be authenticated and authorized by the original content source before they can retrieve content metadata, and must possess content metadata to access the cache in the local office.

Come vengono generate le informazioni sul contenuto in BranchCacheHow BranchCache generates content information

Poiché le informazioni sul contenuto vengono create da più elementi, il valore di tali informazioni è sempre univoco.Because content information is created from multiple elements, the value of the content information is always unique. Questi elementi sono:These elements are:

  • Il contenuto effettivo, ad esempio pagine Web o file condivisi, da cui derivano gli hash.The actual content (such as Web pages or shared files) from which the hashes are derived.

  • Parametri di configurazione, come l'algoritmo di hash e la dimensione del blocco.Configuration parameters, such as the hashing algorithm and block size. Per generare informazioni sul contenuto, il server di contenuti divide il contenuto in segmenti e quindi suddivide tali segmenti in blocchi.To generate content information, the content server divides the content into segments and then subdivides those segments into blocks. BranchCache usa hash di crittografia sicuri per identificare e verificare ogni blocco e segmento, supportando l'algoritmo di hash SHA256.BranchCache uses secure cryptographic hashes to identify and verify each block and segment, supporting the SHA256 hash algorithm.

  • Un segreto server.A server secret. Tutti i server di contenuti devono essere configurati con un segreto server, ovvero un valore binario di lunghezza arbitraria.All content servers must be configured with a server secret, which is a binary value of arbitrary length.

Nota

L'uso di un segreto server fa sì che i computer client non possano generare informazioni sul contenuto autonomamente.The use of a server secret ensures that client computers are not able to generate the content information themselves. Questo impedisce a utenti malintenzionati di usare attacchi di forza bruta sui computer client abilitati per BranchCache per indovinare minime modifiche al contenuto nelle versioni nei casi in cui il client disponeva dell'accesso a una versione precedente ma non dispone dell'accesso a quella corrente.This prevents malicious users from using brute force attacks with BranchCache-enabled client computers to guess minor changes in content across versions in situations in which the client had access to a previous version but does not have access to the current version.

Dettagli sulle informazioni sul contenutoContent information details

BranchCache usa il segreto server come chiave per ricavare un hash specifico del contenuto che viene inviato ai client autorizzati.BranchCache uses the server secret as a key in order to derive a content-specific hash that is sent to authorized clients. Applicando un algoritmo di hash al segreto server combinato e all'hash dei dati, viene generato questo hash,Applying a hashing algorithm to the combined server secret and the Hash of Data generates this hash.

denominato segreto di segmento.This hash is called the segment secret. BranchCache usa i segreti di segmento per proteggere le comunicazioni.BranchCache uses segment secrets to secure communications. Crea inoltre un elenco di hash di blocco, ovvero un elenco di blocchi di dati con hash, e l'hash dei dati, che viene generato mediante l'hashing dell'elenco di hash di blocco.In addition, BranchCache creates a Block Hash List, which is list of hashed data blocks, and the Hash of Data, which is generated by hashing the Block Hash List.

Nelle informazioni sul contenuto è incluso quanto segue:The content information includes the following:

  • Elenco di hash di blocco:The Block Hash List:

    BlockHashi = Hash(dataBlocki) 1<=i<=n

  • Hash dei dati (HoD):The Hash of Data (HoD):

    HoD = Hash(BlockHashList)

  • Segreto di segmento (Kp):Segment Secret (Kp):

    Kp = HMAC(Ks, HoD)

BranchCache usa il protocollo di memorizzazione nella cache del contenuto del peer e il protocollo framework di recupero per implementare i processi necessari per assicurare la memorizzazione sicura nella cache e il recupero dei dati tra cache di contenuti.BranchCache uses the Peer Content Caching protocol and the Retrieval Framework protocol to implement the processes that are required to ensure the secure caching and retrieval of data between content caches.

Inoltre, BranchCache gestisce le informazioni sul contenuto con lo stesso livello di sicurezza usato per la gestione e la trasmissione del contenuto effettivo.In addition, BranchCache handles content information with the same degree of security that it uses when handling and transmitting the actual content itself.

I processi e il flusso del contenutoContent flow and processes

Il flusso di informazioni sul contenuto e contenuto effettivo è suddiviso in quattro fasi:The flow of content information and actual content is divided into four phases:

  1. Processi di BranchCache: Contenuto della richiestaBranchCache processes: Request content

  2. Processi di BranchCache: Individuare il contenutoBranchCache processes: Locate content

  3. Processi di BranchCache: Recuperare il contenutoBranchCache processes: Retrieve content

  4. Processi di BranchCache: Contenuto della cacheBranchCache processes: Cache content

Nelle sezioni seguenti sono descritte tali fasi.The following sections describe these phases.

Processi di BranchCache: richiedere il contenutoBranchCache processes: Request content

Nella prima fase, il computer client nella succursale richiede il contenuto, quale un file o una pagina Web, a un server di contenuti in una posizione remota, ad esempio una sede centrale.In the first phase, the client computer in the branch office requests content, such as a file or a Web page, from a content server in a remote location, such as a main office. Il server di contenuti verifica che il computer client sia autorizzato a ricevere il contenuto richiesto.The content server verifies that the client computer is authorized to receive the requested content. Se il computer client è autorizzato e server di contenuti e client sono BranchCache-abilitata, il server di contenuti genera le informazioni sul contenuto.If the client computer is authorized and both content server and client are BranchCache-enabled, the content server generates content information.

Il server di contenuti invia quindi le informazioni sul contenuto al computer client usando lo stesso protocollo che verrebbe usato per il contenuto effettivo.The content server then sends the content information to the client computer using the same protocol as would have been used for the actual content.

Ad esempio, se il computer client richiede una pagina Web su HTTP, il server di contenuti invia le informazioni sul contenuto mediante HTTP.For example, if the client computer requested a Web page over HTTP, the content server sends the content information using HTTP. Per questo motivo, la sicurezza a livello di trasmissione assicura che il contenuto e le informazioni sul contenuto coincidano.Because of this, the wire-level security guarantees of the content and the content information are identical.

Dopo la ricezione della parte iniziale delle informazioni sul contenuto (hash dei dati + segreto di segmento), il computer client esegue le operazioni seguenti:After the initial portion of content information (Hash of Data + Segment Secret) is received, the client computer performs the following actions:

  • Usa il segreto di segmento (Kp) come chiave di crittografia (Ke).Uses the Segment Secret (Kp) as the encryption key (Ke).

  • Genera l'ID di segmento (HoHoDk) da HoD e Kp:Generates the Segment ID (HoHoDk) from the HoD and Kp:

    HoHoDk = HMAC(Kp, HoD + C), where C is the ASCII string "MS_P2P_CACHING" with NUL terminator.

La minaccia principale a questo livello è rappresentata dal rischio per il segreto di segmento, ma BranchCache crittografa i blocchi di dati di contenuto per proteggere il segreto di segmento.The primary threat at this layer is the risk to the Segment Secret, however BranchCache encrypts the content data blocks to protect the Segment Secret. A questo scopo, BranchCache usa la chiave di crittografia derivante dal segreto di segmento del segmento di contenuto all'interno del quale si trovano i blocchi di contenuto.BranchCache does this by using the encryption key that is derived from the Segment Secret of the content segment within which the content blocks are located.

Questo assicura che un'entità che non dispone del segreto server non possa individuare il contenuto effettivo in un blocco di dati.This approach ensures that an entity that is not in possession of the server secret cannot discover the actual content in a data block. Il segreto di segmento viene trattato con lo stesso grado di sicurezza del segmento non crittografato perché, conoscendo il segreto di segmento per un determinato segmento, un'entità può ottenere il segmento dai peer e quindi decrittografarlo.The Segment Secret is treated with the same degree of security as the plaintext segment itself, because knowledge of the Segment Secret for a given segment enables an entity to obtain the segment from peers and then decrypt it. La conoscenza del segreto server non produce immediatamente un particolare testo non crittografato, ma può essere usata per ricavare alcuni tipi di dati dal testo crittografato e quindi esporre alcuni dati parzialmente noti a un attacco di forza bruta volto a indovinarli.Knowledge of the Server Secret does not immediately yield any particular plaintext but can be used to derive certain types of data from the cipher text and then to possibly expose some partially known data to a brute-force guessing attack. Il segreto server deve quindi essere mantenuto riservato.The server secret, therefore, should be kept confidential.

Processi di BranchCache: individuare il contenutoBranchCache processes: Locate content

Quando ha ricevuto le informazioni sul contenuto, il computer client usa l'ID del segmento per individuare il contenuto richiesto nella cache della succursale locale, a prescindere dal fatto che tale cache sia distribuita tra computer client o si trovi in un server cache ospitata.After the content information is received by the client computer, the client uses the Segment ID to locate the requested content in the local branch office cache, whether that cache is distributed between client computers or is located on a hosted cache server.

Se il computer client è configurato per la modalità cache ospitata, è configurato con il nome computer del server cache ospitata e contatta tale server per recuperare il contenuto.If the client computer is configured for hosted cache mode, it is configured with the computer name of the hosted cache server and contacts that server to retrieve the content.

Se il computer client è configurato per la modalità cache distribuita, invece, il contenuto potrebbe essere archiviato in più cache su più computer nella succursale.If the client computer is configured for distributed cache mode, however, the content might be stored across multiple caches on multiple computers in the branch office. Prima di recuperare il contenuto, è necessario che il computer client ne rilevi la posizione.The client computer must discover where the content is located before the content is retrieved.

Quando sono configurati per la modalità cache distribuita, i computer client individuano il contenuto usando un protocollo di individuazione basato sul protocollo WS-Discovery (Web Services Dynamic Discovery).When they are configured for distributed cache mode, client computers locate content by using a discovery protocol that is based on the Web Services Dynamic Discovery (WS-Discovery) protocol. I client inviano messaggi di probe multicast WS-Discovery per individuare il contenuto memorizzato nella cache sulla rete.Clients send WS-Discovery multicast Probe messages to discover cached content over the network. I messaggi probe includono l'ID del segmento, che consente ai client di verificare se il contenuto richiesto corrisponde al contenuto memorizzato nella cache.Probe messages include the Segment ID, which enables clients to check whether the requested content matches the content stored in their cache. I client che ricevono il messaggio probe iniziale rispondono al client che esegue la query con messaggi di probe-corrispondenza unicast se l'ID del segmento corrisponde al contenuto memorizzato nella cache in locale.Clients that receive the initial Probe message reply to the querying client with unicast Probe-Match messages if the Segment ID matches content that is cached locally.

L'esito del processo di WS-Discovery dipende dal fatto che il client che esegue l'individuazione disponga delle informazioni sul contenuto corrette, fornite dal server di contenuti, per il contenuto richiesto.The success of the WS-Discovery process depends on the fact that the client that is performing the discovery has the correct content information, which was provided by the content server, for the content that it is requesting.

La minaccia principale per i dati durante la fase di richiesta del contenuto è rappresentata dalla diffusione delle informazioni, dato che l'accesso alle informazioni sul contenuto implica l'accesso autorizzato al contenuto.The main threat to data during the Request content phase is information disclosure, because access to the content information implies authorized access to content. Per limitare questo rischio, il processo di individuazione non rivela le informazioni sul contenuto, eccetto l'ID del segmento, che non rivela nulla sul segmento non crittografato in cui si trova il contenuto.To mitigate this risk, the discovery process does not reveal the content information, other than the Segment ID, which does not reveal anything about the plaintext segment that contains the content.

Inoltre, un altro computer client gestito da un utente malintenzionato sulla stessa subnet di rete può visualizzare il traffico di individuazione di BranchCache destinato all'origine del contenuto originale passando per il router.In addition, another client computer run by a malicious user on the same network subnet can see the BranchCache discovery traffic to the original content source going through the router.

Se il contenuto richiesto non si trova nella succursale, il client lo richiede direttamente al server di contenuti sul collegamento WAN.If the requested content is not found in the branch office, the client requests the content directly from the content server across the WAN link.

Il contenuto ricevuto viene aggiunto alla cache locale sul computer client o su un server cache ospitata.After the content is received, it is added to the local cache, either on the client computer or on a hosted cache server. In questo caso, le informazioni sul contenuto impediscono a un client o server cache ospitata di aggiungere alla cache locale il contenuto che non corrisponde agli hash.In this case, the content information prevents a client or hosted cache server from adding to the local cache any content that does not match the hashes. Il processo di verifica del contenuto mediante la corrispondenza degli hash assicura che venga aggiunto alla cache solo il contenuto valido e che venga preservata l'integrità della cache locale.The process of verifying content by matching hashes ensures that only valid content is added to the cache, and the integrity of the local cache is protected.

Processi di BranchCache: recuperare il contenutoBranchCache processes: Retrieve content

Quando un computer client individua il contenuto desiderato sull'host del contenuto, che è un server cache ospitata o un computer client in modalità cache distribuita, il computer client inizia il processo di recupero del contenuto.After a client computer locates the desired content on the content host, which is either a hosted cache server or a distributed cache mode client computer, the client computer begins the process of retrieving the content.

Prima di tutto, il computer client invia una richiesta all'host del contenuto per il primo blocco che richiede.First the client computer sends a request to the content host for the first block that it requires. La richiesta contiene l'ID del segmento e l'intervallo di blocchi che identificano il contenuto desiderato.The request contains the Segment ID and block range that identify the desired content. Poiché viene restituito un solo blocco, l'intervallo di blocchi contiene un unico bloccoBecause only one block is returned, the block range contains only a single block. (le richieste di blocchi multipli non sono attualmente supportate). Il client archivia inoltre la richieste nel proprio elenco locale di richieste da evadere.(Requests for multiple blocks are currently not supported.) The client also stores the request in its local Outstanding Request List.

Dopo aver ricevuto un messaggio di richiesta valido da un client, l'host del contenuto verifica se il blocco specificato nella richiesta presente nella cache di contenuti dell'host del contenuto.Upon receiving a valid request message from a client, the content host checks whether the block specified in the request exists in the content host's content cache.

Se dispone del blocco di contenuto, l'host del contenuto invia una risposta che contiene l'ID del segmento, l'ID del blocco, il blocco di dati crittografati e il vettore di inizializzazione usato per crittografare il blocco.If the content host is in possession of the content block, then the content host sends a response that contains the Segment ID, the Block ID, the encrypted data block, and the initialization vector that is used for encrypting the block.

Se non include il blocco del contenuto, l'host del contenuto invia un messaggio di risposta vuoto.If the content host is not in possession of the content block, the content host sends an empty response message. Questo indica al computer client che l'host del contenuto non dispone del blocco richiesto.This informs the client computer that the content host does not have the requested block. Un messaggio di risposta vuoto contiene l'ID del segmento e l'ID del blocco richiesto, oltre a un blocco di dati di dimensioni pari a zero.An empty response message contains the Segment ID and Block ID of the requested block, along with a zero-sized data block.

Quando il computer client riceve la risposta dall'host del contenuto, il client verifica che il messaggio corrisponda a un messaggio di richiesta nel proprio elenco di richieste da evadereWhen the client computer receives the response from the content host, the client verifies that the message corresponds to a request message in its Outstanding Request List. (l'indice dell'ID del segmento e di blocco deve corrispondere a quello di una richiesta da evadere).(The Segment ID and block index must match that of an outstanding request.)

Se il processo di verifica ha esito negativo e il computer client non dispone di un messaggio di richiesta corrispondente nel proprio elenco di richieste da evadere, il computer client ignora il messaggio.If this verification process is unsuccessful and the client computer does not have a corresponding request message in its Outstanding Request List, the client computer discards the message.

Se il processo di verifica ha esito positivo e il computer client dispone di un messaggio di richiesta corrispondente nel proprio elenco di richieste da evadere, il blocco viene decrittografato dal computer client.If this verification process is successful and the client computer has a corresponding request message in its Outstanding Request List, the client computer decrypts the block. Il client convalida quindi il blocco decrittografato a fronte dell'hash di blocco appropriato dalle informazioni sul contenuto che il client ha ottenuto inizialmente dal server di contenuti originale.The client then validates the decrypted block against the appropriate block hash from the content information that the client initially obtained from the original content server.

Se la convalida del blocco ha esito positivo, il blocco decrittografato viene memorizzato nella cache.If the block validation is successful, the decrypted block is stored in the cache.

Il processo viene ripetuto finché il client non dispone di tutti i blocchi richiesti.This process is repeated until the client has all of the required blocks.

Nota

Se in un computer non sono presenti i segmenti di contenuto completi, il protocollo di recupero determina il recupero e l'assemblaggio del contenuto da una combinazione di origini: un set di computer client in modalità cache distribuita, un server cache ospitata e, se nelle cache della succursale non è presente il contenuto completo, il server di contenuti originale nella sede centrale.If the complete segments of content do not exist on one computer, the retrieval protocol retrieves and assembles content from a combination of sources: a set of distributed cache mode client computers, a hosted cache server, and - if the branch office caches do not contain the complete content - the original content server in the main office.

Prima che BranchCache invii le informazioni sul contenuto o il contenuto, i dati vengono crittografati.Before BranchCache sends content information or content, the data is encrypted. BranchCache crittografa il blocco nel messaggio di risposta.BranchCache encrypts the block in the response message. In Windows 7, l'algoritmo di crittografia predefinito che utilizza BranchCache è AES-128, la chiave di crittografia è Ke e la dimensione della chiave è 128 bit, come previsto dall'algoritmo di crittografia.In Windows 7, the default encryption algorithm that BranchCache uses is AES-128, the encryption key is Ke, and the key size is 128 bits, as dictated by the encryption algorithm.

BranchCache genera un vettore di inizializzazione adatto all'algoritmo di crittografia e usa la chiave di crittografia per crittografare il blocco.BranchCache generates an initialization vector that is suitable for the encryption algorithm and uses the encryption key to encrypt the block. BranchCache registra quindi l'algoritmo di crittografia e il vettore di inizializzazione nel messaggio.BranchCache then records the encryption algorithm and the initialization vector in the message.

La chiave di crittografia non viene mai scambiata, condivisa o inviata tra i server e i client.Servers and clients never exchange, share, or send each other the encryption key. Il client riceve la chiave di crittografia dal server di contenuti che ospita il contenuto di origine.The client receives the encryption key from the content server that hosts the source content. Quindi, decrittografa il blocco usando l'algoritmo di crittografia e il vettore di inizializzazione che ha ricevuto dal server.Then, using the encryption algorithm and initialization vector it received from the server, it decrypts the block. Nel protocollo di download non è incorporata alcuna autenticazione o autorizzazione esplicita.There is no other explicit authentication or authorization built into the download protocol.

Minacce per la sicurezzaSecurity threats

Le minacce principali per la sicurezza a questo livello includono:The primary security threats at this layer include:

  • Manomissione dei dati:Tampering with data:

    Un client che fornisce i dati a un richiedente manomette i dati.A client serving data to a requester tampers with the data. Il modello di sicurezza di BranchCache usa gli hash per verificare che i dati non siano stati alterati né dal client, né dal server.The BranchCache security model uses hashes to confirm that neither the client nor the server has altered the data.

  • Diffusione di informazioni:Information disclosure:

    BranchCache invia il contenuto crittografato ai client che specificano l'ID di segmento appropriato.BranchCache sends encrypted content to any client that specifies the appropriate Segment ID. Gli ID di segmento sono pubblici, quindi qualsiasi client può ricevere il contenuto crittografato.Segment IDs are public, so any client can receive encrypted content. Tuttavia, se un utente malintenzionata ottiene il contenuto crittografato, deve conoscere la chiave di crittografia per decrittografare il contenuto.However, if a malicious user obtains encrypted content, they must know the encryption key to decrypt the content. Il protocollo di livello superiore esegue l'autenticazione e fornisce le informazioni sul contenuto al client autenticato e autorizzato.The upper layer protocol performs authentication and then gives the content information to the authenticated and authorized client. La sicurezza delle informazioni sul contenuto è equivalente alla sicurezza fornita al contenuto stesso e BranchCache non espone mai le informazioni sul contenuto.The security of the content information is equivalent to the security provided to the content itself, and BranchCache never exposes the content information.

    L'autore di un attacco esamina le trasmissioni per ottenere il contenuto.An attacker sniffs the wire to obtain the content. BranchCache crittografa tutti i trasferimenti tra i client mediante AES128, dove la chiave privata è Ke, impedendo l'esame dei dati dalle trasmissioni.BranchCache encrypts all transfers between clients by using AES128 where the secret key is Ke, preventing data from being sniffed from the wire. Le informazioni sul contenuto scaricate dal server di contenuti sono protette esattamente come verrebbero protetti i dati stessi, quindi l'uso di BranchCache non comporta né un aumento né una riduzione della protezione contro la diffusione delle informazioni.Content information that is downloaded from the content server is protected in exactly the same way as the data itself would have been and is hence no more or less protected from information disclosure than if BranchCache had not been used at all.

  • Denial of Service:Denial of Service:

    Un client viene sovraccaricato di richieste di dati.A client is overwhelmed by requests for data. Nei protocolli di BranchCache sono incorporati contatori e timer di gestione delle code per impedire il sovraccarico dei client.BranchCache protocols incorporate queue management counters and timers to prevent clients from being overloaded.

Processi di BranchCache: memorizzare contenuti nella cacheBranchCache processes: Cache content

Nei computer client in modalità cache distribuita o nei server cache ospitata ubicati nelle succursali, le cache di contenuti si arricchiscono nel tempo, man mano che viene recuperato il contenuto sui collegamenti WAN.On distributed cache mode client computers and hosted cache servers that are located in branch offices, content caches are built up over time as content is retrieved over WAN links.

Quando i computer client sono configurati con la modalità cache ospitata, aggiungono il contenuto alla propria cache locale e offrono anche dati al server cache ospitata.When client computers are configured with hosted cache mode, they add content to their own local cache and also offer data to the hosted cache server. Il protocollo cache ospitata fornisce un meccanismo che consente ai client di informare il server cache ospitata della disponibilità di contenuti e segmenti.The Hosted Cache Protocol provides a mechanism for clients to inform the hosted cache server about content and segment availability.

Per caricare il contenuto nel server cache ospitata, il client comunica al server di disporre di un segmento disponibile.To upload content to the hosted cache server, the client informs the server that it has a segment that is available. Il server cache ospitata recupera quindi tutte le informazioni sul contenuto associate al segmento offerto e scarica i blocchi di cui ha effettivamente bisogno all'interno del segmento.The hosted cache server then retrieves all of the content information that is associated with the offered segment, and downloads the blocks within the segment that it actually needs. Questo processo viene ripetuto finché il client non ha altri segmenti da offrire al server cache ospitata.This process is repeated until the client has no more segments to offer the hosted cache server.

Per aggiornare il server cache ospitata usando il protocollo cache ospitata, devono essere soddisfatti i seguenti requisiti:To update the hosted cache server by using the Hosted Cache Protocol, the following requirements must be met:

  • Il computer client deve contenere un set di blocchi all'interno di un segmento che può offrire al server cache ospitata.The client computer is required to have a set of blocks within a segment that it can offer to the hosted cache server. Il client deve fornire le informazioni sul contenuto per il segmento offerto, che comprendono l'ID del segmento, l'hash dei dati del segmento, il segreto di segmento e un elenco degli hash di blocco contenuti nel segmento.The client must supply content information for the offered segment; this is comprised of the Segment ID, the segment Hash of Data, the Segment Secret, and a list of all block hashes that are contained within the segment.

  • Per la cache ospitata sono necessari server che eseguono Windows Server 2008 R2, un server cache ospitata, certificato e chiave privata associata e l'autorità di certificazione (CA) che ha emesso il certificato deve essere considerato attendibile dai computer client nella succursale.For hosted cache servers that are running Windows Server 2008 R2, a hosted cache server certificate and associated private key are required, and the certification authority (CA) that issued the certificate must be trusted by client computers in the branch office. Questo consente al client e al server di partecipare all'autenticazione server HTTPS.This allows the client and server to participate successfully in HTTPS Server authentication.

    Importante

    I server cache ospitata che eseguono Windows Server 2016, Windows Server 2012 R2 o Windows Server 2012 non richiedono un certificato del server cache ospitata e la chiave privata associata.Hosted cache servers that are running Windows Server 2016, Windows Server 2012 R2 , or Windows Server 2012 do not require a hosted cache server certificate and associated private key.

  • Il computer client è configurato con il nome computer del server cache ospitata e con il numero di porta TCP (Transmission Control Protocol) su cui il server cache ospitata è in ascolto del traffico di BranchCache.The client computer is configured with the computer name of the hosted cache server and the Transmission Control Protocol (TCP) port number upon which the hosted cache server is listening for BranchCache traffic. Certificato del server cache ospitata è associato a questa porta.The hosted cache server's certificate is bound to this port. Il nome computer del server cache ospitata può essere un nome di dominio completo (FQDN), se il server cache ospitata è un computer membro di dominio; oppure può essere il nome NetBIOS del computer se il server cache ospitata non è un membro di dominio.The computer name of the hosted cache server can be a fully qualified domain name (FQDN), if the hosted cache server is a domain member computer; or it can be the NetBIOS name of the computer if the hosted cache server is not a domain member.

  • Il computer client ascolta attivamente le richieste di blocchi in arrivo.The client computer actively listens for incoming block requests. La porta di ascolto viene passata nell'ambito del messaggio di offerta dal cliente al server cache ospitata.The port on which it is listening is passed as part of the offer messages from the client to the hosted cache server. In questo modo, il server cache ospitata può usare i protocolli di BranchCache per connettersi al computer client per recuperare i blocchi di dati del segmento.This enables the hosted cache server to use BranchCache protocols to connect to the client computer to retrieve data blocks in the segment.

  • Il server cache ospitata inizia ad ascoltare le richieste HTTP in arrivo durante l'inizializzazione.The hosted cache server starts to listen for incoming HTTP requests when it is initialized.

  • Se la configurazione del server cache ospitata prevede l'autenticazione dei computer client, sia il client che il server cache ospitata devono supportare l'autenticazione HTTPS.If the hosted cache server is configured to require client computer authentication, both the client and the hosted cache server are required to support HTTPS authentication.

Popolamento della cache in modalità cache ospitataHosted cache mode cache population

Il processo di aggiunta di contenuto da memorizzare nella cache del server cache ospitata in una succursale inizia quando il client invia una richiesta INITIAL_OFFER_MESSAGE, che include l'ID del segmento.The process of adding content to the hosted cache server's cache in a branch office begins when the client sends an INITIAL_OFFER_MESSAGE, which includes the Segment ID. L'ID del segmento nella richiesta INITIAL_OFFER_MESSAGE viene utilizzato per recuperare il segmento corrispondente Hash dei dati, elenco di hash di blocco e il segreto di segmento dalla cache dei blocchi del server cache ospitata.The Segment ID in the INITIAL_OFFER_MESSAGE request is used to retrieve the corresponding segment Hash of Data, list of block hashes, and the Segment Secret from the hosted cache server's block cache. Se il server cache ospitata dispone già di tutte le informazioni sul contenuto per un particolare segmento, la risposta al messaggio INITIAL_OFFER_MESSAGE sarà OK, senza alcuna richiesta di download di blocchi.If the hosted cache server already has all the content information for a particular segment, the response to the INITIAL_OFFER_MESSAGE will be OK, and no request to download blocks occurs.

Se il server cache ospitata non dispone di tutti i blocchi di dati offerti associati agli hash di blocco nel segmento, la risposta al messaggio INITIAL_OFFER_MESSAGE sarà INTERESTED.If the hosted cache server does not have all of the offered data blocks that are associated with the block hashes in the segment, the response to the INITIAL_OFFER_MESSAGE is INTERESTED. Il client invia quindi un SEGMENT_INFO_MESSAGE che descrive il singolo segmento offerto.The client then sends a SEGMENT_INFO_MESSAGE that describes the single segment that is being offered. Il server cache ospitata risponde con un messaggio di OK e avvia il download dei blocchi mancanti dal computer client offerente.The hosted cache server responds with an OK message and initiates the download of the missing blocks from the offering client computer.

L'hash dei dati del segmento, l'elenco di hash di blocco e il segreto di segmento consentono di verificare che il contenuto in fase di download non sia stato manomesso e alterato in qualsiasi modo.The segment Hash of Data, list of block hashes, and the segment secret are used to ensure that the content that is being downloaded has not been tampered with or otherwise altered. I blocchi scaricati vengono quindi aggiunti alla cache di blocco del server cache ospitata.The downloaded blocks are then added to the hosted cache server's block cache.

Sicurezza della cacheCache Security

In questa sezione vengono fornite informazioni su come BranchCache protegge i dati memorizzati nella cache nei computer client e nei server cache ospitata.This section provides information on how BranchCache secures cached data on client computers and on hosted cache servers.

Sicurezza della cache nei computer clientClient computer cache security

La minaccia principale per i dati archiviati in BranchCache è la manomissione.The greatest threat to data stored in the BranchCache is tampering. Se l'autore di un attacco può manomettere il contenuto e le informazioni sul contenuto archiviati nella cache, è possibile che questi vengano usati per tentare di avviare un attacco contro i computer che usano BranchCache.If an attacker can tamper with content and content information that is stored in the cache, then it might be possible to use this to try and launch an attack against the computers that are using BranchCache. Un attacco può iniziare con l'inserimento di software dannoso al posto di altri dati.Attackers can initiate an attack by inserting malicious software in place of other data. BranchCache limita questo rischio convalidando tutto il contenuto mediante gli hash di blocco presenti nelle informazioni sul contenuto.BranchCache mitigates this threat by validating all content using block hashes found in the content information. Se l'autore di un attacco tenta di manometterli, questi dati vengono ignorati e sostituiti con dati validi tratti dalla fonte originale.If an attacker attempts to tamper with this data, it is discarded and is replaced with valid data from the original source.

Una minaccia secondaria per i dati archiviati in BranchCache è la diffusione delle informazioni.A secondary threat to data stored in the BranchCache is information disclosure. In modalità cache distribuita, il client memorizza nella cache solo il contenuto che ha richiesto. Questi dati, tuttavia, vengono archiviati in testo non crittografato e potrebbero essere a rischio.In distributed cache mode, the client caches only the content that it has requested itself; however, that data is stored in clear text, and might be at risk. Per limitare l'accesso alla cache al solo servizio BranchCache, la cache locale è protetta mediante le autorizzazioni del file system specificate in un elenco ACL.To help restrict cache access to the BranchCache Service only, the local cache is protected by file system permissions that are specified in an ACL.

Sebbene l'ACL consenta di evitare che utenti non autorizzati accedano alla cache, un utente con privilegi di amministratore può accedere alla cache modificando manualmente le autorizzazioni specificate nell'ACL.Although the ACL is effective in preventing unauthorized users from accessing the cache, it is possible for a user with administrative privileges to gain access to the cache by manually changing the permissions that are specified in the ACL. BranchCache non offre protezione contro l'uso dannoso di un account amministrativo.BranchCache does not protect against the malicious use of an administrative account.

I dati memorizzati nella cache di contenuti non sono crittografati, quindi per contrastare la fuga di dati è possibile usare tecnologie di crittografia come BitLocker o Encrypting File System (EFS).Data that is stored in the content cache is not encrypted, so if data leakage is a concern, you can use encryption technologies such as BitLocker or the Encrypting File System (EFS). La cache locale usata da BranchCache non aumenta la minaccia di diffusione di informazioni cui è sottoposto un computer nella succursale; la cache contiene solo copie dei file che risiedono altrove sul disco in forma non crittografata.The local cache that is used by BranchCache does not increase the information disclosure threat borne by a computer in the branch office; the cache contains only copies of files that reside unencrypted elsewhere on the disk.

Crittografare l'intero disco è particolarmente importante negli ambienti in cui la sicurezza fisica dei client è difficile da assicurare.Encrypting the entire disk is particularly important in environments in which the physical security of the clients is difficult to ensure. Consente ad esempio di proteggere i dati sensibili sui computer mobili che potrebbero essere rimossi dall'ambiente della succursale.For example, encrypting the entire disk helps to secure sensitive data on mobile computers that might be removed from the branch office environment.

Sicurezza della cache nei server cache ospitataHosted cache server cache security

In modalità cache ospitata, la minaccia principale per la sicurezza del server cache ospitata è rappresentata dalla diffusione di informazioni.In hosted cache mode, the greatest threat to the security of the hosted cache server is information disclosure. BranchCache in un ambiente cache ospitata si comporta in modo analogo alla modalità cache distribuita, con le autorizzazioni del file system a protezione dei dati memorizzati nella cache.BranchCache in a hosted cache environment behaves in a similar manner to distributed cache mode, with file system permission protecting the cached data. La differenza consiste nel fatto che il server cache ospitata memorizza tutto il contenuto richiesto da qualsiasi computer abilitato per BranchCache nella succursale, anziché solo i dati richiesti da un singolo client.The difference is that the hosted cache server stores all of the content that any BranchCache-enabled computer in the branch office requests, rather than just the data that a single client requests. Un'intrusione non autorizzata in questa cache può avere conseguenze molto più gravi poiché il rischio coinvolge una quantità di dati decisamente superiore.The consequences of unauthorized intrusion into this cache could be much more serious, because much more data is at risk.

In un ambiente cache ospitata in cui il server cache ospitata è in esecuzione Windows Server 2008 R2, è consigliabile se uno qualsiasi dei client nella succursale possono accedere ai dati sensibili sul collegamento WAN usare tecnologie di crittografia come BitLocker o EFS.In a hosted cache environment where the hosted cache server is running Windows Server 2008 R2, the use of encryption technologies such as BitLocker or EFS is advisable if any of the clients in the branch office can access sensitive data across the WAN link. È necessario anche per evitare l'accesso fisico alla cache ospitata poiché la crittografia del disco funziona solo se il computer è spento nel momento in cui l'autore dell'attacco ottiene l'accesso fisico.It is also necessary to prevent physical access to the hosted cache, because disk encryption works only when the computer is turned off when the attacker gains physical access. Se il computer è acceso o in modalità sospensione, la crittografia del disco offre una protezione bassa.If the computer is turned on or is in sleep mode, then disk encryption offers little protection.

Nota

I server cache ospitata che eseguono Windows Server 2016, Windows Server 2012 R2 o Windows Server 2012 crittografano tutti i dati nella cache per impostazione predefinita, in modo che non è necessario usare tecnologie di crittografia supplementari.Hosted cache servers that are running Windows Server 2016, Windows Server 2012 R2, or Windows Server 2012 encrypt all data in the cache by default, so the use of additional encryption technologies is not required.

Anche se un client è configurato in modalità cache ospitata, i dati vengono comunque memorizzati nella cache in locale e può essere utile adottare alcune misure di protezione della cache locale in aggiunta alla cache sul server cache ospitata.Even if a client is configured in hosted cache mode, it will still cache data locally, and you might want to take steps to protect the local cache in addition to the cache on the hosted cache server.