KR101343595B1 - 라우터에 대한 포워딩 가상화 방법 - Google Patents

라우터에 대한 포워딩 가상화 방법 Download PDF

Info

Publication number
KR101343595B1
KR101343595B1 KR1020080130480A KR20080130480A KR101343595B1 KR 101343595 B1 KR101343595 B1 KR 101343595B1 KR 1020080130480 A KR1020080130480 A KR 1020080130480A KR 20080130480 A KR20080130480 A KR 20080130480A KR 101343595 B1 KR101343595 B1 KR 101343595B1
Authority
KR
South Korea
Prior art keywords
router
forwarding
virtualization
operating system
resource
Prior art date
Application number
KR1020080130480A
Other languages
English (en)
Other versions
KR20100071678A (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 한국전자통신연구원
Priority to KR1020080130480A priority Critical patent/KR101343595B1/ko
Priority to US12/505,646 priority patent/US20100158018A1/en
Publication of KR20100071678A publication Critical patent/KR20100071678A/ko
Application granted granted Critical
Publication of KR101343595B1 publication Critical patent/KR101343595B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/56Routing software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 라우터를 가상화할 때, 하이퍼 바이저의 상위 계층에 탑재되는 복수의 운영체제로 인해 라우터의 속도가 저감되는 현상을 개선하는 라우터에 대한 포워딩 가상화 방법을 개시한다.
라우터, 가상화, 하이퍼 바이저, 포워딩 엔진

Description

라우터에 대한 포워딩 가상화 방법{Method for forwarding path virtualization for router}
본 발명은 라우터에 대한 가상화 방법에 대한 것으로, 특히 복수의 운영체제가 탑재되는 라우터에 대해 반 가상화를 적용하며, 라우터에 마련되는 포워딩 엔진에 대해 정책제어를 수행함으로서 라우터의 처리속도를 증가시키는 라우터에 대한 포워딩 가상화 방법에 대한 것이다.
본 발명은 지식경제부 및 정보통신연구진흥원의 IT 성장동력 기술개발 사업의 일환으로 수행한 연구로부터 도출된 것이다[과제 관리번호 : 2006-S-061-03, 과제명 : IPv6기반의 Qos 서비스 및 단말 이동성 지원 라우터 기술개발]
컴퓨팅 기술에서의 가상화는 물리적인 한 개의 자원을 논리적으로 분할하여 사용하거나, 물리적으로 다른 여러 개의 자원을 논리적으로 통합하는 기술을 말하며, 통상, 가상화는 가상화란 실제 리소스와 사용자에게 보여지는 리소스를 분리하는 것을 의미한다.
가상화 기술은 1960년 후반 가상메모리 분야에서 시작되어 메인프레임부터 일반적으로 사용되어 왔으나 도입 비용이 비싸고 한정된 사용환경으로 인하여 사용이 한정적이었다.
현재 가상화 기술은 동적 자원의 분할을 지원하는 하이퍼 바이저에 이르기까지 지난 수십년간 발전되어 왔다. 가상화 기술은 적용되는 분야에 따라 하드웨어 가상화, 운영체제 가상화, 애플리케이션 가상화 등으로 분류할 수 있고, 가상화가 적용되는 기술적 기준에 따라 스토리지 가상화, 서버 가상화, 네트워크 및 서비스 가상화로 분류되기도 한다.
네트워크 가상화는 애플리케이션이나 서버를 네트워크 또는 다른 가상 자원들에게 물리적으로 연결하는데 사용되는 리소스들에 대한 가상화를 의미한다. 네트워크를 가상화함으로써 사용자는 IT 인프라 스트럭쳐에 좀 더 효율적이고, 비용 효과적이며, 안정적인 통신체계를 만들기 위해 네트워크 요소를 풀링하고 공유할 수 있다. 특히, 가상화된 네트워크는 현재 인터넷의 문제점들을 보완한 새로운 아키텍쳐, 또는 새로운 서비스를 실험하는데 적합한 환경을 제공할 수 있다.
네트워크 가상화를 통해 대역폭을 관리할 경우, 대역폭의 관리는 통상 라우터에서 처리되며, 가상화의 대상은 라우터에 해당한다. 현재, 라우터에서 가용한 리소스들 중, IP 주소, LAN, 네트워크 어댑터 등에 대한 가상화는 일부 진척되어 보안 분야에서 적용되고 있다.
한편, 종래의 네트워크 가상화 중 라우터에 대한 가상화는 라우터의 운영체제를 가상화하기 위한 하이퍼 바이저가 존재하며, 하이퍼 바이저가 라우터의 리소스, 특히 하드웨어 리소스를 에뮬레이트하는 전 가상화를 이용한다.
만일, 라우터에 복수의 운영체제가 탑재될 경우, 종래의 전 가상화 방식은 하이퍼 바이저의 상위 계층에 각 운영체제 별, 포워딩 플레인(forwarding plane)과 라우팅 플레인(routing plane)이 배치되고, 각 운영체제는 하이퍼 바이저가 에뮬레이트하는 리소스에 접근해야 한다.
하이퍼 바이저를 통해 리소스에 접근하는 복수의 운영체제 각각은 라우터의 전체 리소스를 공유 해야하고, 에뮬레이션 해야하며, 각각이 구동할 때는 이웃하는 운영체제와는 독립적으로 구동해야 한다. 또한, 각각의 운영체제에 대한 포워딩 플레인과 라우팅 플레인이 하이퍼 바이저의 상위 계층에 위치하므로 라우터의 성능이 크게 저하되는 단점이 있다.
본 발명의 목적은 라우터를 가상화할 때, 하이퍼 바이저의 상위 계층에 탑재되는 복수의 운영체제로 인해 라우터의 속도가 저감되는 현상을 개선하는 라우터에 대한 포워딩 가상화 방법을 제공함에 있다.
상기한 목적은 본 발명에 따라, 라우터의 포워딩 엔진에 대한 리소스 사용 스케줄을 복수의 운영체제 각각에 설정하는 단계, 및 하이퍼 바이저에 의해 반 가상화된 상기 라우터의 리소스를 상기 운영체제 각각에 설정된 상기 스케줄에 따라 제공하는 단계에 의해 달성된다.
본 발명은, 라우터에 대해 반 가상화를 수행하여 전 가상화를 이용하는 기존의 가상화 방식에 비해 라우터가 더 높은 처리 속도를 갖도록 한다.
본 발명은 하나의 라우터에 복수의 운영체제가 탑재될 때, 라우터의 리소스를 스케줄링하여 각 운영체제에 할당함으로써 라우터 가상화에 의한 라우터의 처리속도 저하를 최소화한다.
본 발명은 하나의 라우터에 복수의 운영체제가 탑재될 때의 가상화 방식을 기술한다.
본 발명에서, 전 가상화 방법은 라우터를 구성하는 리소스(하드웨어)를 소프트웨어로 에뮬리이트하는 가상화 방식을 의미하며, 전 가상화 방법에 대비되는 반 가상화(para-virtualization) 방법은 하이퍼 바이저(hypervisor)가 제공하는 어플리케이션(API)을 통해 운영체제가 라우터를 구성하는 리소스(하드웨어)에 접근하는 가상화 방식을 의미한다. 반 가상화 방법은 하이퍼 바이저가 제공하는 API(Application Programming Interface)를 통해 여러 운영체제가 하드웨어 자원에 접근하도록 함으로써 소프트웨어로 에뮬레이트한 하드웨어에 억세스하는 전 가상화방식에 비해 처리 속도가 빠르다. 본 발명에서는, 하드웨어 에뮬레이션에 의해 처리 속도가 늦는 전 가상화 방법 대신 반 가상화 방법을 적용한다.
본 발명에 따른 가상화 방법은 라우터에 탑재된 복수의 각 운영체제가 패킷을 송수신할 때, 각 운영체제에 대해 리소스를 예약하여 사용토록 한다. 즉, 정책기반(policy based) 가상화 방법이 적용된다.
본 발명에서 포워딩 엔진은 라우터에서 하드웨어의 형태를 갖는것이 바람직하다. 이는 본 발명에 따른 가상화 방법에 의해 라우터가 최대의 처리 속도를 갖도록 하는데 그 이유가 있다.
이하, 도면을 참조하여 본 발명을 상세히 설명하도록 한다.
도 1은 본 발명에 따른 라우터에 대한 포워딩 가상화 방법이 적용되는 라우터에 대한 개략적인 개념도를 나타낸다.
제어 모듈(100)은 라우터를 전반적으로 제어하며, 라우팅 프로토콜을 통해 포워딩 엔진(100a-1 ~ 100a-n, 100c-1 100c-n)의 패킷 포워딩을 위한 라우팅 정보 를 수집한다. 통상 제어 모듈(100)은 범용 프로세서, 또는 ASIC(Application-Specific Integrated Circuit)으로 구현되며, 도면에는 도시되지 않았으나, 휘발성 메모리(예컨대 DRAM)나 비 휘발성 메모리와 접속되어 운영체제, 및 응용 프로그램을 구동한다.
본 발명에서, 제어 모듈(100)은 복수의 운영체제, 및 각 운영체제가 구동 하고자하는 어플리케이션을 구동하며, 하이퍼 바이저(hypervisor)를 구동함으로써 복수의 운영체제가 라우터을 구성하는 하드웨어 리소스(포워딩 엔진, 라인 인터페이스부, 및 제어 모듈), 라우터의 성능에 연관되는 리소스(패킷 전송 레이트, 플로우 수, 및 IP 주소 범위)를 이용할 수 있도록 한다. 이하, 하드웨어 리소스와 성능관련 리소스는 통칭하여 "리소스"라 한다.
도면에서, 라인 인터페이스부(100b-1 ~ 100b-n, 100d-1 ~ 100d-n)는 포워딩 엔진(100a-1 ~ 100c-n)에 포함되어 구성되는 일 예를 도시하고 있으나, 라인 인터페이스부(100b-1 ~ 100b-n, 100d-1 ~ 100d-n)가 포워딩 엔진(100a-1 ~ 100a-n, 100c-1 100c-n)과 별도로 분리되는 하드웨어의 형태를 가져도 무방하다.
여기서, 포워딩 엔진(100a-1 ~ 100a-n, 100c-1 100c-n)은 제어 모듈(100)에 의해 생성되는 라우팅 정보에 따라 패킷의 목적지를 결정한다. 또한, 포워딩 엔진(100a-1 ~ 100a-n, 100c-1 100c-n)은 전송, 또는 수신 대상 패킷이 유효한 패킷인지를 검사할 수 있다.
도 2는 본 발명에 따른 라우팅 시스템에서 운영체제들이 구동하는 방법을 개념적으로 나타낸다.
도 2를 참조하면, 포워딩 엔진(102)은 하드웨어로 구현되며, 앞서 언급한바와 같이 내부에 라인 인터페이스 장치를 내장하거나, 라인 인터페이스 장치가 포워딩 엔진(102)과 연동되는 하드웨어로 구현될 수 있다. 또한, 도 2에서, 라우팅 프로토콜(108), 관리 모듈(107), 및 가상화 추상계층(106)은 운영체제(OS 1)(105)에 대한 것을 설명하고 있으나, 타 운영체제(OS 2, OS 3)에도 동일하게 적용된다. 다만, 운영체제(OS 1)에 대한 설명과 운영체제 OS 2, OS 3에 대한 설명이 중복되므로, 이하, 운영체제는 OS 1에 대한 것만 언급하고 참조부호를 부여하도록 한다.
도면에서, 운영체제(105)는 리눅스 운영체제, 유닉스 운영체제가 적합하나, 마이크로 소프트社의 윈도우즈 계열 운영체제가 적용될 수 있다. 운영체제(105)는 라우터에 마련되는 제어 모듈(100)에서 구동하며, 라우팅 프로토콜 모듈(108), 관리 모듈(107), 및 포워딩 가상화 추상계층(FVA : Forwarding Virtualization Abstract)(106)을 구동할 수 있다. 이때, 제어 모듈(100)은 휘발성 메모리, 또는 비 휘발성 메모리를 이용하여 운영체제(105)가 구동하고자 하는 라우팅 프로토콜 모듈(108), 관리 모듈(107), 및 포워딩 가상화 추상계층(106)을 로드하여 실행할 수 있다.
본 발명에서, 도 1에 도시된 하드웨어들은 라우팅 프로토콜(108), 및 관리 모듈(107)이 제어한다. 라우팅 프로토콜(108)은 라우터의 핵심기능으로 포워딩 정보를 생성한다. 관리 모듈(107)은 라우터에 대한 설정과 관리에 관한 기능을 수행한다. 라우터를 구성하는 하드웨어에 대한 가상화의 주 대상이 되는 포워딩 엔진(102)은 라우터에 마련되는 포트(미도시)로부터 유입되는 패킷을 목적지 주소 를 참조하여 해당 포트로 내 보낸다.
하이퍼 바이저(103)는 제어 모듈(100)에서 복수의 운영체제(리눅스, 유닉스, 및 윈도우즈 계열 운영체제 등)을 구동하기 위한 가상 플랫폼에 해당한다.
하이퍼 바이저(103)에 마련되는 포워딩 가상화 계층(forwarding virtualization layer)(104)은 포워딩 가상화 추상계층(FVA)(106)과 포워딩 엔진(102)과의 연결 통로로서 기능하며, 운영체제(105)가 포워딩 가상화 추상계층(106)을 통해 포워딩 엔진(102)에 억세스하여 포워딩 엔진(102)의 리소스를 사용할 수 있도록 한다.
여기서, 운영체제(105)는 OS 1, OS 2, 및 OS 3과 같이 복수개가 존재하며, 각각의 운영체제(OS 1, OS 2, 및 OS 3)는 하이퍼 바이저(103)와 동시에 연결되는 것이 아니라, 필요할 경우, 하이퍼 바이저(103)와 선택적으로 결합된다.
따라서, 본 발명에 따른 하이퍼 바이저(103)는 하이퍼 바이저(103)의 상위 계층에 위치하는 모든 운영체제(OS 1, OS 2, 및 OS 3)를 위해 포워딩 엔진(102)을 전 가상화하지 않으며, 운영체제들(OS 1, OS 2, 및 OS 3) 중 어느 하나가 포워딩 엔진(102)을 필요로 할 때, 하이퍼 바이저(103)가 해당 운영체제를 포워딩 엔진(102)에 연결하는 방식을 취한다.
도 3은 도 2에서 설명한 포워딩 엔진, 포워딩 가상화 계층, 라우팅 컴토넌트사이의 작동 관계에 대한 개념도를 나타낸다.
도 3을 참조하면 포워딩 가상화 추상계층(205)은 라우팅 프로토콜(204)과 관리 컴포넌트(203)가 포워딩 가상화 계층(202)을 통해 포워딩 엔진(201)의 리소스에 억세스 할 수 있도록 한다.
도 4는 관리 모듈(107)에서 포워딩 엔진(102)의 리소스를 설정하는 방법에 대한 흐름도를 나타낸다.
먼저, 관리 모듈(107)은 포워딩 엔진(102)에서 가용한 리소스들 중 어떤 리소스를 어느정도 사용할지에 대한 정책을 결정한다(S301). 예컨대, 관리 모듈(107)은 포워딩 엔진(102)의 리소스들 중 IP 주소정보 리스트, 플로우(flow) 수, 패킷 전송 레이트 등을 이용할 수 있다.
관리 모듈(107)은 포워딩 엔진(107)의 리소스들 중 IP 주소정보 리스트 범위, 플로우(flow) 수, 패킷 전송 레이트와 같은 리소스의 사용 내역을 참조하여 통계정보를 산출하고, 통계정보에 근거하여 리소스의 사용 스케줄을 작성하거나, 운영체제(105)에서 구동하는 어플리케이션의 리소스 사용 통계를 기반으로 사용 스케줄을 작성할 수도 있다.
반대로 관리 모듈(107)가 운영체제의 수에 따라 시간을 분할하여 리소스에 대한 사용 정책을 결정할 수도 있다. 이 경우, 포워딩 엔진(102)의 리소스는 시간 단위로 분할되어 각 운영체제에 마련되는 관리 모듈(107)에 할당되며, 각 운영체제(OS 1, OS 2, OS 3)의 관리 컴포넌트(예컨대 참조부호 107)는 주어진 시간 내에서 필요한 스케줄을 작성할 수 있다.
따라서, 포워딩 엔진(102)의 리소스는 어떤 운영체제에서 사용되는지를 식별하기 위한 식별자가 부여될 필요가 있다. 예컨대, 포워딩 엔진(102)의 리소스들 IP 주소정보 리스트 범위, 플로우(flow) 수, 패킷 전송 레이트에 대한 정보에는 어 느 운영체제에서 사용하는가에 따라 식별자를 부여하여야 하며, 식별자는, "IP 주소정보 리스트, 플로우(flow) 수, 패킷 전송 레이트, 및 OS 2"의 형태로 부여될 수도 있다.
다음으로, 포워딩 엔진(102)에 대한 식별자를 부여함으로써 제어 모듈(100)은 스위칭 모듈(110)을 통해 송수신 할 패킷을 운영체제, 또는 운영체제에 소속되는 관리 컴포넌트에 따라 분류할 수 있다.
다음으로, 제어 모듈(100)은 각 운영체제(또는 운영체제의 관리 컴포넌트)에 따른 분류(Classification)에 따라 패킷 대기열을 설정하고(S303), 패킷 대기열에 나열된 패킷들에 대한 스케줄링을 설정한다. 이때, 포워딩 엔진()은 스케줄링된 패킷이 실제로 포워딩 엔진()에서 제공할 수 있는 리소스를 만족하는지를 판단하며, 각 운영체제의 관리 컴포넌트에서 설정한 정책에 부합하는지를 판단한다(S302).
다음으로, 포워딩 엔진(102)의 리소스는 설정된 시간 간격으로 모니터링 된다. 제어 모듈(100)은 설정된 정보를 이용하여, 플로우를 예약한다(S303). 이 때, 사용되는 값은 큐 크기, 분류자가 될 수 있다. 플로우에 대한 분류는 IP주소, 및 식별자 중 하나가 되며, 큐(QUE)의 크기는 패킷전송 레이트(Rate)에 의해 결정한다. 위와 같은 값으로 플로우를 설정 후(S304), 정상적으로 완료되면 제어 모듈(100)에 의한 정책 설정이 종료된다.
도 5는 포워딩엔진에서 사용될 수 있는 포워딩 정보 테이블의 일 예를 나타낸다.
도면에서, 도메인ID(401)는 특정 도메인에서 유입되는 패킷을 식별하기 위해 사용된다. 인그레스ID(402)는 특정 도메인의 유입되는 포트를 식별하기 위해 사용된다. 목적지ID(403)은 포워딩되는 패킷의 목적지와 비교를 하기 위해 사용된다.
플로우 ID(404)는 도메인에 할당된 특정 플로우를 인식하는 식별자에 해당한다.
이그레스ID(405)는 해당되는 패킷이 유출되는 포트를 식별하기 위해 사용된다. 플래그(406)에는 해당 플로우와 패킷 처리시 특별한 관리가 필요할 경우 설정되는 값이다. 예를 들면, 멀티캐스트용 패킷의 처리, 애니캐스트 패킷의 처리의 경우이다. 포워딩 가상화 계층은 도 3의 포워딩 정보 테이블을 액세스 할 수 있는 API를 처리한다. 포워딩 가상화 계층을 통해 각 운영체제의 라우팅 프로토콜, 및 관리 컴포넌트가 포워딩 정보 테이블을 접근하게 된다. 포워딩 정보 테이블은 IETF에서 권고하는 FORCES의 API와 포워딩 정보 테이블을 호환된다. 따라서, 포워딩 가상화 계층은 FORCES의 API를 수용할 수 있다.
도 6은 포워딩 가상화 계층에서 사용 가능한 리소스의 정도를 확인하기 위한 리소스 통계정보를 작성하는 방법에 대한 흐름도를 나타낸다.
먼저, 제어 모듈(100)은 통계 정보 수집의 정책을 구성하고(S501), 라우터에서 가상화가 가능한 리소스를 정의하여야 하며, 리소스의 설정은 라우터에 대한 정책을 설정할 때 결정된다. 예컨대, 플로우 기반 라우터일 경우, 플로우가 핵심 가상화 자원이 될 수 있다.
다음으로, 제어 모듈(100)은 결정된 정책에 오류가 없는지를 확인한 다(S502). 오류가 없을 경우, 해당 리소스에 결정된 정책을 설정한다(S503).
다음으로, 제어 모듈(100)은, 통계 정보에 대한 수집 주기를 설정한다(S504). 이때, 수집 주기에 대한 설정은 라우터의 제어 모듈(100)과 포워딩 엔진(102)의 처리 능력을 고려하여 설정하는 것이 바람직하다.
마지막으로, 수집 주기가 설정되면 제어 모듈(100)은 포워딩 엔진(102)을 통해 송수신되는 패킷에 대해 통계정보를 작성한다(S505).
상술한 바와 같이 본 발명은, 라우터에 대한 가상화를 수행할 때, 가상화를 위해 필요한 라우터의 리소스를 사람의 추가적인 개입 없이 각 운영체제에 할당하며, 패킷을 고속으로 처리할 수 있도록 한다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
도 1은 본 발명에 따른 라우터에 대한 포워딩 가상화 방법이 적용되는 라우
터에 대한 개략적인 개념도,
도 2는 본 발명에 따른 라우팅 시스템에서 운영체제들이 구동하는 방법을 개
념적으로 나타내는 도면,
도 3은 도 2에서 설명한 포워딩 엔진, 포워딩 가상화 계층, 라우팅 컴토넌트
사이의 작동 관계에 대한 개념도,
도 4는 관리 컴포넌트에서 포워딩 엔진의 리소스를 설정하는 방법에 대한 흐
름도,
도 5는 포워딩엔진에서 사용될 수 있는 포워딩 정보 테이블의 일 예를 나타
내는 도면, 그리고
도 6은 포워딩 가상화 계층에서 사용 가능한 리소스의 정도를 확인하기 위한
리소스 통계정보를 작성하는 방법에 대한 흐름도를 나타낸다.

Claims (7)

  1. 라우터의 포워딩 엔진에 대한 리소스 사용 스케줄을 복수의 운영체제 각각에 설정하는 단계; 및
    하이퍼 바이저에 의해 반 가상화(para-virtualization)된 상기 라우터의 리소스를 상기 운영체제 각각에 설정된 상기 스케줄에 따라 제공하는 단계;를 포함하는 것을 특징으로 하는 라우터에 대한 포워딩 가상화 방법.
  2. 제1항에 있어서,
    상기 운영체제 각각에 설정하는 단계는,
    상기 리소스를 상기 각 운영체제에 예약하는 단계;
    상기 리소스에 대한 포워딩 테이블을 작성하는 단계;
    상기 리소스를 상기 각 운영체제에 따른 패킷으로 분류하는 단계;
    상기 패킷에 대한 패킷 대기열을 설정하는 단계; 및
    상기 각 패킷에 대한 패킷 스케줄링을 설정하는 단계;를 포함하는 것을 특징
    으로 하는 라우터에 대한 포워딩 가상화 방법.
  3. 제1항에 있어서,
    상기 리소스는,
    상기 라우터가 상기 각 운영체제에 할당 가능한 IP 주소정보 범위, 플로 우(flow) 수, 및 패킷 전송 레이트 중 어느 하나인 것을 특징으로 하는 라우터에 대한 포워딩 가상화 방법.
  4. 제1항에 있어서,
    상기 각 운영체제에서 이전에 소모한 리소스들의 통계정보를 산출하는 단계; 및
    상기 통계정보를 토대로 상기 각 운영체제에 대한 리소스를 분배하는 단계;를 더 포함하는 것을 특징으로 하는 라우터에 대한 포워딩 가상화 방법.
  5. 제1항에 있어서,
    상기 복수의 운영체제 각각에 설정하는 단계는,
    상기 복수의 운영체제 각각에 대해 상기 포워딩 엔진에 대한 사용 시간을 할당하고, 상기 사용 시간 내에서 해당하는 운영체제가 상기 리소스를 이용하는 단계인 것을 특징으로 하는 라우터에 대한 포워딩 가상화 방법.
  6. 제1항에 있어서,
    상기 각 운영체제는,
    상기 포워딩 엔진의 리소스를 예약 후, 이용하는 것을 특징으로 하는 라우터에 대한 포워딩 가상화 방법.
  7. 제1항에 있어서,
    상기 포워딩 엔진은,
    하드웨어로 구현되는 것을 특징으로 하는 라우터에 대한 포워딩 가상화 방법.
KR1020080130480A 2008-12-19 2008-12-19 라우터에 대한 포워딩 가상화 방법 KR101343595B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020080130480A KR101343595B1 (ko) 2008-12-19 2008-12-19 라우터에 대한 포워딩 가상화 방법
US12/505,646 US20100158018A1 (en) 2008-12-19 2009-07-20 Method for forwarding path virtualization for router

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080130480A KR101343595B1 (ko) 2008-12-19 2008-12-19 라우터에 대한 포워딩 가상화 방법

Publications (2)

Publication Number Publication Date
KR20100071678A KR20100071678A (ko) 2010-06-29
KR101343595B1 true KR101343595B1 (ko) 2013-12-20

Family

ID=42266006

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080130480A KR101343595B1 (ko) 2008-12-19 2008-12-19 라우터에 대한 포워딩 가상화 방법

Country Status (2)

Country Link
US (1) US20100158018A1 (ko)
KR (1) KR101343595B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9479425B2 (en) * 2013-05-10 2016-10-25 Arista Networks, Inc. System and method for broadcasting data to multiple hardware forwarding engines
US8922590B1 (en) 2013-10-01 2014-12-30 Myth Innovations, Inc. Augmented reality interface and method of use
CN113315765B (zh) * 2021-05-26 2023-01-03 北京威努特技术有限公司 一种网络安全处理系统及其工作方法
KR20230152404A (ko) 2022-04-27 2023-11-03 주식회사 매스코리아 라우터 기반 네트워크 관리 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006502662A (ja) 2002-10-04 2006-01-19 スターレント ネットワークス コーポレイション Ipネットワーク接続のための資源管理
US7461154B2 (en) 2004-11-18 2008-12-02 Cisco Technology, Inc. Communication arrangement between virtual routers of a physical router

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200144B2 (en) * 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
US7912082B2 (en) * 2008-06-09 2011-03-22 Oracle America, Inc. Shared virtual network interface
US8321878B2 (en) * 2008-10-09 2012-11-27 Microsoft Corporation Virtualized storage assignment method
US7962647B2 (en) * 2008-11-24 2011-06-14 Vmware, Inc. Application delivery control module for virtual network switch

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006502662A (ja) 2002-10-04 2006-01-19 スターレント ネットワークス コーポレイション Ipネットワーク接続のための資源管理
US7461154B2 (en) 2004-11-18 2008-12-02 Cisco Technology, Inc. Communication arrangement between virtual routers of a physical router

Also Published As

Publication number Publication date
US20100158018A1 (en) 2010-06-24
KR20100071678A (ko) 2010-06-29

Similar Documents

Publication Publication Date Title
US11625154B2 (en) Stage upgrade of image versions on devices in a cluster
US9722948B2 (en) Providing quality of service for containers in a virtualized computing environment
US20210149835A1 (en) System and method for supporting rdma bandwidth restrictions in a private fabric in a high performance computing environment
EP2304565B1 (en) Method and system for power management in a virtual machine environment withouth disrupting network connectivity
US7941539B2 (en) Method and system for creating a virtual router in a blade chassis to maintain connectivity
US9692706B2 (en) Virtual enhanced transmission selection (VETS) for lossless ethernet
US8370530B2 (en) Method and system for controlling network traffic in a blade chassis
US9641450B1 (en) Resource placement templates for virtual networks
EP3432526B1 (en) Multiple active l3 gateways for logical networks
US7962587B2 (en) Method and system for enforcing resource constraints for virtual machines across migration
EP2909780B1 (en) Providing a virtual security appliance architecture to a virtual cloud infrastructure
Yu et al. Network function virtualization in the multi-tenant cloud
EP2330781B1 (en) Methods and apparatus for configuring a virtual network switch
EP2907276B1 (en) System and method for efficient use of flow table space in a network environment
US20180121250A1 (en) Monitoring and optimizing interhost network traffic
US8095661B2 (en) Method and system for scaling applications on a blade chassis
US20090150527A1 (en) Method and system for reconfiguring a virtual network path
WO2014000292A1 (zh) 跨数据中心的虚拟机迁移方法、服务控制网关及系统
CN113660329A (zh) 负载均衡
KR101343595B1 (ko) 라우터에 대한 포워딩 가상화 방법
US11252070B2 (en) Adaptive polling in software-defined networking (SDN) environments
Tripathi et al. Crossbow Virtual Wire: Network in a Box.
Isaia Improving the performance of software-defined networks using dynamic flow installation and management techniques
Bozakov Architectures for virtualization and performance evaluation in software defined networks

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
FPAY Annual fee payment

Payment date: 20161121

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181025

Year of fee payment: 6