KR20180068832A - SFC(service function chaining)에서의 접근 제어 방법 및 그 장치 - Google Patents

SFC(service function chaining)에서의 접근 제어 방법 및 그 장치 Download PDF

Info

Publication number
KR20180068832A
KR20180068832A KR1020170030060A KR20170030060A KR20180068832A KR 20180068832 A KR20180068832 A KR 20180068832A KR 1020170030060 A KR1020170030060 A KR 1020170030060A KR 20170030060 A KR20170030060 A KR 20170030060A KR 20180068832 A KR20180068832 A KR 20180068832A
Authority
KR
South Korea
Prior art keywords
packet
service function
sfc
module
function module
Prior art date
Application number
KR1020170030060A
Other languages
English (en)
Other versions
KR101969209B1 (ko
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 KR20180068832A publication Critical patent/KR20180068832A/ko
Application granted granted Critical
Publication of KR101969209B1 publication Critical patent/KR101969209B1/ko

Links

Images

Classifications

    • 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
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Abstract

SFC(service function chaining)에서의 접근 제어 방법 및 그 장치가 개시된다. SFC(service function chaining)에서의 접근 제어를 수행하는 장치는, 각각의 서비스 기능 모듈에 대한 접근 허가 정책에 대한 룰을 저장하는 저장부; 패킷을 수신하는 수신부; 및 상기 패킷을 분석하여 상기 패킷이 전달될 서비스 기능 모듈에 대응하는 룰에 따라 상기 패킷에 대해 특정 액션을 적용하는 패킷 처리부를 포함한다.

Description

SFC(service function chaining)에서의 접근 제어 방법 및 그 장치{Access control method and apparatus in SFC}
본 발명은 SFC(service function chaining)에서의 접근 제어 방법 및 그 장치에 관한 것이다.
NFV(Network Functions Virtualization) 시스템은 네트워크 기능을 소프트웨어적으로 가상화하여 제어 및 관리하는 기술이다. 특히 이러한 가상 네트워크 기능들을 순서화하여 연결 및 실행하는 서비스 기능 체이닝(SFC: Service Function Chaining) 기술은 주요 네트워크 서비스들의 자동화 및 커스터마이징을 가능케 한다는 점에서 NFV의 차기 연구 이슈로 주목을 받고 있다. 서비스 기능 체이닝 기술은 ETSI NFV ISG에서 VNF 포워딩 그래프라는 이름으로 기능 모델이 개발 중이며, IETF SFC WG에서 세부 기능 구조 및 프로토콜의 표준화가 진행 중이다.
서비스 기능 체이닝은 가상화된 환경에서 네트워크 오퍼레이터가 새로운 서비스 기능(SF: Service Function)을 동적으로 만들 수 있고, 서비스 기능에 대한 설정 복잡성을 줄일 수 있다. 서비스 기능 체이닝은 서비스 기능들의 순서화된 집합이고, 서비스 기능은 stateful SF 및 stateless SF으로 분류된다. 여기서, stateful SF는 state 정보들을 가지고 있어야 동작하는 SF를 의미하고, stateless SF는 state 정보들이 없이도 동작할 수 있는 SF를 의미한다.
이러한, SFC는 NSH 헤더에 SFC 동작과 관련된 정보들을 추가하고 캡슐화할 수 있다. 그러나, NSH 헤더에는 유저와 관련된 중요정보도 포함되므로 감염된 SF나 확인되지 않은 3rd 서비스 제공자의 기능에 의해서 정보들이 감염되거나 유출되는 문제점이 있다.
본 발명은 SFC(service function chaining)에서의 접근 제어 방법 및 그 장치를 제공하기 위한 것이다.
또한, 본 발명은 SFC에 속한 SF들이 정해진 정책에 따라 정보에 접근이 가능토록 할 수 있는 SFC(service function chaining)에서의 접근 제어 방법 및 그 장치를 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, SFC(service function chaining)에서의 서비스 기능 체이닝에 따른 접근을 제어하는 장치가 제공된다.
본 발명의 일 실시예에 따르면, SFC상의 네트워크 장치에 있어서, 각각의 서비스 기능 모듈에 대한 접근 허가 정책에 대한 룰을 저장하는 저장부; 패킷을 수신하는 수신부; 및 상기 패킷을 분석하여 상기 패킷이 전달될 서비스 기능 모듈에 대응하는 룰에 따라 상기 패킷에 대해 특정 액션을 적용하는 패킷 처리부를 포함하는 네트워크 장치가 제공될 수 있다.
상기 특정 액션은 상기 룰에 따라 상기 패킷의 일부 정보를 삭제하는 동작일 수 있다.
상기 패킷 처리부는, 상기 패킷을 분석하여 상기 패킷이 전달될 서비스 기능 모듈로의 플로우 정보를 저장하되, 상기 플로우 정보는 SFC 컨트롤러를 통해 다른 네트워크 장치로 전송될 수 있다.
상기 플로우 정보에 기반하여 상기 특정 액션이 적용된 패킷을 상기 서비스 기능 모듈로 전달하는 송신부를 더 포함할 수 있다.
본 발명의 다른 실시예에 따르면, SFC상의 네트워크 장치에 있어서, 서비스 기능 모듈(SF: service function)로부터 패킷을 수신하는 수신부; 및 저장된 플로우 정보에 상기 패킷이 매칭되는 경우, 상기 플로우 정보를 참조하여 상기 패킷에 대한 복원 액션을 수행하는 패킷 처리부를 포함하는 네트워크 장치가 제공될 수 있다.
상기 복원 액션은 상기 패킷에 대응하는 접근 허가 정책에 따라 삭제된 일부 정보를 복원하는 동작일 수 있다.
상기 프로세서는, 상기 패킷 처리부는, 상기 패킷이 상기 플로우 정보에 매칭되지 않으면 상기 패킷을 폐기할 수 있다.
본 발명의 다른 측면에 따르면, SFC(service function chaining)에서의 접근 제어 방법이 제공된다.
본 발명의 일 실시예에 따르면, SFC의 접근 제어 방법에 있어서, 패킷을 수신하는 단계; 및 상기 패킷의 다음 홉이 특정 서비스 기능 모듈인 경우, 상기 특정 서비스 기능 모듈에 대응하는 룰에 따라 상기 패킷에 대해 특정 액션을 적용하는 단계를 포함하는 SFC 접근 제어 방법이 제공될 수 있다.
본 발명의 다른 측면에 따르면, SFC의 접근 제어 방법에 있어서, 패킷을 수신하는 단계; 및 저장된 플로우 정보에 상기 패킷이 매칭되는 경우, 상기 플로우 정보를 참조하여 상기 패킷에 대한 복원 액션을 수행하는 단계를 포함하는 SFC 접근 제어 방법이 제공될 수 있다.
본 발명의 일 실시예에 따른 SFC(service function chaining)에서의 접근 제어 방법 및 그 장치를 제공함으로써, SFC에 속한 SF들이 정해진 정책에 따라 정보에 접근이 가능하도록 할 수 있다.
이를 통해, 본 발명은 감염된 SF나 미확인 서비스 제공자의 기능에 의해 중요 정보들이 감염되거나 유출되는 것을 방지할 수 있는 이점이 있다.
도 1은 본 발명의 일 실시예에 따른 네트워크 시스템을 개략적으로 도시한 도면.
도 2는 본 발명의 일 실시예에 따른 접근 허가 정책에 대한 계층적 구조를 설명하기 위해 도시한 도면.
도 3은 본 발명의 일 실시예에 따른 SFC에서의 패킷 처리 방법을 나타낸 순서도.
도 4은 본 발명의 일 실시예에 따른 SFF 장치의 내부 구성을 개략적으로 도시한 블록도.
도 5는 본 발명의 일 실시예에 따른 포워딩 룰에 따라 패킷에 상응하는 특정 동작을 수행하는 방법에 대해 설명하기 위해 도시한 도면.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예를 상세히 설명한다.
도 1은 본 발명의 일 실시예에 따른 네트워크 시스템을 개략적으로 도시한 도면이고, 도 2는 본 발명의 일 실시예에 따른 접근 허가 정책에 대한 계층적 구조를 설명하기 위해 도시한 도면이다.
SFC(service function chaining)는 네트워크 이용자의 트래픽이 NAT, Firewall, IPS 등과 같은 네트워크 서비스 중에서 이용자에게 필요한 기능들만 선택적으로 경유하도록 하는 개념이다. 여기서, 서비스들은 물리적인 서버에서 동작할 수도 있고 가상머신 상에서 동작할 수도 있다.
본 발명의 일 실시예에 따른 SFC에서 가상의 서비스 기능들은 클라우드상에 설치되며, 이용자에게 필요한 기능들만 선택적으로 경유되도록 경로를 생성할 수 있다.
이해와 설명의 편의를 도모하기 위해 SFC를 구현하기 위한 개념을 간단히 정리하기로 한다.
서비스 기능(SF: service function)은 네트워크 서비스를 구성하는 컴포넌트 기능으로서 단일 패킷 혹은 트래픽을 처리한다. 해당 컴포넌트는 각 기능에 따른 논리적 개체를 지칭할 뿐, 실제 동작을 위한 인스턴스(instance)는 소프트웨어적으로 공유된 네트워크 자원, 혹은 물리적 전용 장비에 탑재되어 실행되며 단일 서비스 기능에 대해 하나 이상의 인스턴스가 존재할 수 있다.
서비스 기능 체인(SFC: service function chain)은 수신한 패킷 혹은 트래픽을 어떤 서비스 기능이 어떠한 순서로 처리할 것인지를 나타내는 논리적 경로이다. 서비스 기능 체인은 네트워크 서비스 정책에 따라 정의되며, 각 체인은 트래픽별 분류(traffic classification) 기능에 따라 선택된다.
서비스 기능 전달 장치(SFF: service function forwarder)는 수신된 패킷을 SF 모듈에 전달하는 기능을 수행한다. SFF는 SFC encapsulation에서 전달된 정보에 따라 적어도 하나의 SF에 트래픽 또는 패킷을 전달할 수 있다. 또한, SFF는 패킷을 다른 SFF에 전달하는 기능을 수행할 수도 있다. 서비스 기능 전달 장치는 네트워크 장치로, 하기에서는 SFF 장치로 통칭하여 설명하기로 한다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 SFC는 SFC 컨트롤러(110), 적어도 하나의 서비스 기능 전달 장치(SFF: service function forwarder, 이하 SSF 장치라 칭함)(120) 및 적어도 하나의 서비스 기능 모듈(SF: service function, 이하 SF 모듈이라 칭함)(130)을 포함하여 구성된다. 여기서, SFC 컨트롤러(110)는 SFC상의 제어 평면에 위치하고 있으며, 적어도 하나의 SFF 장치(120) 및 적어도 하나의 SF 모듈(130)은 각각 SPC 데이터 평면에 위치된다.
SFC 컨트롤러(110)는 SFC에 속한 SF들이 정해진 정책에 따라 정보에 접근이 가능하도록 하는 제어하는 기능을 수행한다.
SFC 컨트롤러(110)는 서비스 기능 체이닝 전체 또는 일부에 대한 접근 허가 정책을 외부에서 제공받은 후 이를 포워딩 룰로 변환하여 SFF 장치들로 전달할 수 있다.
SFC 컨트롤러(110)는 도 1에 도시된 바와 같이, 정책 API부(101), 허가 제어 전달 모듈(PCE: permission control enforcer)(102), 정책 보증 모듈(PA: policy assurance)(103), 드라이버 모듈(104)을 포함하여 구성된다.
정책 API부(101)는 정책을 할당할 때 사용하는 일반적인 API들을 저장/관리하기 위한 수단이다.
허가 제어 전달 모듈(102)은 SPC 데이터베이스 저장소에서 SPC 정보를 가져오고, 해당 SPC 정보를 이용하여 접근 허가 정책을 해석하여 포워딩 룰로 변환하는 기능을 수행한다. 도 1에는 별도로 도시되어 있지 않으나, 허가 제어 전달 모듈(102)은 SPC 데이터 평면상에도 존재할 수 있으며, 포워딩 룰 구성을 전달하는 기능을 수행한다.
정책 보증 모듈(103)은 데이터 평면으로부터 모니터링 정보를 수집하고 허가 정책 적용에 대한 정확성을 확인하는 기능을 수행한다. 즉, 정책 보증 모듈(103)은 모니터링 정보를 SF의 정책 위반을 탐지하기 위해 분석한다. 또한, 포워딩 룰 구성 조성을 위해 분석 결과를 허가 제어 전달 모듈(102)로 전달할 수 있다.
드라이버 모듈(104)은 허가 제어 전달 모듈(102)로부터 제공된 포워딩 룰을 분석해서 데이터 평면에 전달하는 기능을 수행한다.
예를 들어, 드라이버 모듈(104)은 허가 제어 전달 모듈(102)로부터 접근 허가 정책에 대한 포워딩 룰을 SFF 장치(120)로 전달할 수 있다.
도 1에서는 드라이버 모듈(104)이 SFC상의 데이터 평면으로 포워딩 룰을 전달하는 것으로 도시되어 있으나, 이외에도 다양한 데이터 평면과의 접점 역할을 수행할 수 있다.
다시 정리하면, SFC 컨트롤러(110)는 서비스 기능 체인을 위한 접근 허가 정책에 대한 룰을 각 SFF 장치(120)로 전달할 수 있다. 여기서, 접근 허가 정책은 계층적으로 지정될 수 있으며, 서비스 기능 체인 전체 또는 부분적으로 적용될 수도 있다.
SFF 장치(120)는 패킷에 명시된 경로를 따라 패킷을 다수의 SF 모듈로 전달하는 기능을 수행한다. 또한, SFF 장치(120)는 SFC 컨트롤러(110)로부터 서비스 기능 체인을 위한 접근 허가 정책에 대한 룰을 제공받아 저장하고 있으며, 이를 이용하여 각 SF 모듈로 전송되는 패킷에 대해 특정 액션 또는 복원 액션을 적용하여 패킷을 처리할 수 있다. 이에 대해서는 하기에서 관련 도면을 참조하여 보다 상세히 설명하기로 한다.
SF 모듈(130)은 서비스 기능 체이닝을 구성하며, 네트워크 패킷에 대한 특정 처리를 수행한다. SF 모듈(130)은 네트워크 서비스를 구성하는 컴포넌트 기능으로서 단일 패킷 혹은 트래픽을 처리할 수 있다.
SFC상에서 SF 모듈 중 일부는 정보에 대한 읽기 권한만 가질 수 있으며, 일부 SF 모듈은 읽기와 쓰기 권한을 모두 가질 수 있으며, 일부 SF 모듈은 아무런 권한을 가지지 않을 수도 있다. SF 모듈에 이러한 권한이 정해져 있으나, SF 모듈은 권한에 상관 없이 패킷을 변경할 수 있다. 그러나, SF 모듈이 권한 없는 특정 행동(패킷 변경)을 수행하는 경우, SFF 장치(120)가 이를 확인하여 패킷을 원래대로 복원할 수 있다.
도 2는 접근 허가 정책에 대한 계층적 구조를 설명하기 위해 도시한 도면이다.
도 2에 도시된 바와 같이 패킷이 캡슐화되어 있다고 가정하기로 한다. 도 2에 도시된 바와 같이 서비스 기능 체인을 위한 접근 허가 정책에 따른 권한이 계층적으로 설정될 수 있다.
도 3은 본 발명의 일 실시예에 따른 SFC에서의 패킷 처리 방법을 나타낸 순서도이다.
단계 310에서 SFF 장치(120)는 패킷을 수신한다.
여기서, 패킷은 도 2와 같이 SFC 캡슐화되어 있으며, 패킷의 일부 데이터에 대해 접근 권한 정책이 각각 설정되어 있을 수 있다.
단계 315에서 SFF 장치(120)는 수신된 패킷을 분석하여 패킷의 다음 홉을 결정한다.
예를 들어, SFF 장치(120)는 패킷 헤더를 분석하여 해당 패킷의 다음 홉(hop)을 결정할 수 있다. 이어, SFF 장치(120)는 도착 지점에 대한 적절한 VXLAN 주소를 설정한다.
단계 320에서 SFF 장치(120)는 패킷이 SF 모듈(130)로부터 수신되었는지 여부를 판단한다.
만일 패킷이 SF 모듈(130)로부터 수신되지 않은 경우, 단계 325에서 SFF 장치(120)는 패킷 플로우 정보를 저장한다. 예를 들어, SFF 장치(120)는 FLOWSTATE_IN_TABLE에 패킷 플로우 정보를 저장할 수 있다.
단계 330에서 SFF 장치(120)는 패킷 플로우 정보에 매칭되는 포워딩 룰이 존재하면, 해당 패킷에 대해 특정 액션을 수행한다. 여기서, 특정 액션은 포워딩 룰에 따라 패킷 중 일부를 삭제(또는 히든(hidden))하는 동작일 수 있다.
예를 들어, SFF 장치(120)는 패킷 플로우 정보에 상응하여 해당 패킷이 전달될 SF 모듈(130)에 대응하는 포워딩 룰이 테이블에 존재하는 경우, 해당 포워딩 룰에 따라 패킷에서 일부 정보를 삭제할 수 있다.
포워딩 룰은 서비스 기능 체인을 위한 접근 허가 정책에 따른 권한으로, 각 SF 모듈에 대해 개별적으로 설정될 수도 있으며, 전체 서비스 기능 체인에 대해 설정되어 있을 수도 있다.
각 SF 모듈은 접근 허가 정책에 따라 각각 두가지 레벨로 패킷의 NSH에 대한 접근 권한이 정의될 수 있다. 여기서, 두가지 레벨은 "read-only" 및 "write" 일 수 있다.
특정 SF 모듈이 "read-only"로 접근 권한이 설정된 경우, 해당 SF 모듈은 오직 패킷(또는 정보)에 대해 읽기 권한만 가질 수 있으며, 특정 위치에 대한 정보를 가져올 수 있다. 여기서, 특정 SF 모듈이 "read-only"로 접근 권한이 설정되어 있는 경우, 해당 SF 모듈은 패킷에서 특정 정보만을 읽을 수 있다. 그러나, 해당 SF 모듈이 "read-only"로 접근 권한이 설정되어 있을지라도 패킷의 일부 내용을 수정할 수 있음은 당연하다. 다만, "read-only"로 접근 권한이 설정된 특정 SF 모듈이 패킷의 일부 내용을 수정한 경우(즉 수정 권한 없이 패킷의 일부 내용을 수정한 경우), SFF 장치가 수정한 패킷의 일부 내용을 원래대로 복원할 수 있다.
특정 SF 모듈이 "write"로 접근 권한이 설정된 경우, SF 모듈은 패킷(정보)에 대해 읽기 및 쓰기 권한을 모두 가지며, 특정 위치에 대한 정보를 가져오고 이를 수정할 수 있는 권한을 가지는 것을 의미한다.
상술한 SF 모듈의 두가지 권한은 이해와 설명의 편의를 위해 도시한 일 예일 뿐이며, 반드시 이에 제한되는 것은 아니다.
SFF 장치(120)는 패킷이 전달될 SF 모듈이 아무런 권한을 가지고 있지 않은 경우, 패킷에서 중요한 정보를 삭제한 후 해당 패킷을 SF 모듈로 전달할 수 있다.
기본적으로 각 SF 모듈은 "write" 권한을 가질 수 있다. 그러나, SFC상에서 미인가된 SF 모듈은 아무런 권한이 설정되지 않을 수 있다.
이와 같이, 각 SF 모듈의 접근 허가에 대한 권리를 통해 각 패킷의 NSH 헤더내의 정보들에 대한 권한을 지정할 수 있다. 정보 접근에 대한 허가 권리는 계층적으로 지정될 수도 있으며, 서비스 체인 전체 혹은 부분적으로 적용될 수도 있다.
따라서, SFF 장치(120)는 패킷이 전달될 SF 모듈에 상응하는 포워딩 룰에 기초하여 패킷에 대해 특정 액션을 수행할 수 있다. 즉, SFF 장치(120)는 패킷 플로우에 매칭되는 포워딩 룰이 존재하는 경우, 해당 포워딩 룰에 따라 패킷 중 일부를 삭제할 수 있다.
이후, 단계 335에서 SFF 장치(120)는 특정 액션이 수행된 패킷을 해당 SF 모듈로 전송한다.
보다 상세히 설명하면, SF 모듈의 접근 허가에 따른 권한에 상응하여 패킷에 특정 액션이 수행된 이후 패킷에는 flow-state ID가 저장된다. 여기서, flow-state ID는 SFC 컨트롤러로부터 부여받은 후 NSH 내의 메타데이터에 저장될 수 있다.
패킷이 새로운 패킷인 경우, 오픈플로우에서 정의한 PACKET_IN 메시지를 통해 SFC 컨트롤러(110)로 전달될 수 있다.
단계 320의 판단 결과 패킷이 SF 모듈로부터 수신된 경우, 단계 340에서 SFF 장치(120)는 패킷에 상응하는 포워딩 룰에 기초하여 패킷에 대한 복원 액션을 수행한다. 즉, SFF 장치(120)는 패킷이 수신된 SF 모듈에 상응하는 룰(접근 허가 정책에 관한 포워딩 룰)에 기초하여 해당 패킷에서 삭제된 정보를 복원할 수 있다.
패킷의 NSH 헤더에는 flow-state에 대한 flow-state ID가 저장되어 있다. 이로 인해, SFF 장치(120)는 패킷에 상응하는 플로우 정보를 FLOWSTATE_OUT_TABLE의 각 필드에 적합하도록 저장할 수 있다. FLOWSTATE_OUT_TABLE에는 MATCHES 필드와 ACTION 필드를 포함할 수 있다.
MATCHES 필드는 패킷의 flow-state에 대한 flow-state ID가 저장될 수 있다. 이로 인해, SFF 장치(120)는 SF 모듈로부터 수신된 패킷의 NSH 헤더에서 flow-state ID를 추출한 후 대응하는 flow-state ID가 MATCHES 필드에 저장되어 있는지(즉, 수신된 패킷의 flow-state ID에 매치되는 플로우가 FLOWSTATE_OUT_TABLE에 저장되어 있는지) 여부를 판단할 수 있다.
만일 FLOWSTATE_OUT_TABLE에 패킷에 상응하여 매칭된 플로우 정보가 없는 경우, SFF 장치(120)는 해당 패킷을 폐기할 수도 있다.
단계 345에서 SFF 장치(120)는 해당 복원된 패킷을 서비스 체이닝에 따라 다른 SFF 장치로 전송한다.
도 4은 본 발명의 일 실시예에 따른 SFF 장치의 내부 구성을 개략적으로 도시한 블록도이고, 도 5는 본 발명의 일 실시예에 따른 포워딩 룰에 따라 패킷에 상응하는 특정 동작을 수행하는 방법에 대해 설명하기 위해 도시한 도면이다.
도 4를 참조하면, 본 발명의 일 실시예에 따른 SFF 장치(120)는 수신부(410), 송신부(415), 패킷 처리부(420), 메모리(425) 및 프로세서(430)를 포함하여 구성된다.
본 발명의 일 실시예에 따른 SFF 장치(120)는 인그레스(ingress) SFF 장치로 동작될 수도 있으며, 이그레스(egress) SFF 장치로 동작될 수도 있다.
인그레스 SFF 장치는 패킷을 수신받아 SF 모듈로 전달하는 장치를 지칭하며, 이그레스 SFF 장치는 SF 모듈로부터 패킷을 수신받아 다른 SFF 장치로 전달하는 장치를 지칭한다.
물론, 하나의 SFF 장치(120)는 인그레스 SFF 장치와 이그레스 SFF 장치로서 동작될 수도 있으며, 어느 하나로 동작될 수도 있음은 당연하다.
수신부(410)는 패킷을 수신받기 위한 수단이다.
송신부(415)는 패킷 처리부(420)의 제어에 따라 패킷을 목적지로 전송하기 위한 수단이다.
본 명세서에서는 이해와 설명의 편의를 도모하기 위해 수신부(410)와 송신부(415)를 개별 구성으로 설명하고 있으나, 수신부(410)와 송신부(415)는 하나의 통신 모듈로서 포함될 수도 있음은 당연하다.
패킷 처리부(420)는 SFC에 속한 SF 모듈들이 정해진 정책에 따라 정보에 접근하도록 패킷을 처리하기 위한 수단이다.
예를 들어, 패킷 처리부(420)는 패킷을 분석하여 플로우 정보를 생성한 후 해당 패킷이 전송될 서비스 기능 모듈에 대응하는 포워딩 룰(즉, 접근 허가 정책)에 따라 패킷에 대해 특정 액션을 적용한 후 해당 패킷을 서비스 기능 모듈로 전달할 수 있다. 여기서, 특정 액션은 이미 전술한 바와 같이 서비스 기능 모듈에 대한 접근 허가 정책에 따른 포워딩 룰에 따라 일부 정보를 삭제하는 동작이다.
또한, 패킷 처리부(420)는 패킷에 대한 플로우 정보를 SFC 컨트롤러(110)를 통해 다른 네트워크 장치(SFF)로 전달할 수도 있다.
또한, 패킷 처리부(420)는 패킷이 서비스 기능 모듈로부터 수신된 경우, 해당 패킷에 상응하는 포워딩 룰(즉, 접근 허가 정책)에 따른 복원 액션을 수행한 후 해당 패킷을 다른 네트워크 장치(즉, 서비스 기능 전달 장치)로 전송할 수 있다. 여기서, 복원 액션은 서비스 기능 모듈로의 패킷 전달시 삭제된 패킷을 복원하는 동작이다.
예를 들어, "read-only" 접근 권한을 가진 SF 모듈이 패킷을 수정하는 경우, 원래대로(즉, SF 모듈로 전송되기 이전의 패킷) 패킷을 복원할 수 있다. 또한, SF 모듈로 전달되기 전에 SF 모듈에서의 노출을 방지하기 위해(숨기기 위해) 삭제처리된 패킷의 일부 내용을 복원할 수 있다.
이와 같이, SFF 장치(120)는 패킷이 전달될 서비스 기능 모듈에 따른 접근 허가 정책에 따라 패킷에서 일부 정보를 삭제하여 해당 서비스 기능 모듈로 전달하고, 다른 네트워크 장치로 전달시에는 해당 패킷을 원래의 형태로 복원하여 전달하도록 할 수 있다.
이를 통해, SFF 장치(120)는 패킷에서 중요한 정보가 서비스 기능 모듈로 전달되는 것을 방지할 수 있을 뿐만 아니라 검증되지 않은 서비스 기능 모듈에 의해 사용자의 중요한 정보가 외부로 유출되는 것을 방지할 수 있는 이점이 있다. 또한, 전술한 바와 같이, 권한을 가지지 않은 SF 모듈에 의해 변경된 내용을 원래대로 복원할 수도 있다.
또한, 패킷 처리부(420)는 SF 모듈로부터 수신된 패킷에 상응하는 룰에 따라 해당 패킷을 원래 상태로 복원한 후 이를 다른 SFF 장치로 전송하도록 제어할 수도 있다. 이는 이미 전술한 바와 동일하므로 중복되는 설명은 생략하기로 한다.
또한, 패킷 처리부(420)는 수신된 패킷이 신규 패킷인 경우, 패킷을 SFC 컨트롤러(110)로 전송하여 플로우를 등록한 후 서비스 기능 체이닝에 따라 처리되도록 제어할 수도 있다.
도 5를 참조하여 본 발명의 일 실시예에 따른 포워딩 룰에 따라 패킷에 상응하는 특정 동작을 수행하는 방법에 대해 설명하기로 한다.
도 5에 도시된 바와 같이, 하나의 패킷이 A, B, C, D, E로 구성되어 있다고 가정하기로 한다. 제1 SFF 장치(120)가 제1 SF 모듈에 대한 제1 포워딩 룰을 저장하고 있다고 가정하기로 한다.
제1 SFF 장치는 제1 패킷이 수신됨에 따라 제1 패킷을 분석하여 패킷의 다음 홉(hop)을 결정한다. 예를 들어, 제1 패킷의 다음 홉이 제1 SF 모듈이라고 가정하기로 한다. 제1 SFF 장치는 제1 패킷의 다음 홉이 제1 SF 모듈이므로, 제1 포워딩 룰에 따라 제1 패킷에서 C 및 D를 히든(hidden)하여 제1 SF 모듈로 전송한다.
이때, 제1 SFF 장치는 제1 패킷의 다음 홉이 제1 SF 모듈이므로, 이에 대한 플로우 정보를 생성한 후 이를 저장할 수 있다. 이어, 제1 SFF 장치는 해당 플로우 정보를 SFC 컨트롤러(110)를 통해 다른 SFF 장치(편의상 제2 SFF 장치라 칭하기로 함)로 전달할 수 있다.
이에 따라 제1 SFF 장치 또는 제2 SFF 장치는 제1 SF 모듈로부터 제1 패킷이 수신되면, 기저장된 플로우 정보를 참조하여 제1 포워딩 룰에 따라 C 및 D를 복원하여 제1 패킷을 복원할 수 있다.
이어, 제1 SFF 장치 또는 제2 SFF 장치는 제1 패킷을 분석하여 다른 SFF 장치 또는 다른 SF 모듈로 전달할 수 있다.
본 발명의 일 실시예에 따른 SFC에서 SF들이 정해진 정책에 따라 정보에 접근할 수 있는 방법을 수행하기 위해 필요한 다양한 알고리즘, 어플리케이션, 해당 과정에서 파생된 다양한 정보들이 저장된다.
또한, 메모리(425)는 각 서비스 기능 모듈에 대한 접근 허가 정책에 따른 포워딩 룰을 저장할 수 있다.
프로세서(430)는 본 발명의 일 실시예에 따른 SFF 장치(120)의 내부 구성 요소들(예를 들어, 수신부(410), 송신부(415), 패킷 처리부(420), 메모리(425) 등)을 제어하기 위한 수단이다.
상술한 본 발명에 따른 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.
110: SFC 컨트롤러
120: SFF 장치
130: SF 모듈

Claims (11)

  1. SFC상의 네트워크 장치에 있어서,
    각각의 서비스 기능 모듈에 대한 접근 허가 정책에 대한 룰을 저장하는 저장부;
    패킷을 수신하는 수신부; 및
    상기 패킷을 분석하여 상기 패킷이 전달될 서비스 기능 모듈에 대응하는 룰에 따라 상기 패킷에 대해 특정 액션을 적용하는 패킷 처리부를 포함하는 네트워크 장치.
  2. 제1 항에 있어서,
    상기 특정 액션은 상기 룰에 따라 상기 패킷의 일부 정보를 삭제하는 동작인 것을 특징으로 하는 네트워크 장치.
  3. 제1 항에 있어서,
    상기 패킷 처리부는,
    상기 패킷을 분석하여 상기 패킷이 전달될 서비스 기능 모듈로의 플로우 정보를 저장하되,
    상기 플로우 정보는 SFC 컨트롤러를 통해 다른 네트워크 장치로 전송되는 것을 특징으로 하는 네트워크 장치.
  4. 제1 항에 있어서,
    상기 플로우 정보에 기반하여 상기 특정 액션이 적용된 패킷을 상기 서비스 기능 모듈로 전달하는 송신부를 더 포함하는 네트워크 장치.
  5. SFC상의 네트워크 장치에 있어서,
    서비스 기능 모듈(SF: service function)로부터 패킷을 수신하는 수신부; 및
    저장된 플로우 정보에 상기 패킷이 매칭되는 경우, 상기 플로우 정보를 참조하여 상기 패킷에 대한 복원 액션을 수행하는 패킷 처리부를 포함하는 네트워크 장치.
  6. 제5 항에 있어서,
    상기 복원 액션은 상기 패킷에 대응하는 접근 허가 정책에 따라 삭제된 일부 정보를 복원하는 동작인 것을 특징으로 하는 네트워크 장치.
  7. 제5 항에 있어서,
    상기 프로세서는,
    상기 패킷 처리부는, 상기 패킷이 상기 플로우 정보에 매칭되지 않으면 상기 패킷을 폐기하는 것을 특징으로 하는 네트워크 장치.
  8. 제5 항에 있어서,
    상기 패킷 처리부는,
    상기 수신된 패킷의 일부 내용이 권한 없이 상기 서비스 기능 모듈에 의해 수정된 경우, 상기 수정된 일부 내용을 상기 서비스 기능 모듈로 전달되기 이전으로 복원하는 것을 특징으로 하는 네트워크 장치.
  9. SFC의 접근 제어 방법에 있어서,
    패킷을 수신하는 단계; 및
    상기 패킷의 다음 홉이 특정 서비스 기능 모듈인 경우, 상기 특정 서비스 기능 모듈에 대응하는 룰에 따라 상기 패킷에 대해 특정 액션을 적용하는 단계를 포함하는 SFC 접근 제어 방법.
  10. SFC의 접근 제어 방법에 있어서,
    패킷을 수신하는 단계; 및
    저장된 플로우 정보에 상기 패킷이 매칭되는 경우, 상기 플로우 정보를 참조하여 상기 패킷에 대한 복원 액션을 수행하는 단계를 포함하는 SFC 접근 제어 방법.
  11. 제9항 또는 제10항의 방법을 수행하기 위한 프로그램 코드를 기록한 컴퓨터로 판독 가능한 기록매체 제품.

KR1020170030060A 2016-12-14 2017-03-09 SFC(service function chaining)에서의 접근 제어 방법 및 그 장치 KR101969209B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020160170335 2016-12-14
KR20160170335 2016-12-14

Publications (2)

Publication Number Publication Date
KR20180068832A true KR20180068832A (ko) 2018-06-22
KR101969209B1 KR101969209B1 (ko) 2019-08-13

Family

ID=62768763

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170030060A KR101969209B1 (ko) 2016-12-14 2017-03-09 SFC(service function chaining)에서의 접근 제어 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR101969209B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120115359A (ko) * 2010-12-01 2012-10-17 닛본 덴끼 가부시끼가이샤 통신 시스템, 제어 디바이스, 통신 방법, 및 프로그램
WO2016011616A1 (zh) * 2014-07-23 2016-01-28 华为技术有限公司 业务报文转发方法及装置
KR20160047983A (ko) * 2014-10-23 2016-05-03 주식회사 케이티 Sfc 수행 방법 및 시스템
KR20160105223A (ko) * 2015-02-27 2016-09-06 에스케이텔레콤 주식회사 서비스 체이닝 제어 장치 및 방법과 이를 이용한 서비스 체이닝 실행 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120115359A (ko) * 2010-12-01 2012-10-17 닛본 덴끼 가부시끼가이샤 통신 시스템, 제어 디바이스, 통신 방법, 및 프로그램
WO2016011616A1 (zh) * 2014-07-23 2016-01-28 华为技术有限公司 业务报文转发方法及装置
KR20160047983A (ko) * 2014-10-23 2016-05-03 주식회사 케이티 Sfc 수행 방법 및 시스템
KR20160105223A (ko) * 2015-02-27 2016-09-06 에스케이텔레콤 주식회사 서비스 체이닝 제어 장치 및 방법과 이를 이용한 서비스 체이닝 실행 방법

Also Published As

Publication number Publication date
KR101969209B1 (ko) 2019-08-13

Similar Documents

Publication Publication Date Title
KR102146568B1 (ko) 네트워크 접속 제어 시스템 및 그 방법
US9602307B2 (en) Tagging virtual overlay packets in a virtual networking system
US20190141022A1 (en) On-premise and off-premise communication
US9397901B2 (en) Methods, systems, and computer readable media for classifying application traffic received at a network traffic emulation device that emulates multiple application servers
US9838359B2 (en) Separation of IoT network thing identification data at a network edge device
US11558353B2 (en) Method, apparatus, and computer readable medium for providing security service for data center
US11120148B2 (en) Dynamically applying application security settings and policies based on workload properties
EP4156642A1 (en) Information centric network tunneling
US11909845B2 (en) Methods and systems for managing applications of a multi-access edge computing environment
CN109154968A (zh) 用于组织内的安全且高效的通信的系统和方法
US20100250731A1 (en) Systems and methods for application identification
KR101522139B1 (ko) DNS 서버 선별 차단 및 Proxy를 이용한 DNS 주소 변경 방법
US11017029B2 (en) Data transfer system, data transfer apparatus, data transfer method, and computer-readable recording medium
KR20160150583A (ko) 전송 스택 명명 기법 및 계정 관리
US11930045B1 (en) Secure network access from sandboxed applications
US20200213280A1 (en) Switch-based data anonymization
EP3462709B1 (en) A network interface device
US10257262B2 (en) Mobile itinerant software agent carrying itinerary and data within
KR101969209B1 (ko) SFC(service function chaining)에서의 접근 제어 방법 및 그 장치
US10740303B2 (en) Composite file system commands
US10659353B2 (en) Dynamic scriptable routing
KR101482886B1 (ko) 파일 태깅을 이용한 정보 유출 방지 방법 및 장치
US10484304B2 (en) Determining actions to be immediately performed on a network packet with an application specific integrated circuit
KR102038193B1 (ko) 소프트웨어 정의 네트워크에서 퍼미션 모델링 방법, 시스템 및 컴퓨터 프로그램
US20240061796A1 (en) Multi-tenant aware data processing units

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant