По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
А пока не начали - почитайте материал про одноадресные пути без петель. Простое правило кратчайшего пути используется для построения описания набора путей, а не одного пути в реальных сетях. Хотя для представления набора путей через топологию или сеть можно использовать ряд различных видов деревьев, для описания компьютерных сетей обычно используются два: Minimum Spanning Tree - MST и Shortest Path Tree - SPT. Разница между этими двумя видами деревьев часто неуловима. Сеть, показанная на рисунке 3, будет использоваться для иллюстрации MST и SPT. На рисунке 3 несколько различных путей будут касаться каждого узла, например, с точки зрения А: [A, B, E, D, C] и [A, C, D, E, B], каждая общей стоимостью 10 [A, B, E] стоимостью 5 и [A, C, D] стоимостью 3, общая стоимость 8 [A, C, D, E] стоимостью 6 и [A, B] стоимостью 1, общая стоимость - 7 MST - это дерево, которое посещает каждый узел в сети с минимальной общей стоимостью (обычно измеряется как сумма всех линий связи, выбранных в сети). Алгоритм, вычисляющий MST, выберет вариант 3, поскольку он имеет наименьшую общую стоимость по набору граней, необходимых для достижения каждого узла в сети. SPT описывает кратчайший путь к каждому пункту назначения в сети, независимо от общей стоимости графа. Алгоритм, вычисляющий SPT, с точки зрения A выбрал бы: От [A, B] до B со стоимостью 1, так как этот путь короче, чем [A, C, D, E, B] со стоимостью 10 [A, B, E] в E стоимостью 5, так как это короче, чем [A, C, D, E] стоимостью 6 От [A, C] до C со стоимостью 1, так как это короче, чем [A, B, E, D, C] со стоимостью 10 [A, C, D] в D стоимостью 3, так как это короче, чем [A, B, E, D] стоимостью 8 Сравнивая набор кратчайших путей с набором путей, которые будут касаться каждого узла, приведенный выше алгоритм, вычисляющий SPT, выберет вариант 2, а не 3 в вышеуказанном списке. Другими словами, SPT будет игнорировать общую стоимость граней в MST, чтобы найти кратчайший путь к каждому достижимому месту назначения (в данном случае к узлам), тогда как MST будет игнорировать кратчайший путь к каждому достижимому месту назначения, чтобы минимизировать стоимость всего графа. Плоскости управления сетью чаще всего вычисляют SPT, а не MST, используя какую-либо форму greedy алгоритма. Хотя SPT не оптимальны для решения всех проблем, связанных с потоками сетевого трафика, они, как правило, лучше, чем MST, в типах проблем потока трафика, которые должны решать плоскости управления сетью. Greedy алгоритм Greedy алгоритмы выбирают локально оптимальные решения для решения больших проблем. Например, при вычислении кратчайшего пути через сеть Greedy алгоритм может выбрать посещение более близких соседних узлов (может быть достигнуто через линию связи с более низкой стоимостью) перед узлами, которые находятся дальше (могут быть достигнуты через линию связи с более высокой стоимостью). Таким образом, можно сказать, что Greedy алгоритмы ослабляют вычисления, обычно игнорируя или приближая глобальную оптимизацию. Иногда Greedy алгоритмы могут потерпеть неудачу. Когда они действительно дают сбой, они могут потерпеть впечатляющую неудачу, обеспечивая худшее из возможных решений. Например, при правильном наборе метрик жадный алгоритм, такой как алгоритм Дейкстры, может вычислить набор самых длинных путей через сеть, а не набор самых коротких. Поэтому Greedy алгоритмы иногда считаются эвристическими, поскольку они приближают решение сложной задачи или могут решить ее в ограниченных средах, а не фактически решают общую задачу. В реальном мире компьютерные сети спроектированы таким образом, чтобы эти алгоритмы вычисляли наилучшее возможное решение поставленной проблемы в каждом случае, а именно нахождение кратчайшего набора путей через сеть. А дальше интереснее - почитайте про альтернативные пути без петель.
img
В этой статье расскажем что такое хеш, хеширование и рассмотрим какие есть алгоритмы хеширования. Что такое хеширование? Хеширование означает использование некоторой функции или алгоритма для сопоставления данных объекта с некоторым репрезентативным целочисленным значением. Результат этой функции известен как хеш-значение или просто хэш (hash). Хорошая хеш-функция использует алгоритм одностороннего хеширования, или, другими словами, хэш нельзя преобразовать обратно в исходный ключ. Обеспечение того, чтобы данные не изменялись (модифицировались) во время передачи, очень важно, и чтобы помочь нам определить, сохраняется ли целостность сообщения, мы можем использовать алгоритмы хеширования. Алгоритмы хеширования предназначены для получения входных данных, например, строки текста или файла, а затем использования односторонней функции для создания дайджеста. Дайджест (digest) - это хеш-представление ввода, и его нельзя отменить. Каждый уникальный файл или сообщение генерирует уникальное хеш-значение (дайджест). Это означает, что, если данные каким-либо образом изменены, значение хеш-функции будет однозначно другим. На следующем рисунке показан процесс одностороннего хеширования: Как этот процесс работает между устройствами? Представьте, что отправитель, хост A, хочет отправить сообщение на устройство назначения, хост B. Вместо того, чтобы хост A отправлял сообщение как есть, хост A создаст дайджест сообщения. Как только в дайджесте будет создано сообщение, хост A отправит и сообщение, и дайджест хосту B. На следующем рисунке показано, что хост A отправляет сообщение с дайджестом хосту B: Когда хост B получает сообщение от источника, он также создает дайджест сообщения и сравнивает его с дайджестом, полученным от хоста A. Если оба значения хеш-функции (дайджесты) совпадают, это означает, что сообщение не было изменено во время передачи. Однако, если значения дайджеста различаются, это означает, что где-то по пути сообщение было изменено и, следовательно, содержимое сообщения не совпадает. Возможно ли, что два разных файла будут иметь одинаковое хеш-значение? Хотя алгоритмы хеширования предназначены для создания уникального дайджеста для каждого уникального файла, в прошлом были случаи, что у двух разных файлов одно и то же значение хеш-функции. Это известно, как хэш-коллизия. Если произошла коллизия хеширования, это означает, что алгоритм хеширования, используемый во время процесса, уязвим, и ему не следует доверять. Однако некоторые из самых популярных алгоритмов хеширования, которые используются в настоящее время, подвержены коллизии хеширования. Алгоритмы хеширования Message Digest 5 (MD5) - это алгоритм хеширования, который создает 128-битный дайджест. Алгоритм MD5 был реализован во многих системах на протяжении многих лет и работал хорошо до тех пор, пока не произошла коллизия хеширования. Это сделало MD5 уязвимым алгоритмом хеширования, который больше не рекомендуется. На следующем рисунке представлен процесс хеширования MD5: Как показано на предыдущей диаграмме, сообщение отправляется алгоритму MD5, который затем преобразуется в 128-битный дайджест. Хотя MD5 все еще используется во многих системах, рекомендуется использовать более безопасную функцию, такую как Secure Hashing Algorithm 2 (SHA-2). Еще одна хорошо известная функция хеширования - это Secure Hashing Algorithm 1 (SHA-1). Этот алгоритм хеширования был создан еще в 1990-х годах Национальным институтом стандартов и технологий (NIST). NIST разработал этот алгоритм с функциями, аналогичными MD5. Одним из основных преимуществ использования SHA-1 для проверки целостности является то, что он создает 160-битный дайджест любого сообщения или файла. На следующем рисунке представлена функция SHA-1: Хотя SHA-1 считается лучше, чем MD5, так как создает более крупный дайджест, он работает медленнее, чем MD5, и содержит уязвимости в самом алгоритме. Однако NIST разработал более новую версию, известную как SHA-2. SHA-2 позволяет создавать дайджест с использованием битов большого размера, таких как: SHA-224 (224 bit) SHA-256 (256 bit) SHA-384 (384 bit) SHA-512 (512 bit) Имейте в виду, что даже если вы знаете, что для проверки целостности сообщения использовалось хеширование, оно все равно уязвимо для атаки MiTM. Представьте, что источник отправляет сообщение с хеш-значением. Злоумышленник может перехватить сообщение, изменить его содержимое и пересчитать новый хэш перед его отправкой адресату. Чтобы помочь получателю проверить подлинность источника, нам нужно применить Hash Message Authentication Code (HMAC) к нашему процессу хеширования. Чтобы добавить аутентификацию источника во время процесса хеширования, добавляется HMAC. HMAC - это секретный ключ, который объединяет входное сообщение с алгоритмом хеширования, таким как MD5 или SHA-1, для создания уникального дайджеста. На следующем рисунке показано использование HMAC с функцией хеширования: Поскольку этот секретный ключ (HMAC) используется только отправителем и предполагаемым получателем, значение выходного дайджеста будет просто зависеть от фактического входного сообщения (данных) и секретного ключа, используемого для применения дополнительного уровня безопасности для аутентификации источника. Поскольку источник и место назначения будут единственными сторонами, которые знают секретный ключ (значение HMAC), атака MiTM не будет успешной с точки зрения нарушения целостности любых сообщений, которые проходят через сеть. На следующем скриншоте показан секретный ключ (HMAC), примененный к строке текста: Как показано на предыдущем рисунке, текстовая строка (сообщение) была объединена с секретным ключом и обработана с использованием алгоритма хеширования MD5 и SHA-1 для создания уникального дайджеста.
img
Начиная с Windows Server 2012 R2 в Hyper-v появились машины второго поколения. Они добавляют некоторые преимущества по сравнению с виртуальными машинами первого поколения, поэтому следует подумать о переходе. Хотя автоматического преобразования не существует, есть способ избежать новой установки и настройки виртуальной машины. Есть несколько причин, по которым рабочие системы до сих пор работают на виртуальных машинах первого поколения. Часто они существуют уже несколько лет и были созданы в версии Hyper-V, которая поддерживает только виртуальные машины 1-го поколения. Их по-прежнему можно использовать в более новой версии гипервизора, и они полностью поддерживаются. И наоборот, также возможно, что версия Windows была изначально установлена на виртуальной машине, которая поддерживает только виртуальные машины 1-го поколения. Гостевая ОС, возможно, за это время была обновлена, но функции 2-го поколения в старой виртуальной машине заблокированы. Может случиться и так, что Gen 1 будет случайно выбран при создании виртуальной машины, поскольку это по-прежнему выбирается по умолчанию в диспетчере Hyper-V. Преимущества 2 поколения Одним из наиболее важных преимуществ новых виртуальных машин является более высокая производительность, поскольку гостевая ОС «знает», что она работает на гипервизоре, и, следовательно, не требует эмуляции оборудования. Виртуальные машины второго поколения обладают поддержкой UEFI, работают под управлением только 64-разрядной гостевой ОС, могут загружаться с виртуального контроллера SCSI. Подключенные к контроллеру виртуальные жесткие диски можно добавлять, удалять и изменять их размер во время работы. Сетевые адаптеры также могут быть добавлены во время работы системы. Если вы хотите настроить виртуальную машину с UEFI, вы можете сделать это только с виртуальной машиной поколения 2, т.е. безопасная загрузка доступна только в ней. Виртуальные машины поколения 1 поддерживают только BIOS и, следовательно, ограничены структурой MBR дисков и это основное препятствие при миграции. Поиск старых виртуальных машин Первым шагом будет обзор того, какие виртуальные машины относятся к Gen 1 (Поколение 1). С помощью PowerShell это относительно легко узнать: Get-VM | select vmname, generation Эта команда выведет вам список всех виртуальных машин на локальном хосте, их имена и поколение. По сути, теперь вы можете приступить к преобразованию старых виртуальных машин. Однако это невозможно, если гостевая ОС старше Windows Server 2012 R2 или имеет 32-разрядную версию. Следовательно, вам необходимо выяснить, какая ОС установлена на виртуальной машине. Это можно относительно легко определить через PowerShell: Get-ComputerInfo -Property WindowsProductName, OsArchitecture Изменение таблицы разделов на GPT После того как вы определили, какие виртуальные машины подходят для преобразования, вам следует сначала обновить гостевую ОС до версии Windows, которую вы запланировали для новой среды. Затем преобразовать системный диск в GPT. Начиная с Windows 10 1703, Microsoft предоставляет для этой цели MBR2GPT.exe. Программа запускается на рабочей системе со следующими параметрами: mbr2gpt.exe /convert /allowFullOS Утилита находится в %SystemRoot%system32 и может быть легко скопирована на другие компьютеры, если ее там нет. Это относится, например, и к серверам Windows. Однако в случае более старых версий ОС Microsoft рекомендует выключить виртуальную машину, загрузиться в среду предустановки Windows и начать преобразование в GPT оттуда. Тогда команда выглядит немного иначе: mbr2gpt.exe /convert /disk:<disknumber> Номера дисков можно посмотреть программой diskpart с помощью: list disk Перенос виртуального диска на новую виртуальную машину Поскольку преобразовать виртуальную машину поколения 1 в поколение 2 невозможно, теперь необходимо создать новую виртуальную машину Gen 2 и подключить к ней виртуальный жесткий диск. Одним из побочных эффектов этого действия является то, что оно также поднимает версию виртуальной машины до текущего уровня. Это необходимо, чтобы воспользоваться преимуществами новых функций Hyper-V, доступных в Server 2016 или 2019. Новая виртуальная машина больше не будет работать на более старом гипервизоре.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59