По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Это первая статья цикла. Продолжение: 2 часть Плоскость данных Начнем с того, что основная задача сети-перенос данных с одного подключенного хоста на другой. Это может показаться простым на первый взгляд, но на самом деле это чревато проблемами. Здесь может быть полезна иллюстрация; рисунок № 1 используется для иллюстрации сложности проблемы. Начиная с верхнего левого угла иллюстрации: Приложение генерирует некоторые данные. Эти данные должны быть отформатированы таким образом, чтобы принимающее приложение могло понять, что было передано, - данные должны быть упорядочены. Механизм, используемый для упорядочения данных, должен быть эффективным во многих отношениях, включая быстрое и простое кодирование, быстрое и простое декодирование, достаточно гибкий, чтобы можно было вносить изменения в кодирование, не нарушая слишком много вещей, и добавлять наименьшее количество накладных расходов, возможных во время передача данных. Сетевое программное обеспечение должно инкапсулировать данные и подготовить их к фактической передаче. Каким-то образом сетевое программное обеспечение должно знать адрес хоста назначения. Сеть, которая соединяет источник и пункт назначения, является общим ресурсом, и, следовательно, должна быть доступна некоторая форма мультиплексирования, чтобы источник мог направлять информацию в правильный пункт назначения. Как правило, это будет связано с определенной формой адресации. Данные должны быть перемещены из памяти в источнике и непосредственно в сеть - фактический провод (или оптический кабель, или беспроводное соединение), который будет передавать информацию между устройствами, подключенными к сети. Сетевые устройства должны иметь какой-то способ обнаружить конечный пункт назначения информации - вторую форму проблемы мультиплексирования - и определить, требуется ли какая-либо другая обработка информации, когда она находится в пути между источником и пунктом назначения. Информация, прошедшая через сетевое устройство, должна быть снова закодирована и перенесена из памяти в провод. В любой точке, где информация перемещается из памяти в какую-либо форму физического носителя, информация должна быть поставлена в очередь; часто бывает больше данных для передачи, чем может быть помещено на любой конкретный физический носитель в любой момент времени. Здесь в игру вступает качество услуг. Информация, передаваемая по сети, теперь должна быть скопирована с физического носителя и обратно в память. Он должен быть проверен на наличие ошибок - это контроль ошибок - и у приемника должен быть какой-то способ сообщить передатчику, что ему не хватает памяти для хранения входящей информации - это контроль потока. Особый интерес представляет сетевое устройство в середине диаграммы. Сетевое устройство-например, маршрутизатор, коммутатор или middle box—соединяет два физических носителя вместе для построения реальной сети. Возможно, самый простой вопрос для начала заключается в следующем: зачем вообще нужны эти устройства? Маршрутизаторы и коммутаторы — это, очевидно, сложные устройства со своей собственной внутренней архитектурой и зачем добавлять эту сложность в сеть? Есть две фундаментальные причины. Первоначальная причина создания этих устройств заключалась в соединении различных видов физических носителей вместе. Например, внутри здания может быть практично работать ARCnet или thicknet Ethernet (приведены примеры из времени, когда были впервые изобретены сетевые устройства). Расстояние, которое эти носители могли преодолеть, однако, очень мало-порядка сотни метров. Каким-то образом эти сети должны быть расширены между зданиями, между кампусами, между городами и, в конечном счете, между континентами, используя своего рода мультиплексированную (или обратную мультиплексированную) телефонную сеть, такую как T1 или DS3. Эти два различных типа носителей используют различные виды сигналов; должно быть какое-то устройство, которое переводит один вид сигналов в другой. Вторая причина заключается в следующем — это масштаб и это стало проблемой. Природа физического мира такова, что у вас есть два варианта, когда дело доходит до передачи данных по проводу: Провод может соединять напрямую два компьютера; в этом случае каждая пара компьютеров должна быть физически соединена с каждым другим компьютером, с которым она должна взаимодействовать. Провод может быть общим для многих компьютеров (провод может быть общим носителем информации). Чтобы решить проблему первым способом, нужно много проводов. Решение проблемы вторым способом кажется очевидным решением, но оно представляет другой набор проблем - в частности, как пропускная способность, доступная по проводам, распределяется между всеми устройствами? В какой-то момент, если на одном общем носителе достаточно устройств, любая схема, используемая для обеспечения совместного использования ресурсов, сама по себе будет потреблять столько же или больше пропускной способности, как любое отдельное устройство, подключенное к проводу. В какой-то момент даже 100-гигабайтное соединение, разделенное между достаточным количеством хостов, оставляет каждому отдельному хосту очень мало доступных ресурсов. Решением этой ситуации является сетевое устройство - маршрутизатор или коммутатор, который разделяет два общих носителя, передавая трафик между ними только по мере необходимости. При некотором логическом планировании устройства, которые должны чаще общаться друг с другом, можно размещать ближе друг к другу (с точки зрения топологии сети), сохраняя пропускную способность в других местах. Конечно, маршрутизация и коммутация вышли далеко за рамки этих скромных начинаний, но это основные проблемы, которые системные администраторы решают, внедряя сетевые устройства в сети. Есть и другие сложные проблемы, которые необходимо решить в этом пространстве, помимо простого переноса информации из источника в пункт назначения; Во многих случаях полезно иметь возможность виртуализировать сеть, что обычно означает создание туннеля между двумя устройствами в сети. Сети всегда создавались для одной цели: передачи информации от одной подключенной системы к другой. Дискуссия (или, возможно, спор) о наилучшем способе выполнения этой, казалось бы, простой задачи длилась долго. Эту дискуссию можно грубо разбить на несколько, часто пересекающихся, этапов, каждый из которых задавал свой вопрос: Должны ли сети быть с коммутацией каналов или с коммутацией пакетов? Должны ли сети с коммутацией пакетов использовать кадры фиксированного или переменного размера? Как лучше всего рассчитать набор кратчайших путей через сеть? Как сети с коммутацией пакетов должны взаимодействовать с качеством обслуживания (QoS)? Должна ли плоскость управления быть централизованной или децентрализованной? На некоторые из этих вопросов давным-давно был дан ответ. С другой стороны, некоторые из этих вопросов все еще актуальны, особенно последний. Коммутация каналов Первое большое обсуждение в мире компьютерных сетей было то, должны ли сети быть с коммутацией каналов или с коммутацией пакетов. Основное различие между этими двумя понятиями заключается в концепции схемы: нужно ли передатчику и приемнику «видеть» сеть как один провод или соединение, предварительно сконфигурированное (или настроенное) с определенным набором свойств прежде чем они начнут общаться? Или они «видят» сеть как общий ресурс, где информация просто генерируется и передается «по желанию»? Первый считается с коммутацией каналов, а второй считается с коммутацией пакетов. Коммутация каналов имеет тенденцию обеспечивать больший поток трафика и гарантии доставки, в то время как коммутация пакетов обеспечивает доставку данных при гораздо меньших затратах - первый из многих компромиссов, с которыми вы столкнетесь при проектировании сетей. Рисунок 2 будет использован для иллюстрации коммутации каналов с использованием мультиплексирования с временным разделением (TDM) в качестве примера. На рисунке 2 общая пропускная способность каналов между любыми двумя устройствами разделена на восемь равных частей; A отправляет данные E, используя временной интервал A1 и F, используя временной интервал A2; B отправляет данные в E с использованием временных интервалов B1 и F с использованием временных интервалов B2. Каждый фрагмент информации имеет фиксированную длину, поэтому каждый из них может быть помещен в один временной интервал в текущем потоке данных (следовательно, каждый блок данных представляет фиксированное количество времени или интервала в проводе). Предположим, что где-то есть контроллер, назначающий слот в каждом из сегментов, через которые будет проходить трафик: Для трафика [A, E]: На C: слот 1 от A переключен на слот 1 в направлении D На D: слот 1 от C переключен на слот 1 в направлении E Для трафика [A, F]: На C: слот 4 от A переключен на слот 4 в направлении D На D: слот 4 от C переключен на слот 3 в направлении F Для трафика [B, E]: На C: слот 4 от B переключен на слот 7 в направлении D На D: слот 7 от C переключен на слот 4 в направлении E Для трафика [B, F]: На C: слот 2 от B переключен на слот 2 в направлении D На D: слот 2 от C переключен на слот 1 в направлении F Ни одно из устройств обработки пакетов в сети не должно знать, какой бит данных идет куда; до тех пор, пока C берет все, что находится в слоте 1 в потоке данных A в каждом временном интервале, и копирует его в слот 1 в своем исходящем потоке в направлении D, А D копирует его из слота 1 входящего из C в слот 1 исходящего в E, трафик, передаваемый A, будет доставляться в E. Есть интересный момент, который следует отметить об этом виде обработки трафика—для пересылки трафика ни одно из устройств в сети на самом деле не должно знать, что является источником или назначением. Блоки данных, передаваемые по сети, не обязательно должны содержать адреса источника или назначения; куда они направляются и откуда поступают, все решения основываются на знании контроллерами открытых слотов в каждом канале. Набор слотов, назначенных для любой конкретной связи между устройствами, называется схемой, потому что это пропускная способность и сетевые ресурсы, выделенные для связи между одной парой устройств. Основные преимущества сетей с коммутацией каналов включают в себя: Для коммутации пакетов устройствам не нужно читать заголовок или выполнять какую-либо сложную обработку. Это было чрезвычайно важно в первые дни работы сети, когда аппаратное обеспечение имело гораздо меньшее количество транзисторов и переключателей, скорость линии была ниже, а время обработки пакета в устройстве составляло большую часть общей задержки пакета через сеть. Контроллер знает доступную полосу пропускания и трафик, направляемый к периферийным устройствам по всей сети. Это делает его несколько простым, учитывая, что на самом деле имеется достаточная пропускная способность, для организации трафика для создания наиболее оптимальных путей через сеть. Есть и недостатки, в том числе: Сложность контроллера значительно возрастает по мере того, как сеть и услуги, которые она предлагает, растут в масштабе. Нагрузка на контроллер может стать подавляющей, фактически вызывая перебои в работе сети. Пропускная способность на каждом канале используется не оптимально. На рис. 1-3 блоки времени (или ячейки), содержащие*, по существу являются потерянной полосой пропускания. Слоты назначаются определенной схеме заранее: слоты, используемые для трафика [A, E], не могут быть «заимствованы» для трафика [A, F], даже если A ничего не передает в сторону E. Время, необходимое для реагирования на изменения в топологии, может быть довольно длительным с точки зрения сети; локальное устройство должно обнаружить изменение, сообщить о нем контроллеру, и контроллер должен перенастроить каждое сетевое устройство вдоль пути каждого затронутого потока трафика. Системы TDM внесли ряд идей в развитие сетей, используемых сегодня. В частности, системы TDM сформировали большую часть ранних дискуссий о разбиении данных на пакеты для передачи по сети и заложили основу для гораздо более поздней работы в области QoS и управления потоком. Одна довольно важная идея, которую эти ранние системы TDM завещали большему сетевому миру, - это network planes. В частности, системы TDM делятся на три плоскости: Плоскость управления - это набор протоколов и процессов, которые формируют информацию, необходимую сетевым устройствам для пересылки трафика через сеть. В сетях с коммутацией каналов плоскость управления является полностью отдельной плоскостью; обычно существует отдельная сеть между контроллером и отдельными устройствами (хотя и не всегда, особенно в новых системах с коммутацией каналов). Плоскость данных (также известная как плоскость пересылки) - это путь информации через сеть. Это включает в себя декодирование сигнала, полученного в проводе, в кадры, обработку их и передачу их обратно в провод, закодированный в соответствии с физической транспортной системой. Плоскость управления ориентирована на управление сетевыми устройствами, включая мониторинг доступной памяти, мониторинг глубины очереди, а также мониторинг, когда устройство отбрасывает информацию, передаваемую по сети, и т. д. Часто бывает трудно различить уровни управления и плоскости управления в сети. Например, если устройство вручную сконфигурировано для пересылки трафика определенным образом, является ли это функцией плоскости управления (потому что устройство настраивается) или функцией плоскости управления (потому что это информация о том, как пересылать информацию)? Коммутация пакетов В начале-середине 1960-х годов коммутация пакетов находилась в состоянии «in the air». Много людей переосмысливали то, как сети были построены, и рассматривали альтернативы парадигме коммутации каналов. Paul Baran, работавший в RAND Corporation, предложил сеть с коммутацией пакетов в качестве решения для обеспечения живучести; примерно в то же время Donald Davies в Великобритании предложил такой же тип системы. Эти идеи попали в Lawrence Livermore Laboratory, что привело к созданию первой сети с коммутацией пакетов (названной Octopus), введенной в эксплуатацию в 1968 году. ARPANET, экспериментальная сеть с коммутацией пакетов, начала функционировать вскоре после этого, в 1970 году. Существенное различие между коммутацией каналов и коммутацией пакетов заключается в роли отдельных сетевых устройств в передаче трафика, как показано на рис.3. На рисунке 3, A создает два блока данных. Каждый из них включает в себя заголовок, описывающий, как минимум, пункт назначения (представлен H в каждом блоке данных). Этот полный пакет информации - исходный блок данных и заголовок - называется пакетом. Заголовок также может описывать, что находится внутри пакета, и может включать любые специальные инструкции по обработке, которые устройства пересылки должны принимать при обработке пакета - их иногда называют метаданными или «данными о данных в пакете». Есть два пакета, произведенных A: A1, предназначенный для E; и A2, предназначенный для F. B также отправляет два пакета: B1, предназначенный для F, и B2, предназначенный для E. Когда C получает эти пакеты, он считывает небольшую часть заголовка пакета, часто называемого полем, чтобы определить место назначения. Затем C обращается к локальной таблице, чтобы определить, по какому исходящему интерфейсу должен быть передан пакет. D делает то же самое, перенаправляя пакет из правильного интерфейса к месту назначения. Этот способ пересылки трафика называется переадресацией по частям, поскольку каждое устройство в сети принимает совершенно независимое решение о том, куда пересылать каждый отдельный пакет. Локальная таблица, к которой обращается каждое устройство, называется таблицей пересылки; обычно это не одна таблица, а множество таблиц, потенциально включающих в себя базу информации маршрутизации (RIB) и базу информации пересылки (FIB). В оригинальных системах с коммутацией каналов плоскость управления полностью отделена от пересылки пакетов по сети. С переходом от коммутации каналов к коммутации пакетов произошел соответствующий переход от решений централизованного контроллера к распределенному протоколу, работающему в самой сети. В последнем случае каждый узел способен принимать свои собственные решения о пересылке локально. Каждое устройство в сети запускает распределенный протокол, чтобы получить информацию, необходимую для построения этих локальных таблиц. Эта модель называется распределенной плоскостью управления; таким образом, идея плоскости управления была просто перенесена из одной модели в другую, хотя на самом деле они не означают одно и то же. Сети с коммутацией пакетов могут использовать централизованную плоскость управления, а сети с коммутацией каналов могут использовать распределенные плоскости управления. В то время, когда сети с коммутацией пакетов были впервые спроектированы и развернуты, однако они обычно использовали распределенные плоскости управления. Software-Defined Networks (SDN) вернули концепцию централизованных плоскостей управления в мир сетей с коммутацией пакетов. Первым преимуществом сети с коммутацией пакетов над сетью с коммутацией каналов является парадигма пересылки hop-by-hop. Поскольку каждое устройство может принимать полностью независимое решение о пересылке, пакеты могут динамически пересылаться в зависимости от изменений в топологии сети, что устраняет необходимость связываться с контроллером и ждать решения. Пока существует как минимум два пути между источником и пунктом назначения (сеть имеет два подключения), пакеты, переданные в сеть источником, в конечном итоге будут переданы в пункт назначения. Вторым преимуществом сети с коммутацией пакетов по сравнению с сетью с коммутацией каналов является то, как сеть с коммутацией пакетов использует пропускную способность. В сети с коммутацией каналов, если конкретная схема (действительно временной интервал в приведенном примере TDM) не используется, то слот просто тратится впустую. При переадресации hop-by-hop каждое устройство может наилучшим образом использовать пропускную способность, доступную на каждом исходящем канале, чтобы нести необходимую нагрузку трафика. Хотя это локально сложнее, это проще глобально, и это позволяет лучше использовать сетевые ресурсы. Основным недостатком сетей с коммутацией пакетов является дополнительная сложность, особенно в процессе пересылки. Каждое устройство должно быть в состоянии прочитать заголовок пакета, найти пункт назначения в таблице, а затем переслать информацию на основе результатов поиска в таблице. В раннем аппаратном обеспечении это были сложные, трудоемкие задачи; коммутация каналов была обычно быстрее, чем коммутация пакетов. Поскольку со временем аппаратное обеспечение усовершенствовалось, то скорость переключения пакета переменной длины, как правило, достаточно близка к скорости переключения пакета фиксированной длины, так что между пакетной коммутацией и коммутацией каналов небольшая разница. Управление потоками в сетях с коммутацией пакетов В сети с коммутацией каналов контроллер выделяет определенную полосу пропускания для каждого канала, назначая временные интервалы от источника до назначения. Что происходит, если передатчик хочет отправить больше трафика, чем выделенные временные интервалы будут поддерживать? Ответ — прост-это невозможно. В некотором смысле, таким образом, возможность управлять потоком пакетов через сеть встроена в сеть с коммутацией каналов; и нет способа отправить больше трафика, чем может передать сеть, потому что «пространство», которое имеет передатчик в своем распоряжении для отправки информации, предварительно выделяется. А как насчет сетей с коммутацией пакетов? Если все звенья сети, показанные на рис. 3, имеют одинаковую скорость соединения, что произойдет, если и А, и В захотят использовать всю пропускную способность соединения в направлении С? Как C решит, как отправить все это в D по каналу связи, который пропускает вдвое меньше трафика, необходимого для обработки? Здесь можно использовать методы управления транспортными потоками. Как правило, они реализованы в виде отдельного набора протоколов / правил, «движущихся поверх» базовой сети, помогая «организовать» передачу пакетов путем создания виртуального канала между двумя взаимодействующими устройствами. Протокол управления передачей (TCP) обеспечивает управление потоком для сетей с коммутацией пакетов на основе Интернет-протокола (IP). Этот протокол был впервые указан в 1973 году Vint Cerf и Bob Kahn. онтроллер выделяет определенную полосу пропускания для каждого канала, назначая временные интервалы от источника до назначения. Что происходит, если передатчик хочет отправить больше трафика, чем выделенные временные интервалы будут поддерживать? Ответ — прост-это невозможно. В некотором смысле, таким образом, возможность управлять потоком пакетов через сеть встроена в сеть с коммутацией каналов; и нет способа отправить больше трафика, чем может передать сеть, потому что «пространство», которое имеет передатчик в своем распоряжении для отправки информации, предварительно выделяется. А как насчет сетей с коммутацией пакетов? Если все звенья сети, показанные на рис. 3, имеют одинаковую скорость соединения, что произойдет, если и А, и В захотят использовать всю пропускную способность соединения в направлении С? Как C решит, как отправить все это в D по каналу связи, который пропускает вдвое меньше трафика, необходимого для обработки? Здесь можно использовать методы управления транспортными потоками. Как правило, они реализованы в виде отдельного набора протоколов / правил, «движущихся поверх» базовой сети, помогая «организовать» передачу пакетов путем создания виртуального канала между двумя взаимодействующими устройствами. Протокол управления передачей (TCP) обеспечивает управление потоком для сетей с коммутацией пакетов на основе Интернет-протокола (IP). Этот протокол был впервые указан в 1973 году Vint Cerf и Bob Kahn.
img
Рост статичных веб-сайтов является доказательством того, что старые вещи возвращаются раз за разом. Сегодня как малые, так и крупные предприятия используют статические веб-сайты и свои расширенные преимущества. Статические веб-сайты вернулись, сильнее, чем когда-либо. Но в чем причина, которая стимулировала внезапный рост статических сайтов? Ну, тенденции в веб-разработке приходят и уходят, но одно остается постоянным всегда - желание иметь высокоэффективный сайт. Кроме того, поведение конечных пользователей быстро меняется, поскольку они ожидают быстрой загрузки страницы и более привлекательного опыта без места для разочарования. Чтобы удовлетворить этот спрос, веб-разработчики постоянно добавляют к веб-сайтам и приложениям больше функций. Но в процессе этого производительность веб-сайта оказывается под угрозой. Вот где статичные веб-сайты приходят на сцену! Что такое статичный веб-сайт? Существует распространенный миф, что статичные веб-сайты - это новая технология. На самом деле, статичные сайты – это самые первые сайты эпохи Интернета. Ранее для создания веб-сайта разработчики использовали чистый HTML, JavaScript и CSS без библиотек, плагинов или фреймворков. Проще говоря, контент на статичном веб-сайте остается одинаковым после каждого посещения, в отличие от динамического, где он меняется. Сервер создает эти статичные файлы и возвращает их браузерам. Эти веб-сайты могут извлекать данные практически из любого места, включая API, CMS и другие файлы данных. Такой веб-сайт отбрасывает ненужные сложности и в основном фокусируется на повышении эффективности и производительности. Она не опирается на базы данных; вместо этого он включает базовые HTML, JavaScript и CSS для создания невесомых бизнес-профилей и целевых страниц. В результате это помогает избавиться от долгих загрузок и раздражающих задержек. Таким образом, разработчики могут создавать быстрые, надежные и эффективные приложения, предлагая пользователям хорошие впечатления от работы на вашем сайте с меньшим временем разработки. Какие плюсы использования статичных веб-сайтов? Скорость Так как отсутствуют бэкэнд система, запросы клиент-сервер или запросы к базам данных, связанных с доставкой статического веб-сайта, такие сайты демонстрирует высочайшую производительность, поскольку его серверы всегда готовы к HTML-выводам. Кроме того, он может включать в себя функцию кэширования для устранения задержек. Безопасность Из-за отсутствия базы данных, а также подключаемых модулей и расширений статичные веб-сайты предлагают гораздо большую безопасность, чем динамический веб-сайт. Таким образом, вы избежите фишинговых кампаний, онлайн-отслеживаний, вредоносных программ или любой потери данных. Расширяемость Масштабирование статичных веб-сайтов относительно проще, в то время как сложные приложение более стабильны. Ввиду статичности файлов уменьшается нагрузка на серверы, а те легко справляются с обработкой огромного трафика. Хостинг и доступность Базовые HTML файлы требуют меньше места, что упрощает размещение этих веб-сайтов. Можно сократить расходы, направляя ресурсы на интеграцию автоматизированных сборок или Git для включения модификаций в систему. Звучит круто? Если ответ утвердительный, давайте выясним лучшие платформы, где можно разместить статичный веб-сайт, чтобы начать использовать его преимущества. 1. Netlify С помощью Netlify можно публиковать веб-проекты из репозиториев Git без сложных настроек и навыков обслуживания сервера. Поддерживается автоматизация процессов с помощью конвейера CI/CD для разработчиков веб-сайтов. Также есть возможность предварительного просмотра всего сайта, чтобы увидеть, как будет выглядеть веб-сайт, прежде чем публиковать его. Развернув статичный веб-сайт в глобальной сети CDN с несколькими облаками – Edge, вы получите хорошую производительность. Netlify поддерживает множество сторонних приложений и инструментов, включая такие надстройки, как Analytics, Identity, Forms и база данных Fauna. Netifly предоставляет удобные инструменты для автоматизации рабочих процессов, в том числе с помощью Atomic можно упростить развертывание новых сайтов, можно делать неограниченное количество снимков состояния и откатывать до них, можно назначать пользовательские заголовки, управлять DNS, перенаправлением и правилам прокси. Netlify размещает веб-сайт в отказоустойчивой глобальной сети доставки приложений для непрерывного и быстрого обслуживания веб-страниц. Можно также управлять зонами DNS с помощью их панели мониторинга. Автоматического HTTPS обеспечивает безопасность сайта, так как Netlify предлагает сертификат TLS бесплатно. Она обеспечивает расширенные функции, управляемые API, без сложных интеграций. Он предлагает шлюз API, управление доступом к данным на основе JWT, прокси-заголовки для аутентификации, сохраненные переменные и вебхуки. Благодаря Netlify Analytics можно получить подробную информацию о посетителях веб-сайта, источниках, просмотрах страниц и т.д. Также можно использовать функции AWS Lambda, управлять подписями, восстановлением паролей, входами в систему и т. д. без развертывания службы аутентификации. Управление отправками и формами без внедрения JavaScript или дополнительных кодов. Netlify Large Media позволяет управлять большими ресурсами и контролем версий файлов независимо от их размера. 2. Google Cloud Storage Высокая безопасность и масштабируемость платформы Google Cloud расширяет возможности компаний любого размера, от индивидуальных разработчиков до крупных предприятий. Возможность управления жизненным циклом объектов (Object Lifecycle Management OLM), которое можно использовать для настройки автоматического перехода всех данных на более недорогие хранилища. Можно легко устанавливать критерии для данных и управлять ими. Google Cloud включает в себя растущий список глобальных центров обработки данных с достаточно большим количеством вариантов автоматического резервирования. Можно выбрать расположение и способ хранения данных, чтобы оптимизировать веб-сайт для быстрого реагирования и создать полный план аварийного восстановления. С помощью класса хранения можно определить модель ценообразования, а также доступность, применимую к хранению данных. Вы можете выбрать из четырех возможных вариантов: Стандарт Nearline - один раз в месяц Coldline - раз в квартал Архивирование один раз в год Google Cloud предлагает управление версиями объектов, которое позволяет хранить копии объектов в случае их перезаписи или удаления. Можно определить периоды хранения данных перед безвозвратным удалением. Можно даже прикрепить объект, чтобы предотвратить его удаление. Шифрование и хранение объектных данных с помощью ключей шифрования, хранящихся в службе управления облачными ключами. Можно отключить ACL объектов для равномерного управления доступом к ресурсам в Google Cloud. Функция Bucket Lock включена для настройки политик хранения данных. Отправка уведомлений при создании, удалении или обновлении объектов. Ведение журналов доступа к данным и активности, и управление разрешениями доступа с помощью облачного управления удостоверениями и доступом (IAM). Google Cloud предлагает интегрированные репозитории для машинного обучения и аналитики. Альтернативы облачным хранилищам Google: Amazon S3 Amazon S3 включает прямые функции управления, чтобы позволить Вам организовать и настроить данные. Он предназначен для обеспечения высокой долговечности и хранения данных для огромного числа приложений. Amazon S3 может создать копии объекта, предлагает доступные тарифы для мест хранения, обладает возможностями аудита и утверждает, что соблюдает строгие меры безопасности как собственные в виде S3 Block Public Access, так и известные стандарты соответствия PCI-DSS, HITECH/HIPAA, FISMA, и т.д. Vultr Vultr поддерживает гибкую интеграцию через S3 API и предоставляет масштабируемому по требованию архитектуру, на которую вы можете полагаться. Она использует кэширование NVMe для обеспечения сверхпроизводительности и постоянной доступности данных. Можно также хранить статические данные мультимедиа, такие как изображения, видео и аудио. 3. Surge Surge предоставляет разработчику простой путь для развертывания проектов на высококачественном CDN через Grunt, NPM и Gulp. С каждым проектом можно использовать поддержку настраиваемого домена, поддержку pushState, бесплатную сертификацию SSL для доменов Surge, пользовательские страницы ошибок 404, развертывание CLI без ограничений, интеграцию с цепью инструментов Grunt и перекрестную поддержку ресурсов. Surge интегрируется с инструментом сборки, который используется для упрощения развертывания. Такие инструменты включают плагин Grunt, плагин Gulp, скрипт npm, хуки Git, Jekyll, Node.js, статические генераторы сайтов, службы CI и другие инструменты автоматического развертывания. Пригласите своих коллег и сотрудников. Все, что вам нужно для публикации содержимого на вашем веб-сайте – это ввести одну команду. 4. Render Легко разворачивайте статичный сайт в Render. Просто привяжите GitLab или репозиторий GitHub, и пусть он создаст ваш веб-сайт и обслуживает его на глобальном CDN. Лучше всего то, что статичные сайты с трафиком до 100 ГБ в месяц на Render можно размещать совершенно бесплатно. После превышения данного лимита за каждый гигабайт придется платить $0,10 в месяц. Render предлагает автоматическое и непрерывное развертывание и превентивное аннулирование кэша. Можно бесплатно присоединять к проекту сотрудников, чтобы получить их помощь в управлении сайтом. Render предлагает функцию Pull Request Preview, которая позволяет автоматически тестировать и просматривать введенные изменения перед публикацией. Хостинг предоставляет подробные графики пропускной способности, встроенную поддержку HTTP/2 для повышения скорости загрузки страниц, возможности перезаписи и перенаправления, поэтому для повышения производительности и безопасности не требуется писать дополнительный код и пользовательские заголовки HTTP. Для повышения производительности Render предлагает автоматическое сжатие Brotli, которое уменьшает размеры страниц и ускоряет работу сайтов. Render также включает автоматические перенаправления с HTTP на HTTPS, а также неограниченное количество пользовательских доменов. Помимо поддержки простых HTML/JavaScript/CSS сайтов, он предлагает мощные генераторы сайтов, такие как Create React Application, Jekyll, Vue.js, Gatsby, Hugo, Next.js и Docusaurus. Его глобальная сеть CDN невероятно быстрая, безопасная и надежная, и они также кэшируют весь ваш контент по всему миру, чтобы обеспечить наилучшие возможности для пользователей. 5. GitHub Pages Отдельные разработчики и желающие разместить статичные веб-сайты и развернуть коды онлайн могут использовать GitHub бесплатно. Добавить настраиваемый домен просто: для этого достаточно включить файл CNAM в свою учетную запись. Для создания статичного кода можно создать новый репозиторий из панели управления учетными записями и развернуть его с помощью поддомена, чтобы протестировать его. GitHub предоставляет вам один веб-сайт для каждой учетной записи GitHub, а также организацию вместе с неограниченными сайтами проектов. 6. Firebase Хотите статический хостинг сайта производственного уровня? Firebase - хороший вариант! В дополнение к размещению сайта, вы можете использовать его базу данных в реальном времени вместе с хранилищем файлов. Он предлагает бесплатный SSL сертификат и индивидуальный домен, даже в бесплатном тарифном плане. Однако для увеличения пропускной способности и объема хранилища можно купить платную версию. С помощью Firebase можно развернуть не только личный веб-сайт, но и одностраничное веб-приложение, прогрессивное веб-приложение и целевую страницу мобильного приложения без проблем. Не имеет значения, откуда пользователь обращается к вашему сайту; Firebase обеспечивает высокую производительность с помощью твердотельных накопителей на эффективных CDN. Вы получаете автоматически настроенный SSL абсолютно бесплатно для каждого сайта. Пользователи также могут подключать свои домены без нудной проверки. Развертывание сайта также возможно с помощью одной команды, и можно выполнить откат к предыдущей версии или просмотреть историю развертываний через консоль Firebase. 7. Vercel Платформа Vercel, которую можно назвать платформой все в одном, предлагает развертывание JAMStack и Static веб-сайтов. Она не требует настройки и работает с любым типом веб-инфраструктуры. С каждым сайтом вы получаете предварительный URL-адрес, которым вы можете поделиться со своей группой для совместной работы. Vercel обеспечивает высочайшую производительность сайта благодаря масштабируемым и упрощенным развертываниям. Просто перейдите в Git, чтобы оживить ваш сайт. Он поддерживает популярные фронтэнд-фреймворки, такие как Next.js, Vue.js, React, Angular, Gatsby, Hugo, Nuxt, Ember и Svelte. На данной платформе можно запускать мгновенные тесты для каждого развертывания, а затем выпускать их с полной уверенностью. Это облегчает интеграцию с такими поставщиками Git, как GitHub, Bitbucket и GitLab. Кроме того, Vercel предлагает динамическое восстановление сайта с помощью развертываемых хуков, что удобно при работе с CMS. Можно создать одну страницу за один раз, поэтому не нужно перестраивать весь сайт. Vercel благодаря своим сверхбыстрым глобальным CDN, расположенным в 70 городах, гарантирует доступность в 99,99%. Заключение Статичные сайты еще не забыты. Особенно сегодня, когда угрозы в Интернете вызывают наибольшую обеспокоенность во всем мире, статичные сайты становятся еще сильнее, чем когда-либо, чтобы снова управлять Интернетом и поддерживать ваш бизнес.
img
В нашей прошлой статье мы рассмотрели, как OSPF может автоматически фильтровать маршруты с помощью специальных областей и типов LSA. Но как насчет вариантов ручной фильтрации маршрутов в OSPF? В этой статье мы рассмотрим методы, которые можно использовать в различных точках топологии. Предыдущие статьи: Расширенные возможности OSPF: Области OSPF: создание конкретных типов областей Видео: протокол OSPF (Open Shortest Path First) за 8 минут Фильтрация на ASBR Одним из простых и эффективных методов фильтрации на ASBR является использование распределенного списка. Здесь мы определяем правила идентификации маршрута со списком доступа, а затем ссылаемся на этот список доступа в списке распространения. Рисунок 1. Топология OSPF В этом примере наша область 1 настроена как нормальная, не являющаяся магистральной областью. Вы можете увидеть это, при просмотре таблицы маршрутизации на ORL. show ip route Обратите внимание на два префикса (E2) 192.168.10.0 и 192.168.20.0. Давайте отфильтруем 192.168.10.0 на ASBR ATL. ATL# configuration terminal Enter configuration commands , one per line . End with CNTL/Z . ATL(config)#access-list 1 deny 192.168.10 .0 0.0.0.255 ATL(config)#access-list 1 permit any ATL(config)#router ospf 1 ATL(config-router)#distribute-list 1 out eigrp 100 ATL(config-router)#end ATL# Обратите внимание, насколько проста эта конфигурация. Давайте посмотрим, сработало ли это, еще раз изучив таблицу маршрутов ORL: show ip route Конфигурация работет отлично, и 192.168.10.0 больше не доступен на ORL. Другой простой метод - использовать команду summary-address на ASBR и использовать ключевое слово not-advertise. Вот пример из нашей топологии. Обратите внимание, что был удален предыдущий список рассылки из конфигурации ATL до этой настройки здесь: ATL#conf t Enter configuration commands, one per line. End with CNTL/Z . ATL(config)#router ospf 1 ATL(config-router)#summary-address 192 .168.10.0 not-advertise ATL(config-router)#end ATL# Проверка на ORL доказывает успешную фильтрацию сети 192.168.10.0. show ip route Нет ничего удивительного в том, что вы можете использовать подход route map для фильтрации в ASBR. Ведь route map невероятно полезны и гибки. Здесь мы определим правила со списком доступа (еще раз) и используем их в логике route map: ATL#conf t Enter configuration commands, one per line . End with CNTL/Z . ATL(config)#access-list 1 deny 192.168.10.0 0.0.0.255 ATL(config)#access-list 1 permit any ATL(config)#route-map МУМАР permit 10 ATL(config-route-map)#match ip address 1 ATL(config-route-map)#router ospf 1 ATL(config-router)#redistribute eigrp 100 metric 1000 route-map МУМАР subnets ATL(config-router)#end ATL# Как вы можете догадаться, проверка на ORL показывает отличную работу. show ip route Фильтрация на ABR Вы также можете фильтровать на ABR. Наиболее распространенным методом является использование списка префиксов, как показано здесь: ATL2#conf t Enter configuration commands, one per line. End with CNTL/Z. ATL2 (config)#ip prefix-list 1 deny 192.168.10.0/24 ATL2 (config)#ip prefix-list 1 permit 0.0.0.0/0 ATL2 (config)#router ospf 1 ATL2 (config-router )#area 1 filter-list prefix 1 out ATL2 (config-router )#end ATL2# show ip route Мы фильтруем префикс 192.168.10.0, но мы делаем это на ABR, и мы фильтруем по Type 3. Это контрастирует с фильтрацией типа 5 (для того же префикса!) Мы уже делали это раньше в ASBR. Фильтрация в роутере Имейте в виду, что вы можете легко фильтровать на любом спикере OSPF внутри самого маршрутизатора. Например, вы можете настроить подход к распределению списка и фильтровать входящие сообщения с его помощью. В этом примере мы еще раз остановимся на 192.168.10.0. Мы заблокируем его в ACL и будем использовать этот ACL в списке рассылки. Обратите внимание, что мы находимся на ORL: ORL#conf t Enter configuration commands , one per line . End with CNTL/Z . ORL(config) #access-list 1 deny 192.168.10.0 0.0.0.255 ORL(config) #access-list 1 permit any ORL(config)#router ospf 1 ORL(config-router)#distribute-list 1 in ORL(config- router)#end ORL# И снова наш желаемый результат проверки: show ip route
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59