СПОСОБ ОГРАНИЧЕНИЯ ОБЪЕМА СЕТЕВОГО ТРАФИКА, ПОСТУПАЮЩЕГО НА ЛОКАЛЬНЫЙ УЗЕЛ, ДЕЙСТВУЮЩИЙ СОГЛАСНО ПРОТОКОЛУ Ethernet ПРОМЫШЛЕННОГО ПРИМЕНЕНИЯ
METHOD OF LIMITING AMOUNT OF NETWORK TRAFFIC REACHING LOCAL NODE OPERATING ACCORDING TO INDUSTRIAL Ethernet PROTOCOL

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к электронному устройству, используемому в контексте применения в промышленности. Конкретно оно относится к электронному устройству, используемому в системе или соединенному с системой мониторинга и управления, такой как система выработки, передачи или распределения электроэнергии, или для системы управления производственным процессом.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
Многие электронные устройства в современных системах управления выполняются с наличием некоторой встроенной развитой логики. Такие устройства зачастую являются компонентом встроенных устройств или обращаются к ним. Управляющие системы для управления производственным процессом и системы для управления в ходе выработки, распределения и передачи электроэнергии зачастую соединены с промышленным оборудованием, мониторинг которого и управление которым управляющая система осуществляет при помощи одной или нескольких сетей передачи данных, которые используют открытые протоколы, такие как протоколы на основе стандарта Ethernet. Это стандартизовало и упростило передачу производственных данных для целей мониторинга и управления.
Электронные устройства, которые могут быть соединены с управляющей системой, использующей применяемый в промышленности стандарт Ethernet, включаются в состав многих и различных устройств, например, инструментальных средств, таких как датчики или преобразователи, исполнительных механизмов, таких как клапаны, двигатели, насосы, переключатели, а также средств контроля основного оборудования, такого как генераторы, преобразователи, выключатели, силовые цепи и так далее.
Вследствие ограниченных ресурсов обработки, ограниченные по ресурсам электронные устройства или встроенные устройства, могут легко переполняться преднамеренным (или случайным) избыточным сетевым трафиком. В таких условиях необходима фильтрация пакетов, чтобы ограничивать объем трафика. Санкционированный трафик требуется пропускать, тогда как нежелательный трафик должен отвергаться. Вследствие ограниченных ресурсов обработки в ограниченном по ресурсам электронном устройстве ставится задача осуществить эту функциональность в виде программно реализованного решения в небольшом электронном устройстве с ограниченными вычислительными ресурсами.
Фильтрация сетевого трафика обычно выполняется с помощью программно реализованной фильтрации, или внешнего брандмауэра, или их комбинации. Внешние брандмауэры требуют дополнительной инженерной разработки, и могут основываться на (программных) продуктах, изготавливаемых третьей стороной. В таких брандмауэрах или программно реализованных фильтрах, фильтрация сетевого трафика имеет место после приема пакета системой фильтрации.
Патент США № 6434118, озаглавленный «Method for determining round trip time utilizing ATM traffic management mechanism» (Способ определения времени прохождения сигнала в прямом и обратном направлениях с использованием механизма ATM (асинхронный режим передачи) управления трафиком), переданный корпорации 3COM, в контексте тестирования указывает на установление времени прохождения сигнала в прямом и обратном направлениях так, чтобы в Ethernet кадр можно было намеренно поместить ошибку контроля циклическим избыточным кодом (CRC), которая обеспечивает, что в пункте назначения уровень управления доступом к среде передачи (MAC) отбрасывает кадр и препятствует его поступлению (прохождению) на вышележащие уровни. Патент США № 7280591, озаглавленный «Integrated reduced media independent interface» (Интегрированный упрощенный независимый от среды передачи интерфейс), переданный компании Via technologies (производитель микропроцессорных наборов для ПК), описывает интегрированный упрощенный независимый от среды передачи интерфейс (Интегрированный RMII) и связанный с ним способ внутреннего соединения схемы уровня MAC и схемы уровня PHY.
US 2004/073671 раскрывает способ и устройство для фильтрации пакетов с использованием выделенного процессора. Предложен выделенный процессор фильтрации пакета данных, с единственной функцией фильтрации пакетов данных на основе списка исходных IP адресов, сохраненных в высокоскоростном запоминающем устройстве в процессоре. Единственная функция процессора - это просмотр списка исходных IP адресов каждого принятого пакета данных для определения, совпадает ли исходный IP адрес с одним из сохраненных исходных IP адресов, и если совпадает, то отбрасывать или направлять пакеты данных, в зависимости от конфигурации процессора.
US 2007/043846 раскрывает систему и способ обнаружения атак, основанных на сети, на электронные устройства для того, чтобы отфильтровать пакеты атак. Должным образом смоделированная фильтрация пакетов может отбросить злонамеренные пакеты и бесполезные пакеты, которые предоставляют информацию о потенциальных атаках, основанных на сети. Нежелательные пакеты отфильтровываются как можно скорее с помощью многокаскадной фильтрации пакетов.
КРАТКОЕ ОПИСАНИЕ СУЩНОСТИ ИЗОБРЕТЕНИЯ
Цель данного изобретения состоит в устранении одного или нескольких упомянутых выше недостатков. Эта и другие цели достигаются согласно способу, характеризуемому пунктом 1 формулы изобретения.
В соответствии с первым аспектом изобретения раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек (сетевых протоколов), содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит прием упомянутого сетевого трафика, по меньшей мере, на одном упомянутом физическом уровне упомянутого электронного устройства, обнаружение упомянутого приема нежелательных данных, и отбрасывание упомянутого приема нежелательных данных в устройстве канального уровня или контроллере доступа к среде передачи (MAC) прежде его поступления на другой более высокий уровень упомянутого сетевого стека упомянутого электронного устройства.
В соответствии с другим вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ заключается в том, что упомянутая фильтрация содержит проверку (анализ) упомянутого сетевого трафика в течение приема и передачи (прохождения), по меньшей мере, от одного упомянутого физического уровня, по меньшей мере, на один упомянутый канальный уровень, и сравнение упомянутого сетевого трафика с информацией из перечня управления доступом.
В соответствии со следующим вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит обнаружение упомянутого приема нежелательных данных и установление управляющего сигнала в контроллере доступа к среде передачи упомянутого электронного устройства путем переключения линии, шины или схемы на заранее заданный потенциал, так что контроллер доступа к среде передачи (MAC) канального уровня отклоняет упомянутый прием нежелательных данных, переданный от физического уровня.
В соответствии с очередным вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит установление линии (9) управления относительно обнаружения упомянутого приема нежелательных данных, так что контроллер доступа к среде передачи (MAC) обнаруживает ошибку приемника (RX_ERROR) и/или отрицание действительности данных (RX_DV) и/или другую линию управления и отбрасывает весь Ethernet кадр, содержащий упомянутый прием нежелательных данных.
В соответствии с очередным вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит регистрацию данных относительно отброшенных пакетов нежелательных данных и запись характеристик сетевого трафика.
Преимущество этого варианта осуществления состоит в том, что может быть собрана информация о появлении отброшенных пакетов данных с интенсивностью выше заранее заданного уровня. Эта информация может использоваться в перечне управления доступом, таком как «белый» перечень или «черный» перечень. Информация может также использоваться для исследования причины появления нежелательных пакетов данных или для идентификации способа для устранения нежелательных пакетов.
В соответствии с очередным вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит включение (активацию) фильтрации в зависимости от числа пакетов данных, принимаемых в единицу времени, и затем проверку упомянутого сетевого трафика в течение приема, по меньшей мере, от одного упомянутого физического уровня (PHY), по меньшей мере, на один упомянутый канальный уровень или контроллер доступа к среде передачи (MAC). Преимущество этого варианта осуществления состоит в том, что фильтрация может активироваться, если ощущается необходимость, не активируется обязательно. Эта информация также может комбинироваться с другой информацией приема данных, чтобы определять, когда можно включать или выключать фильтрацию.
В соответствии с очередным вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит включение фильтрации в зависимости от внешнего сигнала и затем проверку упомянутого сетевого трафика в течение приема, по меньшей мере, от одного упомянутого физического уровня (PHY), по меньшей мере, на один упомянутый канальный уровень или контроллер доступа к среде передачи (MAC): или путем включения фильтрации в зависимости от числа пакетов данных, принимаемых в единицу времени, в соответствии, по меньшей мере, с одним заранее заданным числом пакетов данных.
В соответствии с очередным вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит проверку упомянутого сетевого трафика в течение приема, по меньшей мере, от одного упомянутого физического уровня (PHY), начиная проверку данных, образующих частично принятый пакет данных. Преимущество этого варианта осуществления состоит в том, что нежелательный пакет данных может обнаруживаться без ожидания обработки всего кадра, таким образом, сберегая ресурсы.
В соответствии с очередным вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит проверку упомянутого сетевого трафика в течение приема, по меньшей мере, от одного упомянутого физического уровня (PHY), с началом проверки при приеме полного пакета данных.
В соответствии с очередным вариантом осуществления изобретения, раскрывается способ для ограничения объема сетевого трафика, поступающего на локальный узел, в электронном устройстве, действующем по сетевому протоколу Ethernet и использующем сетевой стек, содержащий, по меньшей мере, один физический уровень, осуществляющий связь, по меньшей мере, с одним канальным уровнем, где принятые данные передаются на один или несколько более высоких уровней упомянутого сетевого стека, упомянутое электронное устройство является соединяемым с сетью связи, в каковом способе упомянутый сетевой трафик фильтруется, и отфильтровывается прием нежелательных данных, адресованный на упомянутое электронное устройство, упомянутый способ содержит проверку упомянутого сетевого трафика в течение приема, по меньшей мере, от одного упомянутого физического уровня (PHY), по меньшей мере, на один упомянутый канальный уровень или контроллер доступа к среде передачи путем сравнения с данными в любой группе из перечня допущенного трафика, информации на основании анализа трафика, перечня, обновленного процессором упомянутого электронного устройства, перечня недопущенного трафика, перечня управления доступом.
В первом аспекте изобретения обеспечивается способ, который ограничивает воздействия некоторых сетевых атак "отказ в обслуживании" на встроенное сетевое устройство. Способ повышает скорость реагирования ограниченных по ресурсам систем, несущих потери от случайного или преднамеренного превышения сетевого трафика, например, во время атаки "отказ в обслуживании" (DOS). Способ ограничивает объем данных, принимаемых сетевым стеком электронного устройства, такого как встроенное устройство, посредством этого уменьшая использование центрального процессора (ЦП). Термин ЦП используется, чтобы описывать и микропроцессоры, и микроконтроллеры. На основе неких параметров, только выбранному трафику позволено проходить через сетевой стек электронного устройства, при нулевой или постоянной, близкой к нулевой задержке, добавляемой этим процессом фильтрации. Посредством проверки трафика в течение приема и отбрасывания передачи, обнаруженной, что будет нежелательной, нежелательный трафик останавливается прежде его поступления на ЦП. Таким образом, санкционированный трафик может проходить с нулевой или постоянной, близкой к нулевой задержкой. Термин "в течение приема" относится к пакету, который является при этом принимаемым электронным устройством.
Важное преимущество описанного способа и схемы состоит в том, что сетевой трафик фильтруется без воздействия на задержку, поскольку фильтрация пакетов имеет место в течение передачи, означая «в течение приема» в электронном устройстве. Предварительная фильтрация отсутствует. Пакеты данных фильтруются, в то время как они принимаются электронным устройством.
Другое преимущество состоит в том, что это изобретение может несложно реализовываться во встроенной системе. Предпочтительно аппаратно реализованная схема, такая как программируемая вентильная матрица (FPGA) или специализированная интегральная схема (ASIC), соединяется между двумя схемами электронного устройства.
Изобретение также может быть интегрированным непосредственно в схему уровня PHY или схему контроллера доступа к среде передачи (MAC), или интегрированным в ЦП. Центральные процессоры, предназначающиеся для сетевых встроенных систем, часто содержат MAC, и изобретение тогда может быть интегрировано с таким ЦП, или другим ЦП, который содержит интегрированный MAC, а также дополнительно ЦП, который содержит интегрированные MAC и PHY.
Изобретение также может быть расширено дополнительными способами обнаружения нежелательного трафика, однако данное описание не уточняет способы для обнаружения нежелательного трафика, а скорее описывает, каким образом останавливают обнаруженный нежелательный трафик с минимальной задержкой.
Одним техническим результатом данного изобретения, реализованного в электронном устройстве, является повышение устойчивости сети при низкой стоимости. Другое преимущество, при сравнении с внешним брандмауэром, состоит в том, что изобретение также не требует задания конфигурации пользователем, или дополнительных технических инструментальных средств. Кроме того, брандмауэр с детерминированной постоянной задержкой может иметь варианты использования в Ethernet приложениях реального времени с низкой задержкой. В электронных устройствах или системах, которые уже применяют схему, такую как программируемая вентильная матрица (FPGA), используя способы, идеи и так далее из варианта осуществления изобретения, возможно, что эти функции добавят небольшие или не добавят дополнительные затраты к существующей стоимости изготовления электронного устройства.
Как отмечено выше, преимуществом описанного способа является нулевая или постоянная, близкая к нулевой задержка, вносимая при фильтрации. Кадр, Ethernet кадр, пакет и пакеты данных и разновидности терминов имеют сходное значение в этом описании. Известные брандмауэры обычно считывают полный Ethernet кадр прежде принятия решения о том, каким образом обрабатывать пакет. Ethernet кадр затем или передается, или отбрасывается. Считывание полного кадра вносит дополнительную задержку, каковая задержка также является переменной в зависимости от длительности кадра, и может быть значительной в зависимости от структуры или содержимого одного или нескольких пакетов данных.
Напротив, описанный способ фильтрует сетевой трафик с нулевой или постоянной, близкой к нулевой задержкой. Фильтрация происходит после запуска приема на физическом уровне, в то время как принятый кадр передается на уровень MAC Ethernet. Обнаружительная часть фильтрации может начинаться над данными, образующими частично принятый пакет данных. Обнаружение может также или взамен выполняться только после того, как был принят полный пакет данных. В любом случае, если обнаружен нежелательный кадр, устанавливается сигнал линии шины RX_ERROR или другой управляющий сигнал для шины независимого от среды интерфейса (MII), или подобной шины. Если MAC Ethernet обнаруживает этот управляющий сигнал, кадр отбрасывается, как если бы он содержал ошибку. В качестве альтернативы, на высокоскоростной последовательной шине, не имеющей отдельные сигналы управления и данных, управляющие данные могут добавляться к кадру, чтобы получить такой же результат.
Согласно другому аспекту изобретения, раскрывается электронное устройство, содержащее локальный узел, приспособленный для действия согласно сетевому протоколу Ethernet, использующий сетевой стек, содержащий, по меньшей мере, один физический уровень (PHY), и связь (средство связи), по меньшей мере, с одним канальным уровнем или контроллером доступа к среде передачи, упомянутое электронное устройство имеет последовательный интерфейс для соединения с сетью связи, причем упомянутый сетевой трафик на упомянутое электронное устройство можно фильтровать и отфильтровывать прием нежелательных данных, адресованный на упомянутое электронное устройство, каковое электронное устройство также содержит блок фильтрации, соединенный между упомянутым, по меньшей мере, одним физическим уровнем (PHY) и канальным уровнем или контроллером доступа к среде передачи (MAC), блок фильтрации выполняется, по меньшей мере, с одной переключаемой линией или шиной и управляющей логикой, чтобы проверять упомянутый сетевой трафик в течение приема, по меньшей мере, от одного упомянутого физического уровня, по меньшей мере, на один упомянутый канальный уровень или контроллер доступа к среде передачи, и сравнивать упомянутый сетевой трафик, по меньшей мере, с одним перечнем управления доступом и обнаруживать упомянутый прием нежелательных данных, блок фильтрации приспособлен для посылки сигнала, обеспечивающего, что выбранный упомянутый прием нежелательных данных будет отвергнут и отброшен, по меньшей мере, одним упомянутым канальным уровнем или контроллером доступа к среде передачи прежде, чем он поступит на другой уровень упомянутого сетевого стека.
В соответствии с очередным вариантом осуществления изобретения, раскрывается электронное устройство, содержащее локальный узел, приспособленный для действия согласно сетевому протоколу Ethernet, использующий сетевой стек, содержащий, по меньшей мере, один физический уровень (PHY) и связь, по меньшей мере, с одним канальным уровнем или контроллером доступа к среде передачи, упомянутое электронное устройство имеет последовательный интерфейс для соединения с сетью связи, причем упомянутый сетевой трафик на упомянутое электронное устройство может фильтроваться, и отфильтровываться прием нежелательных данных, адресованный на упомянутое электронное устройство, причем электронное устройство также содержит, что блок фильтрации приспособлен устанавливать сигнал ошибки линии управления посредством переключаемой линии или шины при обнаружении упомянутого приема нежелательных данных.
В соответствии с очередным вариантом осуществления изобретения, раскрывается электронное устройство, содержащее локальный узел, приспособленный для действия согласно сетевому протоколу Ethernet, использующий сетевой стек, содержащий, по меньшей мере, один физический уровень (PHY) и связь, по меньшей мере, с одним канальным уровнем или контроллером доступа к среде передачи, упомянутое электронное устройство имеет последовательный интерфейс для соединения с сетью связи, причем упомянутый сетевой трафик на упомянутое электронное устройство может фильтроваться и отфильтровываться прием нежелательных данных, адресованный на упомянутое электронное устройство, причем блок фильтрации электронного устройства приспособлен добавлять управляющие данные при обнаружении упомянутого приема нежелательных данных.
В соответствии с очередным вариантом осуществления изобретения, раскрывается электронное устройство, содержащее локальный узел, приспособленный для действия согласно сетевому протоколу Ethernet, использующий сетевой стек, содержащий, по меньшей мере, один физический уровень (PHY), и связь, по меньшей мере, с одним канальным уровнем или контроллером доступа к среде передачи, упомянутое электронное устройство имеет последовательный интерфейс для соединения с сетью связи, причем упомянутый сетевой трафик на упомянутое электронное устройство может фильтроваться и отфильтровываться прием нежелательных данных, адресованный на упомянутое электронное устройство, причем блок фильтрации выполняется, по меньшей мере, частично в виде реализованной аппаратно схемы.
В соответствии с очередным вариантом осуществления изобретения, раскрывается электронное устройство, содержащее локальный узел, приспособленный для действия согласно сетевому протоколу Ethernet, использующий сетевой стек, содержащий, по меньшей мере, один физический уровень (PHY) и связь, по меньшей мере, с одним канальным уровнем или контроллером доступа к среде передачи, упомянутое электронное устройство имеет последовательный интерфейс для соединения с сетью связи, причем упомянутый сетевой трафик на упомянутое электронное устройство может фильтроваться и отфильтровываться прием нежелательных данных, адресованный на упомянутое электронное устройство, причем электронное устройство содержит инструментальное средство или управляющую логику для определения числа пакетов данных, принимаемых в единицу времени.
В соответствии с очередным вариантом осуществления изобретения, раскрывается электронное устройство, содержащее локальный узел, приспособленный для действия согласно сетевому протоколу Ethernet, использующий сетевой стек, содержащий, по меньшей мере, один физический уровень (PHY) и связь, по меньшей мере, с одним канальным уровнем или контроллером доступа к среде передачи, упомянутое электронное устройство имеет последовательный интерфейс для соединения с сетью связи, причем упомянутый сетевой трафик на упомянутое электронное устройство может фильтроваться, и отфильтровываться прием нежелательных данных, адресованный на упомянутое электронное устройство, причем электронное устройство соединяется с внешней схемой, от которой оно может принимать информацию для определения в управляющей логике числа пакетов данных, принимаемых в единицу времени.
В соответствии с очередным вариантом осуществления изобретения, раскрывается электронное устройство, содержащее локальный узел, приспособленный для действия согласно сетевому протоколу Ethernet, использующий сетевой стек, содержащий, по меньшей мере, один физический уровень (PHY) и связь, по меньшей мере, с одним канальным уровнем или контроллером доступа к среде передачи, упомянутое электронное устройство имеет последовательный интерфейс для соединения с сетью связи, причем упомянутый сетевой трафик на упомянутое электронное устройство может фильтроваться и отфильтровываться прием нежелательных данных, адресованный на упомянутое электронное устройство, при этом это электронное устройство содержит инструментальное средство для регистрации данных (47) относительно отбрасываемых нежелательных пакетов данных и/или записи характеристик сетевого трафика.
Компьютерная программа, и компьютерная программа, записанная на читаемом компьютером носителе, раскрываются в другом аспекте изобретения.
КРАТКОЕ ОПИСАНИЕ ФИГУР ЧЕРТЕЖЕЙ
Более полное понимание способа и системы по настоящему изобретению может быть получено со ссылкой на нижеследующее подробное описание при рассмотрении вместе с сопроводительными чертежами, на которых:
Фиг.1 показывает схематичную блок-схему известного сетевого протокола или стандарта Ethernet;
Фиг.2 показывает схематичную блок-схему для схемы или устройства, соединяемого между PHY и модулем MAC согласно варианту осуществления изобретения;
Фиг.3 показывает известную модель уровней организации сети, эталонную модель взаимодействия открытых систем (ВОС, OSI);
Фиг.4 показывает схематичную блок-схему последовательности операций для способа согласно одному аспекту варианта осуществления изобретения, показанного на Фиг.2;
Фиг.5 показывает схематичную блок-схему последовательности операций, содержащую PHY и модуль MAC, согласно варианту осуществления изобретения, показанного на Фиг.2, показывающей более подробно вариант осуществления, приспособленный для передачи данных приблизительно в один гигабит или выше.
ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
В первом аспекте изобретения реализуется способ, который блокирует выбранный сетевой трафик, основываясь на функциях, существующих в MAC Ethernet. MAC по проектному решению не передает пакеты, которые искажены, или пакеты при установленном сигнале линии шины RX_ERROR, соответствующем ошибке приема в интерфейсе MII. На других шинах, где для управляющих сигналов нет выделенных отдельных линий шин, MAC по проектному решению не передает пакеты, которые помечены управляющими данными, указывающими ошибку. (Схема MAC также отбросит пакет данных, который является действительным, но имеет ошибочный MAC адрес, некорректный MAC адрес). Предпочтительным осуществлением изобретения является схема, соединяемая между (уровнями) PHY Ethernet и MAC Ethernet. Ethernet кадры, посланные (уровнем) PHY Ethernet и отброшенные (уровнем) MAC Ethernet, не влияют на рабочую характеристику ЦП.
Изобретение может быть реализовано с помощью простого электронного устройства, такого как программируемая вентильная матрица, FPGA, требующего лишь ограниченного объема ресурсов. Альтернативно изобретение могло быть интегрировано в PHY, MAC, ЦП или другую схему.
На Фиг.1 показана часть известного, сетевого протокола стандарта Ethernet, иллюстрирующая соединение схемы (PHY) 1 физического уровня с контроллером 2 доступа к среде передачи (MAC). PHY и MAC являются интерфейсами между физическим уровнем и канальным уровнем. Термины «канальный уровень», и «уровень управления передачей данных» используются взаимозаменяемо.
На Фиг.3 показана часть общепринятой и широко известной модели, эталонной модели взаимодействия открытых систем OSI. Эта модель описывает семь концептуальных уровней:
31. Физический уровень 1,
32. Канальный уровень 2 (управления передачей данных),
33. Сетевой уровень 3,
34. Транспортный уровень 4,
35. Сеансовый уровень 5,
36. Уровень представления 6 и
37. Прикладной уровень 7.
Уровень в модели OSI является набором концептуально подобных функций, которые предоставляют услуги на уровень выше данного, и принимает услугу от уровня ниже данного. (См. технический отчет TR ISO/IEC (Международная Организация по стандартизации, ИСО/Международная электротехническая комиссия, МЭК) 8802-1:2001 или любой нормативный текст относительно стандартов IEEE 802 (Институт инженеров по электротехнике и радиоэлектронике, ИИЭР) для получения дополнительной информации о модели OSI и модификациях, применимых к различным сетевым стандартам.) В рамках некоторых стандартов, например, архитектур локальных сетей (ЛВС, LAN) по IEEE 802, канальный уровень 2 содержит схему управления доступом к среде передачи (MAC) или выполняется с таковой. MAC обычно предоставляет механизмы адресации и управления доступом к каналу, которые позволяют нескольким терминалам или узлам сети осуществлять связь в рамках многоточечной сети связи, такой как локальная сеть (LAN).
На Фиг.2 показана схема 3, соединенная между уровнем PHY и канальным уровнем, содержащим модуль или схему MAC. На фигуре показан блок фильтрации в форме схемы 3 фильтрации, совместимой с шиной MII, соединяемой между PHY и модулем MAC. Схема 3 может быть осуществлена в форме независимого от среды интерфейса, или MII. Шина MII между PHY 1 и MAC 2 выполняется с отдельной линией 11 данных RX-D и линией 12 управления RX_ERROR. На фигуре показано, что схема фильтрации содержит временную память или регистры 4, запоминающее устройство 6 фильтра, интерфейс на внешнюю схему 20, например, ЦП. Схема или блок фильтрации также содержит блок управления, или управляющую логику 8. Интерфейс обнаружения ошибок в MII, предпочтительно шина или линия 9 ошибки приема RX_ERROR, соединяется с сигнальной линией с MAC 2. Независимый от среды интерфейс (MII) может быть упрощенным независимым от среды интерфейсом (RMII) или другой разновидностью независимого от среды интерфейса, такой как гигабитный независимый от среды интерфейс (GMII), упрощенный гигабитный независимый от среды интерфейс (RGMII) или другой шиной с отдельными линиями управления и данных.
На Фиг.2 PHY 1 показан соединенным непосредственно с MAC 2, и схема 3 также соединена с той же шиной. RX_ERROR соединяется через схему 3 между PHY и MAC. Схема содержит перечень правил трафика, или перечень управления доступом, предпочтительно хранимый в запоминающем устройстве 6 фильтра, которое используется для сравнения, чтобы обнаруживать нежелательный или желательный сетевой трафик, и этот перечень может быть:
(a) созданным на основании анализа трафика или,
(b) перечнем, обновляемым встроенной системой электронного устройства или,
(c) перечнем нежелательного трафика («черный» перечень) или,
(d) перечнем санкционированного трафика («белый» перечень),
(e) перечнем, предоставленным поставщиком,
(f) перечнем на основании среды, в которой работает встроенная система,
(g) перечнем от другого источника,
(i) другим перечнем управления доступом,
(h) или любой комбинацией вышеуказанного.
Правила трафика могут обновляться и изменяться системой, например, согласно информации, маршрутизуемой через внешнюю схему 20, или в управляющей логике 8. Фильтрацию можно включать или выключать, таким образом, позволяя трафику, который соответствует перечню, проходить без установления сигнала линии управления шины, если фильтрация выключена. Если фильтрация включена, то она при обнаружении нежелательных данных устанавливает сигнал RX_ERROR линии управления шины или другой линии управления. Критерии отбора для включения схемы фильтрации или ее выключения могут содержать критерии, такие как:
(a) предельное значение числа пакетов в единицу времени. Число пакетов в единицу времени может поставляться встроенной системой, или
(b) избирательно посредством ЦП, или
(c) другими средствами.
Существенно, схема 3 фильтрации не задерживает кадры Ethernet путем их сохранения и их посылки на MAC в более поздний момент времени. Отвергнутые Ethernet кадры отбрасываются, отвергаются схемой MAC на канальном уровне и не поступают на другие уровни (такие как уровни, соответствующие уровням 33-37 модели OSI, см. Фиг.3) в сетевом стеке процессора во встроенном сетевом устройстве.
Если активна, схема блока логики решений или управляющая логика 8 проверяет содержимое Ethernet кадров, и сопоставляет его с перечнем управления доступом, содержащим правила трафика. Если, например, отсутствует соответствие с какими-либо данными в «белом» перечне, схема 3 устанавливает сигнал линии 9 RX_ERROR независимого от среды интерфейса (MII) или другого управления (RX_ERROR 12), чтобы сигнализировать ошибку в Ethernet кадре (см. Фиг.2).
Число пакетов данных, принимаемых в единицу времени, принимается во внимание и может записываться. Это может выполняться в рамках управляющей логики 8 блока 3 фильтрации, или это может выполняться согласно приему по линии, входящей в блок фильтрации, например, от внешней схемы 20, информации от внешнего устройства или схемы об интенсивности (поступления) принимаемых пакетов, каковая информация может быть вычислена или обработана в управляющей логике 8 для поступления с интенсивностью пакетов данных, принимаемых в единицу времени. Фильтрацию необязательно можно включать, если число пакетов данных, принимаемых в единицу времени, достигает или превышает заранее заданное число. Число событий отбрасывания, когда нежелательные пакеты данных отбрасываются, может обнаруживаться и предпочтительно записываться. Данные относительно отбрасываемых пакетов нежелательных данных могут регистрироваться, и/или записываться информация о характеристиках, таких как объем сетевого трафика, момент времени отбрасывания пакета данных. Отброшенный трафик может регистрироваться схемой фильтрации и сохраняться для обработки в более поздний момент времени. См. также этап 47 по Фиг.4, и описанный ниже в связи с Фиг.4.
Практический и осуществимый способ фильтровать входящие передачи данных состоит в сравнении их с перечнем допущенного трафика. «Белый» перечень сетевого трафика предназначен для содействия нормальной связи с устройством, испытывающим некоторые атаки "отказ в обслуживании". Определены нижеследующие инварианты:
1. Верхнее предельное значение для обрабатываемых в единицу времени пакетов. При достижении этого предельного значения, приведенный в «белом» (перечне) трафик может отвергаться.
2. Предельное значение для обрабатываемых в единицу времени пакетов. При достижении этого предельного значения, трафик, не имеющий соответствия в «белом» перечне, может отвергаться.
Нижеследующее может быть частью приведенного в «белом» перечне трафика:
1. Перечень открытых, установленных соединений в сетевом стеке, должен приводиться в «белом» перечне. Обычно это является небольшим объемом информации, которая может переноситься из ЦП электронного устройства, которое включает в состав схему 3, применяющую изобретение.
2. Второй перечень систем, с которыми электронное устройство успешно осуществляло связь в прошлом.
«Черный» перечень недопустимого сетевого трафика также может создаваться и использоваться взамен «белого» перечня, или заодно с ним.
В другом варианте осуществления шина с функциональностью, подобной независимому от среды интерфейсу (MII), или шина с функциональностью такой же, как последовательный гигабитный независимый от среды интерфейс (SGMII), может выполняться осуществленной вместе с PHY и MAC внутри схемы, или комбинированной вместе с другой функцией в другом электронном компоненте. Например, включенной в микросхему или схему, включающую в себя и функцию MAC, и функцию PHY; или микросхему или схему, которая включает в себя и процессор с другой функциональностью, включающей в себя либо MAC, либо PHY, или и MAC, и PHY.
В другом варианте осуществления такого гигабитного Ethernet, использующего высокоскоростную последовательную шину, такую как последовательный гигабитный, независимый от среды интерфейс (SGMII), может использоваться схема, такая как показана на Фиг.5. Например, гигабитный Ethernet с высокоскоростными последовательными линиями, где отсутствуют линии управления 11, 12. Для обнаруженного нежелательного пакета данных, посылка после данных управляющей информации, не изменяющей данные, и указывающей ошибку, будет приводить к тому же результату, что и установление сигнала линий управления MII. Можно получить такой же результат, что и отбрасывание пакета данных в MAC после определения в течение приема на физическом уровне, что он будет нежелательным, тот же результат можно получить добавлением управляющей информации к данным.
Здесь сигналы маршрутизуются через схему фильтрации и упорядоченное множество распространения ошибки (Error_Propagation ordered_set) или другой символ или управляющая информация добавляется к приему, тем самым уведомляя MAC управляющей информацией относительно решения отвергнуть данные. Сами данные оставляют неизменными и действительными. Другой способ, который предполагает использование линии 11 данных, состоит в том, чтобы изменить целевой MAC-адрес пакета и повторно вычислить CRC оперативно («на лету»), посредством этого выдавая действительный пакет, но с ошибочным MAC-адресом, который MAC отвергает.
В еще одном варианте осуществления изобретения схема, соединяемая между PHY и MAC, которая фильтрует пакеты, если они передаются, может быть реализована только в MAC. Это может потребовать, что будет необходимым специальный MAC, однако функциональность фильтрации согласно изобретению может быть функцией, встроенной в MAC.
В еще одном варианте осуществления изобретения схема, соединяемая между PHY и MAC, которая фильтрует пакеты, если они передаются, может быть реализована только в PHY. Это может потребовать, что будет необходимым специальный PHY, однако функциональность фильтрации согласно аспекту изобретения может быть функцией, встроенной в схему PHY.
На Фиг.4 показана упрощенная структурная схема для одного или нескольких способов согласно другому аспекту изобретения. На фигуре показаны:
42 - данные для кадра, например, кадр Ethernet, принимаются на физическом уровне
44 - данные в части или полном кадре сравниваются с правилами трафика для фильтрации;
45 - если нежелательные данные обнаружены Y (да) - тогда
46 - устанавливается управляющий сигнал или добавляются управляющие данные (с тем, чтобы кадр впоследствии отбрасывался в MAC),
47 - если устанавливается управляющий сигнал или добавляются управляющие данные, то могут регистрироваться данные об отбрасываемом кадре;
48 - если нежелательный трафик не обнаружен N (нет), то
49 - пакет передается с исходным управляющим сигналом(ами) и исходными данными на другой сетевой уровень 33-37.
Электронное устройство может быть установленным и конфигурированным для использования в локальном узле для компонента, соединенного с управляющей системой, и управляемого ею. Обычно в качестве компонента, которым управляет управляющая система компонент, такой как измерительной средство, например, датчик или преобразователь, или исполнительный механизм, такой как клапан, двигатель, насос, переключатель, или другой компонент, используемый в управлении производственными процессами, такими как процесс производства целлюлозы и бумаги, процесс обработки металлов давлением, или для управления оборудованием, таким как преобразователи, выключатели, разъединители, переключатели и так далее, используемые, например, в фидерных установках, трансформаторных подстанциях и подстанциях для выработки, передачи или распределения электроэнергии.
Функции блока 3 фильтрации или схемы фильтрации могут выполняться функциями цифровой обработки, алгоритмами и/или компьютерными программами и/или аналоговыми компонентами или аналоговыми схемами или комбинацией и цифровых, и аналоговых функций.
Способы по изобретению могут выполняться посредством одной или нескольких компьютерных программ, содержащих код компьютерной программы или порции программного обеспечения, исполняющиеся на компьютере или процессоре. Микропроцессор (или процессоры) содержит центральный процессор, ЦП, выполняющий этапы способа согласно одному или нескольким аспектам изобретения. Это выполняется при помощи одной или нескольких упомянутых компьютерных программ, например, хранимых, по меньшей мере, частично в устройстве хранения данных, таком как запоминающее устройство 6, и/или в управляющей логике 8 и по существу доступных одному процессору или нескольким. Один или каждый процессор могут находиться в блоке управления, или части такового. Нужно подразумевать, что упомянутые компьютерные программы могут также исполняться на одном или нескольких универсальных промышленных микропроцессорах или компьютерах вместо одного или нескольких специально адаптированных компьютерах или процессорах.
Компьютерная программа содержит элементы кода компьютерной программы или порции программного кода, которые побуждают компьютер выполнять способы, такие как показаны на структурной схеме по Фиг.4, используя уравнения, алгоритмы, данные, хранимые значения и вычисления, ранее описанные. Часть программы может храниться в процессоре, как указано выше, а также и в постоянном запоминающем устройстве (ПЗУ, ROM), оперативном запоминающем устройстве (ОЗУ, RAM), программируемом ПЗУ (ППЗУ, PROM), стираемом программируемом ПЗУ (СППЗУ, EPROM) или микросхеме электрически-стираемого программируемого ПЗУ (ЭСППЗУ, EEPROM) или подобных запоминающих средствах. Программа частично или полностью может также храниться на другом или в другом подходящем читаемом компьютером носителе, таком как магнитный диск, компакт-диск (CD-ROM) или цифровой многофункциональный диск (DVD), накопитель на жестком диске, средстве хранения на магнитооптическом ЗУ, в энергозависимом ЗУ, во флэш-памяти, в виде микропрограммного обеспечения, хранимого на сервере данных или в одном, или нескольких массивах серверов данных. Другие известные и подходящие носители, включая съемные носители для ЗУ, такие как карты флэш-памяти или другие съемные ЗУ на флэш-накопителях, накопители на жестких дисках и т.д. также могут использоваться.
Следует отметить, что хотя вышеупомянутое описывает иллюстративные варианты осуществления изобретения, имеются несколько разновидностей и модификаций, которые могут выполняться к раскрытому решению без выхода за рамки объема настоящего изобретения, как определено в прилагаемой формуле изобретения.