KR102093296B1 - Data processing system changing massive path time-deterministically and operating method of the system - Google Patents

Data processing system changing massive path time-deterministically and operating method of the system Download PDF

Info

Publication number
KR102093296B1
KR102093296B1 KR1020140015282A KR20140015282A KR102093296B1 KR 102093296 B1 KR102093296 B1 KR 102093296B1 KR 1020140015282 A KR1020140015282 A KR 1020140015282A KR 20140015282 A KR20140015282 A KR 20140015282A KR 102093296 B1 KR102093296 B1 KR 102093296B1
Authority
KR
South Korea
Prior art keywords
transmission table
event
data
bus
data processing
Prior art date
Application number
KR1020140015282A
Other languages
Korean (ko)
Other versions
KR20150094239A (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 한국전자통신연구원
Priority to KR1020140015282A priority Critical patent/KR102093296B1/en
Priority to US14/613,565 priority patent/US9614749B2/en
Publication of KR20150094239A publication Critical patent/KR20150094239A/en
Application granted granted Critical
Publication of KR102093296B1 publication Critical patent/KR102093296B1/en

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/02Topology update or discovery
    • H04L45/028Dynamic adaptation of the update intervals, e.g. event-triggered updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/247Multipath using M:N active or standby paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Landscapes

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

Abstract

데이터 경로의 전환이 필요한 이벤트마다에 대응되는 미리 정의된 예비 전송 테이블들- 전송 테이블들은 모든 물리적, 논리적 경로에 대한 목적지 정보를 포함함-을 저장하고, 내부 통신 수단을 통해 수신한 정보를 기초로, 전송 테이블의 변경 여부를 판단하여 예비 전송 테이블들 중 이벤트에 대응하는 예비 전송 테이블을 선택하여 활성화 시키는 데이터 처리기를 각각 포함하는 복수 개의 라인 정합 블록들; 및 복수 개의 라인 정합 블록들 간에 데이터 경로의 전환이 필요한 이벤트와 관련된 정보를 주고받는 공유 버스를 포함하는, 데이터 처리 시스템을 제공할 수 있다. Pre-defined preliminary transmission tables corresponding to each event requiring a data path change-transmission tables store destination information for all physical and logical paths-based on information received through internal communication means , A plurality of line matching blocks each comprising a data processor for determining whether to change a transmission table and selecting and activating a spare transmission table corresponding to an event from among the transmission tables; And a shared bus that exchanges information related to an event in which a data path needs to be switched between a plurality of line matching blocks.

Description

시간 확정적으로 대용량 경로를 전환하는 데이터 처리 시스템 및 데이터 처리 시스템의 동작 방법{DATA PROCESSING SYSTEM CHANGING MASSIVE PATH TIME-DETERMINISTICALLY AND OPERATING METHOD OF THE SYSTEM}A data processing system that switches a large-capacity path in a timely manner and an operation method of a data processing system {DATA PROCESSING SYSTEM CHANGING MASSIVE PATH TIME-DETERMINISTICALLY AND OPERATING METHOD OF THE SYSTEM}

본 발명은 시간 확정적으로 대용량 경로를 전환하는 데이터 처리 시스템 및 데이터 처리 시스템의 동작 방법에 관한 것이다.The present invention relates to a data processing system for switching a large-capacity path with time and a method for operating the data processing system.

네트워크 상의 패킷 중계에 있어 아이피 기반의 룩업(Lookup)은 프로세싱 자원 및 메모리 자원의 소모가 크다. 때문에 아이피 기반의 룩업(Lookup)을 대신하여 패킷 스위칭이 가능한 MPLS(Multi-Protocol Label Switching) 기술이 폭넓게 사용되고 있고, MPLS 기술을 보다 간략화하여 회선 기술 기반의 백홀(Back-haul)망과 같은 데이터 전송망에 적용하고자 하는 시도가 다각도로 이루어지고 있다. 그 결과, MPLS-TP(Multi-Protocol Label Switching - Transport Profile) 기술과 이더넷이 결합되거나 또는 MPLS-TP 기술이 일부 변형 적용된 데이터 패킷 스위칭 기술이 출현하고 있다.IP-based lookup in packet relaying on a network consumes a large amount of processing resources and memory resources. Therefore, MPLS (Multi-Protocol Label Switching) technology capable of packet switching is widely used in place of IP-based lookup, and data transmission network such as backhaul network based on circuit technology is simplified by simplifying MPLS technology. Attempts to apply to are being made from multiple angles. As a result, data packet switching technology in which MPLS-TP (Multi-Protocol Label Switching-Transport Profile) technology is combined with Ethernet or MPLS-TP technology is partially applied is emerging.

이 밖에도, 기존 회선망의 확정적인 전송 서비스의 제공 능력과 회선 고장에 대응하는 능력 및 회선 관리 능력을 수용하는 한편, 저비용/저에너지의 패킷 전송이 가능한 데이터 패킷 전송망 기술에 대한 수요가 증가되고 있다. 이에 따라, MPLS의 단순화된 전송 기술에 더해 설정 경로의 복구 능력과 관리 능력을 추가한 MPLS-TP 기술을 전송 장비와 전송망에 적용하고자 하는 시도가 활발히 진행되고 있다. In addition, while accommodating the ability to provide definite transmission services of existing circuit networks, the ability to cope with circuit failures, and the ability to manage circuits, the demand for data packet transmission network technologies capable of low-cost / low-energy packet transmission is increasing. Accordingly, attempts to apply the MPLS-TP technology to the transmission equipment and the transmission network in addition to the simplified transmission technology of the MPLS and the recovery capability and management capability of the configuration path have been actively conducted.

하지만, 패킷 중계는 단순한 패킷 스위칭 방식을 사용하기 때문에 대용량의 데이터 전송 기술의 실현에 큰 무리가 없지만, 패킷 기반이기 때문에 확정적 경로 서비스 및 경로 관리 및 복구 능력을 구현하는데 있어서는 어려움이 있다. 또한, 대용량의 데이터 전송이 가능하게 되면서 하나의 전송 파이프에 대량의 회선 경로를 수용할 수 있어 회선 경로 서비스 비용이 줄 수 있지만, 다른 한편으로 회선망에서 제공했던 회선 경로 복구 및 관리 기능을 실현하기 위한 비용과 어려움은 증가하고 있다.However, since packet relaying uses a simple packet switching method, it is not difficult to realize a large-capacity data transmission technology, but it is difficult to implement a definite path service and path management and recovery capability because it is packet-based. In addition, although it is possible to transmit a large amount of data, a large number of circuit paths can be accommodated in one transmission pipe, thereby reducing the cost of the circuit path service, but on the other hand, for realizing the circuit path recovery and management functions provided by the circuit network. Costs and difficulties are increasing.

일 실시예에 따르면, 패킷 기반 데이터 처리 장비에서 다수의 물리적, 논리적 경로가 포함된 데이터 포트, 라인 정합 블록 또는 논리적 경로 그룹에 경로 전환이 필요한 문제가 발생한 경우에 문제가 발생한 경로를 일시에 대체 경로로 전환할 수 있는 시스템 및 방법을 제공할 수 있다. According to one embodiment, in the case of a packet-based data processing equipment having a problem that requires a route switch to a data port, a line matching block, or a logical path group containing a plurality of physical and logical paths, the path to which the problem occurred is temporarily replaced. It is possible to provide a system and method to switch to.

일 실시예에 따르면, 데이터 처리 시스템은 데이터 경로의 전환이 필요한 이벤트마다에 대응되는 미리 정의된 예비 전송 테이블들- 상기 예비 전송 테이블들은 모든 물리적, 논리적 경로에 대한 목적지 정보를 포함함-을 저장하고, 내부 통신 수단을 통해 수신한 정보를 기초로, 전송 테이블의 변경 여부를 판단하여 상기 예비 전송 테이블들 중 상기 이벤트에 대응하는 예비 전송 테이블을 선택하여 활성화 시키는 데이터 처리기를 각각 포함하는 복수 개의 라인 정합 블록들; 및 상기 복수 개의 라인 정합 블록들 간에 상기 데이터 경로의 전환이 필요한 이벤트와 관련된 정보를 주고받는 공유 버스를 포함한다. According to an embodiment, the data processing system stores predefined preliminary transmission tables corresponding to each event requiring a change of the data path, wherein the preliminary transmission tables contain destination information for all physical and logical paths. Based on the information received through the internal communication means, a plurality of line matching each comprising a data processor for determining whether or not to change the transmission table, and selecting and activating a spare transmission table corresponding to the event among the preliminary transmission tables Blocks; And a shared bus that exchanges information related to an event requiring switching of the data path between the plurality of line matching blocks.

상기 데이터 처리기는, 상기 라인 정합 블록들의 상태 정보를 수집하여 상기 이벤트의 발생 여부를 파악하고, 상기 이벤트가 발생한 경우에 상기 내부 통신 수단을 통해 상기 라인 정합 블록들의 적어도 일부에게 상기 이벤트의 발생 여부를 일시에 알릴 수 있다. The data processor collects state information of the line matching blocks to determine whether the event has occurred, and when the event occurs, determines whether the event has occurred to at least a portion of the line matching blocks through the internal communication means. You can inform at a time.

상기 데이터 처리기는, 상기 이벤트가 발생한 경우, 상기 이벤트의 발생 여부를 포함하는 메시지를 구성하고, 상기 메시지를 상기 공유 버스를 통해 상기 이벤트가 발생한 라인 정합 블록을 제외한 나머지 라인 정합 블록들에게 전달하는 버스 제어기; 상기 버스 제어기의 송, 수신 메시지를 상기 공유 버스를 위한 물리적인 메시지 포맷으로 변환하는 버스 정합 포트; 상기 예비 전송 테이블들-상기 예비 전송 테이블들은 이벤트 별로 정의됨-을 저장하는 데이터 처리 엔진 메모리; 및 상기 데이터 처리 엔진 메모리에 저장된 예비 전송 테이블들을 참조하여 데이터 포트를 통해 들러오는 인입 데이터의 인출 경로에 해당하는 출력 데이터 포트를 찾는 데이터 처리 엔진을 포함할 수 있다. The data processor, when the event occurs, configures a message including whether the event occurs, and delivers the message to the remaining line matching blocks except the line matching block where the event occurs through the shared bus Controller; A bus matching port for converting transmission and reception messages of the bus controller into a physical message format for the shared bus; A data processing engine memory storing the preliminary transmission tables-the preliminary transmission tables are defined for each event; And a data processing engine that finds an output data port corresponding to a fetch path of incoming data coming in through the data port by referring to the preliminary transmission tables stored in the data processing engine memory.

상기 버스 제어기는, 상기 메시지를 수신한 경우, 상기 메시지를 해석하여 상기 전송 테이블의 변경 여부를 판단하고, 상기 판단 결과를 기초로 상기 선택된 예비 전송 테이블을 활성 전송 테이블로 전환할 수 있다. When receiving the message, the bus controller may interpret the message to determine whether the transmission table is changed, and convert the selected preliminary transmission table to an active transmission table based on the determination result.

상기 버스 제어기는, 상기 선택된 예비 전송 테이블의 내용을 상기 활성 전송 테이블의 위치로 복사함으로써 상기 선택된 예비 전송 테이블을 활성 전송 테이블로 전환할 수 있다. The bus controller may convert the selected spare transmission table to an active transmission table by copying the contents of the selected spare transmission table to the location of the active transmission table.

상기 버스 제어기는, 상기 활성 전송 테이블의 기저 주소를 상기 선택된 예비 전송 테이블의 기저 주소로 변경함으로써 상기 선택된 예비 전송 테이블을 활성 전송 테이블로 전환할 수 있다. The bus controller may convert the selected spare transmission table to an active transmission table by changing the base address of the active transmission table to the base address of the selected spare transmission table.

상기 버스 제어기는, 상기 활성 전송 테이블을 가상 공간에 위치시키고, 상기 선택된 예비 전송 테이블의 물리적인 주소를 상기 가상 공간의 활성 전송 테이블의 위치에 맵핑 함으로써 상기 선택된 예비 전송 테이블을 활성 전송 테이블로 전환할 수 있다. The bus controller converts the selected spare transmission table into an active transmission table by placing the active transmission table in a virtual space and mapping a physical address of the selected spare transmission table to a location of the active transmission table in the virtual space. You can.

상기 미리 정의된 예비 전송 테이블들을 저장하는 버스 제어기 메모리를 더 포함하고, 상기 버스 제어기는, 상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 지정하는 전송 테이블 지정자; 및 상기 버스 정합 포트를 통해 송, 수신되는 상기 라인 정합 블록들 간의 메시지를 해석하여 상기 데이터 경로의 전환이 필요한 이벤트를 인지하고, 상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 상기 전송 테이블 지정자로 입력하는 경로 변경 해석기를 포함할 수 있다. Further comprising a bus controller memory for storing the predefined preliminary transmission tables, the bus controller includes: a transmission table designator designating an ID of the preliminary transmission table corresponding to the event; And interpreting a message between the line matching blocks transmitted and received through the bus matching port to recognize an event requiring switching of the data path, and input an ID of a preliminary transmission table corresponding to the event as the transmission table designator. It may include a path change interpreter.

상기 전송 테이블 지정자에 의해 선택된 예비 전송 테이블은 상기 데이터 처리 엔진을 위한 활성 전송 테이블로 사용될 수 있다. The preliminary transmission table selected by the transmission table designator can be used as an active transmission table for the data processing engine.

상기 버스 제어기는, 상기 버스 정합 포트를 통해 송, 수신되는 상기 라인 정합 블록들 간의 메시지를 해석하여 상기 데이터 경로의 전환이 필요한 이벤트를 인지하고, 상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 상기 전송 테이블 지정자로 입력하는 경로 변경 해석기를 포함하고, 상기 데이터 처리 엔진은, 상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 지정하는 전송 테이블 지정자; 및 상기 미리 정의된 예비 전송 테이블을 저장하는 데이터 처리 엔진 메모리를 포함할 수 있다. The bus controller interprets a message between the line matching blocks transmitted and received through the bus matching port, recognizes an event requiring switching of the data path, and transmits an ID of a preliminary transmission table corresponding to the event. And a path change interpreter input as a table designator, wherein the data processing engine comprises: a transport table designator that designates an ID of a preliminary transport table corresponding to the event; And a data processing engine memory storing the predefined preliminary transmission table.

상기 데이터 경로의 전환이 필요한 이벤트는 다수의 물리적 경로 또는 논리적 경로가 포함된 데이터 포트들, 상기 라인 정합 블록들, 및 논리적 경로 그룹 중 적어도 하나에서 발생할 수 있다. The event requiring the switching of the data path may occur in at least one of data ports including multiple physical paths or logical paths, the line matching blocks, and a logical path group.

상기 라인 정합 블록들의 상태 정보를 수집하여 상기 이벤트의 발생 여부를 파악하고, 상기 이벤트가 발생한 경우에 상기 내부 통신 수단을 통해 상기 라인 정합 블록들의 적어도 일부에게 상기 이벤트의 발생 여부를 알리는 시스템 제어기를 포함하는 시스템 제어 블록을 더 포함할 수 있다. And a system controller that collects state information of the line matching blocks to determine whether the event has occurred, and notifies at least a portion of the line matching blocks through the internal communication means when the event occurs. It may further include a system control block.

상기 시스템 제어기는, 상기 이벤트가 발생한 경우, 상기 이벤트의 발생 여부를 포함하는 메시지를 구성하고, 상기 메시지를 상기 공유 버스를 통해 나머지 라인 정합 블록들의 버스 제어기로 전달하는 버스 제어기; 및 상기 버스 제어기의 송, 수신 메시지를 상기 공유 버스를 위한 물리적인 메시지 포맷으로 변환하는 버스 정합 포트를 포함할 수 있다. The system controller comprises: a bus controller configured to construct a message including whether the event occurs when the event occurs, and deliver the message to the bus controller of the remaining line matching blocks through the shared bus; And a bus matching port for converting transmission and reception messages of the bus controller into a physical message format for the shared bus.

상기 공유 버스는, 상기 라인 정합 블록들 간의 사용자 데이터의 교환을 중계하는 데이터 스위치, 및 스위치 포트들로 구성된 데이터 경로와 프로세서들 간의 메시징을 위한 제어 경로 중 적어도 하나를 포함할 수 있다. The shared bus may include at least one of a data switch relaying the exchange of user data between the line matching blocks, and a data path composed of switch ports and a control path for messaging between processors.

상기 라인 정합 블록들 및 상기 시스템 제어 블록에 포함된 버스 제어기 및 버스 정합 포트는 상기 공유 버스의 버스 노드로 동작하고, 상기 공유 버스는, 내부 통신을 위해 상기 라인 정합 블록들 및 시스템 제어 블록 중 특정 블록만이 마스터 기능을 수행하는 마스터 버스 노드가 상기 라인 정합 블록들 및 상기 시스템 제어 블록 별로 존재하고, 상기 마스터 버스 노드가 슬레이브 버스 노드 전체 또는 특정 그룹으로 일괄적으로 공통의 메시지를 전달하는 멀티 버스 구조를 가질 수 있다. The bus controller and bus matching port included in the line matching blocks and the system control block act as a bus node of the shared bus, and the shared bus is specified among the line matching blocks and the system control block for internal communication. A multi-bus in which only a block, a master bus node performing a master function exists for each of the line matching blocks and the system control block, and the master bus node collectively transmits a common message to all or a specific group of slave bus nodes It can have a structure.

일 실시예에 따르면, 데이터 처리 시스템의 동작 방법은, 데이터 경로의 전환이 필요한 이벤트마다에 대응되는 미리 정의된 예비 전송 테이블들- 상기 예비 전송 테이블들은 모든 물리적, 논리적 경로에 대한 목적지 정보를 포함함-을 저장하는 단계; 상기 이벤트가 발생한 경우에, 내부 통신 수단을 통해 상기 이벤트의 발생 여부를 일시에 복수 개의 라인 정합 블록들에게 알리는 단계; 상기 이벤트 발생으로 인한 전송 테이블의 변경 여부를 판단하는 단계; 및 상기 판단 결과를 기초로, 상기 예비 전송 테이블들 중 상기 이벤트에 대응되는 예비 전송 테이블을 선택하여 활성화 시키는 단계를 포함한다. According to an embodiment of the present invention, a method of operating a data processing system includes predefined preliminary transmission tables corresponding to each event requiring a change of a data path-the preliminary transmission tables include destination information for all physical and logical paths. -To save; When the event occurs, notifying a plurality of line matching blocks at a time whether or not the event occurs through internal communication means; Determining whether a transmission table is changed due to the occurrence of the event; And selecting and activating a preliminary transmission table corresponding to the event from among the preliminary transmission tables based on the determination result.

상기 예비 전송 테이블들을 참조하여 데이터 포트를 통해 들어오는 인입 데이터의 인출 경로에 해당하는 출력 데이터 포트를 찾는 단계를 더 포함할 수 있다. The method may further include finding an output data port corresponding to an outgoing path of incoming data coming through the data port by referring to the preliminary transmission tables.

버스 정합 포트를 통해 송, 수신되는 상기 라인 정합 블록들 간의 메시지를 해석하여 상기 이벤트를 인지하는 단계를 더 포함할 수 있다. The method may further include recognizing the event by interpreting a message between the line matching blocks transmitted and received through a bus matching port.

상기 예비 전송 테이블을 선택하여 활성화 시키는 단계는 상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 전송 테이블 지정자로 입력하는 단계를 포함할 수 있다. Selecting and activating the preliminary transmission table may include inputting an ID of the preliminary transmission table corresponding to the event as a transmission table designator.

상기 예비 전송 테이블을 선택하여 활성화 시키는 단계는 상기 예비 전송 테이블들 중 선택된 예비 전송 테이블의 내용을 활성 전송 테이블의 위치로 복사하는 단계를 포함할 수 있다. The step of selecting and activating the preliminary transmission table may include copying the contents of the selected preliminary transmission table among the preliminary transmission tables to a location of the active transmission table.

본 발명의 일 측에 따르면, 패킷 기반의 데이터 처리 장비에서 다수의 물리적, 논리적 경로가 포함된 데이터 포트, 라인 정합 블록 또는 논리적 경로 그룹에 경로 전환이 필요한 문제가 발생한 경우에 문제가 발생한 경로를 일시에 대체 경로로 전환할 수 있다.According to an aspect of the present invention, in a packet-based data processing equipment, when a problem in which a path is required for a data port, a line matching block, or a logical path group including a plurality of physical and logical paths occurs, a path in which the problem occurs is temporarily suspended You can switch to alternative routes.

도 1은 일 실시예에 따른 데이터 처리 시스템의 구조를 나타낸 도면이다.
도 2는 일 실시예에 따른 내부 통신 수단의 일 예인 공유 버스가 공통 버스 구조(200)를 가지는 경우를 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 내부 통신 수단의 일 예인 공유 버스가 멀티 버스 구조(300)를 가지는 경우를 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 데이터 처리기의 구조를 설명하기 위한 도면이다.
도 5는 다른 실시예에 따라 데이터 처리기의 구조를 설명하기 위한 도면이다.
도 6은 일 실시예에 따라 데이터 경로의 전환을 필요로 하는 이벤트 별로 전송 테이블을 정의하고, 이를 경로 전환에 이용하는 일 예를 설명하기 위한 도면이다.
도 7은 일 실시예에 따라 데이터 처리 엔진 메모리에 이벤트 별로 구분된 활성 전송 테이블을 이용하여 경로를 전환하는 일 예를 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 데이터 처리 시스템의 동작 방법을 나타낸 플로우차트이다.
1 is a diagram showing the structure of a data processing system according to an embodiment.
2 is a view for explaining a case where a shared bus, which is an example of an internal communication means according to an embodiment, has a common bus structure 200.
FIG. 3 is a diagram illustrating a case where a shared bus, which is an example of an internal communication means, according to an embodiment, has a multi-bus structure 300.
4 is a view for explaining the structure of a data processor according to an embodiment.
5 is a view for explaining the structure of a data processor according to another embodiment.
FIG. 6 is a diagram for describing an example of defining a transmission table for each event requiring switching of a data path and using it for path switching according to an embodiment.
7 is a diagram for explaining an example of switching a path using an active transmission table classified for each event in a data processing engine memory according to an embodiment.
8 is a flowchart illustrating a method of operating a data processing system according to an embodiment.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the present invention is not limited or limited by the embodiments. In addition, the same reference numerals shown in each drawing denote the same members.

데이터 처리 장비에서, 대량의 물리적, 논리적 회선 경로를 수용하는 물리 내지 가상의 링크, 포트 또는 블록에 문제가 생기게 되면, 해당 링크, 포트, 블록을 지나가는 활성 경로들은 일시에 대체 회선 경로로 전환되어야 한다. 이때, 데이터 처리 장비의 모든 경로는 전송 테이블에 정의되어 있다. 중단 없는 데이터 서비스를 위해서는 물리적, 논리적 경로에서의 문제의 인식과 대응이 고정된 짧은 시간 내에 끝나야 한다. 물리적, 논리적 경로에서의 문제의 발생으로 인해, 문제의 경로를 대체 경로로 변경하기 위해서는 전송 테이블에서 문제의 경로에 해당하는 엔트리를 찾아 그 내용을 갱신해야 한다. In data processing equipment, if there is a problem with a physical or virtual link, port, or block that accommodates a large number of physical and logical circuit paths, the active paths passing through the link, port, and block must be temporarily switched to an alternate circuit path. . At this time, all paths of the data processing equipment are defined in the transmission table. For uninterrupted data service, the recognition and response of problems in physical and logical paths must be completed within a fixed short time. Due to the occurrence of a problem in the physical or logical path, in order to change the path of the problem to an alternative path, the entry corresponding to the path of the problem must be found in the transmission table and updated.

데이터 처리 장비가 하나의 데이터 처리 엔진을 사용하여 데이터를 중계한다면, 전송 테이블의 갱신이 하나의 데이터 처리 엔진의 전송 테이블에 국한되기 때문에 그 수정이 비교적 간단하다. 데이터 처리 장비가 다수의 데이터 처리 엔진을 사용할 경우, 경로 전환을 위한 전송 테이블의 갱신이 모든 데이터 처리 엔진의 전송 테이블과 관련되기 때문에 그 처리 완료 시간이 길고, 처리 과정도 복잡하다.If the data processing equipment relays data using one data processing engine, the modification is relatively simple because the update of the transmission table is limited to the transmission table of one data processing engine. When the data processing equipment uses multiple data processing engines, the processing completion time is long and the processing process is complicated because the update of the transmission table for path switching is related to the transmission tables of all data processing engines.

다수의 논리적 경로가 포함된 데이터 포트 내지 라인 정합 블록들에 문제가 발생하면, 관련 경로 모두를 대체 경로로 전환해야 하는데, 대체할 경로마다 그 정보를 주고 받아 일일이 전송 테이블을 변경하게 되면 데이터 처리 장비 내의 모든 전송 테이블의 갱신에 소요되는 시간이 대체할 경로의 수에 비례하여 증가하게 된다.When a problem occurs in data port or line matching blocks including a plurality of logical paths, all related paths must be switched to an alternative path, and data is exchanged when the transmission table is changed for each alternate path. The time taken to update all the transport tables in the table increases in proportion to the number of paths to be replaced.

따라서, 일 실시예에서는 데이터 처리 장비에서 대규모 경로 전환이 요구되는 물리 내지 가상의 링크, 포트, 라인 정합 블록의 고장에 시간 확정적 대응이 가능한 데이터 처리 시스템의 구조 및 그 동작 방법을 제시한다.
Accordingly, in one embodiment, a structure of a data processing system capable of time-deterministic response to a failure of a physical or virtual link, port, and line matching block requiring large-scale path switching in data processing equipment and an operation method thereof are provided.

도 1은 일 실시예에 따른 데이터 처리 시스템의 구조를 나타낸 도면이다. 1 is a diagram showing the structure of a data processing system according to an embodiment.

도 1을 참조하면, 일 실시예에 따른 데이터 처리 시스템(100)은 데이터 처리기를 각각 포함하는 복수 개의 라인 정합 블록들(110, 120, 130, 140), 시스템 제어기를 포함하는 시스템 제어 블록들(150, 160) 및 공유 버스(170)를 포함할 수 있다. Referring to FIG. 1, the data processing system 100 according to an embodiment includes a plurality of line matching blocks 110, 120, 130, 140 each including a data processor, and system control blocks including a system controller ( 150, 160) and a shared bus 170.

데이터 처리기는 데이터 경로의 전환이 필요한 이벤트마다에 대응되는 미리 정의된 예비 전송 테이블들을 저장한다. 예비 전송 테이블들은 모든 물리적, 논리적 경로에 대한 목적지 정보를 포함한다. 데이터 처리기는 내부 통신 수단을 통해 수신한 정보를 기초로, 전송 테이블의 변경 여부를 판단하여 예비 전송 테이블들 중 이벤트에 대응하는 예비 전송 테이블을 선택하여 활성화 시킬 수 있다. 또한, 데이터 처리기는 라인 정합 블록들의 상태 정보를 수집하여 이벤트의 발생 여부를 파악하고, 이벤트가 발생한 경우에 내부 통신 수단을 통해 라인 정합 블록들의 적어도 일부에게 이벤트의 발생 여부를 일시에 알릴 수 있다. The data processor stores predefined preliminary transmission tables corresponding to each event that needs to switch the data path. The preliminary transmission tables include destination information for all physical and logical paths. The data processor may determine whether to change the transmission table based on the information received through the internal communication means and select and activate the spare transmission table corresponding to the event from among the spare transmission tables. In addition, the data processor may collect the status information of the line matching blocks to determine whether an event has occurred, and when the event occurs, notify at least a portion of the line matching blocks through an internal communication means.

만약, 데이터 처리기를 포함하는 라인 정합 블록들에서 상기 동작을 수행하지 못하는 경우에는 시스템 제어기를 포함하는 시스템 제어 블록들(150, 160)이 라인 정합 블록들(110, 120, 130, 140)의 상태 정보를 수집하여 이벤트의 발생 여부를 파악하고, 이벤트가 발생한 경우에 내부 통신 수단을 통해 라인 정합 블록들(110, 120, 130, 140)의 적어도 일부에게 이벤트의 발생 여부를 일시에 알릴 수 있다. If the operation is not performed in the line matching blocks including the data processor, the system control blocks 150 and 160 including the system controller are in the state of the line matching blocks 110, 120, 130, and 140. By collecting information, it is possible to determine whether an event has occurred, and when the event has occurred, it is possible to notify at least a portion of the line matching blocks 110, 120, 130, 140 through the internal communication means at once.

이와 같이 공유 버스(170)를 통해 특정 라인 정합 블록의 이상 여부를 주기적으로 체크하고, 응답이 없거나 라인 정합 블록 전체에서 오류가 발생한 경우에 다른 라인 정합 블록에게 오류 발생 사실을 알리는 동작을 수행하는 블록을 '관리 블록'이라고 부를 수 있다. 관리 블록은 라인 정합 블록 또는 시스템 제어 블록 중 어느 하나의 블록이 될 수 있으며, 예를 들어, 라인 정합 블록 전체에서 오류가 발생한 경우에는 시스템 제어 블록이 관리 블록의 기능을 수행할 수 있다. As described above, a block for periodically checking whether a specific line matching block is abnormal through the shared bus 170 and performing an operation to notify other line matching blocks of an error when there is no response or an error occurs in the entire line matching block Can be called 'management block'. The management block may be any one of the line matching block or the system control block. For example, when an error occurs in the entire line matching block, the system control block may perform the function of the management block.

일반적으로 특정 물리적, 논리적 경로의 목적지 변경이 필요할 경우, 전송 테이블에서 해당 경로의 엔트리(entry)로 가서 그 목적지 정보를 변경할 수 있다. 중단 없는 데이터 서비스를 위해서는 물리적, 논리적 경로에서 발생하는 문제의 인식과 대응이 고정된 짧은 시간 내에 끝나야 한다. 물리적, 논리적 경로에서의 문제 발생으로 인해, 문제의 경로를 대체 경로로 변경하기 위해서는 전송 테이블에서 문제의 경로에 해당하는 엔트리를 찾아 그 내용을 갱신할 수 있다. In general, when it is necessary to change a destination of a specific physical or logical route, it is possible to change the destination information by going to an entry of the corresponding route in the transmission table. For uninterrupted data service, the recognition and response of problems occurring in the physical and logical paths must be completed within a short fixed time. Due to the occurrence of a problem in the physical or logical path, in order to change the path of the problem to an alternative path, an entry corresponding to the path of the problem can be found in the transmission table and its contents can be updated.

예를 들어, 데이터 처리 시스템(100)이 하나의 데이터 처리 엔진만을 사용하여 데이터를 중계하는 경우, 하나의 데이터 처리 엔진의 전송 테이블만 갱신하면 되기 때문에 그 수정이 비교적 간단하다. 반면에, 데이터 처리 시스템(100)이 다수의 데이터 처리 엔진들을 사용하여 데이터를 중계하는 경우, 경로 전환을 위해서는 모든 데이터 처리 엔진의 전송 테이블들을 갱신해야 하므로 그 처리 시간이 길고, 처리 과정 또한 복잡하다.For example, when the data processing system 100 relays data using only one data processing engine, the modification is relatively simple because only the transmission table of one data processing engine needs to be updated. On the other hand, when the data processing system 100 relays data using a plurality of data processing engines, since the transmission tables of all data processing engines must be updated in order to switch the path, the processing time is long and the processing process is also complicated. .

다수의 논리적 경로가 포함된 데이터 포트들(10,20,30,40) 또는 라인 정합 블록들(110, 120. 130, 140)에 문제가 발생하면, 관련 경로 모두를 대체할 경로로 전환해야 한다. 이때, 대체 경로에 대한 정보를 주고 받아 전송 테이블의 내용을 일일이 변경하게 되면, 데이터 처리 시스템(100)에 포함된 모든 전송 테이블의 갱신에 소요되는 시간은 대체할 경로의 수에 비례하여 증가하게 된다.When a problem occurs in data ports 10, 20, 30, 40 or line matching blocks 110, 120. 130, 140 including a plurality of logical paths, all related paths must be switched to a path to be replaced. . At this time, if information about the alternative route is exchanged and the contents of the transmission table are changed individually, the time required to update all the transmission tables included in the data processing system 100 increases in proportion to the number of routes to be replaced. .

또한, 데이터 포트들(10,20,30,40) 또는 라인 정합 블록들(110, 120. 130, 140)에 문제가 발생하는 경우, 이들을 목적지로 하는 전송 테이블의 내용은 변경되어야 한다. In addition, when a problem occurs in the data ports 10, 20, 30, 40 or line matching blocks 110, 120. 130, 140, the contents of the transmission table destined for them should be changed.

물리적인 데이터 포트들(10,20,30,40)에는 다수의 논리적인 포트 내지 경로가 포함되어 있고, 라인 정합 블록들(110, 120. 130, 140)에는 다수의 데이터 포트(10,20,30,40)가 포함될 수 있다. 때문에, 데이터 포트(10,20,30,40) 또는 라인 정합 블록들(110, 120. 130, 140)에 문제가 생기면, 문제의 데이터 포트 내지 라인 정합 블록들을 목적지로 하는 전송 테이블의 목적지 경로 모두를 대체 경로로 전환해야 한다. The physical data ports 10, 20, 30, 40 include a number of logical ports or paths, and the line matching blocks 110, 120. 130, 140 include a number of data ports 10, 20, 30,40). Therefore, if there is a problem with the data ports 10, 20, 30, 40 or the line matching blocks 110, 120. 130, 140, all of the destination paths of the data table in question or the transmission table targeting the line matching blocks Should be converted to an alternative route.

만약, 문제의 데이터 포트 내지 라인 정합 블록을 목적지로 하는 모든 논리적 경로마다 그 대체 경로 전환을 위해 관련 정보를 주고 받아야 한다면, 데이터 처리 시스템(100)의 제어 메시지 채널에 일시적 데이터 폭증을 야기할 수 있다. 그리고, 각 라인 정합 블록들(110, 120. 130, 140)이 전송 테이블을 갱신하는 데에 많은 시간을 쓰더라도 문제의 경로 모두를 대체 경로로 전환하는데 있어 소요되는 시간을 예측하기 어렵다.If, for every logical path destined for the data port or line matching block in question, the relevant information is to be exchanged for the replacement of the alternate path, a temporary data explosion may occur in the control message channel of the data processing system 100. . And, even if each line matching block 110, 120. 130, 140 spends a lot of time to update the transmission table, it is difficult to predict the time required to convert all of the paths in question to an alternate path.

일 실시예에서는 데이터 포트, 라인 정합 블록들 및 특정 논리 경로 그룹에서 데이터 경로의 전환이 필요한 이벤트가 발생하는 경우에 이벤트 별로 대응할 수 있는 (예비) 전송 테이블을 라인 정합 블록들(110, 120. 130, 140)의 버스 제어기(111)의 메모리 내지 데이터 처리 엔진(115)의 데이터 처리 엔진 메모리(177)에 미리 정의할 수 있다. In an exemplary embodiment, when a data port, line matching blocks, and an event requiring switching of a data path occur in a specific logical path group, a (preliminary) transmission table capable of responding to each event in line matching blocks 110, 120. 130 , 140, the memory of the bus controller 111 or the data processing engine memory 177 of the data processing engine 115.

해당 이벤트가 발생할 경우, 라인 정합 블록들(110, 120. 130, 140) 간, 또는 라인 정합 블록들(110, 120. 130, 140)과 시스템 제어 블록들(150, 160) 간에는 공유 버스(170)를 통해 이벤트 정보를 주고 받아 사전에 정의된 (예비) 전송 테이블로 일시에 전환함으로써, 대량의 경로를 일시에 대체 경로로 전환할 수 있다. When the corresponding event occurs, the shared bus 170 between the line matching blocks 110, 120. 130, 140 or between the line matching blocks 110, 120. 130, 140 and the system control blocks 150, 160 ), It is possible to convert a large number of paths to alternate paths at a time by exchanging event information through and switching to a predefined (preliminary) transmission table at a time.

일 실시예에 따른 데이터 처리기의 구체적인 구성은 다음과 같다. The specific configuration of the data processor according to an embodiment is as follows.

데이터 처리기는 버스 제어기(111), 버스 정합 포트(113), 데이터 처리 엔진(115) 및 데이터 처리 엔진 메모리(117)를 포함할 수 있다. The data processor may include a bus controller 111, a bus matching port 113, a data processing engine 115 and a data processing engine memory 117.

이벤트가 발생한 경우, 데이터 경로의 전환이 필요한 이벤트의 발생을 인지한 버스 제어기(111)는 공유 버스(170)를 통해 멀티캐스트 방식 또는 브로드캐스트 방식으로 이벤트의 발생 여부를 포함하는 메시지를 이벤트가 발생한 라인 정합 블록을 제외한 나머지 라인 정합 블록들의 버스 제어기에게 전달할 수 있다. 이벤트의 발생 여부를 포함하는 메시지를 수신한 다른 라인 정합 블록의 버스 제어기는 해당 이벤트에 대응할 수 있는 예비 전송 테이블을 선택하여 활성 전송 테이블로 사용할 수 있다. When an event occurs, the bus controller 111, which recognizes the occurrence of an event requiring data path switching, generates a message including whether an event occurs in a multicast or broadcast method through the shared bus 170. It can be transferred to the bus controller of the line matching blocks other than the line matching block. The bus controller of the other line matching block that has received the message including whether an event has occurred can select a spare transmission table that can correspond to the event and use it as an active transmission table.

버스 제어기(111)는 다른 라인 정합 블록들로부터 이벤트의 발생 여부를 포함하는 메시지를 수신한 경우, 상기 메시지를 해석하여 전송 테이블의 변경 여부를 판단하고, 판단 결과를 기초로 선택된 예비 전송 테이블을 활성 전송 테이블로 전환할 수 있다. 여기서, '활성 전송 테이블'은 예비 전송 테이블들 중 데이터 경로의 전환이 필요한 이벤트에 대응되어 선택되어 데이터 처리 엔진을 위해 사용되는 예비 전송 테이블을 말한다. 다시 말해, '활성 전송 테이블'은 다수의 물리적, 논리적 경로가 포함된 데이터 포트, 라인 정합 블록 또는 논리적 경로 그룹에 문제가 발생한 경우에 문제가 발생한 기존 경로를 나타내는 전송 테이블을 대체하는 (예비) 전송 테이블을 의미한다. When the bus controller 111 receives a message including whether an event has occurred from other line matching blocks, the bus controller 111 interprets the message to determine whether to change the transmission table, and activates the selected spare transmission table based on the determination result. You can switch to the transfer table. Here, the 'active transport table' refers to a preliminary transport table that is selected and used in response to an event requiring switching of a data path among the preliminary transport tables. In other words, the 'active transfer table' is a (preliminary) transfer that replaces the transfer table that represents the problem's existing path in the event of a problem with a data port, line matching block, or logical path group containing multiple physical and logical paths. Mean table.

버스 제어기(111)가 예비 전송 테이블을 활성 전송 테이블로 전환하는 방법은 도 6을 참조하여 설명한다. The method in which the bus controller 111 converts the spare transmission table into an active transmission table will be described with reference to FIG. 6.

일 실시예에서 데이터 경로의 전환이 필요한 이벤트는 데이터 처리 시스템의 초기 셋업 또는 운영 중에, 또는 새로운 라인 정합 블록, 데이터 포트 혹은 특정 논리 경로 그룹의 초기 셋업 시에도 발생할 수 있으며, 이때, 각 이벤트 별로 대응할 수 있는 (예비) 전송 테이블은 버스 제어기(111,151)의 메모리 또는 데이터 처리 엔진 메모리(117)에 미리 설정될 수 있다. In one embodiment, an event requiring data path switching may occur during initial setup or operation of a data processing system, or during initial setup of a new line matching block, data port, or specific logical path group. A possible (preliminary) transfer table may be preset in the memory of the bus controllers 111 and 151 or in the data processing engine memory 117.

실시예에 따른 데이터 처리기의 구조 및 데이터 처리기의 버스 제어기(111)가 예비 전송 테이블을 활성 전송 테이블로 전환하는 방법에 대하여는 도 4 및 도 5를 참조하여 설명한다. The structure of the data processor and the method in which the bus controller 111 of the data processor converts a spare transmission table into an active transmission table according to an embodiment will be described with reference to FIGS. 4 and 5.

버스 정합 포트(113)는 버스 제어기(111)의 송, 수신 메시지를 공유 버스(170)를 위한 물리적인 메시지 포맷으로 변환할 수 있다. The bus matching port 113 may convert transmission and reception messages of the bus controller 111 into a physical message format for the shared bus 170.

데이터 처리 엔진(115)은 데이터 처리 엔진 메모리(117)에 저장된 예비 전송 테이블들을 참조하여 데이터 포트(10, 20,30, 40)를 통해 들러오는 인입 데이터의 인출 경로에 해당하는 출력 데이터 포트(10, 20,30, 40)를 찾을 수 있다. The data processing engine 115 refers to the preliminary transmission tables stored in the data processing engine memory 117, and output data ports 10 corresponding to the outgoing paths of incoming data coming in through the data ports 10, 20, 30, and 40 , 20,30, 40).

데이터 처리 엔진 메모리(117)는 예비 전송 테이블들을 저장할 수 있다. 이때, 예비 전송 테이블들은 이벤트 별로 정의된 것으로서, 데이터 처리 엔진 메모리(117) 에도 이벤트 별로 저장될 수 있다. The data processing engine memory 117 may store preliminary transmission tables. At this time, the preliminary transmission tables are defined for each event, and may be stored for each event in the data processing engine memory 117.

시스템 제어 블록(150, 160)들에 포함된 시스템 제어기는 라인 정합 블록들(110, 120, 130, 140)의 상태 정보를 수집하여 이벤트의 발생 여부를 파악하고, 이벤트가 발생한 경우에 내부 통신 수단을 통해 라인 정합 블록들의 적어도 일부에게 이벤트의 발생 여부를 알릴 수 있다. The system controller included in the system control blocks 150 and 160 collects status information of the line matching blocks 110, 120, 130, and 140 to determine whether an event has occurred, and internal communication means when the event occurs Through it, it is possible to inform at least some of the line matching blocks whether an event has occurred.

시스템 제어기는 버스 제어기(151) 및 버스 정합 포트(153)를 포함할 수 있다. The system controller can include a bus controller 151 and a bus matching port 153.

버스 제어기(151)는 데이터 경로의 전환이 필요한 이벤트가 발생한 경우, 이벤트의 발생 여부를 포함하는 메시지를 구성하고, 상기 메시지를 공유 버스(170)를 통해 나머지 라인 정합 블록들의 버스 제어기로 전달할 수 있다. When an event requiring switching of the data path occurs, the bus controller 151 constructs a message including whether an event occurs, and may transmit the message to the bus controller of the remaining line matching blocks through the shared bus 170. .

버스 정합 포트(153)는 버스 제어기(151)의 송, 수신 메시지를 공유 버스(170)를 위한 물리적인 메시지 포맷으로 변환할 수 있다. The bus matching port 153 may convert transmission and reception messages of the bus controller 151 into a physical message format for the shared bus 170.

이벤트 발생 시에 이벤트에 관련된 정보를 주고 받기 위한 수단으로 버스 형태의 공유 버스(170)를 사용할 수 있다. When an event occurs, a bus-shaped shared bus 170 may be used as a means for exchanging information related to the event.

공유 버스(170)는 내부 통신 수단의 일 예로서 복수 개의 라인 정합 블록들 간에 데이터 경로의 전환이 필요한 이벤트와 관련된 경로 정보를 주고받는 데에 이용될 수 있다. The shared bus 170 may be used to exchange path information related to an event requiring a change of a data path between a plurality of line matching blocks as an example of an internal communication means.

공유 버스(170)는 라인 정합 블록들(110. 120, 130, 140) 간의 사용자 데이터의 교환을 중계하는 데이터 스위치(180), 및 스위치 포트들(50, 60, 70, 80)로 구성된 데이터 경로와 도 1에 표시되어 있지는 않지만 프로세서들 간의 메시징을 위한 제어 경로 중 적어도 하나를 포함할 수 있다. 이때, 데이터 경로와 제어 경로는 별개의 형태로 존재할 수도 있고, 혼합된 형태로 존재할 수도 있다. The shared bus 170 is a data path composed of a data switch 180 that relays the exchange of user data between the line matching blocks 110. 120, 130, 140, and switch ports 50, 60, 70, 80. And, although not shown in FIG. 1, may include at least one of control paths for messaging between processors. At this time, the data path and the control path may exist in separate forms, or may exist in a mixed form.

라인 정합 블록들(110. 120, 130, 140)과 시스템 제어 블록들(150, 160)은 버스 정합 포트(113, 153)를 통해 공유 버스(20)와 연결될 수 있다. The line matching blocks 110. 120, 130, 140 and the system control blocks 150, 160 may be connected to the shared bus 20 through the bus matching ports 113, 153.

복수 개의 라인 정합 블록들(110. 120, 130, 140)은 데이터 스위치(180)의 중계를 통해 상호 간에 데이터를 주고 받을 수 있다. The plurality of line matching blocks 110. 120, 130, and 140 may exchange data with each other through the relay of the data switch 180.

공유 버스(170)는 내부 통신 수단의 일 예로서, 공통 버스 구조 또는 멀티 버스 구조로 동작할 수 있다. 공유 버스(170)가 공통 버스 구조로 동작하는 경우에 대하여는 도 2를 참조하여 설명하고, 멀티 버스 구조로 동작하는 경우에 대하여는 도 3을 참조하여 설명한다. The shared bus 170 may operate as a common bus structure or a multi-bus structure as an example of an internal communication means. A case in which the shared bus 170 operates in a common bus structure will be described with reference to FIG. 2, and a case in which the shared bus 170 operates in a multi-bus structure will be described with reference to FIG. 3.

라인 정합 블록들(110. 120, 130, 140)에 포함된 버스 제어기(111) 및 버스 정합 포트(113)는 공유 버스(170)의 버스 노드로 동작할 수 있다.
The bus controller 111 and the bus matching port 113 included in the line matching blocks 110. 120, 130, and 140 may operate as a bus node of the shared bus 170.

도 2는 일 실시예에 따른 내부 통신 수단의 일 예인 공유 버스가 공통 버스 구조(200)를 가지는 경우를 설명하기 위한 도면이다. 2 is a view for explaining a case where a shared bus, which is an example of an internal communication means according to an embodiment, has a common bus structure 200.

도 2를 참조하면, 공유 버스(170)의 버스 노드들(210, 230, 250) 및 버스 점유 신호 라인(201), 클럭 신호 라인(203), 및 데이터 신호 라인(205)으로 구성되는 공유 버스(207)를 살펴볼 수 있다.Referring to FIG. 2, a shared bus composed of bus nodes 210, 230 and 250 of a shared bus 170 and a bus occupied signal line 201, a clock signal line 203, and a data signal line 205 (207).

공통 버스 구조(200)에서 각 버스 노드(210, 230, 250)는 마스터 버스 노드와 슬레이브 버스 노드의 기능을 모두 수행할 수 있다. In the common bus structure 200, each bus node 210, 230, or 250 can perform both functions of a master bus node and a slave bus node.

도 1에서 라인 정합 블록들(110. 120, 130, 140) 및 시스템 제어 블록들(150, 160)의 버스 제어기(111, 151) 및 버스 정합 포트(113, 153)는 공유 버스(170)의 버스 노드(210, 230, 250)로 동작할 수 있다.In FIG. 1, bus controllers 111, 151 and bus matching ports 113, 153 of the line matching blocks 110. 120, 130, 140 and system control blocks 150, 160 are connected to the shared bus 170. It can operate as a bus node (210, 230, 250).

마스터 버스 노드는 공유 버스(207)를 통해 슬레이브 버스 노드에게 경로 변경이 요구되는 사건 내지 이벤트를 송신하거나, 슬레이브 버스 노드로부터 버스 노드가 포함된 블록(라인 정합 블록 또는 시스템 제어 블록)의 상태를 묻거나, 슬레이브 버스 노드에게 경로 정보를 송신하거나 물을 수 있다.The master bus node sends an event or event requiring a route change to the slave bus node through the shared bus 207, or asks the status of a block (line matching block or system control block) containing the bus node from the slave bus node. Or, it can send or ask route information to a slave bus node.

공유 버스(207)를 점유하고자 하는 임의의 버스 노드는 버스 점유 신호 라인(201)를 체크하고, 버스 점유 신호가 비활성화되어 있을 때 버스 점유 신호를 활성시켜 다른 버스 노드들에 데이터를 내보내거나 데이터 읽기를 요청할 수 있다. Any bus node that wants to occupy the shared bus 207 checks the bus occupancy signal line 201, and when the bus occupancy signal is inactive, activates the bus occupancy signal to send data to or read data from other bus nodes. You can request.

클럭 신호 라인(203)은 버스 노드들(210, 230, 250) 간의 데이터 송, 수신에 있어 동기화된 타이밍 정보 또는 클럭 신호를 주고 받는데 사용될 수 있다. The clock signal line 203 may be used to send and receive synchronized timing information or clock signals for data transmission and reception between the bus nodes 210, 230, and 250.

데이터 신호 라인(205)은 클럭 신호 라인(203)을 통한 클럭 신호의 타이밍에 맞춰 실제 데이터를 주고 받는데 사용될 수 있다.
The data signal line 205 may be used to exchange actual data according to the timing of the clock signal through the clock signal line 203.

도 3은 일 실시예에 따른 내부 통신 수단의 일 예인 공유 버스가 멀티 버스 구조를 가지는 경우를 설명하기 위한 도면이다. 3 is a view for explaining a case where a shared bus, which is an example of an internal communication means according to an embodiment, has a multi-bus structure.

도 3을 참조하면, 라인 정합 블록들(110. 120, 130, 140) 및 시스템 제어 블록들(150, 160) 중 특정 블록(예를 들어, 데이터 경로의 전환이 필요한 이벤트가 발생한 라인 정합 블록)만이 마스터 기능을 수행하는 마스터 버스 노드가 각 블록 별로 존재하는 멀티 버스 구조(300)를 살펴볼 수 있다. Referring to FIG. 3, a specific block (for example, a line matching block in which an event requiring switching of a data path occurs) among line matching blocks 110. 120, 130, 140 and system control blocks 150, 160 Only the master bus node performing the master function can look at the multi-bus structure 300 in each block.

멀티 버스 구조(300)는 각 블록(110. 120, 130, 140, 150, 160) 별로 독점적인 공유 버스를 소유함으로써 보다 빠르고 안정적으로 블록들(110. 120, 130, 140, 150, 160)간에 경로 전환이 요구되는 이벤트와 관련된 정보를 공유할 수 있다. The multi-bus structure 300 possesses an exclusive shared bus for each block (110. 120, 130, 140, 150, 160), making it faster and more stable between blocks (110. 120, 130, 140, 150, 160). Information related to an event requiring a route change can be shared.

또한, 멀티 버스 구조(300)에는 마스터 버스 노드가 슬레이브 버스 노드 전체 또는 특정 그룹으로 일괄적으로 공통의 메시지를 전달할 수 있다. In addition, in the multi-bus structure 300, a master bus node may transmit common messages collectively to all or a specific group of slave bus nodes.

도 1에서 라인 정합 블록들(110. 120, 130, 140) 및 시스템 제어 블록들(150, 160)의 버스 제어기(111, 151) 및 버스 정합 포트(113, 153)가 공유 버스(170)의 버스 노드(310, 330, 350)로 동작할 수 있다.In FIG. 1, bus controllers 111, 151 and bus matching ports 113, 153 of the line matching blocks 110. 120, 130, 140 and system control blocks 150, 160 of the shared bus 170 It can operate as a bus node (310, 330, 350).

멀티 버스 구조(300)에서 각 마스터 소유 채널(301, 303, 305)은 모든 버스 노드(310, 330, 350)의 마스터 포트(311, 333, 355) 또는 슬레이브 포트(313, 315, 331, 335, 351, 353)에 연결될 수 있다. In the multi-bus architecture 300, each master owned channel 301, 303, 305 is a master port 311, 333, 355 or slave port 313, 315, 331, 335 of all bus nodes 310, 330, 350 , 351, 353).

임의의 버스 노드는 마스터 포트(311, 333, 355)를 통해 자신의 마스터 소유 채널(301, 303, 305)을 액세스하여 다른 버스 노드에게 데이터를 송신하거나 요청할 수 있고, 슬레이브 포트(313, 315, 331, 335, 351, 353)를 통해 마스터 버스 노드(311, 333, 355)로부터의 데이터를 수신하거나 데이터 요청에 응답할 수 있다.
Any bus node can access its master-owned channels 301, 303, 305 through the master ports 311, 333, 355 and send or request data to other bus nodes, and the slave ports 313, 315, Data from the master bus nodes 311, 333, and 355 may be received through 331, 335, 351, 353, or a data request may be received.

도 4는 일 실시예에 따른 데이터 처리기의 구조를 설명하기 위한 도면이다. 4 is a view for explaining the structure of a data processor according to an embodiment.

도 4를 참조하면, 일 실시예에 따른 데이터 처리기(400)의 구조 및 데이터 처리기(400)가 예비 전송 테이블을 활성 전송 테이블로 전환하는 방법을 살펴볼 수 있다.Referring to FIG. 4, a structure of a data processor 400 and a method of converting a preliminary transmission table into an active transmission table by the data processor 400 according to an embodiment may be described.

일 실시예에 따른 라인 정합 블록의 데이터 처리기(400)는 버스 제어기 메모리(410), 버스 제어기(430), 버스 정합 포트(450), 데이터 처리 엔진(470), 및 데이터 처리 엔진 메모리(490)를 포함할 수 있다. The data processor 400 of the line matching block according to an embodiment includes a bus controller memory 410, a bus controller 430, a bus matching port 450, a data processing engine 470, and a data processing engine memory 490. It may include.

버스 제어기 메모리(410)는 미리 정의된 예비 전송 테이블들을 저장할 수 있다. The bus controller memory 410 may store predefined spare transfer tables.

버스 제어기(430)는 전송 테이블 지정자(431), 및 경로 변경 해석기(433)를 포함할 수 있다. The bus controller 430 may include a transmission table designator 431 and a route change interpreter 433.

전송 테이블 지정자(431)는 이벤트에 대응되는 예비 전송 테이블의 아이디를 지정할 수 있다. The transmission table designator 431 may designate the ID of the preliminary transmission table corresponding to the event.

경로 변경 해석기(433)는 버스 정합 포트(450)를 통해 송, 수신되는 라인 정합 블록들 간의 메시지를 해석하여 데이터 경로의 전환이 필요한 이벤트를 인지할 수 있다. 또한, 경로 변경 해석기(433)는 인지한 이벤트에 대응되는 예비 전송 테이블의 아이디를 전송 테이블 지정자(431)로 입력할 수 있다. 전송 테이블 지정자(431)에 의해 지정된 예비 전송 테이블은 데이터 처리 엔진(470)을 위한 활성 전송 테이블로 사용될 수 있다. The route change interpreter 433 may recognize an event requiring a change of a data path by interpreting a message between line matching blocks transmitted and received through the bus matching port 450. Also, the path change interpreter 433 may input the ID of the preliminary transmission table corresponding to the recognized event to the transmission table designator 431. The preliminary transmission table designated by the transmission table designator 431 may be used as an active transmission table for the data processing engine 470.

버스 정합 포트(450)는 버스 제어기의 송, 수신 메시지를 상기 공유 버스를 위한 물리적인 메시지 포맷으로 변환할 수 있다. The bus matching port 450 may convert transmission and reception messages of the bus controller into a physical message format for the shared bus.

데이터 처리 엔진(470)은 데이터 처리 엔진 메모리(490)에 저장된 예비 전송 테이블들을 참조하여 데이터 포트를 통해 들러오는 인입 데이터의 인출 경로에 해당하는 출력 데이터 포트를 찾을 수 있다. The data processing engine 470 may refer to the preliminary transmission tables stored in the data processing engine memory 490 to find an output data port corresponding to an outgoing path of incoming data coming in through the data port.

전송 테이블은 사건 별로 버스 제어기 메모리(410)에 정의되고, 전송 테이블의 교체가 필요한 이벤트의 발생 여부는 공유 버스(170)를 통해 블록들(110,120,130,140,150,160) 간에 공유된다. The transmission table is defined in the bus controller memory 410 for each event, and whether an event requiring replacement of the transmission table occurs is shared between the blocks 110, 120, 130, 140, 150, and 160 through the shared bus 170.

전송 테이블의 교체가 필요한 이벤트가 발생할 경우, 버스 제어기(430)는 전송 테이블 지정자(431)에 상기 이벤트에 대응되는 전송 테이블의 아이디를 입력하고, 데이터 처리 엔진(470)의 전송 테이블을 새로운 전송 테이블로 갱신할 수 있다. When an event requiring replacement of the transmission table occurs, the bus controller 430 inputs the ID of the transmission table corresponding to the event to the transmission table designator 431, and the transmission table of the data processing engine 470 is a new transmission table. Can be renewed.

전송 테이블 지정자(431)에 의해 지정된 버스 제어기 메모리(410)의 예비 전송 테이블(415)은 데이터 처리 엔진(470)의 활성 전송 테이블로 사용된다. The preliminary transfer table 415 of the bus controller memory 410 designated by the transfer table designator 431 is used as the active transfer table of the data processing engine 470.

버스 제어기 메모리(410)에 저장된 예비 전송 테이블들 중 전송 테이블 지정자(431)의 지정에 의해 선택된 예비 전송 테이블(415)은 데이터 처리 엔진(470)의 데이터 처리 엔진 메모리(490)에 복사되거나 버스 제어기(430)의 메모리 공유를 통해 버스 제어기 메모리(410) 상에서 데이터 처리 엔진(470)의 활성 전송 테이블로 사용될 수 있다.
Among the spare transmission tables stored in the bus controller memory 410, the spare transmission table 415 selected by the designation of the transmission table designator 431 is copied to the data processing engine memory 490 of the data processing engine 470 or the bus controller It can be used as an active transfer table of the data processing engine 470 on the bus controller memory 410 through the memory sharing of 430.

도 5는 다른 실시예에 따른 데이터 처리기의 구조를 설명하기 위한 도면이다. 5 is a view for explaining the structure of a data processor according to another embodiment.

도 5를 참조하면, 다른 실시예에 따른 데이터 처리기(500)의 구조 및 데이터 처리기가 예비 전송 테이블을 활성 전송 테이블로 전환하는 방법을 살펴볼 수 있다. Referring to FIG. 5, a structure of a data processor 500 and a method of converting a preliminary transmission table into an active transmission table by a data processor 500 according to another embodiment may be described.

다른 실시예에 따른 데이터 처리기(500)는 버스 제어기(510), 버스 정합 포트(530), 데이터 처리 엔진(550) 및 데이터 처리 엔진 메모리(570)를 포함한다. The data processor 500 according to another embodiment includes a bus controller 510, a bus matching port 530, a data processing engine 550 and a data processing engine memory 570.

버스 제어기(510)는 경로 변경 해석기(515)를 포함할 수 있다. The bus controller 510 can include a route change interpreter 515.

경로 변경 해석기(515)는 버스 정합 포트(530)를 통해 송, 수신되는 라인 정합 블록들 간의 메시지를 해석하여 데이터 경로의 전환이 필요한 이벤트를 인지하고, 인지한 이벤트에 대응되는 예비 전송 테이블의 아이디를 전송 테이블 지정자(555)로 입력할 수 있다. The route change interpreter 515 interprets a message between line matching blocks transmitted and received through the bus matching port 530 to recognize an event requiring a data path change, and an ID of a preliminary transmission table corresponding to the recognized event. Can be entered as the transfer table designator 555.

데이터 처리 엔진(550)은 이벤트에 대응되는 예비 전송 테이블의 아이디를 지정하는 전송 테이블 지정자(555) 및 미리 정의된 예비 전송 테이블을 저장하는 데이터 처리 엔진 메모리(570)를 포함할 수 있다. The data processing engine 550 may include a transport table designator 555 that designates an ID of a preliminary transport table corresponding to an event, and a data processing engine memory 570 that stores a predefined preliminary transport table.

전송 테이블은 이벤트 별로 데이터 처리 엔진 메모리(570)에 정의되고, 전송 테이블의 교체가 필요한 이벤트의 발생 여부는 공유 버스(170)를 통해 블록들(110,120,130,140,150,160) 간에 공유된다.The transmission table is defined in the data processing engine memory 570 for each event, and whether an event requiring replacement of the transmission table occurs is shared between the blocks 110, 120, 130, 140, 150, and 160 through the shared bus 170.

전송 테이블의 교체가 필요한 이벤트가 발생할 경우, 버스 제어기(510)는 전송 테이블 지정자(555)에 상기 이벤트에 대응되는 전송 테이블의 아이디를 입력하여 데이터 처리 엔진(550)이 새로운 전송 테이블을 사용하도록 할 수 있다. When an event requiring replacement of the transmission table occurs, the bus controller 510 inputs the ID of the transmission table corresponding to the event to the transmission table designator 555 so that the data processing engine 550 uses the new transmission table. You can.

데이터 처리 엔진 메모리(570)에 정의된 예비 전송 테이블들(575) 중 전송 테이블 지정자(555)에 의해 지정된 예비 전송 테이블은 데이터 처리 엔진(550)의 활성 전송 테이블(571)로 사용될 수 있다.
The preliminary transfer table designated by the transfer table designator 555 among the preliminary transfer tables 575 defined in the data processing engine memory 570 may be used as the active transfer table 571 of the data processing engine 550.

도 6은 일 실시예에 따라 데이터 경로의 전환을 필요로 하는 이벤트 별로 전송 테이블을 정의하고, 이를 경로 전환에 이용하는 일 예를 설명하기 위한 도면이다. FIG. 6 is a diagram for describing an example of defining a transmission table for each event requiring switching of a data path and using it for path switching according to an embodiment.

도 6을 참조하면, 예비 전송 테이블들(611,613,615,617)이 사건 별로 데이터 처리 엔진 메모리(610)에 정의된 것을 볼 수 있다. Referring to FIG. 6, it can be seen that the preliminary transmission tables 611,613,615,617 are defined in the data processing engine memory 610 for each event.

데이터 경로의 전환이 필요한 이벤트가 발생함에 따라 전송 테이블의 교체가 요구되는 경우, 버스 제어기는 전송 테이블 지정자(630)에 상기 이벤트에 상응하는 전송 테이블의 아이디를 입력하여 데이터 처리 엔진이 새로운 전송 테이블(650)을 사용하도록 한다.When the replacement of the transmission table is required as an event requiring switching of the data path occurs, the bus controller enters the ID of the transmission table corresponding to the event in the transmission table designator 630 so that the data processing engine generates a new transmission table ( 650).

예비 전송 테이블들(611,613,615,617) 중 전송 테이블 지정자(630)에 입력된 전송 테이블의 아이디에 의해 선택된 예비 전송 테이블을 활성 전송 테이블(650)로 전환하는 데에는 다음과 같은 방법들이 사용될 수 있다. The following methods may be used to convert the preliminary transmission table selected by the ID of the transmission table input to the transmission table designator 630 among the spare transmission tables 611,613,615,617 to the active transmission table 650.

버스 제어기는 선택된 예비 전송 테이블의 내용을 활성 전송 테이블의 위치로 복사하거나, 활성 전송 테이블(650)의 기저 주소를 전송 테이블 지정자(630)에 의해 지정된(선택된) 예비 전송 테이블의 기저 주소로 변경함으로써 선택된 예비 전송 테이블을 활성 전송 테이블로 전환할 수 있다. The bus controller may copy the contents of the selected spare transfer table to the location of the active transfer table, or change the base address of the active transfer table 650 to the base address of the (selected) spare transfer table designated by the transfer table designator 630. The selected spare transmission table can be converted to an active transmission table.

이 밖에도, 버스 제어기는 활성 전송 테이블(650)을 가상 공간에 위치시키고, 전송 테이블 지정자(630)에 의해 지정된(선택된) 예비 전송 테이블의 물리적인 주소를 가상 공간의 활성 전송 테이블(650)의 위치에 맵핑 함으로써 선택된 예비 전송 테이블을 활성 전송 테이블로 전환할 수 있다.
In addition, the bus controller places the active transport table 650 in the virtual space, and the physical address of the (selected) spare transport table designated by the transport table designator 630 is located in the active transport table 650 in the virtual space. By mapping to, the selected spare transmission table can be converted into an active transmission table.

도 7은 일 실시예에 따라 데이터 처리 엔진 메모리에 이벤트 별로 구분된 활성 전송 테이블을 이용하여 경로를 전환하는 일 예를 설명하기 위한 도면이다. 7 is a diagram for explaining an example of switching a path using an active transmission table classified for each event in a data processing engine memory according to an embodiment.

도 7을 참조하면, 활성 전송 테이블들이 데이터 경로의 전환을 필요로 하는 이벤트 별로 구분된 것을 볼 수 있다. Referring to FIG. 7, it can be seen that the active transport tables are classified according to events requiring data path switching.

데이터 처리 엔진 메모리(700)는 라인 정합 블록들, 데이터 포트들 및 논리적 경로 그룹 각각에서 발생하는 이벤트마다에 대응되는 블록 테이블 영역 A(710,713,715,717), 포트 테이블 영역 B(730,733,735,737), 및 논리적 경로 그룹 테이블 영역 C(750, 753, 755, 757)을 포함할 수 있다. The data processing engine memory 700 includes a block table area A (710,713,715,717), a port table area B (730,733,735,737), and a logical path group table corresponding to each event occurring in each of the line matching blocks, data ports, and logical path group. Region C (750, 753, 755, 757).

데이터 처리 엔진 메모리(700)는 라인 정합 블록들에서의 데이터 경로의 전환이 필요한 이벤트의 발생에 따른 대규모 경로 전환에 대응할 수 있는 블록 테이블 영역 A(710,713,715,717)을 포함할 수 있다. 블록 테이블 영역 A(710,713,715,717)에는 상기 이벤트에 대응하기 위한 블록 예비 전송 테이블들(711, 712)이 정의될 수 있다. The data processing engine memory 700 may include a block table area A 710,713,715,717 that can correspond to a large-scale path switching according to the occurrence of an event requiring a data path switching in line matching blocks. Block preliminary transmission tables 711 and 712 for corresponding to the event may be defined in the block table area A 710,713,715,717.

데이터 처리 엔진 메모리(700)는 데이터 포트들에서의 데이터 경로의 전환이 필요한 이벤트의 발생에 따른 대규모 경로 전환에 대응할 수 있는 포트 테이블 영역 B(730,733,735,737)을 포함할 수 있다. 포트 테이블 영역 B(730,733,735,737)에는 상기 이벤트에 대응하기 위한 포트 예비 전송 테이블(411,412)이 정의될 수 있다. The data processing engine memory 700 may include a port table area B (730,733,735,737) capable of responding to a large-scale route change according to the occurrence of an event requiring a change of the data route at the data ports. Port preliminary transmission tables 411 and 412 for responding to the event may be defined in the port table area B (730,733,735,737).

또한, 데이터 처리 엔진 메모리(700)는 특정 논리 경로 각각에서의 데이터 경로의 전환이 필요한 이벤트의 발생에 따른 대규모 경로 전환에 대응할 수 있는 논리적 경로 그룹 테이블 영역 C(750, 753, 755, 757)을 포함할 수 있다. 논리적 경로 그룹 테이블 영역 C(750, 753, 755, 757)에는 상기 이벤트에 대응하기 위한 논리적 경로 그룹 예비 전송 테이블(751, 752)이 정의될 수 있다. In addition, the data processing engine memory 700 includes a logical path group table area C (750, 753, 755, 757) capable of responding to a large-scale path switching according to the occurrence of an event requiring the data path switching in each specific logical path. It can contain. In the logical path group table area C 750, 753, 755, and 757, logical path group preliminary transmission tables 751 and 752 for responding to the event may be defined.

전송 테이블 지정자 영역(760)은 블록 전송 테이블 지정자들(761,762,763), 포트 전송 테이블 지정자들(764,765,766), 및 논리적 경로 그룹 전송 테이블 지정자들(767~769)을 포함할 수 있다. The transport table designator area 760 may include block transport table designators 761,762,763, port transport table designators 764,765,766, and logical path group transport table designators 767-769.

블록 전송 테이블 지정자들(761,762,763)은 활성 전송 테이블(780)의 블록 영역(781~783)에 사용될 블록 예비 전송 테이블(711,712)을 지정할 수 있다. The block transfer table designators 761,762 and 763 may designate the block preliminary transfer tables 711 and 712 to be used in the block regions 781 to 783 of the active transfer table 780.

포트 전송 테이블 지정자들(764,765,766)은 활성 전송 테이블(780)의 포트 영역(784~786)에 사용될 포트 예비 전송 테이블(731, 732)을 지정할 수 있다. The port transmission table designators 764, 765, and 766 may designate port preliminary transmission tables 731 and 732 to be used in the port areas 784 to 786 of the active transmission table 780.

논리적 경로 그룹 전송 테이블 지정자(767~769)들은 활성 전송 테이블(780)의 논리적 그룹 영역(787, 788)에 사용될 논리적 경로 그룹 예비 전송 테이블(751, 752)을 지정할 수 있다. The logical path group transfer table designators 767 to 769 may designate logical path group preliminary transfer tables 751 and 752 to be used in the logical group regions 787 and 788 of the active transfer table 780.

활성 전송 테이블(780)의 내부는 라인 정합 블록들, 데이터 포트들 및 논리적 경로 그룹 각각에서 발생하는 이벤트마다에 대응되도록 구분될 수 있다. The inside of the active transmission table 780 may be divided to correspond to each event occurring in each of the line matching blocks, data ports, and logical path group.

전송 테이블의 교체가 필요한 이벤트가 발생할 경우, 활성 전송 테이블(780)에서 해당 이벤트에 대응하는 영역(781~783,784~786,787~788)은 예비 전송 테이블의 대체 테이블(711,712,731,732,751,752)로 교체될 수 있다.
When an event requiring replacement of the transmission table occurs, the areas 781 to 783,784 to 786,787 to 788 corresponding to the event in the active transmission table 780 may be replaced with replacement tables 711,712,731,732,751,752 of the spare transmission table.

도 8은 일 실시예에 따른 데이터 처리 시스템의 동작 방법을 나타낸 플로우차트이다.8 is a flowchart illustrating a method of operating a data processing system according to an embodiment.

도 8을 참조하면, 일 실시예에 따른 데이터 처리 시스템은 데이터 경로의 전환이 필요한 이벤트마다에 대응되는 미리 정의된 예비 전송 테이블들을 저장할 수 있다(810). 이때, 예비 전송 테이블들은 모든 물리적, 논리적 경로에 대한 목적지 정보를 포함할 수 있다. Referring to FIG. 8, the data processing system according to an embodiment may store predefined preliminary transmission tables corresponding to each event requiring a change of a data path (810). At this time, the preliminary transmission tables may include destination information for all physical and logical paths.

데이터 처리 시스템은 이벤트가 발생한 경우에, 내부 통신 수단을 통해 이벤트의 발생 여부를 일시에 복수 개의 라인 정합 블록들에게 알릴 수 있다(820).When an event occurs, the data processing system may notify the plurality of line matching blocks at a time whether or not the event occurs through the internal communication means (820).

이때, 단계 820에 의해 다른 데이터 처리 시스템으로부터 버스 정합 포트를 통해 송, 수신되는 라인 정합 블록들 간의 메시지를 수신한 데이터 처리 시스템은 수신한 메시지를 해석하여 이벤트를 인지할 수 있다.At this time, in step 820, the data processing system receiving the message between the line matching blocks transmitted and received through the bus matching port from the other data processing system may interpret the received message and recognize the event.

데이터 처리 시스템은 이벤트 발생으로 인한 전송 테이블의 변경 여부를 판단할 수 있다(830).The data processing system may determine whether to change the transmission table due to the occurrence of the event (830).

데이터 처리 시스템은 830의 판단 결과를 기초로, 예비 전송 테이블들 중 이벤트에 대응되는 예비 전송 테이블을 선택하여 활성화 시킬 수 있다(840).The data processing system may select and activate the preliminary transmission table corresponding to the event from among the preliminary transmission tables based on the determination result of 830 (840).

단계 840에서, 데이터 처리 시스템은 이벤트에 대응되는 예비 전송 테이블의 아이디를 전송 테이블 지정자로 입력할 수 있다. 전송 테이블 지정자에 의해 지정된 예비 전송 테이블은 데이터 처리 엔진을 위한 활성 전송 테이블로 사용될 수 있다. In step 840, the data processing system may input the ID of the preliminary transmission table corresponding to the event as the transmission table designator. The preliminary transfer table specified by the transfer table designator can be used as an active transfer table for the data processing engine.

단계 840에서, 데이터 처리 시스템은 예비 전송 테이블들 중 선택된 예비 전송 테이블의 내용을 활성 전송 테이블의 위치로 복사함으로써 예비 전송 테이블을 활성화 전송 테이블로 전환할 수 있다. In step 840, the data processing system may convert the spare transmission table to an active transmission table by copying the contents of the selected spare transmission table among the spare transmission tables to the location of the active transmission table.

이 밖에도, 데이터 처리 시스템은 예비 전송 테이블들을 참조하여 데이터 포트를 통해 들어오는 인입 데이터의 인출 경로에 해당하는 출력 데이터 포트를 찾을 수 있다.
In addition, the data processing system may refer to the preliminary transmission tables to find an output data port corresponding to an outgoing path of incoming data coming through the data port.

본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, or the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs, DVDs, and magnetic media such as floptical disks. -Hardware devices specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language code that can be executed by a computer using an interpreter, etc., as well as machine language codes produced by a compiler. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the present invention, and vice versa.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, although the present invention has been described with limited embodiments and drawings, the present invention is not limited to the above embodiments, and various modifications and variations from these descriptions will be made by those skilled in the art to which the present invention pertains. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the claims described below, but also by the claims and equivalents.

10,20,30,40: 데이터 포트
50, 60, 70, 80: 스위치 포트
100: 데이터 처리 시스템
110, 120, 130, 140: 라인 정합 블록
150, 160: 시스템 제어 블록
170: 공유 버스
180: 데이터 스위치
10,20,30,40: Data port
50, 60, 70, 80: switch port
100: data processing system
110, 120, 130, 140: line matching block
150, 160: system control block
170: shared bus
180: data switch

Claims (20)

데이터 경로의 전환이 필요한 이벤트마다에 대응되는 미리 정의된 예비 전송 테이블들- 상기 전송 테이블들은 모든 물리적, 논리적 경로에 대한 목적지 정보를 포함함-을 저장하고, 내부 통신 수단을 통해 수신한 정보를 기초로, 전송 테이블의 변경 여부를 판단하며, 상기 판단 결과를 기초로 상기 예비 전송 테이블들 중 상기 이벤트에 대응하는 예비 전송 테이블을 선택하여 활성화 시키는 데이터 처리기를 각각 포함하는 복수 개의 라인 정합 블록들; 및
상기 복수 개의 라인 정합 블록들 간에 상기 데이터 경로의 전환이 필요한 이벤트와 관련된 정보를 주고받는 공유 버스
를 포함하고,
상기 데이터 처리기는 활성 전송 테이블의 기저 주소를 상기 선택된 예비 전송 테이블의 기저 주소로 변경하여 상기 선택된 예비 전송 테이블을 상기 활성 전송 테이블로 사용하는, 데이터 처리 시스템.
Pre-defined preliminary transmission tables corresponding to each event requiring data path switching, wherein the transmission tables contain destination information for all physical and logical paths, and based on information received through internal communication means A plurality of line matching blocks, each of which includes a data processor for determining whether to change a transmission table, and selecting and activating a spare transmission table corresponding to the event from among the preliminary transmission tables based on the determination result; And
A shared bus that exchanges information related to an event that needs to switch the data path between the plurality of line matching blocks
Including,
And the data processor changes the base address of the active transmission table to the base address of the selected spare transmission table to use the selected spare transmission table as the active transmission table.
제1항에 있어서,
상기 데이터 처리기는,
상기 라인 정합 블록들의 상태 정보를 수집하여 상기 이벤트의 발생 여부를 파악하고, 상기 이벤트가 발생한 경우에 상기 내부 통신 수단을 통해 상기 라인 정합 블록들의 적어도 일부에게 상기 이벤트의 발생 여부를 일시에 알리는, 데이터 처리 시스템.
According to claim 1,
The data processor,
Data that collects status information of the line matching blocks to determine whether the event has occurred, and when the event occurs, informs at least a portion of the line matching blocks through the internal communication means at a time. Processing system.
제1항에 있어서,
상기 데이터 처리기는,
상기 이벤트가 발생한 경우, 상기 이벤트의 발생 여부를 포함하는 메시지를 구성하고, 상기 메시지를 상기 공유 버스를 통해 상기 이벤트가 발생한 라인 정합 블록을 제외한 나머지 라인 정합 블록들에게 전달하는 버스 제어기;
상기 버스 제어기의 송, 수신 메시지를 상기 공유 버스를 위한 물리적인 메시지 포맷으로 변환하는 버스 정합 포트;
상기 예비 전송 테이블들-상기 예비 전송 테이블들은 이벤트 별로 정의됨-을 저장하는 데이터 처리 엔진 메모리; 및
상기 데이터 처리 엔진 메모리에 저장된 예비 전송 테이블들을 참조하여 데이터 포트를 통해 들러오는 인입 데이터의 인출 경로에 해당하는 출력 데이터 포트를 찾는 데이터 처리 엔진
을 포함하는, 데이터 처리 시스템.
According to claim 1,
The data processor,
A bus controller configured to configure a message including whether or not the event occurs when the event occurs, and deliver the message to the remaining line matching blocks except the line matching block where the event occurs through the shared bus;
A bus matching port for converting transmission and reception messages of the bus controller into a physical message format for the shared bus;
A data processing engine memory storing the preliminary transmission tables-the preliminary transmission tables are defined for each event; And
A data processing engine that finds an output data port corresponding to an outgoing path of incoming data coming in through the data port by referring to the preliminary transmission tables stored in the data processing engine memory.
Including, data processing system.
제3항에 있어서,
상기 버스 제어기는,
상기 메시지를 수신한 경우, 상기 메시지를 해석하여 상기 전송 테이블의 변경 여부를 판단하고, 상기 판단 결과를 기초로 상기 선택된 예비 전송 테이블을 활성 전송 테이블로 전환하는, 데이터 처리 시스템.
According to claim 3,
The bus controller,
When the message is received, the message is interpreted to determine whether the transmission table is changed, and the selected preliminary transmission table is converted to an active transmission table based on the determination result.
삭제delete 삭제delete 제4항에 있어서,
상기 버스 제어기는,
상기 활성 전송 테이블을 가상 공간에 위치시키고, 상기 선택된 예비 전송 테이블의 물리적인 주소를 상기 가상 공간의 활성 전송 테이블의 위치에 맵핑 함으로써 상기 선택된 예비 전송 테이블을 활성 전송 테이블로 전환하는, 데이터 처리 시스템.
According to claim 4,
The bus controller,
A data processing system for converting the selected spare transmission table to an active transmission table by placing the active transmission table in a virtual space and mapping the physical address of the selected spare transmission table to a location of the active transmission table in the virtual space.
제3항에 있어서,
상기 미리 정의된 예비 전송 테이블들을 저장하는 버스 제어기 메모리
를 더 포함하고,
상기 버스 제어기는,
상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 지정하는 전송 테이블 지정자; 및
상기 버스 정합 포트를 통해 송, 수신되는 상기 라인 정합 블록들 간의 메시지를 해석하여 상기 데이터 경로의 전환이 필요한 이벤트를 인지하고, 상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 상기 전송 테이블 지정자로 입력하는 경로 변경 해석기
를 포함하는, 데이터 처리 시스템.
According to claim 3,
Bus controller memory for storing the predefined preliminary transfer tables
Further comprising,
The bus controller,
A transmission table designator designating an ID of a preliminary transmission table corresponding to the event; And
Interpreting a message between the line matching blocks transmitted and received through the bus matching port to recognize an event requiring switching of the data path, and inputting an ID of a preliminary transmission table corresponding to the event as the transmission table designator Path change resolver
Including, data processing system.
제8항에 있어서,
상기 전송 테이블 지정자에 의해 선택된 예비 전송 테이블은
상기 데이터 처리 엔진을 위한 활성 전송 테이블로 사용되는, 데이터 처리 시스템.
The method of claim 8,
The preliminary transmission table selected by the transmission table designator is
Used as an active transport table for the data processing engine, a data processing system.
제8항에 있어서,
상기 버스 제어기는,
상기 버스 정합 포트를 통해 송, 수신되는 상기 라인 정합 블록들 간의 메시지를 해석하여 상기 데이터 경로의 전환이 필요한 이벤트를 인지하고, 상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 상기 전송 테이블 지정자로 입력하는 경로 변경 해석기
를 포함하고,
상기 데이터 처리 엔진은,
상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 지정하는 전송 테이블 지정자; 및
상기 미리 정의된 예비 전송 테이블을 저장하는 데이터 처리 엔진 메모리
를 포함하는, 데이터 처리 시스템.
The method of claim 8,
The bus controller,
Interpreting a message between the line matching blocks transmitted and received through the bus matching port to recognize an event requiring switching of the data path, and inputting an ID of a preliminary transmission table corresponding to the event as the transmission table designator Path change resolver
Including,
The data processing engine,
A transmission table designator designating an ID of a preliminary transmission table corresponding to the event; And
Data processing engine memory for storing the predefined preliminary transmission table
Including, data processing system.
제1항에 있어서,
상기 데이터 경로의 전환이 필요한 이벤트는
다수의 물리적 경로 또는 논리적 경로가 포함된 데이터 포트들, 상기 라인 정합 블록들, 및 논리적 경로 그룹 중 적어도 하나에서 발생하는, 데이터 처리 시스템.
According to claim 1,
The event that needs to switch the data path
A data processing system that occurs in at least one of a number of physical paths or data ports containing a logical path, the line matching blocks, and a logical path group.
제1항에 있어서,
상기 라인 정합 블록들의 상태 정보를 수집하여 상기 이벤트의 발생 여부를 파악하고, 상기 이벤트가 발생한 경우에 상기 내부 통신 수단을 통해 상기 라인 정합 블록들의 적어도 일부에게 상기 이벤트의 발생 여부를 알리는 시스템 제어기를 포함하는 시스템 제어 블록
을 더 포함하는, 데이터 처리 시스템.
According to claim 1,
And a system controller that collects state information of the line matching blocks to determine whether the event has occurred, and notifies at least a portion of the line matching blocks through the internal communication means when the event occurs. System control block
Further comprising, a data processing system.
제12항에 있어서,
상기 시스템 제어기는,
상기 이벤트가 발생한 경우, 상기 이벤트의 발생 여부를 포함하는 메시지를 구성하고, 상기 메시지를 상기 공유 버스를 통해 나머지 라인 정합 블록들의 버스 제어기로 전달하는 버스 제어기; 및
상기 버스 제어기의 송, 수신 메시지를 상기 공유 버스를 위한 물리적인 메시지 포맷으로 변환하는 버스 정합 포트
를 포함하는, 데이터 처리 시스템.
The method of claim 12,
The system controller,
A bus controller configured to configure a message including whether or not the event occurs when the event occurs, and deliver the message to the bus controller of the remaining line matching blocks through the shared bus; And
A bus matching port that converts the transmission and reception messages of the bus controller into a physical message format for the shared bus.
Including, data processing system.
제1항에 있어서,
상기 공유 버스는,
상기 라인 정합 블록들 간의 사용자 데이터의 교환을 중계하는 데이터 스위치, 및 스위치 포트로 구성된 데이터 경로와 프로세서들 간의 메시징을 위한 제어 경로 중 적어도 하나를 포함하는, 데이터 처리 시스템.
According to claim 1,
The shared bus,
And a data switch relaying the exchange of user data between the line matching blocks, and at least one of a data path composed of a switch port and a control path for messaging between processors.
제1항에 있어서,
상기 라인 정합 블록들에 포함된 버스 제어기 및 버스 정합 포트는
상기 공유 버스의 버스 노드로 동작하고,
상기 공유 버스는,
내부 통신을 위해 상기 라인 정합 블록들 중 특정 블록만이 마스터 기능을 수행하는 마스터 버스 노드가 상기 라인 정합 블록 별로 존재하고, 상기 마스터 버스 노드가 슬레이브 버스 노드 전체 또는 특정 그룹으로 일괄적으로 공통의 메시지를 전달하는 멀티 버스 구조를 가지는, 데이터 처리 시스템.
According to claim 1,
The bus controller and bus matching port included in the line matching blocks
Acting as a bus node of the shared bus,
The shared bus,
For internal communication, a master bus node in which only a specific block among the line matching blocks performs a master function exists for each line matching block, and the master bus node collectively sends a message in common to all or a specific group of slave bus nodes. A data processing system having a multi-bus structure for delivering data.
데이터 경로의 전환이 필요한 이벤트마다에 대응되는 미리 정의된 예비 전송 테이블들- 상기 예비 전송 테이블들은 모든 물리적, 논리적 경로에 대한 목적지 정보를 포함함-을 저장하는 단계;
상기 이벤트가 발생한 경우에, 내부 통신 수단을 통해 상기 이벤트의 발생 여부를 일시에 복수 개의 라인 정합 블록들에게 알리는 단계;
상기 이벤트 발생으로 인한 전송 테이블의 변경 여부를 판단하는 단계; 및
상기 판단 결과를 기초로, 상기 예비 전송 테이블들 중 상기 이벤트에 대응되는 예비 전송 테이블을 선택하여 활성화 시키는 단계
를 포함하고,
상기 예비 전송 테이블을 선택하여 활성화 시키는 단계는
상기 예비 전송 테이블들 중 선택된 예비 전송 테이블의 내용을 활성 전송 테이블의 위치로 복사하는 단계
를 포함하는, 데이터 처리 시스템의 동작 방법.
Storing predefined preliminary transmission tables corresponding to each event in which data path switching is required, wherein the preliminary transmission tables contain destination information for all physical and logical paths;
When the event occurs, notifying a plurality of line matching blocks at a time whether or not the event occurs through internal communication means;
Determining whether a transmission table is changed due to the occurrence of the event; And
Selecting and activating a preliminary transmission table corresponding to the event from among the preliminary transmission tables based on the determination result.
Including,
The step of selecting and activating the preliminary transmission table is
Copying the contents of the selected spare transmission table among the spare transmission tables to the location of the active transmission table
A method of operating a data processing system comprising a.
제16항에 있어서,
상기 예비 전송 테이블들을 참조하여 데이터 포트를 통해 들어오는 인입 데이터의 인출 경로에 해당하는 출력 데이터 포트를 찾는 단계
를 더 포함하는, 데이터 처리 시스템의 동작 방법.
The method of claim 16,
Finding an output data port corresponding to an outgoing path of incoming data coming through the data port by referring to the preliminary transmission tables.
The method of operating the data processing system further comprising a.
제16항에 있어서,
버스 정합 포트를 통해 송, 수신되는 상기 라인 정합 블록들 간의 메시지를 해석하여 상기 이벤트를 인지하는 단계
를 더 포함하는, 데이터 처리 시스템의 동작 방법.
The method of claim 16,
Recognizing the event by interpreting a message between the line matching blocks transmitted and received through a bus matching port.
The method of operating the data processing system further comprising a.
제16항에 있어서,
상기 이벤트에 대응되는 예비 전송 테이블을 선택하여 활성화 시키는 단계는
상기 이벤트에 대응되는 예비 전송 테이블의 아이디를 전송 테이블 지정자로 입력하는 단계
를 포함하는, 데이터 처리 시스템의 동작 방법.
The method of claim 16,
The step of selecting and activating a preliminary transmission table corresponding to the event is
Inputting the ID of the preliminary transmission table corresponding to the event as a transmission table designator
A method of operating a data processing system comprising a.
삭제delete
KR1020140015282A 2014-02-11 2014-02-11 Data processing system changing massive path time-deterministically and operating method of the system KR102093296B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140015282A KR102093296B1 (en) 2014-02-11 2014-02-11 Data processing system changing massive path time-deterministically and operating method of the system
US14/613,565 US9614749B2 (en) 2014-02-11 2015-02-04 Data processing system and method for changing a transmission table

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140015282A KR102093296B1 (en) 2014-02-11 2014-02-11 Data processing system changing massive path time-deterministically and operating method of the system

Publications (2)

Publication Number Publication Date
KR20150094239A KR20150094239A (en) 2015-08-19
KR102093296B1 true KR102093296B1 (en) 2020-03-25

Family

ID=53775961

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140015282A KR102093296B1 (en) 2014-02-11 2014-02-11 Data processing system changing massive path time-deterministically and operating method of the system

Country Status (2)

Country Link
US (1) US9614749B2 (en)
KR (1) KR102093296B1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2018004655A (en) 2015-10-16 2019-03-14 Walmart Apollo Llc Sensor data analytics and alarm management.
CA2954037A1 (en) 2016-01-21 2017-07-21 Wal-Mart Stores, Inc. Codeless information service for abstract retrieval of disparate data
WO2017192696A1 (en) 2016-05-05 2017-11-09 Wal-Mart Stores, Inc. Engine-agnostic event monitoring and predicting systems and methods
DE112020002497T5 (en) * 2019-05-23 2022-04-28 Hewlett Packard Enterprise Development Lp SYSTEM AND PROCEDURE FOR DYNAMIC ALLOCATION OF REDUCTION ENGINES
WO2023159734A1 (en) * 2022-02-24 2023-08-31 长鑫存储技术有限公司 Data transmission circuit, data transmission method, and memory
EP4258267A4 (en) 2022-02-24 2024-04-24 Changxin Memory Tech Inc Data transmission circuit, data transmission method, and memory

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130054763A1 (en) * 2011-08-31 2013-02-28 Jacobus Van Der Merwe Methods and apparatus to configure virtual private mobile networks with virtual private networks

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187314A (en) * 1992-12-16 1994-07-08 Hitachi Ltd Fault reporting system
JP3762749B2 (en) 2001-04-19 2006-04-05 富士通株式会社 Restoration protection method and apparatus
US7986618B2 (en) 2002-06-12 2011-07-26 Cisco Technology, Inc. Distinguishing between link and node failure to facilitate fast reroute
CN100550823C (en) 2003-12-26 2009-10-14 上海贝尔阿尔卡特股份有限公司 A kind of Ethernet transfer equipment and method with quick protection and fair characteristic
US7590054B1 (en) 2004-09-14 2009-09-15 Nortel Networks Limited Protection switching in an ethernet packet-switched network
EP2572473B1 (en) 2010-05-19 2014-02-26 Telefonaktiebolaget L M Ericsson (PUBL) Methods and apparatus for use in an openflow network
US20140244746A1 (en) * 2013-02-26 2014-08-28 Red Hat, Inc. Systems and Methods for Message Routing Using Link State Information
CN104426815B (en) * 2013-08-27 2019-07-09 中兴通讯股份有限公司 Method and system, OF controller and the OF interchanger of flow table issuance in a kind of SDN

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130054763A1 (en) * 2011-08-31 2013-02-28 Jacobus Van Der Merwe Methods and apparatus to configure virtual private mobile networks with virtual private networks

Also Published As

Publication number Publication date
US9614749B2 (en) 2017-04-04
KR20150094239A (en) 2015-08-19
US20150229557A1 (en) 2015-08-13

Similar Documents

Publication Publication Date Title
KR102093296B1 (en) Data processing system changing massive path time-deterministically and operating method of the system
US11134012B2 (en) Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
EP3175590B1 (en) Bridging clouds
US10210008B2 (en) Control server, service providing system, and method of providing a virtual infrastructure
JP6278800B2 (en) Relay system and switch device
JP4888186B2 (en) Communication system, repeater, and relay method
JP5941404B2 (en) Communication system, path switching method, and communication apparatus
CN108306777B (en) SDN controller-based virtual gateway active/standby switching method and device
JP5804061B2 (en) COMMUNICATION SYSTEM, CONTROL DEVICE, COMMUNICATION METHOD, AND PROGRAM
CN102413046A (en) Method for forwarding flow by means of virtual router redundancy protocol backup set and equipment
CN102984014A (en) Data transmission method and network system
US9628410B2 (en) Switch and switch system for enabling paths between domains
CN104221337B (en) Communication system, control device, communicator, information trunking method
EP3104561A1 (en) Communication control system, communication control method, and communication control program
RU2651186C1 (en) Method of data exchange and network node control device
JP6446891B2 (en) COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM
CN105610614A (en) High availability access system and high availability fault switching method
CN107104837B (en) Method and control device for path detection
JP4455105B2 (en) Ring network system having redundant path and transfer device used in the system
CN1705298B (en) Method of managing malfunctions at router level, and a router
KR20150059703A (en) Method for establishing connection between switches and controllers in Software Defined Network
JP2021190858A (en) Communication system and communication control method
JP5833184B2 (en) Network congestion avoidance system and method
KR20180039423A (en) Data transmission system for supporting expansion of muti system
JP2017163177A (en) Controller, communication switch, communication system, communication control method, and program

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