KR20040029730A - Network management system using software distributed shared memory and method therefor - Google Patents
Network management system using software distributed shared memory and method therefor Download PDFInfo
- Publication number
- KR20040029730A KR20040029730A KR1020020060122A KR20020060122A KR20040029730A KR 20040029730 A KR20040029730 A KR 20040029730A KR 1020020060122 A KR1020020060122 A KR 1020020060122A KR 20020060122 A KR20020060122 A KR 20020060122A KR 20040029730 A KR20040029730 A KR 20040029730A
- Authority
- KR
- South Korea
- Prior art keywords
- shared memory
- information
- network management
- gateway
- memory
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 112
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000007726 management method Methods 0.000 claims description 38
- 230000004888 barrier function Effects 0.000 claims description 30
- 230000004044 response Effects 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 14
- 238000010586 diagram Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 소프트웨어 분산 공유메모리를 이용한 망관리 시스템 및 그 방법에 관한 것으로써, 망관리 시스템을 구성하는 다수의 서버 또는 워크스테이션 노드간에 소프트웨어 분산 공유메모리를 사용하여 효율적이고 쉽게 노드간 통신을 수행할 수 있도록 하는 소프트웨어 분산 공유메모리를 이용한 망관리 시스템 및 그 방법에 관한 것이다.The present invention relates to a network management system using a software distributed shared memory and a method thereof, and to efficiently and easily communicate between nodes using a software distributed shared memory between a plurality of server or workstation nodes constituting the network management system. The present invention relates to a network management system using software distributed shared memory and a method thereof.
도 1은 종래의 IP(Internet Protocol) 망관리 시스템의 구성도이다.1 is a block diagram of a conventional IP (Internet Protocol) network management system.
종래의 망관리 시스템은 데이터베이스(2)를 포함하는 중앙 DB서버(1)와, 중앙 DB서버(1)와 연결된 복수개의 게이트웨이를 구비하는데, 도 1에서는 게이트웨이(3,4,5)를 구비함을 그 실시예로 설명하고자 한다.The conventional network management system includes a central DB server 1 including a database 2 and a plurality of gateways connected to the central DB server 1. In FIG. 1, gateways 3, 4, and 5 are provided. It will be described in the embodiment.
각각의 게이트웨이(3~5)는 중앙 DB서버(1)와 네트워크를 통해 연결되고, 감시 대상이 되는 복수개의 장비들과 접속된다.Each gateway 3 to 5 is connected to the central DB server 1 via a network and to a plurality of devices to be monitored.
그리고, 게이트웨이(3)는 라우터(router;6)와 NAS(Network Access Server;7)가 접속되고, 게이트웨이(4)는 스위치(8)가 접속되며, 게이트웨이(5)는 복수개의 AP(Access Point;엑세스 포인트)와 접속되어 ICMP(Internet Control Message Protocol) 및 SNMP(Simple Network Management Protocol;간이 망 관리 프로토콜)를 통해 통신을 수행한다.The gateway 3 is connected to a router 6 and a NAS (Network Access Server) 7, the gateway 4 is connected to a switch 8, and the gateway 5 is connected to a plurality of APs. It is connected to an access point and communicates through ICMP (Internet Control Message Protocol) and SNMP (Simple Network Management Protocol).
여기서, 게이트웨이(3~5)는 중앙 DB서버(1)로부터 장비에 대한 정보를 인가받고, 각종 장비로부터 ICMP나 SNMP을 통해 장비 상태와 정보 및 트래픽량 등을 수집하여 중앙 DB서버(1)로 전송한다.Here, the gateways 3 to 5 receive information on the equipment from the central DB server 1, collect the equipment status, information, and traffic volume through ICMP or SNMP from various equipment to the central DB server 1 send.
그런데, 종래의 이러한 망관리 시스템은 중앙 DB서버(1)와 게이트웨이(3~5) 간의 통신이나, 게이트웨이(3~5) 서로 간의 통신을 위해 소켓 등을 사용한 네트워크 통신 모듈이 필요하게 된다. 그리고, 모듈 내의 API(Application Program Interface;응용 프로그램 인터페이스)를 호출하여 상호 통신을 수행하게 된다.However, the conventional network management system requires a network communication module using a socket or the like for communication between the central DB server 1 and the gateways 3 to 5 or for communication between the gateways 3 to 5. Then, the API (Application Program Interface) in the module is called to perform mutual communication.
따라서, 게이트웨이(3~5)와 중앙 DB서버(1)간의 빈번한 통신으로 인해 매번 통신 API를 호출하기 때문에 네트워크 부하량이 증가하게 되고 이로 인해 망관리의 효율성이 떨어지게 되는 문제점이 있다.Therefore, since the communication API is called every time due to the frequent communication between the gateways 3 to 5 and the central DB server 1, the network load increases, thereby reducing the efficiency of network management.
본 발명은 상기와 같은 문제점을 해결하기 위하여 창출된 것으로, 물리적으로 분산된 메모리 상에서 유저에게 하나의 단일 메모리 주소 공간을 제공하여 원격 노드에 있는 메모리를 쉽게 읽고 쓸 수 있게 함으로써 망관리 시스템 개발자로 하여금 명시적인 통신 호출을 생략할 수 있도록 하는데 그 목적이 있다.The present invention was created to solve the above problems, and provides a network management system developer by easily providing a single memory address space to a user on a physically distributed memory to easily read and write the memory in a remote node. The goal is to allow explicit communication calls to be omitted.
도 1은 일반적인 IP 망관리 시스템의 구성도.1 is a block diagram of a general IP network management system.
도 2는 본 발명에 따른 소프트웨어 분산 공유메모리를 이용한 망관리 시스템의 구성도.2 is a block diagram of a network management system using a software distributed shared memory according to the present invention.
도 3은 본 발명에 따른 소프트웨어 분산 공유메모리를 이용한 망관리 방법의 흐름도.3 is a flowchart of a network management method using a software distributed shared memory according to the present invention;
상기한 목적을 달성하기 위한 본 발명의 소프트웨어 분산 공유메모리를 이용한 망관리 시스템은, 감시 대상이 되는 각종 장비의 장비 정보를 할당하고 장비 정보의 변경시 공유메모리 영역에 저장하는 중앙 데이터베이스 서버와; 각종 장비의 상태를 수집한 수집정보를 공유메모리 영역에 저장하고 수집정보를 중앙 데이터베이스 서버로 전송하는 게이트웨이; 및 중앙 데이터베이스 서버와 게이트웨이에 각각 구비되어 하드웨어 버스를 통해 공유되는 복수개의 공유메모리를 포함하여 소프트웨어적으로 하나의 메모리 주소 공간을 제공하는 소프트웨어 분산 공유메모리를 구비함을 특징으로 한다.A network management system using the software distributed shared memory of the present invention for achieving the above object comprises: a central database server for allocating equipment information of various equipment to be monitored and storing it in a shared memory area when the equipment information is changed; A gateway for storing the collected information collecting the state of various equipments in a shared memory area and transmitting the collected information to a central database server; And a software distributed shared memory provided in the central database server and the gateway to provide a single memory address space in software including a plurality of shared memories shared through a hardware bus.
또한, 본 발명의 소프트웨어 분산 공유메모리를 이용한 망관리 방법은, 중앙 데이터베이스 서버와 게이트웨이 간에 각각 공유메모리를 포함하는 소프트웨어 분산 공유메모리를 이용한 망관리 방법에 있어서, 중앙 데이터베이스 서버가 데이터베이스로부터 장비 정보를 선택하여 공유메모리에 저장하는 제 1단계와; 게이트웨이로부터 배리어 호출 신호의 인가시 게이트웨이에 장비 정보와 함께 배리어 응답신호를 전송하는 제 2단계와; 각종 장비로부터 수집된 수집정보를 공유메모리에 저장하고 배리어 호출신호를 중앙 데이터베이스에 전송하는 제 3단계; 및 게이트웨이로부터 전송된 수집정보를 공유메모리에 저장하고 게이트웨이에 배리어 응답신호를 전송하는 제 4단계를 포함하는 것을 특징으로 한다.In addition, in the network management method using the software distributed shared memory of the present invention, in the network management method using a software distributed shared memory including shared memory between the central database server and the gateway, the central database server selects equipment information from the database. A first step of storing in a shared memory; Transmitting a barrier response signal along with the equipment information to the gateway upon application of the barrier call signal from the gateway; A third step of storing collection information collected from various equipments in a shared memory and transmitting a barrier call signal to a central database; And storing a collection information transmitted from the gateway in a shared memory and transmitting a barrier response signal to the gateway.
본 발명은 망관리 시스템을 하나의 SMP(Symmetric multiprocessing; 대칭형 다중처리) 클러스터(Cluster)로 보고 SMP 클러스터를 위한 소프트웨어 분산 공유메모리 알고리즘을 사용해 망관리 시스템에서 하나의 메모리 주소 공간을 제공한다.The present invention sees a network management system as one symmetric multiprocessing (SMP) cluster and provides one memory address space in the network management system using a software distributed shared memory algorithm for the SMP cluster.
따라서, 망관리 시스템 개발자는 명시적인 통신 API 호출 없이 직접 메모리 주소 공간에 읽고 쓰는 것으로 원격 노드와의 통신이 이루어지도록 한다.Therefore, the network management system developer can communicate with the remote node by reading and writing to the memory address space directly without explicit communication API call.
이하, 첨부한 도면을 참조하여 본 발명의 실시예에 대해 상세히 설명하고자 한다.Hereinafter, with reference to the accompanying drawings will be described in detail an embodiment of the present invention.
도 2는 본 발명에 따른 소프트웨어 분산 공유메모리를 이용한 망관리 시스템의 구성도이다.2 is a block diagram of a network management system using a software distributed shared memory according to the present invention.
본 발명은 중앙 DB서버(10)와, 복수개의 게이트웨이(20,30)를 구비하여 연결 네트워크(50)를 통해 라우터(60)와, NAS(Network Access Server;네트워크 엑세스 서버;70)와, 스위치(80)와, AP(Access Point;엑세스 포인트;90) 등의 장비와 접속된다.The present invention includes a central database server (10), a plurality of gateways (20, 30), a router (60), a NAS (Network Access Server; network access server; 70), and a switch through a connection network (50). 80 and equipment such as an AP (Access Point; 90).
여기서, 중앙 DB서버(10)는 복수개의 프로세스(Process) P0~P3와, 소프트웨어캐쉬(11)와, 공유메모리(41)를 구비한다.Here, the central DB server 10 includes a plurality of processes P0 to P3, a software cache 11 and a shared memory 41.
그리고, 게이트웨이(20)는 복수개의 프로세스 P4,P5와, 소프트웨어 캐쉬(21)와, 공유메모리(42)를 구비하고, 게이트웨이(30)는 복수개의 프로세스 P6,P7와, 소프트웨어 캐쉬(31)와, 공유메모리(43)를 구비한다. 또한, 각각의 공유메모리(41~43)는 하나의 소프트웨어 분산 공유메모리(40)로 이루어진다.The gateway 20 includes a plurality of processes P4 and P5, a software cache 21, and a shared memory 42. The gateway 30 includes a plurality of processes P6 and P7 and a software cache 31. And a shared memory 43. In addition, each shared memory 41 to 43 includes one software distributed shared memory 40.
본 발명의 실시예에서는 프로세스를 P0~P7로 도시하였지만 이에 한정되지 않고 프로세스는 가변적으로 구성될 수 있다.In the embodiment of the present invention, the process is illustrated as P0 to P7, but the present invention is not limited thereto and the process may be configured variably.
이러한 구성을 갖는 본 발명에서 사용되는 용어를 정의하면 다음과 같다.Definition of terms used in the present invention having such a configuration is as follows.
먼저, 노드는 독립된 프로세서와 메모리, 입출력 버스를 가지고 있는 단일 서버나 워크스테이션으로 정의된다.First, a node is defined as a single server or workstation with independent processors, memory, and I / O buses.
그리고, 게이트웨이(20,30)는 망관리 시스템을 구성하는 노드 중 각각의 장비로부터 ICMP(Internet Control Message Protocol;인터넷 제어 메세지 프로토콜)나 SNMP(Simple Network Management Protocol;단순 망 관리 프로토콜)를 통해 장비 정보를 수집하여 중앙 DB서버(10)로 전달하는 역할을 하는 노드로 정의된다.In addition, the gateways 20 and 30 may provide equipment information through ICMP (Internet Control Message Protocol) or SNMP (Simple Network Management Protocol) from each device among the nodes constituting the network management system. It is defined as a node that serves to collect and deliver to the central DB server (10).
또한, SMP(Symmetric Multiprocessor) 노드는 여러 개의 프로세서(Processor)가 물리적 메모리와 입출력 버스를 공유하고 하나의 운용체제(OS)가 모든 프로세서를 관리하는 노드로 정의된다.In addition, a symmetric multiprocessor (SMP) node is defined as a node in which several processors share a physical memory and an input / output bus, and one operating system (OS) manages all the processors.
또한, 지역노드(Local node)는 특정 프로세스 입장에서 그 프로세스가 속해있고 수행되고 있는 자신의 노드로 정의된다. 원격 노드(remote node)는 지역노드가 아닌 다른 노드 중의 임의의 노드이며, 노드 내의 어떤 프로세스와 통신을 하려면 네트워크를 거쳐야 하는 노드로 정의된다.Also, a local node is defined as its own node to which a process belongs and is executed in the context of a particular process. A remote node is any node other than the local node and is defined as a node that must traverse the network to communicate with any process in the node.
이러한 본 발명은 전체 망관리 시스템을 한 대의 클러스터 컴퓨터로 보는 것이며, 도 2에 도시된 중앙 DB서버(10) 및 각각의 게이트웨이(20,30)는 SMP 노드가된다.In the present invention, the entire network management system is viewed as one cluster computer, and the central DB server 10 and each gateway 20 and 30 shown in FIG. 2 become an SMP node.
그리고, 복수개의 프로세스들 P0,P1..P7은 일반적인 클러스터 시스템에서는 프로세서(CPU)로 생각하면 되지만 본 발명에서는 프로세스를 나타낸다. 즉, 프로세서 수와 프로세스 수는 일치하지 않으며 보통 프로세서 수보다 많은 프로세스가 한 노드 내에 존재한다.In addition, although a plurality of processes P0, P1 .. P7 may be considered as a processor (CPU) in a general cluster system, the processes are represented in the present invention. That is, the number of processors and the number of processes do not match, and there are usually more processes in a node than the number of processors.
또한, 각각의 노드는 프로세스들 P0~P7간에 공유하는 공유메모리(41~43)를 구비하며, 공유메모리(41~43)는 하드웨어적으로 공유되어 있고 하드웨어 버스를 통해 연결된다. 또한, 같은 노드 내의 공유메모리(41~43)는 하드웨어 캐쉬 일관성 모델(Cache consistency model)에 의해 일관성이 유지된다.In addition, each node has shared memories 41 to 43 shared between processes P0 to P7, and the shared memories 41 to 43 are shared in hardware and connected through a hardware bus. In addition, the shared memories 41 to 43 in the same node are maintained consistent by a hardware cache consistency model.
모든 노드는 연결 네트워크(50)로 연결되며, 본 발명의 망관리 시스템 모델에서는 광대역통신망(WAN;Wide Area Network), 인터넷 등의 광역 네트워크에 연결되어 있다고 가정한다. 따라서, 각 노드에 있는 각각의 공유메모리(41~43)는 물리적으로 분산되어 있으며 특별한 작업이 수행되지 않는 한 공유되지 못한다.It is assumed that all nodes are connected to the connection network 50, and the network management system model of the present invention is connected to a wide area network such as a wide area network (WAN) or the Internet. Therefore, each shared memory 41 to 43 in each node is physically distributed and cannot be shared unless special work is performed.
그리고, 소프트웨어 분산 공유 메모리(40)는 이러한 공유메모리(41~43) 간에 가상적으로 단일 메모리 주소 공간을 제공하게 된다.In addition, the software distributed shared memory 40 virtually provides a single memory address space between the shared memories 41 to 43.
또한, 이러한 본 발명은 NUMA(Non-Uniform Memory Access) 형태를 띄게 되는데, 지역 노드의 메모리를 엑세스하는 시간이 원격 노드의 메모리를 엑세스하는 시간에 비해 훨씬 짧다.In addition, the present invention has a form of non-uniform memory access (NUMA), in which the time of accessing the memory of the local node is much shorter than the time of accessing the memory of the remote node.
따라서, 엑세스 시간 불일치를 해결하기 위한 목적으로 각 노드는 소프트웨어캐쉬(11,21,31)를 구비한다. 소프트웨어캐쉬(11,21,31)는 물리적으로는 메모리의 일부인데, 원격 노드에 있는 메모리 내용을 읽어오면 자신의 소프트웨어 캐쉬에 저장시켜 놓고 지속적으로 읽게 된다.Thus, each node has software caches 11, 21, and 31 for the purpose of resolving access time mismatches. The software caches 11, 21, and 31 are physically part of memory. When the contents of the memory in the remote node are read, the software caches 11, 21, and 31 are stored in their software cache and continuously read.
따라서, 본 발명은 중앙 DB서버(10)가 정보를 수집해야 할 장비들의 IP주소와 인터페이스, SNMP OID(Object ID)를 각각의 게이트웨이(20,30)에 나누어서 할당한다. 그리고, 장비가 추가되면 추가된 장비를 특정 게이트웨이(20,30)에게 할당하는데, 이를 소켓 등의 네트워크 통신 API를 사용하지 않고 소프트웨어 분산 공유메모리(40)를 사용하게 된다.Therefore, the present invention allocates IP addresses, interfaces, and SNMP OIDs (Object IDs) of devices to which the central DB server 10 should collect information by dividing each gateway 20 and 30. When the equipment is added, the added equipment is allocated to a specific gateway 20, 30, which uses the software distributed shared memory 40 without using a network communication API such as a socket.
즉, 단순히 지역 메모리에 읽고 쓰는 것과 마찬가지로 공유메모리(41~43) 주소 공간에 쓰기만 하는 것으로 게이트웨이(20,30)에 필요한 정보를 전달할 수 있게 된다.That is, the information required for the gateways 20 and 30 can be delivered by simply writing to the shared memory 41 to 43 address space as well as simply reading and writing to the local memory.
한편, 도 3은 본 발명에 따른 소프트웨어 분산 공유메모리를 이용한 망관리 방법에서 일관성을 맞추기 위한 흐름도이다.On the other hand, Figure 3 is a flow chart for consistency in the network management method using a software distributed shared memory according to the present invention.
본 발명은 네트워크 부하를 줄이기 위해 소프트웨어 분산 공유메모리에서 주로 사용되는 LRC(Lazy Release Consistency) 메모리 일관성 모델을 사용한다.The present invention uses a Lazy Release Consistency (LRC) memory coherency model that is commonly used in software distributed shared memory to reduce network load.
즉, 메모리를 공유하기 때문에 같은 메모리 영역이 동시에 서로 다른 프로세스에 의해 엑세스되는 것을 방지하기 위해 동기화 방법이 필요하다. 이를 위해, 소프트웨어 분산 공유메모리에서는 락(Lock)과 배리어(Barrier)의 동기화 방법을 사용한다.That is, because the memory is shared, a synchronization method is needed to prevent the same memory area from being accessed by different processes at the same time. To this end, the software distributed shared memory uses a synchronization method of lock and barrier.
LRC에서 락과 배리어는 동기화 뿐만 아니라 메모리 일관성 정보를 주고받는 수단으로 사용되는데, 본 발명에서 메모리 일관성을 맞추기 위한 동작과정을 설명하면 다음과 같다.In the LRC, locks and barriers are used as a means of transmitting and receiving memory coherence information as well as synchronization. In the present invention, an operation process for matching memory coherence is as follows.
먼저, 중앙 DB서버 T0는 분산 공유메모리가 초기화되고 공유메모리 영역이 할당되면 데이터베이스로부터 장비 정보를 선택하는데,(단계 100) 여기서, 장비 정보란 망관리를 위해 관리의 대상이 되는 라우터, 스위치 등의 IP주소, 인터페이스, OID, SNMP 커뮤니티(community) 등을 말한다.First, the central DB server T0 selects the device information from the database when the distributed shared memory is initialized and the shared memory area is allocated (step 100). Here, the device information is a router, a switch, etc., which is a management target for network management. IP address, interface, OID, SNMP community, etc.
이후에, 중앙 DB서버 T0는 공유메모리(41) 영역에 선택된 감시 대상 장비 정보를 저장한다.(단계 110) 그리고, 공유메모리(41) 영역에 장비 정보를 저장한 후 공유메모리(41)에 저장된 이전 감시 결과를 삭제시킨다.Thereafter, the central DB server T0 stores the selected monitoring target device information in the shared memory 41 area (step 110). Then, the central DB server T0 stores the device information in the shared memory 41 area and then stores the device information in the shared memory 41 area. Delete the previous monitoring result.
배리어(Barrier)는 중앙 DB서버 T0와 게이트웨이 T1,T2,T3를 동기화하면서 중앙 DB서버 T0와 각각의 게이트웨이 T1~T3가 가지고 있는 공유메모리(41~43)의 내용을 일치시키는 동기화 방법이다.A barrier is a synchronization method for synchronizing the central DB server T0 with the gateways T1, T2 and T3 while matching the contents of the shared memory 41 to 43 of the central DB server T0 with the gateways T1 to T3.
여기서, 중앙 DB서버 T0는 먼저 배리어 Barrier()를 호출했더라도 다른 모든 프로세스가 배리어 Barrier()를 호출할 때까지 기다리게 된다.Here, the central DB server T0 waits until all other processes call the barrier Barrier () even if the barrier Barrier () is called first.
따라서, 게이트웨이 T1~T3는 배리어 호출신호 BARR를 통해 배리어 호출 상태를 중앙 DB서버 T0에 전송하고,(단계 120) 중앙 DB서버 T0는 배리어 응답신호 BARRGRANT를 통해 모든 프로세스가 배리어 상태에 도달함을 알리는 메세지를 게이트웨이 T1~T3에 전송하여 동기화에 따라 계속 프로세스를 진행하도록 한다.(단계 130)Accordingly, the gateways T1 to T3 transmit the barrier call state to the central DB server T0 through the barrier call signal BARR (step 120), and the central DB server T0 indicates that all processes reach the barrier state through the barrier response signal BARRGRANT. A message is sent to the gateways T1-T3 to continue the process according to synchronization (step 130).
이때, 각 프로세스는 타임스탬프(timestamp)라는 시간 정보를 가지고 있는데, 타임스탬프(timestamp)는 시각과 같은 의미로 사용되어, 다른 프로세스가 얼마만큼 진행했는지 등의 선행 관계를 타임스탬프를 비교하여 판단하게 된다. 이러한 타임 스탬프는 배리어(barrier), 락(lock), 언락(unlock)에서 1씩 증가하게 된다.In this case, each process has time information called a timestamp. The timestamp is used as a time meaning, and compares a timestamp to determine a predecessor relationship such as how far other processes have progressed. do. This time stamp is incremented by 1 in the barrier, lock, and unlock.
그리고, 모든 공유메모리 페이지는 백터 타임스탬프를 가지고 있는데, 메모리 엑세스가 발생할 때 공유메모리 페이지의 백터 타임 스탬프와 현재 프로세스의 벡터 타임스탬프를 비교하여 캐쉬 내용의 유효성을 판단한다.In addition, all shared memory pages have a vector time stamp. When a memory access occurs, the cache time is determined by comparing the vector time stamp of the current process with the vector time stamp of the shared memory page.
만약, 새로운 내용이 필요한 경우 원격 노드의 해당 프로세스로부터 공유 메모리 페이지 요청을 수행하여 지역 노드의 캐쉬를 업데이트한 후 라이트 함으로써 메모리 일관성이 유지된다.If new contents are needed, memory coherency is maintained by updating the cache of the local node by executing a shared memory page request from the corresponding process of the remote node.
또한, 배리어 응답신호 BARRGRANT와 함께 전송되는 라이트 노티스(write-notice)는 (T0,0,{장비 정보})로써, 각각의 게이트웨이 T1~T3에 장비 정보를 전달하게 된다.In addition, a write-notice transmitted along with the barrier response signal BARRGRANT is (T0,0, {equipment information}), and transmits the instrument information to each gateway T1 to T3.
따라서, 각각의 게이트웨이 T1~T3는 ICMP,SNMP를 통해 장비 정보를 수집하고, 수집정보를 각각의 공유메모리(42~43)에 기록한다.(단계 140)Accordingly, each of the gateways T1 to T3 collects equipment information through ICMP and SNMP, and records the collected information in each shared memory 42 to 43 (step 140).
그리고, 배리어 호출신호 BARR을 통해 중앙 DB서버 T0 배리어 호출 상황을 전달한다.(단계 150) 중앙 DB서버 T0는 게이트웨이 T0~T3로부터 배리어 호출신호 BARR의 전달시 데이터베이스에 PING(Packet Internet Groper;패킷 인터넷 그로퍼)이나 SNMP를 통해 수집한 장비 장애 여부, 트래픽 정보, 세션 정보 등의 수집정보를 저장하고(단계 160), 배리어 응답신호 BARRGRANT를 게이트웨이 T1~T3에 전송한다.(단계 170)The central DB server T0 barrier call status is transmitted through the barrier call signal BARR. (Step 150) The central DB server T0 transmits a PING (Packet Internet Groper; packet Internet Groper) to the database when the barrier call signal BARR is transmitted from the gateways T0 to T3. And information collected such as equipment failure, traffic information, session information, and the like, collected through SNMP (stepper 160), and the barrier response signal BARRGRANT is transmitted to the gateways T1 to T3 (step 170).
이때, 중앙 DB서버 T0는 배리어 응답신호 BARRGRANT와 함께 라이트 노티스(T1,1,{수집 정보}), (T2,1,{수집 정보}), (T3,1,{수집 정보})를 각각의 게이트웨이 T1~T3로 전송하는데, 라이트 노티스 (T1,1,{수집 정보})는 프로세스인 게이트웨이 T1이 타임스탬프1에서 {수집정보}를 공유메모리에 저장했다는 의미를 나타낸다.At this time, the central DB server T0 includes the write notices T1,1, {collection information}, (T2,1, {collection information}), and (T3,1, {collection information}) together with the barrier response signal BARRGRANT. It transmits to the gateways T1 to T3, and the write notice (T1,1, {collection information}) indicates that the process gateway T1 stored {collection information} in the time stamp 1 in the shared memory.
여기서, 라이트 노티스에 실제 값을 나타내는 방법을 업데이트 프로토콜(update protocol)이라 하고, 라이트 노티스에는 저장한 정보만 실어보내고, 실제 값은 프로세스(T2,T3등)가 그 값을 읽으려고 시도할 때 전송되는 방법을 무효 프로토콜(invalidation protocol)이라 한다.Here, the method of representing the actual value to Lightnotes is called an update protocol, and only the stored information is sent to Lightnotes, and the actual value is transmitted when a process (T2, T3, etc.) attempts to read the value. This method is called an invalidation protocol.
이상에서와 같이 망관리 시스템의 개발시에는 소프트웨어 분산 공유메모리(40)의 내부에서 어떤 형태로 메모리 일관성이 유지되고 원격 노드의 메모리를 참조하는지 지역 노드의 캐쉬를 참조하는지를 고려하지 않고, 단지 공유메모리를 할당(Allocation)받아 공유 메모리에 정보를 읽고 쓸 때 락과 배리어의 동기화 방법에 따라 동기화만 맞추어 준다.As described above, in the development of the network management system, the shared memory is not considered in the form of maintaining the memory coherency in the software distributed shared memory 40 and referring to the remote node's memory or the local node's cache. When reading and writing information to shared memory by allocation, it synchronizes only depending on how the lock and barrier are synchronized.
이와 같은 방법으로 소켓 API 같은 네트워크 모듈을 사용하지 않고, 소프트웨어 분산 공유메모리(40)에 의한 암시적인 통신으로 중앙 DB서버 T0와 게이트웨이 T1~T3간의 통신이 이루어진다.In this manner, communication between the central DB server T0 and the gateways T1 to T3 is performed by implicit communication by the software distributed shared memory 40 without using a network module such as a socket API.
한편, 일반적인 클러스터 컴퓨터는 고속의 빠른 네트워크를 사용하여 노드들이 연결되어 있는 반면에, 본 발명의 모델이 되는 망관리 시스템 하드웨어는 각 노드가 지리적으로도 흩어져 있고 고속의 랜(LAN)이 아닌 광대역 통신망(WAN), 인터넷으로 연결된다.On the other hand, in a general cluster computer, nodes are connected by using a high-speed fast network, whereas the network management system hardware of the present invention is a broadband communication network in which each node is geographically dispersed and is not a high-speed LAN. (WAN), connected to the Internet.
이러한 환경에서 소프트웨어 분산 공유메모리를 적용하려면 네트워크 대역폭을 최대한 적게 사용하고 네트워크를 통한 메세지 전달량이 최대한 작아야 한다.In such an environment, the application of software distributed shared memory should use as little network bandwidth as possible and the smallest amount of message passing through the network.
따라서, 소프트웨어 분산 공유메모리의 일관성(Consistency)을 맞추기 위한 메모리 일관성 모델(Memory consistency model) 중 LRC(Lazy release consistency)나 HLRC(Home-based lazy release consistency) 등의 완화된 메모리 모델을 사용하여 네트워크 메시지 전달량을 줄여야 한다.Therefore, network messages using a relaxed memory model such as lazy release consistency (LRC) or home-based lazy release consistency (HLRC), among the memory consistency models for matching the consistency of software distributed shared memory. The delivery volume should be reduced.
또한, 같은 노드 내의 프로세스들 간에는 네트워크를 통하지 않고 자체적으로 하드웨어 메모리 공유를 통한 분산 공유메모리를 제공하여 네트워크 부하량을 줄인다.In addition, it reduces network load by providing distributed shared memory through hardware memory sharing on its own, rather than through a network.
이상에서 설명한 바와 같이, 본 발명은 소프트웨어 분산 공유메모리를 사용해 명시적인 통신의 수를 줄이고, 네트워크를 통해 메시지를 전달하는 프로그래밍 모델에 비해 직관적으로 이해하기 쉽기 때문에 용이한 망관리 시스템 개발을 가능하게 한다. 또한, 게이트웨이의 수가 가변적이라도 쉽게 노드간의 통신이 이루어질 수 있도록 하는 효과를 제공한다.As described above, the present invention reduces the number of explicit communication using software distributed shared memory and enables easy network management system development because it is intuitively easy to understand compared to a programming model for delivering messages over a network. . In addition, even if the number of gateways is variable, it provides an effect that can easily communicate between nodes.
Claims (11)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020020060122A KR20040029730A (en) | 2002-10-02 | 2002-10-02 | Network management system using software distributed shared memory and method therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020020060122A KR20040029730A (en) | 2002-10-02 | 2002-10-02 | Network management system using software distributed shared memory and method therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20040029730A true KR20040029730A (en) | 2004-04-08 |
Family
ID=37331088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020020060122A KR20040029730A (en) | 2002-10-02 | 2002-10-02 | Network management system using software distributed shared memory and method therefor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20040029730A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100894328B1 (en) * | 2008-01-31 | 2009-04-24 | 주식회사 유티티 | System, apparatus and method for transmitting image data |
KR20190139043A (en) * | 2018-06-07 | 2019-12-17 | 에스케이브로드밴드주식회사 | Distributed database system and service methof thereof, central database apparatus and control method thereof |
-
2002
- 2002-10-02 KR KR1020020060122A patent/KR20040029730A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100894328B1 (en) * | 2008-01-31 | 2009-04-24 | 주식회사 유티티 | System, apparatus and method for transmitting image data |
KR20190139043A (en) * | 2018-06-07 | 2019-12-17 | 에스케이브로드밴드주식회사 | Distributed database system and service methof thereof, central database apparatus and control method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Botelho et al. | On the design of practical fault-tolerant SDN controllers | |
US6918014B1 (en) | Dynamic distributed data system and method | |
US20020099787A1 (en) | Distributed configuration management on a network | |
JP4677482B2 (en) | Access distribution system, server device, common management device, access distribution device, access distribution method, and computer program | |
JP7270755B2 (en) | Metadata routing in distributed systems | |
CN112463366B (en) | Cloud-native-oriented micro-service automatic expansion and contraction capacity and automatic fusing method and system | |
Botelho et al. | Smartlight: A practical fault-tolerant SDN controller | |
JP4789425B2 (en) | Route table synchronization method, network device, and route table synchronization program | |
CN110971480B (en) | Computer network condition monitoring method and device, computer equipment and storage medium | |
CN104506654A (en) | Cloud computing system and backup method of dynamic host configuration protocol server | |
WO2016149880A1 (en) | Data reading method, equipment and system | |
US9985840B2 (en) | Container tracer | |
CN115086312A (en) | Method and system for realizing kubernets service cross-cluster communication | |
US20030005091A1 (en) | Method and apparatus for improved monitoring in a distributed computing system | |
Dustdar et al. | Dynamic replication and synchronization of web services for high availability in mobile ad-hoc networks | |
US5781736A (en) | Method for obtaining the state of network resources in a distributed computing environment by utilizing a provider associated with indicators of resource states | |
CN110290163B (en) | Data processing method and device | |
KR20040029730A (en) | Network management system using software distributed shared memory and method therefor | |
US5793977A (en) | System for obtaining the state of network resources in a distributed computing environment | |
JP3265242B2 (en) | Continuous data access method | |
WO2019149031A1 (en) | Data processing method and apparatus applied to node system | |
CN109510864A (en) | A kind of retransmission method of cache request, transmission method and relevant apparatus | |
Parthasarathy et al. | InterAct: Virtual sharing for interactive client-server applications | |
CN115604114B (en) | Operation and maintenance method of application program and computer readable storage medium | |
CN116743845B (en) | Edge service discovery method, device, node equipment and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |