KR101237862B1 - 소프트라우터 프로토콜 해체 - Google Patents

소프트라우터 프로토콜 해체 Download PDF

Info

Publication number
KR101237862B1
KR101237862B1 KR1020050102888A KR20050102888A KR101237862B1 KR 101237862 B1 KR101237862 B1 KR 101237862B1 KR 1020050102888 A KR1020050102888 A KR 1020050102888A KR 20050102888 A KR20050102888 A KR 20050102888A KR 101237862 B1 KR101237862 B1 KR 101237862B1
Authority
KR
South Korea
Prior art keywords
fes
network
ces
protocol
control
Prior art date
Application number
KR1020050102888A
Other languages
English (en)
Other versions
KR20060092977A (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 KR20060092977A publication Critical patent/KR20060092977A/ko
Application granted granted Critical
Publication of KR101237862B1 publication Critical patent/KR101237862B1/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/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • 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/52Multiprotocol 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

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

Abstract

소프트라우터 구조는 라우터의 제어 실체들을 전송 성분들과 분리함으로써 라우터들을 해체하고, 이들 간에 동적 바인딩을 할 수 있게 한다. 소프트라우터 구조에서, 제어 차원의 기능들은 복수의 홉들만큼 떨어져 있는 전송 요소들을 제어하는 소수의 스마트 서버들에 함께 구현된다. 동적 바인딩 프로토콜은 네트워크 제어 차원 페일오버를 수행한다. 네트워크 안정성은 OSPF 및 BGP와 같은 라우팅 프로토콜들을 함께 원격으로 호스트되게 함으로써 향상된다. 이에 따라 수렴이 빨라지게 되고, 처리되는 프로토콜 메시지들이 줄어들게 되고 실패에 따른 루트 변경들이 적어지게 된다. 소프트라우터 구조는 네트워크 제어에 대한 더 큰 지원을 제공하게 상당 수의 전송 요소들(406)을 관리하는 소수의 스마트 제어 실체들(402, 404)을 포함한다. 소프트라우터 구조에서, 라우팅 프로토콜들은 제어 요소에서 원격으로 동작하고, 전송 테이블 등을 전송 요소들에 다운로드함으로써 하나 이상의 전송 요소들을 제어한다. 영역내 라우팅 및 영역간 라우팅이 또한 포함된다.
전송 테이블, 라우팅 프로토콜, 소프트라우터 구조, 네트워크 제어, 프로토타입 테스트베드

Description

소프트라우터 프로토콜 해체{Softrouter protocol disaggregation}
도 1은 통상의 라우터를 도시한 블록도.
도 2는 소프트라우터 구조의 개요를 도시한 블록도.
도 3은 통상의 라우터 구조를 도시한 블록도.
도 4는 소프트라우터 구조의 실시예를 도시한 블록도.
도 5는 네트워크를 요소들을 예시한 소프트라우터의 실시예를 도시한 블록도.
도 6은 20 노드와 44 링크를 가진 전형적인 Tier 1 POP-레벨 인터넷 서비스 제공자(ISP)에서 사용되는 재귀적 양분할을 도시한 블록도.
도 7은 프로토타입 테스트베드의 블록도.
도 8은 각각의 라우터가, 자신의 링크 상태 데이터베이스(LSDB)를 유지하는 개방향 최단 경로 제 1(OSPF) 인스탄스를 작동시키는 종래 기술의 네트워크를 도시한 블록도.
도 9는 복수의 전송 요소들(FE)를 위해 각 제어 요소(CE)가 OSPF 인스탄스를 작동시키는 소프트라우터 구조의 실시예를 도시한 블록도.
도 10은 링 토폴로지에서 노드 수에 대한 실험에 따른 평균 수렴시간을 도시 한 차트.
도 11은 서로 다른 20노드 토폴로지들에 대한 실험에 따른 평균 수렴시간을 도시한 차트.
도 12는 100 노드 링 토폴로지에 있어 PF 지연시간값에 대한 실험에 따른 평균 수렴시간을 도시한 차트.
도 13은 링 토폴로지에서 노드 수에 대한 실험에 따른 평균 수렴시간을 도시한 차트.
도 14는 노드 수에 대한 실험에 따른 실패 복구시간을 도시한 차트.
도 15는 50ms의 최단 경로 제 1(SPF) 지연시간에서 노드 수에 대한 실험에 의한 실패 복구시간을 도시한 차트.
도 16은 루트 리플렉터를 구비한 종래 기술의 네트워크를 도시한 블록도.
도 17은 소프트라우터 구조의 실시예를 도시한 블록도.
도 18은 소프트라우터 구조의 실시예에 따른 POP에서 통합 라우팅을 도시한 블록도.
도 19는 POP에서 소프트라우터 네트워크의 실시예를 도시한 블록도.
* 도면의 주요 부분에 대한 부호의 설명 *
100: 종래 라우터 102: 소프트웨어
104: 하드웨어 106: 전용 인터페이스
200: 소프트라우터 202: 제어 요소 및 특징 서버
상호 참조
본 출원은 2004년 11월 1일 출원된, 대리인 명부 번호 라크쉬맨(Lakshman) 35-2-23-62-31의 "소프트라우터: 라우터 해체(SoftRouter: Router Disaggregation)"라는 제목의, 임시 출원 번호 제 60/623,885 호의 이익을 주장한다. 게다가, 본 출원은 코펜딩 출원(copending applications), 대리인 명부 번호 라크쉬맨 35-2-23-62-31 (LCNT/126770)의 "소프트라우터(SoftRouter)", 대리인 명부 번호 안사리(Ansari) 3-42-4-25-35 (LCNT/127306)의 "소프트라우터 프로토콜 페일로우버들(SoftRouter Protocol Failovers)", 대리인 명부 번호 라크쉬맨 43-64-36(LCNT/127307)의 "소프트라우터 분리 제어 네트워크(SoftRouter Separate Control Network)", 대리인 명부 번호 라크쉬맨 44-65-37(LCNT/127308)의 "소프트라우터 특징 서버(SoftRouter Feature Server)", 대리인 명부 번호 안사리 4-3-45-5-26-38(LCNT/127309)의 "소프트라우터 다이내믹 바인딩 프로토콜(SoftRouter Dynamic Binding Protocol)"에 관한 것이고, 이들은 본 출원과 같은 날짜로 출원되었다. 상기 임시 및 관련 출원들은 본 명세서에 참조적으로 전부 통합되었다.
발명의 분야
본 발명은 일반적으로 네트워킹 분야에 관한 것으로, 특히 해체(deconstructed) 라우터 네트워크에서 라우팅 프로토콜들에 관한 것이다.
발명의 배경
인터넷의 대단한 성공으로 새로운 특징 및 서비스들이 계속적으로 개발 및 전개되었으나 이들은 인터넷의 기술적 토대에 스트레스를 가하였다. 이것은 IP 네트워크에서 현재 기능들의 분산을 재구성하는 것이 네트워크 안정성, 네트워크 동작들의 단순화, 및 새로운 네트워크 프로토콜들 및 서비스들의 도입에 있어 융통성에 현저한 이점을 줄 것이라는 생각을 믿었다.
종래의 라우터 구조들은 복잡해지고 있다. 간단한 코어 네트워크를 목표로 하는 엔드-투-엔드(end-to-end) 구조 설계의 원리에도 불구하고, 종래의 라우터 구조들은 현재에는 점점 더 복잡해지고 있다. RFC(requests for comments)에서 새로운 특징들이 정해지고 있음에 따라서, 점점 더 제어 차원의 복잡성이 라우터들에 추가되고 있다. 이들 특징은 라우팅(예를 들면, BGP 기반의 MPLS-VPN), 트래픽 엔지니어링(예를 들면, OSPF-TE), 보안 등을 포함한다. 사실, IP 라우터의 코드 복잡성은 전화 교환의 복잡성에 맞먹는다. 반대로, 전송로 구현은 대규모 하드웨어 집적(예를 들면, ASCI) 및 통상의 칩들의 예비 활용성에 의해 점진적으로 용이해지고 있다.
종래의 IP 네트워크들은 비교적 자율적으로 동작하는 라우터들을 사용하여 구성된다. 잠재적으로 제어불가한 복잡성이 네트워크 전체에 걸쳐 많은 지점들에 존재하여 있다. 이것은 많은 바람직하지 못한 결과들을 갖는다. 먼저, 제어할 복수의 지점들은 조작상의 복잡성(예를 들면, 잘못된 구성)을 현저하게 증가시킨다. 두 번째로, 어떤 상황에서, 이들 자율적 라우터들의 조정되지 않은 동작들은 기껏 해야 차선의 수행(예를 들면 열악한 복구 시간) 및 최악의 경우 네트워크 불안정성으로 이어질 수 있다. 마지막으로, 새로운 부가기능들의 도입은 상당수의 라우터들을 업그레이드해야 하며, 이는 복잡하고 오류가 나기 쉽다.
라우팅 정책 시행 및 트래픽 엔지니어링과 같은 많은 향상된 네트워크 관리 작업들은 네트워크 사용성 견지에서 현저히 이점이 있을 것이다. 예를 들면, 몇몇의 일반적인 BGP에 기인한 네트워크 안정성 및 동작의 문제들은 BGP를 개개의 라우터들로부터 AS(autonomous system)의 범위로 단일의 실체에 옮김으로써 해결될 것이다. 유사하게, 대부분의 관리기능들은 네트워크 뷰를 필요로 하는데, 이것이 없다면 네트워크는 동요(oscillation) 및 열악한 안정성을 나타낼 수 있다. 그러나, 네트워크 제어는 최근의 자율적 및 복합 라우터들의 네트워크에서는 달성하기가 어려우며 성가시다.
종래의 라우터 구조들은 제어 및 전송이 일체화되어 있다. 제어 차원 기능들을 구현하는 제어 프로세서들은 전송 기능들을 구현함과 아울러 대부분 동일한 라우터 백플레인을 공유하는 라인 카드들과 함께 공존하여 있다. 제어 프로세서들은 이와 공존하여 있는 라인 카드들에만 제어 기능들을 제공하고, 그 반대도 그러하기 때문에, 공존하여 있는 제어기(들)가 고장났을 땐 라인 카드들이 관리될 수 없다는 시나리오가 된다.
종래의 라우터 구조들에서, 과제는 현 라우터들에 제어기능과 전송기능이 상당히 얽혀있다는 것이다. 라우터들의 기능을 소수의 규범적 패킷 전송 기능들만을 지원하게 함으로써 대부분의 네트워크 실체들을 가능한 한 국한시키고 모든 제어 프로토콜들 및 비-전송에 관계된 상태 및 제어 처리를 네트워크 제어의 주 기능을 가진 소수의 스마트 네트워크 기반 제어 실체들에 옮기는 라우터들의 해체 필요성이 있다.
요약
종래 기술의 여러 가지 결점들은 많은 실시예들이 있는 본 발명의 소프트라우터 프로토콜 해체에 의해 해결된다.
일 실시예는 제 1 전송 요소(FE) 세트, 제 1 제어 요소(CE), 및 제 1 네트워크 요소(NE)를 포함하는 네트워크 구조이다. 제 1 FE 세트는 복수의 FE들이다. 제 1 CE는 제 1 FE 세트를 제어하며, 상기 제 1 FE 세트 내 각 FE를 위하여 하나의 제 1 프로토콜 프로세스를 작동시킨다. 제 1 CE는 제 1 FE 세트 내 상기 FE들로부터 물리적으로 먼 위치이다. 제 1 CE는 상기 제 1 FE 세트 내 각 FE에 동적으로 바인딩된다. 제 1 NE는 상기 제 1 CE 및 상기 제 1 FE 세트를 포함한다.
다른 실시예는 복수의 전송 요소들(FE), 복수의 CE들, 및 완전 내부 경계 게이트웨이 프로토콜(I-BGP) 메시를 포함하는 네트워크 구조이다. 각 CE는 다른 제어 요소들과는 다른 한 세트의 FE들을 제어한다. CE들은 상기 FE들로부터 물리적으로 먼 위치이다. 각각의 CE는 표준 프로토콜을 사용하여 그의 제어된 FE들과 통신한다.
또 다른 실시예는 복수의 코어 라우터들을 포함하는 네트워크 구조이며, 코어 네트워크는 코어 라우터들, 전송 요소들(FE), CE들, 및 POP 이서넷 네트워크에 연결된다. 각 CE는 상기 FE들의 하나 이상을 제어한다. 각 CE는 그의 제어된 FE들에 동적으로 바인딩된다. 각 CE는 그의 제어된 FE들로부터 물리적으로 먼 위치이다. 각 CE는 그의 제어된 FE들과는 표준 프로토콜을 통해 통신한다. POP 이서넷 네트워크는 코어 라우터들에 의해 코어 네트워크에 연결되고, CE들에 연결되고, FE들에 연결된다.
본 발명의 사상들은 첨부 도면들과 함께 다음의 상세한 설명을 고려함으로써 쉽게 이해될 수 있다.
이해를 쉽게하기 위해서, 가능한 동일한 참조 숫자들이 사용되었고, 이들은 도면들에서 공통인 동일한 요소들을 나타낸다.
본 발명은 주로 소프트라우터 구조의 실시예의 전반적인 맥락 내에서 기술될 것이지만, 이 기술에 숙련되고 여기 개시된 바를 알게 된 당업자들은 해체개념이 네트워크 구조들의 여러 다른 실시예들을 생성하는데 사용될 수 있다는 것과 본 발명은 근거리 네트워크(LAN), MAN(metropolitan area network), 광역 네트워크(WAN), 및 그 외 다른 네트워크들, 많은 개방형 시스템 상호접속(OSI) 계층들, 게이트웨이 프로토콜들, 직렬 라인 프로토콜들, 프로토콜 스택 라우팅 및 브리징 프로토콜들, 이외 많은 다른 프로토콜들, 트래픽 관리, 광학, 에지/코어 라우팅, 무선, 케이블, 데이터 센터들, 보조 신호 경로(ASP), 실패 관리, 구성관리, 계정 관 리, 수행 관리, 보안관리, 그 외 다른 네트워크 관리, 기업들, 정보, 군사용 애플리케이션, 및 그 외 많은 다른 서로 다른 종류의 네트워킹 특징들 및 애플리케이션들에 적용할 수 있음을 알 것이다.
네트워크 연결을 위한 개방형, 표준 기반의 프로토콜들 사용하는 라우터 소프트웨어에서 라우터 하드웨어를 해체하는 것은 많은 이점이 있다. 해체 개념(disaggregation concept)은 각 부품 공급자들(supplier)을 분담되게 하는 것으로, 이것은 하드웨어 벤더들의 진입 장벽을 낮추며 독립된 소프트웨어 벤더들(ISV)이 새로운 하드웨어 시장 진입을 지원하는 캐리어-클래스 라우팅 소프트웨어 개발에의 투자를 장려한다. 이러한 해체개념은 각 부품을 그 자신의 기술혁신 곡선에 중점을 두게 한다. 하드웨어 제조업자들은 최소 가격으로 밀도 당 최고 속도에 역점을 둘 수 있어, 자본 지출을 감소시킬 수 있으며, 소프트웨어 제조업자들은 새로운 애플리케이션 및 제어성에 역점을 둘 수 있어, 운영비를 감소시키면서도 수익을 증가시킬 수 있다.
구조 개요(Architecture overview)
소프트라우터 구조의 한 실시예는 제어 차원의 기능들의 구현을 패킷 전송 기능들과 분리시킴으로써 라우터들을 해체한다. 이러한 해체를 달성하는 네트워크 구조들의 다른 실시예들은 본 발명의 범위 내에 있다. 본 발명은 이러한 해체개념과 이의 네트워크 구조에의 관련을 포괄한다. 소프트라우터 구조에서, 모든 제어 차원의 기능들은 전송 엔진들과 공존해 있을 필요가 없는 별도의 제어 실체들에서 구현된다. 모든 비-전송에 관계된 상태 및 소수의 네트워크 기반의 제어 실체들에 대한 제어 처리를 이전시킴으로써, 조정된 구성변경들이 AS 내 모든 네트워크 요소들이 아니라 소수의 스마트 네트워크 요소들에만 필요하게 되므로, 네트워크 목적을 보다 간단히 구현할 수 있다. 또한, 제어기들과 전송 엔진들 간의 연관이 동적이므로, 이를 행할 수 있는 어떤 제어 실체에 의해 전송 엔진 제어를 적응성 있게 할 수 있다.
소프트라우터 구조는 네트워크 내 전송 실체들과 제어 실체들간에 동적 바인딩들을 수립하여 유지하기 위한 동적 바인딩 프로토콜을 포함한다. 영역내 및 영역간 라우팅은, 영역내 프로토콜 OSPF에 대한 향상된 수행을 포함한, 향상된 수행을 갖고 소프트라우터 구조에 적응된다.
상호 네트워크 연결을 위한 개방형 표준 기반의 프로토콜들을 사용하여 라우터 소프트웨어와 라우터 하드웨어의 해체는 많은 이점이 있다. 해체개념은 각 부품 공급자들을 분담하게 하는데, 이것은 하드웨어 벤더들의 진입 장벽을 낮추며 독립된 소프트웨어 벤더들(ISV)이 새로운 하드웨어 시장 진입을 지원하는 캐리어-클래스 라우팅 소프트웨어 개발에의 투자를 장려한다. 이러한 해체개념은 각 부품을 그 자신의 기술개혁 곡선에 중점을 둘 수 있게 한다. 하드웨어 제조업자들은 최소 가격으로 밀도 당 최고 속도에 역점을 둘 수 있어, 자본 지출을 감소시킬 수 있으며, 소프트웨어 제조업자들은 새로운 애플리케이션 및 제어성에 역점을 둘 수 있어, 운영비를 감소시키면서도 수익을 증가시킬 수 있다.
소프트라우터 구조의 실시예는 최신의 애플리케이션들에 의해 요구되는 복합 IP 기능들을 해체하는 것에의 접근이다. 소프트라우터는 복합성을 일체화하여 분 담되게 한다. 소프트라우터는 IP 전송 기능들을 과도하게 지우지 않고 새로운 기능들의 스케일러블 도입을 할 수 있게 한다.
도 1은 제어 차원 및 전송 차원이 일체화된 종래의 라우터(100)를 도시한 것이다. 종래의 라우터(100)는 전용 인터페이스(106)를 통해 통신하는 소프트웨어 및 하드웨어(104)를 구비한다.
반대로, 도 2는 표준 프로토콜들을 사용하여 통신하는 개별 하드웨어로 제어 차원 및 전송 차원을 해체하는 소프트라우터 구조(200)의 개요를 도시한 것이다. 소프트라우터 구조(200)는 표준 기반 프로토콜(206)을 사용하여 통신하는, 제어 요소 및 특징 서버 요소(202) 및 패킷 전송 요소(204)를 구비한다.
도 3은 다수의 상호접속된 라우터들(300)을 구비한 종래의 라우터 구조를 도시한 것이다.
도 4는 소프트라우터 구조(400)의 실시예를 도시한 것이다. 소프트라우터 구조(400)의 이 실시예에서, 소프트웨어 서버들은 제어 요소들(CE)(402) 및 특징 서버들(FS)(404)을 포함한다. CE들(402)은 통상의 라우팅, 예를 들면 내부 게이트웨이 프로토콜(IGP)(예를 들면, 개방형 최단경로 제 1(OSPF)) 및 외부 게이트웨이 프로토콜(EGP)(예를 들면, 보더 게이트웨이 프로토콜(BGP))을 맡고 있다. FS들(404)은 부가가치 기능들 및 네트워크 기반의 애플리케이션들, 예를 들면, QoS, VPN, 및 이동 IP를 맡고 있다. CE들(402) 및 FS들(404) 둘 다를 전송 요소들(FE)(406)과 인터페이스한다. CE들(402) 및 FS들(404)은 서로 간에 추가의 인터페이스들을 구비할 수도 있다. 소프트라우터 구조는 소프트웨어 기반의 라우트 제어 기(소프트라우터)와 하드웨어 기반의 전송 및 패킷 전송을 서로 분리하고 일체화한다.
소프트라우터 구조에서 라우터들을 해체함으로써 제어기능과 전송기능이 분리된다. 이러한 분리는 논리적이기보다는 그 이상인데(예를 들면, 모듈형 애플리케이션 프로그래밍(API)과의 인터페이스의 사용), 사실, 제어는 전송을 수행하는 복수의 홉(hop)만큼 물리적으로 분리된다(즉, 다른 네트워크 요소에 의해 실행된다).
네트워크 실체(Network Entities)
FE(406)는 실제 전송 및 트래픽 교환을 수행하는 네트워크 요소이다. 구조적으로, FE(406)는 각각이 복수의 포트 단말이 있는 복수의 라인 카드들, 및 라인 카드간에 데이터 트래픽을 전송하는 스위치 구조를 구비할 수 있기 때문에, 통상의 라우터와 유사하다. 그러나, FE(406)는 자체 내에서 작동하는 어떤 매우 복잡한 제어 로직(예를 들면, OSPF 혹은 BGP와 같은 라우팅 프로세스)이 없기 때문에, 종래의 라우터와는 다르다. 대신, 제어 로직은 원격으로 호스트된다.
CE(402)는 서버와 같은 범용 계산 요소이다. 이것은 통상적으로 복수의 FE들(406)을 통해 네트워크에 복수로 주재되는 것을 제외하고는 엔드 호스트와 같은 네트워크에 접속하므로, 단일 링크가 실패되었을 때 네트워크로부터 단절되지 않는다. CE(402)는 FE들(406)을 위하여 제어 로직을 작동시키고, 따라서, 이들을 제어한다. OSPF 및 BGP같은 라우팅 프로토콜들 및 자원 예약 프로토콜(RSVP), 라벨 분 배 프로토콜(LDP), 이동 IP, 등과 같은 프로토콜들을 포함하여, 종래의 라우터에서 통상 발견되는 어떤 제어 로직이들, CE들(402)에 이전시킬 수 있다.
FE(406)은 이의 링크들간에 데이터 트래픽을 전송하는 기능을 행한다. 이 기능은, 특히, 패킷 전송, 라벨 스위칭, 및 광학 스위칭과 같은 다양한 형태들을 취할 수 있다. 패킷 전송은 계층 2(MAC(medium access control)-기반의 스위칭) 및 계층 3(가장 긴 프레픽스의 매치) 전송을 다 포함한다. 라벨 스위칭은 예를 들면 MPLS 전송을 포함한다. 데이터-경로 전송 기능들은 라벨-스와핑, 푸싱, 팝핑을 포함할 수 있다. 광학 스위칭에서, 트래픽은 링크들간에 시간-스위칭되고, 혹은 파장-스위칭되고, 혹은 공간-스위칭될 수 있다. 이들 각각의 경우에, 스위칭 기능은 네트워크 내 CE(402)에 의해 산출되어 설치되는 단순 로컬 테이블에 의해 구동된다. 이에 따라, FE(406)가 자신의 작업을 로컬 데이터 구조에 근거해서만 행하는 능력은 FE(406)이 거의 부하없이 고속이 되게 설계되고 보다 복잡한 로직은 원격의, 그러나 스마트한 CE(402)에 이전시킴을 의미한다.
FE들(406) 및 CE들(402)은 물리적 네트워크 요소들에 더하여, 논리적 실체들로서 이해된다. 구체적으로, FE(406)는 트래픽이 서로 간에 교환될 수 있는 일단의 포트들로서 논리적으로 정의된다. 예를 들면, FE(406)은 단일 라인 카드 상의 모든 포트들을 포함할 수 있고, 이 경우 전체 물리적 패킷 스위치는 복수의 논리적 FE들(406)로 구성된다. FE(406)은 하나 이상의 물리적 스위치를 연결할 수 있는데, 그러나 CE는 복수의 FE들을 제어할 수 있다. 유사하게, CE(402)는 FE들을 위해 제어를 제공하기 위해 구현되는 논리적 프로세스로서 이해될 수 있고 실제로 이 를 실행하는 서버 머신과는 구별될 수 있다. 특히, 물리적 CE 서버 머신(PCE)은 각각이 상이한 일단의 FE들(406)에 서비스할 수 있는 복수의 CE(402) 프로세스들을 호스트할 수 있다. 그 역으로도 마찬가지로, 동일 FE(404)에 서비스를 행하는 복수의 CE(402) 프로세스들(각각은 내부 게이트웨이 프로토콜(IGP) 및 외부 게이트웨이 프로토콜(EGP)과 같은 다른 제어 목적으로 구현된)이 다른 PCE들에 호스트되는 것이 또한 가능하다. FE들(406) 및 CE들(402)의 물리적 및 논리적 정의들은 상호교환적으로 사용된다.
도 5는 네트워크 요소들(500)을 예시한 소프트라우터 구조의 실시예를 도시한 것이다. 소프트라우터 구조에서는 라우터의 상세가 엄격하게 필요하지 않을지라도, 네트워크의 라우팅 뷰를 이해하기 위해서 일부 동등한 바를 검토하는 것이 유용하다. 이를 위해서, 네트워크 요소(NE)(500)의 개념을 FE들(406) 및 이들 FE들(406)을 제어하는 각각의 CE들(402)을 논리적으로 그룹화하는 것으로 정의한다. 특정의 NE(500)의 그룹화는 FE들 간의 각각의 링크를 내부(혹은 인트라-NE)로서 혹은 외부(혹은 상호-NE)로서 내재적으로 유별한다. 내부링크는 동일 NE(500)에 속하는 두 개의 포트들을 연결하고 외부링크는 서로 다른 NE들(500)에 속하는 두 개의 포트들을 연결한다. NE(500)의 개념은 내-NE 및 상호-NE 라우팅이 각자가 서로 다른 방식들을 따르고 있을 때 유용하다.
추가의 제약이 없다면, NE(500)의 위의 정의는 융통성을 갖게 한다. 예를 들면, 이러한 정의에 의해서, 한 네트워크의 해체 부분들에 두 개의 FE들(406)을 동일 NE(500)에 속하게 할 수 있다. 이것은 또한, 통상의 라우터 모델에 대해서도 가능하게 하는데, 이 모델에서 FE(406)는 물리적 요소 내 모든 포트들을 틀림없이 포함하고 제어 CE(들)(502)은 동일 요소 상에 배치된다.
클러스트한 라우팅에서, NE(500)를 구성하는 FE들(406)은 인접한 무리의 일부이다. 즉, NE(500)의 모든 포트들은 NE(500) 내부의 링크들을 통해 서로로부터 도달될 수 있다. 물리적으로, 이것은 이웃한 물리적 FE들(406)이 단일 NE(500)로 클러스터됨을 나타낸다. 전형적인 시나리오는 몇몇의 라우터들이 중앙국에서 백투백으로 연결된다는 것이다. 라우팅 견지에서, NE(500)의 이러한 클러스터 기반의 정의는 상당한 단순화를 제공할 수 있다. 라우팅 견지에서 감소된 수의 NE들(500)은 인터-NE 라우팅 복잡성을 감소시키고, 다른, 아마도 덜 복잡한 라우팅 프로토콜을 인트라-NE 라우팅에 채용할 수 있다.
FE(406)과 CE(402)간에 제어관계는 공식적으로 바인딩이라고 한다. 보다 정밀하게, FE(406)과 CE(402)간의 바인딩은 CE(402)가 FE(406)을 위하여 특정의 제어기능들을 수행함을 의미한다. 복수의 프로토콜들(예를 들면, IGP 및 EGP, 혹은 프로토콜의 복수의 인스탄스들)이 FE(406)의 동작에 필요할 수도 있기 때문에, FE(406)은 복수의 CE(402) 바인딩들을 가질 수도 있다.
프로토콜(Protocols)
소프트라우터 구조는 여러 가지 프로토콜들을 포함한다. 동적 바인딩 프로토콜 및 FE/CE 전송 프로토콜을 포함하여, 다수의 서로 다른 프로토콜들이, 소프트라우터 구조에 따라 설계된 네트워크 동작을 위해 사용된다. FE(406)과 CE(402)간 의 바인딩은 CE들(402)과 FE들(406)을 발견하는 프로토콜을 통해 수립되고 네트워크 두절이 되어도 이들 바인딩들을 유지한다. 동적 바인딩 프로토콜의 가장 일반적인 경우에, FE(406)은 어떤 가용한 CE(402)에 바인딩할 수 있고, CE(402)는 어떤 FE(406)에 대한 제어기능들을 수행할 수 있고, 따라서 최대의 레질리언시 및 최소의 구성 오버헤드를 제공한다. 이러한 동적 바인딩 능력은 제어기능과 전송기능을 서로 분리하는 해체 라우터들이라는 개념의 특징이다. FE/CE 전송 프로토콜은 두 부분, 즉 데이터 및 제어 부분을 갖는다. 데이터 부분에 있어서, FE/CE 전송 프로토콜은 FE들(406)과 CE들(402)간에 라우팅 프로토콜 패킷들의 터널링을 지원하므로, FE(406)에 의해 수신된 라우팅 프로토콜 패킷은 처리를 위해 CE(402)에 보내질 수 있다. 제어 부분에 있어서, 일단 바인딩이 수립되면, FE들(406) 및 CE들(402)은 FE/CE 전송 프로토콜을 사용하여 상태정보를 전달하고 제어를 수행한다. 업링크(FE(406)에서 CE(402)로) 방향에서, 이 제어 부분은 CE(402)에 링크와 전송 상태정보(예를 들면, 링크 업/다운 신호)를 제공한다. 다운링크 방향에서, FE/CE 전송 프로토콜은 구성 및 제어정보(예를 들면, 링크 활성화/비활성화, 전송 정보 베이스(FIB))를 전달한다. 전송 및 제어 요소 분리(ForCES)와 같은 공지의 프로토콜들이 FE/CE 전송 프로토콜용으로 사용될 수 있다.
일부 특징들(Some Features)
소프트라우터 구조는 동적 바인딩 및 분산 제어의 가변도들을 포함한다. 소프트라우터 구조에서, FE(406)은 언제든 네트워크 상의 임의의 CE(402)에 동적으로 바인딩할 수 있고, 그 역도 그러하다. 이것은 제어 차원의 설계 및 배치에 있어 증가된 자유도를 제공하므로 레질리언시, 동작상의 복잡성, 스케일러비리티, 관리, 및 보안이 향상된다. 반대로, 통상의 모델에 있어 정적 바인딩들은 인터넷 제어 차원의 재설계에 관하여 신뢰성 및 적응성을 떨어뜨린다. 분산 제어는 탄력성 등의 이점을 제공하나, 어떤 네트워크 불안성정이 되게 할 수도 있다. 예를 들면, BGP에서 루트 리플렉터의 사용은 발진 문제들을 가질 수 있고, OSPF와 같은 플러딩 기반의 링크 상태 프로토콜들은 복수회의 걸친 실패로 인해 갱신 스톰을 야기할 수 있다. 소프트라우터 구조는 분산제어의 가변도를 가능하게 한다. 구체적으로, 소프트라우터 구조의 실시예들은 FE들(406)을 어떻게 클러스터할 것인가와 CE들(402)에 제어를 어떻게 통합할 것인가를 가변시킴으로써 서로 다른 정도의 분산 제어를 구현한다. 소수의 제어점들은 네트워크 분할과 같은 실패상태로 갈 취약성이 높을 수 있으나 잠재적으로 보다 나은 네트워크 안정성을 의미한다. 통상의 완전 분산 라우팅 및 완전히 일체화 라우팅은 소프트라우터 구조의 많은 가능한 실시예들 중 두 가지 극단의 구현들일 뿐이다.
동적 제어 바인딩(Dynamic Control Binding)
소프트라우터 구조의 동적 바인딩 특징은 복수의 홉들만큼 CE(402)로부터 FE(406)가 분리될 수 있게 한다. 이러한 융통성은 전송 요소들의 초기 구성의 복잡성이 증가된 대가로 오는 것이다. 소프트라우터 모델에서, 부트업할 때, FE(406)은 자신의 인터페이스들의 IP 어드레스들을 포함한 구성정보를 서버에 있는 원격의 CE(402)로부터 얻는다. 이것은, CE(402)를 발견하고 이에 패킷들을 보내기 위해서, FE(406)은 라우팅 정보를 필요하지만, 라우팅 정보는 CE(402)로부터 오기로 되어 있어, 잠재적 모순을 취하고 있다. 이러한 모순은 소프트라우터 구조의 일부인 발견 프로토콜을 사용하여 해결된다. 이러한 발견 프로토콜은 FE들(406) 및 CE들(402)이 서로를 발견하게 하며, IP 라우팅에 기초하지 않은, 이들 실체들 간의 루팅가능 경로를 유지한다. 동적 바인팅 프로세스는 이를테면 CE(402) 부하 밸런싱, CE-FE 바인딩 레질리언시 및 페일오버를 향상시키는 강제 클러스터링 알고리즘들와 같은 향상된 특징들을 지원하므로, 네트워크에 대한 사용성이 증가한다. 이들 특징들은 보다 나은 네트워크 계획과 보다 나은 네트워크 제어를 할 수 있게 한다.
동적 바인딩 프로토콜(Dynamic Binding Protocol)
동적 바인딩 프로토콜의 실시예들은 FE들(406)에 대해선 바인딩 서비스를 제공하고 FE-CE 메시지들에 대해선 라우팅 서비스들을 제공한다. 동적 바인딩 프로토콜은 네트워크의 생존동안, 네트워크에서 동작하는 다른 프로토콜들과는 무관한 별도의 프로토콜로서 모든 요소들(FE들(406) 및 CE들(402))에서 지속적으로 작동한다. 최소한도로, 각 FE(406) 및 CE(402)는 고유 식별자로서 작용하는 사전 구성된 옥텟 스트링(FEID/CEID)를 갖는다. 동적 바인딩 프로토콜은 전송과는 관계가 없으며 계층 2 혹은 계층 3 네트워크들 상에서 동작할 수 있다. 예를 들면, 이것은 루프가 되지 않게 하기 위한 신속 스패닝 트리 프로토콜에 연결하는 계층 2를 사용하여, 이서넷 네트워크 혹은 FE들(406) 및 CE(402)에서 작동할 수 있다. 이질성 네 트워크들에서, 발견 프로토콜은 소스 라우팅 혹은 브릿징에 어드레스하는 계층 3을 사용할 수도 있다. 동적 바인딩 프로토콜은 4가지 구성요소들로서, 발견, 연관, 페일오버에 의한 실패 검출, 및 전송 터널들을 갖는다.
발견(Discovery)
동적 바인딩 프로토콜의 발견 구성요소는 FE(406)가 자신이 관리할 수 있는 CE(402)를 발견할 수 있게 한다. 이 CE(402)를 그 FE(406)에 대한 관리-CE라고 한다. 발견 구성요소가 구성 프로세스를 위한 빠른 발견을 제공하기 위해서, CE(402) 도달성 정보가 각 FE(406)에 배포된다. 새로이 부트된 FE(406)은 자신의 이웃들에 질의하여 네트워크 내 모든 CE들(402)에의 도달성 정보를 얻는다. CE(402) 도달성 정보를 배포하기 위해서, FE들(406)은 이들의 이웃들에 간청 메시지들을 주기적으로 방송한다. 한 이웃이 CE(402)이라면, 이 CE(402)는 자신의 신원을 통지함으로써 응답한다. 한 이웃이 FE(406)이라면, 이 FE(406)는 이미 파악해 둔 모든 CE들(402)에 도달성 정보로 응답한다. 소스 라우팅에 있어서, 도달성 정보는 CE(402) 신원들 외에도, CE들(402)에 도달하기 위한 소스 루트들 및 새로운 정보임을 나타내는 생존시간 파라미터를 포함한다.
소스 라우팅에 있어서, FE들(406)은 이들의 이웃들을 알 필요가 있다. CE(402) 통보 혹은 한 이웃으로부터 CE(402) FE(406) 도달성 메시지의 수신시, FE(406)는 이웃 FEID 혹은 CEID를 수신된 소스 루트들에 더한다. CE들(402)은 수신한 패킷들 내 소스 루트를 거꾸로 함으로써 FE들(406)에의 소스 루트들을 도출한 다. (FE들(406)은 CE들(402)과의 가장 첫 번째 패킷 교환을 항시 개시한다). 이웃들은 모든 발견 프로토콜로 활성화되는 인터페이스들로 헬로 메시지를 주기적으로 보냄으로써 자신들을 알린다. 이에 따라, 각각의 노드(FE/CE)는 헬로 메시지들이 더 이상 수신되지 않을 때 이웃 리스트를 유지한다.
IP 어드레싱을 이용하는 발견 프로세스에 대하여, 부트업시, 각각의 FE(406)는 사전-구성 소스 라우팅을 수행하기 위해 FEID와 더불어 그의 인터페이스들에 대해 무작위로 선택된 임시 IP 어드레스들을 사용한다. 이들 IP 어드레스들은, 제어된 어드레스 공간, 예를 들면 10.x.x.x처럼, 전용 서브네트 어드레스 풀에서 선택된다. CE들(402)은 사전에 구성되고, 따라서 유효한 IP 어드레스들을 갖는다. 모든 메시지들은 서로 다른 서브네트들의 IP 어드레스들간의 패킷 교환이 가능하도록 IP로 제한된 방송들 또는 멀티캐스트들을 사용하는데, 이것은 비구성 FE들(406) 및 구성 FE들(406) 또는 CE들(402)을 피어링(peering)하는 단계에서는 공통적이다. IP 어드레싱은 직접 이웃들과 패킷들을 교환하는 데에만 사용된다. 그러므로, 임시 IP 어드레스들은 링크마다 고유해야 한다.
각각의 FE(406)에는 네트워크 계획 동안 네트워크 관리자에 의해 하나의 주-CE와 적어도 하나의 백업-CE가 할당된다. 이 정보는 CE들(402)에서, 선택적으로는 FE들(406)에서 구성된다. 통상적으로, 이 할당은 이를테면 CE(402)에의 부하, CE(402)와 FE(406)간의 거리, 및 이들간의 링크들의 신뢰성과 같은 요인들을 고려하여 선험적으로 행해진다.
연관 프로세스는 FE(406)와 이의 주-CE 및 백업-CE들간의 활성적 연관을 수 립하여 유지하려는 것이다. 관리-CE는 연관된 CE들(402)의 리스트로부터 FE(406)에 의해 선택되며, 주-CE는 항시 다른 CE들(402)이 선호한다. FE들(406)은 네트워크 관리자에 의해 사전에 구성되거나 분선 클러스터링 알고리즘을 사용하여 얻어지는 바인딩을 사용하여 최상의 CE(420)에 동적으로 연관된다. FE(406)는 연관 메시지를 보냄으로써 CE(402)와 연관을 맺는다. CE(402)는 FE(406)을 관리할 수 있다면 이를 받아들이고 아니면 거절한다. 거절은 CE(402)에 알려진다면, 선택적으로 주-CE들의 ID들 및 FE(406)에 대한 백업-CE들의 ID들을 포함할 수 있다. 받아들여지지 않는다면, FE(406)는 이의 주-CE 혹은 백업-CE와 접촉을 진행하거나 이들을 다른 CE들(402)과 접촉함으로써 탐색을 계속한다.
실패 검출 및 수선(Failure Detection and Repair)
동적 바인딩 프로토콜들은 CE(402) 실패를 검출하여 수선하는 메커니즘을 갖는다. FE(406)와 CE(402)간에 연관이 일단 맺어지면, FE(406)에 의해 개시된 하트비트 메시지들을 통해 주기적으로 연관 생존이 탐지된다. 하트비트 메시지들이 CE(402)로부터 어떠한 응답들도 이끌어내지 못하였을 때, 이것은 CE(402)로의 어느 경로도 더 이상 유효하지 않음을, 혹은 CE(402)는 더 이상 존재하여 있지 않음을 의미한다. 그러면 FE(406)는 활성화 메시지를 보냄으로써 그의 백업-CE들 중 하나에 페일오버한다. 백업-CE는 활성화 메시지의 수신확인을 응답한 후 관리-CE가 된다. CE(402)는 변경을 받아들이는 FE로부터의 수신확인 응답이 없이는 CE(402)과의 연관을 끊을 수 없다. 이것은 현 관리-CE가 활성중인 한, 자신의 관리-CE를 바 꾸기를 원하는 FE(406)의 경우에도 그러하다.
전송 터널들(Transport Tunnels)
동적 바인딩 프로토콜은 느린 경로(즉, 반드시 가장 짧은 경로일 필요가 없는 소스 루트 혹은 브리지되는 경로)라고 하는, FE(406)와 이의 연관된 CE들(402)간의 기본 전송터널을 셋업하여, 모든 다른 통신수단이 실패하였을 때 상위 계층 프로토콜들(예를 들면, OSPF) CE-CE 통신을 가능하게 한다. 이들 터널들은 신뢰성은 없으며 순차적 전송을 보장하지 않는다. 이들 느린-경로 터널들은 드물게만 사용되는데, FE들(406)에 설치된 유효한 라우팅 테이블들이 없을 때, 예를 들면, FE(406)가 초기화 중에 있을 때, 혹은 FE(406)가 다른 관리-CE로 스위칭하고 있을 때 사용된다.
이들 4가지 구성요소들의 조합은 동적 바인딩 프로토콜이 네트워크 내 FE들(406)과 CE들(402)간에 동적 바인딩들을 능동적으로 발견하여 유지할 수 있게 하여준다.
부하 밸런싱 , 클러스터링, 및 페일오버(Load Balancing, Clusting , and Failover )
동적 바인딩 프로토콜은 복수의 홉들만큼 분리된 CE(402)와 FE(406)간을 동적으로 바인딩할 수 있게 하여준다. 이것은 FE(406) 및 CE(402)에게 이들의 관리-CE 및 관리된-FE-세트를 각각 결정함에 있어 넓은 선택을 준다. 구조에 다양한 설 계적 선택을 부여함에 있어 어떤 이점이 있는지에 따라서, 그리고 그러하다면 사용할 기준에 따라서, 이들 다양한 설계적 선택들이 행해질 수 있다. 이들 선택들을 규제함으로써 네트워크에서의 동작이 확정적이게 하고, 네트워크 관리자 내에서 더 제어될 수 있게 하고, 네트워크 계획을 더 낫게 할 수 있다. 이러한 이점들이 주어진다면, 주어진 CE(402)가 관리한 FE(406)를 할당함에 있어 기준들로서, 주어진 CE(402)에 관리된 FE들(406) 수에 대한 부하, 및 페일오버가 CE(402)에의 부하에 악영향을 미침이 없이 어떻게 신속하게 수행될 수 있는가 라는 기준들이 사용된다. 이들 기준들은 네트워크 계획 맥락에서 적용되며, 이 경우 설계자는 소정 수의 CE들(402)이 놓여있는 위치들을 선택한다.
CE 배치(CE Placement)
소프트라우터 구조의 실시예를 설계하기 위해서, (1) 부하가 k개의 CE들(402)에 걸쳐 균형을 이루게 하고 각 FE(406)과 이의 연관된 CE(402) 간의 평균거리가 최소가 되게 FE들(406)의 네트워크에 k개의 CE들(402)을 배치하는 것이 바람직하다. 초기 가정은 k개의 CE들(402) 배치 장소에 제약이 없다는 것과 FE들(406)은 임의의 CE에 의해 관리되게 할당될 수 있다는 것이다. 한 세트의 주-CE들 간에 FE들(406)의 부하는 균형이 맞추어지고, 아울러 FE(406)과 이의 주-CE 간에 평균 거리를 최소화한다. 링크들은 지연 혹은 페일오버 특징들이 다를 수 있고 CE들(402)의 위치들이 선택된다. 가능한 한 어떤 CE 서버에 과부하가 걸리지 않게 하는 것이 바람직하다. 또한, 통신 레이턴시를 감소시키기 위해서, FE(406)와 이의 주-CE간의 평균 거리를 최소화하는 것이 바람직하며, 이에 따라, CE(402) 상에서 실행되는 라우팅 프로토콜들은 실패를 신속하게 통보받을 수 있게 된다. 또한, FE(406)이 이의 주-CE에 가깝다면, 발견 프로세스는 더욱 빠르게 수렴한다. 이에 따라, 모든 CE들(402)이 능력이 서로 같다면, FE 네트워크를 거의 동일 크기들의 클러스터들로의 분할은 부하의 균형을 맞추는 목적 및 관리-CE와 FE(406)간의 평균거리를 최소화하는 목적을 달성할 것이다.
이러한 k개 균등분할 문제에서, 목적은 그래프를 동일 크기의 클러스터들로 분할하면서 각 클러스터 내 에지들의 웨이트들을 최소화하는 것이다. 이러한 최적화 문제는 NP-완결인 것으로 알려져 있다. 다항식 시간으로 완성되는 실현에 기초하여, 이러한 문제에 대한 거의 최적에 가까운 해결책들이 있는데, 그러나 이러한 근사화에 엄격한 제한은 없다. 재귀에 의한 그래프 2분할에서, k개 분할은 그래프를 2개의 서브-그래프들로 재귀적으로 분할함으로써 얻어지며, 서브-그래프 중 하나는 [n/k] 크기가 되게 설정된다. 재귀에 의한 그래프 양분할은 네트워크 접속이 양호할 때, 적합하게 행해진다.
도 6은 20개의 노드와 44개의 링크를 가진 전형적인 Tier 1 POP-레벨 ISP 토폴로지에 사용되는 재귀 양분할을 도시한 것이다. 이 네트워크의 직경은 4이다. CE들(402)의 수는 2 내지 7이고 결과들은 CE 클러스터 당 FE들(406)의 수 및 FE들(406)의 관리-CE로부터 이들 FE들(406)의 거리에 기초하여 도 7에 테이블에 나타내었다. CE들은 단일의 FE(406)에 연결된다. CE(402)가 복수의 FE들(406)에 직접 링크된다면, 거리 메트릭들은 더욱 감소한다.
페일오버( Failover )
CE(402) 실패는 FE(406)과 이의 관리-CE간의 연관이 타임아웃될 때 발생한다. 이것은 관리-CE가 다운되기 때문에 일어나거나, 혹은 FE(406)가 하트비트들을 서로 교환하기 위해 관리-CE에의 유효한 경로를 발견할 수 없는 경우에 일어날 수 있다. 이때, CE 페일오버가 수행되고, FE는 다른 연관된 CE(402)으로(있다면) 스위칭한다. 그러면, 새로운 CE(402)는 새로운 관리-CE가 된다.
페일오버는 최소의 지연으로 일어날 필요가 있다. 그러므로, 주어진 FE(406)에 대해서 어떤 CE들(402)이 백업-CE들로서 지정될 것인가가 결정된다. FE(506)은 선호도의 순으로 하나 이상의 백업-CE을 구비할 수 있다. 소프트라우터 구조의 실시예에서, 백업-CE들을 선택하기 위한 기준은 최소의 페일오버 시간을 포함한다.
백업-CE들은 각각의 백업-CE가 이전의 백업_CE 및 주-CE하고는 경로의 최소의 마운트로 겹쳐지게 되도록 선택된다. 주-CE에서 FE(406)으로의 경로는 FE(406)에서 선택된 백업-CE로의 경로와는 최소로 겹쳐지게 하는 것이 바람직하다. 유사하게, 제 2 백업-CE는 이것이 FE(406)에 이르는 경로가, FE(406)에서 주-CE 및 제 1 백업-CE 둘 다에의 최단 경로들하고는 최소로 겹쳐지게 되도록 선택된다.
백업-CE를 사용하고 있는 FE(406)은 이의 주-CE와 다시 연관을 맺도록 항시 시도하며 상태가 허용될 때 주-CE로 스위치한다. 이에 따라, 모든 CE들(402)에의 부하는 부하-균등화 알고리즘에 의해 결정되는 바와 같이, 상당히 균일한 상태에 있게 될 수 있다.
프로토타입 구현(Prototype Implementation)
도 7은 프로토타입 테스트베드의 블록도이다. 소프트라우터 구조의 실행가능성을 검증하기 위해서, 시판중의 라우터들과 FE들(406) 및 CE들(402)로서 작용하는 PC들이 혼재된 테스트베드에서 프로토타입 구현이 행해졌다. 테스트베드는 모두가 이서넷을 통해 서로 연결된 것들인, 6개의 NE들(500)(각각의 NE는 도 8에서 동일 형태의 구성요소들로 표시되어 있음), Cisco(등록상표) 7200 라우터(700), Juniper(등록상표) M-20 라우터(702), 호스트 PC(704), 서버 PC(705), 및 네트워크 모니터 PC(도시생략)을 포함한다. 각각의 NE(500)는 주-CE 및 백업-CE에 연결된 적어도 하나 이상의 FE들(406)을 포함한다. 정규 동작동안, 주-CE는 관리-CE로서 선택된다. NE(500)의 주-CE 및 백업-CE는 두 개의 서로 다른 PCE들인 PCE1(706)과 PCE2(708)에 호스트된다. 각각의 PCE는 한 클러스터의 고성능 제어 서버들을 나타내는 것이지만, 간단하게 하기 위해서 테스트베드 내 단일 서버로서 구현된다.
주-CE들(즉, CE1p(710), CE2p(712), CE6p(714))는 PCE2(708)에 호스트가 되어, FE1(716)(FE2a(718), FE2b(720)) 및 FE6(722)을 각각 제어한다. 대응하는 백업-CE들(즉, CE1b(724), CE2b(726), CE6b(728))은 PCE1(706)에 호스트가 된다. 주-CE들(즉, CE3p(730), CE4p(732), CE5p(734))는 PCE1(706)에 호스트가 되어 FE들(406)(FE3a(736), FE3b(738)) 및 FE3(740)), FE4(742), 및 FE5(744)를 각각 제어한다. 대응하는 백업-CE들(즉, CE3b(746), CE4b(748), CE5b(750))은 PCE2(708)에 호스트가 된다.
테스트베드 토폴로지는 3가지 유형의 NE들(500)로서, (1) CE(402) 및 적어도 하나의 다이렉트 링크(즉, NE1, NE2, NE4)를 가진 NE(500)의 FE들(406)과, (2) CE(402)와 FE(406)(NE4, NE5, NE6) 간에 하나 이상의 홉만큼 분리된 NE(500)의 FE들(402)을 수용한다.
프로토타입의 동적 바인딩 프로토콜 거동을 평가하기 위해서 3가지 실험들을 설계하였다. 실험 1은 네트워크 부트의 경우, 모든 CE(402) 정보가 네트워크 도처에 전달될 때까지의 기간을 판정한다. 실험 2는 링크 및 노드 실패의 경우에 소스 루트 수렴시간을 측정한다. 실험 3은 관리-CE가 실패하였을 때 백업-CE까지의 페일오버 시간을 측정한다. 네트워크 이벤트들은 FE들(406) 내에 시간 스탬프되고 네트워크 모니터 PC(도시생략)에 전달된다. 모든 FE들(406)은 네트워크 이벤트들을 상관시키기 위해서 네트워크 시간 프로토콜(NTP)에 의해서 시간이 동기화된다. 각 실험에 있어서, 3가지 측정들이 취해지고 평균된다. 모든 측정된 시간들은 초단위이다.
실험 1
실험 1에서, 모든 CE들(402) 및 FE들(406)에서 동시에 동적 바인딩 프로토콜이 초기화된다. CE(402) 전파 기간은 마지막 FE(406)가 모든 CE들(402)에 대해 파악하는데 걸리는 시간이고 표 1에 나타내었다.
표 1: 실험 1의 네트워크-와이드 부트
학습시간(s) FE
1 2a 2b 3a 3b 3c 4 5 6
제 1 CE 1.1 1.0 2.2 0.8 2.2 2.5 3.1 4.7 4.6
모든 CE 3.9 6.0 6.8 3.2 5.3 5.4 4.7 7.5 8.3
결과들은 PCE1(706) 및 PCE2(708)에 심어진 CE(402) 정보가 2가지 중첩파들로 전파하여, 종국에 모든 FE들(406)에 도달함을 보여준다. FE1(716), FE3a(736), 및 FE4(742)는 모든 파들이 교차하는 곳의 제 1 노드들이고, 따라서 이들 노드들을 네트워크 내 모든 CE들(402)을 파악할 제 1 노드들로 한다.
실험 2
실험 2는 링크 실패 및 노드 실패가 동적 바인딩 프로토콜의 수렴시간에 미치는 영향을 고찰한다. 링크 FE2b-FE4(752)가 먼저 단절되고 다시 연결되었다. 단절시, FE4(742)는 링크 실패를 발견하였으며 FE3b(738)에 의해 전파된 정보로 그의 소스 루트들을 조정하였다. 이 정보는 FE5(722)에 전달되었다. 재연결시, FE4(742)는 PCE2(708) 상의 CE들(402)에의 보다 짧은 루트 정보를 FE2b(720)로부터 수신하여 이를 FE5(722)에 전달하였다. 표2는 소스 루트 수렴시간을 나타낸 것이다.
표 2: 실험 2에서 실패(F)/복구(R) 이벤트들 후의 소스 루트 수렴 시간들
이벤트 FE
1 2a 3a 3b 3c 4 5 6
링크(F) 2.0 4.7
링크(R) 2.9 6.0
노드(F) 1.3 9.1 7.8 9.5 8.5
노드(R) 5.7 5.6 6.0 7.4 7.3 9.5
노드 실패의 경우, 노드 FE1(716)이 정지된다. 노드 실패시, FE2a(718) 및 FE3a(736)은 먼저 FE1(716)이 다운된 것을 발견한다. 이들은 FE1(716)에 연루된 모든 소스 루트들을 제거하고 이러한 정보의 전파를 중지한다. 이들의 이웃들은 다음 전파 사이클에서 무효한 루트들을 발견하고 이들을 이들의 소스 루트 테이블로부터 제거한다. 이와 동시에, PCE1(706) 및 PCE2(708) 상의 주-CE들 및 백업-CE들에 이르는 보다 긴 대안 루트들이 선택된다. FE3a(736), FE3c(740), 및 FE5(744)는, 이들이 FE4(742)에 의해 심어진 정보를 통해서만 그들의 백업-CE들에의 새로운 루트들에 관하여 파악하기 때문에, 수렴하는 마지막 노드들이다. 노드 FE1(716)이 재기동하였을 때, 유사한 패턴이 관찰되는데, 우선 노드들 FE1(716), FE2a(718), FE3a(736)이 수렴하고, 이어서 FE1(716)에서 2 및 3 홉만큼 떨어져 있는 FE3b(738), FE3c(740), FE5(744)이 수렴한다. 수렴 시간들은 네트워크 내 모든 CE들(402)에 관하여 파악하는데 걸린 시간을 나타낸다.
실험 3
실험 3에서, 페일오버 시나리오에 있어, CE3p(730) 프로세스가 종료되고, 이에 따라 FE3a(736), FE3b(738), CE3b(746)에 하트비트 타임아웃이 야기된다. 각 FE(406)은 독립적으로 타임아웃을 검출하고 CE3b(746)에 스위칭한다. 타임아웃과 백업-CE 활성화 간에 평균시간은 FE3a(736)에 대해선 0.8s, FE3b(738)에 대해선 1s, FE3c(740)에 대해선 1.1s이다.
링크 혹은 CE/FE 실패시 백그라운드에서 동적 바인딩이 발생하고 있는 중에도, 대응하는 관리-CE들에 의해 설치된 FIB들에 기초해서 네트워크에서는 여전히 전송이 발생한다. 상위 계층 라우팅 프로토콜들, 이를테면 OSPF에 의한 실패 검출이 즉시 일어나지 않았을 때, 동적 바인딩 프로토콜에 의해 달성되는 수렴시간들은 상위 계층 라우팅 프로토콜들의 수렴시간들보다 작다. 이에 따라, 동적 바인딩 프로토콜은 대부분의 경우에 네트워크 라우팅 거동의 나머지에 불리한 영향을 미치지 않는다.
본 발명의 여러 실시예들은, 프로토콜 집성, 고 신뢰도, 및 부트스트랩 파라독스라는 기술적 문제를 해결한다. CE 서버에 단일 프로토콜 구현이 복수의 FE들을 관리할 때 OSPF/BGP와 같은 프로토콜들의 동작방법, CE 서버들을 어디에 배치할 것인가 하는 결정방법, 및 어떤 CE 서버들이 어떤 FE들을 관리할 것인가를 정하는 방법이 있다. 부트스트랩 파라독스는, FE가 이의 CE 서버에 패킷들을 보내기 위해서 갱신된 전송 테이블들을 필요로 하는데 CE 서버는 전송 테이블들을 갱신할 수 있다는 점에서 일종에 무엇을 먼저 해야 할 것인가라는 딜레마이다.
라우팅 프로토콜들(Routing Protocols)
라우팅 프로토콜들은 이를테면 소프트라우터 구조의 실시예와 같은, 해체된 라우터 네트워크에서 동작한다. 라우팅 프로토콜들은 CE(402)에서 원격으로 동작하며 전송 테이블들 및 그 외 정보를 FE들(406)에 다운로드함으로써 하나 이상의 FE들(406)을 제어한다. 소프트라우터 구조는 영역내 라우팅 및 영역간 라우팅 프로토콜 실현을 다 포함한다.
영역내 라우팅( Intra -domain Routing)
OSPF와 같은 영역내 라우팅 프로토콜들은 소프트라우터 구조에 옮겨진다. OSPF는 상태 통지를 그의 이웃들에 신뢰성있게 플러딩함으로써(LSA들), 전체 네트워크의 토폴로지를 기술하는 동일 링크 상태 데이터베이스를 유지하게 각 라우터가 실행할 수 있게 하는 링크 상태 프로토콜이다. 도 9 및 도 10은 통상의 라우터 구조에서 OSPF 프로토콜 실행과 소프트라우터 구조간의 차이들을 강조한 것이다.
도 8은 각 라우터(300)가 자신의 링크 상태 데이터베이스(LSDB)를 보유하는 OSPF 인스탄스(800)를 작동시키는 종래의 네트워크를 도시한 것이다. N 노드 네트워크에서, N LSDP들은 동기되어야 한다. 이 통상의 구조에서, 네트워크 내 모든 라우터는 OSPF 인스탄스(800)의 동본을 실행시키고, 도 10에 도시한 소프트라우터 구조에서, CE만이 OSPF 인스탄스(800)를 실행시킨다.
도 9는 복수의 FE들(406)을 위하여 각 CE(402)가 OSPF 인스탄스(800)를 작동시키는 소프트라우터 구조의 실시예를 도시한 것이다. N 노드 네트워크에서는 각 CE가 10개의 FE들(406)을 관리한다면, 단지 N/10 CE들만이 있다. 이에 따라, 단지 N/10개의 LSDB들은 동기되어야 하며, 이에 따라 보다 빠른 수렴을 제공한다. CE는 이것이 제어하는 복수의 FE들(406)을 위해, OSPF 인스탄스(800)를 원격으로 실행시킨다. 도 10에 도시한 소프트라우터 구조 및 도 8에 도시한 통상의 구조에서 FE들(406)의 총 수는 동일하다. 그러나, CE들(402)의 총 수는 도 8에 도시한 통상의 구조보다는 도 9에 도시한 소프트라우터 구조에서 적다. 또한, 네트워크에 걸친 OSPF 인스탄스(800)의 총 수는 도 8에 도시한 통상의 구조에서보다는 도 9에 도시 한 소프트라우터 구조에서는 적다.
OSPF 인스탄스(800)는 복수의 FE들(406)을 관리하여 전체 네트워크에 대해 루트들을 계산한다. 내부 링크들, 즉 단일 OSPF 인스탄스(800)에 의해 관리되는 FE들(406)을 연결하는 링크들을 관리하고 있는 OSPF 인스탄스(800)를 복수의 FE들(406)을 관리하게 할 때 문제가 발생한다. 내부 링크들은 2중의 선으로 도 9에 도시하였다. 소프트라우터 구조의 실시예들은 내부 링크들을 관리하는 3가지 방식들로서, (1) 내부 링크들 및 웨이트들을 다른 OSPF 이웃들에 알리는 방식, (2) 각 NE(500)을 OSPF 영역으로서 구성함으로써 내부 링크들에 대해 요약 알림이 되게 하는 방식, 혹은 (3) 별도의 내부 링크 라우팅 프로토콜을 사용함으로써 내부 링크들에 대해 전혀 알리지 않게 하는 방식을 포함한다.
제 1 방식은 계산된 루트들이 통상의 분산 OSPF를 사용하여 계산된 루트들과 동일한 점에서 통상의 분산 OSPF 구현(FE(406) 당 하나의 OSPF 인스탄스)에 가장 근접하다. 즉, 내부 링크들은 외부 링크들과 동등한 것으로서 취급된다. 이 제 1 방식에서는 통상의 구조에 비교해 볼 때 소수의 OSPF 프로세스들이 있기 때문에 네트워크에서 교환되는 소수의 OSPF 프로토콜 메시지들이 있어, 메시지 처리 오버헤드가 낮아지게 된다.
제 2 방식은 OSPF 영역들의 구성에 고유의 자연적 계층을, 소프트라우터 구조 내 NE(500)의 정의를 나타내는 계층에 맞춘다. 이 제 2 방식에서, 각 NE(500)는 OSPF 영역으로서 정의되고 영역 당 단일의 OSPF 프로세스가 있다. 이에 따라, 요약 알림 형태로 다른 OSPF 프로세스들에 내부 링크들에 알려지게 한다. 이 제 2 방식은, 내부 링크 실패/동요(oscillation)에 기인하여 전체 네트워크에서 루트 변경 형태로 약간의 동요를 야기한다. 그러나, 이 제 2 방식은 라우팅이 OSPF 영역들에 걸쳐 최적인 것을 보증하지 않기 때문에, 현 구조에 있는 최적의 라우팅을 희생시킨다. 이것은 원 배치에 구성된 OSPF 영역들은 전혀 없었던 것으로 가정한다.
제 3 방식은 3가지 방식들 중 가장 공세적인 최적화이다. 제 3 방식에서, 내부링크와 외부 링크 정의들 간에 엄격한 경계들을 유지하는 통상의 동작이 계속 유지되어, 내부 링크들은 OSPF 이웃들에 알리지 않는다(예를 들면, 내부 링크들은 샤시 내 백플레인/스위치 구조이거나 FE들(406)을 연결하는 매우 고속의 링크들일 수 있다). 어떤 점에서, 제 3 방식은 NE들(500)을 구축하는데 채용되는 전략들에 거의 동일하다. 이들 방식들 주에서, 제 3 방식은 메시지들이 최소로 교환되게 하고 실패들에 기인한 루트 변경들이 최소로 되고, 수렴시간들을 가장 빠르게 한다. 그러나, 최적의 라우팅은 통상의 라우터에서 백플레인/스위치 구조에 대해 가정한 바와 같이, 내부 링크들이 사실상 제로 코스트를 가질 경우에만 달성된다.
마지막으로, 모든 3가지 방식에 공통은, 소프트라우터 구조에서 서로 다른 OSPF 프로토콜 구현(800) 간에 OSPF 프로토콜 메시지들을 어떻게 상호교환할 것인지의 문제이다. 최소한 2가지 가능성이 있는데, OSPF 프로토콜 메시지들이 CE(402)에서 FE들(406)로 터널링되게 함으로써, 모든 이웃들에게 마치 FE(406)이 OSPF 프로토콜 메시지들을 발원한 것처럼 보이게 하거나 OSPF 프로토콜 메시지들이 CE들(402) 자체들 간에 직접적으로 서로 교환되게 한다. 전자의 옵션은 NE들(500)을 통상의 라우터들과의 상호 운영성들을 가능하게 하는 반면에, 후자의 옵션은 두 개의 CE들(402) 간에 이중의 메시지 교환(즉, 두 개의 NE들(500)이 복수의 링크들에 의해 연결되었을 때)을 제거하기 때문에 더 효율적이다.
위에 논한 3가지 방식들 중에서, 바람직한 방식은 가장 공세적인 최적화를 갖는 방식 3이다. 또한, 통상의 라우터들과 상호 동작이 되게 하기 위해서, CE들(402)로부터 FE들(406)로 프로토콜 메시지들을 터널링하고 이어서 이들을 FE 이웃들에 정규의 OSPF 메시지들로서 보내는 전략이 채용된다. 즉, 모든 제어 프로토콜 및 관리 메시지들은 CE(402)와 FE(406)간에 FE/CE 전송 프로토콜을 사용하여 터널링된다.
OSPF 프로토콜로 실험들을 실행하고 행하기 위한 테스트베드 구성은 도 7에 도시한 바와 동일하다. OSPF는 동적 바인딩 프로토콜이 수렴하고 초기 CE/FE 바인딩들이 발생한 이후에만 시작된다. 위에서 논한 바와 같이, 하나 이상의 FE들(406)을 제어할 수 있는 CE(402) 당 하나의 OSPF 인스탄스(800)가 실행된다. 예를 들면, 도 7에서 CE3p(730)는 FE3a(736), FE3b(738), 및 FE3c(740)을 제어하는 것과 단일 실체(NE3)를 형성하는 것을 행하고, CE4p(732) 및 CE5p(734)는 FE4(742) 및 FE5(744)를 각각 제어하는 것을 행한다. OSPF의 입장에서, 각각의 CE(402)는 네트워크 내 한 노드로서 간주하고 OSPF 이웃들은 물리적 FE(406) 이웃들에 기초하여 설정된다.
일단 OSPF 이웃들이 수립되고 네트워크 내 모든 노드들이 이들의 링크 상태 데이터베이스들을 수렴하였으면, OSPF는 라우팅 테이블을 결정하기 위해서 Dijkstra의 최단 경로 제 1(SPF) 알고리즘을 실행시킨다. 라우팅 정보는 모든 다 른 라우팅 프로토콜들(예를 들면, BGP, 스태틱)로부터 루트 정보를 모아, FIB에 다운로딩할 필요가 있는 주어진 목적지에 대해 최상의 가능한 루트를 선택하는 라우팅 테이블 관리자(RTM)에 넣어진다. 소프트라우터 구조에서 전송 엔진들은 원격 디바이스들 상에 있기 때문에, 루트 엔트리 정보는 루트-갱신 메시지에 FE/CE 전송 프로토콜을 사용하여 CE(402)에서 FE(406)으로 전달된다. FE(406)은 메시지를 수신하고, 이의 전송 엔진에 정보를 다운로드하고 갱신성공에 관해 CE(402)에 응답한다. 루트들을 갱신을 실패한 경우, CE(402)는 이 갱신 메시지를 다시 FE(406)에 보내는 것을 다시 시도한다.
실험결과 및 메트릭(Experimental Results and Metrics)
실험들은 도 7에 도시한 테스트베드에서 행해졌다. 소프트라우터 구조에서 OSPF 라우팅 프로토콜의 수행이 평가되고 통상의 구조와 비교한다. 모든 결과들은 실험을 행한 값들을 평균함으로써 계산되었다. 이들 메트릭들은 (1) 네트워크 수렴시간, (2) 프로토콜 메시지 카운트, (3) 루트 변경 카운트에 대해 평가되었다. 네트워크 수렴 시간들은 이벤트 변경이 검출된 이후 네트워크 내 모든 라우터들이 갱신된 라우팅 테이블 엔트리들을 가지고 정상상태에 도달할 때까지 걸린 시간으로서 정의된다. 이벤트는 링크 혹은 노드 실패 혹은 복구일 수도 있을 것이다. 낮은 수렴시간은 변경된 후에 네트워크가 신속하게 안정에 도달하는 강건한 네트워크를 나타낸다. 이벤트 검출은 양 구조들에서 검출시간이 공통이고 검출시간이 기지의 방법들에 의해 최적화될 수 있으므로, 이 메트릭의 일부로서 포함되지 않는다. 프 로토콜 메시지 카운트는 페일오버 이벤트 이후 네트워크가 안정에 도달할 때까지 네트워크 내 라우터들에 의해 처리되는 OSPF 프로토콜 메시지들의 수로서 정의된다. 이것은 실패의 결과로서 부하를 처리시 스파이크의 측정이다. 단기간 내에 높은 메시지 카운트는 정체일 수 있으므로, 패킷 유실, 프로토콜 상태 머신 타임아웃, 및 네트워크 불안정성으로 이어질 수 있다. 루트 변경 카운트는 실패 이후 네트워크가 안정에 도달할 때까지 네트워크에서 라우터들에서 변경된 루트들의 수로서 정의된다. 단기간 내에 상당 수의 루트 변경들은 네트워크 안정성에 부정적으로 영향을 줄 수 있다.
수렴 시간(Convergence Time)
통상의 라우터 구조와 소프트라우터 구조간에 서로 다른 수행 메트릭들을 비교하기 위해서, 두 가지 경우들로서 (1) 단일 링크 및 (2) 단일 노드(복수 링크들)에 대한 실패 및 이에 이은 복구에 대해 평가된다. 실험들에서, FE5a와 FE6a 간의 링크는 단일 링크 실패 시나리오에 대해 사용되었으며, 노드 FE6a는 단일 노드 실패 시나리오에 대해 사용되었다. 통상의 구조를 소프트라우터 구조와 비교하기 위해 동일한 코어 OSPF 구현과 구성 내정값들이 사용되었다. SPF는 홀드 타이머 및 SPF 지연 타이머들은 실패/복구와 정상상태간 시간인 OSPF 수렴시간을 결정하는 역할을 한다. 소프트라우터 구조의 경우에, SPF는 홀드 시간(즉, 연속한 SPF 실행 간의 대기시간)은 10초의 내정값으로 설정되고 SPF 지연시간(즉, 데이터 변경 이벤트를 수신한 후에 SPF를 실행하기 전의 대기시간)은 5초로 설정된다. 이들 타이머 들은 너무 빈번한 SPF 계산들을 방지함으로써 라우팅 불안정성에 대해 지킨다.
수행된 실험들에 있어 실패/복구 후 정상상태까지의 평균 OSPF 수렴시간은 통상의 구조와 소프트라우터 구조에 대해 표3에 나타내었다. 표에 나타낸 바와 같이, 소프트라우터 구조에 있어 결과들은 통상의 방식에 있어서의 결과들보다는 약간 좋다. 소프트라우터 구조에서 OSPF 이웃들의 총 수가 통상의 구조보다는 적기 때문에(복수의 디바이스들을 단일 NE(500)처럼 행동하게 집약시키는 소프트라우터 구조의 능력에 기인하여), 소프트라우터 구조가 일반적으로 더 나을 것으로 예상되나, 수렴시간이 링크 상태 데이터베이스 동기화에 연루된 여러 가지의 OSPF 타이머들이 주로 차지하기 때문에(그리고 요소들의 수의 총 감축 매우 크지 않다는 사실, 즉 단지 11 노드에서 8개의 노드로의 감축에 기인해서도), 차이는 작다.
표 3: 실험에 의한 OSPF 수렴 시간들(초)
이벤트 종래 소프트라우터
링크 실패 5.9 5.71
링크 복구 15.5 14.68
노드 실패 6.9 6.86
노드 복구 17.9 16.29
메시지 및 루트 변경 카운트(Message and Route Change Count)
다른 두 수행 메트릭들의 결과들을 소프트라우터 구조와 통상의 구조 간에 비교하였다. OSPF 메시지들의 총 수는 루트 갱신들/변경들의 총 수와 비교하였다. 링크 혹은 노드가 실패 혹은 복구되었을 때(혹은 새로운 것으로 되었을 때), OSPF는 네트워크 도처에 플러드되는 링크 갱신 메시지들을 트리거한다. 일단 모든 노 드들 상의 링크 상태 데이터베이스들이 동기화되고 정상상태에 도달하면, Dijkstra의 SPF 알고리즘을 사용하여 각 목적지에 대한 가장 짧은 경로를 계산하고 이에 따라 루트들이 갱신된다. 테이블 4는 통상의 구조(TR) 및 소프트라우터 구조(SR)에 대한 결과들을 나타낸 것이다. 테이블 4는 두 메트릭들에서, 소프트라우터 구조가 유력함을 보여준다. 다시, 이것은 총 노드들 및 소프트라우터 구조에서 대응하는 이웃들의 수가 적기 때문이다. 이에 따라, OSPF가 더 빠르게 수렴할 뿐만 아니라, 소프트라우터 구조에서 소수의 메시지들의 플러드되어 소수의 루트 변경들이 일어나게 된다.
표 4: 테스트베드 실험 결과
토폴로지 이벤트
(F)=실패
(R)=복구
#메시지들 루트 변경들
TR SR TR SR
테스트베드 링크(F) 177 77 36 14
링크(R) 237 190 29 24
노드(F) 238 80 55 20
노드(R) 555 290 61 29
시뮬레이션 결과들(Simulation Results)
더 큰 토포로지들에 대한 이들 메트릭들에 실패들이 미치는 영향을 시뮬레이션에서 조사하였다. 소프트라우터 구조에서 가능하는 최적화를 평가하기 위해 시뮬레이터가 사용되었다. 시뮬레이터는 시뮬레이트된 네트워크 내 각 라우터에 대해 실제 소프트웨어 프로그램(ospdf)의 동본들을 실행하였으며, 이에 따라 종래의 구조에 대해 최적화되었던 OSFP 구현을 사용하여 고 충실도 평가를 할 수 있었다. 이 시뮬레이터는 다음과 같이 소프트라우터 구조에서 OSPF 수행을 평가하기 위해 확장되었다. 전송 차원과 제어 차원을 분리시켰다. 소프트웨어 프로그램은 원격으로 CE(402)에서 실행되었다. 복수의 라우터들(FE들(406))의 상세를 소프트웨어 프로그램에 도입하였다. 소프트웨어 프로그램에 외부링크 및 내부링크의 상세도 도입하였다. 소프트웨어 프로그램에서 행해진 단일 링크 상태 데이터베이스가 유지되었으나, 각 FE(406)의 견지에서 Dijkstra의 SPF 알고리즘을 실행시킴으로써 도출된 각 FE(406)를 위한 고유의 라우팅 테이블들을 위해서 수정되었다. 통상의 구조에 비교해서 소프트라우터 구조에서 수행 이득들의 범위를 예시하기 위해 OSPF 방식 1 내지 3이 시뮬레이트되었다.
평가에서는, 전형적인 ISP 팝-레벨 토폴로지(20-노드, 44 링크 Tier 1 ISP 토폴로지; 도 6 참조) 뿐만 아니라 N-노드 링 및 완전-메시 토폴로지들이 고찰되었다. 링크 전파지연은 모든 링크들에 대해서 10ms로 설정되었다. 이들 토폴로지들이 변경되었을 때, 이를테면 링크 혹은 노드 실패/복구되었을 때, 3가지 수행 메트릭들이 평가되었다.
수렴 시간(Convergence Time)
단일 링크 실패 후에 수렴시간 메트릭에 대한 결과들을 얻었다. SPF 계산들을 얼마나 자주 실행할 것인가를 결정하는 SPF 지연 타이머는 1초로 설정되었다. 통상의 라우터 구조(TR)의 수행은 노드당 하나의 OSPF 프로세스로 소프트라우터 구조(SR)에서 OSPF 최적화 방식 1의 수행과 비교되었다. 방식 1에서, TR 및 SR 둘 다는 수렴 후에 동일한 수의 라우팅 변경들 및 동일한 라우팅 테이블들로 되었다. 하나의 CE(402)와 두 개의 CE들(402)이 전체 네트워크를 관리하는 경우가 고찰되었다. 모든 CE(402)는 이것인 제어하는 모든 FE들로부터 기껏해야 N/10 홉만큼 떨어져 있다. 한 CE(402)가 전체 네트워크를 관리하는 경우는 어떠한 OSPF 프로토콜 메시지 교환도 일어나지 않음을 의미한다. CE(402)는 링크 실패 이벤트를 통보받았을 때, 모든 FE들(406)에 대해 모든 쌍들의 SPF 계산들을 단순히 수행하였으며 갱신된 FIB 엔트리들을 FE들(406)에 다운로드하였다. 전체 네트워크에 대해 하나의 CE(402)를 갖는 것이 큰 네트워크들에 대해선 스케일러블하지 않을 수 있으나, 소 내지 중간 크기의 네트워크들에 대해선 매우 효율적일 수 있다. 또한, 하나의 논리 CE(402)가 있을 지라도, CE(402)는 핫 페일오버 및 높은 링크 접속성의 강건한 복수 블레이드 랙 서버에 구현될 수 있으므로 사용성이 크게 된다.
도 10은 링 토폴로지에서 노드 수에 대한 실험에 의한 평균 수렴시간을 도시한 차트이다. 각 데이터 포인트는 100 실험들로부터 평균 수렴시간이다. 모든 경우들에서, 수렴시간은 일반적으로 노드 수가 증가함에 따라 증가하였다. 그러나, 통상의 구조에서, 수렴시간의 증가율은 소프트라우터 구조에서의 증가율보다 훨씬 높다. 이것은 N OSPF 프로세스들을 실행하는 높은 오버헤드 및 그에 따라 통상의 구조에서 높은 메시지 처리 부하에 기인한다. 마지막으로, 전체 네트워크에 대해 하나의 CE(402)의 소프트라우터 구조 구현은 OSPF 프로토콜 처리 오버헤드가 거의 없었기 때문에 수렴시간을 가장 낮게 되었다.
도 11은 서로 다른 20-노드 토폴로지들(즉, 링, ISP, 및 메시)에 대한 실험 에 의한 평균 수렴시간을 도시한 차트이다. 통상의 구조에 있어서, 노드 급이 링에서 ISP로 증가됨에 따라, 수렴시간은 1640ms에서 1481ms로 향상되었다. 그러나, 토폴로지가, 모두 연결된 메시가 됨에 따라, 수렴시간은 약간 증가하였다(1481ms에서 1511ms로). 이것은 복수의 경로들로 도달한 증가된 OSPF 메시지들을 처리하는 부하에 기인한다. 소프트라우터 구조의 경우에, 수렴시간값들은 모든 구조에 대해서 낮았다. 또한, CE(402)와 FE(406)간의 최악의 경우의 거리(두 경우들에서 N/10 홉들로 설정된)가 수렴시간을 결정하기 때문에 링 및 ISP 토폴로지들에 있어 수렴시간 값들간에는 거의 차이가 없었다.
도 12는 100-노드 링 토폴로지에 대해서, SPF 지연 타이머 값에 대한 실험에 의한 평균 수렴시간을 나타낸 차트이다. 하나의 OSPF 벤더 구현에서 SPF 지연의 전형적인 값들을 5초이다. SPF 지연 타이머는 SPF 지연 타이머 값을 감소시킴으로써 수렴시간이 공세적으로 감소될 수도 있을 것인가를 판정하기 위해서 50ms 내지 5초로 가변시켰다. 소프트라우터 구조 경우에 CE(402)는 모든 FE(406)으로부터 기껏해야 10홉 떨어져 있고 전체 네트워크를 관리하는 하나의 CE(402)가 있었다. 도 12로부터, SPF 지연 타이머는 수렴시간을 결정하는 역할을 함이 명백하다. SPF 계산들이 계산 집약적이지만, 이들 계산들은 ms 정도로 걸릴 뿐이다. 따라서, SPF 지연값들(특히 초 단위 일 때) 및 전파지연(링들과 같은 큰 직경의 네트워크의 경우)이 우위를 점하는 경향이 있었다.
도 13은 하나의 CE(402)가 소프트라우터 구조를 관리하는 링 토폴로지에서 노드 수에 대한 실험에 의한 평균 수렴시간을 나타내는 차트이다. CE(402)가 이 FE들(406)로부터 이격된 홉들의 최악의 경우의 수를 가변시킴으로써, CE(402) 배치에 대한 민감도를 평가하였다. OSPF 계산은 CE(402)에서 수행되었기 때문에, FE(406)와 CE들(402)간에 레이턴시 메시지를 발송은 소프트라우터 구조에선 큰 오버헤드로 되었다. SPF 지연 타이머는 수렴시간의 공세적 감축을 고려하여 40ms로 설정되었다.
소프트라우터 구조에서 최악의 경우의 수렴시간은 CE(402)가 이의 NE(406)(N/2는 링들의 경우 네트워크 직경임)로부터 N/2 홉 떨어져 있는 경우에 대응하였다. 이 경우, 소프트라우터 구조 및 통상의 라우터 구조에서 수렴시간은 거의 동일하였다(도 13에서는 선들이 겹쳐져 있다). 이것은 총상의 라우터 구조에서 최악의 경우의 전파 지연(네트워크 직경)이 소프트라우터 구조에서 최악의 경우의 전파지연(CE-FE 거리)과 동일하기 때문이다.
이에 따라, 링크 실패 후의 수렴시간은 SPF 지연 타이머를 임의로 작게 하였다면 전파지연이 우위를 차지하였다. 그러나, SPF 지연 타이머는 네트워크 불안정성들에 대해서 보호하기 때문에, SPF 지연 타이머에 대한 매우 작은 값은 1-3 OSPF 프로세스들의 소프트라우터 구조에서보다는 100 OSPF 프로세스들의 통상의 라우터 구조에서 네트워크 불안정성을 야기하기가 훨씬 더 쉬울 것이다.
도 14는 노드 수에 대한 실험에 따른 실패 복구시간을 도시한 차트이다. ms 단위의 평균 실패 복구시간은 수직축에 나타내었고 노드 수(0, 10,...,100)는 수평축에 나타내었다. 도 7에 도시한 데이터는 N-노드 링 네트워크에 관한 시뮬레이션에서 온 것이다. 이 시뮬레이션에서, 이벤트는 단일 링크 실패이고 가장 짧은 경 로 제 1(SPF) 지연 타이머는 1초로 설정되고 얼마나 자주 SPF 계산이 실행되는가를 판정한다. 이 시뮬레이션에서 소프트라우터 구조에 있어서, CE는 이의 FE들로부터 기껏해야 N/10 홉 이격되어 있는 것으로 가정한다. 소프트라우터 구조에서는 소수의 OSPF 프로세스들 크기 정도가 있어, 실패 복구가 더 빨라지게 된다. 이 시뮬레이션에서, 소프트라우터 구조에 있어 가장 낮은 실패 복구 시간은 전체 네트워크에 대해 라우팅 계산을 수행하는 한 CE/OSFP 프로세스이다.
도 15는 50ms의 SPF 지연시간에 있어 노드 수에 대한 실험에 의한 실패 복구 시간을 나타낸 차트이다. 50ms SPF 지연 타이머는 소수의 OSPF 인스탄스들을 가진 소프트라우터 구조에 있어선 실제적이나, 이러한 설정은 수백 OSPF 인스탄스들을 가진 통상의 구조에선 네트워크 불안정성을 야기할 수도 있을 것이다. 50ms 실패 복구 시간은 소프트라우터 네트워크가 하나 이상의 주 CE/OSPF 프로세스들에 의해 관리되고 또한 CE에서 이의 FE들에의 전파지연이 작을 때 가능하다. CE들을 주의 깊게 배치하기는 것은 소프트라우터 구조의 실시예들을 설계하는 부분이다.
메시지 및 루트 변경 카운트(Message and Route Change Count)
다수의 OSPF 메시지들을 결정하고 네트워크에 변경에 이어 발생하는 변경들을 루트하기 위해서 한 세트의 실험들이 20-노드 링, 메시, 및 ISP 토폴로지들을 사용하여 수행되었다. 소프트라우터 구조의 경우에, 하나의 CE(402)로 전체 네트워크를 관리하게 하는 것은 교환되는 프로토콜 메시지들은 없을 것이기 때문에 오버헤드 메시징 면에선 최적이 될 것이다. 네트워크가 지리적으로 산재되어 있다 면, 위에서 논한 바와 같이, 네트워크를 관리하는 2개 내지 3개의 CE들(402)은 FE들(406)과 CE들(402)간에 전파 지연을 감소시킬 것이므로, 수렴은 더 빨라지게 된다. 이에 따라, 3개의 CE들(402)로 소프트라우터 구조를 관리하는 경우에 있어 통상적 결과들이 나타난다.
통상의 분산 OSPF 구현(TR)이 시뮬레이트되었으며 소프트라우터 구조에서 방식 1 및 3은 SR1 및 SR3로 하였다. SR1은 모든 내부 링크들에 알리며, 이에 따라서, TR에 비해 루트 변경 수는 감소되지 않으나, SR1은 네트워크에 소수의 OSPF 인스탄스들(800)이 있으므로 교환되는 OSPF 메시지들의 수는 현저하게 감소한다. SR3은 내부 링크들에 알리지 않음으로써 SR1을 더욱 최적화하여 SR1보다 루트 변경들이 더 작게 된다.
표 6: 시뮬레이션 결과들; 기호: L=링크, N=노드, F=실패, R=복구
토폴로지 이벤트 총 메시지 수(최대) 총 루트 변경 수
TR SR1 & SR3 TR & SR1 SR3
20 노드 링 L-F 38(2) 4(2) 340 86
L-R 57(6) 15(6) 340 86
N-F 110(6) 6(2) 327 88
N-R 148(12) 25(9) 388 122
20 노드 ISP L-F 86(9) 20(9) 198 100
L-R 171(23) 39(23) 198 100
N-F 553(64) 22(10) 1095 409
N-R 1064(105) 198(85) 1550 833
20 노드 메시 L-F 378(19) 262(96) 59 49
L-R 747(41) 450(170) 59 49
N-F 6046(357) 264(96) 380 310
표 6은 네트워크 평균 노드 급이 증감함에 따라, OSPF 메시지들의 수 및 변경 이벤트에 따라 루트 변경이 증가된 것이 관찰되었다. 이에 따라, 메시 토폴로 지들은 가장 큰 수의 메시지 카운트 및 루트 변경들을 나타내었으며, 그 다음으로 ISP 토폴로지, 마지막으로 링 토폴로지가 그러하였다.
두 번째, SR1은 TR에 비해 네트워크에서 처리된 총 OSPF 메시지들에서 큰 감축을 제공하고 링 토폴로지 및 ISP 토폴로지의 경우에, 단일 CE(402)에 의해 처리되는 최대 OSPF 메시지들에 현격한 감축을 제공함이 관찰되었다. 메시지 감축에 있어 백분율 이득들은 링 토폴로지들의 경우에 가장 컷으며 메시 토폴로지들에 있어서는 가장 낮았다. 이것은 링(메시) 토폴로지들이 가장 낮은(가장 큰) 수의 외부 링크들을 가지며 SR1이 모든 외부 링크로 이웃들을 수립하였기 때문이었다. SR1은 2개의 NE들(500) 간에 병렬 외부 링크들로 이웃들을 수립하지 않음으로써 더욱 최적화될 수도 있을 것이고, 따라서 교환되는 메시지가 더욱 감축될 것이다.
세 번째, SR1이 TR과 동일한 라우팅 수행을 달성하기 위해서 모든 링크들에 알리기 때문에, TR에 비해 루트 변경 메트릭에 관하여 어떠한 감축도 제공하지 않은 것으로 관찰되었다. SR3는 내부 링크들에 알리지 않았기 때문에, TR/SR1에 비해 루트 변경 수를 현저하게 감축시킬 수 있었다. 내부 링크들이 서로 근접한 FE들(406)을 연결하는 높은 대역폭의 링크들이었다면, 내부 링크들은 제로-코스트 링크들로서 간주될 수도 있을 것이며, 따라서, SR3는 이러한 네트워크에 적합할 것이다. 다시, 앞에서와 같이, 외부 링크들의 백분율이 링 토폴리지에서 메시 토폴로지로 증가됨에 따라 네트워크에서 총 루트 변경의 백분율이 감소하였다.
마지막으로, ISP 토폴로지에 대한 결과들이 고찰되었다. SR1은 노드 실패 이후에 처리된 메시지들의 총 수가 553에서 22로 감소할 수 있었고 어떤 노드에 의 해 처리된 메시지들의 최대 수는 64에서 10으로 감소하였다(84% 감축). 통상의 라우터 구조에서, ISP 토폴로지에서 모든 노드는 실패 이후에 단시간에 최대 메시지 카운트를 처리할 수 있어야 한다. 이와는 반대로, 소프트라우터 구조에서 CE들(402)은 가장 빠른 프로세서들을 가진 서버들이며 느린 제어 프로세서들을 가진 통상의 라우터 구조들보다는 소수의 메시지들을 처리한다. 또한, SR3에 의해서, 네트워크 내 루트 변경들의 수는 1095에서 409로 감소되었다. 이에 따라, 방식 SR1/SR3를 사용하는 소프트라우터 구조는 네트워크 실패의 결과로서 과부하 시나리오들을 취급하게 더 낫게 설치되므로 보다 나은 네트워크 안정성이 된다.
결과 요약(Results Summary)
실패에 이은 OSPF 수렴은 현 분산 네트워크에서는 이의 신뢰성 있는 플러딩 메커니즘에 기인해서 매우 효율적이다. 현 네트워크들에서 수렴시간의 우세한 부분은 SPF 지연 타이머에 기인한다. 수백 OSPF 프로세스들을 가진 현 네트워크들에서 네트워크 불안정성을 줄이기 위해, 5초의 내정된 SPF 지연 타이머 값들이 필요하나, 단지 2 혹은 3개의 OSPF 프로세스들이 전체 네트워크를 관리하는데 필요하므로, 소프트라우터 구조에서 OSPF 최적화는 SPF 지연 타이머 설정으로 공세적이 됨에 의해서 약 10ms 이하로 수렴시간들을 낮추게 하는데 도움을 준다. 마지막으로, 소프트라우터 구조에서 CE(402)와 FE(406)간의 레이턴시는 수렴시간에서 역할을 하므로 위에 논의한 주의 깊은 계획은 CE들(402)을 이들의 FE들(406)에 가깝게 배치시키는데 도움을 준다.
소프트라우터 구조에서 OSPF 최적화는 현 네트워크들에 비해 메시지 처리 및 루트 변경들에 기인한 과부하 감소에 더욱 극적인 영향을 미친다. 네트워크 내 모든 라우터들에서 소수의 OSPF 프로세스들이 관리되게 함으로써, 메시지 카운트는, 3개의 CE들(402)이 네트워크를 관리하는 경우에도, 최대 약 80%만큼 감소될 수 있다. 메시지 카운트 감축은 하나의 CE(402) 경우에 대해서는 100%가 될 것이다. 또한, NE(500)의 내부링크들이 OSPF 메시지들에서 영향을 받지 않는다면, 루트 변경들의 수는 현저하게 감소될 수 있다. 이에 따라, 수렴시간, 메시지 카운트, 및 루트 변경들에 의해 측정되는 네트워크 안정성은 소수의 CE들(402)로 네트워크 내 모든 FE들(406)을 관리시킴으로써 소프트라우터 구조의 실시예들에서 현저하게 향상될 수 있다.
영역내 라우팅(Inter-domain Routing)
영역내 라우팅 프로토콜들, 특히 BGP는 소프트라우터 구조에 배치되므로 많은 이점이 있게 된다.
도 16은 루트 리플렉터들을 구비한 종래의 네트워크를 도시한 것이다. 이 네트워크는 루트 리플렉터들을 구비한 BGP의 전형적인 배치이다. 외부 BGP(E-BGP)(1606)을 사용하는 큰 AS 네트워크(1604)에는 몇 개의 루트 리플렉터 클라이언트들(1600) 및 리플렉터들(1602)이 있다. 이러한 배치는 두 가지 주된 결점들이 있다. 구체적으로, 어떤 상태 하에서, 네트워크(1604)는 안정된 라우팅 상태에 도달함이 없이 일부 라우터가 라우팅 정보를 교환할 수도 있는 지속적 루트 동요(oscillation)가 될 수 있다. 루트 리플렉터 구조에 있어 다른 문제는 내부 BGP(I-BGP) 신뢰도이다. 하나의 I-BGP 구조 세션의 실패가 완전 메시 I-BGP 구조의 경우에 단지 두 개의 라우터들에만 영향을 미치나, 두 개의 루트 라우터들(1602)간 세션의 동일한 실패는 네트워크(1604)를 분할할 수도 있을 것이므로 신뢰도는 현저하게 낮아지게 된다.
도 17은 소프트라우터 구조의 실시예를 도시한 것이다. BGP AS 네트워크(1706)에는 FE/CE 프로토콜 클라이언트들(1700), I-BGP 메시(1702), 및 몇개의 E-BGP 1704의 통신이 있다. 도 17은 CE들(402) 간에 유지될 수 있는 완전 I-BGP 메시(1702)를 갖는다. 이것은 도 16에 도시한 종래 기술의 BGP AS 네트워크(1604)에서처럼 루트 리플렉터들(1600)을 사용하여 있을 수 있는 네트워크 불안정성을 제거한다. CE들(402)은 신뢰도를 증가시키기 위해서 1:N 용장성을 채용할 수 있다. FE들(406)은 단순 FE/CE 프로토콜만 실행시켜도 된다. 소프트라우터 구조에서 BGP 배치의 경우에, BGP를 실행시키는 CE들(402)의 수는 통상적으로 라우터들의 수보다 최소한 큰 크기로 적다. 따라서, 완전 I-BGP 메시는 CE들(402) 간에 쉽게 유지될 수 있다. CE들(402)은 표준 프로토콜을 사용하여 적합한 전송 테이블들을 모든 FE들(406)에 다운로드한다. 이에 따라, 지속적 루트 동요(oscillation) 문제가 소프트라우터 구조에서 손쉽게 해결된다면(루트 리플렉터가 없으므로), 이에 의해 네트워크 사용성이 증가한다. 또한, 소프트라우터 구조에서, I-BGP 메시는 라우터들의 제어 프로세서들에 1:1 용장성에 비해 이를테면 1:N(N>1)과 같은 높은 정도의 용장성을 채용하는 서버들 간에 존재한다. 이에 따라, BGP 안정성 및 신뢰도는 CE들(402)이 복수로 주재되고 페일오버에 대해 네트워크엔 복수의 CE들(402)이 있다고 하면, 소프트라우터 구조에서 현격하게 향상될 수 있다. 소프트라우터 구조에서 BGP의 구현에서, IGP 및 I-BGP가 아닌 FE들(406)과 통신하기 위해서 표준 프로토콜이 사용되고, 이는 FE들(406) 상의 소프트웨어를 단순화시키며, I-BGP 메시가 단일 AS 내 CE(402) 서버들 간에 사용된다.
소프트라우터 구조의 실시예들은 프로토콜 집성, 네트워크 설계, 및 부트스트랩 파라독스와 같은 많은 기술적 문제들을 극복한다. CE(402)에 단일 프로토콜 구현이 복수의 FE들(406)을 관리할 때 OSPF/BGP와 같은 프로토콜들이 어떻게 동작할 것인가가 결정되었다. OSFP에 있어서, 예비적 결과들은, 소프트라우터 네트워크가 하나 혹은 2개의 주 CE/OSPF 프로세스들에 의해 관리되고 CE(402)로부터 이의 FE들(406)까지의 전파지연이 작을 때 약 50ms 실패 복구 시간이 실현가능함을 보여준다. BGP의 경우, 완전 BGP-메시는 몇 개의 CE들(406) 간에 유지될 수 있으므로, 루트 리플렉터 구조 하에서 있을 수 있는 네트워크 불안정성을 제거한다. 네트워크 설계에서 CE들(402)의 배치방법 및 어떤 CE들(402)이 어떤 FE들(406)을 관리할 것인가가 결정되었다. 재귀 그래프 양분할에 기초한 방법은 CE들(402)을 배치할 곳을 확인하며 어느 세트의 FE들(406)을 각각의 CE(402)가 관리할 것인가를 확인한다. 부트스트랩 파라독스는, (즉, FE(406)은 패킷들을 그의 CE(402)에 루트하기 위해서, 갱신된 전송 테이블들을 필요로 하고, 또한 CE(402)는 전송 테이블들을 갱신할 수 있다), 순환성을 단절시키기 위해서 발견 프로토콜에 의해 해결되었다. 이 프로토콜은 각각의 FE(406)가 이의 CE(402)에 바인딩할 수 있게 하며 이들 간에 단순 라우팅 능력을 제공한다.
소프트라우터 구조의 한 애플리케이션은 차별적 특징들을 이서넷에 부가하는 것이다. 메트로 이서넷 배치들이 급속도로 확장하고 있다. 가상 경로 링크들(VPL)은 광역 배치에 주요 특징이지만 순수 이서넷 스위칭에서 벗어난다. MPLS 전송 하드웨어 및 IP 제어 차원에 대한 필요성이 있다. 신규 칩들은 전송 지원을 내장한다. VPL들에 제어 차원 필요성은 복합 소프트웨어를 실행시키기 위해서 이서넷 스위치들을 포함한다. 소프트라우터 구조의 실시예는 매 이서넷 스위치마다 복합 IP 소프트웨어를 필요로 하지 않음으로써 네트워크들을 단순화하는 CE들(402)을 포함한다. 커스터마화한 경로 통신을 가능하게 함으로써, 차별적 특징들을 갖춘 CE들(402)이 가능해진다.
소프트라우터 구조의 다른 애플리케이션은 POP에서 통합 라우팅하는 것이다. POP에 대한 총 코스트들은 소프트라우터 구조가 전용의 하드웨어가 아닌 범용 하드웨어로서 복수의 벤더들에 의한 표준 기반의 FE들을 사용하고 라우터 인터페이스들에 대한 이서넷과 유사한 가격능력을 갖기 때문에, 소프트라우터 구조를 사용하여 현저하게 감소될 수 있다. 개방형 소스 기반의 라우팅 소프트웨어는 개발업계에 산재한 개발에 영향을 준다. 소수의 제어기들이 필요하다. 15 라이터들을 가진 POP는 최근 30 제어기들을 가지며(1:1 용장성), 반면에 소프트라우터 네트워크는 약 2 내지 4개의 CE들(402)만을 필요로 한다.
도 18은 소프트라우터 구조의 실시예에 따른 POP(Point-of-Presence)에서 통합 라우팅을 도시한 것이다. 소프트라우터 구조의 다른 애플리케이션은 POP에서 라우팅을 통합하는 것이다. POP 이서넷 네트워크(1802)는 코어 라우터들(1804)에 의해 코어 네트워크(1806)에 연결된다. POP 이서넷 네트워크(1802)는 또한, 소프트라우터 서버들(CE들)(402), AAA(autentication, authorization, accounting) 서버들(1808)에 연결된다. 디지털 가입자 회선 액세스 멀티플렉서들(DSLAM)(1810) 및 에지 라우터들(1812)(예를 들면, IP/ATM/FrameRelay)는 FE들(406)에 연결되고, 이들은 POP 이서넷 네트워크(1802)에 연결된다. POP에 대한 전체 코스트들은 소프트라우터 구조가 전용의 하드웨어가 아닌 범용 하드웨어로서 복수의 벤더들에 의한 표준 기반의 FE들을 사용하고 라우터 인터페이스들에 대한 이서넷과 유사한 가격능력을 갖기 때문에, 소프트라우터 구조를 사용하여 현저하게 감소될 수 있다. 개방형 소스 기반의 라우팅 소프트웨어는 개발업계에 산재한 개발에 영향을 준다. 소수의 제어기들이 필요하다. 15 라이터들을 가진 POP는 최근 30 제어기들을 가지며(1:1 용장성), 반면에 소프트라우터 네트워크는 약 2 내지 4개의 CE들(402)만을 필요로 한다.
요약하여, 라우터 네트워크들은 점점 더 복잡해지고 있다. 도래하는 애플리케이션들 및 수행 요건들은 IP에 더욱 많은 기능들을 구동하고 있다. 너무 많은 IP 기능들을 라우터들에 넣음으로써 네트워크의 복수의 라우터들에 복합 기능들이 중복하게 된다. 소프트라우터 구조에서 소프트웨어에서 라우터 하드웨어의 해체는 이러한 문제를 해결하며 주요 이점이 추가될 가능성을 갖는다. 소프트라우터 구조에서, 라우터 제어 차원 및 전송 차원은 전송 차원이 패킷 전송 요소들을 포함하고 제어 차원이 제어 요소 서버들 및 특징 서버들을 포함하도록 해체된다. 제어 차원 및 전송 차원은 표준 프로토콜들을 사용하여 통신한다. 이러한 개념의 일부 이점들은 개방형 API들 및 증가된 배치에 기인해서, 복합 기능들의 일체화, 낮은 코스트들, 새로운 애플리케이션들의 보다 빠르고 비용이 덜 드는 도입과, 다른 이점들 중에서도, 증가된 스케일러비리티, 신뢰도, 및 보안을 포함한다.
도 19는 컴퓨터를 도시한 블록도이다. 컴퓨터(1900)는 본 발명의 실시예들을 구현하기 위해 채용될 수 있다. 컴퓨터(1900)는 각종 프로그램들(1944) 및 데이터(1946)를 저장하기 위한 메모리(1940)뿐만 아니라 프로세서(1930)를 포함한다. 메모리(1940)는 또한 프로그램들(1944)을 지원하는 운영 시스템(1942)을 저장할 수도 있다.
프로세서(1930)는 메모리(1940)에 저장된 소프트웨어 루틴들의 실행을 거드는 회로들뿐만 아니라, 전원들, 클럭회로들, 캐시 메모리 등과같은 통상의 지원회로와 같이 동작한다. 이와 같으므로, 소프트웨어 방법들로서 여기서 논한 단계들의 일부는 하드웨어 내에, 예를 들면 각종 방법 단계들을 수행하기 위해 프로세서(1930)와 같이 동작하는 회로로서 구현될 수도 있음을 알 것이다. 컴퓨터(1900)은 또한 컴퓨터(1900)와 통신하는 각종 기능요소들간에 인터페이스를 형성하는 입력/출력(I/O) 회로를 내장한다.
컴퓨터(1900)를, 본 발명에 따른 각종 기능들을 수행하게 프로그램된 범용 컴퓨터로서 나타내었으나, 본 발명은 예를 들면 ASIC 혹은 필드 프로그래머블 게이트 어레이(FPGA)와 같은 하드웨어로 구현될 수 있다. 따라서, 여기 기재된 프로세스 단계들은 소프트웨어, 하드웨어 혹은 이들의 조합에 의해 동등하게 수행되는 것 으로 넓게 해석된다.
본 발명은 컴퓨터 명령들이 컴퓨터에 의해 처리될 때 컴퓨터 명령들은 본 발명의 방법들이 호출되게 혹은 제공되게 컴퓨터 동작을 수정하는 컴퓨터 프로그램 제품으로서 구현될 수 있다. 본 발명의 방법들을 호출하기 위한 명령들은 고정 혹은 착탈가능의 매체들에 저장되고, 방송 매체 혹은 그 외 신호 보존 매체에 데이터 스트림으로서 전송되고, 및/또는 명령들에 따라 동작하는 계산 디바이스 내에 작업 메모리 내에 저장될 수 있다.
본 발명은 낮은 코스트, 새로운 수익 기회, 보다 나은 스케일러빌리티, 부가된 신뢰도, 및 증가된 보안을 포함하여, 고객들에게 많은 이점이 있다. 낮은 코스트들은 낮은 자본지출의 및 전용 제어 차원 서버들이 소수의 관리 점들 및 낮은 운영비를 뜻하는 것으로 이를 갖춘 범용 표준 기반의 하드웨어에서 온다. 개방형 애플리케이션 프로그래밍 인터페이스들(API) 및 증가된 배치를 사용하여 보다 쉽게 부가되는 새로운 서비스들을 지원하는 네트워크 기반의 애플리케이션들이 집중화된 관 리를 통해 더욱 단순해지므로, 새로운 수익기회들이 있다. 집중화된 제어 차원 서버들은 잘 확립되어 있는 서버 스케일링 기수들을 사용하여 스케일하기가 쉽기 때문에, 더 나은 스케일러빌리티가 있다. 서버 기반 제어 차원에서 구현하기가 더 쉬운, 전송 요소들은 감소된 소프트웨어 및 그 외 신뢰도 향상 메커니즘들(예를 들면, 페일오버 및 과부하 제어)에 기인해서 더욱 강건하기 때문에, 추가된 신뢰성이 있다. 집중화된 제어 차원 서버들은 주위 방어 시스템들, 예를 들면 방호벽들을 사용하여 보안하기가 쉽기 때문에 증가된 보안성이 있다.
낮은 자본지출 및 운영비들이 있다. 소프트라우터 구조는 제어 요소와 전송 요소의 기술개혁 곡선을 분담시킨다. 하드웨어 벤더들은 더 높은 속도 및 밀도에 중점을 둘 수 있다. 새로운 소프트웨어 벤더들은 시장에 진입할 수 있고 애플리케이션 및 보다 용이한 제어성에 중점을 둘 수 있다. 보다 경쟁자들은 더 낮은 가격들을 내 놓을 것이다. CE들은 고가의 라우터 제어 보드들이 아닌 저가의 범용 계산 블레이드들로 구성된다. 제어 서버들은 많은 라우터들에 의해 공유되므로 효율이 더 나아지게 된다. CE들을 갖추기 때문에, 서버 플랫폼들의 중앙처리장치(CPU) 가격-성능 곡선에 영향을 미친다. FE들은 대부분이 하드웨어에 기반하므로 계층2 디바이스들과 유사하게, 거의 관리가 필요없다. 제어 차원 서버들이 소수라는 것은 관리점들을 소수개임을 의미한다. 오-구성의 가능성이 감소된다.
소프트라우터 구조는 통상의 네트워크보다는 더 신뢰성이 있게 설계된다. FE 소프트웨어는 CE 소프트웨어보다는 큰 크기로 더 간단하기 때문에 FE들은 더욱 강건해진다. CE들의 전략적 배치 및 이들 요소들간의 페일오버는, CE에의 접속성이 없이는 일단의 전송 요소들이 고립되는 간소한 네트워크 부분들에선 제외하고, 기 지정된 수의 실패들을 네트워크가 취급하게 한다.
제어점들의 소수이므로, 라우터 수렴이 더 빨라지게 되고 네트워크 안정성이 더 나아진다. 실패 후에 동기화할 OSFP 링크-상태 데이터베이스들이 소수이다. 실패 검출 시간들이 변경되지 않는다면 수렴은 더 빠르다. 이들 서버들 간에 완전-메시 I-BGP의 실현이 가능하다. BGP 루트 리플렉터 구조에 관한 일부 네트워크 불안성정 문제들이 제거될 수 있다.
보안은 통상의 모델에 비해 소프트라우터 구조에서 향상된다. 전용의 라우터 운영 시스템들(OS)은 리눅스와 같은 개방형 소스 제어 소프트웨어만큼 폭넓게 테스트되지 않는다. 라우터 OS에의 어택이 최근에 증가되고 있다. 복수의 제어 블레이드들은 하나 혹은 2개의 제어 블레이드보다는 낫다. 악의적 트래픽에 기인한 과부하는 소프트라우터 구조 내 서버에 상당 수의 제어 블레이드들에 걸쳐 분산될 수 있다. 정교한 통계적 분석이 침입검출을 위해 복수의 블레이트 소프트라우터 서버들에서 수행될 수 있다. 소프트라우터 구조의 실시예들에서 소수의 제어 차원 서버들은 전용 방호벽을 사용하여 보안하기가 더 쉽게 한다. 별도의 시그널링 네트워크가, 공유된 시그널링 네트워크보다 낫다. 소프트라우터 구조의 실시예들은 제어 서버들을 연결하는 별도의 시그널링 네트워크의 가능성을 허용한다.
라우터들을 전송 요소와 제어 요소로 해체하는 것은 위에 기술된 소프트라우터 구조의 실시예들의 토대이다. 전송 요소들은 이를테면 패킷 필터링, IP 패킷 헤더 중 가장 긴 프레픽스 매치들, 트래픽 관리, 및 스위칭과 같은 대부분이 반복적인 하드웨어 집약적 패킷 처리 작업들을 수행한다. 이들 전송 요소들은 모든 트래픽을 전송하며 네트워크 전체에 걸쳐 분산하여 있다. 네트워크 내 전략적 위치들에 배치되고 소수인 제어 요소들은 현재의 라우터들의 모든 제어 로직을 실현한다. 결국, 이들은 전송 요소들보다는 더욱 더 소프트웨어 집약적이고 복잡하다. 통상의 라우터는 기껏해야 두 개의 제어 요소들로 배치된(이들에 정적으로 연관된) 한 세트의 전송 요소들로 구성된다. 본 발명은 제어 요소가 한 특정의 전송 요소로부터 복수의 네트워크 홉들만큼 이격하여 있을 수 있고 전송 요소와 제어 요소간 에 바인딩이 동적인 새로운 패러다임을 도입한다. 소프트라우터 구조의 실시예들은 향상된 안정성 및 증가된 신뢰도를 포함한 많은 기술적 이점을 갖는다. 테스트베드로부터 시뮬레이션 및 결과들은 이들 이점들을 말해준다. 소수의 제어 요소들이 상당 수의 전송 요소들에 대한 루트 계산들을 수행하는 구조는 라우터들을 간단하게 할 가능성 뿐만아니라, 제어 차원 상태의 네트워크뷰에 보다 용이한 액세스를 제공한다.
전술한 바는 본 발명의 여러 실시예들에 대한 것이지만, 본 발명의 다른 실시예들이 본 발명의 내에서 나올 수 있다. 따라서, 본 발명의 적합한 범위는 다음의 청구항들에 따라 결정된다.
본 발명에 따라, 소프트라우터 구조는 라우터의 제어 실체들을 전송 성분들과 분리함으로써 라우터들을 해체하고, 이들 간에 동적 바인딩을 할 수 있게 한다. 네트워크 안정성은 OSPF 및 BGP와 같은 라우팅 프로토콜들을 함께 원격으로 호스트되게 함으로써 향상된다.

Claims (10)

  1. 적어도 제 1 전송 요소(FE), 제 1 제어 요소(CE) 및 제 1 네트워크 요소(NE)를 포함하는 네트워크에 있어서:
    복수의 FE들을 포함하는 제 1 FE 세트; 및
    분산 제어의 가변도(varying degree)를 갖는 제 1 FE 세트를 제어하는 제 1 CE로서, 상기 제 1 CE는 상기 제 1 FE 세트 내의 각각의 FE를 대신해 복수의 프로토콜들 중 하나의 제 1 프로토콜 프로세스를 제공하고, 상기 제 1 CE는 상기 제 1 FE 세트 내의 상기 FE들로부터 물리적으로 먼 위치이고, 상기 제 1 CE는 상기 제 1 FE 세트 내의 각각의 FE에 동적으로 바인딩(binding)되어 다수의 바인딩들이 수행되도록 하는, 상기 제 1 CE를 포함하고,
    상기 FE들의 각각은 동적 바인딩 프로토콜을 이용하여 상기 FE를 관리할 수 있는 제 1 CE를 발견하도록 구성되고, 상기 제 1 CE는 상기 제 1 FE 세트 내의 상기 FE들의 각각에 의해 상기 제 1 CE를 발견하기 위한 각각의 요청들에 응답하도록 구성되고, 상기 제 1 FE 세트 내의 상기 FE들의 각각에 의해 상기 제 1 CE를 발견하기 위한 상기 제 1 CE에 의한 각각의 응답들은 상기 제 1 FE 세트 내의 상기 FE들에 의해 이용되어 상기 제 1 CE와 동적으로 바인딩하도록 되고,
    상기 제 1 CE 및 상기 제 1 FE 세트 내의 상기 FE들은 상기 제 1 NE를 형성하는, 네트워크.
  2. 제 1 항에 있어서,
    다수의 CE들은 상기 제 1 NE 내의 상기 제 1 FE 세트를 제어하는, 네트워크.
  3. 제 1 항에 있어서,
    상기 제 1 FE 세트 내의 FE들과는 다른 복수의 FE들을 포함하는 제 2 FE 세트;
    상기 제 2 FE 세트를 제어하는 제 2 CE로서, 상기 제 2 CE는 상기 제 2 FE 세트를 대신해 하나의 제 2 프로토콜 프로세스를 실행하고, 상기 제 2 CE는 상기 제 2 FE 세트로부터 물리적으로 먼 위치인, 상기 제 2 CE; 및
    상기 제 2 CE 및 상기 제 2 FE 세트를 포함하는 제 2 NE를 더 포함하는, 네트워크.
  4. 제 3 항에 있어서,
    단일 프로토콜 프로세스는 상기 제 1 NE의 상기 FE들을 관리하고, 상기 제 1 NE의 상기 FE들에 대해 영역내 루트들(intra-domain routes)을 계산하는, 네트워크.
  5. 제 4 항에 있어서,
    상기 내부 링크들 및 상기 내부 링크들의 중량감은 이웃들에 광고되는, 네트워크.
  6. 네트워크 구조에 있어서:
    복수의 전송 요소들(FE들);
    복수의 제어 요소들(CE들)로서, 각각의 CE는 다른 CE들과 상이한 상기 FE들의 세트를 제어하고, 상기 CE들은 상기 FE들로부터 물리적으로 먼 위치인, 상기 복수의 제어 요소들(CE들); 및
    상기 CE들 사이에 완전 내부 경계 게이트웨이 프로토콜(full internal border gateway protocol(I-BGP)) 메시를 포함하고,
    상기 네트워크 구조는 각각의 FE를 상기 CE들 중 하나에 동적으로 바인딩하는 동적 바인딩 프로토콜을 수행하도록 구성되고, 상기 동적 바인딩 프로토콜은 각각의 FE로 하여금 상기 FE를 관리할 수 있는 상기 CE들 중 하나를 발견하게 하여 다수의 바인딩들이 수행될 수 있도록 하는 발견 프로토콜을 포함하고,
    상기 FE들의 각각은 그의 이웃들 각각에 간청 메시지를 주기적으로 방송하도록 구성되고,
    상기 CE들의 각각은, 간청 메시지를 방송하는 FE의 이웃인 경우, 상기 간청 메시지가 수신된 상기 FE에 그의 식별을 광고함으로써 응답하도록 구성되고,
    상기 FE들의 각각은, 간청 메시지를 방송하는 FE의 이웃인 경우, 상기 FE에 의해 이미 학습된 모든 CE들에의 도달 가능성 정보로 응답하도록 구성되는, 네트워크 구조.
  7. 제 6 항에 있어서,
    영역내 라우팅 및 영역간 라우팅을 더 포함하는, 네트워크 구조.
  8. 제 6 항에 있어서,
    복수의 코어 라우터들,
    상기 코어 라우터들에 접속된 코어 네트워크,
    복수의 전송 요소들(FEs),
    복수의 제어 요소들(CEs)로서, 각각의 CE는 하나 이상의 상기 FE들을 제어하고, 각각의 CE는 그의 제어된 FE들에 동적으로 바인딩되고, 각각의 CE는 그의 제어된 FE들로부터 물리적으로 먼 위치이고, 각각의 CE는 표준 프로토콜을 통해 그의 제어된 FE들과 통신하는, 상기 복수의 제어 요소들(CEs), 및
    상기 코어 라우터들에 의해 상기 코어 네트워크에 접속되고, 상기 CE들에 접속되고, 상기 FE들에 접속되는 포인트-오브-프레즌스(POP) 이더넷 네트워크(point-of-presence(POP) Ethernet network)를 더 포함하는, 네트워크 구조.
  9. 제 6 항에 있어서,
    복수의 FE들로서, 각각의 FE는 그 FE를 대신해 프로토콜 프로세스를 제공하는 적어도 하나의 CE에 의해 제어 가능한, 상기 복수의 FE들을 더 포함하고,
    각각의 FE는 상기 CE로부터 물리적으로 먼 위치이고,
    각각의 FE는 상기 CE에 동적으로 바인딩되는, 네트워크 구조.
  10. 제 6 항에 있어서,
    복수의 FE들을 제어하는 CE로서, 상기 CE는 각각의 FE를 대신해 프로토콜 프로세스를 제공하는, 상기 CE, 및
    각각의 FE에 상기 CE를 동적으로 바인딩하는 동적 바인딩 프로토콜을 더 포함하고,
    상기 CE는 상기 FE들로부터 물리적으로 먼 위치인, 네트워크 구조.
KR1020050102888A 2004-11-01 2005-10-31 소프트라우터 프로토콜 해체 KR101237862B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US62388504P 2004-11-01 2004-11-01
US60/623,885 2004-11-01
US11/147,472 US8068408B2 (en) 2004-11-01 2005-06-08 Softrouter protocol disaggregation
US11/147,472 2005-06-08

Publications (2)

Publication Number Publication Date
KR20060092977A KR20060092977A (ko) 2006-08-23
KR101237862B1 true KR101237862B1 (ko) 2013-02-28

Family

ID=35457257

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050102888A KR101237862B1 (ko) 2004-11-01 2005-10-31 소프트라우터 프로토콜 해체

Country Status (6)

Country Link
US (2) US8068408B2 (ko)
EP (1) EP1653688B1 (ko)
JP (1) JP4790376B2 (ko)
KR (1) KR101237862B1 (ko)
CN (1) CN1783841B (ko)
DE (1) DE602005018431D1 (ko)

Families Citing this family (204)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7792987B1 (en) * 2003-04-21 2010-09-07 Juniper Networks, Inc. Supporting virtual private networks using a first network topology for forwarding and a subset of the first network topology or a smaller topology for signaling
US7376078B1 (en) * 2004-03-24 2008-05-20 Juniper Networks, Inc. Selective replay of a state information within a computing device
US20060090003A1 (en) * 2004-10-22 2006-04-27 Microsoft Corporation Rendezvousing resource requests with corresponding resources
US9100266B2 (en) * 2004-11-01 2015-08-04 Alcatel Lucent SoftRouter protocol failovers
US8953432B2 (en) * 2004-11-01 2015-02-10 Alcatel Lucent Softrouter dynamic binding protocol
US9014181B2 (en) * 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US8068408B2 (en) * 2004-11-01 2011-11-29 Alcatel Lucent Softrouter protocol disaggregation
US7978708B2 (en) * 2004-12-29 2011-07-12 Cisco Technology, Inc. Automatic route tagging of BGP next-hop routes in IGP
US7417947B1 (en) 2005-01-05 2008-08-26 Juniper Networks, Inc. Routing protocol failover between control units within a network router
US7684351B2 (en) * 2005-02-07 2010-03-23 Cisco Technology, Inc. Inter-domain optimization trigger in PCE-based environment
KR101406922B1 (ko) 2005-10-05 2014-06-20 노오텔 네트웍스 리미티드 공급자 링크 상태 브리징
US8059647B2 (en) * 2005-10-05 2011-11-15 Nortel Networks Limited Multicast implementation in a link state protocol controlled ethernet network
US20070101019A1 (en) * 2005-11-03 2007-05-03 Cromer Daryl C Apparatus, system, and method for managing response latency
US7551627B2 (en) * 2005-11-18 2009-06-23 At&T Intellecutal Property I, L.P. Offloading routing functions from network routers
US7835378B2 (en) * 2006-02-02 2010-11-16 Cisco Technology, Inc. Root node redundancy for multipoint-to-multipoint transport trees
JP4638849B2 (ja) * 2006-08-25 2011-02-23 日本電信電話株式会社 機能分散型通信装置および経路制御方法
US20080107027A1 (en) * 2006-11-02 2008-05-08 Nortel Networks Limited Engineered paths in a link state protocol controlled Ethernet network
JP2008160385A (ja) * 2006-12-22 2008-07-10 Nec Corp ネットワーク経路制御システム、経路制御装置および経路制御方法
EP2109965B1 (en) * 2007-02-02 2015-04-08 Groupe Des Ecoles Des Telecommunications (GET) Institut National Des Telecommunications (INT) Autonomic network node system
JP4630298B2 (ja) * 2007-02-22 2011-02-09 日本電信電話株式会社 機能分散型通信装置、構成要素結合制御方法、およびプログラム
EP1976200A1 (en) * 2007-03-30 2008-10-01 British Telecommunications Public Limited Company Network bootstrapping
US7796537B2 (en) * 2007-04-17 2010-09-14 Cisco Technology, Inc. Creating non-transit nodes in a link network
CN101068214B (zh) * 2007-06-26 2013-01-30 华为技术有限公司 一种路由收敛方法和设备
CN104113433B (zh) 2007-09-26 2018-04-10 Nicira股份有限公司 管理和保护网络的网络操作系统
US8238314B2 (en) * 2007-09-27 2012-08-07 Alcatel Lucent Method and apparatus for providing a distributed forwarding plane for a mobility home agent
US8396988B2 (en) * 2007-12-19 2013-03-12 At&T Intellectual Property I, L.P. Method and system for survival of data plane through a total control plane failure
JP4559497B2 (ja) * 2008-02-20 2010-10-06 日本電信電話株式会社 機能分散型パケット転送システムおよびその制御方法
US8996683B2 (en) * 2008-06-09 2015-03-31 Microsoft Technology Licensing, Llc Data center without structural bottlenecks
US8325720B2 (en) * 2008-07-17 2012-12-04 NETBRAIN Technologies, Inc System and method for simulating IP network routing
CN102177685B (zh) * 2008-07-31 2015-03-25 泰克莱克股份有限公司 用于使用采用域名系统(dns)分配给互联网协议(ip)网络服务器的别名主机名标识符来抑制去往ip网络服务器的业务的方法、系统和计算机可读介质
CN101340372B (zh) * 2008-08-21 2012-09-19 中国移动通信集团公司 号码自动路由方法、更新方法、撤销方法、路由器及设备
WO2010073996A1 (ja) 2008-12-25 2010-07-01 株式会社日立製作所 通信システム及び通信制御装置
CA2913167C (en) 2009-04-01 2018-06-12 Nicira, Inc. Method and apparatus for implementing and managing virtual switches
US9065743B2 (en) * 2009-12-24 2015-06-23 At&T Intellectual Property I, L.P. Determining connectivity in a failed network
CN102714628B (zh) 2010-01-05 2015-11-25 日本电气株式会社 通信系统、控制装置、处理规则设置方法和分组传输方法
US9813252B2 (en) 2010-03-23 2017-11-07 Juniper Networks, Inc. Multicasting within a distributed control plane of a switch
US8903942B2 (en) * 2010-03-23 2014-12-02 Juniper Networks, Inc. Methods and apparatus for forwarding-state transport in a distributed control plane
US20130067488A1 (en) * 2010-05-19 2013-03-14 Hughes Systique India Private Limited Method and system for efficient inter- process communication in a high availability system
EP2583415B1 (en) * 2010-06-15 2018-07-25 Tekelec, Inc. Method, diameter node, and computer readable medium for providing dynamic origination-based routing key registration in a diameter network
US8761036B2 (en) 2010-07-06 2014-06-24 Nicira, Inc. Network control apparatus and method with quality of service controls
US10103939B2 (en) 2010-07-06 2018-10-16 Nicira, Inc. Network control apparatus and method for populating logical datapath sets
US8964528B2 (en) 2010-07-06 2015-02-24 Nicira, Inc. Method and apparatus for robust packet distribution among hierarchical managed switching elements
US9680750B2 (en) 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
US9525647B2 (en) 2010-07-06 2016-12-20 Nicira, Inc. Network control apparatus and method for creating and modifying logical switching elements
CN101909021A (zh) * 2010-07-27 2010-12-08 清华大学 Bgp网关设备及利用该设备实现通断网关功能的方法
CN101917414B (zh) * 2010-07-28 2013-06-05 清华大学 Bgp分类网关设备及利用该设备实现网关功能的方法
CN102377661A (zh) * 2010-08-24 2012-03-14 鸿富锦精密工业(深圳)有限公司 刀片服务器及在其中建立刀片最短传输路径的方法
CN103392008B (zh) 2010-09-07 2017-10-20 加利福尼亚大学董事会 通过持续性酶以一个核苷酸的精度控制dna在纳米孔中的移动
US8908686B1 (en) * 2010-12-08 2014-12-09 Juniper Networks, Inc. Distributed generation of hierarchical multicast forwarding structures
CN103262482B (zh) 2010-12-10 2016-09-07 日本电气株式会社 通信系统、控制设备和节点控制方法
US10033585B2 (en) * 2010-12-15 2018-07-24 Juniper Networks, Inc. Methods and apparatus related to a switch fabric system having a multi-hop distributed control plane and a single-hop data plane
US9282060B2 (en) * 2010-12-15 2016-03-08 Juniper Networks, Inc. Methods and apparatus for dynamic resource management within a distributed control plane of a switch
US8665883B2 (en) * 2011-02-28 2014-03-04 Alcatel Lucent Generalized multi-homing for virtual private LAN services
JP5732550B2 (ja) 2011-03-03 2015-06-10 テケレック・インコーポレイテッドTekelec, Inc. ダイアメータシグナリングメッセージを強化するための方法、システム、およびコンピュータ可読媒体
JP5779259B2 (ja) * 2011-03-18 2015-09-16 テケレック・インコーポレイテッドTekelec, Inc. 構成可能なダイアメータアドレス解決のための方法、システムおよびコンピュータ読取可能媒体
US9043452B2 (en) 2011-05-04 2015-05-26 Nicira, Inc. Network control apparatus and method for port isolation
JP5910811B2 (ja) * 2011-07-27 2016-04-27 日本電気株式会社 スイッチ装置の制御システム、その構成制御装置および構成制御方法
US8559314B2 (en) * 2011-08-11 2013-10-15 Telefonaktiebolaget L M Ericsson (Publ) Implementing OSPF in split-architecture networks
US9209998B2 (en) 2011-08-17 2015-12-08 Nicira, Inc. Packet processing in managed interconnection switching elements
CN107071086B (zh) 2011-08-17 2020-06-05 Nicira股份有限公司 逻辑l3路由
US20130070761A1 (en) * 2011-09-20 2013-03-21 International Business Machines Corporation Systems and methods for controlling a network switch
EP3614631A1 (en) 2011-09-22 2020-02-26 Nec Corporation Communication terminal, communication method, and program
US9137107B2 (en) 2011-10-25 2015-09-15 Nicira, Inc. Physical controllers for converting universal flows
US9288104B2 (en) 2011-10-25 2016-03-15 Nicira, Inc. Chassis controllers for converting universal flows
US9203701B2 (en) 2011-10-25 2015-12-01 Nicira, Inc. Network virtualization apparatus and method with scheduling capabilities
US9178833B2 (en) 2011-10-25 2015-11-03 Nicira, Inc. Chassis controller
WO2013074844A1 (en) 2011-11-15 2013-05-23 Nicira, Inc. Load balancing and destination network address translation middleboxes
JP6011632B2 (ja) * 2012-02-29 2016-10-19 日本電気株式会社 通信装置、通信方法、通信システムおよびプログラム
US9137142B2 (en) * 2012-03-31 2015-09-15 Juniper Networks, Inc. Reduced traffic loss for border gateway protocol sessions in multi-homed network connections
US9843476B2 (en) * 2012-04-18 2017-12-12 Nicira, Inc. Using transactions to minimize churn in a distributed network control system
US8879392B2 (en) 2012-04-26 2014-11-04 Hewlett-Packard Development Company, L.P. BGP security update intercepts
CN102739774B (zh) * 2012-05-28 2015-05-27 中国科学院软件研究所 一种云计算环境下的取证方法及系统
US9231892B2 (en) 2012-07-09 2016-01-05 Vmware, Inc. Distributed virtual switch configuration and state management
US9369371B2 (en) 2012-10-05 2016-06-14 Cisco Technologies, Inc. Method and system for path monitoring using segment routing
US9049233B2 (en) 2012-10-05 2015-06-02 Cisco Technology, Inc. MPLS segment-routing
CN102932170B (zh) * 2012-10-22 2016-06-22 中兴通讯股份有限公司 网元负载不均检测处理方法、装置及其系统
US20150256455A1 (en) * 2012-10-31 2015-09-10 Nec Corporation, Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
US9979595B2 (en) 2012-12-18 2018-05-22 Juniper Networks, Inc. Subscriber management and network service integration for software-defined networks having centralized control
US9100285B1 (en) 2012-12-18 2015-08-04 Juniper Networks, Inc. Dynamic control channel establishment for software-defined networks having centralized control
US8711855B1 (en) * 2012-12-18 2014-04-29 Juniper Networks, Inc. Topology discovery, control channel establishment, and datapath provisioning within an aggregation network with centralized control
US10397101B1 (en) 2012-12-27 2019-08-27 Sitting Man, Llc Routing methods, systems, and computer program products for mapping identifiers
US10411998B1 (en) 2012-12-27 2019-09-10 Sitting Man, Llc Node scope-specific outside-scope identifier-equipped routing methods, systems, and computer program products
US10404582B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using an outside-scope indentifier
US10411997B1 (en) 2012-12-27 2019-09-10 Sitting Man, Llc Routing methods, systems, and computer program products for using a region scoped node identifier
US10419334B1 (en) 2012-12-27 2019-09-17 Sitting Man, Llc Internet protocol routing methods, systems, and computer program products
US10904144B2 (en) 2012-12-27 2021-01-26 Sitting Man, Llc Methods, systems, and computer program products for associating a name with a network path
US10212076B1 (en) 2012-12-27 2019-02-19 Sitting Man, Llc Routing methods, systems, and computer program products for mapping a node-scope specific identifier
US10374938B1 (en) 2012-12-27 2019-08-06 Sitting Man, Llc Routing methods, systems, and computer program products
US10404583B1 (en) 2012-12-27 2019-09-03 Sitting Man, Llc Routing methods, systems, and computer program products using multiple outside-scope identifiers
US10397100B1 (en) 2012-12-27 2019-08-27 Sitting Man, Llc Routing methods, systems, and computer program products using a region scoped outside-scope identifier
US10419335B1 (en) 2012-12-27 2019-09-17 Sitting Man, Llc Region scope-specific outside-scope indentifier-equipped routing methods, systems, and computer program products
US10476787B1 (en) 2012-12-27 2019-11-12 Sitting Man, Llc Routing methods, systems, and computer program products
US10447575B1 (en) 2012-12-27 2019-10-15 Sitting Man, Llc Routing methods, systems, and computer program products
US10587505B1 (en) 2012-12-27 2020-03-10 Sitting Man, Llc Routing methods, systems, and computer program products
CN103051560B (zh) * 2013-01-07 2015-06-03 浙江工商大学 一种转发和控制分离系统中拥塞控制的实现方法
US9559954B2 (en) 2013-03-11 2017-01-31 Cisco Technology, Inc. Indexed segment ID
US9565160B2 (en) 2013-03-11 2017-02-07 Cisco Technology, Inc. Advertisement of adjacency segment identifiers
US9537718B2 (en) 2013-03-15 2017-01-03 Cisco Technology, Inc. Segment routing over label distribution protocol
US9537769B2 (en) 2013-03-15 2017-01-03 Cisco Technology, Inc. Opportunistic compression of routing segment identifier stacks
US9374302B2 (en) 2013-04-26 2016-06-21 Brocade Communications Systems, Inc. Distributed methodology for peer-to-peer transmission of stateful packet flows
CN104168194B (zh) * 2013-05-15 2018-01-02 华为技术有限公司 集群网络路径控制方法、设备和集群网络系统
US9432215B2 (en) 2013-05-21 2016-08-30 Nicira, Inc. Hierarchical network managers
CN103401695B (zh) * 2013-06-21 2017-02-22 浙江工商大学 基于转发与控制网络件架构中控制件失效检测和恢复方法
US9432252B2 (en) 2013-07-08 2016-08-30 Nicira, Inc. Unified replication mechanism for fault-tolerance of state
US9602312B2 (en) 2013-07-08 2017-03-21 Nicira, Inc. Storing network state at a network controller
US9887960B2 (en) 2013-08-14 2018-02-06 Nicira, Inc. Providing services for logical networks
US9952885B2 (en) 2013-08-14 2018-04-24 Nicira, Inc. Generation of configuration files for a DHCP module executing within a virtualized container
US9973382B2 (en) 2013-08-15 2018-05-15 Nicira, Inc. Hitless upgrade for network control applications
US9577845B2 (en) 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US9503371B2 (en) 2013-09-04 2016-11-22 Nicira, Inc. High availability L3 gateways for logical networks
US9455901B2 (en) * 2013-10-04 2016-09-27 Nicira, Inc. Managing software and hardware forwarding elements to define virtual networks
US10148484B2 (en) 2013-10-10 2018-12-04 Nicira, Inc. Host side method of using a controller assignment list
US10063458B2 (en) 2013-10-13 2018-08-28 Nicira, Inc. Asymmetric connection with external networks
US9910686B2 (en) 2013-10-13 2018-03-06 Nicira, Inc. Bridging between network segments with a logical router
CN106230728B (zh) * 2013-12-12 2019-05-21 安科讯(福建)科技有限公司 线路震荡的情况下路由快速收敛的方法及装置
US9762488B2 (en) 2014-03-06 2017-09-12 Cisco Technology, Inc. Segment routing extension headers
US9313129B2 (en) 2014-03-14 2016-04-12 Nicira, Inc. Logical router processing by network controller
US9225597B2 (en) 2014-03-14 2015-12-29 Nicira, Inc. Managed gateways peering with external router to attract ingress packets
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9590901B2 (en) 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
US9503321B2 (en) 2014-03-21 2016-11-22 Nicira, Inc. Dynamic routing for logical routers
US9647883B2 (en) 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
US9413644B2 (en) 2014-03-27 2016-08-09 Nicira, Inc. Ingress ECMP in virtual distributed routing environment
US9893988B2 (en) 2014-03-27 2018-02-13 Nicira, Inc. Address resolution using multiple designated instances of a logical router
US10091120B2 (en) 2014-05-05 2018-10-02 Nicira, Inc. Secondary input queues for maintaining a consistent network state
US9401858B2 (en) * 2014-06-30 2016-07-26 Cisco Technology, Inc. Loop avoidance during network convergence in switched networks
US9807001B2 (en) 2014-07-17 2017-10-31 Cisco Technology, Inc. Segment routing using a remote forwarding adjacency identifier
US9547516B2 (en) 2014-08-22 2017-01-17 Nicira, Inc. Method and system for migrating virtual machines in virtual infrastructure
US9634928B2 (en) 2014-09-29 2017-04-25 Juniper Networks, Inc. Mesh network of simple nodes with centralized control
US9768980B2 (en) 2014-09-30 2017-09-19 Nicira, Inc. Virtual distributed bridging
US10250443B2 (en) 2014-09-30 2019-04-02 Nicira, Inc. Using physical location to modify behavior of a distributed virtual network element
US10511458B2 (en) 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US10020960B2 (en) 2014-09-30 2018-07-10 Nicira, Inc. Virtual distributed bridging
US10257089B2 (en) 2014-10-30 2019-04-09 At&T Intellectual Property I, L.P. Distributed customer premises equipment
GB2537338A (en) * 2014-11-28 2016-10-19 Aria Networks Ltd Modeling a border gateway protocol network
EP3231140B1 (en) 2014-12-11 2020-02-26 AT&T Intellectual Property I L.P. Multilayered distributed router architecture
US10079779B2 (en) 2015-01-30 2018-09-18 Nicira, Inc. Implementing logical router uplinks
US10341221B2 (en) 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
US10038628B2 (en) 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
US9923760B2 (en) 2015-04-06 2018-03-20 Nicira, Inc. Reduction of churn in a network control system
US9942058B2 (en) 2015-04-17 2018-04-10 Nicira, Inc. Managing tunnel endpoints for facilitating creation of logical networks
US10554484B2 (en) 2015-06-26 2020-02-04 Nicira, Inc. Control plane integration with hardware switches
US10361952B2 (en) 2015-06-30 2019-07-23 Nicira, Inc. Intermediate logical interfaces in a virtual distributed router environment
US9847938B2 (en) 2015-07-31 2017-12-19 Nicira, Inc. Configuring logical routers on hardware switches
US9967182B2 (en) 2015-07-31 2018-05-08 Nicira, Inc. Enabling hardware switches to perform logical routing functionalities
US9819581B2 (en) 2015-07-31 2017-11-14 Nicira, Inc. Configuring a hardware switch as an edge node for a logical router
US10129142B2 (en) 2015-08-11 2018-11-13 Nicira, Inc. Route configuration for logical router
US10313186B2 (en) 2015-08-31 2019-06-04 Nicira, Inc. Scalable controller for hardware VTEPS
US10057157B2 (en) 2015-08-31 2018-08-21 Nicira, Inc. Automatically advertising NAT routes between logical routers
US10263828B2 (en) 2015-09-30 2019-04-16 Nicira, Inc. Preventing concurrent distribution of network data to a hardware switch by multiple controllers
US10230576B2 (en) 2015-09-30 2019-03-12 Nicira, Inc. Managing administrative statuses of hardware VTEPs
US9979593B2 (en) 2015-09-30 2018-05-22 Nicira, Inc. Logical L3 processing for L2 hardware switches
US10204122B2 (en) 2015-09-30 2019-02-12 Nicira, Inc. Implementing an interface between tuple and message-driven control entities
US9948577B2 (en) 2015-09-30 2018-04-17 Nicira, Inc. IP aliases in logical networks with hardware switches
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US10250553B2 (en) 2015-11-03 2019-04-02 Nicira, Inc. ARP offloading for managed hardware forwarding elements
US9917799B2 (en) 2015-12-15 2018-03-13 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US9992112B2 (en) 2015-12-15 2018-06-05 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US9998375B2 (en) 2015-12-15 2018-06-12 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US10333849B2 (en) 2016-04-28 2019-06-25 Nicira, Inc. Automatic configuration of logical routers on edge nodes
US10484515B2 (en) 2016-04-29 2019-11-19 Nicira, Inc. Implementing logical metadata proxy servers in logical networks
US11019167B2 (en) 2016-04-29 2021-05-25 Nicira, Inc. Management of update queues for network controller
US10841273B2 (en) 2016-04-29 2020-11-17 Nicira, Inc. Implementing logical DHCP servers in logical networks
US10091161B2 (en) 2016-04-30 2018-10-02 Nicira, Inc. Assignment of router ID for logical routers
US10263881B2 (en) 2016-05-26 2019-04-16 Cisco Technology, Inc. Enforcing strict shortest path forwarding using strict segment identifiers
US10560320B2 (en) 2016-06-29 2020-02-11 Nicira, Inc. Ranking of gateways in cluster
US10182035B2 (en) 2016-06-29 2019-01-15 Nicira, Inc. Implementing logical network security on a hardware switch
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US11032197B2 (en) 2016-09-15 2021-06-08 Cisco Technology, Inc. Reroute detection in segment routing data plane
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US10212071B2 (en) 2016-12-21 2019-02-19 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10237123B2 (en) 2016-12-21 2019-03-19 Nicira, Inc. Dynamic recovery from a split-brain failure in edge nodes
US10742746B2 (en) 2016-12-21 2020-08-11 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US10616045B2 (en) 2016-12-22 2020-04-07 Nicira, Inc. Migration of centralized routing components of logical router
US10158929B1 (en) * 2017-02-17 2018-12-18 Capital Com SV Investments Limited Specialized optical switches utilized to reduce latency in switching between hardware devices in computer systems and methods of use thereof
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10374827B2 (en) 2017-11-14 2019-08-06 Nicira, Inc. Identifier that maps to different networks at different datacenters
US10848417B2 (en) 2018-05-21 2020-11-24 Cisco Technology, Inc. Distance vector negative southbound topology information for routing in fat trees (RIFT) route
US10999220B2 (en) 2018-07-05 2021-05-04 Vmware, Inc. Context aware middlebox services at datacenter edge
US11184327B2 (en) 2018-07-05 2021-11-23 Vmware, Inc. Context aware middlebox services at datacenter edges
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
EP3888308B1 (en) 2018-11-26 2024-07-17 Arrcus Inc. Logical router comprising disaggregated network elements
US10735541B2 (en) 2018-11-30 2020-08-04 Vmware, Inc. Distributed inline proxy
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN
US11070465B2 (en) 2019-05-13 2021-07-20 128 Technology, Inc. Distribution of multicast information in a routing system
US11451464B2 (en) 2019-05-13 2022-09-20 128 Technology, Inc. Central authority for service and topology exchange
US11005749B2 (en) 2019-05-13 2021-05-11 128 Technology, Inc. Multicast source and receiver access control
US11329912B2 (en) 2019-05-13 2022-05-10 128 Technology, Inc. Source-based routing
US10999182B2 (en) 2019-05-13 2021-05-04 128 Technology, Inc. Routing using segment-based metrics
US11153202B2 (en) 2019-05-13 2021-10-19 128 Technology, Inc. Service and topology exchange protocol
US11018973B2 (en) * 2019-05-31 2021-05-25 Microsoft Technology Licensing, Llc Distributed sonic fabric chassis
US11095480B2 (en) 2019-08-30 2021-08-17 Vmware, Inc. Traffic optimization using distributed edge services
US11140074B2 (en) 2019-09-24 2021-10-05 Cisco Technology, Inc. Communicating packets across multi-domain networks using compact forwarding instructions
CN116321348A (zh) * 2019-10-22 2023-06-23 华为技术有限公司 一种通信方法及装置
DE102019219475B4 (de) * 2019-12-12 2021-08-05 Continental Automotive Gmbh Verfahren zur Optimierung der Zeitsynchronisation zwischen über ein Kommunikationsnetzwerk verbundenen Netzwerkgeräten
US11641305B2 (en) 2019-12-16 2023-05-02 Vmware, Inc. Network diagnosis in software-defined networking (SDN) environments
US12052163B2 (en) 2020-06-24 2024-07-30 Juniper Networks, Inc. Point-to-multipoint Layer-2 network extension over Layer-3 network
US11616755B2 (en) 2020-07-16 2023-03-28 Vmware, Inc. Facilitating distributed SNAT service
US11606294B2 (en) 2020-07-16 2023-03-14 Vmware, Inc. Host computer configured to facilitate distributed SNAT service
US11611613B2 (en) 2020-07-24 2023-03-21 Vmware, Inc. Policy-based forwarding to a load balancer of a load balancing cluster
US11902050B2 (en) 2020-07-28 2024-02-13 VMware LLC Method for providing distributed gateway service at host computer
US11451413B2 (en) 2020-07-28 2022-09-20 Vmware, Inc. Method for advertising availability of distributed gateway service and machines at host computer

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040264384A1 (en) 2003-06-30 2004-12-30 Manasi Deval Methods and apparatuses for route management on a networking control plane

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100259276B1 (ko) * 1997-01-27 2000-06-15 윤종용 대역폭확장이 가능한 상호연결망
JP2000253053A (ja) 1999-02-25 2000-09-14 Hitachi Ltd ネットワークシステム
US6496503B1 (en) * 1999-06-01 2002-12-17 Intel Corporation Device initialization and operation using directed routing
US6633560B1 (en) * 1999-07-02 2003-10-14 Cisco Technology, Inc. Distribution of network services among multiple service managers without client involvement
US7111076B2 (en) * 2000-04-13 2006-09-19 Intel Corporation System using transform template and XML document type definition for transforming message and its reply
US7190896B1 (en) 2000-05-04 2007-03-13 Nortel Networks Limited. Supervisory control plane over wavelength routed networks
US7599620B2 (en) * 2001-06-01 2009-10-06 Nortel Networks Limited Communications network for a metropolitan area
US7257632B2 (en) 2001-07-30 2007-08-14 Fujitsu Limited Method and apparatus for a bandwidth broker in a packet network
US7069343B2 (en) * 2001-09-06 2006-06-27 Avaya Technologycorp. Topology discovery by partitioning multiple discovery techniques
US7075904B1 (en) * 2001-11-16 2006-07-11 Sprint Spectrum L.P. Method and system for multicasting messages to select mobile recipients
US7180864B2 (en) * 2002-02-27 2007-02-20 Lucent Technologies Inc. Method and apparatus for exchanging routing information within an autonomous system in a packet-based data network
US7233593B2 (en) * 2002-03-05 2007-06-19 Nortel Networks Limited System, device, and method for routing information in a communication network using policy extrapolation
US7209449B2 (en) * 2002-03-27 2007-04-24 Intel Corporation Systems and methods for updating routing and forwarding information
JP3914087B2 (ja) 2002-04-19 2007-05-16 富士通株式会社 シグナリング制御方法及びシグナリング対応通信装置及びネットワーク管理システム
JP2004147021A (ja) * 2002-10-23 2004-05-20 Ntt Docomo Inc 経路制御システム、経路制御装置、及び経路制御方法
US7197664B2 (en) * 2002-10-28 2007-03-27 Intel Corporation Stateless redundancy in a network device
US7194653B1 (en) * 2002-11-04 2007-03-20 Cisco Technology, Inc. Network router failover mechanism
US7286468B2 (en) * 2002-11-12 2007-10-23 Cisco Technology, Inc. Routing system and method for synchronizing a routing system with peers after failover
US7324439B2 (en) * 2002-11-13 2008-01-29 Telefonaktiebolaget Lm Ericsson (Publ) Application-transparent IP redundancy
US6912197B2 (en) * 2002-11-22 2005-06-28 Nokia Inc. System and method for implementing redundancy for multilink point to point protocol
JP3782775B2 (ja) * 2002-12-27 2006-06-07 アンリツ株式会社 ネットワーク中継装置及びネットワーク中継方法
US7646759B2 (en) * 2003-01-07 2010-01-12 Intel Corporation Apparatus and method for configuring data plane behavior on network forwarding elements
US7606140B2 (en) * 2003-08-28 2009-10-20 Alcatel Lucent Distributed and disjoint forwarding and routing system and method
US7710885B2 (en) * 2003-08-29 2010-05-04 Agilent Technologies, Inc. Routing monitoring
US7340169B2 (en) * 2003-11-13 2008-03-04 Intel Corporation Dynamic route discovery for optical switched networks using peer routing
US7428219B2 (en) * 2004-02-27 2008-09-23 Intel Corporation System and method to exchange information between a control element and forwarding elements in a network element architecture
US7609647B2 (en) * 2004-05-12 2009-10-27 Bce Inc. Method and apparatus for network configuration validation
US8068408B2 (en) * 2004-11-01 2011-11-29 Alcatel Lucent Softrouter protocol disaggregation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040264384A1 (en) 2003-06-30 2004-12-30 Manasi Deval Methods and apparatuses for route management on a networking control plane

Also Published As

Publication number Publication date
CN1783841B (zh) 2011-01-12
JP4790376B2 (ja) 2011-10-12
EP1653688A1 (en) 2006-05-03
JP2006135975A (ja) 2006-05-25
US20060092940A1 (en) 2006-05-04
US8432787B2 (en) 2013-04-30
US8068408B2 (en) 2011-11-29
EP1653688B1 (en) 2009-12-23
DE602005018431D1 (de) 2010-02-04
US20120281520A1 (en) 2012-11-08
CN1783841A (zh) 2006-06-07
KR20060092977A (ko) 2006-08-23

Similar Documents

Publication Publication Date Title
KR101237862B1 (ko) 소프트라우터 프로토콜 해체
JP4777043B2 (ja) SoftRouter
US9172662B2 (en) Virtual chassis system control protocols
US9100266B2 (en) SoftRouter protocol failovers
US7609619B2 (en) Active-active data center using RHI, BGP, and IGP anycast for disaster recovery and load distribution
US8320361B2 (en) Advertising alternate paths at border gateway protocol route reflectors
JP2006135972A (ja) SoftRouterの分離制御ネットワーク
US20060092857A1 (en) Softrouter dynamic binding protocol
JP6072278B2 (ja) 仮想シャーシシステム制御プロトコル
US8667174B2 (en) Method and system for survival of data plane through a total control plane failure
CN114301824B (zh) 多接入网络中的边界网关协议的邻居发现
CN112398740A (zh) 链路状态路由协议邻接状态机
Ramjee et al. Separating control software from routers
US11627062B2 (en) Designated intermediate system (DIS) priority changing

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: 20160212

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee