KR100462140B1 - Service deployment in data networks - Google Patents

Service deployment in data networks Download PDF

Info

Publication number
KR100462140B1
KR100462140B1 KR10-2001-0051261A KR20010051261A KR100462140B1 KR 100462140 B1 KR100462140 B1 KR 100462140B1 KR 20010051261 A KR20010051261 A KR 20010051261A KR 100462140 B1 KR100462140 B1 KR 100462140B1
Authority
KR
South Korea
Prior art keywords
service
network
node
nodes
hierarchy
Prior art date
Application number
KR10-2001-0051261A
Other languages
Korean (ko)
Other versions
KR20020018559A (en
Inventor
해스로버트
드로즈패트릭
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20020018559A publication Critical patent/KR20020018559A/en
Application granted granted Critical
Publication of KR100462140B1 publication Critical patent/KR100462140B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components

Landscapes

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

Abstract

다수의 네트워크 노드 (node)를 포함하는 데이터 네트워크에서 서비스 할당 정책 (service allocation policy)에 따라 서비스를 전개하는 방법이 설명된다. 할당 정책은 서비스 전개를 위한 노드의 선택을 관리한다. 그 방법은 네트워크 노드를 포함하는 최하위 레벨과, 각각의 레벨에서 선행 레벨(preceding level)의 노드 그룹이 각각의 논리적 노드에 의해 표현되는, 하나 이상의 진보적으로 상위인 레벨을 갖는 서비스 전개 계층구조를 정의하는 단계를 포함한다. 그 방법은 또한 전개되는 서비스를 지정하는 서비스 보급 명령을 발생하는 단계를 포함한다. 서비스 보급 명령은 할당 정책과 함께 계층구조의 상위 레벨에 있는 논리적 노드로부터 계층구조의 하위 레벨 또는 각각의 하위 레벨에 있는 노드에 공급된다. 서비스 보급 명령에서 지정된 서비스는 할당 정책에 따라 선택된 네트워크 노드에 자동적으로 인스톨된다. 또한, 다수의 노드를 포함하는 네트워크 시스템이 설명된다. 그 시스템은 상술된 서비스 전개 방법을 실행하도록 배열된다. 이러한 네트워크 시스템의 네트워크 노드가 또한 설명된다.A method of deploying a service in accordance with a service allocation policy in a data network comprising a plurality of network nodes is described. The allocation policy manages the selection of nodes for service deployment. The method defines a service deployment hierarchy having a lowest level that includes a network node and at least one progressively higher level at which each group of nodes of a preceding level is represented by each logical node. It includes a step. The method also includes generating a service dissemination command that specifies the service to be deployed. The service dissemination command, along with the allocation policy, is supplied from the logical nodes at the top level of the hierarchy to the nodes at the lower level or each of the lower levels of the hierarchy. The service specified in the service dissemination command is automatically installed on the selected network node according to the allocation policy. In addition, a network system including a plurality of nodes is described. The system is arranged to execute the service deployment method described above. Network nodes of such network systems are also described.

Description

데이터 네트워크에서의 서비스 전개 {SERVICE DEPLOYMENT IN DATA NETWORKS}Service Deployment on Data Networks {SERVICE DEPLOYMENT IN DATA NETWORKS}

본 발명은 일반적으로 데이터 네트워크에서의 서비스 전개(service deployment)에 관한 것으로, 특히 다수의 노드 (node)를 구비하는 이종(heterogeneoous) 데이터 네트워크에서의 서비스 전개에 관한 것이다.FIELD OF THE INVENTION The present invention relates generally to service deployment in data networks, and more particularly to service deployment in heterogeneoous data networks with multiple nodes.

데이터 네트워크에서 전형적으로 전개되는 서비스는 네트워크의 선택된 노드를 수반하는 라우팅 서비스(routing service)와 전체 네트워크를 연결하는 엔드 투 엔드 서비스 (end to end service)를 포함한다. 데이터 네트워크상의 전개를 위한 서비스의 한 예로서 차별화된 서비스 (differentiated service, diff-serv) 구조가 있다. 전형적인 diff-serv 구조에서, 네트워크 제공자는 각각이 서로 다른 요금과 연관된 다수의 레벨의 네트워크 서비스를 공급한다. 그러면, 네트워크의 사용자는 그들이 요구하는 서비스의 레벨과 연관된 요금을 지불한다. 차별화된 서비스의 한가지 공지된 예에서, 네트워크로의 억세스를 위해 할증 요금을 지불하는 고객들의데이터 트래픽 (data traffic)에는 네트워크로의 억세스에 더 낮은 비율의 요금을 지불하는 고객들의 데이터 트래픽 보다 운송 우선순위가 부여된다. 네트워크가 점점 더 혼잡하게 됨에 따라, 데이터 통신의 계속적인 성장은 네diff-serv 서비스에 대한 요구를 점점 더 발생시키고 있다. 일반적으로, 네트워크 제공자, 특히 인터넷 서비스 제공자는 고객들을 유혹하기 위해 diff-serv 서비스를 제공하려고 점점 더 노력하고 있다. 그러나, 현재까지는 인터넷과 같은 대형 데이터 네트워크에서 diff-serv 및 다른 미래의 서비스를 전개하는 문제에 대해 편리한 해결법이 없다.Services typically deployed in data networks include routing services involving selected nodes of the network and end to end services that connect the entire network. An example of a service for deployment on a data network is a differentiated service (diff-serv) structure. In a typical diff-serv architecture, network providers provide multiple levels of network services, each associated with a different fee. The user of the network then pays a fee associated with the level of service they require. In one known example of differentiated services, the data traffic of customers who pay a premium for access to the network has a higher priority than the data traffic of customers who pay a lower rate for access to the network. Ranking is given. As networks become more and more crowded, the continued growth of data communications is driving the demand for diff-serv services. In general, network providers, particularly Internet service providers, are increasingly trying to provide diff-serv services to lure customers. However, to date, there is no convenient solution to the problem of deploying diff-serv and other future services in large data networks such as the Internet.

종래의 데이터 네트워크에서는 서비스가 수동으로 전개된다. 이는 전형적으로 새로운 서비스가 소개되길 원할 때 마다 네트워크의 각 노드에서 새로운 세트의 구성 명령을 입력하거나 프로그램 코드를 업데이트하는 것을 수반한다. 이러한 수동 업데이트는 힘이 많이 들고, 시간이 소모되고, 또한 네트워크 오퍼레이터에게 에러가 발생되기 쉬운 작업이다.In conventional data networks, services are deployed manually. This typically involves entering a new set of configuration commands or updating program code at each node of the network whenever a new service is desired to be introduced. This manual update is a laborious, time consuming, and error prone task for network operators.

많은 종래의 데이터 네트워크들이 네트워크를 통해 각 노드와 접속을 갖는 중앙 집중 네트워크 관리자를 포함한다. 네트워크 관리자는 전형적으로 네트워크에 연결된 전용 컴퓨터를 구비한다. 컴퓨터는 전문화된 네트워크 관리 소프트웨어로 프로그램된다. 이러한 네트워크 관리 소프트웨어의 예로는 Hewlett Packard로부터 이용가능한 오픈 뷰(Open View) 소프트웨어, Tivoli Systems로부터 이용가능한 넷 뷰(Net View) 소프트웨어, 또한 Cisco Systems로부터 이용가능한 시스코 워크(Cisco Works) 소프트웨어가 있다. 전형적으로, 네트워크의 각 노드는 네트워크 관리자와 협력하는 에이전트(agent) 소프트웨어를 갖는다. 네트워크 관리자와 에이전트 사이의 양방향 통신은 관리되는 네트워크의 노드에서 네트워크 관리 플랫폼 (platform) 제한 제어를 가능하게 한다. 그러나, 이러한 제어는 관리되는 네트워크에서 서비스의 전개로 확장되지 않는다. 또한, 종래의 네트워크 관리자 및 그들의 에이전트는 측정가능하지 않다. 간략하게, 종래의 네트워크 관리 시스템은 대형 이종 네트워크에 걸쳐 서비스를 전개시키는데 적절하지 못하다.Many conventional data networks include a centralized network manager having connectivity with each node through the network. Network administrators typically have a dedicated computer connected to the network. The computer is programmed with specialized network management software. Examples of such network management software are Open View software available from Hewlett Packard, Net View software available from Tivoli Systems, and Cisco Works software available from Cisco Systems. Typically, each node of the network has agent software that cooperates with the network administrator. Bidirectional communication between network managers and agents enables network management platform restriction control at the nodes of the managed network. However, this control does not extend to the deployment of services in managed networks. Also, conventional network managers and their agents are not measurable. Briefly, conventional network management systems are not suitable for deploying services across large heterogeneous networks.

Private Network to Network Interface(PNNI)와 같이, 비교적 최근에 소개된 일부 라우팅 프로토콜(routing protocol)은 네트워크에서 각 노드의 수동 구성 없이 네트워크에서 QoS를 지원하는 엔드 투 엔드 연결의 자동적인 셋업을 제한된 범위까지 허용한다. Active Networks Encapsulation Protocol과 같은 일부 다른 프로토콜은 네트워크를 통과하는 패킷 (packet)이 네트워크에서 통과하는 각 노드로 서비스를 로드 (load)시키거나 로드시키도록 시도하는 패킷-기반의 접근법을 통해 서비스를 전개시킨다. 이 패킷-기반의 접근법의 성공적인 동작은 다음 조건에 의존한다:Some relatively recently introduced routing protocols, such as Private Network to Network Interfaces (PNNIs), have limited automatic setup of end-to-end connections that support QoS in the network without manual configuration of each node in the network. Allow. Some other protocols, such as the Active Networks Encapsulation Protocol, deploy the service through a packet-based approach that attempts to load or load a packet through the network to each node passing through the network. . Successful operation of this packet-based approach depends on the following conditions:

I) 네트워크의 각 노드 및 모든 노드가 네트워크를 통과하는 패킷에 운반되는 코드를 실행시킬 수 있다는 점에서 네트워크가 동종(homogeneous)이라는 조건; 및I) The condition that the network is homogeneous in that each node and all nodes of the network can execute code carried in packets passing through the network; And

II) 네트워크내의 각 노드가 원하는 서비스를 실행할 수 있다는 조건.II) The condition that each node in the network can run the desired service.

실제로는 이 조건들이 항상 만족되는 것은 아니다. 코드를 얻을 수 없는 노드, 코드를 실행시킬 수 없는 노드, 또는 서비스를 지원할 수 없는 노드는 패킷을 버리거나 이를 다음 노드에 전송한다. 이는 확실히 바람직하지 못한 것이다. 패킷-기반의 접근법의 일부 예에서는 구성 코드가 패킷에 삽입되지 않는다. 그 대신에, 네트워크의 노드는 중앙 코드 저장소 또는 배포된 데이터베이스에 문의하거나 필요한 코드를 이미 다운로드 (download)한 이전 노드에 문의함으로서 새로운 구성 프로그램 코드를 구하도록 요구된다. 이러한 문의에 의해 네트워크에 추가 트래픽, 지연, 및 복잡성이 생긴다. 패킷-기반의 접근법은 비교적 많은 수의 데이터 네트워킹 응용에서 서비스를 전개하기에 적절하지 못하다. 예를 들면, 홉-바이-홉 (hop-by-bop) 라우팅이 실행되는 네트워크에서는 패킷의 흐름이 항상 동일한 노드를 통과하게 된다는 보장이 없기 때문에, 패킷-기반의 접근법이 서비스를 전개하기에 적절하지 못하다. 인터넷은 홉-바이-홉 라우팅이 실행되는 네트워크의 한 예이다.In practice, these conditions are not always met. Nodes that cannot get code, nodes that cannot run code, or nodes that cannot support services drop packets or forward them to the next node. This is certainly undesirable. In some examples of packet-based approaches, no configuration code is inserted into the packet. Instead, nodes in the network are required to obtain new configuration program code by contacting a central code repository or distributed database or by querying a previous node that has already downloaded the necessary code. Such inquiries create additional traffic, delay, and complexity in the network. Packet-based approaches are not suitable for deploying services in a relatively large number of data networking applications. For example, in networks where hop-by-bop routing is performed, there is no guarantee that packet flows will always pass through the same node, so a packet-based approach is appropriate for deploying services. I can't. The Internet is an example of a network in which hop-by-hop routing is performed.

"산란 네트워크 (Spawning Networks)", IEEE Network Magazine, 1999년 7/8월에서, Campbell은 배포된 객체 기술 및 중앙 집중된 프로파일 데이터베이스를 근거로 가상 네트워크 아키텍처를 자동적으로 전개하는 하이 레벨의 방법을 제안한다. "가상 활성 네트워크 - 고객-관리 서비스를 위한 안전하고 탄력적인 환경 (Virtual Active Networks - Safe and Flexible Environments for Customer-Managed Services)", Proceedings of 10th IFIP/IEEE International Workshop on Distributed Systems (DSOM'99), Zurich Switzerland, 1999 10월에서, Brunner는 다른 가상 활성 네트워크(VAN)에서 전개되는 서비스를 고립시키기 위한 프레임 워크(framework)를 설명한다. 그러나, VAN의 생성은 아직 수동 작업이다. 활성 네트워크는 전형적으로 상술된 패킷-기반의 전개 접근법을 사용한다. 이 접근법은예측가능하고 조화되는 서비스의 전개가 바람직한 이종 네트워크에서의 서비스 전개에 적절하지 못하다. 이종 네트워크 및 비활성 홉 (hop)을 통과하는 링크에 대한 추출은 Bharghavan의 "A Scalable Architecture for Active Networks", OPENARCH 2000, Tel Aviv, Israel, 2000년 3월에서 논의된다. 인터넷 프로토콜(Internet Protocol, IP) 및 비동기화 전송 모드(Asynchronous Transfer Mode, ATM) 네트워크에서는, 계층구조가 라우팅 정보를 모으고 전파하는데 사용된다. IP 네트워크는 라우팅 정보만을 모은다. 그러나, ATM PNNI는 또한 QoS 라우팅을 허용하도록 대역폭 및 지연 특성을 요약한다. "Transition Matrix Generation for Complex Node Representation", Proc.IEEE ATM Workshop 1999, pp489-500, Kochi, Japan, 1999년 5월에서, Iliadis는 네트워크 계층구조의 하위 레벨에서 노드의 특성을 포착하는 복잡한 노드 표현을 설명한다. "An Approach to Hierarchical Network Management Architecture Based on SNMPv2)", Smartnet'99, the Fifth IFIP Conference on Intelligence in Networks, Thailand, 1999년 11월에서, Xiao는 다수의 노드로 스케일을 정하는데 계층구조가 사용되는 배포 네트워크 관리 구조를 설명한다. 탄력적인 방식으로 비교적 큰 이종 데이터 네트워크에 걸쳐 편리하게 서비스를 조직하여 자동으로 전개하는 문제에 대한 해결법을 제공하는 것이 바람직하다.In "Spawning Networks", IEEE Network Magazine, July / August 1999, Campbell proposes a high-level way to automatically deploy virtual network architectures based on distributed object technology and a centralized profile database. . "Virtual Active Networks-Safe and Flexible Environments for Customer-Managed Services", Proceedings of 10th IFIP / IEEE International Workshop on Distributed Systems (DSOM'99), Zurich Switzerland, October 1999 Brunner describes a framework for isolating services deployed in other virtual active networks (VANs). However, the creation of the VAN is still a manual task. Active networks typically use the packet-based deployment approach described above. This approach is not suitable for service deployment in heterogeneous networks where predictable and harmonious deployment of services is desirable. Extraction of heterogeneous networks and links through inactive hops is discussed in Bharghavan's "A Scalable Architecture for Active Networks", OPENARCH 2000, Tel Aviv, Israel, March 2000. In Internet Protocol (IP) and Asynchronous Transfer Mode (ATM) networks, hierarchies are used to collect and propagate routing information. The IP network only collects routing information. However, ATM PNNI also summarizes bandwidth and delay characteristics to allow QoS routing. In "Transition Matrix Generation for Complex Node Representation", Proc.IEEE ATM Workshop 1999, pp489-500, Kochi, Japan, May 1999, Iliadis developed a complex node representation that captures the characteristics of nodes at lower levels of the network hierarchy. Explain. In "An Approach to Hierarchical Network Management Architecture Based on SNMPv2", Smartnet'99, the Fifth IFIP Conference on Intelligence in Networks, Thailand, November 1999, Xiao used a hierarchy to scale to multiple nodes. Describe the distribution network management structure. It is desirable to provide a solution to the problem of automatically organizing and automatically deploying services across relatively large heterogeneous data networks in a flexible manner.

본 발명에 따르면, 다수의 네트워크 노드 (node)를 포함하는 데이터 네트워크에서 서비스의 전개를 위해 노드의 선택을 관리하는 서비스 할당 정책 (allocation policy)에 따라 서비스를 전개하는 방법이 제공되고, 그 방법은: 네트워크 노드를 포함하는 최하위 레벨과, 각각의 레벨에서 선행 레벨의 노드 그룹이 각각의 논리적 노드에 의해 표현되는, 하나 이상의 진보적으로 상위인 레벨을 갖는 서비스 전개 계층구조를 정의하는 단계; 전개되는 서비스를 지정하는 서비스 보급 명령을 발생하는 단계; 서비스 보급 명령을 할당 정책에 따라 계층구조의 상위 레벨에 있는 논리적 노드로부터 계층구조의 하위 레벨 또는 각각의 하위 레벨에 있는 노드에 공급하는 단계; 및 할당 정책에 따라 선택된 네트워크 노드에 서비스 보급 명령에서 지정된 서비스를 자동적으로 인스톨하는 단계를 포함한다.According to the present invention, there is provided a method for deploying a service according to a service allocation policy that manages selection of nodes for deployment of services in a data network comprising a plurality of network nodes, the method comprising: Defining a service deployment hierarchy having a lowest level comprising a network node and at least one progressively higher level, at which level a group of nodes of the preceding level is represented by each logical node; Generating a service dissemination command specifying a service to be deployed; Supplying a service dissemination command from a logical node at a higher level of the hierarchy to a node at a lower level or each lower level of the hierarchy according to an allocation policy; And automatically installing the service specified in the service distributing command in the selected network node according to the allocation policy.

바람직하게, 그 방법은: 전개되는 서비스의 요구조건을 나타내는 서비스 권유를 계층구조의 상위 레벨에 있는 논리적 노드로부터 계층구조의 하위 레벨에 있는 네트워크 노드로 공급하는 단계; 전개되는 서비스를 지지하는 노드의 능력을 나타내는 측정치 (metric)를 발생하도록 각 네트워크 노드의 기능과 서비스 권유를 비교하는 단계; 다음 계층구조의 상위 레벨에 대해 요약된 측정치를 발생하도록 측정치를 요약하고, 이어지는 레벨에 대해 요약하는 단계를 반복하는 단계; 및 상기 상위 레벨에서의 요약된 측정치에 의존하여 보급 명령을 발생하는 단계를 더 포함한다.Preferably, the method comprises: supplying a service invitation indicating a requirement of a service to be deployed from a logical node at a higher level in the hierarchy to a network node at a lower level in the hierarchy; Comparing the service invitation and the function of each network node to generate a metric indicative of the ability of the node to support the deployed service; Repeating the steps of summarizing the measurements and summarizing them for subsequent levels to generate the summarized measurements for the next higher level of the hierarchy; And generating a dissemination command depending on the summarized measurement at the higher level.

본 발명의 바람직한 실시예에서, 그 방법은 서비스의 동적인 재전개를 허용하도록 하나 이상의 선택된 노드를 나타내는 논리적 노드에 정보를 유지하는 단계를 구비한다.In a preferred embodiment of the present invention, the method includes maintaining information in a logical node representing one or more selected nodes to allow for dynamic redeployment of the service.

요약하는 단계는 바람직하게 하나 이상의 레벨에서의 다른 노드 그룹에 대해다른 요약 과정을 구비한다.The step of summarizing preferably comprises a different summarization process for different node groups at one or more levels.

또 다른 특성으로부터 본 발명을 볼 때, 다수의 노드를 구비하는 네트워크 시스템이 제공되고, 그 시스템은 여기서 이전에 설명된 바와 같은 서비스 전개 방법을 실행하도록 배열된다.In view of the invention from another aspect, a network system having a plurality of nodes is provided, which system is arranged to execute a service deployment method as previously described herein.

본 발명은 또한 이러한 네트워크 시스템의 네트워크 노드로 확장된다. 부가하여, 본 발명은 여기서 이전에 설명된 바와 같은 방법을 실행하는 시스템을 구성하도록 네트워크 시스템의 노드에 로드 (load)하는 컴퓨터 프로그램 코드 수단을 포함하는 컴퓨터 프로그램 소자로 확장된다.The invention also extends to network nodes of such network systems. In addition, the invention extends to computer program elements comprising computer program code means for loading a node of a network system to configure a system for executing a method as previously described herein.

본 발명은 고객 요구에 응답하는 시간을 감소시키고 탄력성을 증가시켜, 데이터 네트워크에서 서비스를 편리하게 조작하고 자동적으로 전개하는 문제점에 대해 이룰 수 있는 해결법을 제공한다. 네트워크 관리의 이러한 작업은 네트워크 관리자로부터 네트워크 자체에 전달된다.The present invention reduces the time to respond to customer demands and increases resiliency, thereby providing a solution to the problem of conveniently manipulating and automatically deploying services in a data network. This task of network management is transferred from the network administrator to the network itself.

본 발명을 실현하는 방법을 참조하여 여기서 특성이 설명되는 경우, 대응하는 특성은 본 발명을 실현하는 장치 등에 따라 제공될 수 있는 것으로 생각되어야 한다.When the characteristic is described herein with reference to the method of realizing the present invention, it should be considered that the corresponding characteristic can be provided according to an apparatus or the like for realizing the present invention.

도 1은 프로그램가능한 네트워크 노드 (node)의 블록도.1 is a block diagram of a programmable network node.

도 2는 또 다른 프로그램가능한 네트워크 노드의 블록도.2 is a block diagram of another programmable network node.

도 3은 도 2에 도시된 프로그램가능한 네트워크 노드의 동작과 연관된 흐름도.3 is a flow diagram associated with the operation of the programmable network node shown in FIG.

도 4는 기능의 요약을 도시하는 데이터 네트워크에 대한 서비스 전개 계층구조의 블록도.4 is a block diagram of a service deployment hierarchy for a data network showing a summary of functionality.

도 5는 데이터 네트워크에 대한 서비스 전개의 흐름도.5 is a flow diagram of service deployment for a data network.

도 6은 서비스 보급을 도시하는 데이터 네트워크에 대한 서비스 전개 계층구조의 블록도.6 is a block diagram of a service deployment hierarchy for a data network illustrating service dissemination.

도 7은 ATM 네트워크에 대한 서비스 전개 계층구조의 블록도.7 is a block diagram of a service deployment hierarchy for an ATM network.

도 8은 도 7에 도시된 ATM 네트워크에 대한 IP 라우팅 (routing) 계층구조의 블록도.8 is a block diagram of an IP routing hierarchy for the ATM network shown in FIG.

도 9는 또 다른 IP 라우팅 계층구조의 블록도.9 is a block diagram of another IP routing hierarchy.

도 10은 가상 전용 네트워크의 블록도.10 is a block diagram of a virtual dedicated network.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

10, 11, 220: 네트워크 노드10, 11, 220: network node

20: 프로세서20: processor

40: I/O 포트40: I / O port

70: 네트워크70: network

80, 100, 110: 라이브러리 서버80, 100, 110: library server

210: 서비스 전개 계층구조210: service deployment hierarchy

670, 680: 가상 외부 링크670, 680: virtual external links

먼저, 도 1을 참조하면, 본 발명의 바람직한 실시예에서는 프로세서(20), 입력/출력 (I/O) 포트(40), 프로세서(10)에 의한 실행을 위해 컴퓨터 프로그램 코드 지시를 저장하는 제1 비휘발성 메모리(60), 및 노드(10)의 동작 매개변수를 나타내는 기능 (CAPS) 리스트를 저장하는 제1 비휘발성 메모리(70)를 구비하는 프로그램가능한 네트워크 노드 (node)(10)가 제공된다. CAPS 리스트의 바람직한 예는 곧 상세히 설명된다. 프로세서(20), I/O 포트(40), 제1 메모리(60), 및 제2 메모리(70)는 모두 버스 아키텍처(30)를 통해 상호연결된다. 본 발명의 특별히 바람직한 실시예에서, 프로세서(20)는 마이크로프로세서를 구비한다. 고속 동작에 관심이 있는 경우, 마이크로프로세서는 바람직하게 RISC (Reduced Instruction Set) 아키텍처를 갖는다. 적절한 RISC 마이크로프로세서의 예로는 Intel사로부터 이용가능한 i960 마이크로프로세서 및 IBM사로부터 이용가능한 PowerPC 마이크로프로세서(PowerPC는 IBM사의 상표명이다)가 포함된다. 동작시, 노드(10)는 하나 이상의 I/O 포트(40)를 다른 노드 또는 엔드 포인트에 연결하여 이러한 다른 노드 또는 엔드 포인트와의 통신 링크를 형성함으로서 네트워크에 인스톨된다. I/O 포트(40)의 기능에 의존하여, 통신 링크는 물리적으로 광섬유, 구리 와이어, 및 무선 주파수 (radio frequency)나 적외선과 같은 무선 매체를 포함하여 다른 네트워크 기술 중 하나 또는 그들의 조합에 의해 제공될 수 있는 것으로 생각된다. 유사하게, I/O 포트(40)에 의해 성립된 통신 링크는 토큰 링 (token ring), 슬롯 링 (slotted ring), 이서넷(ethernet), 및 ATM을 포함하여 다수의 다른 물리층 프로토콜 중 하나 이상에 따라 데이터를 운반할 수 있는 것으로 인식된다. 동작시, 제1 메모리(60)에 저장된 프로그램 코드는 특정한 라우팅 (routing) 기능에 따라 I/O 포트(40)의 서로 다른 포트 사이에서 마이크로프로세서가 데이터 트래픽 (traffic)을 전달하게 하도록 형성된다. 네트워크 노드(10)는 라우터 (router), 스위치, 브릿지 (bridge), 브라우터 (brouter), 또는 유사한 데이터 네트워킹 디바이스로 기능하도록 프로그램 코드에 의해 구성될 수 있다. 본 발명의 일부 실시예에서는, 노드를 구성하는 프로그램 코드가 노드를 제작하는 동안 제1 메모리(60)에 미리 프로그램될 수 있다. 이와 같이 미리 프로그램된 코드는 변화될 수 없다. 그러나, 본 발명의 다른 실시예에서는 업데이트, 수정, 및 완전히 다른 코드가 I/O 포트(40)를 통해 네트워크의 원격 위치로부터 제1 메모리(60)로 로드될 수 있다. 제1 메모리(60) 및 제2 메모리(50)는 본 발명의 일부 실시예에서 단일 물리적 메모리 중 논리적으로 분할된 부분에 의해 실시될 수 있는 것으로 생각된다.First, referring to FIG. 1, in a preferred embodiment of the present invention, the processor 20, the input / output (I / O) port 40, and the computer program code instructions for executing the processor 10 are stored. Provided by a programmable network node 10 having a first nonvolatile memory 60 and a first nonvolatile memory 70 storing a function (CAPS) list representing operating parameters of the node 10. do. Preferred examples of CAPS lists are described in detail soon. The processor 20, the I / O port 40, the first memory 60, and the second memory 70 are all interconnected through the bus architecture 30. In a particularly preferred embodiment of the present invention, processor 20 comprises a microprocessor. If interested in high speed operation, the microprocessor preferably has a Reduced Instruction Set (RISC) architecture. Examples of suitable RISC microprocessors include the i960 microprocessor available from Intel and the PowerPC microprocessor available from IBM (PowerPC is a trademark of IBM Corporation). In operation, node 10 is installed in a network by connecting one or more I / O ports 40 to other nodes or endpoints to form communication links with these other nodes or endpoints. Depending on the functionality of the I / O port 40, the communication link is physically provided by one or a combination of other network technologies, including optical fiber, copper wire, and wireless media such as radio frequency or infrared. It seems to be possible. Similarly, the communication link established by I / O port 40 may be one or more of a number of other physical layer protocols, including token rings, slotted rings, ethernets, and ATMs. It is recognized that the data can be transported accordingly. In operation, program code stored in the first memory 60 is configured to cause the microprocessor to transfer data traffic between different ports of the I / O port 40 in accordance with a particular routing function. Network node 10 may be configured by program code to function as a router, switch, bridge, browser, or similar data networking device. In some embodiments of the present invention, the program code constituting the node may be preprogrammed into the first memory 60 during fabrication of the node. This preprogrammed code cannot be changed. However, in other embodiments of the present invention, updates, modifications, and completely different code may be loaded into the first memory 60 from a remote location in the network via the I / O port 40. It is contemplated that first memory 60 and second memory 50 may be implemented by logically divided portions of a single physical memory in some embodiments of the invention.

본 발명의 바람직한 실시예에서, 제2 메모리(50)에 저장된 CAPS 리스트는 확장 마크업 언어(Extended Markup Language; XML)로 코드화된다. XML은 유리하게 CAPS 리스트에 기록된 데이터 항목을 네트워크의 다른 노드의 특성에 관련된 데이터 항목과 조합하는 규칙과 함께, 그 데이터 항목의 설명을 허용한다. 이제 이어지는 것은 이러한 CAPS 리스트의 예를 리스트한 XML이다. CAPS 리스트는 노드에 의해 지원되는 다양한 동작 및 구성 애플리케이션 프로그래밍 인터페이스( Configuration Application Programming Interfaces; API)의 표시를 포함한다. 또한, CAPS 리스트에는 예를 들면, 프로세서 속도 및 버퍼 크기와 같이, 노드의 다양한 동작 매개변수가 포함된다. 이 데이터 항목들은 새로운 서비스가 노드에 전개될 수 있는가 여부의 결정을 허용한다.In a preferred embodiment of the present invention, the CAPS list stored in the second memory 50 is encoded in Extended Markup Language (XML). XML advantageously allows the description of the data item, along with the rules for combining the data item recorded in the CAPS list with data items related to the properties of other nodes in the network. What follows is an XML listing of examples of these CAPS lists. The CAPS list includes an indication of the various operations and configuration application programming interfaces (APIs) supported by the node. The CAPS list also includes various operational parameters of the node, such as processor speed and buffer size, for example. These data items allow the determination of whether a new service can be deployed to the node.

본 발명의 일부 실시예에서는, 제2 메모리(50)에 저장된 CAPS 리스트가 고정된다. 그러나, 본 발명의 다른 실시예에서, 제2 메모리(50)에 저장된 CAPS 리스트는 데이터 항목의 부가 또는 삭제에 의해 다른 방법으로 수정되거나 재프로그램될 수 있다. 이 구성은 예를 들어, I/O 포트의 다른 조합이 인스톨될 수 있는 네트워크 노드에 특히 바람직하다. 이제는 도 2를 참조하면, 본 발명의 특히 바람직한 실시예에서, 노드(11)가 네트워크(70)에 연결된다. 노드(11)는 I/O 포트(40)가 I/O 서브시스템(45)으로 대치되는 것을 제외하면 도 1을 참조하여 상술한 노드(10)와 유사하다. 네트워크에는 또한 CAPS 리스트 라이브러리 서버 (library server)(90), 피코-코드 (pico-code) 라이브러리 서버(100), 및 소프트웨어 프로토콜 라이브러리 서버(110)가 연결된다. CAPS 리스트 라이브러리 서버(80)는 각각 노드(11)의 서로 다른 포트 모듈에 대응하는 CAPS 리스트의 라이브러리(90)를 저장한다. 피코-코드 라이브러리 서버(100)는 프로세서(20)를 구성하는 컴퓨터 프로그램 코드의 라이브러리(120)를 저장한다. 소프트웨어 프로토콜 라이브러리 서버(100)는 I/O 서브시스템(41)의 포트들 사이에서 데이터를 라우팅할 때 프로세서(20)에 의해 실시되는 소프트웨어 라우팅 프로토콜의 라이브러리(130)를 저장한다. I/O 서브시스템(45)은 대응하는 다수의 변화가능한 플러그-인 (plug-in) 포트 모듈(41, 42, 43)을 수용하도록 다수의 슬롯(slot)을 구비한다. 각 포트 모듈(41, 42, 43)은 고유의 식별자를 저장하는 비휘발성 레지스터(46)를 구비한다. 이제는 도 2 및 도 3의 조합을 참조하면, 단계(140)에서 포트 모듈(43)이 슬롯 중 하나에 삽입될 때, 프로세서(20)가 대응하는 레지스터(46)로부터 고유의 식별자를 판독한다. 고유의 식별자는 단계(150)에서 노드(11)로부터 라이브러리 서버(80)로 전달된다. 단계(160)에서, 라이브러리 서버(80)는 수신된 고유의 식별자를 근거로, 라이브러리(90)로부터 노드(11)에 부가된 포트 모듈(43)에 대응하는 CAPS 리스트를 회복한다. 단계(170)에서, 라이브러리 서버(80)는 회복된 CAPS 리스트를 노드(11)에 복귀시킨다. 단계(180)에서, 프로세서(20)는 부가된 포트 모듈(43)에 대한 CAPS 리스트를 제2 메모리(50)에 저장된 노드(11)에 대한 CAPS 리스트에 부가한다. 유사한 처리는 프로세서(20)를 구성하는 업데이트된 프로그램 마이크로 코드를 피코-코드 라이브러리(100)로부터 노드(11)에 전달하여 제1 메모리(60)에 저장하도록 실행된다. 유사하게, 또 다른 유사한 처리는 프로세서(20)의 실시를 위한 새로운 소프트웨어 라우팅 프로토콜을 소프트웨어 프로토콜 라이브러리 서버(110)로부터 노드(11)에 전달하여 다시 제1 메모리(60)에 저장하도록 실행된다. 본 발명의 일부 실시예에서는 노드(11) 자체에 대응하는 CAPS 리스트를 회복하기 위한 고유의 식별자, 프로세서 프로그램 코드, 및 소프트웨어 프로토콜 세트, 또는 그들이 조합이 라이브러리 서버(90, 100, 110)로부터 제공될 수 있다. 또한, 본 발명의 일부 실시예에서는 라이브러리 서버(80, 100, 110)가 네트워크(70)에 연결된 단일 서버 컴퓨터 시스템에 의해 실시될 수 있는 것으로 생각된다.In some embodiments of the present invention, the CAPS list stored in the second memory 50 is fixed. However, in another embodiment of the present invention, the CAPS list stored in the second memory 50 may be modified or reprogrammed in other ways by adding or deleting data items. This configuration is particularly desirable for network nodes where, for example, other combinations of I / O ports can be installed. Referring now to FIG. 2, in a particularly preferred embodiment of the present invention, node 11 is connected to network 70. Node 11 is similar to node 10 described above with reference to FIG. 1 except that I / O port 40 is replaced by I / O subsystem 45. Also connected to the network is a CAPS list library server 90, a pico-code library server 100, and a software protocol library server 110. The CAPS list library server 80 stores a library 90 of CAPS lists corresponding to different port modules of the node 11, respectively. Pico-code library server 100 stores a library 120 of computer program code constituting processor 20. Software protocol library server 100 stores a library 130 of software routing protocols implemented by processor 20 when routing data between ports of I / O subsystem 41. I / O subsystem 45 has multiple slots to accommodate corresponding multiple variable plug-in port modules 41, 42, 43. Each port module 41, 42, 43 has a nonvolatile register 46 that stores a unique identifier. Referring now to the combination of FIGS. 2 and 3, when the port module 43 is inserted into one of the slots in step 140, the processor 20 reads the unique identifier from the corresponding register 46. The unique identifier is passed from node 11 to library server 80 in step 150. In step 160, the library server 80 retrieves the CAPS list corresponding to the port module 43 added to the node 11 from the library 90 based on the received unique identifier. In step 170, library server 80 returns the restored CAPS list to node 11. In step 180, the processor 20 adds the CAPS list for the added port module 43 to the CAPS list for the node 11 stored in the second memory 50. Similar processing is executed to deliver the updated program microcode constituting the processor 20 from the pico-code library 100 to the node 11 and to store it in the first memory 60. Similarly, another similar process is executed to transfer a new software routing protocol from the software protocol library server 110 to the node 11 for implementation of the processor 20 and store it in the first memory 60 again. In some embodiments of the present invention, a unique identifier, a processor program code, and a set of software protocols, or combinations thereof, for recovering a CAPS list corresponding to node 11 itself may be provided from library server 90, 100, 110. Can be. It is also contemplated that in some embodiments of the present invention, the library servers 80, 100, 110 may be implemented by a single server computer system connected to the network 70.

또한, 본 발명의 다른 실시예에서는 상술된 라이브러리(80, 120, 130) 중 하나 이상이 노드(11)에 저장될 수 있는 것으로 생각되어야 한다. 이러한 실시예는 명확하게 노드(11)에 보다 많은 메모리 공간이 위치하도록 요구한다. 그러나, 네트워크(70)를 걸쳐 라이브러리 서버(80, 100, 110)로 고유의 식별자를 전송하는 것과, CAPS 리스트, 프로토콜, 및 프로세서 프로그램 코드를 라이브러리 서버(80, 100, 110)로부터 노드(11)에 다시 전송하는 것이 모두 방지되므로, 그렇지 않은 경우 데이터 트래픽의 운반을 위해 제어 트래픽에 의해 차지될 대역폭이 자유로와진다.In addition, in other embodiments of the present invention, it should be contemplated that one or more of the libraries 80, 120, 130 described above may be stored in node 11. This embodiment clearly requires more memory space to be located at node 11. However, the unique identifier is transmitted across the network 70 to the library servers 80, 100, 110, and CAPS lists, protocols, and processor program code are transferred from the library server 80, 100, 110 to the node 11. Since all retransmissions are prevented, the bandwidth to be occupied by the control traffic is freed for otherwise carrying data traffic.

이제 도 4를 참조하면, 본 발명의 바람직한 실시예에서, 데이터 네트워크는 도 1 및 도 2를 참조하면, 여기서 이전에 설명된 바와 같은 노드(220)를 포함한다. 데이터 네트워크의 노드(220)는 논리적으로 서비스 전개 계층구조 (Service Deployment Hierarchy)(210)로 배열된다. 서비스 전개 계층구조(210)는 데이터 네트워크의 위상(topology)을 근거로 한다. 그러나, 서비스 전개 계층구조(210)는 노드 접근성(reachability) 및 링크 상태를 나타내는 데이터를 배포시키지 않음을 주목하여야 한다. 그러므로, 서비스 전개 계층구조(210)는 전용 네트워크 인터페이스 (Private Network Interface, PNNI) 라우팅 계층구조와 같은 라우팅 계층구조와 다르다. 서비스 전개 계층구조(210)는 똑같은 서브네트 (subnet)(230)에 있는 노드(220)를 함께 그룹화함으로서 생성된다. 노드(220) 중 하나는 그룹 리더로 선출된다. 각 그룹(230)은 다음 레벨의 계층구조에서 단일 논리적 그룹 노드(240)로 나타난다. 예를 들면, 베이스 레벨(180)의 계층구조(210)에 있는 서브네트(230)의 노드(220)는 중간 레벨(190)에서 논리적 서브세트(260)의 논리적 그룹 노드(240)로 그룹화된다. 상위 레벨(200)에서는 논리적 서브세트(260)의 논리적 노드가 논리적 그룹 노드(250)로 그룹화된다.Referring now to FIG. 4, in a preferred embodiment of the present invention, referring to FIGS. 1 and 2, the data network includes a node 220 as previously described herein. Nodes 220 of the data network are logically arranged in a Service Deployment Hierarchy 210. The service deployment hierarchy 210 is based on the topology of the data network. However, it should be noted that the service deployment hierarchy 210 does not distribute data indicative of node reachability and link status. Thus, service deployment hierarchy 210 is different from routing hierarchy, such as a Private Network Interface (PNNI) routing hierarchy. Service deployment hierarchy 210 is created by grouping nodes 220 in the same subnet 230 together. One of the nodes 220 is elected as group leader. Each group 230 is represented by a single logical group node 240 in the next level of hierarchy. For example, nodes 220 of subnet 230 in hierarchy 210 of base level 180 are grouped into logical group nodes 240 of logical subset 260 at intermediate level 190. . At higher level 200, logical nodes of logical subset 260 are grouped into logical group node 250.

이제 도 5를 참조하면, 서비스 전개 계층구조(210)에 대한 네트워크 서비스 전개 구조의 예는 권유 단계(270), 요약 단계(280), 보급 단계(290), 인스톨 단계(300), 및 광고 단계(310)를 구비한다.Referring now to FIG. 5, examples of network service deployment structures for the service deployment hierarchy 210 include an invitation step 270, a summary step 280, a dissemination step 290, an installation step 300, and an advertising step. 310 is provided.

권유 단계(270)에서는 네트워크상에 전개되는 서비스의 요구조건이 네트워크의 노드(220)에 방송 또는 멀티캐스트된다. 각 노드(220)는 전개되는 서비스의 요구조건을 제2 메모리(50)에 저장된 CAPS 리스트에서 지정된 기능과 비교한다. 각 노드(220)는 측정치 (metric)의 형태로 비교 결과를 발생한다. 서비스의 요구조건이 미리 공지되거나 일반적인 형태를 가지면, 권유 단계는 스킵될 수 있다.In the solicitation step 270, the requirements of the service deployed on the network are broadcast or multicast to the nodes 220 of the network. Each node 220 compares the requirements of the service to be deployed with the functions specified in the CAPS list stored in the second memory 50. Each node 220 generates a comparison result in the form of a metric. If the requirements of the service are known in advance or have a general form, the solicitation step can be skipped.

요약 단계(280)에서는 노드(220)에 의해 발생된 측정치가 서비스 전개 계층구조(210)를 통해 베이스 레벨(180)에서 상위 레벨(200)로 전파됨에 따라 요약된다. 요약 단계는 서비스 전개가 이루어질 수 있도록 허용한다. 일단 측정치가 상위 레벨까지 요약되면, 노드(50)는 네트워크가 이 서비스를 지지하는 것이 가능한가 여부를 나타낸다.In step 280, the measurements generated by node 220 are summarized as they propagate from base level 180 to higher level 200 through service deployment hierarchy 210. The summary phase allows service deployment to take place. Once the measurements have been summarized up to a higher level, node 50 indicates whether the network is capable of supporting this service.

보급 단계(290)에서는 서비스 전개 계층구조(210)에서 각 레벨(180, 190, 200)에서의 서비스를 지지하는데 가장 적합한 노드만을 선택함으로서 서비스의 전개가 실행된다. 이 선택은 서비스에 대한 서비스 지정 할당 정책 (Service Specific Allocation Policy, SSAP)을 근거로 실행된다. 다른 서비스는 다른 전개 요구조건을 갖는다. 예를 들어, 서비스가 경로를 따라 호핑 (hopping)할 때마다 전개를 요구할 수 있다. 그러나, 다른 서비스는 네트워크의 선택된 노드 또는 경로의 엣지에서만 필요로 할 수 있다. 서비스의 SSAP는 서비스가 네트워크에서 전개되어야 하는 방법을 지정한다.In the dissemination step 290, the deployment of services is performed by selecting only the nodes that are most suitable for supporting the services at each level 180, 190, 200 in the service deployment hierarchy 210. This selection is made based on the Service Specific Allocation Policy (SSAP) for the service. Different services have different deployment requirements. For example, a service may require deployment each time it hops along a path. However, other services may only be needed at the edge of the selected node or path of the network. The SSAP of a service specifies how the service should be deployed in the network.

인스톨 단계(300)에서는 서비스가 대응하는 SSAP에 따라 네트워크의 베이스 레벨(180)에 있는 노드(220)에 인스톨된다.In the installation step 300, the service is installed in the node 220 at the base level 180 of the network according to the corresponding SSAP.

광고 단계(310)에서는 각 노드(220)가 인스톨된 서비스를 광고하고, 똑같은 서비스를 광고하는 다른 노드(220)의 신원을 동적으로 알아낸다. 이는 예를 들어, 동료 (peer)를 자동구성하는 라우팅 프로토콜과 같은 제어 서비스를 허용한다.In the advertisement step 310, each node 220 advertises the installed service, and dynamically identifies the identity of another node 220 advertising the same service. This allows for control services such as, for example, routing protocols to automate peers.

이제 이어지는 것은 권유 단계의 상세한 설명이다. 앞서 설명된 바와 같이, 이 단계에서는 네트워크상에 전개되는 서비스의 요구조건이 네트워크의 노드(220)에 방송 또는 멀티캐스트된다. 본 발명의 바람직한 실시예에서, 서비스의 요구조건은 여기서 이전에 설명된 모범적인 CAPS 리스트와 유사한 방식으로 XML과 같은 마크업 (markup) 언어로 방송 또는 멀티캐스트되도록 부호화된다. 요구조건은 필요로 하는 라우팅 프로토콜, 버퍼 크기와 같은 물리적 및/또는 논리적 기능, 대기열 (queue)의 수 등, 또는 그들의 조합으로 정의될 수 있다. 네트워크의 일부는 권유 단계에서 생략될 수 있다. 예를 들어, 서비스가 전개되어야 하는 엣지 또는 엔드 포인트를 SSAP가 정의하면, 권유 단계는 엔드 포인트 또는 엣지 사이에서 이들 노드에만 서비스의 요구조건을 멀티캐스트할 수 있다.What follows is a detailed description of the invitation step. As described above, in this step the requirements of the service deployed on the network are broadcast or multicast to the nodes 220 of the network. In a preferred embodiment of the invention, the requirements of the service are encoded to be broadcast or multicast in a markup language such as XML in a manner similar to the exemplary CAPS list described previously herein. Requirements may be defined by the routing protocol required, physical and / or logical functions such as buffer size, the number of queues, or a combination thereof. Part of the network may be omitted in the solicitation step. For example, if SSAP defines the edge or endpoint where a service should be deployed, the solicitation step can multicast the requirements of the service only to those nodes between the endpoints or edges.

서비스는 2가지 카테고리로 나누어질 수 있다:Services can be divided into two categories:

미리 공지되지 않은 고객 측정치 및/또는 고객 요약 규칙의 세트를 요구하는 것들. 이러한 측정치는 전개되는 서비스의 요구조건을 상기와 같이 비교하는 것과 그 요구조건을 수신하는 각 노드의 CAPS 리스트에 대한 내용으로부터 유도된다; 또한Those requiring a set of customer metrics and / or customer summary rules not known in advance. These measurements are derived from the above comparison of the requirements of the service being deployed and from the contents of the CAPS list of each node receiving the requirements; Also

미리 공지된 일반 측정치 및/또는 요약 규칙의 세트만을 요구하는 것들.Those that only require a set of pre-known general measurements and / or summary rules.

일부 일반적인 측정치는 대응하는 일반 요약 규칙을 통해 네트워크에서 디폴트 (default)에 의해 광고될 수 있다. 이러한 측정치가 충분한 횟수로 새로운 서비스의 전개에 사용되면, 디폴트로 이러한 측정치를 광고하는 것은 권유 및 요약 단계에 여유를 준다. 결과적으로, 이러한 단계들은 일부 환경에서 생략될 수 있다. 이는 특히 감소된 시간 주기내에 인스톨되도록 요구되는 서비스의 전개에 특히 바람직한다. 고객 측정치의 세트는 전개되는 서비스의 요구조건에 대한 상기의 비교 결과와 수신된 노드(220)의 CAPS 리스트에서 대응하는 엔트리 (entry)로부터 주어진 값을 갖는다. 세트의 값은 이진수로, 간단히 노드가 전개되는 서비스를 지지하는가 여부를 나타낸다. 한가지 다른 방법으로, 그 값들은 노드가 서비스를 지지할 수 있는 비용을 나타낼 수 있다. 또 다른 방법으로, 그 값들은 노드가 전개되는 서비스를 얼마나 잘 지지할 수 있는가를 나타낼 수 있다. 도 4를 참조하면, diff-serv 서비스와 같이 특정한 서비스를 지지할 수 있는 노드는 권유 단계를 실행한 결과의 예를 통해 흑색으로 도시된다.Some general measures may be advertised by default in the network through corresponding general summary rules. If these measures are used for the deployment of a new service a sufficient number of times, advertising these measures by default affords the recommendation and summarization steps. As a result, these steps may be omitted in some circumstances. This is particularly desirable for the deployment of services that are required to be installed in a reduced time period. The set of customer measures has a value given from the above comparison of the requirements of the service being deployed and the corresponding entry in the CAPS list of the node 220 received. The value of the set is binary, simply indicating whether the node supports the service being deployed. In one other way, the values can represent the cost of a node to support a service. Alternatively, the values can indicate how well the node can support the deployed service. Referring to FIG. 4, nodes that can support a particular service, such as a diff-serv service, are shown in black through an example of the result of executing the solicitation step.

이제 이어지는 것은 요약 단계의 상세한 설명이다. 앞서 기술된 바와 같이, 서비스 전개 계층구조(210)가 위쪽으로 이어지는 레벨을 통과할 때 측정치의 세트를 요약하는 것은 측정성을 위해 바람직하다. 본 발명의 특히 바람직한 실시예에서, 요약 단계는 네트워크의 변화를 포착하기 위해 소정의 이벤트 발생시 및/또는 빈번한 간격으로 실행된다. 도 6을 참조하면, 측정치의 세트는 서비스 전개 계층구조(210)에서 이어지는 각 레벨 사이의 전이 매트릭스로 편리하게 배열될 수 있다. 예를 들어, M1은 레벨(190)에서 논리적 서브네트(260)에 대한 전이 매트릭스이다. 계층구조(210)에서 서브네트의 엣지에는 소자 mi,j가 경로에 따른 각 호핑 (hopping)시, diff-serv 서비스와 같은, 원하는 서비스를 제공하는 엣지 i 및 j 사이의 최단 경로에서 호핑 횟수로 정의되도록 번호가 정해진다. 매트릭스가 대칭이므로, 절반만이 도시된다.What follows is a detailed description of the summary step. As described above, it is desirable for measurability to summarize a set of measurements as the service deployment hierarchy 210 passes upwards through levels. In a particularly preferred embodiment of the present invention, the summarization step is executed at certain events and / or at frequent intervals to capture changes in the network. Referring to FIG. 6, the set of measurements may be conveniently arranged in a transition matrix between each level following in the service deployment hierarchy 210. For example, M 1 is a transition matrix for logical subnet 260 at level 190. The number of hoppings in the shortest path between the edges i and j that provides the desired service, such as diff-serv service, at each edge of the subnet in the hierarchy 210 of the device m i, j for each hopping along the path. Numbered to be defined as. Since the matrix is symmetrical, only half are shown.

이제 이어지는 것은 보급 단계(290)의 상세한 설명이다. 보급 단계(290)에서, 서비스의 전개는 대응하는 SSAP에 의해 전해진다. SSAP는 예를 들어, 노드(220) 중 어느 것이 서비스로 인에이블될 필요가 있는가를 식별하는 위상 지향적 표시를 포함한다. 보다 상세하게는, 보급 단계(290)는 계층구조(210)에서 최상위 노드(250)로부터 시작되는 서비스를 전개하는 보급 명령으로 시작한다. 보급 명령은 대응하는 SSAP와 함께 계층구조(210) 아래로 이동된다. 계층구조(210)의 각 레벨에서, 그룹 리더는 그룹이 보급 명령으로 가득차기 보다는 서비스가 전개될 필요가 있는 노드에만 보급 명령을 전한다. 이는 유리하게 네트워크의 밀집을 최소화한다. 본 발명의 특히 바람직한 실시예에서, 그룹 리더는 그렇게 하도록 선택되지 않으면 아래의 레벨에 있는 노드에 보급 명령을 전파하지 않는다. 서비스가 활성화 상태로 남아있다고 가정하여, 서비스를 전개하는 노드(220)는 서비스를 유지한다. 이는 현저한 변화가 일어날 때 서비스가 자동적으로 재전개되도록 허용한다. SSAP는 현저한 변화를 구성하는 것을 정의한다. 라우팅 변화가 일어날 때마다 서비스의 재전개를 방지하기 위해, 서비스가 경로의 세트에서 전개되도록 보급 명령을 전송하는 동안 발견적인 교수법 (heuristics)이 사용될 수 있다. 이들 교수법은 또한 SSAP에 포함된다. 다시 도 4를 참조하면, 매트릭스 M1에서, m1,5는 0이 아니므로, 네트워크가 요구되는 서비스를 지지할 수 있음을 나타낸다. 그러므로, 도 6을 참조하면, 최하위 레벨에 의해 제공되는 전이 매트릭스를 근거로 계층구조(210)의 각 레벨에서 최대 거리가 선택되도록 보급이 실행된다. 경로상의 노드는 이어서 물리적 노드(220)가 위치하는 최하위 레벨(180)에 보급 명령이 이를 때까지 계층구조(210)의 다음 아래 레벨로 보급 명령을 전한다. 도 6에서, 최단 경로의 엣지는 각 레벨에서 더 두꺼운 선으로 도시되고, 각 레벨에서 경로상의 노드는 진하게 도시된다.What follows is a detailed description of the dissemination step 290. In the dissemination step 290, the deployment of the service is communicated by the corresponding SSAP. The SSAP includes, for example, a phase-oriented indication that identifies which of the nodes 220 need to be enabled for the service. More specifically, the dissemination step 290 begins with a dissemination command that deploys a service starting from the top node 250 in the hierarchy 210. The dissemination command is moved down the hierarchy 210 with the corresponding SSAP. At each level of hierarchy 210, the group leader sends a dissemination command only to the node where the service needs to be deployed, rather than the group being full of dissemination commands. This advantageously minimizes network density. In a particularly preferred embodiment of the present invention, the group leader does not propagate the propagation command to nodes at lower levels unless it is selected to do so. Assuming the service remains active, node 220 deploying the service maintains the service. This allows the service to be automatically redeployed when significant changes occur. SSAP defines what constitutes a significant change. Heuristics can be used while sending a dissemination command so that a service is deployed in a set of paths to prevent redeployment of the service each time a routing change occurs. These teaching methods are also included in the SSAP. Referring back to FIG. 4, in matrix M 1 , m 1,5 is not zero, indicating that the network can support the required service. Therefore, referring to FIG. 6, propagation is performed such that the maximum distance is selected at each level of hierarchy 210 based on the transition matrix provided by the lowest level. The node on the path then sends the propagation command to the next lower level of hierarchy 210 until the propagation command reaches the lowest level 180 where the physical node 220 is located. In Figure 6, the edge of the shortest path is shown with thicker lines at each level, and the nodes on the path at each level are shown in bold.

권유 및 보급 단계는 서비스가 전개되는 네트워크에 연결된 네트워크 관리자에 의해 초기화될 수 있다; 단말 사용자 요구에 응답하여 게이트웨이 (gateway)에 의해; 또는 둘을 조합하여.The solicitation and dissemination phase can be initiated by a network administrator connected to the network where the service is deployed; By a gateway in response to a terminal user request; Or a combination of the two.

이제 이어지는 것은 인스톨 단계의 상세한 설명이다. 보급 명령이 계층구조(210)의 최하위 레벨(180)에 이를 때, 노드(220)에는 서비스가 자동적으로 인스톨된다. 본 발명의 바람직한 실시예에서, 서비스를 실행하도록 노드를 구성하기 위한 코드를 포함하는 저장소로의 링크는 보급 명령을 동반하는 SSAP에 포함된다. 다른 방법으로, 전개된 서비스와 연관된 구성 코드가 비교적 작으면, 코드는 보급 명령에 포함될 수 있다.What follows is a detailed description of the installation steps. When the dissemination command reaches the lowest level 180 of the hierarchy 210, the service is automatically installed in the node 220. In a preferred embodiment of the present invention, a link to a repository containing code for configuring a node to execute a service is included in the SSAP accompanying the dissemination command. Alternatively, if the configuration code associated with the deployed service is relatively small, the code may be included in the dissemination command.

이제 이어지는 것은 광고 단계의 상세한 설명이다. 일단 인스톨되면, 서비스는 제어 메시지를 교환할 인접부를 발견하거나, 서비스로 인에이블된 노드를 통해 데이터 패킷이 목적지로 전해지도록 광고된다. 전자는 명확한 어드레스 신호 전송을 사용한다. 명확한 어드레스 지정의 다른 예로는 라우팅 업데이트 메시지가 동료 (peer) 노드에 명확하게 어드레스 지정되는 대부분의 라우팅 프로토콜이 포함된다. 후자는 함축적인 어드레스 신호 전송을 사용한다. 함축적인 어드레스 지정은 노드가 서비스를 실행하도록 똑같은 서비스를 운행하는 그 동료의 어드레스를 사용할 것을 요구하지 않는다. 함축적인 어드레스 지정의 예로는 IETF diff-serv (Internet Engineering Task Force differentiated Services)에서 발견되는 것과 같은 대역내 신호 전송 또는 IETF RSVP에서 발견되는 것과 같은 대역외 신호 전송이 있다. 도 4 및 도 6을 참조하면, 여기서 이전에 설명되는 본 발명의 바람직한 실시예에서는 diff-serv 서비스의 전개가 고려되었다. 앞서 기술된 바와 같이, 이러한 서비스는 함축적인 어드레스 지정 서비스의 한 예이다. 광고 단계에서, 이러한 서비스가 전개되는 노드는 그 서비스를 광고한다. 광고는 다시 요약되어 배포된다. 여기서, 광고와 연관된 전이 매트릭스는 엔드 포인트 사이에 diff-serv 서비스를 지지하는 경로가 단 하나 있기 때문에 요약 단계에서 생성된 것과 동일하다. 요약된 광고는 적절한 경로를 제공하도록 라우팅과 조합된다. 네트워크의 라우팅 계층구조 및 서비스 전개 계층구조(210)를 정렬하는 것은 함축적인 어드레스 지정 서비스가 전개될 때 광고 단계의 실시를 상당히 용이하게 하는 것으로 생각된다.What follows is a detailed description of the advertising phase. Once installed, the service either discovers neighbors to exchange control messages, or is advertised so that data packets are delivered to their destinations through nodes enabled for the service. The former uses explicit address signaling. Other examples of explicit addressing include most routing protocols where routing update messages are explicitly addressed to peer nodes. The latter uses implicit address signaling. Implicit addressing does not require a node to use the address of its peers running the same service to run the service. Examples of implicit addressing include in-band signal transmission as found in IETF diff-serv (Internet Engineering Task Force differentiated Services) or out-of-band signal transmission as found in IETF RSVP. 4 and 6, the deployment of diff-serv services has been considered in the preferred embodiment of the present invention described previously herein. As described above, this service is an example of an implicit addressing service. In the advertising phase, the node on which this service is deployed advertises the service. The advertisement is again summarized and distributed. Here, the transition matrix associated with the advertisement is the same as that generated in the summary step because there is only one path between the endpoints supporting the diff-serv service. The summarized advertisement is combined with routing to provide an appropriate route. Aligning the routing hierarchy of the network and the service deployment hierarchy 210 is thought to facilitate the implementation of the advertising phase when the implicit addressing service is deployed.

이제 도 7을 참조하면, 본 발명을 실시하는 ATM-PNNI 네트워크의 예가 인터넷 프로토콜 (Internet Protocol, IP) 라우팅 서비스의 전개에 상술된 서비스 전개계층구조를 적용한 것을 예시화하여 설명된다. 이 서비스는 명확한 어드레스 지정 대역외 제어 서비스이다. ATM-PNNI 네트워크는 IP 라우터 노드(350)가 연결된 다수의 ATM 스위치 노드(360)를 구비한다. 서비스 전개 계층구조는 3개의 레벨(320, 330, 340)을 구비한다. 레벨(330)은 논리적 노드(390, 400, 410, 420)를 갖는다. 레벨(320)은 그룹(430)과 (450) 사이에 논리적 그룹(440)을 갖는다. IP 라우팅 계층구조는 서비스 전개 계층구조 및 PNNI 계층구조를 정합시킨다. OSPF (Open Shortest Path First) 및 BGP (Border Gateway Protocol) 서비스는 적절한 층에 자동적으로 인스톨된다. OSPF의 더 상세한 내용은 IETF RFC (Request for Comments) 1583에서 볼 수 있다. 권유 및 요약 단계는 이 설명을 위해 스킵된다. 대신에 보급 단계에 초점을 두어, SSAP가 예를 들어 OSPF 백본 (backbone) 영역으로 노드(410)를 선택할 수 있다. 이어서, 각 OSPF 영역에서는 라우터(350)가 똑같은 영역내의 다른 라우터(350)와 상호연결된다. 모든 OSPF 라우터(350)로부터의 광고는 모든 영역에서 광고되는 백본 영역의 경계 영역 라우터를 제외하고, 각 그룹으로 제한된다. BGP 서비스를 운행하도록 선택된 라우터(3350)는 이들이 그룹(430), (450) 뿐만 아니라 그룹(440)에서도 그 동료로부터 보여질 수 있도록 상위 레벨(320)까지 광고된다. 이제 도 8을 참조하면, 결과의 IP 라우팅 계층구조는 2개의 BGP 발성 노드 (speaking node)(510) 및 (520)를 연결하는 BGP 경로(500)와 함께 4개의 OSPF 영역(460, 470, 480, 490)을 포함하는 OSPF 자율 시스템을 구비한다.Referring now to FIG. 7, an example of an ATM-PNNI network embodying the present invention is illustrated by illustrating the application of the service deployment hierarchy described above to the deployment of Internet Protocol (IP) routing services. This service is a definite addressing out-of-band control service. The ATM-PNNI network includes a plurality of ATM switch nodes 360 to which an IP router node 350 is connected. The service deployment hierarchy has three levels 320, 330, and 340. Level 330 has logical nodes 390, 400, 410, 420. Level 320 has a logical group 440 between groups 430 and 450. The IP routing hierarchy matches the service deployment hierarchy and the PNNI hierarchy. Open Shortest Path First (OSPF) and Border Gateway Protocol (BGP) services are automatically installed on the appropriate layer. More details on OSPF can be found in IETF Request for Comments (RFC) 1583. The invitation and summary steps are skipped for this explanation. Instead focusing on the dissemination phase, SSAP may select node 410, for example, as the OSPF backbone area. In each OSPF area, router 350 is then interconnected with other routers 350 within the same area. Advertisements from all OSPF routers 350 are limited to each group, with the exception of the border area routers in the backbone area advertised in all areas. Routers 3350 selected to run BGP services are advertised to higher level 320 so that they can be viewed from their peers in groups 430 and 450 as well as in group 440. Referring now to FIG. 8, the resulting IP routing hierarchy includes four OSPF regions 460, 470, and 480 with a BGP route 500 connecting two BGP speaking nodes 510 and 520. 490).

도 9를 참조하면, 본 발명의 또 다른 예에서는 다수의 서버(560, 565, 570)및 다수의 라우터 노드(580, 590, 600, 610)를 포함하는 IP 네트워크가 제공된다. 네트워크에서는 명확하게 어드레스 지정된 대역내 서비스가 전개된다. 서비스의 전개로, 서버(560, 570)가 프록시 캐시 (proxy cache)를 운행하게 된다. 그래서, 투명한 HTTP 클라이언트 (도시되지 않은)은 프록시 캐시 서버(560, 570)에 연결된다. 프록시 캐시(560)가 투명하기 때문에, HTTP 클라이언트는 프록시 캐시(560, 570)의 어드레스로 구성될 필요가 없다. 대신에, 라우터(580, 600, 610)는 층 (layer) 4 스위칭을 실행하고, HTTP 요구를 프록시 캐시 서버(560)에 재전달한다. 응답 시간을 개선하기 위해, 2개 층의 캐시가 사용된다. 제1 레벨 캐시(560)는 로컬 사용자에 의해 가장 자주 요구되는 페이지를 포함한다. 제2 레벨 캐시(570)는 모든 사용자에 의해 가장 자주 사용되는 페이지를 포함한다. 본 설명을 위해, 서비스 전개 이전에 충분한 라우팅 및 어드레스 지정 기능이 이미 네트워크에 자리잡고 있는 것으로 가정된다. 권유 단계 동안에는 서비스를 지지하는 특정한 요구조건이 노드(580, 590, 600, 610, 615)로 전달된다. 여기서, 요구조건은 직접 부착된 서버(570, 565, 560)에 대한 최소 처리 용량 및 저장량과, 라우터(580, 590, 600, 610, 615)가 층 4 스위칭을 실행할 능력을 포함한다. 백본(620)을 나타내는 논리적 노드는 제2 레벨 캐시(570)에 대응하는 요구조건으로 권유를 수신한다. 그러나, 영역(550, 540, 530)을 나타내는 논리적 노드는 제1 레벨 캐시(560)에 대한 요구조건을 수신한다. 이진수의 결과의 측정치는 서비스 전개 계층구조로 상향 전달되고, 여기서 이전에 설명된 바와 같이 각 논리적 그룹에 대해 요약된다. 요약은 각 루터(580, 590, 600, 610, 615)로부터의 결과를 논리적 OR 처리하여 실행된다. 측정치는 이어서 이전의 결과를 논리적 AND 처리하여 다시 요약될 수 있다. 전체 네트워크를 나타내는 논리적 노드는 그에 의해 원하는 서비스가 현재 네트워크 하부구조에 걸쳐 전개될 수 있는가 여부를 결정한다. 이러한 예는 한 레벨의 서비스 전개 계층구조에서 또 다른 것에 따라 변하는 고객 요약 규칙을 설명한다. 시스템은 사용자에 대해 투명하다. 그러므로, 이들은 이 서비스 전개로부터 광고를 수신하지 않는다. 그러나, 제1 레벨 캐시(560)는 제2 레벨 캐시(570)에 캐시 손실을 전한다. 그러므로, 제2 레벨 캐시(570)는 그 어드레스의 광고를 발생한다. 이들 광고는 자율 시스템내에 포함되고, 네트워크가 처리량으로 가득차지 않게만 제1 레벨 캐시(560)에 전해진다.Referring to FIG. 9, in another example of the present invention, an IP network including a plurality of servers 560, 565, and 570 and a plurality of router nodes 580, 590, 600, and 610 is provided. In the network, clearly addressed in-band services are deployed. With the deployment of the service, servers 560 and 570 run a proxy cache. Thus, a transparent HTTP client (not shown) is connected to the proxy cache server 560, 570. Since the proxy cache 560 is transparent, the HTTP client does not need to be configured with the addresses of the proxy caches 560, 570. Instead, routers 580, 600, 610 perform layer 4 switching and re-deliver the HTTP request to proxy cache server 560. To improve response time, two layers of cache are used. The first level cache 560 contains the pages most often requested by the local user. The second level cache 570 contains the pages most frequently used by all users. For the purposes of this description, it is assumed that sufficient routing and addressing functionality already exists in the network before service deployment. During the solicitation phase, specific requirements for supporting the service are passed to nodes 580, 590, 600, 610, and 615. The requirements here include minimum processing capacity and storage for the directly attached servers 570, 565, 560, and the ability of the routers 580, 590, 600, 610, 615 to perform layer 4 switching. The logical node representing the backbone 620 receives the invitation with a requirement corresponding to the second level cache 570. However, the logical node representing regions 550, 540, 530 receives a requirement for first level cache 560. The measure of the result of the binary number is passed up to the service deployment hierarchy, where it is summarized for each logical group as described previously. Summary is performed by logically ORing the results from each router 580, 590, 600, 610, 615. The measurements can then be summarized again by logically ANDing the previous results. The logical node representing the entire network thereby determines whether the desired service can be deployed across the current network infrastructure. This example illustrates a customer summary rule that changes from one level of service deployment hierarchy to another. The system is transparent to the user. Therefore, they do not receive advertisements from this service deployment. However, the first level cache 560 propagates a cache loss to the second level cache 570. Therefore, the second level cache 570 generates an advertisement of that address. These advertisements are included in the autonomous system and delivered to the first level cache 560 only so that the network is not full of throughput.

이제는 가상적인 외부 링크를 사용하는 가상 전용 네트워크 (Virtual Private Network, VPN)에 본 발명을 적용한 것이 도 10을 참조하여 설명된다. 여기서 이전에 설명된 본 발명의 diff-serv 예가 네트워크를 통과하는데 적용될 수 있다. 그러므로, 가상 외부 링크가 요구되지 않았다. VPN은 전형적으로 똑같은 네트워크에서 서브네트(640, 650, 660)를 상호연결한다. VPN은 통상적으로 엔드 포인트에서의 암호화 기능과 함께, 정의된 QoS를 요구한다. 원하는 QoS는 IETF RSVP와 같은 프로토콜에 의해 신호 전송된다. 본 실시예에서는 VPN의 엔드 포인트가 설정된 것으로 가정된다. 도 10에서, 이러한 엔드 포인트들은 문자 A, B, 및 C로 식별된다. VPN이 형성된 네트워크는 RSVP 기능이 있는 라우터 노드(660) 및 RSVP 기능이 없는 라우터 노드(700) 모두를 구비한다. 권유 단계 동안, SSAP는 적절한 가상 외부 링크(670, 680)가 요약 단계 동안 생성될 수 있도록 VPN에 대해 원하는 엔드 포인트의 어드레스를 포함한다. 그렇지 않은 경우, 서비스 전개 계층구조의 상위 레벨(690)은 엔드 포인트 A, B, 및 C를 RSVP 기능의 라우터(660)와 상호연결하는 것이 가능한가 여부를 결정할 수 없다. 서비스 전개 계층구조에 대응하는 전이 매트릭스는 도 4를 참조하면, 여기서 이전에 설명된 diff-serv에 대한 것과 유사하다. 매트릭스 M1.1및 M1.2로부터 생성된 매트릭스 M1에서, m2,0=3은 엔드 포인트 A 및 B 사이에서 VPN의 비용이다. 유사하게, 엔드 포인트 B와 C 사이에서 VPN의 비용은 m3,2=4이고, 엔드 포인트 A와 C 사이의 비용은 m3,0=6이다. 보급 단계는 전체적인 비용을 최소화하도록 엔드 포인트 A와 B, 및 B와 C 사이에서 VPN의 전개를 선택함으로서 시작될 수 있다.Now, the application of the present invention to a virtual private network (VPN) using a virtual external link is described with reference to FIG. 10. Here, the diff-serv example of the present invention described previously can be applied to traverse a network. Therefore, no virtual external link was required. VPNs typically interconnect subnets 640, 650, 660 in the same network. VPNs typically require defined QoS with encryption at the endpoint. The desired QoS is signaled by a protocol such as IETF RSVP. In this embodiment, it is assumed that the endpoint of the VPN is set. In FIG. 10 these end points are identified by the letters A, B, and C. The network in which the VPN is formed has both a router node 660 with RSVP function and a router node 700 without RSVP function. During the solicitation phase, the SSAP includes the address of the desired endpoint for the VPN so that an appropriate virtual foreign link 670, 680 can be generated during the summary phase. Otherwise, higher levels 690 of the service deployment hierarchy may not be able to determine whether it is possible to interconnect endpoints A, B, and C with the router 660 of RSVP functionality. The transition matrix corresponding to the service deployment hierarchy is similar to that for diff-serv described previously herein with reference to FIG. 4. In matrix M 1 generated from matrices M 1.1 and M 1.2 , m 2,0 = 3 is the cost of the VPN between endpoints A and B. Similarly, the cost of a VPN between endpoints B and C is m 3,2 = 4 and the cost between endpoints A and C is m 3,0 = 6. The dissemination phase can begin by selecting the deployment of the VPN between endpoints A and B, and between B and C to minimize the overall cost.

요약하여, 본 발명의 예를 통해 설명된 것은 다수의 네트워크 노드 (node)를 포함하는 데이터 네트워크에서 서비스 할당 정책 (service allocation policy)에 따라 서비스를 전개하는 방법이다. 할당 정책은 서비스 전개를 위한 노드의 선택을 관리한다. 그 방법은 네트워크 노드를 포함하는 최하위 레벨과, 각각의 레벨에 어서 선행 레벨의 노드 그룹이 각각의 논리적 노드에 의해 표현되는, 하나 이상의 진보적으로 상위인 레벨을 갖는 서비스 전개 계층구조를 정의하는 단계를 포함한다. 그 방법은 또한 전개되는 서비스를 지정하는 서비스 보급 명령을 발생하는 단계를 포함한다. 서비스 보급 명령은 할당 정책과 함께 계층구조의 상위 레벨에 있는 논리적 노드로부터 계층구조의 하위 레벨 또는 각각의 하위 레벨에 있는 노드에 공급된다. 서비스 보급 명령에서 지정된 서비스는 할당 정책에 따라 선택된 네트워크 노드에 자동적으로 인스톨된다. 또한, 다수의 노드를 포함하는 네트워크 시스템이 또한 본 발명의 또 다른 예를 통해 설명되었다. 그 시스템은 상술된 서비스 전개 방법을 실행하도록 배열된다. 이러한 네트워크 시스템의 네트워크 노드는 본 발명의 또 다른 예를 통해 설명되었다.In summary, what has been described through an example of the present invention is a method of deploying a service according to a service allocation policy in a data network including a plurality of network nodes. The allocation policy manages the selection of nodes for service deployment. The method includes defining a service deployment hierarchy having a lowest level that includes a network node and one or more progressively higher levels where each level of node group is represented by a respective logical node at each level. Include. The method also includes generating a service dissemination command that specifies the service to be deployed. The service dissemination command, along with the allocation policy, is supplied from the logical nodes at the top level of the hierarchy to the nodes at the lower level or each of the lower levels of the hierarchy. The service specified in the service dissemination command is automatically installed on the selected network node according to the allocation policy. In addition, a network system including multiple nodes has also been described with another example of the present invention. The system is arranged to execute the service deployment method described above. The network node of such a network system has been described through another example of the present invention.

Claims (7)

다수의 네트워크 노드(network node)를 포함하는 데이터 네트워크에서 서비스의 전개를 위해 노드의 선택을 관리하는 서비스 할당 정책 (service allocation policy)에 따라 서비스를 전개(deployment)하는 방법에 있어서,A method of deploying a service according to a service allocation policy managing a selection of nodes for deployment of a service in a data network including a plurality of network nodes, the method comprising: 상기 네트워크 노드들을 포함하는 최하위 레벨 및 하나 이상의 진보적으로 상위인 레벨 - 각각의 상기 상위 레벨에서 선행 레벨(preceding level)의 노드 그룹은 각각의 논리적 노드에 의해 표현됨 - 을 갖는 서비스 전개 계층구조를 정의하는 단계;Defining a service deployment hierarchy having a lowest level containing said network nodes and at least one progressively higher level, wherein at each of said higher levels a group of nodes of a preceding level is represented by each logical node; step; 전개될 상기 서비스를 지정하는 서비스 보급 명령을 발생하는 단계;Generating a service dissemination command specifying the service to be deployed; 상기 서비스 보급 명령을 상기 할당 정책에 따라 상기 계층구조의 상위 레벨에 있는 논리적 노드로부터 상기 계층구조의 상기 하위 레벨 또는 각각의 하위 레벨에 있는 노드에 공급하는 단계; 및Supplying the service dissemination command to a node at the lower level or each lower level of the hierarchy from a logical node at a higher level of the hierarchy in accordance with the allocation policy; And 상기 할당 정책에 따라 선택된 네트워크 노드에 상기 서비스 보급 명령에서 지정된 상기 서비스를 자동적으로 인스톨하는 단계Automatically installing the service specified in the service distributing command to the selected network node according to the allocation policy; 를 포함하는 것을 특징으로 하는 방법.Method comprising a. 제1항에 있어서,The method of claim 1, 전개될 상기 서비스의 요구 조건을 나타내는 서비스 권유(service solicitation)를 상기 계층구조의 상위 레벨에 있는 상기 논리적 노드로부터 상기 계층구조의 하위 레벨에 있는 상기 네트워크 노드로 공급하는 단계;Supplying a service solicitation indicative of a requirement of the service to be deployed from the logical node at a higher level of the hierarchy to the network node at a lower level of the hierarchy; 전개될 서비스를 지원하는 상기 노드의 능력을 나타내는 측정치(metric)를 발생하도록 각 네트워크 노드의 기능과 상기 서비스 권유를 비교하는 단계;Comparing the service invitation with the function of each network node to generate a metric indicative of the node's ability to support the service to be deployed; 상기 계층구조의 그 다음 상위 레벨에 대해 요약된 측정치를 발생하도록 상기 측정치를 요약하는 단계 및 이어지는 레벨들에 대해 상기 요약 단계를 반복하는 단계; 및Summarizing the measurement and repeating the summarizing step for subsequent levels to generate a summarized measurement for the next higher level of the hierarchy; And 상기 상위 레벨에서의 상기 요약된 측정치에 의존하여 상기 보급 명령을 발생하는 단계Generating the dissemination command depending on the summarized measurement at the higher level 를 더 포함하는 것을 특징으로 하는 방법.Method further comprising a. 제1항에 있어서,The method of claim 1, 상기 서비스의 동적인 재전개를 허용하도록, 하나 이상의 상기 선택된 노드를 나타내는 논리적 노드에서 정보를 유지하는 단계Maintaining information in a logical node representing one or more of the selected nodes to allow for dynamic redeployment of the service; 를 더 포함하는 것을 특징으로 하는 방법.Method further comprising a. 제2항에 있어서,The method of claim 2, 상기 요약 단계는 하나 이상의 상기 레벨에서의 다른 노드 그룹에 대해 다른 요약 과정을 포함하는 것을 특징으로 하는 방법.The summarizing step comprises a different summarization process for different node groups at one or more of the levels. 다수의 노드를 구비하는 네트워크 시스템에 있어서,In a network system having a plurality of nodes, 선행하는 청구항 중 한 항에서 청구된 바와 같은 서비스 전개 방법을 실행하도록 배열되는 것을 특징으로 하는 네트워크 시스템.A network system, arranged to carry out a service deployment method as claimed in one of the preceding claims. 제5항에서 청구된 바와 같은 네트워크 시스템의 네트워크 노드.A network node of a network system as claimed in claim 5. 제1항 내지 제4항 중 한 항에서 청구된 바와 같은 방법을 실행하는 시스템을 구성하도록 네트워크 시스템의 노드 내에 로드(load)되는 컴퓨터 프로그램 코드 수단을 포함하는 것을 특징으로 하는 기록 매체.A computer readable medium comprising computer program code means loaded into a node of a network system to constitute a system for executing a method as claimed in claim 1.
KR10-2001-0051261A 2000-09-01 2001-08-24 Service deployment in data networks KR100462140B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00118965 2000-09-01
EP00118965.3 2000-09-01

Publications (2)

Publication Number Publication Date
KR20020018559A KR20020018559A (en) 2002-03-08
KR100462140B1 true KR100462140B1 (en) 2004-12-17

Family

ID=8169723

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0051261A KR100462140B1 (en) 2000-09-01 2001-08-24 Service deployment in data networks

Country Status (5)

Country Link
JP (1) JP3584978B2 (en)
KR (1) KR100462140B1 (en)
CN (1) CN1242336C (en)
DE (1) DE60143147D1 (en)
SG (1) SG101997A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101652959B (en) * 2007-03-12 2013-01-30 Lm爱立信电话有限公司 Arrangement and method relating to network management
US11171844B2 (en) * 2019-06-07 2021-11-09 Cisco Technology, Inc. Scalable hierarchical data automation in a network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1032594A (en) * 1996-04-04 1998-02-03 Lucent Technol Inc System and method for hierarchical multi-cast routing in atm network
JPH10257060A (en) * 1997-03-06 1998-09-25 Toshiba Corp Method for selecting and connecting route of communication node, atm node and network
KR19990011808A (en) * 1997-07-25 1999-02-18 윤종용 How to Navigate Routing Paths for Connection Paths
JPH11145976A (en) * 1997-11-07 1999-05-28 Nec Commun Syst Ltd Asynchronous transfer mode communication network
KR20010064255A (en) * 1999-12-27 2001-07-09 오길록 Method of PNNI node management in ATM switching system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2188288C (en) * 1994-04-21 2000-08-29 Donald George Paul Waters Service creation apparatus for a communications network
US5640505A (en) * 1994-09-07 1997-06-17 British Telecommunications Public Limited Company Operational support structure for a telecommunications network
US5764740A (en) * 1995-07-14 1998-06-09 Telefonaktiebolaget Lm Ericsson System and method for optimal logical network capacity dimensioning with broadband traffic
DE69726853T2 (en) * 1996-05-23 2004-08-05 Alcatel USA Sourcing, L.P., Plano SYSTEM AND METHOD FOR TOTAL PICKING OF TELECOMMUNICATION SERVICES
US5826239A (en) * 1996-12-17 1998-10-20 Hewlett-Packard Company Distributed workflow resource management system and method
CA2348071A1 (en) * 1998-10-20 2000-04-27 Ajay Deo Method and apparatus for providing real-time call processing services in an intelligent network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1032594A (en) * 1996-04-04 1998-02-03 Lucent Technol Inc System and method for hierarchical multi-cast routing in atm network
JPH10257060A (en) * 1997-03-06 1998-09-25 Toshiba Corp Method for selecting and connecting route of communication node, atm node and network
KR19990011808A (en) * 1997-07-25 1999-02-18 윤종용 How to Navigate Routing Paths for Connection Paths
JPH11145976A (en) * 1997-11-07 1999-05-28 Nec Commun Syst Ltd Asynchronous transfer mode communication network
KR20010064255A (en) * 1999-12-27 2001-07-09 오길록 Method of PNNI node management in ATM switching system

Also Published As

Publication number Publication date
DE60143147D1 (en) 2010-11-11
SG101997A1 (en) 2004-02-27
CN1340767A (en) 2002-03-20
KR20020018559A (en) 2002-03-08
JP2002237835A (en) 2002-08-23
CN1242336C (en) 2006-02-15
JP3584978B2 (en) 2004-11-04

Similar Documents

Publication Publication Date Title
US10348571B2 (en) Methods and apparatus for accessing dynamic routing information from networks coupled to a wide area network (WAN) to determine optimized end-to-end routing paths
JP7290732B2 (en) Data transfer method and related equipment
US6584071B1 (en) Routing with service level guarantees between ingress-egress points in a packet network
US6574663B1 (en) Active topology discovery in active networks
US6988133B1 (en) Method and apparatus for communicating network quality of service policy information to a plurality of policy enforcement points
US6594268B1 (en) Adaptive routing system and method for QOS packet networks
US5953312A (en) Method and apparatus for determining alternate routes in a network using a connection-oriented protocol
US6976087B1 (en) Service provisioning methods and apparatus
CN112840606A (en) Asynchronous object manager in a network routing environment
RU2358398C2 (en) Method of moving traffic, with predetermination of service category of data transfer, in network without establishing connection
Bouillet et al. Lightpath re-optimization in mesh optical networks
US20050010685A1 (en) Method and a system for enabling data to be stored in a computer network; a method and a system for storing data in a computer network
US20050089044A1 (en) Globally accessible computer network-based broadband communication system with user-controllable quality of information delivery and flow priority
US20060039364A1 (en) Systems and methods for policy-enabled communications networks
US20060209851A1 (en) Method and apparatus for border gateway protocol route management and routing policy modeling
US20080144641A1 (en) Method and Device for Creating a Tunnel in a Label-Switched Telecommunication Network
US7168044B1 (en) Apparatus and method for automatic network connection provisioning
Scoglio et al. TEAM: A traffic engineering automated manager for DiffServ-based MPLS networks
JP2009519666A (en) Resource sharing between network and tunnel
CN109587058B (en) Method and device for selecting traffic engineering path
KR100462140B1 (en) Service deployment in data networks
EP1185029B1 (en) Service deployment in data networks
US20210184894A1 (en) ACTN Virtual Network Augmentation for Resource Sharing
Klincewicz Optimization issues in quality of service
Haas et al. A hierarchical mechanism for the scalable deployment of services over large programmable and heterogeneous 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: 20101109

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee