1 |
1
컴파일된 사용자 설정 정보에 따른 프로그램을 실장하는 서브스트래이트(substrate)상기 프로그램에 따라 동적으로 동작하는 하나 이상의 가상 라우터인 슬리버를 상기 서브스트래이트 상에 실장되도록 처리하는 슬리버 처리부; 및상기 하나 이상의 슬리버를 관리하는 슬리버 관리부를 포함하는 네트워크 장치
|
2 |
2
제1항에 있어서,상기 슬리버 처리부는,상기 슬리버의 슬리버 실행 환경(SEE: Sliver Execution Environment)을 처리하는 환경 정보 처리부;상기 사용자 설정 정보에 따라 정의되는 슬리버 프로그램를 구동하는 프로그램 구동부; 및상기 서브스트래이트로부터 패킷에 대한 수신 및 포워딩을 요청하여 물리적 자원을 할당받는 슬리버 실행 환경 API (Application Programmer Interface); 를 포함하는 네트워크 장치
|
3 |
3
제2항에 있어서,상기 환경 정보 처리부는, 상기 슬리버가 사용 가능한 인터페이스 및 다른 슬리버 간의 링크 설정을 지원하며, 네트워크 프로세서의 코어 상에서 실행되는 상기 슬리버 프로그램이 사용 가능한 메모리 및 CPU에 대한 상기 물리적 자원을 제한하는 것을 특징으로 하는 네트워크 장치
|
4 |
4
제2항에 있어서,상기 슬리버 관리부는,상기 서브스트래이트 상에서 다른 가상 라우터에 어사인(assign) 되는 상기 슬리버 실행 환경을 생성, 삭제 또는 관리하는 것을 특징으로 하는 네트워크 장치
|
5 |
5
제2항에 있어서,상기 슬리버 관리부는,상기 하나 이상의 환경 정보 처리부가 물리적 자원을 공유하도록 상기 슬리버 실행 환경에 대한 자원을 할당 또는 관리하는 것을 특징으로 하는 네트워크 장치
|
6 |
6
제1항에 있어서,상기 슬리버 관리부는,네트워크 인터페이스로부터 패킷을 수신하는 패킷 수신부;상기 슬리버에 의하여 송신 요청된 패킷을 링크 정보에 대응하는 인터페이스로 전송하는 패킷 전송부;상기 수신된 패킷을 상기 슬리버의 인터페이스로 전송하는 패킷 전달부;상기 슬리버의 트래픽에 대한 대역폭을 제한하는 대역폭 제어부;상기 슬리버가 사용 가능한 상기 인터페이스 및 상기 링크를 설정 및 관리하는 환경 설정부; 및상기 프로그램 간의 코어 할당을 관리하도록 제어하는 코어 할당부를 포함하는 네트워크 장치
|
7 |
7
사용자 설정 정보에 따라 가상 네트워크를 설정하는 네트워크 설정부;상기 가상 네트워크에서 상기 사용자 설정 정보에 따라 프로그램을 수행하는 슬리버 프로그램을 작성하고, 상기 가상 네트워크의 토폴로지를 기록하는 프로그램 설정부;상기 사용자 설정 정보에 대한 상기 가상 네트워크에 대한 수용 여부를 네트워크 관리부에 요청하는 네트워크 생성 요청부; 및상기 네트워크 관리부의 상기 가상 네트워크 수용 여부에 따라 슬리버 실행 환경을 생성하여 하나 이상의 가상 라우터인 슬리버를 할당하는 슬리버 관리부를 포함하는 네트워크 장치
|
8 |
8
제7항에 있어서,상기 슬리버 관리부는 상기 네트워크 관리부가 상기 가상 네트워크를 수용하는 경우, 상기 슬리버 프로그램을 실행하는 노드를 선택하고 상기 노드에 대응하는 슬리버를 생성하는 것을 특징으로 하는 네트워크 장치
|
9 |
9
제7항에 있어서,상기 슬리버 관리부는, 상기 사용자 설정 정보에 따라 상기 슬리버를 시작, 정지, 삭제 또는 재설정하는 것을 특징으로 하는 네트워크 장치
|
10 |
10
컴파일된 사용자 설정 정보에 따른 프로그램을 실장하는 서브스트래이트(substrate)를 유지하는 단계;상기 프로그램에 따라 동적으로 동작하는 하나 이상의 가상 라우터인 슬리버를 상기 서브스트래이트 상에 실장하는 단계; 및슬리버 관리부를 이용하여 상기 하나 이상의 슬리버를 관리하는 단계;를 포함하는 네트워크 제어 방법
|
11 |
11
제10항에 있어서,상기 슬리버는,상기 슬리버 관리부에 의하여 생성되는 상기 슬리버의 슬리버 실행 환경(SEE: Sliver Execution Environment)을 처리하고, 상기 사용자 설정 정보에 따라 정의되는 슬리버 프로그램를 구동하며, 상기 서브스트래이트로부터 패킷에 대한 수신 및 포워딩을 요청하여 물리적 자원을 할당받는 것을 특징으로 하는 네트워크 제어 방법
|
12 |
12
제11항에 있어서,상기 슬리버를 실장하는 단계는, 상기 슬리버가 사용 가능한 인터페이스 및 다른 슬리버 간의 링크 설정을 지원하는 단계; 및네트워크 프로세서의 코어 상에서 실행되는 상기 슬리버 프로그램이 사용 가능한 메모리 및 CPU에 대한 상기 물리적 자원을 제한하는 단계를 포함하는 네트워크 제어 방법
|
13 |
13
제12항에 있어서,상기 슬리버를 관리하는 단계는, 상기 서브스트래이트 상에서 다른 가상 라우터에 어사인(assign) 되는 상기 슬리버 실행 환경을 생성, 삭제 또는 관리하는 단계를 더 포함하는 네트워크 제어 방법
|
14 |
14
제12항에 있어서,상기 슬리버를 관리하는 단계는,상기 하나 이상의 환경 정보 처리부가 물리적 자원을 공유하도록 상기 슬리버 실행 환경에 대한 자원을 할당 또는 관리하는 단계를 더 포함하는 네트워크 제어 방법
|
15 |
15
제12항에 있어서,상기 슬리버를 관리하는 단계는,네트워크 인터페이스로부터 패킷을 수신하는 단계;상기 슬리버에 의하여 송신 요청된 패킷을 링크 정보에 대응하는 인터페이스로 전송하는 단계;상기 수신된 패킷을 상기 슬리버의 인터페이스로 전송하는 단계;상기 슬리버의 트래픽에 대한 대역폭을 제한하는 단계;상기 슬리버가 사용 가능한 상기 인터페이스 및 상기 링크를 설정 및 관리하는 단계; 및상기 프로그램 간의 코어 할당을 관리하도록 제어하는 단계를 더 포함하는 네트워크 제어 방법
|
16 |
16
사용자 설정 정보에 따라 가상 네트워크를 설정하는 방법;상기 가상 네트워크에서 상기 사용자 설정 정보에 따라 프로그램을 수행하는 슬리버 프로그램을 작성하는 단계;상기 가상 네트워크의 토폴로지를 기록하는 단계;상기 사용자 설정 정보에 대한 상기 가상 네트워크에 대한 수용 여부를 네트워크 관리부에 요청하는 단계; 및상기 네트워크 관리부의 상기 가상 네트워크 수용 여부에 따라 슬리버 실행 환경을 생성하여 하나 이상의 가상 라우터인 슬리버를 할당하는 단계를 포함하는 네트워크 제어 방법
|
17 |
17
제16항에 있어서,상기 하나 이상의 가상 라우터인 슬리버를 할당하는 단계는,상기 네트워크 관리부가 상기 가상 네트워크를 수용하는 경우, 상기 슬리버 프로그램을 실행하는 노드를 선택하고 상기 노드에 대응하는 슬리버를 생성하는 단계를 포함하는 네트워크 제어 방법
|
18 |
18
제16항에 있어서,상기 사용자 설정 정보에 따라 상기 슬리버를 시작, 정지, 삭제 또는 재설정하는 단계를 더 포함하는 네트워크 제어 방법
|
19 |
19
제10항 내지 제18항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체
|