BranchCache что это за служба? (PeerDistSvc). Branchcache служба


что из себя представляет служба BranchCache

Любой более-менее продвинутый пользователь Windows 7 знает про оснастку «Включение или отключение компонентов Windows» и наверняка находил в ней новый компонент — «BranchCache». Естественно, что с первого взгляда это название ни о чем не скажет, а между тем данная служба может очень пригодиться на предприятиях с определенным количеством компьютеров и может стать необычайно полезна в бизнесе.

Так что же такое BranchCache? BranchCache — это технология кэширования, позволяющая оптимизировать (существенно сократить) сетевой трафик, который передается по каналам WAN. Поддерживается кэширование трафика HTTP и SMB в связке Windows 7 (Ultimate или Enterprise — в других изданиях данная служба не работает) на клиентском компьютере + Windows Server 2008 R2 на серверах. Ключевое отличие этой технологий кэширования от известных технологий «Offline Files» и «кэш ISA Server» заключается в том, что информация передается клиентскому приложению из кэшированной области только в оригинальном виде. Таким образом, если пользователь попытается открыть какой-либо документ, расположенный на файлсервере (например, работник отделения запросит диаграмму изменения средней зарплаты за год по предприятию), служба BranchCache его компьютера (клиент) запросит информацию о файле документа на сервере и проверит, присутствует ли этот файл в локальном кэше — в случае его отсутствия файл будет загружен с сервера. Обращение к серверу происходит и в случае, если данный файл есть в локальном кэше — для проверки наличия изменений по сравнению с оригинальным файлом, расположенным на сервере (измененный файл так же будет скачан с сервера). Данные из локального кэша используются только при полном совпадении оригинала с кэшированным файлом. Такова сущность алгоритма обработки запросов с применением BranchCache — данные в локальном кэше всегда актуальны.

Сама по себе проверка «оригинальности» файла осуществляется по хэш-листу, составленному на основе алгоритма SHA-256, естественно, хранящемуся на сервере. В связи с тем, что размер такого хэша данных примерно в 2000 раз меньше объема самих данных, нагрузка на канал WAN при обмене метаданными получается минимальной.

Существует 2 режима работы службы BranchCache:

1. Распределенный кэш (Distributed cache) — данные, скачанные с удаленного сервера, кэшируются на первом в IP-подсети компьютере с Windows 7;

2. Выделенный кэш (Hosted cache) — кэшированные данные сосредоточены на сервере со сконфигурированным соответствующим образом Windows Server 2008 R2.

Следует отметить, что конкретная клиентская машина с Windows 7 не может функционировать одновременно и в одном, и в другом режиме. Распределенный режим является рекомендуемым для небольших отделений, с компьютерами, расположенными в одной подсети, но нужно помнить, что при отключении клиентского компьютера с кэшем его кэшированные данные станут недоступными для других клиентов отделения. Выделенный кэш способен обеспечить более высокую доступность данных, ведь сервер, в отличие от клиента, работает постоянно (без отключения), однако, в таком случае, в отделении должен быть еще один компьютер — с Windows Server 2008 R2 «на борту».

Исходя из вышеописанного можно сделать логичный вывод, что BranchCache как минимум целесообразно применять для связки клиент-сервер в организациях с отделениями и удаленными офисами, связанными между собой и главным офисом по сравнительно медленным каналам передачи данных.

Процесс настройки использования мощнейшего сетевого инструмента Windows 7 и Windows 2008 R2 — BranchCache — довольно прост. Со стороны клиента, в Windows 7, нужно всего лишь активировать соответствующий компонент в Панели управления. Для активации BranchCache на сервере следует зайти в Диспетчер сервера Windows Server 2008 R2 и включить эту службу. Обе машины рекомендуется перезагрузить.

После вышеописанных действий можно переходить к непосредственной настройке службы. По умолчанию для кэша файлов отводится всего 5% от общего пространства на диске. Это значение легко изменить, зайдя в Редактор управления групповыми политиками по адресу «Конфигурация компьютера -> Политики -> Административные шаблоны -> Сеть -> BranchCache» и выбрав подходящее значение с помощью политики «Установить параметры дискового пространства». А при активации политики «Настройка BranchCache для сетевых файлов» будет оптимизирован SMB-трафик через изменение дефолтного времени ожидания в сети.

В «чистом виде» служба BranchCache работает с протоколом BITS, известным в кругах администраторов по закачиванию обновлений операционных систем Windows. В целях безопасности может возникнуть необходимость отключения данного протокола, что можно осуществить, вызвав в меню «Выполнить» команду «gpedit.msc«, перейдя в Конфигурация компьютера -> Административные шаблоны -> Сеть -> Фоновая интеллектуальная служба передачи (BITS) и включив политику «Запретить клиенту BITS использование кэша филиалов«.

Через команду netsh выполнять настройку работы BranchCache на клиенте еще проще. Режим распределенного кэширования включается так:

netsh branchcache set service mode=distributed

Вышеприведенная команда не только включит BranchCache, а и установит для нее нужные правила брандмауэра Windows. Если используется другой файерволл, то в его настройках для службы нужно открыть порты 443, 3702 и 80. Если планируется применять режим Hosted Cache, дополнительно следует указать адрес сервера, где будет осуществляться кэширование:

netsh branchcache set service mode=hostedclient location=мой.сервер.ru

Статус работы службы BranchCache и ее установки можно проверить при помощи команды

netsh branchcache show status all

Теперь настраиваем сервер, указывая ему режим работы BranchCache:

netsh branchcache set service mode=hostedserver clientauthentication=domain

Перезапускаем сервис:

net stop peerdistsvc

и

net start peerdistsvc

С момента активации службы BranchCache весь SMB-, HTTP- и HTTPS-трафик будет кэширован. Отредактировать настройки для конкретной сетевой папки можно, вызвав окно ее свойств и в разделе «Дополнительно» на вкладке «Кэширование» установив/сняв флажок напротив опции «Включить BranchCache«.

Смотри видео на YouTube: «Что из себя представляет служба BranchCache».

Какие данные у вас будет кэшировать (уже кэширует) служба BranchCache?

3 847 просмотров

Похожие статьи:

madcash.ru

BranchCache что это за служба? (PeerDistSvc)

Всем привет Ребята, будем говорить сегодня про службу BranchCache, я постараюсь узнать для чего она и все такое. Значит покопался в интернете и выяснил, что BranchCache это технология кэширования, которая позволяет оптимизировать сетевой трафик. И даже его уменьшить, это конечно круто, я даже и не знал о таком..

Эта технология есть в Windows 7, но у меня Windows 10 и она тут тоже есть. BranchCache помогает в сетях с медленными линиями передачи, короче если соединение не очень, то BranchCache может помочь. Еще узнал что в Windows 7 только в версиях Ultimate или Enterprise работает BranchCache. Возможно это касается и Windows 10

Вот еще читаю, что для использования BranchCache нужно настроить эту технологию на обеих сторонах. То есть и у вас, и там, где это трафик будет приниматься. Есть два режима BranchCache, это распределенный кэш (distributed cache) и выделенный кэш (hosted cache), хотя вам это вряд ли интересно

В общем я не буду писать о режимах, эта инфа так бы сказать для спецов и если что ее можно найти в интернете.

У меня в Windows 10 эта служба остановлена, то есть она не работает. Мое мнение что эту службу трогать не стоит — она ну никак не сможет нагружать комп, да и она скорее у вас будет отключена. Но с другой стороны, мне кажется что если ее полностью отключить, то проблем не будет, в общем смотрите уже как вам лучше

Теперь посмотрим что к чему.. Заходим в диспетчер задач:

Далее идем на вкладку Службы, там будет список служб, вот только там она называется не BranchCache, а PeerDistSvc:

И вот тут в колонке Состояние видите, тут указано что служба Остановлена. То есть она не работает. Но посмотрим на службу внимательнее — на этой вкладке внизу нажимаем на Открыть службы:

И вот наша служба BranchCache, если ее у вас нет вначале списка, то попробуйте отсортировать список служб — нажмите на название первой колонки, то есть на Имя. Ладно, смотрите, вот эта служба:

Нажимаю по ней два раза, появилось такое окошко:

Так, что мы тут видим? PeerDistSvc это получается и есть имя службы, а BranchCache это у нас отображаемое имя. Ну там где поле Описание, то там так и написано — эта служба кэширует сетевое содержимое, то есть все понятно, все сходится. Работает служба под процессом svchost.exe, который запускается с параметром -k PeerDist. Многие службы работают под процессом svchost.exe, наверно самый главный процесс в винде. В общем все нормально тут. Теперь у вас может возникнуть вопрос, как отключить службу? Смотрите, там где Тип запуска, там вам нужно указать Отключена. И потом нажать кнопку Остановить, если служба не остановлена. Все, после этих действий служба уже не запустится. Ну а если будут глюки, то верните все как было Кстати для интереса я посмотрел тут вкладку Зависимости и вот что на ней:

Служба зависит от еще одной службы — HTTP-службы, в общем все сходится, мне просто было интересно посмотреть на эту вкладку

Ну вот и все ребята, кажется мы разобрались На этом все, удачи вам и пусть у вас все будет хорошо

990x.top

BranchCache в Windows 7 / Блог компании Microsoft / Хабрахабр

С момента выхода финальных версий Windows 7 и Windows Server 2008 R2 прошел почти год. Чем не повод еще раз вспомнить об этих ОС. Я хотел бы обратить внимание на две наиболее интересные, с моей точки зрения, возможности новых Windows: BranchCache и DirectAccess. В этой статье речь пойдет о BranchCache.

Что такое BranchCache

BranchCache – технология кэширования, встроенная в Windows 7 и Windows Server 2008 R2, и призванная оптимизировать (сократить) сетевой трафик, передаваемый по WAN-каналам связи. Соответственно, основная сфера применения BranchCache – организации с филиалами и удаленными офисами, которые связаны между собой и центральным офисом сравнительно медленными линиями передачи данных. BranchCache поддерживает кэширование HTTP- и SMB-трафика. При этом на клиентских компьютерах должна быть установлена Windows 7 (редакции Ultimate или Enterprise, в других редакциях BranchCache не работает), а на серверах – Windows Server 2008 R2. Таким образом, BranchCache работает только в связке Windows 7 + Windows Server 2008 R2. Если с этого места у вас не пропало желание читать дальше, давайте обсудим главные особенности рассматриваемой технологии.

Особенности BranchCache

В чем ключевое отличие BranchCache от других технологий кэширования, таких как Offline Files или кэш ISA Server? Данные возвращаются клиентскому приложению из кэша только в том случае, если оригинальные данные не изменились. Поясню на примере. Предположим, что пользователь в филиале пытается открыть с файлового сервера в центральном офисе некий документ, ну скажем, шаблон заявления об увольнении о предоставлении отпуска. Модуль BranchCache компьютера пользователя запрашивает с сервера информацию о файле и проверяет, есть ли запрашиваемый файл в локальном кэше. Если нет, то файл, разумеется, скачивается с сервера центрального офиса. Если файл уже находится в локальном кэше, то все равно происходит обращение к серверу в центральном офисе, чтобы проверить, не изменился ли оригинальный файл на сервере. Если изменился, то файл опять же скачивается с сервера. И только если оригинальный файл на сервере и файл в кэше абсолютно идентичны, используются данные из кэша. Реальный алгоритм обработки запроса сложнее, но для понимания сути, мне кажется, информации достаточно. Две важные характеристики BranchCache, которые следуют из приведенного примера. 1. Данные в BranchCache всегда актуальны. Выражаясь точнее, если приложение получает данные из кэша, технология BranchCache гарантирует, что эти данные актуальны. 2. Нет доступа к серверу – нет доступа к кэшу. Иными словами, если модуль BranchCache не может проверить идентичность оригинального и кэшированного файлов (сервер выключен, проблемы с каналом связи и пр.), то данные из кэша не используются. Ну, и стоит добавить, что работа BranchCache прозрачна для приложений и пользователей. Интерфейс Windows никак не отражает тот факт, что открытый только что пользователем документ взят из кэша. В отличие, например, от механизма Offline Files.

Метаданные

Зададимся теперь принципиальным вопросом, а именно: каким образом происходит проверка кэша и сравнение оригинальной и кэшированной информации? BranchCache использует так называемые метаданные. Запрашиваемый файл (документ на файловом сервере, html-страница на веб-сервере и пр.) разбивается на сегменты по 32 MB. Если файл меньше 32 MB, он по определению состоит из одного сегмента. Сегменты, в свою очередь, разбиваются на блоки по 64 KB. Если файл меньше 64 KB, он всегда напрямую скачивается с сервера, и BranchCache при этом не используется. Для каждого блока и сегмента по алгоритму SHA 256 вычисляется хэш. Все эти вычисления происходят на сервере с включенной поддержкой BranchCache, где располагается запрашиваемый файл. Совокупность хэш-значений сегментов и блоков образуют хэш-лист (hashlist) и служат основой метаданных файла. Именно эти метаданные и передаются на клиентский компьютер, где сравниваются с хэш-листом кэшированного файла. Размер хэша данных приблизительно в 2000 раза меньше размера самих данных, поэтому нагрузка на WAN-канал при передаче метаданных минимальна.

Разбиение на сегменты и блоки позволяет оптимизировать операции поиска и скачивания данных. Хэш сегмента является единицей поиска. Как уже было упомянуто, при обращении к файлу на удаленном сервере – в центральном офисе или другом филиале – первое, что делает модуль BranchCache клиентского компьютера, запрашивает с сервера метаданные файла. На основе полученного хэш-листа BranchCache проверяет, есть ли в локальном кэше сегменты файла. Если да, файл открывается из локального кэша. Если нет, то клиентский компьютер посылает в сеть поисковый запрос: «У кого есть сегмент с таким-то хэшем?» В зависимости от режима работы BranchCache (см. ниже) этот запрос направляется либо специально сконфигурированному серверу с Windows Server 2008 R2 в этом же филиале, либо находящимся в этой же IP-подсети компьютерам с Windows 7. В случае положительного ответа искомый сегмент данных блоками скачивается с «соседа». В этом смысле, блок – единица скачивания. Таким образом, наличие сегментов позволяет сократить количество поисковых запросов, а наличие блоков – более быстро передать запрашиваемые данные приложению.

Режимы работы BranchCache

Для использования BranchCache необходимо настроить эту технологию, как на клиенте, так и на сервере. При этом возможны два режима работы BranchCache: распределенный кэш (distributed cache) и выделенный кэш (hosted cache).

Распределенный кэш

В распределенном режиме данные кэшируются на том компьютере с Windows 7, который первым в филиале, а точнее в IP-подсети, эти данные скачал с удаленного сервера. После чего эти данные становятся доступными для других компьютеров филиала. Динамика работы BranchCache выглядит следующим образом: 1. Пользователь за компьютером в филиале пытается открыть документ с удаленного сервера. При этом компьютер устанавливает с сервером соединение и запрашивает требуемый файл так, как если бы BranchCache не было вообще. 2. Сервер авторизует клиента и проверяет, что у клиента есть соответствующие права доступа к файлу. Если прав нет, доступ к файлу отклоняется. 3. Если на сервере и клиенте сконфигурирован модуль BranchCache, сервер вместо файла возвращает метаданные, включая хэш-лист. 4. Если в локальном кэше сегменты файла отсутствуют, и скорость канала связи до сервера низкая (латентность превышает заданный порог, по умолчанию 80 мс), клиент генерирует запросы на поиск отсутствующих сегментов с помощью протокола Web Service Dynamic Discovery (WS-Discovery). Это групповые (multicast) запросы, которые распространяются только в пределах подсети, если маршрутизаторы не настроены иначе. 5. Если у кого-то есть запрашиваемые сегменты, они блоками возвращаются на клиентский компьютер. Компьютер проверяет целостность полученных блоков, сохраняет их в своем кэше и передает данные приложению. Пользователь видит открывшийся документ. 6. Если ни у кого из «соседей» нет нужных данных, они закачиваются с сервера по WAN-каналу и сохраняются в локальном кэше. Распределенный режим рекомендуется для небольших филиалов, где все машины расположены в рамках одной подсети. BranchCache на клиентских машинах легко настроить с помощью групповых политик, при этом наличие сервера Windows Server 2008 R2 не требуется. Однако надо помнить, что при выключении компьютера его кэш становится недоступным другим клиентам филиала.

Выделенный кэш

В этом режиме кэш (выделенный кэш) сосредоточен на филиальном сервере с Windows Server 2008 R2, сконфигурированном соответствующим образом. Любой компьютер с Windows 7 обращается с поисковыми запросами именно к серверу выделенным кэшем, и только к нему. Динамика такова: 1. Пользователь за компьютером в филиале пытается открыть документ с удаленного сервера. При этом компьютер устанавливает с сервером соединение и запрашивает требуемый файл так, как если бы BranchCache не было вообще. 2. Сервер авторизует клиента и проверяет, что у клиента есть соответствующие права доступа к файлу. Если прав нет, доступ к файлу отклоняется. 3. Если на сервере и клиенте сконфигурирован модуль BranchCache, сервер вместо файла возвращает метаданные, включая хэш-лист. 4. Если в локальном кэше сегменты файла отсутствуют, и скорость канала связи до сервера низкая (латентность превышает заданный порог, по умолчанию 80 мс), клиент напрямую обращается к локальному серверу с выделенным кэшем. IP-адрес или FQDN сервера с выделенным кэшем должен быть прописан в настройках клиента вручную или с помощью групповых политик. При этом, как уже понятно, запрашивается сегмент или сегменты. 5. Если данные в выделенном кэше есть, они блоками возвращаются на клиентский компьютер. Компьютер проверяет целостность полученных блоков, сохраняет их в своем кэше и передает данные приложению. Пользователь видит открывшийся документ. 6. Если же в выделенном кэше нет запрашиваемых данных, то клиент скачивает их с удаленного сервера и сохраняет в локальном кэше. 7. После чего клиент посылает серверу с выделенным кэшем пакет-оповещение о доступности новых данных для выделенного кэша. 8. Сервер посылает запрос клиенту на получение новых данных. 9. Клиент копирует блоки на сервер в выделенный кэш, чтобы этой информацией могли воспользоваться другие машины филиала. Выделенный кэш обеспечивает более высокий уровень доступности данных, поскольку в отличие от клиентских компьютеров сервер работает постоянно и не выключается. Как правило. Хотя в небольших офисах чего только не бывает. Кроме того, нет ограничений на сетевую топологию. Запрос к выделенному кэшу – это unicast запрос, который маршрутизируется обычным образом. Однако описанный режим работы предполагает наличие в филиале сервера с Windows Server 2008 R2. Завершая обзор режимов работы BranchCache, надо отметить, что эти режимы взаимоисключающие. Конкретный клиент с Windows 7 не может работать одновременно и в одном, и в другом режиме.

Поддержка HTTP

BranchCache поддерживает кэширование HTTP- и SMB-трафика. Существуют некоторые особенности, присущие рассматриваемому механизму кэширования, в контексте этих протоколов. Начнем с HTTP. Поскольку модуль BranchCache встроен только в Windows Server 2008 R2 и Windows 7, наверное уже понятно, что BranchCache для HTTP применим, только если в качестве веб-сервера используется IIS 7.5 из состава Windows Server 2008 R2. Вторая особенность связана с генерацией хэш-листов для файлов веб-сайтов. Хэш-лист для любого файла веб-сайта (html, jpg и т. д.) генерируется после первого обращения к этому файлу. Это приводит к тому, что только на третье обращение к файлу, тело файла может быть получено из BranchCache. Предположим, клиент из филиала впервые обращается к некоторой веб-странице. IIS отдает клиенту страницу по HTTP или HTTPS и генерирует для нее метаданные. Стало быть, клиент на свой запрос получил страницу, но не получил хэш-лист, а потому не может эту страницу поместить в свой или выделенный кэш. При втором обращении клиента к этой же странице IIS в ответ возвращает не данные, а имеющиеся уже теперь метаданные. Однако поскольку после первого запроса данные не были закэшированы, клиенту ничего не остается, как скачивать всю страницу заново. Но на этот раз ее можно поместить в кэш. И третий запрос к этой странице может быть обслужен из BranchCache. Наконец, в силу того, что BranchCache фактически отрабатывает до транспортных механизмов, кэширование никак не влияет на SSL и наоборот. То есть BranchCache эффективно работает как при использовании HTTP, так и при HTTPS. Кстати это в равной степени относится и к IPSec по той же причине. В этом ролике я продемонстрировал настройку и принцип работы BranchCache для HTTP.

Поддержка SMB

Объем данных на файловых серверах может быть очень большим и при высокой нагрузке вычисление хэшей оказывается весьма затратной операцией. Как следствие, в случае с SMB генерация метаданных происходит заранее. Поэтому в ответ на первый запрос клиент получает хэш-лист, и уже второе обращение к этому файлу может быть обслужено из кэша. После первичной генерации метаданные автоматически обновляются каждый раз после изменения файла. Плюс к этому у администратора есть возможность обновить хэш-лист для заданного файла или папки с помощью утилиты командной строки hashgen. На клиентской стороне BranchCache для SMB, в том числе, использует службу Offline Files. Если эту службу отключить, кэширование SMB-трафика перестанет работать. На кэширование HTTP-трафика это никак не скажется. Можно посмотреть на настройки и особенности работы BranchCache для SMB.

Приложения и данные

С точки зрения архитектуры BranchCache располагается ниже драйверов SMB и HTTP. Работа этого модуля прозрачна для приложений. Иными словами, кэширование будет работать при использовании любого приложения, которое задействует встроенный в Windows стек SMB или HTTP. Тем не менее, я бы отметил, что эффект от BranchCache во многом зависит от характера используемых данных. Поясню. Вспомним уже рассмотренный пример, когда пользователь в филиале открывает с удаленного сервера документ. Клиент получает с сервера хэш-лист и закачивает тело файла либо с удаленного сервера, либо из BranchCache (своего или «соседского»). Что будет, если пользователь меняет содержимое этого документа и закрывает его с сохранением изменений? Весь файл сохраняется на удаленном сервере! Раз изменился файл, значит необходимо пересчитать хэш-лист, а этим занимает серверная сторона, поэтому сохранять модифицированный файл сразу в кэш нельзя. Если пользователь тут же попытается открыть файл заново, то согласно рассмотренному алгоритму, клиентский компьютер получит с сервера обновленные метаданные, и ничего не останется, как полностью скачивать тело файла с сервера. Вывод простой: BranchCache даст ощутимый эффект для относительно статичных данных.

Безопасность

Тема безопасности BranchCache вполне заслуживает отдельного топика, поэтому если читателям Хабра будет интересно, я готов написать о безопасности BranchCache более подробно. Пока же хотел бы отметить лишь несколько важных моментов. Во-первых, BranchCache не предусматривает каких-либо специальных защитных мер при передаче данных с удаленного сервера в филиал. Если, например, файл скачивается по HTTP, а не HTTPS, то тело файла передается в открытом виде, и BranchCache со своей стороны никакого шифрования для данных не добавляет. Во-вторых, сам по себе кэш, то есть файл на жестком диске, внутри которого хранятся кэшированные блоки, не шифруется. Если нужны дополнительные меры защиты, можно воспользоваться соответствующими средствами, например, встроенными в Windows EFS или BitLocker. И наконец, механизмы безопасности BranchCache вступают в силу при обмене информацией с «соседними» компьютерами или сервером с выделенным кэшем. Все запросы и ответы в рамках такого обмена шифруются, чтобы предотвратить намеренную подстановку некорректных данных со стороны злоумышлинника.

Подводя итоги, хотелось бы еще раз подчеркнуть, BranchCache: — снижает нагрузку на WAN-каналы, связывающие филиалы предприятия, и сокращает соответствующие расходы; — повышает скорость отклика приложений в филиалах; — является встроенной возможностью Windows 7 и Windows Server 2008 R2 и управляется штатными средставми.

habr.com

Технология BranchCache в Windows

Что такое BranchCache?

BranchCache — это одно из новшеств операционной системы Windows 7, а так же серверной ОС Windows Server 2008 R2. Так же данная технология доступна на более поздних системах линейки Windows. Данная технология ускоряет доступ из филиалов компании к файловым или веб-серверам, которые расположены в головном офисе. Выигрыш в скорости доступа связан с тем, что однажды считанные данные из головного офиса сохраняются в кэше локальной сети филиала. При следующем запросе пользователь получит данные из кэша в локальной сети. А скорость доступа к ресурсам в локальной сети много выше, чем скорость обращения к удаленным файлам, к которым необходимо достучаться через относительно медленное Интернет-соединение.

Как работает технология BranchCache?

Технология BranchCache работает в следующей последовательности:

  1. При запросе к удаленному серверу компьютер клиента проверяет, поддерживает ли сервер технологию BranchCache. Если сервер не поддерживает данную технологию, начинается передача данных с удаленного сервера до конечного пользователя. Если сервер поддерживает данную технологию, то выполняется следующий пункт.
  2. Технология BranchCache призвана улучшить производительность за счет более быстрого доступа к ресурсом. Поэтому данная технология срабатывает только тогда, когда такое вмешательство необходимо. Например, когда задержка превышает пороговое значение. Так, по умолчанию технология BranchCache начинает работать тогда, когда пороговое значение задержки превышает 80 миллисекунд. Именно данная проверка осуществляется на этом пункте.
  3. Если сервер поддерживает технологию BranchCache и задержка выше порогового значения, то клиент начинает поиск закэшированных данных в локальной сети.
    1. Если запрашиваемых данных нет, то клиент начинает скачивать эти данные с головного офиса. Скаченные файлы остаются в кэше BranchCache.
    2. Если запрашиваемые данные хранятся в кэше локальной сети, то происходит его сверка с оригиналом. Если файлы идентичны, клиент скачивает данные с локальной сети. Если файлы различаются, то клиент получает их от головного сервера и сохраняет полученные данные в кэше.

Режимы работы технологии BranchCache

Технология BranchCache способна работать в двух режимах:

  1. Режим хост-кэша.
  2. Режим распределенного кэша.

В зависимости от режима работы технологии BranchCache отличается и место хранения кэша BranchCache. В первом случае, весь кэш хранится на сервере, который расположен в филиале. На сервере должна быть установлена операционная система Windows Server R2 или позднее и настроена должным образом. Все данные, которые клиент получает из головного офиса, в скором времени переползают в кэш данного сервера. И в случае совпадения оригинала с копией в кэше, пользователь получит данные с локального сервера, а не с удаленного.

Если же филиал работает в режиме распределенного кэша, то весь кэш хранится на локальных машинах. Причем на каждой машине остаются те данные, которые были скачены непосредственно этой машиной. При каждом запросе к головному серверу, клиент опрашивает все компьютеры в локальной сети на предмет наличия вызываемого файла. Если он имеется, происходит сверка. Если сверка дает добро, то соседский комп передает нужную информацию клиенту.

На каких операционных системах есть технология BranchCache?

Я уже отвечал на данный вопрос, но сейчас отвечу более точно. Технология BranchCacheдоступна на серверах под управлением Windows Server R2 или позднее. Если в филиале нет такого сервера или в целях производительности не хочется навешивать на сервер еще одну задачу, то необходимо воспользоваться режимом распределенного кэша.

Технология BranchCache так же доступна на клиентских операционных системах Windows 7 Enterprize и Ultimate, а так же на более поздних системах, таких как Windows 8. При этом сохраняется тенденция, по которой данная технология доступна только на двух самых «продвинутых» изданиях. Независимо от того, в каком режиме работает BranchCache, работать он будет только на этих операционных системах.

Когда имеет смысл использовать технологию BranchCache?

Как уже говорилось, технология BranchCache работает только на файловых или веб-серверах. А все потому, что использование кэша актуально только в тех случаях, когда запрашиваются относительно статические файлы. Идеальное использование BranchCache — его использование на развлекательном файл-сервере. Музыка, кино, изображения и игры — это то, что не меняется со времени их появления на сервере. А значит соответствующий кэш в филиале будет обновляться очень редко.

about-windows.ru

BranchCache в Windows 7 — Oh, MSBRO !

С момента выхода финальных версий Windows 7 и Windows Server 2008 R2 прошел почти год. Чем не повод еще раз вспомнить об этих ОС. Я хотел бы обратить внимание на две наиболее интересные, с моей точки зрения, возможности новых Windows: BranchCache и DirectAccess. В этой статье речь пойдет о BranchCache.

Что такое BranchCache

BranchCache – технология кэширования, встроенная в Windows 7 и Windows Server 2008 R2, и призванная оптимизировать (сократить) сетевой трафик, передаваемый по WAN-каналам связи. Соответственно, основная сфера применения BranchCache – организации с филиалами и удаленными офисами, которые связаны между собой и центральным офисом сравнительно медленными линиями передачи данных.BranchCache поддерживает кэширование HTTP- и SMB-трафика. При этом на клиентских компьютерах должна быть установлена Windows 7 (редакции Ultimate или Enterprise, в других редакциях BranchCache не работает), а на серверах – Windows Server 2008 R2. Таким образом, BranchCache работает только в связке Windows 7 + Windows Server 2008 R2. Если с этого места у вас не пропало желание читать дальше, давайте обсудим главные особенности рассматриваемой технологии.

Особенности BranchCache

В чем ключевое отличие BranchCache от других технологий кэширования, таких как Offline Files или кэш ISA Server? Данные возвращаются клиентскому приложению из кэша только в том случае, если оригинальные данные не изменились. Поясню на примере. Предположим, что пользователь в филиале пытается открыть с файлового сервера в центральном офисе некий документ, ну скажем, шаблон заявления об увольнении о предоставлении отпуска. Модуль BranchCache компьютера пользователя запрашивает с сервера информацию о файле и проверяет, есть ли запрашиваемый файл в локальном кэше. Если нет, то файл, разумеется, скачивается с сервера центрального офиса. Если файл уже находится в локальном кэше, то все равно происходит обращение к серверу в центральном офисе, чтобы проверить, не изменился ли оригинальный файл на сервере. Если изменился, то файл опять же скачивается с сервера. И только если оригинальный файл на сервере и файл в кэше абсолютно идентичны, используются данные из кэша. Реальный алгоритм обработки запроса сложнее, но для понимания сути, мне кажется, информации достаточно.Две важные характеристики BranchCache, которые следуют из приведенного примера.1. Данные в BranchCache всегда актуальны. Выражаясь точнее, если приложение получает данные из кэша, технология BranchCache гарантирует, что эти данные актуальны.2. Нет доступа к серверу – нет доступа к кэшу. Иными словами, если модуль BranchCache не может проверить идентичность оригинального и кэшированного файлов (сервер выключен, проблемы с каналом связи и пр.), то данные из кэша не используются.Ну, и стоит добавить, что работа BranchCache прозрачна для приложений и пользователей. Интерфейс Windows никак не отражает тот факт, что открытый только что пользователем документ взят из кэша. В отличие, например, от механизма Offline Files.

Метаданные

Зададимся теперь принципиальным вопросом, а именно: каким образом происходит проверка кэша и сравнение оригинальной и кэшированной информации? BranchCache использует так называемые метаданные. Запрашиваемый файл (документ на файловом сервере, html-страница на веб-сервере и пр.) разбивается на сегменты по 32 MB. Если файл меньше 32 MB, он по определению состоит из одного сегмента. Сегменты, в свою очередь, разбиваются на блоки по 64 KB. Если файл меньше 64 KB, он всегда напрямую скачивается с сервера, и BranchCache при этом не используется. Для каждого блока и сегмента по алгоритму SHA 256 вычисляется хэш. Все эти вычисления происходят на сервере с включенной поддержкой BranchCache, где располагается запрашиваемый файл. Совокупность хэш-значений сегментов и блоков образуют хэш-лист (hashlist) и служат основой метаданных файла. Именно эти метаданные и передаются на клиентский компьютер, где сравниваются с хэш-листом кэшированного файла. Размер хэша данных приблизительно в 2000 раза меньше размера самих данных, поэтому нагрузка на WAN-канал при передаче метаданных минимальна.

Разбиение на сегменты и блоки позволяет оптимизировать операции поиска и скачивания данных. Хэш сегмента является единицей поиска. Как уже было упомянуто, при обращении к файлу на удаленном сервере – в центральном офисе или другом филиале – первое, что делает модуль BranchCache клиентского компьютера, запрашивает с сервера метаданные файла. На основе полученного хэш-листа BranchCache проверяет, есть ли в локальном кэше сегменты файла. Если да, файл открывается из локального кэша. Если нет, то клиентский компьютер посылает в сеть поисковый запрос: «У кого есть сегмент с таким-то хэшем?» В зависимости от режима работы BranchCache (см. ниже) этот запрос направляется либо специально сконфигурированному серверу с Windows Server 2008 R2 в этом же филиале, либо находящимся в этой же IP-подсети компьютерам с Windows 7. В случае положительного ответа искомый сегмент данных блоками скачивается с «соседа». В этом смысле, блок – единица скачивания. Таким образом, наличие сегментов позволяет сократить количество поисковых запросов, а наличие блоков – более быстро передать запрашиваемые данные приложению.

Режимы работы BranchCache

Для использования BranchCache необходимо настроить эту технологию, как на клиенте, так и на сервере. При этом возможны два режима работы BranchCache: распределенный кэш (distributed cache) и выделенный кэш (hosted cache).

Распределенный кэш

В распределенном режиме данные кэшируются на том компьютере с Windows 7, который первым в филиале, а точнее в IP-подсети, эти данные скачал с удаленного сервера. После чего эти данные становятся доступными для других компьютеров филиала. Динамика работы BranchCache выглядит следующим образом:1. Пользователь за компьютером в филиале пытается открыть документ с удаленного сервера. При этом компьютер устанавливает с сервером соединение и запрашивает требуемый файл так, как если бы BranchCache не было вообще.2. Сервер авторизует клиента и проверяет, что у клиента есть соответствующие права доступа к файлу. Если прав нет, доступ к файлу отклоняется.3. Если на сервере и клиенте сконфигурирован модуль BranchCache, сервер вместо файла возвращает метаданные, включая хэш-лист.4. Если в локальном кэше сегменты файла отсутствуют, и скорость канала связи до сервера низкая (латентность превышает заданный порог, по умолчанию 80 мс), клиент генерирует запросы на поиск отсутствующих сегментов с помощью протокола Web Service Dynamic Discovery (WS-Discovery). Это групповые (multicast) запросы, которые распространяются только в пределах подсети, если маршрутизаторы не настроены иначе.5. Если у кого-то есть запрашиваемые сегменты, они блоками возвращаются на клиентский компьютер. Компьютер проверяет целостность полученных блоков, сохраняет их в своем кэше и передает данные приложению. Пользователь видит открывшийся документ.6. Если ни у кого из «соседей» нет нужных данных, они закачиваются с сервера по WAN-каналу и сохраняются в локальном кэше.Распределенный режим рекомендуется для небольших филиалов, где все машины расположены в рамках одной подсети. BranchCache на клиентских машинах легко настроить с помощью групповых политик, при этом наличие сервера Windows Server 2008 R2 не требуется. Однако надо помнить, что при выключении компьютера его кэш становится недоступным другим клиентам филиала.

Выделенный кэш

В этом режиме кэш (выделенный кэш) сосредоточен на филиальном сервере с Windows Server 2008 R2, сконфигурированном соответствующим образом. Любой компьютер с Windows 7 обращается с поисковыми запросами именно к серверу выделенным кэшем, и только к нему. Динамика такова:1. Пользователь за компьютером в филиале пытается открыть документ с удаленного сервера. При этом компьютер устанавливает с сервером соединение и запрашивает требуемый файл так, как если бы BranchCache не было вообще.2. Сервер авторизует клиента и проверяет, что у клиента есть соответствующие права доступа к файлу. Если прав нет, доступ к файлу отклоняется.3. Если на сервере и клиенте сконфигурирован модуль BranchCache, сервер вместо файла возвращает метаданные, включая хэш-лист.4. Если в локальном кэше сегменты файла отсутствуют, и скорость канала связи до сервера низкая (латентность превышает заданный порог, по умолчанию 80 мс), клиент напрямую обращается к локальному серверу с выделенным кэшем. IP-адрес или FQDN сервера с выделенным кэшем должен быть прописан в настройках клиента вручную или с помощью групповых политик. При этом, как уже понятно, запрашивается сегмент или сегменты.5. Если данные в выделенном кэше есть, они блоками возвращаются на клиентский компьютер. Компьютер проверяет целостность полученных блоков, сохраняет их в своем кэше и передает данные приложению. Пользователь видит открывшийся документ.6. Если же в выделенном кэше нет запрашиваемых данных, то клиент скачивает их с удаленного сервера и сохраняет в локальном кэше.7. После чего клиент посылает серверу с выделенным кэшем пакет-оповещение о доступности новых данных для выделенного кэша.8. Сервер посылает запрос клиенту на получение новых данных.9. Клиент копирует блоки на сервер в выделенный кэш, чтобы этой информацией могли воспользоваться другие машины филиала.Выделенный кэш обеспечивает более высокий уровень доступности данных, поскольку в отличие от клиентских компьютеров сервер работает постоянно и не выключается. Как правило. Хотя в небольших офисах чего только не бывает. Кроме того, нет ограничений на сетевую топологию. Запрос к выделенному кэшу – это unicast запрос, который маршрутизируется обычным образом. Однако описанный режим работы предполагает наличие в филиале сервера с Windows Server 2008 R2.Завершая обзор режимов работы BranchCache, надо отметить, что эти режимы взаимоисключающие. Конкретный клиент с Windows 7 не может работать одновременно и в одном, и в другом режиме.

Поддержка HTTP

BranchCache поддерживает кэширование HTTP- и SMB-трафика. Существуют некоторые особенности, присущие рассматриваемому механизму кэширования, в контексте этих протоколов.Начнем с HTTP. Поскольку модуль BranchCache встроен только в Windows Server 2008 R2 и Windows 7, наверное уже понятно, что BranchCache для HTTP применим, только если в качестве веб-сервера используется IIS 7.5 из состава Windows Server 2008 R2.Вторая особенность связана с генерацией хэш-листов для файлов веб-сайтов. Хэш-лист для любого файла веб-сайта (html, jpg и т. д.) генерируется после первого обращения к этому файлу. Это приводит к тому, что только на третье обращение к файлу, тело файла может быть получено из BranchCache. Предположим, клиент из филиала впервые обращается к некоторой веб-странице. IIS отдает клиенту страницу по HTTP или HTTPS и генерирует для нее метаданные. Стало быть, клиент на свой запрос получил страницу, но не получил хэш-лист, а потому не может эту страницу поместить в свой или выделенный кэш. При втором обращении клиента к этой же странице IIS в ответ возвращает не данные, а имеющиеся уже теперь метаданные. Однако поскольку после первого запроса данные не были закэшированы, клиенту ничего не остается, как скачивать всю страницу заново. Но на этот раз ее можно поместить в кэш. И третий запрос к этой странице может быть обслужен из BranchCache.Наконец, в силу того, что BranchCache фактически отрабатывает до транспортных механизмов, кэширование никак не влияет на SSL и наоборот. То есть BranchCache эффективно работает как при использовании HTTP, так и при HTTPS. Кстати это в равной степени относится и к IPSec по той же причине. В этом ролике я продемонстрировал настройку и принцип работы BranchCache для HTTP.

Поддержка SMB

Объем данных на файловых серверах может быть очень большим и при высокой нагрузке вычисление хэшей оказывается весьма затратной операцией. Как следствие, в случае с SMB генерация метаданных происходит заранее. Поэтому в ответ на первый запрос клиент получает хэш-лист, и уже второе обращение к этому файлу может быть обслужено из кэша. После первичной генерации метаданные автоматически обновляются каждый раз после изменения файла. Плюс к этому у администратора есть возможность обновить хэш-лист для заданного файла или папки с помощью утилиты командной строки hashgen.На клиентской стороне BranchCache для SMB, в том числе, использует службу Offline Files. Если эту службу отключить, кэширование SMB-трафика перестанет работать. На кэширование HTTP-трафика это никак не скажется.Можно посмотреть на настройки и особенности работы BranchCache для SMB.

Приложения и данные

С точки зрения архитектуры BranchCache располагается ниже драйверов SMB и HTTP. Работа этого модуля прозрачна для приложений. Иными словами, кэширование будет работать при использовании любого приложения, которое задействует встроенный в Windows стек SMB или HTTP.Тем не менее, я бы отметил, что эффект от BranchCache во многом зависит от характера используемых данных. Поясню. Вспомним уже рассмотренный пример, когда пользователь в филиале открывает с удаленного сервера документ. Клиент получает с сервера хэш-лист и закачивает тело файла либо с удаленного сервера, либо из BranchCache (своего или «соседского»). Что будет, если пользователь меняет содержимое этого документа и закрывает его с сохранением изменений? Весь файл сохраняется на удаленном сервере! Раз изменился файл, значит необходимо пересчитать хэш-лист, а этим занимает серверная сторона, поэтому сохранять модифицированный файл сразу в кэш нельзя. Если пользователь тут же попытается открыть файл заново, то согласно рассмотренному алгоритму, клиентский компьютер получит с сервера обновленные метаданные, и ничего не останется, как полностью скачивать тело файла с сервера. Вывод простой: BranchCache даст ощутимый эффект для относительно статичных данных.

Безопасность

Тема безопасности BranchCache вполне заслуживает отдельного топика, поэтому если читателям Хабра будет интересно, я готов написать о безопасности BranchCache более подробно. Пока же хотел бы отметить лишь несколько важных моментов.Во-первых, BranchCache не предусматривает каких-либо специальных защитных мер при передаче данных с удаленного сервера в филиал. Если, например, файл скачивается по HTTP, а не HTTPS, то тело файла передается в открытом виде, и BranchCache со своей стороны никакого шифрования для данных не добавляет.Во-вторых, сам по себе кэш, то есть файл на жестком диске, внутри которого хранятся кэшированные блоки, не шифруется. Если нужны дополнительные меры защиты, можно воспользоваться соответствующими средствами, например, встроенными в Windows EFS или BitLocker.И наконец, механизмы безопасности BranchCache вступают в силу при обмене информацией с «соседними» компьютерами или сервером с выделенным кэшем. Все запросы и ответы в рамках такого обмена шифруются, чтобы предотвратить намеренную подстановку некорректных данных со стороны злоумышленника.

Подводя итоги, хотелось бы еще раз подчеркнуть, BranchCache:— снижает нагрузку на WAN-каналы, связывающие филиалы предприятия, и сокращает соответствующие расходы;— повышает скорость отклика приложений в филиалах;— является встроенной возможностью Windows 7 и Windows Server 2008 R2 и управляется штатными средствами.

взято тут

PS: спасибо автору за интересную статью.

msbro.ru

BranchCache в Windows Server 2012

В этой статье мы познакомимся с основными изменениями, которые коснулись технологии BranchCache в Windows Server 2012 и Windows 8, а также рассмотрим практический пример разворачивания инфраструктуры BranchCache.

Что такое BranchCache

Вкратце напомним, о том, что же за зверь такой BranchCache. Итак, BranchCache (BC) это технология, которая впервые была представлена в Windows Server 2008 R2 и Windows 7 (подробности тут). Технология позволяет минимизировать трафик между удаленным офисом и центральными файл – серверами, располагающимися в центральном офисе /дата центре компании. Выглядит это примерно так: при доступе пользователя филиала к некому файлу на центральном файл (веб) сервере с включенной функцией BranchCache, он автоматически кэширует данный файл  и при следующей попытке компьютера из этого же сайта  открыть этот же файл, он получает его не с центрального файлового сервера, а из локального кэша (с рабочей станции или сервера внутри LAN сети филиала). Тем самым минимизируется трафик на WAN канале и увеличивается скорость доставки контента пользователю. Естественно, максимальная производительность BranchCache в Windows достигается при работе со статическими данными большого размера. BranchCache  позволяет осуществлять кэширования данных, передаваемых по протоколам SMB и HTTP/HTTPS.

BranchCache может работать в двух режимах.

  • Hosted cache mode – кэширование осуществляется на несколько выделенных серверах филиала, которые называются hosted cache серверами.
  • Distributed cache mode – распределенный режим, в котором кэширование осуществляется на обычных рабочих станциях филиала. Такой режим работы возможно использовать в небольших филиалах, в которых отсутствует выделенный сервер

Что нового в BranchCache  в Windows Server 2012 / Windows 8

Рассмотрим основные новшества, которые появились в технологии Branch Cache в новой платформе Microsoft (Windows Server 2012 + Windows 8).

  • Убрали ограничение на количество выделенных серверов hosted cache в филиале
  • Отсутствует необходимость создавать отдельную групповую политику (GPO) BranchCache  для каждого сайта
  • На выделенных кэширующих серверах сертификаты теперь устанавливать не нужно
  • Клиенты могут автоматически выбирать между режимами работы BC (распределённый кэш или с выделенным сервером)
  • Кэш по умолчанию шифруется (BitLocker)
  • Повышена производительность за счет использования в том числе возможностей дедупликации данных в windows 2012
  • Появилась возможность предзагрузки кэша (возможно заранее закэшировать определенные данные)
  • Для хранения данных BranchCache теперь используется механизм ESE (MicrosoftJet, лежащий в основе многих инфраструктурых баз MS, в том числе в основе БД Exchange), обеспечивающий повышенную производительность и масштабируемость

Новая версия BranchCache работает на Windows 8 Professional (Enterprise) и на всех редакциях Windows Server 2012 (в том числе Core).

Настройка BranchCache в сети на базе Windows Server 2012 и Windows 8

Разберем практический пример использования технологии BranchCache  с выделенным кэш-сервером (режим hosted cache).

Предположим, у нас имеется домен из двух сайтов – «Центральный», «Региональный». В центральном филиале находится некий файл сервер, с которым работают пользователи филиала. В сети филиала находится отдельный сервер, который, в том числе, возможно задействовать под задачи кэширования данных (hosted cache). Предполагается, что все сервера работают под управлением Windows Server 2012, а на клиентах стоит Windows 8 Pro.

Примечание. Для корректной работы BranchCache  необходимо правильно настроить сайты Active Directory и их подсети.

Настройка центрального файлового сервера

Установим на центральном файловом сервере компонент BranchCache. Проще всего это сделать с помощью Powershell:

Install-WindowsFeature FS-BranchCache –IncludeManagementTools

После чего сервер необходимо перезагрузить:

Restart-Computer

Следующий шаг – необходимо включить на файловом сервере генерацию хешей для данных в общих папках. Сделать это можно с помощью групповой политики, которую необходимо применить к файловому серверу.

Разверните раздел Computer Configuration -> Policies -> Administrative Templates -> Network -> Lanman Server и активируйте политики: Hash Publication for BranchCache и Hash Version support for BranchCache.

Примените данную политику к файловому серверу:

gpupdate /force

Затем с помощью GUI активируем BranchCache для выбранной общей папки (в свойствах шары достаточно отметить опцию «Enable BranchCache»).

На этом операции с центральным севером завершены, а мы переходим к настройке инфраструктуры BranchCache в сети филиала.

Настройка кеширующего сервера BranchCache на Windows 2012

Итак, мы решили задействовать один из серверов филиала (на Windows Server 2012) в качестве кэширующего сервера BranchCache. Естественно, мы подразумеваем, что данный сервер не является выделенным под эту задачу, а сочетает ее с одной продуктивных функций.  Установим модуль BranchCache следующей командной Powershell:

Install-WindowsFeature BranchCache –IncludeManagementTools

Далее необходимо указать, что сервер будет работать в режиме выделенного сервера BC (Hosted Server): В том случае, если сервер включен в домен Active Directory, выполните команду, которая в том числе активирует автоматическое определение клиентов BranchCache:

Enable-BCHostedServer –RegisterSCP

Если сервер не в домене, выполните:

Enable-BCHostedServer

Проверить, что все прошло успешно и данный сервер может работать в качестве кэширующего сервера BranchCache, выполните команду:

Get-BCStatus

Команда должна вернуть примерно следующее:

И немного ниже:

Настройка клиентов Branch Cache на Windows 8

Переходим к настройкам компьютеров филиала с ОС Windows 8, которые будут пользоваться преимуществами технологии BranchCache. Как всегда, проще всего это сделать с помощью групповой политики.  Создайте и прилинкуйте политику к OU с компьютерами филиала (в случае необходимости можно отграничить применение политик,  включив wmi фильтрацию).

Откройте редактор политики и перейдите в раздел: Computer Configuration -> Policies ->  Administrative Templates ->  Network -> BranchCache и активируйте следующие политики:

  • Turn on BranchCache
  • Set BranchCache Disributed Cache Mode
  • Enable Automatic Hosted Cache Discovery by Service Connection Point

Включив одновременно «Distributed cache mode» и «Automatic hosted cache discovery», мы отправим клиентов искать сервер hosted cache в Active Directory. Они должны обнаружить локальный кэширующий сервер BC, а если таковой отсутствует – задействовать механизм распределенного кэша (distributed mode).

Примечание. В том случае, если на клиентах включен файервол Windows, необходимо политикой разрешить исходящий и входящий трафик BranchCache – правила  Content Retrieval (Uses HTTP) и BranchCache – Peer Discovery (Uses WSD)

Осталось применить политики на клиентах и перезапустить службу BrachCache:

Restart-Service PeerDistSvc

Проверим статус BrachCache

Get-BCStatus

Убедимся, что клиенты увидели выделенный hosted cache сервер и настроены на его использование.

Теперь в случае открытия любым пользователем данных из общей папки на центральном файловом сервере, они автоматически будут кэшироваться на сервере филиала и в дальнейшем при попытке открыть этот же файл, другие пользователи будут получать локальную копию данных, не прокачивая их заново  по WAN-сети.

winitpro.ru

Настройка BranchCache на клиентском компьютере

Настройка BranchCache на компьютере клиента

Мы уже знакомы с технологией BranchCache, которая позволяет кэшировать данные с удаленного сервера в локальной сети. Напомню, что технология BranchCache способна работать в двух режимах:

  1. Режим хост-кэша.
  2. Режим распределенного кэша.

В первом случае весь кэш хранится на выделенном сервере, а во втором — на клиентских компьютерах. Ранее мы уже ознакомились с теорией и принципом работы данных режимов и технологии BranchCache в целом. Но упустили один важный момент — настройка клиентских компьютеров для работы с технологией BranchCache.

Настройка клиентских компьютеров необходима в обоих режимах работы. Так, в первом случае необходимо указать адрес выделенного сервера(хост-кэша), а во втором случае — дать понять операционной системе, что необходимо выделить некоторое место для кэша BranchCache и делиться им в случае необходимости.

Способы настройки клиентских компьютеров для технологии BranchCache

Существует два способа настройки клиентских компьютеров:

  1. Использование локальных политик и правил Брандмауэра.
  2. Использование утилиты командной строки netsh.

В данной статье мы рассмотрим настройку клиентских компьютеров с помощью локальных политик, а после чего откроем необходимые для работы данной технологии порты и протоколы.

Настройка BranchCache с помощью локальных политик

Все политики, которые необходимы для настройки клиентского компьютера, лежат в узле Конфигурация компьютера — Административные шаблоны — Сеть — BranchCache. Чтобы добраться до них необходимо открыть Редактор локальной политики, тут стоит вспомнить у каких изданий Windows он имеется. В зависимости от операционной системы(7 или 8), количество политик в данном узле может различаться. Но нам нужны только 5 из них:

  1. Включить BranchCache. Самая главная политика, которая обязательно должна быть включена, чтобы технология BranchCache работала на этом компьютере. Активация данной политики включит BranchCache и настроит его автоматический запуск при превышении порогового значения задержки.
  2. Включить режим распределенного кэша. Данный режим необходимо включать только тогда, когда технология BranchCache в Вашей сети работает в режиме распределенного кэша.
  3. Включить режим размещенного кэша. Данную политику необходимо включить только в режиме хост-кэша. Кроме включения данной политики, необходимо указать полное имя сервера размещенного кэша. Сервер хост-кэша мы настраивали чуть раньше.
  4. Настройка BranchCache для сетевых файлов. В данной политике Вы можете установить пороговое значение задержки, превышение которой включает технологию BranchCache.
  5. Установить процент дискового пространства, используемого для кэша клиентского компьютера. Название данной политики говорит само за себя — тут Вы можете указать процент свободного места для нужд кэша BranchCache. Стоит отметить, что данный параметр необходим для обоих режимов работы BranchCache, ведь даже в режиме хост-кэша клиентский компьютер на время хранит у себя скаченные данные, пока не передаст их на сервер размещенного кэша.

А теперь необходимо запомнить, что первая политика должна быть включена обязательно. Так же обязательно должна быть включена либо вторая, либо третья политика, но никак не одновременно. Четвертая и пятая политика имеют свои значения по умолчанию, поэтому их настройка сугубо пользовательское решение.

Настройка правил Брандмауэра Windows для технологии BranchCache

Так как обычный Брандмауэр Windows не предоставляет возможности создавать правила на основе порта или протокола, нам необходимо запустить Брандмауэр Windows в режиме повышенной безопасности. Так как разработчики Windows предусмотрительно подготовили для нас все необходимые правила, то создавать их вручную нам не нужно. Необходимо только открыть список Предопределенные правила и выбрать следующие:

  1. Получение содержимого BranchCache. Данное правило необходимо включать в любом случае. Это правило разрешает исходящий и входящий трафик через 80 порт TCP-протокола.
  2. Обнаружение кэширующих узлов BranchCache. Данное правило разрешает входящий и исходящий трафик через 3702 порт UDP-протокола. Необходим в режиме распределенного кэша.
  3. Сервер размещенного кэша. Разрешает исходящий трафик через 443 порт TCP-протокола. Необходим в режиме работы хост-кэша.

В случае с правилами Брандмауэра обязательно нужно активировать первое правило. Второе и третье правило необходимо активировать в зависимости от режима работы. На этом подготовительные работы для клиентского компьютера, который собирается использовать технологию BranchCache в своей повседневной работе, закончены.

about-windows.ru