KR20220125251A - 네트워크 인프라구조들을 위한 프로그래밍가능 스위칭 디바이스 - Google Patents

네트워크 인프라구조들을 위한 프로그래밍가능 스위칭 디바이스 Download PDF

Info

Publication number
KR20220125251A
KR20220125251A KR1020227023537A KR20227023537A KR20220125251A KR 20220125251 A KR20220125251 A KR 20220125251A KR 1020227023537 A KR1020227023537 A KR 1020227023537A KR 20227023537 A KR20227023537 A KR 20227023537A KR 20220125251 A KR20220125251 A KR 20220125251A
Authority
KR
South Korea
Prior art keywords
network
rules
controller
programmable
switching device
Prior art date
Application number
KR1020227023537A
Other languages
English (en)
Inventor
제임스 키리아니스
민 키리아니스
Original Assignee
아미나 시스템즈 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아미나 시스템즈 인크. filed Critical 아미나 시스템즈 인크.
Publication of KR20220125251A publication Critical patent/KR20220125251A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/60Software-defined switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/084Configuration by using pre-existing information, e.g. using templates or copying from other elements
    • H04L41/0843Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0263Rule management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Programmable Controllers (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Logic Circuits (AREA)

Abstract

적어도 하나의 포트; 및 적어도 하나의 포트에 통신가능하게 커플링된 적어도 하나의 프로그래밍가능 필터를 포함하는, 네트워크 인프라구조 내의 프로그래밍가능 스위칭 디바이스로서, 적어도 하나의 프로그래밍가능 필터는 데이터 패킷들이 정의된 규칙들의 세트에 기초하여 적어도 하나의 포트에 연결된 네트워킹된 디바이스로 또는 네트워킹된 디바이스로부터 송신되는 것을 허용/거부하도록 구성된다.

Description

네트워크 인프라구조들을 위한 프로그래밍가능 스위칭 디바이스
관련 출원들의 상호 참조
본 출원은 2019년 12월 10일 출원되고, 명칭이 "Programmable Switching Device for Network Infrastructures"인 미국 특허출원 제16/709,444호의 이익 및 이에 대한 우선권을 주장하며, 이로써 그 개시는 그 전부가 참고로 통합된다.
네트워크는 데이터 또는 텔레통신 아키텍처의 다양한 인프라구조 요소들에 의해 링크된 컴퓨터 시스템들의 상호연결된 그룹이다. 구체적으로, 이 인프라구조는 자신의 다양한 부분들 및 이들 구성의 편성 - 개별 네트워킹된 컴퓨터들에서 라우터들, 케이블들, 무선 액세스 포인트들, 스위치들, 백본들, 네트워크 프로토콜들 및 네트워크 액세스 방법론들까지 - 을 지칭한다. 인프라구조들은 인터넷의 개방형 아키텍처 또는 사설 인트라넷의 폐쇄형 아키텍처와 같은 개방형 또는 폐쇄형일 수도 있다. 이들은 유선 또는 무선 네트워크 연결들 또는 양자의 조합을 통해 동작할 수 있다.
가장 단순한 형태의 네트워크 인프라구조는 통상적으로 컴퓨터들을 네트워크 연결에 링크하고 다양한 시스템들을 서로 타이(tie)하기 위해 하나 이상의 컴퓨터, 네트워크 또는 인터넷 연결, 및 스위치를 포함한다. 스위치는 단지 컴퓨터들만을 링크하지만 임의의 하나의 시스템으로 또는 이 시스템으로부터 데이터 흐름을 제한하지 않는다. 라우터는 네트워크들을 인터링크하고 각각의 네트워크의 규칙들에 따라 데이터 교환을 위한 공통 언어를 제공하는데 사용될 수 있다. 라우터는 네트워크들 사이의 액세스를 제어 또는 제한하고 데이터 흐름을 규제할 수 있다.
오피스 인트라넷들은 글로벌 인터넷과 유사하지만 그 안의 것들에만 액세스가능한 폐쇄형 네트워크 인프라구조 상에서 동작한다. 오피스 인트라넷 시스템들은 일반적으로 이더넷 네트워크 케이블링(Ethernet network cabling), 무선 액세스 포인트들, 라우터들, 스위치들, 및 중앙 데이터 저장 유닛에 대한 액세스를 갖는 개별 컴퓨터들뿐만 아니라, 서버들로서 알려진 하나 이상의 컴퓨터를 포함할 수 있는 중앙 데이터 저장 유닛으로 구성된다. 개별 컴퓨터들은 케이블링 또는 무선 액세스를 통해 네트워크에 연결할 수 있다. 그 후 라우터들 및 스위치들은 각각의 개별 컴퓨터가 액세스의 어떤 레벨을 가질 수 있는지를 결정하고 개별 컴퓨터들을 서버들 상의 중앙 데이터 저장 유닛으로 향하게 하는 트래픽 디렉터들(traffic directors)로서 작용할 수 있다. 개별 컴퓨터들이 데이터를 전송하거나 수신할 때, 라우터들 및 스위치들은 일제히 동작하여 데이터가 적절한 장소에 반드시 도달하게 한다.
네트워크 보안은 종종 네트워크 인프라구조를 구축할 때의 주요 관심사이다. 방화벽들은 외향 통신을 허용하면서 비인가 내향 액세스를 차단하도록 설계되는 컴퓨터 시스템 또는 네트워크의 일부이다. 대부분의 아키텍처들은 사용자 액세스를 제어하고, 데이터 패킷 모니터링을 수행하며, 정의된 프로토콜들 및 네트워크 서비스들에 대한 액세스를 제한하는 소프트웨어뿐만 아니라, 방화벽들이 내장된 전용 방화벽들 또는 라우터들을 사용한다. 보안은 또한 네트워크 상의 다른 사용자들이 볼 수 있는 폴더들 및 파일들을 제한하는 개별 시스템들 상의 네트워크 공유 속성들을 조정함으로써 제어될 수 있다.
전체 네트워크 인프라구조는 상호연결되고 내부 통신들, 외부 통신들 또는 양자 모두에 사용될 수 있다. 통상의 네트워크 인프라구조는 다음을 포함한다: 네트워킹 하드웨어(예를 들어, 라우터, 스위치, 하드웨어 기반 방화벽, LAN 카드, 무선 라우터, 케이블 등), 네트워킹 소프트웨어(예를 들어, 네트워크 운영 및 관리, 운영 시스템, 소프트웨어 기반 방화벽, 네트워크 보안 애플리케이션 등) 및 네트워크 서비스(예를 들어, 통신 링크, 인터넷, 위성, 무선 프로토콜, IP 어드레싱 등)
네트워크 인프라구조의 계층 1은 종단 시스템들 사이의 물리적 링크를 활성화, 유지 및 비활성화하기 위한 전기적, 기계적, 절차적 및 기능적 사양들을 정의한다. 일부 공통적인 예들은 이더넷 세그먼트들, 및 SONET, 광 및 브로드밴드와 같은 상용 링크들이다. 이러한 계층 1 네트워크 디바이스들은 데이터를 전송하지만, 이 디바이스들은 예를 들어, 이더넷 광 트랜시버와 같은, 이를 통해 흐르는 어떠한 트래픽도 관리하지 않는다. 즉, 포트에 진입하는 임의의 패킷은 임의의 부가 프로세싱 없이 출력 포트에 전달된다.
계층 2는 송신을 위해 데이터가 어떻게 포맷되는지 및 물리적 매체들에 대한 액세스가 어떻게 제어되는지를 정의한다. 계층 2 네트워크 디바이스들은 예를 들어, 호스트, 라우터 또는 스위치 상에 설치된 네트워크 인터페이스 제어기(NIC)와 같은, 물리적 매체들과 네트워킹된 디바이스 사이에 인터페이스를 제공할 수 있다. 계층 2 네트워크 디바이스는 데이터 링크 계층(계층 2)에서 데이터를 프로세싱하고 포워딩하기 위해, 예를 들어, MAC 어드레스와 같은 하드웨어 어드레스들을 사용하는 멀티포트 디바이스일 수 있다. 계층 2 네트워크 디바이스로서 동작하는 스위치는 홈 또는 오피스에서의 디바이스들을 상호연결하고, 들어오는 패킷들을 버퍼링하며, 송신 속도들을 조정할 수도 있다.
로컬 영역 네트워크 스위칭은 데이터 네트워크들에서 사용된 패킷 스위칭의 형태이다. LAN 스위칭 기술들은 네트워크 상의 모든 호스트들에 트래픽을 전송하기보다는, 의도된 목적지에만 트래픽이 전송될 수 있도록 하기 때문에 네트워크 설계에 중대하다. LAN 스위칭은 상이한 종류들의 네트워크 스위치들을 사용할 수 있으며 스위치들 사이의 상호연결은 예를 들어, 스패닝 트리 프로토콜들(spanning tree protocols)(STP)을 사용하여 규제될 수도 있다.
사용 시, 컴퓨터들 및 다른 네트워킹된 디바이스들은 네트워크 스위치를 통한 유선 또는 무선 연결들 통해 상호연결될 수 있다. 이러한 스위치들은 가상 LAN(VLAN)을 생성하기 위해 더 작은, 별도의 스위치들로 세분화될 수 있다. 종래 스위치들은 동일한 VLAN 상의 네트워킹된 디바이스들 사이의 네트워크 통신들에 대해 보안 제어들을 부과하지 않는다. 즉, LAN 상의 모든 디바이스들은 서로 자유롭게 통신할 수 있다.
계층 3은 지리적으로 분리된 네트워크들에 걸쳐 있을 수 있는 프로토콜들을 사용하여 두 호스트 시스템들 사이에 연결성 및 경로 선택을 제공한다. 호스트의 경우, 이는 데이터 링크 계층(계층 2), 네트워크 운영 시스템(NOS)의 상위 계층들, 및 통신하고 있는 호스트 상의 대응 계층들 사이의 링키지(linkage)이다. 라우터는 IP(인터넷 프로토콜)와 같은 프로토콜들을 사용하여 LAN들(계층 2) 사이에 계층 3 링크를 확립한다.
계층 3 스위치들은 통상적으로 스위치 상에 구성된 VLAN들 사이의 IP 라우팅을 지원한다. 일부 계층 3 스위치들은 네트워크들 사이에서 정보를 교환하기 위해 라우터들이 사용하는 라우팅 프로토콜들을 지원한다. 전반적으로, 라우터는 계층 3에서 동작하는 다중 LAN들을 상호연결할 수 있기 때문에, 이는 LAN 당 허용된 ~250개의 네트워킹된 디바이스를 넘어선 네트워크 사이즈의 스케일링을 가능하게 한다. 라우터들은 또한 LAN들을 WAN들(광역 네트워크들), 예를 들어 장거리 빌딩 링크들, 클라우드 서비스들에 대한 연결들 및 인터넷과 상호연결할 수 있다.
라우터의 주요 기능은 다양한 네트워크들(LAN, WAN 등) 사이에서 트래픽을 지향하는 것이다. 라우터들은 통상적으로 네트워크들 사이의 트래픽을 제어하는 몇 가지 기본적인 네트워크 필터 능력들을 가지고 있지만 그의 네트워크 내의 트래픽을 필터링할 수 없다.
방화벽은 계층 3(네트워크 어드레스들), 계층 4(네트워크 연결들) 및 상위 계층들(애플리케이션들)에서 동작하는 네트워크들을 상호연결한다. 방화벽의 주요 기능은 네트워크들 사이의 트래픽을 검사하거나 제어(예를 들어, 허용/거부)하는 것이다. 방화벽은 네트워크 내의 트래픽을 필터링할 수 없다.
개시된 기술은 개별 프로그래밍가능 포트들을 포함하는 프로그래밍가능 스위칭 디바이스이다. 이러한 개별 프로그래밍가능 포트들은 각각의 개별 스위치 포트에서 보안 제어들을 시행한다. 이러한 개별 프로그래밍가능 포트들은 들어오고 나가는 데이터를 필터링하여 네트워크 상의 임의의 네트워킹된 디바이스들 내로 또는 외로 임의의 비인가 액세스를 거부한다. 즉, 개시된 기술의 프로그래밍가능 스위칭 디바이스는 LAN(또는 VLAN) 내로, 외로, 및 내에서 네트워크 트래픽의 제어를 가능하게 하고, 의도된 네트워킹된 디바이스들이 LAN(또는 VLAN) 상에서 서로 사설로 통신할 수 있도록 하면서, 그의 네트워크 내의 모든 다른 네트워킹된 디바이스로부터 모든 네트워킹된 디바이스를 보호할 수 있다. 이로써 프로그래밍가능 스위칭 디바이스는 개방형 LAN 상에서 진정한 네트워크 격리를 생성할 수 있다.
개시된 기술의 프로그래밍가능 스위칭 디바이스는, 네트워크가 특징들(features), 예컨대 자동화된 동작, 거동적 네트워크 트래픽 패턴들의 학습, 및 예를 들어, 소프트웨어 설계 네트워킹(Software Designed Networking)(SDN) 기술을 통한 화이트리스팅 모델(whitelisting model)을 통해 보안 제어들의 애플리케이션을 갖도록 할 수 있는 네트워크 제어기와 함께 사용될 수 있다. 또한, 이것은 보안 위협들에 응답하여 실시간으로 프로그래밍가능 스위칭 디바이스의 동적 프로그래밍을 가능하게 하고 비인가 활동에 자율적으로 반응하는 SDN 능력들을 가질 수 있다.
SDN 인에이블형 인프라구조는 네트워크 제어기가 그 동작 파라미터들에 대해 실시간으로 인프라구조에 쿼리하고 프로그래밍가능 스위칭 디바이스들에 프로그래밍을 전송하는 것을 가능하게 하여 새로운 조건들에 응답하여 이들의 포트 동작을 동적으로 변경하는 액티브 보안 프로그래밍 인터페이스들을 추가로 제공한다. 네트워크 제어기들은 또한, 종래 네트워크 디바이스들에 의한 프로세싱에 달리 이용가능하지 않았던 외부 데이터 소스들(외부 데이터베이스들, 원격측정 데이터 등)을 사용할 뿐만 아니라 전형적인 네트워크들로는 달리 가능하지 않은 스케일 및 속도로 네트워크의 동작을 통제할 수 있다.
개시된 기술의 프로그래밍가능 스위칭 디바이스는 네트워크가 고유 소프트웨어 특징들, 예를 들어, 몇 개만 예를 들자면, 자동화된 네트워크 흐름 발견, LAN 디바이스 인식, 흐름 승인 및 인가 프로세스, 보안 제어들, LAN 디바이스들을 보호하기 위한 로직, 비인가 아웃바운드 흐름들의 자동화된 검출, 원하는 보안 제어들에 기초한 프로그래밍가능 스위칭 디바이스의 자동 프로그래밍, 및 디바이스 연합 및 가상화를 또한 가질 수 있도록 한다.
일 구현에서, 프로그래밍가능 스위칭 디바이스는 적어도 하나의 포트 및 적어도 하나의 포트에 통신가능하게 커플링된 적어도 하나의 프로그래밍가능 필터를 포함할 수 있고, 여기서 적어도 하나의 프로그래밍가능 필터는 데이터 패킷들이 정의된 규칙들의 세트에 기초하여 적어도 하나의 포트에 연결된 네트워킹된 디바이스로 또는 네트워킹된 디바이스로부터 송신되는 것을 허용/거부하도록 구성된다.
일부 구현들에서, 제어기는 정의된 규칙들의 세트를 적어도 하나의 프로그래밍가능 필터로 송신할 수 있다. 일부 구현들에서, 제어기는 프로그래밍가능 스위칭 디바이스에 통신가능하게 커플링된 네트워크 디바이스일 수 있다. 일부 구현들에서, 제어기는 방화벽에 의해 보안된 SDN 인에이블형 디바이스일 수 있다. 일부 구현들에서, 제어기는 보안된 컴퓨터 상에서 실행되는 애플리케이션일 수 있다. 일부 구현들에서, 애플리케이션 프로그래밍 인터페이스는 제어기를 프로그래밍가능 스위칭 디바이스에 링크할 수 있다.
일부 구현들에서, 제어기는 프로그래밍가능 스위칭 디바이스 내에 임베딩되고 정의된 규칙들의 세트를 적어도 하나의 프로그래밍가능 필터로 송신할 수 있다. 일부 구현들에서, 이 임베딩된 제어기는 애플리케이션 프로그래밍 인터페이스(API)를 통해 2 이상의 프로그래밍가능 스위칭 디바이스를 통제할 수 있다.
일부 구현들에서, 보고 모듈은 네트워크, 호스트 또는 데이터 흐름 특성들과 같은 원격측정을 제어기로 송신하도록 구성될 수 있다. 일부 구현들에서, 제어기는 원격측정을 분석하고 분석들에 기초하여 정의된 규칙들의 세트를 자동으로 업데이트할 수 있다.
일부 구현들에서, 정의된 규칙들의 세트는 네트워크 관리자에 의해 구성된다. 일부 구현들에서, 정의된 규칙들의 세트는 머신 학습 또는 인공 지능(AI) 기법들에 의해 구성된다. 일부 구현들에서, 정의된 규칙들의 세트는 자동화에 의해 구성된다.
일부 구현들에서, 식별 모듈은 프로그래밍가능 스위칭 디바이스 및 네트워크에 대한 식별 프로토콜들을 제공할 수 있다.
일부 구현들에서, 데이터 패키징 모듈은 프로그래밍가능 스위칭 디바이스로부터의 데이터를 수신 및 송신하도록 구성될 수 있다. 일부 구현들에서, 적어도 하나의 포트는 유선 연결 포인트일 수 있다. 일부 구현들에서, 적어도 하나의 포트는 무선 연결 포인트일 수 있다. 일부 구현들에서, 적어도 하나의 포트는 다른 유형의 네트워킹된 포트, 예를 들어 직렬 인터페이스일 수 있다.
다른 구현에서, 네트워크 인프라구조는 적어도 2개의 프로그래밍가능 스위칭 디바이스로서, 적어도 2개의 프로그래밍가능 스위칭 디바이스는 각각 적어도 2개의 포트를 가지며 각각의 포트는 적어도 하나의 프로그래밍가능 필터에 통신가능하게 커플링되는, 적어도 2개의 프로그래밍가능 스위칭 디바이스; 및 제어기를 포함할 수 있고, 제어기는 적어도 2개의 프로그래밍가능 스위칭 디바이스에 통신가능하게 커플링되며, 제어기는 정의된 규칙들의 세트로 적어도 2개의 프로그래밍가능 스위칭 디바이스의 각각의 포트에 통신가능하게 커플링된 적어도 하나의 프로그래밍가능 필터를 파퓰레이트한다.
일부 구현들에서, 정의된 규칙들의 세트는 데이터 패킷들이 네트워킹된 디바이스로 또는 네트워킹된 디바이스로부터 송신되는 것을 허용/거부할 수 있고, 네트워킹된 디바이스는 적어도 2개의 프로그래밍가능 스위칭 디바이스의 적어도 2개의 포트 중 하나에 통신가능하게 커플링된다. 일부 구현들에서, 정의된 규칙들의 세트는 네트워크 관리자에 의해 구성될 수 있다. 일부 구현들에서, 정의된 규칙들의 세트는 머신 학습 또는 인공 지능(AI)기법들에 의해 구성될 수 있다. 일부 구현들에서, 정의된 규칙들의 세트는 자동화에 의해 구성될 수 있다.
일부 구현들에서, 보고 모듈은 네트워크, 호스트 또는 데이터 흐름 특성들과 같은 원격측정을 제어기로 송신하도록 구성될 수 있다. 일부 구현들에서, 제어기는 원격측정을 분석하고 분석들에 기초하여 정의된 규칙들의 세트를 자동으로 업데이트할 수 있다.
도 1은 개시된 기술의 프로그래밍가능 스위칭 디바이스의 블록도이다.
도 2는 개시된 기술의 프로그래밍가능 스위칭 디바이스의 예시적인 예이다.
도 3은 개시된 기술의 프로그래밍가능 스위칭 디바이스를 사용하여 데이터 패킷이 네트워킹된 디바이스로부터 네트워크로 송신되는 것을 설명하는 흐름도이다.
도 4는 개시된 기술의 프로그래밍가능 스위칭 디바이스를 사용하여 데이터 패킷이 네트워크로부터 네트워킹된 디바이스로 송신되는 것을 설명하는 흐름도이다.
도 5는 임베딩된 제어기로 개시된 기술의 프로그래밍가능 스위칭 디바이스를 구현하는 블록도이다.
도 6은 개시된 기술의 프로그래밍가능 스위칭 디바이스의 무선 구현에 대한 블록도이다.
도 7은 개시된 기술의 프로그래밍가능 스위칭 디바이스를 활용하는 네트워크의 예시적인 예이다.
오피스 인트라넷들은 글로벌 인터넷과 유사하지만 그 내의 것들에만 액세스가능한 폐쇄형 네트워크 인프라구조 상에서 동작한다. 운영 기술(Operational Technology)(OT) 및 사물 인터넷(Internet of Things)(IoT) 디바이스들은 이러한 인트라넷들에서 실행되며 빌딩의 물리적 인프라구조 내에 엄청난 수량으로 존재한다. 그러나 이러한 디바이스는, 보안이 열악하고, 보안 결점들에 대해 거의 업데이트되지 않고, 기능에 대한 네트워크 및 인터넷 액세스를 필요로 하며, 제한되는 것은 아니지만, 빌딩 관리 시스템, 물리적 보안 시스템, 시청각 시스템 등과 같은 시스템에 대한 대규모 보안 타깃을 나타낸다.
해커들은 이러한 디바이스들을 타깃으로 하여, 예를 들어 빌딩의 안전 특징들을 수정함으로써, 생명 안전 위험요소를 생성하거나, 회사의 서버를 타깃으로 하여 민감한 데이터를 캡처하거나, 또는 회사의 네트워크를 부가적인 공격들의 론칭 포인트로서 사용할 수 있는 악성 소프트웨어를 네트워크 내로 주입한다.
종래의 네트워크 보안은 안전하지 않은 ("외부") 네트워크(즉, 인터넷)와 안전한 ("내부") 네트워크 사이의 경계로서 작용하는 방화벽들에 대부분 의존한다. 이러한 보안 네트워크들에서, 네트워크 트래픽 흐름들은, 북향 흐름들이 외부, 예를 들어 인터넷으로 향할 때 "북-남"으로서 종종 지칭되는 방향으로 이동한다. 대조적으로, 내부 네트워크 내의 또는 내부 네트워크에 걸친 흐름들은 "동-서"로 이동한다.
이러한 종래 네트워크들과 사용된 방화벽들은 관리자에 의해 설치된 보안 정책 "규칙들"을 통해 흐름들을 필터링한다. 이러한 규칙들은 종종 액세스 제어 리스트들로서 인식되는 인간 판독가능 형태로 나타내며, 이는 필터 속성들 및 이 속성들에 대해 패킷이 매칭될 때 취해지는 액션을 특정한다. 사용 시, 방화벽들은 "스테이트풀(stateful)" 방식으로 동작하여 보안 네트워크에 진입하는 흐름들 제어한다. 방화벽은 외부 클라이언트로부터 들어오는 "남향" 흐름이 회사의 보안 네트워크 상의 "인터넷 페이싱(Internet-facing)" 서버(예를 들어, 회사의 웹사이트)에 액세스하도록 허용할 수도 있다. 방화벽은 또한 네트워크 내로부터 개시된 연결들(예를 들어, 웹사이트 또는 비디오 서비스에 액세스하는 데스크톱 컴퓨터)에 응답하는 보안 네트워크 내로 남쪽 경계 흐름들을 허용할 수 있다. 이러한 "스테이트풀" 방화벽들은 응답만을 리턴할 수 있도록 하기 위해 보안 네트워크를 떠나는 모든 "북향" 흐름을 추적할 수 있다. 그러나, 통상적으로 네트워크에서 진출할 수도 있는 통신들을 제한하기 위해 북향 흐름들에 대한 제어가 적거나 심지어 없다. 간단히 말해서, 모뎀 방화벽들은 요새 주위의 모트(moat)로서 작용하여, 네트워크의 둘레("에지")에 경계를 제공하며; 규칙들은 요새 게이트의 게이트키퍼여서, 진입할 수도 있는 개인들을 스크리닝한다.
다중 방화벽들이 이러한 종래 보안 네트워크들 상에 설치되어, 해커가 극복하는 다중 경계들을 생성할 수 있다. 예를 들어, 방화벽들은 인터넷 에지, 데이터 센터 에지, WAN(광역 네트워크)에지 등에 배치될 수 있다. 모뎀 서버들은 통상적으로 이들의 운영 시스템들 내에서도 또한 방화벽들을 실행한다. 상이한 제조자들 및 유형들의 다양한 방화벽들 사이의 조정은 매우 어렵다. 이러한 유형의 패치워크 시스템은 전체 네트워크 보안 태세에 허점들을 생성할 수 있으며, 이는 네트워크 및 시스템 취약성으로 이어진다.
문제 경우 A
신뢰성있는 방화벽 규칙들의 생성 및 이들의 지속적인 관리는, 수만 개 또는 그 이상의 규칙들일 수 있는, 기업 네트워크들을 보안하는 모뎀 방화벽들에서 구성된 엄청난 수(sheer number)의 규칙들에 의해 증폭되는 상당한 과제이다. 방화벽 규칙들의 시퀀싱 및 전체 시퀀스 내에서 포지션 상의 새로운 규칙의 적절한 삽입은 다른 규칙들(및 네트워크의 보안 태세)에 영향을 미칠 수 있으며, 삽입되는 새로운 규칙의 효율성에도 관련이 있다. 따라서 이러한 유형의 시스템 내에서 방화벽 규칙들의 생성은 지루하고 에러발생이 쉬우며, 완전히 이해되지 않는 시스템들 및 애플리케이션들의 통신들에 대한 제어들을 배치하려 시도하는 개인들에 의해 수행된다. 또한, 방화벽 규칙들에 대한 종래 "블랙리스팅(Blacklisting)" 접근법은 종종 관리자가 보안 네트워크 내로 악의적이거나 원치않는 활동이라고 여기는 것에 의해 생성된 주관적인 리스트이며 디폴트로 모든 다른 통신들이 진입할 수 있도록 한다. 이것은 게이트키퍼가 안 좋은 것으로 여겨지는 개인들을 제외하고 요새 내로 모든 사람을 허용하는 것과 유사하다. 이러한 접근법은 심지어 하나의 악의적인 흐름을 차단하지 못하면 보안 네트워크 내로 해커를 둘 수 있기 때문에 매우 위험하다. "블랙리스팅"은 보안 쟁점들이 인터넷 상에서 덜 보편화되었을 때의 규준이었으며, 이 기법은 수년에 걸쳐 영속되었는데, 이는 네트워크 관리자들이 네트워크 운영 스태프들의 세대들에 걸쳐 반드시 잘 이해되지 않았던 복잡한 방화벽 규칙들의 이러한 취약한 시퀀스들을 중단하기를 꺼려했기 때문이다
"화이트리스팅" 접근법은 "최상의 프랙티스"로 간주되지만 위에 설명된 이유들로 덜 일반적이다. 이 접근법은 원하는 들어오는 통신들만이 보안 네트워크에 진입할 수 있도록 하고 디폴트로 다른 모든 다른 통신들은 차단한다. 이것은 통신들이 엔트리에 대한 기준을 명시적으로 충족하지 않는 한 어느 것도 요새에 진입할 수 없도록 하는 게이트키퍼와 유사하다. 이 접근법이 훨씬 더 안전하며: 핵심적인 이익은 흐름을 고려하지 못하면 보안 네트워크 내로의 액세스 거부를 초래한다는 것이다.
이러한 화이트리스팅 접근법은 또한 네트워크 상의 모든 애플리케이션들 및 시스템들에 대한 상세한 이해를 필요로 하기 때문에 개발 및 유지하는 것이 또한 과제일 수 있다. 예를 들어, 비즈니스 운영에 영향을 미칠 수도 있는 기술 중단에 대한 용인이 없을 때 관리자들은 프로덕션 서비스들에 영향을 미칠 수 있는 기존 규칙들을 제거하는 것을 두려워하기 때문에 일부 규칙들이 방화벽에 영원히 남아있을 것이다. 이것은 애플리케이션들이 퇴각되고 새로운 시스템들이 상이한 보안 요건들을 갖는 기존 네트워크 어드레스들을 재사용함에 따라 허점들이 발전할 수 있게 한다.
문제 경우 B
위에 논의된 바와 같이, 방화벽들은 네트워크 에지에서 동작할 수 있다. 해커가 보안 네트워크에 진입하면, 네트워크에 걸쳐 측방향으로("동-서")이동하여 다른 시스템들 및 애플리케이션들을 손상시키는데 상당히 자유롭다. 시스템들이 손상되면, 네트워크들은 네트워크를 떠나고 민감한 데이터를 추출하거나 다른 네트워크들에 대한 공격들을 수행하는데 사용되는 흐름들을 제한하지 못한다. 신용 카드, SSN, 의료 또는 다른 PII(개인 식별 정보) 데이터, 기업 자산 및 다른 기밀 정보를 분실하는 회사의 만연이 이러한 주요 취약점에 대한 증거이다. 해커들은 손상된 시스템들을 사용하여 다중 네트워크들을 통해 뛰어넘어 이들의 위치를 불명확하게 한다. 손상된 시스템들 내의 취약점을 사용하면, 해커들은 시스템 자체 소프트웨어를 사용하여 다른 네트워크들을 공격한다. 해커들은 이들의 아웃바운드 흐름들을 웹 클라이언트들로서 가장하고 이들의 통신들을 암호화할 수 있다. 어떤 아웃바운드 흐름들이 합법적인지 해독하고 후속하여 이들을 제어하는 것은 매우 어렵다.
클라우드 기반 서비스들의 확산으로, 어떤 인터넷(IP) 어드레스 목적지들이 합법적인지를 아는 것은 거의 불가능하다. 해커들은 또한 동일한 클라우드 서비스들에서 이들의 동작 기반들을 로케이팅하여, 검출하는 것을 어렵게 한다. 종종 인바운드보다 아웃바운드에서 개시되는 합법적인 흐름들이 훨씬 더 많기 때문에 아웃바운드 흐름들의 볼륨 및 복잡성이 압도적이다. 쟁점을 복합하면, 들어오는 흐름들이 애플리케이션 또는 디바이스의 아웃바운드 흐름들보다 제조자들에 의해 더 잘 문서화된다. 그 결과, 합법적인 아웃바운드 흐름들의 분출 중에 악의적인 아웃바운드 흐름들이 쉽게 간과될 수 있다.
예를 들어, 일부 네트워킹된 제품은 클라우드 기반 기술 및 서비스의 더 큰 에코시스템(즉, 소프트웨어 업데이트, 사용 데이터 및 통계에 대해 제조자와 접촉하는 플랫 스크린 TV; YouTube, Netflix 등에 액세스하는 TV 상의 앱)을 지원하고 통합하기 위한 제조자들로 "폰 홈(phone home)" 하기 위해 인터넷 액세스 및 아웃바운드 흐름에 점점 더 의존한다. 일부 경우들에서는, 심지어 "폰 홈" 능력이 바람직하지 않을 수도 있는데, 이는 개인들의 거동 정보 또는 민감한 데이터를 알려줄 수 있기 때문이다.
문제 경우 C
데스크톱 컴퓨터 및 랩톱의 네트워크 사용을 이해하고 제어하는 것이 잘 이해되고 관리될 수 있다. 그러나, 모바일 및 IoT 디바이스들은 네트워크 내에서 이들의 활동을 이해하고 제어하는데 필요한 진단 인터페이스들 및 지원을 갖지 않는다. 예를 들어, 운영 기술(OT)(및 총괄적으로 사물 인터넷(IoT))은 남-북뿐만 아니라 동-서 기반 공격들 양자 모두에 매우 취약하며 적절한 기기가 부족하면 보안을 유지하기가 매우 어렵다.
배경에 대해, OT는 시설 운영 및 보안, 예를 들어 조명, HVAC, 전기 플랜트/발전기, 감시 카메라, 보안 액세스, 컨퍼런스 룸 시스템 및 디스플레이, 엘리베이터, 인쇄 디바이스, 세탁 시스템, 벤딩 머신, 판매시점 시스템(Point of Sale system), 차량, 항공기 등에 대한 중요한 지원을 제공할 수 있다. 역사적으로 이러한 디바이스들은 시스템을 제어하기 위해 하드 와이어링되었지만 OT 디바이스들을 네트워크에 링크하는 것이 더 비용 효율적이고, 기술들에 걸쳐 더 큰 통합을 가능하게 하며, 제조자에 "폰 홈" 지원을 제공한다.
그러나, 수십 년 동안 OT 제품을 개발한 많은 대형 제조자들은 네트워크 기술 및 보안에 능숙하지 않다. 보안은 종종 이러한 제조자들에 의해 OT 디바이스들 자체에 보안이 거의 구축되지 않은 상태에서, 네트워크 관리자가 해결해야 하는 문제로서 간주된다. 예를 들어, OT 기술은 통상적으로 네트워크 상으로의 승인을 위한 개별 디바이스들의 인증(즉, 802.lx 프로토콜, WPA2 엔터프라이즈, 인증서 기반 인증 등)과 같은 기본적인 엔터프라이즈급 보안 기술을 지원하지 않는다. 또한 네트워크 상의 OT 디바이스들의 실시간 거동의 이해 및 네트워크 기반 진단에 대한 지원이 거의 또는 전혀 없다. 또한, OT 디바이스에 의한 "폰 홈" 능력은 종종 값비싼 지원 계약들에 의해 의무화되어, OT 디바이스들에 인터넷 액세스들을 제공하도록 IT 디파트먼트들을 강제한다.
더욱이, OT 시스템들에 대한 소프트웨어 및 보안 업데이트들의 지속적인 개발은 제조자들이 다음 R&D 프로젝트로 이동함에 따라 종종 제한되어, 고객들이 새로운 특징들을 획득하기 위해 업그레이드하는 것을 요구한다. 보안 결함들을 해결하기 위해 새로운 제품들을 구매해야 하는 부담은 수년 동안 네트워크에 대해 취약성을 갖는 레거시 크리티컬 기술을 영속시킨다. 플랫 스크린 TV 및 홈 라우터와 같은 일상적인 기술은 취약할 뿐만 아니라 추가 소프트웨어나 보안 업데이트가 제공되지 않으면 1-2년 이내에 구식이 된다. 수천 개의 이러한 디바이스가 대형 네트워크에 존재하며, 종종 빈티지, 소프트웨어 버전, 구성 및 보안 태세가 상이하다. OT는 손상될 수 있는 상대적 용이성과 "해킹"이 회사에 미칠 수 있는 부정적인 영향을 고려할 때 상당한 보안 타깃이다.
위의 문제를 극복하기 위해, 개별적으로 프로그래밍가능하지만, 통합된 코히어런트 시스템으로 조정되는 포트들의 세트를 포함하는 프로그래밍가능 스위칭 디바이스가 개발되었다. 이제 네트워크 내의 각 포트는 그 자신의 개별 액세스 규칙들로 보호될 수 있는 한편, 전체 네트워크에 걸쳐 이러한 규칙들을 전체적으로 조정하여 액세스 규칙 패러다임을 사용한 보안 기반 세그먼테이션 모델 또는 보안 기반 격리 모델을 확립할 수 있다. 이러한 프로그래밍가능 스위칭 디바이스는 SDN 및 자동화와 추가로 커플링되어 임의의 네트워킹된 디바이스 내로 또는 외로 임의의 비인가 액세스를 거의 불가능하게 한다.
도 1에 나타낸 바와 같이, 개시된 기술의 프로그래밍가능 스위칭 디바이스(10)는 프로세서(12), 메모리(14), 식별 모듈(15), 애플리케이션 프로그래밍 인터페이스(API)(16), 보고 모듈(17), 데이터 패키징 모듈(18), I/O 네트워크 포트들(20a-p) 및 프로그래밍가능 필터들(22a-p)을 포함할 수 있다.
I/O 네트워크 포트들(20a-p)은 데이터가 네트워크 인프라구조 내로, 외로 및 내에서 전달될 수 있도록 임의의 유형의 네트워킹된 디바이스(라우터들, 스위치들, 컴퓨터들, IoT 디바이스들 등)가 프로그래밍가능 스위칭 디바이스(10)에 연결될 수 있도록 하는 임의의 유형의 종래 I/O 포트들(20a-p)일 수 있다. I/O 네트워크 포트들(20a-p)은 다양한 모드들, 예를 들어 개방, 학습, 승인, 제한 및 스테이트풀(이는 프로그래밍가능 스위칭 디바이스 내에서 스테이트풀 방화벽 메커니즘을 요구할 수도 있음)에서 동작하도록 구성될 수 있다.
각각의 I/O 네트워크 포트(포트들(20a-p))은 그 자신의 개별 프로그래밍가능 필터(22a-p)에 통신가능하게 커플링될 수 있다. 프로그래밍가능 필터들(22a-p)은 네트워크 내에서 네트워크킹된 디바이스의 상호작용을 제어할 수 있는 정의된 규칙들의 세트를 사용하여 네트워크 제어기(하기에서 더 충분히 설명됨)를 통해 설정될 수 있다. 정의된 규칙들의 세트는 네트워크 관리자, 머신 학습 또는 인공 지능(AI) 기법들, 자동화 또는 임의의 다른 종래 방법에 의해 설정될 수 있다. 일부 구현들에서, 이러한 규칙들은 액세스 제어 리스트(ACL)들로서 인간 판독가능 형태로 나타낼 수 있다.
일 구현에서, 정의된 규칙들의 세트는 다음 중 하나 이상을 사용하여 정의될 수 있다: (1) 네트워크에 대한 네트워킹된 디바이스의 사용을 제어하는 액세스 규칙들의 세트들인 흐름 정책 템플릿들(FPT), (2) 네트워크 상의 네트워킹된 디바이스들의 세트에 대한 액세스의 범위를 제어하는 FPT들의 세트들인 흐름 정책 세그먼트들(FPS) 및 (3) IP 연결들이 FPS 내의 FPT들을 갖는 네트워킹된 디바이스들의 세트들인, 즉 동일한 FPS 내에서 IP 연결들을 공유하는 네트워킹된 디바이스들의 세트들인, 흐름 정책 그룹들. 정의된 규칙 템플릿들의 다른 유형들이 고려된다.
일부 구현들에서, 정의된 규칙들의 세트는 메모리(14)에 저장될 수 있고 프로그래밍가능 스위칭 디바이스(10)의 프로세서(12)로 구현될 수 있어서 프로그래밍가능 필터들(22a-p)이 필요에 따라 메모리 및 프로세서에 액세스할 수 있다. 다른 구현들에서, 프로그래밍가능 필터들(22a-p)은 그들 자신의 데이터 저장, 프로세싱, 로깅 또는 통계 능력들을 가질 수 있다.
일부 구현들에서, 프로그래밍가능 스위칭 디바이스(10)는 API(16)를 포함할 수 있다. API(16)는, 제어기(50)가 각각의 개별 프로그래밍가능 필터(22a-p)에 대해 프로그래밍가능 스위칭 디바이스(10)로 정의된 규칙들의 세트를 송신하고, 보고 데이터를 수집하며, 다르게는 프로그래밍가능 스위칭 디바이스를 관리 및 운영할 수 있도록 프로그래밍가능 스위칭 디바이스(10)와 제어기(50)를 링크하는 임의의 유형의 인터페이스 또는 통신 프로토콜일 수 있다.
호스트들 및 이들의 데이터 흐름들은 네트워크에 대한 액세스가 허여되었기 때문에, 프로세서(12) 및 메모리(14)를 사용하는 데이터 패키징 모듈(18)은 네트워킹된 디바이스로부터 요청된 바와 같이 데이터를 패키징하고 송신할 수 있다. 일부 구현들에서, 데이터 패키징 모듈은 프로세서와는 독립적으로, 자율적으로 동작할 수 있으며, API를 통해 직접 프로그램된다. 또한, 데이터가 네트워크로부터 프로그래밍가능 스위칭 디바이스에 진입할 때, 프로세서(12) 및 메모리(14)를 사용하는 데이터 패키징 모듈(18)은 데이터가 네트워킹된 디바이스로 송신될 수 있도록 하기 위해 액세스가 주어질 때까지 데이터를 수신하고 유지할 수 있다. 즉, 스위치가 데이터를 수신할 때, 스위치 내에서 데이터 흐름이 일시적으로 중지된다. 흐름이 승인되면, 원하는 네트워킹된 디바이스로 흐르게 되도록 데이터 흐름이 허용된다.
프로그래밍가능 스위칭 디바이스(10)는 또한 보고 모듈(17)을 사용하여 프로그래밍가능 스위칭 디바이스(10)를 통과하는 데이터로부터 데이터 흐름 특성들을 수집할 수 있다. 이러한 데이터 흐름 특성들은 그 후 API 모듈(16)을 통해 제어기(50)로 포워딩될 수 있어서 데이터 흐름 특성들에 대한 분석, 예를 들어 실시간 위협들에 액세스하는 것 및 주어진 포트에 대해 어떤 유형의 데이터 흐름이 통상적인지를 학습하는 것, 또는 이상 네트워크 거동을 식별하는 것이 수행될 수 있다. 예를 들어, 분석 속성들 및 결과들의 로그가 생성되고 임의로 프로그래밍가능 스위칭 디바이스 내에 기록되고 그리고/또는 제어기에 전송될 수 있다. 매칭/비매칭 카운트들과 같은 통계 정보가 또한 기록될 수 있다.
프로그래밍가능 스위칭 디바이스(10)는 또한 식별 모듈(15)을 포함할 수 있다. 식별 모듈(15)은 프로그래밍가능 스위칭 디바이스(10)에 대한 고유 ID를 포함할 수 있다. 사용 시, 제어기(50)(도 2에 나타냄)에는 임의의 프로그래밍가능 스위칭 디바이스(10)가 네트워크에 연결되기 전에 고유 ID가 주어질 것이다. 프로그래밍가능 스위칭 디바이스가 네트워크에 연결되지만 디바이스가 제어기(50)에 의해 인식되지 않는 ID를 갖는 경우, 새롭게 연결된 스위칭 디바이스는 네트워크에 연결할 수 없을 것이며 경고가 발행될 수 있다. 이러한 식별 메커니즘은 예를 들어, 암호 및/또는 키 기반 메커니즘과 같은 보안 프로세스로 보호될 수 있다.
도 2에서, 프로그래밍가능 스위칭 디바이스(28)는 I/O 네트워크 포트(41 내지 48)를 포함한다. 이 구현에서, 8개의 포트가 사용되지만 임의의 수의 포트가 활용될 수 있으며, 예를 들어 대형 스위칭 디바이스는 수백 개의 포트로 구성될 수 있다. 이러한 I/O 네트워크 포트들(41 내지 48)의 각각은 개별 네트워킹된 디바이스들(30 내지 36)에 통신가능하게 커플링될 수 있다(예를 들어, 포트(41)는 제어기에 연결되고, 포트(42)는 보안 디바이스(30)에 연결되고, 포트들(43, 44, 47)은 보안 카메라들(31, 32, 35)에 연결되며, 포트들(45, 46 및 48)은 컴퓨터들(33, 34, 36)에 연결된다).
각각의 포트(41 내지 48)와 연관된 프로그래밍가능 필터들(22a 내지 22p)은 제어기(50)로부터 프로그래밍될 수 있다. 일부 구현들에서, 제어기(50)는 외부 또는 독립형 제어기일 수 있다. 다른 구현들에서, 제어기는 하기에서 더 충분히 설명되는 프로그래밍가능 스위칭 디바이스 상에 임베딩될 수 있다.
일부 구현들에서, 제어기(50)는 예를 들어, 임의의 유형의 SDN 인에이블형 제어기일 수 있다(다른 유형들의 제어기들이 고려됨). SDN 인에이블형 제어기는 네트워크에 연결되고 방화벽을 통해 보호될 수 있거나 프로그래밍가능 스위칭 디바이스들 내로 전용 라인을 가질 수도 있다. SDN 인에이블형 제어기(50) 및 프로그래밍가능 스위칭 디바이스(28)는 액티브, 보안 프로그래밍 인터페이스들을 통해 통신하며, 이들은 제어기(50)가 그의 동작 파라미터들에 대해 실시간 또는 거의 실시간으로 네트워크 인프라구조와 상호작용하고 프로그래밍가능 스위칭 디바이스들에 규칙 변화들을 전송하는 것을 가능하게 함으로써, 새로운 조건들, 예를 들어 악성코드(malware) 공격에 응답하는 동작을 동적으로 변경한다. 이것은 제어기(50)가 전형적인 네트워크들로는 달리 가능하지 않은 스케일 및 속도로 네트워크의 동작을 통제할 수 있도록 한다. 일부 구현들에서, 종래 네트워크들에 이용가능하지 않은 외부 데이터 소스들, 예를 들어 외부 데이터베이스들, 원격측정 데이터 등이 개시된 네트워크 상에서 구현될 수 있다.
도 2에 나타낸 바와 같이, 네트워킹된 디바이스들(30 내지 36)은 제어기(50)를 통해 설정된 FPT 규칙들(60 내지 63)과 연관될 수 있다. 예를 들어, 보안 디바이스(30)는 카메라들(31, 32, 35) 및 관리 스테이션(36)으로 데이터를 송신하기 위한 액세스가 허여될 수 있고(FPT 규칙(60)), 관리 스테이션(36), 및 카메라(31, 32, 35)는 보안 디바이스(30)로 데이터를 송신하기 위한 액세스가 허여될 수 있고(FPT 규칙(61)), 데스크톱 컴퓨터(33)는 데스크톱 컴퓨터(34)로 송신할 수 있으며(FPT 규칙(62)) 데스크톱 컴퓨터(34)는 데스크톱 컴퓨터(33)로 송신할 수 있다(FPT 규칙(63)). (인바운드 및 아웃바운드 제어들에 대한 각각의 포트의 필터들에 부가 규칙들 및 이들의 변형들이 적용될 수 있음을 유의한다.)
도 3은 보호된 네트워킹된 디바이스로부터 수신된 데이터 패킷이 어떻게 수용되는지를 나타내는 흐름 다이어그램이다. 단계 1에서, 데이터 패킷은 보호된 네트워킹된 디바이스로부터 송신된다. 단계 2에서, 데이터 패킷은 프로그래밍가능 스위칭 디바이스의 네트워크 포트 내로 입력된다. 그 후 데이터 패킷은 네트워킹된 디바이스와 연관된 프로그래밍가능 필터와 상관된다(단계 3). 그 네트워크 포트 필터와 연관된 FPT 규칙들을 사용하여 데이터 패킷에 대한 분석이 수행된다(단계 4). 패킷 송신에 관한 판정이 이루어진다(단계 5). 패킷이 FPT 규칙들의 파라미터들 내에 있으면, 데이터 패킷이 네트워크에 액세스하는 것이 허용된다(단계 5a). 그 후 패킷이 네트워크로 송신된다(단계 6a). 패킷이 FPT 규칙들의 파라미터들 내에 있지 않으면, 데이터 패킷이 네트워크에 액세스하는 것이 거부된다(단계 5b). 패킷이 송신되는 것이 차단된다(단계 6b).
도 4는 외부 소스로부터 수신된 데이터 패킷이 어떻게 수용되는지를 나타내는 흐름 다이어그램이다. 단계 10에서, 데이터 패킷은 프로그래밍가능 스위칭 디바이스로 송신된다. 단계 11에서, 데이터 패킷이 어느 네트워크 포트로 향하는지에 관하여 결정이 이루어진다. 데이터 패킷이 결정된 네트워크 포트와 연관된 프로그래밍가능 필터와 상관된다(단계 12). 그 네트워크 포트 필터와 연관된 FPT 규칙들을 사용하여 데이터 패킷에 대한 분석이 수행된다(단계 13). 패킷 송신에 관한 판정이 이루어진다(단계 14). 패킷이 FPT 규칙들의 파라미터들 내에 있으면, 데이터 패킷이 목적지 네트워킹된 디바이스로 송신되는 것이 허용된다(단계 15a). 패킷이 FPT 규칙들의 파라미터들 내에 있지 않으면, 데이터 패킷이 목적지 네트워킹된 디바이스에 액세스하는 것이 거부된다(단계 15b).
도 5에 나타낸 바와 같이, 프로그래밍가능 스위칭 디바이스(150)는 임베딩된 제어기를 포함할 수 있다. 프로그래밍가능 스위칭 디바이스(150)는 프로세서(152), 메모리(154), 식별 모듈(155), 제어기(156), 보고 모듈(157), 데이터 패키징 모듈(158), I/O 네트워크 포트들(160a 내지 160p) 및 로깅 및 통계 능력을 갖는 프로그래밍가능 필터들(162a 내지 162p)을 포함할 수 있다. 임베딩된 제어기(156)를 갖는 프로그래밍가능 스위칭 디바이스(150)는 수신 및 송신된 데이터 패킷들이 상술한 바와 같이 FPT 규칙들을 따르는 프로그래밍가능 스위칭 디바이스(10)와 유사한 방식으로 기능한다. 일부 구현들에서, 임베딩된 제어기는 이들의 API를 통해 하나 이상의 프로그래밍가능 스위칭 디바이스를 통제할 수 있다.
임베딩된 제어기(156)는, 예를 들어 정의된 규칙들을 설정하고 프로그래밍가능 스위칭 디바이스를 관리하기 위한 가상 제어 애플리케이션을 실행하는 물리적 네트워킹된 디바이스 또는 웹 인터페이스로 액세스될 수 있다.
도 6은 개시된 기술의 무선 프로그래밍가능 스위칭 디바이스(110)의 구현을 나타낸다. 무선 프로그래밍가능 스위칭 디바이스(110)는 프로세서(112), 메모리(114), 식별 모듈(115), API(116), 보고 모듈(117), 데이터 패키징 모듈(118), I/O 네트워크 포트들(120a 및 120b) 및 로깅 및 통계 능력을 갖는 프로그래밍가능 필터들(122a 및 122b)을 포함할 수 있다. 무선 프로그래밍가능 스위칭 디바이스(110)는 무선으로 수신 및 송신된 데이터 패킷들이 상술한 바와 같이 FPT 규칙들을 따르는 프로그래밍가능 스위칭 디바이스(10)와 유사한 방식으로 기능한다. 일부 구현들에서, 무선 프로그래밍가능 스위칭 디바이스(110)는 프로그래밍가능 스위칭 디바이스(150)에 나타낸 바와 같이, 임베딩된 제어기(156)를 포함할 수 있다.
정의된 규칙들의 세트가 개시된 기술의 프로그래밍가능 스위칭 디바이스 내로 구성되면, 네트워킹된 디바이스들 내로 또는 외로 비인가 액세스가 거의 불가능한데, 이는 각각의 네트워킹된 디바이스가 다른 네트워크 기술들로는 가능하지 않은 인가된 액세스 모델에 기초하여 완전히 격리되기 때문이다.
개시된 기술의 프로그래밍가능 스위칭 디바이스의 고유 특징들은 다음을 포함할 수 있다: (1) 네트워킹된 디바이스의 IP 및 MAC 어드레스에 기초한 LAN 방화벽 접근법, (2) 공유 LAN 상의 보안 제어들을 통한 흐름 정책 기반 세그먼테이션, (3) SDN 기반 LAN 제어들, 예를 들어 스위치 또는 제어기 기반 정책 관리, (4) 자동화된 흐름 검출 및 흐름 정책 템플릿 생성, (5) 흐름 수락 및 관리, (6) 원치 않는 아웃바운드(북향) 흐름들 및 잠재적 데이터 누설의 방지, 및 (7) 단일 또는 다중 LAN들(또는 VLAN들)에 걸친 분산형 방화벽 정책.
개시된 기술의 프로그래밍가능 스위칭 디바이스는 또한 네트워킹된 디바이스의 소스 IP 어드레스(IPv4 또는 IPv6) 및 MAC 어드레스 상에서 동작할 수 있고 다른 LAN 네트워킹된 디바이스들에 가시적이지 않을 수 있는 투명한 계층 2 디바이스로서 사용된다. 일부 구현들에서, 프로그래밍가능 스위칭 디바이스는 또한 네트워크 프레임 헤더, 패킷 헤더, 또는 네트워크 프레임 또는 패킷의 콘텐츠의 다른 요소들 상에서 투명하게 동작할 수 있다.
개시된 기술의 프로그래밍가능 스위칭 디바이스는 또한 LAN 내에서 그리고 LAN들(또는 VLAN들) 사이에서 흐름 정책 세그먼트들(FPS)의 생성을 허용하는 소스 및 목적지 IP 및/또는 MAC 어드레스를 통해 방화벽 정책들을 생성할 수 있다. 개시된 기술의 프로그래밍가능 스위칭 디바이스는 LAN 상의 또는 LAN들(또는 VLAN들)에 걸친 네트워킹된 디바이스들 사이에서 방화벽 기반의 폐쇄형 통신 경로를 추가로 생성할 수 있다. 예를 들어, 흐름 정책 세그먼트들은, 임의로 프로토콜 유형 및 포트 번호들과 같지만 이에 제한되지 않는 부가 속성들로 개별 소스 어드레스 또는 IP 어드레스 블록에서 개별 목적지 어드레스 또는 IP 어드레스 블록으로의 흐름들을 허용할 수 있다. 다른 구현들에서, FPS들은 하기에서 더 충분히 설명되는, 연합을 통해 2 이상의 프로그래밍가능 스위칭 디바이스들 사이에 적용될 수 있다.
비교적 적은 수의 포트들과 매우 많은 규칙들의 세트들을 갖는 종래 방화벽들과는 대조적으로, 개시된 기술의 프로그래밍가능 스위칭 디바이스는 훨씬 더 많은 수의 네트워크 포트들에 걸쳐 분산되고 개별 네트워크 포트들 상의 모든 네트워킹된 디바이스들에 또는 특정된 네트워킹된 디바이스 IP 어드레스들에 적용될 수 있는 방화벽 규칙들의 더 적은 세트들을 활용할 수 있다.
개시된 기술의 프로그래밍가능 스위칭 디바이스는 네트워킹된 디바이스의 IP 어드레스에 적용될 수 있는 흐름 정책 템플릿들의 생성을 통해 네트워크 흐름들을 제약하기 위한 정책들을 동적으로 식별, 추적 및 생성하도록 SDN에 추가로 의존할 수 있다. SDN은 또한, 흐름 정책 템플릿들이 화이트리스트 규칙들을 설정하고 하기에서 더 충분히 논의되는 이들의 동작을 통제하는 것을 가능하게 한다.
흐름 정책 템플릿 및 그 기본 액세스 제어 리스트들에 대한 템플릿 유형 접근법은 또한, 프로그래밍가능 스위칭 디바이스가 예를 들어, 치환들 및 프로세싱 로직과 같은 동작들을, 흐름 프로파일 템플릿들 및 그 액세스 제어 리스트들의 요소들 및 속성들에 그리고 이로써 포트 필터들에 적용하는 것을 가능하게 하여, 고유한 동적 및 적응가능 네트워크 액세스 패러다임을 생성한다. 예를 들어 NodeID, 프레임 또는 패킷 헤더 및 콘텐츠, 실시간 네트워크 흐름 데이터, 외부 소스들로부터의 데이터와 같은 데이터는 흐름 정책 템플릿들, 흐름 정책 세그먼트들 및 흐름 정책 그룹들의 특성들 및 거동을 진화하는 보안 정책의 동적 요구들에 의해 요구된 바와 같이 조정하도록 레버리지될 수 있다. 예를 들어, 패턴 매칭, 치환들, 산술 연산들, 비교들 및 프로세싱 로직을 포함한 동작들의 사용을 통해, 이러한 동적 조정들의 적용을 용이하게 하도록 언어가 채용된다.
개시된 기술의 프로그래밍가능 스위칭 디바이스는 제어기로서 작용하는 스위치 또는 전용 제어기로 중앙집중형 또는 분산형 구성으로 부가적으로 동작할 수 있다.
개시된 기술의 프로그래밍가능 스위칭 디바이스는 또한 전형적인 스위치(비방화벽)로서 또는 프로그래밍가능 모드에서 동작할 수 있다. 프로그래밍가능 스위칭 디바이스의 글로벌 설정은 보안 태세에서의 갭들을 회피하기 위해 모든 포트들이 프로그래밍가능 모드에서 동작하도록 강제하는데 사용될 수 있다. 일부 구현들에서, 양자의 모드에서 동작하는 포트들의 조합으로 하이브리드 구성이 요구된다.
개시된 기술의 프로그래밍가능 스위칭 디바이스 및 그 제어기는 네트워크 상의 새로운 흐름들을 식별하고 그 흐름의 본질을 다음과 같이 특성화할 수 있다: 소스 및 목적지 어드레스, 프로토콜 및 포트 번호들과 같은 속성들을 사용하여, 내부에서 외부(또는 외부로부터 내부), 내부에서 내부, 또는 외부에서 외부. 일부 구현들에서, 프로그래밍가능 스위칭 디바이스는 또한 네트워크 프레임 헤더, 패킷 헤더, 또는 네트워크 프레임 또는 패킷의 콘텐츠의 다른 요소들을 특성화할 수 있다.
네트워킹된 디바이스에 대한 새로운 흐름이 검출되면, 구성된 정책에 따라 경고가 트리거되어 승인을 허용, 거부 또는 대기할 수 있다. 또한, 모든 흐름들은 흐름 정책 템플릿 내에 등록될 수 있으며 "개방" 포트들은 "임의의 것에서 임의의 것"의 흐름들을 허용하는 흐름 정책 템플릿으로 동작할 수 있다.
개시된 기술의 프로그래밍가능 스위칭 디바이스 및 그 제어기는 정책 템플릿들과 일치하지 않고 악의적이거나 바람직하지 않은 활동을 표시할 수 있는 이상 트래픽 패턴들에 대한 경고를 생성할 수 있다. 예를 들어, 확장가능한, 유한 수의 규칙들이 있는 정책 템플릿에 의해 제약될 수 없는 과도한 수의 동적 흐름들을 생성하는 네트워킹된 디바이스는 전형적인 스테이트풀 방화벽 방식으로 폴백을 트리거하거나 네트워크 관리자에게 청취가능하거나 기입된 경고를 전송한다.
흐름 정책 템플릿들은 흐름 수락 모델, 예를 들어, (1) "개방 모드" - 모든 흐름들을 허용함, (2) "학습 모드" - 제어기가 그 포트를 통한 모든 흐름들을 허용 및 추적하고 트래픽을 기술하는 흐름 정책 템플릿을 개발함, (3) "승인 모드" - 모든 새로운 흐름들이 포트를 통해 그리고 네트워킹된 디바이스에 대해 허용되기 전에 수동으로 승인되어야 하므로, 흐름 정책 템플릿을 수동으로 생성함, (4) "제한적 모드" - 흐름 정책 템플릿이 활성이고 스위치 포트 상의 트래픽을 제한하는 정상 동작 및 (5) "스테이트풀 모드" - 모든 아웃바운드 흐름들을 스테이트풀로 허용함; 승인된 예외들이 있는 모든 비스테이트풀 인바운드 흐름들을 거부함에 기초하여 생성될 수 있다. 다른 모드들이 고려된다.
일 구현에서, 화이트리스팅 모델은 흐름 정책 템플릿에 의해 명시적으로 허용된 흐름들만을 허용할 수 있다. 흐름 정책 템플릿 내에 나타나지 않는 흐름들은 흐름 정책 세그먼트에 진입하도록 허용되지 않음으로써, 네트워크 스캔들 또는 공격들과 같은 원치 않는 인바운드 트래픽을 방지한다. 흐름 정책 템플릿 내에 나타나지 않는 흐름들은 흐름 정책 세그먼트를 떠나도록 허용되지 않음으로써, 다른 소프트웨어와 통합하거나 제3자와 접촉하기 위한 네트워크 스캔들, 공격들, 시도들과 같은 원치 않는 아웃바운드 트래픽을 방지한다. 이 구현은 흐름 정책 템플릿을 준수하는 아웃바운드 흐름들만을 허용하여 흐름 정책 세그먼트 외부의 데이터 누설을 방지한다.
다른 구현에서, 운용 기술(OT) 및 사물 인터넷(IoT) 디바이스들은 특성적으로 네트워크에 안전하게 로그인하고 액세스하기 위한 엔터프라이즈-레벨 특징들이 부족하다. 이러한 네트워킹된 디바이스들은 NodeID, 예를 들어 MAC 어드레스, IP 어드레스(IPv4 또는 IPv6, CIDR(Classless Inter-Domain Routing) 표기법) 또는 이들의 조합으로 네트워크에 의해서만 식별될 수 있다. 개시된 기술은 2개의 고유 파라미터, 예를 들어 네트워크 스위치 또는 무선 액세스 포인트(WAP)와 같은 네트워킹된 디바이스의 어태치먼트 디바이스, 및 무선 연관 ID 또는 네트워크 스위치 상의 포트와 같은 어태치먼트 식별자를 사용하여 네트워크 위치 식별(LocID)을 정의할 수 있다. 이 시나리오에서, LocID는 (스위치 ID + 스위치 포트) 또는 (WAP + 무선 연관 ID) 등과 동일할 수 있다. 이들 네트워크 위치 식별자 지정들은 네트워크 상의 모든 네트워킹된 디바이스들에 대한 위치들, 예를 들어 LocNodeID = LocID + NodeID를 확립한다.
사용 시, 스위치들은 기업에 걸쳐 연합될 때, 네트워크는 그의 토폴로지에 걸쳐 NodeID 및 LocNodeID를 인식할 수 있다. 이러한 지정들을 사용하여, 신규 개시 기술은 보안 정책들이 전체 네트워크에 걸쳐 있도록 할 수 있다. 예를 들어, 가상 토폴로지(vTopology)가 생성되어 물리적 인프라구조의 일 세트 상의 다중 토폴로지들에 대해, 하나 이상의 물리적 프로그래밍가능 스위칭 디바이스에 걸쳐 있을 수 있는 가상 스위치 구성의 생성을 허용하거나, 상이한 사용 경우들(예를 들어, 관리 도메인들)에 대해 함께 프로그래밍가능 스위칭 디바이스들을 그룹화한다. 다른 가상 토폴로지 사용들이 고려되고 있다. 가상화된 네트워크 토폴로지 내에서 네트워킹된 디바이스 위치는 예를 들어, (vTopLocID = vTopologyID + LocID) 또는 (vTopLocNodeID = vTopologyID + LocNodeID)일 수 있다.
부가적으로, 네트워크 상의 네트워킹된 디바이스의 거동은 연결되는 프로그래밍가능 스위칭 디바이스를 통해 데이터가 흐를 때 고유 송신들을 통해 특성화될 수 있다. 네트워킹된 디바이스의 흐름들의 세트는 소프트웨어 정의 네트워킹(SDN) 기법들로 특성화되고 흐름 정책 템플릿(FPT)으로서 나타낼 수 있다. 예를 들어, 상술한 바와 같이, 운영 기술(OT) 및 사물 인터넷(IoT) 디바이스들은 통상적으로 많은 수의 고유하고 동적인 흐름들을 생성하지 않고 오히려 예를 들어, 관리 시스템, 제조자의 서버들로, 또는 유사한 디바이스들 사이 등으로 제한된 수의 반복 흐름들을 생성한다. 이러한 트래픽 패턴들은 학습되고, 특성화되고, 템플릿되며 SDN 기술을 통해 개시된 기술의 프로그래밍가능 스위칭 디바이스 내로 프로그래밍될 수 있다. 즉, 운용 기술(OT) 및 사물 인터넷(IoT) 디바이스들에 의해 생성된 흐름 패턴들을 특성화하는 것은 비교적 용이할 수 있는데, 이는, 예를 들어, 흐름 패턴들이 훨씬 더 복잡한 데스크톱, 랩톱, 핸드헬드와 같은 사람이 사용하는 상호작용 디바이스들과 비교하여 이들의 흐름 유형들의 수가 제한되기 때문이다.
게다가, 서로 통신하는 네트워킹된 디바이스는 공통 흐름 정책 템플릿 또는 인터링크되는 상이한 흐름 정책 템플릿의 일부를 공유할 수 있다. 각각의 네트워킹된 디바이스의 네트워크 위치 ID(vTopLocNodeID)는 인바운드 및 아웃바운드 액세스 제어 리스트를 포함하는, FPT에 링크될 수 있다. FPT의 액세스 제어 리스트들은 예를 들어, 어떤 트래픽이 다른 모든 것을 허용하고 거부하는지를 특정하는, 화이트리스트들이다.
흐름 정책 템플릿은 다음을 지정하도록 구조화될 수 있다: FPT ID, 방향(각각의 연결된 네트워킹된 디바이스가 양자 모두를 가져야 하므로 인바운드 또는 아웃바운드), 링크된 FPS(이 FPT가 링크되는 FPS ID), 소스(vTopLocNodeID 및 인바운드 FPT들 상의 연결된 네트워킹된 디바이스이어야 함), 프로토콜(IP 프로토콜 유형), 포트(포트 번호 또는 프로토콜 서브 식별자이며 동적 클라이언트 측 포트 번호들에 대해 동적일 수 있음), 목적지(vTopLocNodeID이며 아웃바운드 FPT들 상의 타깃 네트워킹된 디바이스이어야 함), 액션(이 흐름 상에서 취해진 액션이며 허용/거부 또는 소프트웨어 정의(SDN 제어)를 포함할 수 있음) 및 디폴트 최종 규칙(제거될 수 없음 - 모든 네트워킹된 디바이스들에서 모든 네트워킹된 디바이스들로의 트래픽을 거부(화이트리스팅 강제)). 다른 액션들 및 FPT 요소들이 고려된다.
모든 새롭게 연결된 네트워킹된 디바이스들(또는 네트워킹된 디바이스들의 유형들)은 유사한 디바이스들의 클래스들에 대한 템플릿된 보안 제어들을 허용하는 원하는 정책으로 그 템플릿이 설정되는 초기 FPT들, 예를 들어 원하는 정책과 링크되는 FPS ID를 포함하는 FPT의 애플리케이션을 가질 수 있다.
다른 구현에서, 흐름 정책 템플릿(FPT)은 네트워킹된 디바이스의 NodeID에 링크될 수 있다. 이 FPT는 네트워크 전체에 걸쳐 컴퓨터 또는 네트워킹된 디바이스를 따를 수 있다. 이 구현에서는, 프로그램된 필터들이 주어진 순간(또는 컴퓨터가 유지하고 있는 무선 연관/연결)에 보호된 네트워킹된 디바이스가 연결되는 스위치 상의 포트에 적용되지만, 보호된 네트워킹된 디바이스가 스위치 상의 하나의 포트로부터 연결해제되고 동일하거나 상이한 스위치 상의 다른 포트로 이동되는 경우(또는 보호된 컴퓨터가 하나의 룸에서 다른 룸으로 무선으로 이동하고 다른 WAP 로 시프트하는 경우), FPT 내의 이러한 네트워킹된 디바이스에 대한 규칙들이 그의 새로운 포트에 적용될 수 있다. 즉, FPT는 원래 스위치 포트에서 새로운 포트로(또는 원래 무선 연관 ID에서 새로운 무선 연관 ID로) 시프트될 수 있다. 제어기가 네트워크 상의 모든 스위치들(또는 WAP들)을 감독하기 때문에 FPT의 시프팅은 제어기에 의해 수행될 수 있다. 이 구현에서, 스위치(또는 WAP)는 보호된 컴퓨터가 이동했음을 제어기에게 경보하는 인텔리전스를 또한 가질 수 있으며 새로운 포트(또는 무선 연관) 상에서 FPT의 필터들의 프로그래밍을 수락할 수 있다.
네트워킹된 디바이스들은 또한 흐름 정책 세그먼트들(FPS)을 생성하기 위해 하나 이상의 프로그래밍가능 스위칭 디바이스에 걸친 흐름 정책 템플릿들의 애플리케이션을 통해 네트워크 상에서 격리되거나 세그먼트될 수 있다. FPS는 모든 네트워킹된 디바이스의 네트워크 연결에 대한 액세스 제어 리스트에 의해 시행되는 전체적인 네트워크 정책을 생성하기 위해 인터링크되는 FPT들의 집합이다. 각각의 FPS는 인바운드 및 아웃바운드 흐름 정책을 갖는다. 흐름 정책 세그먼트는 FPT들 내에 표현된 보안 제어들을 반영하는 액세스 제어 리스트들을 통해 모든 스위치 진입 및 출구 포트들 상에서 보호된 사설 통신 경로이다. FPS에 링크된 그 FPT에 의해 명시적으로 허용되지 않는 한 어느 것도 FPS에 진입하거나 진출할 수 없다.
흐름 정책 세그먼트는 FPS ID, FPS 이름(32자 텍스트(공백 없음)), 디스크립션(255자 자유 형식 인쇄가능 텍스트), 토폴로지 ID(이 FPS가 멤버인 vTopology ID), FPT 리스트(이 FPS에 링크된 모든 FPT의 리스트)를 지정하도록 구조화될 수 있다. FPT는 인바운드 및 아웃바운드 방향을 가져서, FPS에 대한 양방향 정책을 생성할 수 있다. FPT들은 예를 들어, 모든 네트워킹된 디바이스들, 네트워킹된 디바이스들의 서브세트, 또는 네트워킹된 디바이스들의 유형들과 같은, 유사한 네트워킹된 디바이스들의 클래스들에 대해 템플릿될 수 있다. 다른 FPS 요소들이 고려된다.
SDN 기법들은 네트워킹된 디바이스들의 클래스들의 거동을 학습하고 학습되거나 정의된 FPT들을 하나 이상의 프로그래밍가능 스위칭 디바이스로 구성되는 소형 또는 대형 네트워크 풋프린트에 걸쳐 다수의 유사한 네트워킹된 디바이스들(즉, 비디오 감시 카메라들, 카드 액세스 판독기들, 빌딩 센서들 등)에 대한 템플릿들로서 적용할 수 있다. FPT는 SDN을 통해 vTopLocNodeID 또는 유사한 클래스의 vTopLocNodeID들의 멤버들에 적용되며, 네트워크의 디바이스 사용이 업데이트들 등으로 인해 진화함에 따라 동적으로 유지될 수 있다. SDN은 또한 FPT 내에서 액세스 규칙의 액션(즉, 허용/거부 또는 소프트웨어 정의)을 동적으로 결정하는데 사용될 수 있다.
도 7은 개시된 기술의 프로그래밍가능 스위칭 디바이스를 활용하는 네트워크 구조(200)의 예를 나타낸다. 도 7에서, 기업 네트워크 스위칭 디바이스(204)는 네트워크 구조(200)에 대한 제1 티어 스위칭 디바이스일 수 있다. 기업 네트워크 스위칭 디바이스(204)는 포트 1에서 인터넷(202), 포트 2에서 네트워크 제어기(206), 및 하나 이상의 제2 티어 스위칭 디바이스, 예를 들어 포트 7에서 혼용 스위칭 디바이스(220), 포트 6에서 OT 스위칭 디바이스(230) 및 포트 5에서 혼용 스위칭 디바이스(240)에 통신가능하게 연결될 수 있다.
혼용 스위칭 디바이스(220)는 여러 상이한 유형들의 네트워킹된 디바이스들에, 예를 들어 포트 8, 7에서 각각 데스크톱 컴퓨터들(221, 222) 및 포트 6, 5에서 각각 보안 카메라들(223, 224)에 통신가능하게 커플링될 수 있다. OT 스위칭 디바이스(230)는 여러 빌딩 인프라구조 네트워킹된 디바이스들에, 예를 들어 포트 8에서 물리적 보안 제어 패널(231), 포트들 7, 6에서 각각 보안 카메라들(232, 233) 및 포트 5에서 HVAC 관리 스테이션(234)에 통신가능하게 커플링될 수 있다. 혼용 스위칭 디바이스(240)는 여러 상이한 유형들의 네트워킹된 디바이스들에, 예를 들어 포트들 6, 5에서 각각 데스크톱 컴퓨터들(243, 244) 및 포트들 8, 7에서 각각 무선 액세스 포인트들(241, 242)에 통신가능하게 커플링될 수 있다. 무선 액세스 포인트들(241, 242)은 예를 들어, 하나 이상의 랩톱 컴퓨터(245)에 무선으로 연결될 수 있다.
사용 시, 네트워크 제어기는 상술한 바와 같이 기업 네트워크 스위칭 디바이스(204), 혼용 스위칭 디바이스(220, 240) 및 OT 스위칭 디바이스(230)의 각각의 포트에 대한 방화벽 규칙 또는 액세스 제어 리스트로 개별 필터들을 프로그램할 수 있다.
본 명세서에 설명된 청구물 및 동작들의 실시예들은 본 명세서에 개시된 구조들 및 그 구조의 등가물들을 포함하여, 디지털 전자 회로에서, 또는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어에서, 또는 이들의 하나 이상의 조합에서 구현될 수 있다. 본 명세서에 설명된 청구물의 실시예들은 하나 이상의 컴퓨터 프로그램, 즉 데이터 프로세싱 장치에 의한 실행을 위해, 또는 이 장치의 동작을 제어하기 위해 컴퓨터 저장 매체들 상에 인코딩된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈을 사용하여 구현될 수 있다. 대안으로 또는 부가적으로, 프로그램 명령어들은 인공적으로 생성된 전파 신호, 예를 들어 데이터 프로세싱 장치에 의한 실행을 위한 적절한 수신기 장치로의 송신을 위해 정보를 인코딩하기 위해 생성되는 머신에 의해 생성된 전기, 광학 또는 전자기 신호에 대해 인코딩될 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 저장 디바이스, 컴퓨터 판독가능 저장 기판, 랜덤 또는 시리얼 액세스 메모리 어레이 또는 디바이스, 또는 이들 중 하나 이상의 조합이거나 이에 포함될 수 있다.
본 명세서에 설명된 동작들은 하나 이상의 컴퓨터 판독가능 저장 디바이스에 저장되거나 다른 소스들로부터 수신된 데이터에 대해 데이터 프로세싱 장치에 의해 수행되는 동작들로서 구현될 수 있다. 용어 "데이터 프로세싱 장치"는 예시로서 프로그래밍가능 프로세서, 컴퓨터, 또는 시스템 온 칩, 또는 이들의 조합들을 포함하여, 데이터를 프로세싱하기 위한 모든 종류의 장치, 디바이스, 및 머신을 포괄한다. 장치는 특수 목적 로직 회로부, 예를 들어 FPGA(field programmable gate array) 또는 ASIC(application-specific integrated circuit)을 포함할 수 있다. 장치는 또한, 하드웨어에 부가하여, 해당 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 시스템, 크로스 플랫폼 런타임 환경, 예를 들어 가상 머신 또는 이들의 하나 이상의 조합을 구성하는 코드를 포함할 수 있다. 장치 및 실행 환경은 다양한 컴퓨팅 모델 인프라구조들, 예를 들어 웹 서비스들, 분산형 컴퓨팅 및 그리드 컴퓨팅 인프라구조들을 실현할 수 있다.
컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 애플리케이션, 스크립트 또는 코드로서 또한 알려짐)은 컴파일되거나 해석된 언어, 선언적 또는 절차적 언어를 포함하는 임의의 형태의 프로그래밍 언어로 기입될 수 있고, 독립형 프로그램으로서 또는 모듈, 컴포넌트, 서브루틴, 오브젝트 또는 컴퓨팅 환경에서 사용하기에 적합한 다른 유닛으로서 포함하는 임의의 형태로 전개될 수 있다. 컴퓨터 프로그램이 파일 시스템에서의 파일에 대응할 수도 있지만 반드시 그런 것은 아니다. 프로그램은 다른 프로그램 또는 데이터(예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트)를 유지하는 파일의 일부, 해당 프로그램에 전용된 단일 파일, 또는 다중 조정 파일들(예를 들어, 하나 이상의 모듈, 서브 프로그램 또는 코드의 부분을 저장하는 파일들)에 저장될 수 있다. 컴퓨터 프로그램은 하나의 컴퓨터 상에서 또는 하나의 사이트에 위치되거나 다중 사이트들에 걸쳐 분산되고 통신 네트워크에 의해 상호연결되는 다중 컴퓨터들 상에서 실행되도록 전개될 수 있다.
본 명세서에 설명된 프로세스들 및 로직 흐름들은 입력 데이터에 대해 동작하고 출력을 생성함으로써 기능들을 수행하도록 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그래밍가능 프로세서에 의해 수행될 수 있다. 또한 특수 목적 로직 회로부, 예를 들어 FPGA(field programmable gate array) 또는 ASIC(application-specific integrated circuit)으로서 장치가 또한 구현될 수 있고, 이에 의해 프로세스들 및 로직 흐름들이 또한 수행될 수 있다.
컴퓨터 프로그램의 실행에 적합한 프로세서들은 예로서, 일반 및 특수 목적 마이크로프로세서들 양자 모두와, 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 양자 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 요소들은 명령어들을 수행하거나 실행하기 위한 프로세서와 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스, 예를 들어 자기, 광자기 디스크들 또는 광 디스크들을 포함하거나, 이들로부터 데이터를 수신하거나 이들로 데이터를 전송하거나 양자 모두를 행하도록 이들에 동작가능하게 커플링될 것이다. 그러나, 컴퓨터가 이러한 디바이스들을 가질 필요는 없다. 더욱이, 컴퓨터는 다른 디바이스, 예를 들어 몇 가지만 들면, 모바일 전화, 개인용 디지털 보조기(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, 글로벌 포지셔닝 시스템(GPS) 수신기 또는 휴대용 저장 디바이스(예를 들어, 범용 시리얼 버스(USB) 플래시 드라이브)에 임베딩될 수 있다. 컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적합한 디바이스들은, 예로서 반도체 메모리 디바이스들, 예를 들어 EPROM, EEPROM 및 플래시 메모리 디바이스들; 자기 디스크들, 예를 들어 내부 하드 디스크들 또는 탈착가능 디스크들; 광자기 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함하여, 모든 형태의 비휘발성 메모리, 매체들 및 메모리 디바이스들을 포함한다. 프로세서 및 메모리는 특수 목적 로직 회로부에 의해 보충되거나 이에 통합될 수 있다.
사용자와의 상호작용을 제공하기 위해, 본 명세서에 설명된 청구물의 실시예들은 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스, 예를 들어 마우스 또는 트랙볼 및 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스, 예를 들어, CRT(cathode ray tube) 또는 LCD(liquid crystal display)를 갖는 컴퓨터 상에서 구현될 수 있다. 사용자와의 상호작용을 제공하기 위해 다른 종류의 디바이스들이 또한 사용될 수 있다: 예를 들어, 사용자에게 제공되는 피드백이 임의의 형태의 감각 피드백, 예를 들어, 시각적 피드백, 청각적 피드백 또는 촉각적 피드백일 수 있고; 그리고 사용자로부터의 입력은 음향, 스피치 또는 촉각 입력을 포함하여 임의의 형태로 수신될 수 있다. 또한, 컴퓨터는 사용자에 의해 사용되는 디바이스로 문서들을 전송하고 이 디바이스로부터 문서들을 수신함으로써 사용자와 상호작용할 수 있다.
본 명세서에 설명된 청구물의 실시예들은 백-엔드 컴포넌트, 예를 들어 제어기, 데이터 서버, 및 미들웨어 컴포넌트, 예를 들어 애플리케이션 서버, 또는 프론트 엔드 컴포넌트들, 예를 들어 사용자가 본 명세서에 설명된 청구물의 구현으로 상호작용할 수 있는 웹 브라우저 또는 그래픽 사용자 인터페이스를 갖는 클라이언트 컴퓨터를 포함하거나, 또는 이러한 백-엔드, 미들웨어 또는 프론트 엔드 컴포넌트들의 하나 이상의 임의의 조합을 포함하는 컴퓨팅 시스템에서 구현될 수 있다. 시스템의 컴포넌트들은 예를 들어, 통신 네트워크와 같은 디지털 데이터 통신의 임의의 형태 또는 매체에 의해 상호연결될 수 있다. 통신 네트워크들의 예들은 로컬 영역 네트워크("LAN") 및 광역 네트워크("WAN"), 인터-네트워크(예를 들어, 인터넷), 및 피어-투-피어 네트워크들(예를 들어, 애드 호크(ad hoc) 피어-투-피어 네트워크들)을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 원격이고 통상적으로 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는 개개의 컴퓨터들에서 실행되고 서로 클라이언트 서버 관계를 갖는 컴퓨터 프로그램들에 의해 발생한다. 일부 실시예들에서, 서버는 데이터(예를 들어, HTML 페이지)를 클라이언트 디바이스로 송신한다(예를 들어, 클라이언트 디바이스에 데이터를 디스플레이하고 클라이언트 디바이스와 상호작용하는 사용자로부터 사용자 입력을 수신하기 위해). 클라이언트 디바이스에서 생성된 데이터(예를 들어, 사용자 상호작용의 결과)는 서버에서 클라이언트 디바이스로부터 수신될 수 있다.
전술한 상세한 설명은 모든 면에서 실례가 되고 예시적인 것으로 이해되어야 하지만, 제한적이지는 않으며, 본 명세서에 개시된 기술의 범위는 상세한 설명으로부터 결정되는 것이 아니라, 오히려 특허법에 의해 허용된 전체 범위에 따라 해석되는 청구항들로부터 결정되어야 한다. 본 명세서에 나타내고 설명된 실시예들은 단지 개시된 기술의 원리들에 대한 예시이며 다양한 수정들이 개시된 기술의 범위 및 사상을 벗어나지 않으면서 관련 기술 분야의 통상의 기술자에 의해 구현될 수 있음을 이해해야 한다. 관련 기술 분야의 통상의 기술자는 개시된 기술의 범위 및 사상을 벗어나지 않으면서 다양한 특징 조합들을 구현할 수 있다. 본 개시의 실시예들이 특정 예들로 설명되었지만, 본 개시는 그러한 특정 예들에 제한되지 않으며 다양한 다른 변경들, 조합들 및 수정들이 다음의 청구항들을 참조하여 결정되어야 하는 개시된 기술의 범위 및 사상을 벗어나지 않으면서 관련 기술 분야의 통상의 기술자에게 자명할 것임을 이해해야 한다.

Claims (22)

  1. 프로그래밍가능 스위칭 디바이스로서,
    적어도 하나의 포트; 및
    상기 적어도 하나의 포트에 통신가능하게 커플링된 적어도 하나의 프로그래밍가능 필터
    를 포함하고,
    상기 적어도 하나의 프로그래밍가능 필터는 데이터 패킷들이 정의된 규칙들의 세트에 기초하여 상기 적어도 하나의 포트에 연결된 네트워킹된 디바이스로 또는 네트워킹된 디바이스로부터 송신되는 것을 허용/거부하도록 구성되는, 프로그래밍가능 스위칭 디바이스.
  2. 제1항에 있어서,
    제어기가 상기 정의된 규칙들의 세트를 상기 적어도 하나의 프로그래밍가능 필터로 송신하는, 프로그래밍가능 스위칭 디바이스.
  3. 제2항에 있어서,
    상기 제어기는 상기 프로그래밍가능 스위칭 디바이스에 통신가능하게 커플링된 네트워크 디바이스인, 프로그래밍가능 스위칭 디바이스.
  4. 제2항에 있어서,
    상기 제어기는 방화벽에 의해 보안된 SDN 인에이블형 디바이스인, 프로그래밍가능 스위칭 디바이스.
  5. 제2항에 있어서,
    애플리케이션 프로그래밍 인터페이스
    를 추가로 포함하고, 상기 애플리케이션 프로그래밍 인터페이스는 상기 제어기를 상기 프로그래밍가능 스위칭 디바이스에 링크하는, 프로그래밍가능 스위칭 디바이스.
  6. 제1항에 있어서,
    상기 프로그래밍가능 스위칭 디바이스 내에 임베딩되는 제어기
    를 추가로 포함하고, 상기 제어기는 상기 정의된 규칙들의 세트를 상기 적어도 하나의 프로그래밍가능 필터로 송신하는, 프로그래밍가능 스위칭 디바이스.
  7. 제2항에 있어서,
    보고 모듈
    을 추가로 포함하고, 상기 보고 모듈은 데이터 흐름 특성들을 상기 제어기로 송신하도록 구성되는, 프로그래밍가능 스위칭 디바이스.
  8. 제7항에 있어서,
    상기 제어기는 상기 데이터 흐름 특성들을 분석하고 상기 분석들에 기초하여 상기 정의된 규칙들의 세트를 자동으로 업데이트하는, 프로그래밍가능 스위칭 디바이스.
  9. 제1항에 있어서,
    상기 정의된 규칙들의 세트는 네트워크 관리자에 의해 구성되는, 프로그래밍가능 스위칭 디바이스.
  10. 제1항에 있어서,
    상기 정의된 규칙들의 세트는 적어도 하나의 머신 학습 알고리즘, 인공 지능(AI) 또는 자동화 기법에 의해 구성되는, 프로그래밍가능 스위칭 디바이스.
  11. 제1항에 있어서,
    식별 모듈
    을 추가로 포함하고, 상기 식별 모듈은 상기 프로그래밍가능 스위칭 디바이스에 대한 식별 프로토콜들을 제공하는, 프로그래밍가능 스위칭 디바이스.
  12. 제1항에 있어서,
    데이터 패키징 모듈
    을 추가로 포함하고, 상기 데이터 패키징 모듈은 상기 프로그래밍가능 스위칭 디바이스로부터의 데이터를 수신 및 송신하도록 구성되는, 프로그래밍가능 스위칭 디바이스.
  13. 제1항에 있어서,
    상기 적어도 하나의 포트는 유선 연결 포인트인, 프로그래밍가능 스위칭 디바이스.
  14. 제1항에 있어서,
    상기 적어도 하나의 포트는 무선 연결 포인트인, 프로그래밍가능 스위칭 디바이스.
  15. 네트워크 인프라구조로서,
    적어도 2개의 프로그래밍가능 스위칭 디바이스 - 상기 적어도 2개의 프로그래밍가능 스위칭 디바이스는 각각 적어도 2개의 포트를 가지며, 각각의 포트는 프로그래밍가능 필터에 통신가능하게 커플링됨 -; 및
    제어기
    를 포함하고, 상기 제어기는 상기 적어도 2개의 프로그래밍가능 스위칭 디바이스에 통신가능하게 커플링되며,
    상기 제어기는 정의된 규칙들의 세트로 상기 적어도 2개의 프로그래밍가능 스위칭 디바이스의 각각의 포트에 통신가능하게 커플링된 상기 프로그래밍가능 필터를 파퓰레이트(populate)하는, 네트워크 인프라구조.
  16. 제15항에 있어서,
    상기 정의된 규칙들의 세트는 데이터 패킷들이 적어도 2개의 네트워킹된 디바이스로 또는 적어도 2개의 네트워킹된 디바이스로부터 송신되는 것을 허용/거부하고, 상기 네트워킹된 디바이스들은 상기 적어도 2개의 프로그래밍가능 스위칭 디바이스의 적어도 2개의 포트 중 하나에 통신가능하게 커플링되는, 네트워크 인프라구조.
  17. 제16항에 있어서,
    상기 정의된 규칙들의 세트는 상기 네트워킹된 디바이스들 사이에 네트워크 보안 기반 격리(network security-based isolation)를 생성하는, 네트워크 인프라구조.
  18. 제16항에 있어서,
    상기 정의된 규칙들의 세트는 상기 네트워킹된 디바이스들 사이에 네트워크 보안 기반 세그먼테이션을 생성하는, 네트워크 인프라구조.
  19. 제15항에 있어서,
    상기 정의된 규칙들의 세트는 네트워크 관리자에 의해 구성되는, 네트워크 인프라구조.
  20. 제15항에 있어서,
    상기 정의된 규칙들의 세트는 적어도 하나의 머신 학습 알고리즘, 인공 지능(AI) 또는 자동화 기법에 의해 구성되는, 네트워크 인프라구조.
  21. 제15항에 있어서,
    보고 모듈
    을 추가로 포함하고, 상기 보고 모듈은 데이터 흐름 특성들을 상기 제어기로 송신하도록 구성되는, 네트워크 인프라구조.
  22. 제21항에 있어서,
    상기 제어기는 상기 데이터 흐름 특성들을 분석하고 상기 분석들에 기초하여 상기 정의된 규칙들의 세트를 자동으로 업데이트하는, 네트워크 인프라구조.
KR1020227023537A 2019-12-10 2020-12-10 네트워크 인프라구조들을 위한 프로그래밍가능 스위칭 디바이스 KR20220125251A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/709,444 2019-12-10
US16/709,444 US20210176125A1 (en) 2019-12-10 2019-12-10 Programmable switching device for network infrastructures
PCT/US2020/064285 WO2021119292A1 (en) 2019-12-10 2020-12-10 Programmable switching device for network infrastructures

Publications (1)

Publication Number Publication Date
KR20220125251A true KR20220125251A (ko) 2022-09-14

Family

ID=76210698

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227023537A KR20220125251A (ko) 2019-12-10 2020-12-10 네트워크 인프라구조들을 위한 프로그래밍가능 스위칭 디바이스

Country Status (12)

Country Link
US (1) US20210176125A1 (ko)
EP (1) EP4073992A4 (ko)
JP (1) JP2023506004A (ko)
KR (1) KR20220125251A (ko)
CN (1) CN115413409A (ko)
BR (1) BR112022011305A2 (ko)
CA (1) CA3164102A1 (ko)
GB (1) GB2605098A (ko)
IL (1) IL293667A (ko)
MX (1) MX2022006989A (ko)
TW (1) TW202137735A (ko)
WO (1) WO2021119292A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11281794B2 (en) * 2019-09-26 2022-03-22 Microsoft Technology Licensing, Llc Fine grained access control on procedural language for databases based on accessed resources
US20220247786A1 (en) * 2021-02-01 2022-08-04 Ordr Inc. Security policy generation and enforcement for device clusters
TWI799070B (zh) * 2022-01-10 2023-04-11 碩壹資訊股份有限公司 用以保護受保護的主機之系統及方法
CN114866496B (zh) * 2022-03-30 2023-06-20 清华大学 一种智能网络协作装置及方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728255B1 (en) * 1999-10-29 2004-04-27 Advanced Micro Devices, Inc. Apparatus and method for storing min terms in a network switch port memory for identifying data packet types in a real time
US6728246B1 (en) * 1999-12-07 2004-04-27 Advanced Micro Devices, Inc. Arrangement for reducing layer 3 header data supplied to switching logic on a network switch
US6574240B1 (en) * 2000-01-19 2003-06-03 Advanced Micro Devices, Inc. Apparatus and method for implementing distributed layer 3 learning in a network switch
US6718379B1 (en) * 2000-06-09 2004-04-06 Advanced Micro Devices, Inc. System and method for network management of local area networks having non-blocking network switches configured for switching data packets between subnetworks based on management policies
US6892309B2 (en) * 2002-02-08 2005-05-10 Enterasys Networks, Inc. Controlling usage of network resources by a user at the user's entry point to a communications network based on an identity of the user
US8775571B2 (en) * 2005-06-07 2014-07-08 Extreme Networks, Inc. Methods, systems, and computer program products for dynamic network access device port and user device configuration for implementing device-based and user-based policies
US7936670B2 (en) * 2007-04-11 2011-05-03 International Business Machines Corporation System, method and program to control access to virtual LAN via a switch
US9571523B2 (en) * 2012-05-22 2017-02-14 Sri International Security actuator for a dynamically programmable computer network
US9231892B2 (en) * 2012-07-09 2016-01-05 Vmware, Inc. Distributed virtual switch configuration and state management
EP3021534B1 (en) * 2014-11-14 2018-01-10 Telefonica S.A. A network controller and a computer implemented method for automatically define forwarding rules to configure a computer networking device
US9641390B2 (en) * 2015-05-27 2017-05-02 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Automatic configuration of switch port settings based on the device attached to the switch port
US10148594B2 (en) * 2015-12-31 2018-12-04 Fortinet, Inc. Application based conditional forwarding and load balancing in a software defined networking (SDN) architecture
WO2017121471A1 (en) * 2016-01-13 2017-07-20 Huawei Technologies Co., Ltd. Dynamic forwarding rules in sdn
US9906401B1 (en) * 2016-11-22 2018-02-27 Gigamon Inc. Network visibility appliances for cloud computing architectures
US10547553B2 (en) * 2017-09-17 2020-01-28 Mellanox Technologies, Ltd. Stateful connection tracking

Also Published As

Publication number Publication date
EP4073992A4 (en) 2023-11-29
JP2023506004A (ja) 2023-02-14
IL293667A (en) 2022-08-01
EP4073992A1 (en) 2022-10-19
BR112022011305A2 (pt) 2022-09-06
MX2022006989A (es) 2022-09-19
CN115413409A (zh) 2022-11-29
WO2021119292A1 (en) 2021-06-17
CA3164102A1 (en) 2021-06-17
US20210176125A1 (en) 2021-06-10
GB202208708D0 (en) 2022-07-27
GB2605098A (en) 2022-09-21
TW202137735A (zh) 2021-10-01

Similar Documents

Publication Publication Date Title
Tabrizchi et al. A survey on security challenges in cloud computing: issues, threats, and solutions
Sha et al. A survey of edge computing-based designs for IoT security
Ali et al. Multi-access edge computing architecture, data security and privacy: A review
Iqbal et al. An in-depth analysis of IoT security requirements, challenges, and their countermeasures via software-defined security
Shaghaghi et al. Software-defined network (SDN) data plane security: issues, solutions, and future directions
US11218446B2 (en) Secure on-premise to cloud communication
Scott-Hayward et al. A survey of security in software defined networks
Nazir et al. Survey on wireless network security
EP3149582B1 (en) Method and apparatus for a scoring service for security threat management
Rahouti et al. Secure software-defined networking communication systems for smart cities: current status, challenges, and trends
KR20220125251A (ko) 네트워크 인프라구조들을 위한 프로그래밍가능 스위칭 디바이스
US20190104107A1 (en) Poisoning Protection for Process Control Switches
Hussein et al. Software-Defined Networking (SDN): the security review
Sabella et al. Orchestrating and automating security for the internet of things: Delivering advanced security capabilities from edge to cloud for IoT
Belmonte Martin et al. Threat landscape and good practice guide for software defined networks/5g
US10021070B2 (en) Method and apparatus for federated firewall security
Alexei et al. Analysis of IoT security issues used in Higher Education Institutions
Valadares et al. Security Challenges and Recommendations in 5G-IoT Scenarios
Zhang et al. Security in network functions virtualization
Alnemari A Comprehensive Survey of Internet of Things Security Challenges and possible Solutions
Schmitt A Framework for Cyber Vulnerability Assessments of InfiniBand Networks
US20240129321A1 (en) Zero Trust System Architecture
Manosperta A Quantitative Analysis of a novel Network based Intrusion Detection System over Raspberry Pi
Azad et al. Verify and trust: A multidimensional survey of zero-trust security in the age of IoT
Plósz Security and safety services for automation IoT systems and their application for mobile visual localization