KR101784796B1 - 네트워크 기기 시뮬레이션 방법 - Google Patents

네트워크 기기 시뮬레이션 방법 Download PDF

Info

Publication number
KR101784796B1
KR101784796B1 KR1020160022257A KR20160022257A KR101784796B1 KR 101784796 B1 KR101784796 B1 KR 101784796B1 KR 1020160022257 A KR1020160022257 A KR 1020160022257A KR 20160022257 A KR20160022257 A KR 20160022257A KR 101784796 B1 KR101784796 B1 KR 101784796B1
Authority
KR
South Korea
Prior art keywords
virtual device
virtual
type
network
information
Prior art date
Application number
KR1020160022257A
Other languages
English (en)
Other versions
KR20170100121A (ko
Inventor
나광윤
Original Assignee
주식회사 에스씨솔루션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 에스씨솔루션 filed Critical 주식회사 에스씨솔루션
Priority to KR1020160022257A priority Critical patent/KR101784796B1/ko
Publication of KR20170100121A publication Critical patent/KR20170100121A/ko
Application granted granted Critical
Publication of KR101784796B1 publication Critical patent/KR101784796B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • H04L41/5038
    • H04L67/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 네트워크 기기 시뮬레이션 시스템 및 그것의 제어방법에 관한 것이다.
본 발명의 일실시예에 따른 네트워크 기기 시뮬레이션을 위한 가상 디바이스 생성 방법은 단말기의 속성 정의부가 사용자가 입력한 가상 디바이스에 대한 속성 정보를 수신하여 가상 디바이스 생성부에 제공하는 가상 디바이스 속성 정의 단계와, 상기 가상 디바이스 속성 정보를 이용하여 가상 디바이스 소프트웨어를 생성하는 가상 디바이스 생성 단계와, 생성된 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동하는 가상 디바이스 구동 단계를 포함하여 구성되는 것을 특징으로 한다.
본 발명의 네트워크 기기 시뮬레이션 시스템 및 그것의 제어방법을 사용하면, 마치 실제 디바이스가 네트워크에서 동작하는 것과 같은 효과를 낼 수 있어서 테스트 환경 구축 시간이 절약되고, 제품 개발 및 테스트 비용이 절감되는 효과가 있다.

Description

네트워크 기기 시뮬레이션 방법{Network Device Simulation Method}
본 발명은 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법에 관한 것으로, 좀 더 구체적으로 네트워크 기기 시뮬레이션을 위한 가상 디바이스 생성 방법, 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법, 네트워크 기기 시뮬레이션을 위한 가상 디바이스, 및 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 시스템에 관한 것이다.
종래에는 사람과 사람이 기기와 통신하거나, 사람과 기기간 통신이 주류였으나 사물인터넷 기술의 발달로 기기간에도 통신하는 시대가 되었다. 사물 인터넷(Internet of Things, 약어로 IoT)은 각종 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술을 의미한다. 여기서 사물이란 가전제품, 모바일 장비, 웨어러블 컴퓨터 등 다양한 임베디드 시스템이 된다. 가전제품, 전자기기뿐만 아니라 헬스케어, 원격검침, 스마트홈, 스마트카 등 다양한 분야에서 사물을 네트워크로 연결해 정보를 공유할 수 있다.
사물인터넷 등 네트워크 상에 연결되어 있는 수천에서 수십만 디바이스가 연결되어 환경에서 동작하는 시스템을 개발할 때 실제 디바이스를 네트워크에 연결하여 개발 및 테스트를 진행 하는 것은 구축 자체에 많은 시간과 고비용이 발생하고, 구축된 테스트 한경을 몇 개월에서 몇 년 고장 없이 유지하는데 드는 비용도 많이 든다. 가트너에 따르면 2009년까지 사물 인터넷 기술을 사용하는 사물의 개수는 9억개였으나 2020년까지 이 수가 260억 개에 이를 것으로 예상된다. 이와 같이 많은 사물이 연결되는 환경에서 동작하는 시스템에서 실제 디바이스를 네트워크에 연결해서 개발 및 테스트를 하는 것은 거의 불가능할 것이다.
종래의 가상 디바이스를 적용한 기술로 가상 디바이스 시뮬레이션을 이용한 원격 도움 시스템에 관한 기술이 있는데, 이 기술은 스마트 디바이스의 사용방법을 모르거나 문제가 발생시 스마트 디바이스와 동일한 기능과 환경 내에서 가상으로 시뮬레이션을 하여 알려주는 도우미 서비스에 관한 것으로 네트워크 기기 시뮬레이션을 용이하게 하기 위한 기술은 아니다.
종래의 가상 디바이스를 적용한 기술로 프린터 시뮬레이터 시스템 기술이 있는데, 이 기술은 프린터를 모델화해 동등한 동작을 컴퓨터상에서 재현하기 위한 방법에 관한 것으로, 서버에 설치된 가상 디바이스를 클라이언트 단말이 USB 디바이스로 인식하게 해서 프린터 기능 동작을 확인하기 위한 것으로, 네트워크 기기의 성능을 확인하기 위한 기술은 아니다.
따라서 마치 실제 디바이스가 네트워크에서 동작하는 것과 거의 같은 효과를 낼 수 있도록, 실제 디바이스 속성(동작 특징)을 갖는 가상의 디바이스를 다수 개 만들어서 제품 개발 및 테스트하는 기술 개발이 요구된다.
한국등록특허 제10-1496899호, 가상 디바이스 시뮬레이션을 이용한 원격 도움 시스템 및 그 서비스 방법과, 튜토리얼 서비스 장치 및 그 방법. 일본공개특허 제2012-78919호, 프린터 시뮬레이터 시스템.
본 발명은 상기한 문제점을 해결하기 위해 안출된 것으로서, 본 발명은 네트워크 기기 시뮬레이션을 위한 가상 디바이스 생성 방법, 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법, 네트워크 기기 시뮬레이션을 위한 가상 디바이스, 및 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 시스템을 제공하는 것을 그 목적으로 한다.
그러나 본 발명의 목적은 상기에 언급된 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일실시예에 따른 네트워크 기기 시뮬레이션을 위한 가상 디바이스 생성 방법은 단말기의 속성 정의부가 사용자가 입력한 가상 디바이스에 대한 속성 정보를 수신하여 가상 디바이스 생성부에 제공하는 가상 디바이스 속성 정의 단계와, 상기 가상 디바이스 속성 정보를 이용하여 가상 디바이스 소프트웨어를 생성하는 가상 디바이스 생성 단계와, 생성된 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동하는 가상 디바이스 구동 단계를 포함하여 구성되는 것을 특징으로 한다.
바람직하게는, 상기 가상 디바이스 속성 정의 단계는 서버를 통해 가상 디바이스의 속성 정보를 수신하거나, 또는 단말기의 내부 메모리에 기 저장된 가상 디바이스 속성 정보를 읽어와서 가상 디바이스 생성부에 제공하는 과정을 더 포함하는 것을 특징으로 한다.
바람직하게는, 상기 생성된 가상 디바이스 소프트웨어를 메모리에 저장하는 가상 디바이스 저장 단계를 더 포함하여 구성되는 것을 특징으로 한다.
본 발명의 다른 일실시예에 따른 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법은 속성을 정의하고자 하는 가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 사용자 인터페이스부를 통해 입력받는 가상 디바이스 정보 입력 단계와, 가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 가상 디바이스 생성부로 전송하고, 가상 디바이스 생성부는 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하는 다수의 가상 디바이스 생성 단계와, 가상 디바이스 생성부가 생성한 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하여 네트워크 기기 동작 시뮬레이션을 수행하는 네트워크 기기 동작 시뮬레이션 단계와, 수행한 시뮬레이션 결과에 대해 서버의 표시부를 통해 표시되게 하는 시뮬레이션 결과 표시 단계를 포함하여 구성되는 것을 특징으로 한다.
바람직하게는, 상기 가상 디바이스 정보 입력 단계는 단말기의 사용자 인터페이스부의 표시부를 통해 사용자가 입력한 종류, 개수, 또는 속성 정보가 맞는지 확인할 수 있도록 가상 디바이스 속성 정보들이 표시되고, 사용자에 의해 확인 버튼이 눌러지는 경우에 속성 정의부에 가상 디바이스 종류, 개수, 또는 속성 정보들이 입력되는 과정을 더 포함하는 것을 특징으로 한다.
바람직하게는, 상기 다수의 가상 디바이스 생성 단계는 입력된 가상 디바이스의 종류가 2개 이상(제1종류 및 제2종류 포함)인 경우에는 종류별로 속성 정보와 생성 개수에 대한 정보를 순차적으로 가상 디바이스 생성부로 전달하는 과정과, 제1 종류의 가상 디바이스에 대한 M개의 가상 디바이스가 생성되고 난후, 다시 제2 종류의 가상 디바이스에 대한 속성 정보와 가상 디바이스 생성 개수(P) 정보가 가상 디바이스 생성부에 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성되는 과정을 더 포함하는 것을 특징으로 한다.
본 발명의 다른 일실시예에 따른 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법은 속성을 정의하고자 하는 가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 사용자 인터페이스부를 통해 입력받는 가상 디바이스 정보 입력 단계와, 가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 가상 디바이스 생성부로 전송하고, 가상 디바이스 생성부는 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하는 다수의 가상 디바이스 생성 단계와, 네트워크 디바이스를 복수개 네트워크에 연결하여 기능을 동작시키는 네트워크 기기 구동 단계와, 가상 디바이스 생성부가 생성한 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하여 네트워크 기기 동작 시뮬레이션을 수행하는 네트워크 기기 동작 시뮬레이션 단계와, 수행한 시뮬레이션 결과에 대해 서버의 표시부를 통해 표시되게 하는 시뮬레이션 결과 표시 단계를 포함하여 구성되는 것을 특징으로 한다.
바람직하게는, 상기 가상 디바이스 정보 입력 단계는 단말기의 사용자 인터페이스부의 표시부를 통해 사용자가 입력한 종류, 개수, 또는 속성 정보가 맞는지 확인할 수 있도록 가상 디바이스 속성 정보들이 표시되고, 사용자에 의해 확인 버튼이 눌러지는 경우에 속성 정의부에 가상 디바이스 종류, 개수, 또는 속성 정보들이 입력되는 과정을 더 포함하는 것을 특징으로 한다.
바람직하게는, 상기 다수의 가상 디바이스 생성 단계는 입력된 가상 디바이스의 종류가 2개 이상(제1종류 및 제2종류 포함)인 경우에는 종류별로 속성 정보와 생성 개수에 대한 정보를 순차적으로 가상 디바이스 생성부로 전달하는 과정과, 제1 종류의 가상 디바이스에 대한 M개의 가상 디바이스가 생성되고 난후, 다시 제2 종류의 가상 디바이스에 대한 속성 정보와 가상 디바이스 생성 개수(P) 정보가 가상 디바이스 생성부에 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성되는 과정을 더 포함하는 것을 특징으로 한다.
바람직하게는, 상기 시뮬레이션 결과 표시 단계는 가상 디바이스의 시뮬레이션 결과를 화면에 표시하고, 또한 네트워크 디바이스에 대한 시뮬레이션 결과도 함께 화면에 표시하는 것을 특징으로 한다.
본 발명의 다른 일실시예에 따른 네트워크 기기 시뮬레이션을 위한 가상 디바이스는 사용자가 입력한 가상 디바이스에 대한 속성 정보를 수신하여 가상 디바이스 생성부에 제공하는 단말기의 속성 정의부; 상기 가상 디바이스 속성 정보를 이용하여 가상 디바이스 소프트웨어를 생성하는 가상 디바이스 생성부와, 생성된 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동하는 제어부를 포함하여 구성되는 것을 특징으로 한다.
바람직하게는, 단말기 또는 가상 디바이스가 서버와 통신을 하는 통로의 역할을 하며, 서버와 속성 정보나 가상 디바이스 기능을 수행하기 위한 정보를 송신하거나 수신하는 통신부를 더 포함하는 것을 특징으로 한다.
바람직하게는, 상기 가상 디바이스 소프트웨어는 네트워크 기기와 동일한 기능을 수행하며, 서버와 통신을 위해 단말기의 통신부를 이용하는 것을 특징으로 한다.
본 발명의 다른 일실시예에 따른 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 시스템은 속성을 정의하고자 하는 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보 중 어느 하나 이상을 입력받고, 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보 중 어느 하나 이상에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하고, 생성된 가상 디바이스 소프트웨어를 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하는 단말기 및 가상 디바이스 소프트웨어로 데이터를 송신하고, 그 응답으로 가상 디바이스 소프트웨어로부터 데이터를 수신하는 시뮬레이션을 수행하고, 그 결과에 대해 표시부를 통해 표시하는 서버를 포함하는 것을 특징으로 한다.
바람직하게는, 상기 단말기는 속성을 정의하고자 하는 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보를 입력받는 사용자 인터페이스부와, 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보를 가상 디바이스 생성부로 전송하는 속성 정의부와, 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하는 가상 디바이스 생성부와, 가상 디바이스 생성부가 생성한 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하는 제어부를 포함하는 것을 특징으로 한다.
본 발명의 다른 일실시예에 따른 컴퓨터로 판독 가능한 기록 매체는 네트워크 기기 시뮬레이션을 위한 가상 디바이스 생성 방법, 또는 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법을 실행하는 프로그램을 기록한 것을 특징으로 한다.
본 발명의 네트워크 기기 시뮬레이션 시스템 및 그것의 제어방법에 따르면, 마치 실제 디바이스가 네트워크에서 동작하는 것과 같은 효과를 낼 수 있어서 테스트 환경 구축 시간이 절약되고, 제품 개발 및 테스트 비용이 절감되는 효과가 있다.
도 1은 본 발명에 따른 네트워크 기기 시뮬레이션 시스템의 구성도를 도시한 것이다.
도 2는 본 발명에 따른 가상 디바이스를 생성하는 단말기를 도시한 것이다.
도 3은 본 발명에 따른 가상 디바이스가 실행되는 환경을 도시한 것이다.
도 4는 본 발명에 따른 다수의 가상 디바이스가 실행되는 환경을 도시한 것이다.
도 5는 본 발명에 따른 네트워크 기기 시뮬레이션 시스템의 구성도의 일예를 도시한 것이다.
도 6은 본 발명의 다른 일실시예에 따른 네트워크 기기 시뮬레이션 시스템의 구성도의 일예를 도시한 것이다.
도 7은 본 발명의 다른 일실시예에 따른 가상 디바이스 생성 방법을 도시한 것이다.
도 8은 본 발명의 다른 일실시예에 따른 다수의 가상 디바이스를 이용한 네트워크 기기 동작 시뮬레이션 방법을 도시한 것이다.
도 9는 본 발명의 다른 일실시예에 따른 네트워크 기기 시뮬레이션 시스템을 도시한 것이다.
도 10은 본 발명의 다른 일실시예에 따른 다수의 가상 디바이스 및 네트워크 기기를 이용한 네트워크 기기 동작 시뮬레이션 방법을 도시한 것이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성된다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1은 본 발명에 따른 네트워크 기기 시뮬레이션 시스템(1000)의 구성도를 도시한 것이다.
도 1에서 보듯이, 본 발명에 따른 네트워크 기기 시뮬레이션 시스템(1000)은 가상 디바이스(100), 네트워크(200), 서버(300)를 포함하여 구성된다.
가상 디바이스(100)는 네트워크(200)에 연결되어 IoT와 같은 실제 네트워크 기기와 거의 동일하게 동작하며, 복수개가 구성되며, 1,2,3,...,n개가 네트워크(200)에 연결된다. 여기서 n은 자연수로서 통상적으로 1000개 정도이나 목적으로 하는 서비스에 따라 수십만개가 될 수도 있으며, n의 값은 이 발명이 속하는 기술 분야의 통상의 기술자에게 설계선택사항이다.
네트워크(200)는 내부 IP망일 수 있으며, 외부 IP 망일 수 있다. 즉, 일부 가상 디바이스는 내부 IP망에 연결되고, 나머지 가상 디바이스는 외부 망에 연결될 수 있다. 내부 IP망은 물리적으로 이더넷으로 연결된 LAN이거나, 무선 LAN일 수 있다. 가상 디바이스가 설치되는 단말은 컴퓨터(개인용PC)일 수 있고, 또한 스마트 디바이스(스마트폰, 휴대폰, PDA 등) 일 수 있다.
서버(300)는 네트워크에 연결되어 IoT와 같은 네트워크 기기로 동작하는 가상 디바이스의 개수를 설정하거나, 다양한 종류의 네트워크 기기에 대한 속성 정보를 저장하고 있어서, 가상 디바이스가 설치되는 단말기의 요청에 의해 속성 정보를 제공할 수 있다. 또한, 서버(300)는 가상 디바이스의 동작 특성, 성능, 기능 등을 분석하고, 데이터 저장 등을 한다.
도 2는 본 발명에 다른 가상 디바이스를 생성하는 단말기(100)를 도시한 것이다.
도 2에서 보듯이, 컴퓨터와 같은 단말기(100)는 속성 정의부(110), 가상 디바이스 생성부(120), 가상 디바이스 소프트웨어(130)를 포함하고, 제어부(140), 메모리(150), 사용자 인터페이스부(160), 통신부(170)를 포함할 수 있다.
본 발명의 다른 일실시예에 따른 네트워크 기기 시뮬레이션을 위한 가상 디바이스는 사용자가 입력한 가상 디바이스에 대한 속성 정보를 수신하여 가상 디바이스 생성부에 제공하는 단말기의 속성 정의부; 상기 가상 디바이스 속성 정보를 이용하여 가상 디바이스 소프트웨어를 생성하는 가상 디바이스 생성부; 및 생성된 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동하는 제어부;를 포함하여 구성될 수 있다. 단말기 또는 가상 디바이스가 서버와 통신을 하는 통로의 역할을 하며, 서버와 속성 정보나 가상 디바이스 기능을 수행하기 위한 정보를 송신하거나 수신하는 통신부;를 더 포함할 수 있다. 상기 가상 디바이스 소프트웨어는 네트워크 기기와 동일한 기능을 수행하며, 서버와 통신을 위해 단말기의 통신부를 이용할 수 있다.
이하 도 2를 참조하여 본 발명에 다른 가상 디바이스를 생성하는 단말기(100)를 더 구체적으로 설명한다.
도 2에서 보듯이, 속성 정의부(110)는 가상 디바이스의 속성을 정의한다.
가상 디바이스 생성부(120)는 정의된 속성에 따라 가상 디바이스 소프트웨어를 생성한다.
가상 디바이스 소프트웨어(130)는 생성된 후 네트워크 기기의 역할을 수행한다.
제어부(140)는 단말기의 전체 구성요소들의 기능을 제어 및 관리하는 역할을 한다. 또한 생성된 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동하는 역할을 한다.
메모리(150)는 단말기 구동에 관련된 각종 데이터, 소프트웨어 등을 포함하고, 가상 디바이스 소프트웨어를 저장하고 있다.
사용자 인터페이스부(160)는 사용자의 입력 정보를 수신하고, 화면에 보여주는 역할을 한다.
통신부(170)는 단말기 또는 가상 디바이스가 서버와 통신을 하는 통로의 역할을 하며, 서버와 속성 정보나 가상 디바이스 기능을 수행하기 위한 정보를 송신하거나 수신을 한다.
가상 디바이스 소프트웨어(130)는 인간을 대신하는 아바타와 같이 네트워크 기기를 대신하는 역할을 한다. 기본적으로 가상 디바이스는 소프트웨어로 구성이 되며, 일부 I/O 장치들은 하드웨어로 직접 연결 될 수 있다. 이에 따라 본 발명에서는 가상 디바이스와 가상 디바이스 소프트웨어를 혼용하여 사용한다.
가상 디바이스는 실제 디바이스의 속성을 갖는다. 속성을 정의하면 자동으로 가상 디바이스를 만들어주는 알고리즘이 있으며, 이를 활용하여 다양한 종류의 가상 디바이스를 만들 수 있다.
도 2에서 보듯이 단말기(100)의 속성 정의부(110)가 사용자 인터페이스부(160)를 통해 사용자가 입력한 가상 디바이스에 대한 속성 정보를 수신하거나, 서버(300)를 통해 가상 디바이스의 속성 정보를 수신하거나, 단말기의 내부 메모리에 기 저장된 가상 디바이스 속성 정보를 읽어와서 가상 디바이스 생성 모듈에 제공하게 된다.
사용자 인터페이스부(160)를 통해 속성을 정의하는 것을 예로 들어 설명한다.
가상 디바이스 속성은 크게 기본 속성, 부가 속성, 및 동작 특성으로 구분한다. 기본 속성은 1. Communication Input, 2. Communication Output, 3. Message Parser, 4. Message Response, 5. Network, 6. Protocol을 포함하여 속성이 정의된다.
1. Communication Input에서는 수신되는 메시지가 무엇인지 정의하고, 2. Communication Output에서는 송신하는 메시지가 무엇인지 정의하고, 3. Message Parser에서는 수신된 메시지의 번역 및 처리를 위한 방법에 대해 정의하고, 4. Message Response에서는 메시지 응답 방법, 또는 응답 시간 등을 정의하고, 5. Network에서는 사용되는 네트워크의 종류, 가령 IP, LTE 등이 정의되고, 6. Protocol에서 사용하는 전송 프로토콜, 가령 TCP,UDP 등이 정의 된다.
부가 속성은 필요에 따라 추가할 수 있다.
기본 속성과 부가 속성을 이용하여, 네트워크 기기에 대한 동작 특성이 정의된다. 동작 특성의 예로, 1. 1초 간격으로 데이터를 측정한다, 2. 측정된 데이터를 서버로 전송한다, 3. Stop 메시지를 받으면 측정을 멈춘다, 4. NOTSend 메시지를 받으면 전송을 멈춘다 등이 정의될 수 있다.
상기와 같이 실제 디바이스의 속성을 갖도록 가상 디바이스의 속성을 정의하면, 정의된 속성은 가상 디바이스 생성부(120)로 입력이 된다. 또는 가상 디바이스 생성부(120)는 통신부(170)를 통해 서버(300)와 통신하여 가상 디바이스 속성 정보를 수신할 수 있다.
입력되거나 수신된 가상 디바이스 속성을 이용하여 자동으로 가상 디바이스 소프트웨어를 만들어주는 알고리즘이 장착된다. 상기 알고리즘을 이용하여 가상 디바이스 생성부(120)는 가상 디바이스를 생성하여 단말기의 프로세서 또는 쓰레드(Thread) 형태로 가상 디바이스가 구동되도록 한다. 사용자 인터페이스부(160)을 통해 가상 디바이스의 생성 개수(M)에 대한 정보를 가상 디바이스 생성부(120)가 수신하는 경우에는 정의된 속성의 가상 디바이스는 복수개(M)가 생성될 수 있다. 또다른 속성과 가상 디바이스 생성 개수(P)에 따라 가상 디바이스 속성의 정의되어 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성될 수 있다.
상기 생성된 가상 디바이스 소프트웨어는 메모리에 저장될 수 있다. 가상 디바이스는 정의되는 속성에 따라 다양한 종류의 가상 디바이스가 생성되고, 단말기에서 구동될 수 있다.
도 3은 가상 디바이스가 실행되는 환경을 도시한 것이다.
도 3에서 보듯이 가상 디바이스는 컴퓨터/임베디드 등 네트워크 장치를 가지고 있는 하드웨어에서 동작 되도록 각 하드웨어에 맞는 소프트웨어로 만들어진다.
도 3에서 보듯이, 단말기(100)의 컴퓨터 하드웨어(190)는 도 2에서의 단말기의 구성요소 중 속성 정의부(110), 가상 디바이스 생성부(120), 제어부(140), 메모리(150), 사용자 인터페이스부(160), 통신부(170)를 포함할 수 있다. 다만 도 3은 가상 디바이스와 다른 구성요소등간의 동작 설명을 위해 단말기의 구성을 단순하게 표현한 것이다.
가상 디바이스 소프트웨어는 이 소프트웨어가 동작하는 하드웨어가 가지고 있는 I/O 장치에 대해서 직접 읽기/쓰기를 할 수 있다.
도 4는 다수의 가상 디바이스가 실행되는 환경을 도시한 것이다.
도 4에서 보듯이 가상 디바이스는 컴퓨터/임베디드 등 네트워크 장치를 가지고 있는 하나의 하드웨어에서 해당 하드웨어가 허용하는 범위(처리능력, 통신능력 등)내에서 다수의 가상 디바이스로 동작할 수 있다. 하나의 컴퓨터에서 다수의 가상 디바이스가 생성되고, 동작하게 된다. 다수의 가상 디바이스 소프트웨어는 이 소프트웨어가 동작하는 하드웨어가 가지고 있는 I/O 장치에 대해서 직접 읽기/쓰기를 할 수 있다. 다수의 가상 디바이스가 서로 다른 IP 주소를 가지도록 컴퓨터 하드웨어내 포함된 통신부(170)인 네트워크 인터페이스 카드를 복수개 구성하거나, 하나의 네트워크 인터페이스 카드에 복수개의 IP 주소가 할당되도록 하여 가상 디바이스 소프트웨어별로 서로 다른 IP 주소를 생성하여 할당할 수 있다.
도 5는 본 발명에 따른 네트워크 기기 시뮬레이션 시스템의 구성도의 일예를 도시한 것이다.
도 5에서 보듯이, 가상 디바이스를 이용한 개발 및 테스트 환경을 구축하기 위해 네트워크 기기 시뮬레이션 시스템은 하나의 서버 시스템(300), 네트워크(200) 및 단말기(100)를 포함하여 구성된다.
본 발명의 다른 일실시예에 따른 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 시스템은 속성을 정의하고자 하는 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보를 입력받고, 각 가상 디바이스 종류, 가상 디바이스의 생성 개수 또는 속성 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하고, 생성된 가상 디바이스 소프트웨어를 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하는 단말기; 및 가상 디바이스 소프트웨어로 데이터를 송신하고, 그 응답으로 가상 디바이스 소프트웨어로부터 데이터를 수신하는 시뮬레이션을 수행하고, 그 결과에 대해 표시부를 통해 표시하는 서버;를 포함할 수 있다. 상기 단말기는 속성을 정의하고자 하는 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보를 입력받는 사용자 인터페이스부; 각 가상 디바이스 종류, 가상 디바이스의 생성 개수 또는 속성 정보를 가상 디바이스 생성부로 전송하는 속성 정의부; 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하는 가상 디바이스 생성부; 및 가상 디바이스 생성부가 생성한 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하는 제어부;를 포함할 수 있다.
이하 도 5를 참조하여 본 발명에 따른 네트워크 기기 시뮬레이션 시스템의 구성도를 더 구체적으로 설명한다.
도 5에서 보듯이, 단말기(100)에는 컴퓨터 하드웨어와 다수의 가상 디바이스(130_1,130_2,130_3,130_n)가 포함되어 있다.
예를 들어 1000대의 디바이스가 네트워크로 연결되어 있는 경우를 구축하고자 하는 경우에 1000대의 가상 디바이스의 속성을 정의하여 만들고, 실제 가상 디바이스를 1대의 단말기(가령, 컴퓨터 포함)에서 동작 시킨다고 한다면 도 5와 같다.
도 5에서 보듯이, 서버 시스템에는 1000개의 가상 디바이스들의 동작 특성(속성), 성능, 기능 등을 분석하고 데이터 저장 등을 한다.
서버(300)는 네트워크에 연결되어 IoT와 같은 네트워크 기기로 동작하는 가상 디바이스의 개수를 설정하거나, 다양한 종류의 네트워크 기기에 대한 속성 정보를 저장하고 있어서, 가상 디바이스가 설치되는 단말기(100)의 요청 데이터에 대해 속성 정보를 가상 디바이스가 설치되는 단말기로 제공할 수 있다. 또한, 서버(300)는 가상 디바이스의 동작 특성, 성능, 기능 등을 분석하고, 분석된 데이터를 저장한다.
네트워크 기기 시뮬레이션을 위해 서버 시스템(300)은 네트워크(200)를 통해 단말기(100)내에 구동되는 가상 디바이스 소프트웨어로 데이터를 송신하고, 그 데이터의 송신에 따른 가상 디바이스 소프트웨어의 응답을 수신하고, 그 수신한 응답의 내용에 근거하여 가상 디바이스 소프트웨어의 성능 또는 기능을 분석한다.
서버(300)가 송신하는 데이터의 하나로 측정 명령을 일예로 설명하면,
서버(300)는 단말기(100)내의 특정 가상 디바이스로 측정 명령 데이터를 송신한다. 또는 서버(300)는 단말기(100)내의 같은 종류의 가상 디바이스 전체(가령, 제1종류의 가상 디바이스가 200개인 경우 200개 모두에 동일 측정 명령 데이터가 전달됨)로 측정 명령 데이터를 송신할 수 있다.
송신 대상 가상 디바이스 식별을 위해 가상 디바이스 마다 할당된 IP 주소나 가상 디바이스 식별을 위한 번호(MAC 주소 등)가 사용된다. 가상 디바이스별 식별 정보(IP 주소 등)는 서버와 단말기에 각각 저장된다. 한편, 단말기내 가상 디바이스가 복수개인 경우, 가상 디바이스 소프트웨어별로 서로 다른 IP 주소가 할당된다. 복수개의 가상 디바이스 각각에 IP 주소가 순차적으로 할당된 경우에는 서버는 기준 주소(192.254.1.1)와 가상 디바이스 개수(M)를 기초로 가상 디바이스를 식별할 수 있다. 가령 M이 200인 경우 가상 디바이스 주소는 192.254.1.1, 192.254.1.2,..., 192.254.1.200이 할당될 수 있다. 만일 가상 디바이스 마다 IP 주소가 랜덤하게 할당된 경우에는 서버와 단말기에 모든 IP 주소가 저장된다.
상기 측정 명령 데이터를 수신한 해당 가상 디바이스는 명령을 수신한 후 다음과 같은 절차를 수행한다.
제1과정: 측정 간격 정보(가령, 1초)를 확인한 후에, 측정 간격 정보(1초 간격)에 따라 데이터를 측정한다. 측정을 위해서는 각종 센서들이 사용될 수 있는데, 가령, 온도 센서, 습도 센서, 자이로 센서, 이미지 센서 등이 사용될 수 있으며, 또한, 전통적인 온도/습도/열/가스/조도/초음파 센서 등에서부터 원격 감지, SAR, 레이더, 위치, 모션, 영상 센서 등 주위 환경과 사물의 변화를 감지하고 정보를 얻는 물리적 센서를 포함할 수 있다. 각종 센서들은 도 3에서 보듯이 I/O장치(180)에 포함될 수 있다. 또한, 본 발명에 따른 데이터 측정의 다른 방법으로서, 도 2에서 보듯이 단말기(100)의 메모리(140)에 상기 전통적인 센서와 물리적 센서가 센싱하는 정보를 미리 저장하고 있고, 가상 디바이스는 메모리에 저장되어 있는 센서 정보들을 읽는 것으로 데이터 측정을 대신할 수도 있다.
제2과정: 측정된 데이터를 서버로 전송한다. 측정된 데이터는 원시(RAW) 데이터를 그대로 전송하거나, 축약해서 서버로 전송할 수도 있다.
제3과정: Stop 메시지를 받으면 측정을 멈춘다. 서버로부터 Stop 메시지를 가상 디바이스가 수신하면 그 이후로는 데이터 특정을 멈추게 된다.
제4과정: NOTSend 메시지를 받으면 전송을 멈춘다. NOTSend 메시지를 가상 디바이스가 수신하면 그 이후로는 데이터 전송을 멈추게 된다.
상기 측정 명령 데이터는 모든 가상 디바이스 각각에 전달될 수 있다. 이 경우에 상기 제1과정 내지 제4과정을 가상 디바이스 각각이 수행하게 된다.
한편, 서버(300)가 단말기(100)내의 같은 종류의 가상 디바이스 전체(가령, 제1종류의 가상 디바이스가 200개인 경우 200개 모두에 동일 측정 명령 데이터가 전달됨)를 목적지로 하여 측정 명령 데이터를 단말기(100)로 송신할 수도 있다. 이 경우에는 단말기(100)의 제어부(140)가 단말기내 모든 가상 디바이스들에게 측정 명령 데이터를 전달하게 된다. 이에 따라 각 가상 디바이스를 상기 제1과정 내지 제4 과정을 수행하게 된다.
도 6은 본 발명의 다른 일실시예에 따른 네트워크 기기 시뮬레이션 시스템의 구성도의 일예를 도시한 것이다.
도 6에서 보듯이, 가상 디바이스들을 복수개의 단말기(가령, 컴퓨터 포함)에서 동작시키기 위해, 전체 N(가령, 1000)개의 가상 디바이스 중 각 단말기(100)마다 n개(가령, 200개)의 가상 디바이스가 각각 생성되어 동작하도록 한다. 이 경우에 5개의 단말기(100)가 필요하게 된다.
각 단말기들은 내부 IP망을 통해 서버 시스템(300)에 연결되거나, 또는 각 단말기마다 외부 IP망을 통해 서버 시스템에 연결될 수 있다. 또한 각 단말기마다 서로 다른 속성의 가상 디바이스가 생성되어 동작할 수 있다.
네트워크 기기 시뮬레이션을 위해 서버 시스템(300)은 네트워크(200)를 통해 각 단말기(100)별로 구동되는 가상 디바이스 소프트웨어로 데이터를 송신하고, 그 데이터의 송신에 따른 가상 디바이스 소프트웨어의 응답을 수신하고, 그 수신한 응답의 내용에 근거하여 가상 디바이스 소프트웨어의 성능 또는 기능을 분석한다.
도 6에서는 도 5와 달리 네트워크 기기 시뮬레이션 시스템이 복수의 단말기(100)를 포함하도록 구성되나, 각 단말기별로 동작은 도 5와 동일하게 처리되므로 자세한 절차는 생략한다.
도 7은 본 발명의 다른 일실시예에 따른 가상 디바이스 생성 방법을 도시한 것이다.
본 발명에 따른 가상 디바이스 생성 방법은 가상 디바이스 속성 정의 단계(S10), 가상 디바이스 생성 단계(S20), 생성된 가상 디바이스 저장 단계(S30), 및 가상 디바이스 구동 단계(S40)를 포함하여 구성된다.
본 발명의 일실시예에 따른 네트워크 기기 시뮬레이션을 위한 가상 디바이스 생성 방법은 단말기의 속성 정의부가 사용자가 입력한 가상 디바이스에 대한 속성 정보를 수신하여 가상 디바이스 생성부에 제공하는 가상 디바이스 속성 정의 단계; 상기 가상 디바이스 속성 정보를 이용하여 가상 디바이스 소프트웨어를 생성하는 가상 디바이스 생성 단계; 및 생성된 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동하는 가상 디바이스 구동 단계;를 포함하여 구성될 수 있다.
상기 가상 디바이스 속성 정의 단계는 서버를 통해 가상 디바이스의 속성 정보를 수신하거나, 또는 단말기의 내부 메모리에 기 저장된 가상 디바이스 속성 정보를 읽어와서 가상 디바이스 생성부에 제공하는 과정을 더 포함할 수 있다. 상기 생성된 가상 디바이스 소프트웨어를 메모리에 저장하는 가상 디바이스 저장 단계를 더 포함하여 구성될 수 있다.
이하 도 7을 참조하여 본 발명의 다른 일실시예에 따른 가상 디바이스 생성 방법을 더 구체적으로 설명한다.
먼저, 제1단계로서, 가상 디바이스 속성 정의 단계를 수행한다. 제1단계에서는 i) 단말기(100)의 속성 정의부(110)가 사용자 인터페이스부(160)를 통해 사용자가 입력한 가상 디바이스에 대한 속성 정보를 수신하거나, ii) 서버(300)를 통해 가상 디바이스의 속성 정보를 수신하거나, 또는 iii) 단말기의 내부 메모리에 기 저장된 가상 디바이스 속성 정보를 읽어와서 가상 디바이스 생성부에 제공하는 단계를 수행한다.
사용자 인터페이스부(160)를 통해 속성을 정의하는 것을 예로 들어 설명한다.
가상 디바이스 속성은 크게 기본 속성, 부가 속성, 및 동작 특성으로 구분한다. 기본 속성 정의 시에는 1. Communication Input, 2. Communication Output, 3. Message Parser, 4. Message Response, 5. Network, 6. Protocol을 포함하여 속성이 정의된다.
1. Communication Input에서는 수신되는 메시지가 무엇인지 정의하고, 2. Communication Output에서는 송신하는 메시지가 무엇인지 정의하고, 3. Message Parser에서는 수신된 메시지의 번역 및 처리를 위한 방법에 대해 정의하고, 4. Message Response에서는 메시지 응답 방법, 또는 응답 시간 등을 정의하고, 5. Network에서는 사용되는 네트워크의 종류, 가령 IP, LTE 등이 정의되고, 6. Protocol에서 사용하는 전송 프로토콜, 가령 TCP ,UDP 등이 정의 된다.
부가 속성은 필요에 따라 추가할 수 있다.
기본 속성과 부가 속성을 이용하여, 네트워크 기기에 대한 동작 특성이 정의된다. 동작 특성의 예로, 1. 1초 간격으로 데이터를 측정한다, 2. 측정된 데이터를 서버로 전송한다, 3. Stop 메시지를 받으면 측정을 멈춘다, 4. NOTSend 메시지를 받으면 전송을 멈춘다 등이 정의될 수 있다.
상기와 같이 실제 디바이스의 속성을 갖도록 가상 디바이스의 속성을 정의하면, 정의된 속성은 가상 디바이스 생성부(120)로 입력이 된다. 또는 가상 디바이스 생성부(120)는 통신부(170)를 통해 서버(300)와 통신하여 사용자 인터페이스부(160)를 통해 입력된 속성 정보와 동일한 가상 디바이스 속성 정보를 수신할 수 있다.
다음으로, 제2단계로서, 가상 디바이스 생성 단계(S20)를 수행한다. 제2단계에서는 입력되거나 수신된 가상 디바이스 속성 정보를 이용하여 자동으로 가상 디바이스 소프트웨어를 생성해주는 알고리즘이 실행되는 단계를 수행한다.
사용자 인터페이스부(160)을 통해 가상 디바이스의 생성 개수(M)에 대한 정보를 가상 디바이스 생성부(120)가 수신하는 경우에는 정의된 속성의 가상 디바이스는 복수개(M)가 생성될 수 있다. 또 다른 속성과 가상 디바이스 생성 개수(P)에 따라 가상 디바이스 속성의 정의되어 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성될 수 있다. 이에 따라 가상 디바이스는 정의되는 속성에 따라 다양한 종류의 가상 디바이스가 생성되고, 단말기에서 구동될 수 있다.
다음으로, 제3단계로서, 가상 디바이스 저장 단계(S30)를 수행한다. 제3단계에서는 상기 생성된 가상 디바이스 소프트웨어를 메모리에 저장하는 단계를 수행한다.
다음으로, 제4단계로서, 가상 디바이스 구동 단계(S40)를 수행한다. 제4단계에서는 상기 알고리즘을 이용하여 가상 디바이스 생성부(120)가 생성한 가상 디바이스 소프트웨어를 단말기(100)의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하는 단계를 수행한다.
도 8은 본 발명의 다른 일실시예에 따른 다수의 가상 디바이스를 이용한 네트워크 기기 동작 시뮬레이션 방법을 도시한 것이다.
본 발명에 다른 네트워크 기기 동작 시뮬레이션 방법은 가상 디바이스 정보 입력 단계(S100), 다수의 가상 디바이스 생성 단계(S200), 네트워크 기기 동작 시뮬레이션 단계(S300), 시뮬레이션 결과 표시 단계(S400)를 포함하여 구성된다.
본 발명의 다른 일실시예에 따른 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법은 속성을 정의하고자 하는 가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 사용자 인터페이스부를 통해 입력받는 가상 디바이스 정보 입력 단계; 가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 가상 디바이스 생성부로 전송하고, 가상 디바이스 생성부는 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하는 다수의 가상 디바이스 생성 단계; 가상 디바이스 생성부가 생성한 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하여 네트워크 기기 동작 시뮬레이션을 수행하는 네트워크 기기 동작 시뮬레이션 단계; 및 수행한 시뮬레이션 결과에 대해 서버의 표시부를 통해 표시되게 하는 시뮬레이션 결과 표시 단계;를 포함하여 구성될 수 있다.
상기 가상 디바이스 정보 입력 단계는 단말기의 사용자 인터페이스부의 표시부를 통해 사용자가 입력한 종류, 개수, 또는 속성 정보가 맞는지 확인할 수 있도록 가상 디바이스 속성 정보들이 표시되고, 사용자에 의해 확인 버튼이 눌러지는 경우에 속성 정의부에 가상 디바이스 종류, 개수, 또는 속성 정보들이 입력되는 과정을 더 포함할 수 있다. 상기 다수의 가상 디바이스 생성 단계는 입력된 가상 디바이스의 종류가 2개 이상(제1종류 및 제2종류 포함)인 경우에는 종류별로 속성 정보와 생성 개수에 대한 정보를 순차적으로 가상 디바이스 생성부로 전달하는 과정; 제1종류의 가상 디바이스에 대한 M개의 가상 디바이스가 생성되고 난후, 다시 제2종류의 가상 디바이스에 대한 속성 정보와 가상 디바이스 생성 개수(P) 정보가 가상 디바이스 생성부에 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성되는 과정을 더 포함할 수 있다.
이하 도 8을 참조하여 본 발명의 다른 일실시예에 따른 다수의 가상 디바이스를 이용한 네트워크 기기 동작 시뮬레이션 방법을 더 구체적으로 설명한다.
도 8에서 보듯이, 제1단계에서는 다수의 가상 디바이스 종류, 개수, 또는 속성 정보 입력 단계(S100)를 수행한다. 제1단계에서는 속성을 정의하고자 하는 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보를 사용자 인터페이스부(160)를 통해 입력받는 단계를 수행한다. 제1 단계에서는 단말기(100)의 사용자 인터페이스부(160)의 표시부를 통해 사용자가 입력한 종류, 개수, 또는 속성 정보가 맞는지 확인할 수 있도록 가상 디바이스 속성 정보들이 표시된다. 사용자는 표시된 가상 디바이스 속정 정보에 대해 정확하다고 판단되면 확인 버튼을 눌러 속성 정의부(100)에 가상 디바이스 종류, 개수, 또는 속성 정보들이 입력된다.
다음으로, 제2 단계에서는 다수의 가상 디바이스를 생성하는 단계(S200)를 수행한다. 제2단계에서는 속성 정의부가 사용자 인터페이스부(160)를 통해 수신한 각 가상 디바이스 종류, 가상 디바이스의 생성 개수(M) 또는 속성 정보를 가상 디바이스 생성부(120)로 전송하고, 가상 디바이스 생성부는 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개(M)가 생성될 수 있도록 한다. 속성 정의부가 수신한 가상 디바이스의 종류가 2개 이상(가령, 제1종류, 제2종류)인 경우에는 종류별로 속성 정보와 생성 개수(M)에 대한 정보를 순차적으로 가상 디바이스 생성부로 전달하게 된다. 따라서, 제1종류의 가상 디바이스에 대한 M개의 가상 디바이스가 생성되고 난후, 다시 제2종류의 가상 디바이스에 대한 속성 정보와 가상 디바이스 생성 개수(P) 정보가 가상 디바이스 생성부에 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성될 수 있다. 이에 따라 가상 디바이스는 정의되는 속성 및 개수에 따라 다양한 종류의 가상 디바이스가 생성되고, 단말기에서 구동될 수 있다.
다음으로, 제3단계로서, 네트워크 기기 동작 시뮬레이션 단계(S300)를 수행한다. 제3단계에서는 가상 디바이스 생성부(120)가 생성한 가상 디바이스 소프트웨어를 단말기(100)의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하여 네트워크 기기 동작 시뮬레이션을 수행하는 단계를 수행한다.
다음으로, 제4단계로서, 시뮬레이션 결과 표시 단계(S400)를 수행한다. 단계 3에서 수행한 시뮬레이션 결과에 대해 서버의 표시부를 통해 표시되게 된다.
서버는 가상 디바이스의 종류별 디바이스의 동작 특성, 성능, 기능 등을 분석하고, 데이터 저장을 수행하며 그 결과를 화면에 표시한다.
서버(300)는 네트워크에 연결되어 IoT와 같은 네트워크 기기로 동작하는 가상 디바이스의 개수를 설정하거나, 다양한 종류의 네트워크 기기에 대한 속성 정보를 저장하고 있어서, 가상 디바이스가 설치되는 단말기의 요청에 의해 속성 정보를 제공할 수 있다. 또한, 서버(300)는 가상 디바이스의 동작 특성, 성능, 기능 등을 분석하고, 데이터 저장 등을 수행한다.
도 9는 본 발명의 다른 일실시예에 따른 네트워크 기기 시뮬레이션 시스템을 도시한 것이다.
도 9에서 보듯이, 가상 디바이스를 이용한 개발 및 테스트 환경을 구축하기 위해 하나의 서버 시스템(300), 네트워크(200), 단말기(100) 및 실제 디바이스(400)를 포함하여 구성된다. 도 5와 비교하여 보면, 추가적으로 실제 네트워크 디바이스(400_1,400_2,400_i)를 네트워크(200)에 접속하고 있다.
네트워크 디바이스(400)가 하나 이상 네트워크(200)에 접속된 상태에서 각각의 네트워크 기기의 기능 및 성능 테스트가 가능하다. 도 9에서 보듯이, 서버 시스템에는 다수(가령 1000개)의 가상 디바이스들의 동작 특성(속성), 성능, 기능 등을 분석하고 데이터 저장 외에도 실제 네트워크 디바이스에 대한 동작 특성(속성), 성능, 기능 등을 분석하고 데이터를 저장할 수도 있다.
도 10은 본 발명의 다른 일실시예에 따른 다수의 가상 디바이스 및 네트워크 기기를 이용한 네트워크 기기 동작 시뮬레이션 방법을 도시한 것이다.
본 발명에 다른 네트워크 기기 동작 시뮬레이션 방법은 가상 디바이스 정보 입력 단계(S1100), 다수의 가상 디바이스 생성 단계(S1200), 네트워크 기기 구동 단계(S1300), 네트워크 기기 동작 시뮬레이션 단계(S1400), 시뮬레이션 결과 표시 단계(S1500)를 포함하여 구성된다.
본 발명의 다른 일실시예에 따른 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법은 속성을 정의하고자 하는 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보를 사용자 인터페이스부를 통해 입력받는 가상 디바이스 정보 입력 단계; 각 가상 디바이스 종류, 가상 디바이스의 생성 개수 또는 속성 정보를 가상 디바이스 생성부로 전송하고, 가상 디바이스 생성부는 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하는 다수의 가상 디바이스 생성 단계; 네트워크 디바이스를 복수개 네트워크에 연결하여 기능을 동작시키는 네트워크 기기 구동 단계; 가상 디바이스 생성부가 생성한 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하여 네트워크 기기 동작 시뮬레이션을 수행하는 네트워크 기기 동작 시뮬레이션 단계; 및 수행한 시뮬레이션 결과에 대해 서버의 표시부를 통해 표시되게 하는 시뮬레이션 결과 표시 단계;를 포함할 수 있다.
상기 가상 디바이스 정보 입력 단계는 단말기의 사용자 인터페이스부의 표시부를 통해 사용자가 입력한 종류, 개수, 또는 속성 정보가 맞는지 확인할 수 있도록 가상 디바이스 속성 정보들이 표시되고, 사용자에 의해 확인 버튼이 눌러지는 경우에 속성 정의부에 가상 디바이스 종류, 개수, 또는 속성 정보들이 입력되는 과정을 더 포함할 수 있다.
상기 다수의 가상 디바이스 생성 단계는 입력된 가상 디바이스의 종류가 2개 이상(제1종류 및 제2종류 포함)인 경우에는 종류별로 속성 정보와 생성 개수에 대한 정보를 순차적으로 가상 디바이스 생성부로 전달하는 과정; 제1종류의 가상 디바이스에 대한 M개의 가상 디바이스가 생성되고 난후, 다시 제2종류의 가상 디바이스에 대한 속성 정보와 가상 디바이스 생성 개수(P) 정보가 가상 디바이스 생성부에 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성되는 과정을 더 포함할 수 있다. 상기 시뮬레이션 결과 표시 단계는 가상 디바이스의 시뮬레이션 결과를 화면에 표시하고, 또한 네트워크 디바이스에 대한 시뮬레이션 결과도 함께 화면에 표시할 수 있다.
이하 도 10을 참조하여 본 발명의 다른 일실시예에 따른 다수의 가상 디바이스 및 네트워크 기기를 이용한 네트워크 기기 동작 시뮬레이션 방법을 더 구체적으로 설명한다.
도 10에서 보듯이, 제1단계에서는 다수의 가상 디바이스 종류, 개수, 또는 속성 정보 입력 단계(S1100)를 수행한다. 제1단계에서는 속성을 정의하고자 하는 가상 디바이스의 종류, 각 종류별 개수, 또는 각 종류별 속성 정보를 사용자 인터페이스부(160)를 통해 입력받는 단계를 수행한다. 제1 단계에서는 단말기(100)의 사용자 인터페이스부(160)의 표시부를 통해 사용자가 입력한 종류, 개수, 또는 속성 정보가 맞는지 확인할 수 있도록 가상 디바이스 속성 정보들이 표시된다. 사용자는 표시된 가상 디바이스 속정 정보에 대해 정확하다고 판단되면 확인 버튼을 눌러 속성 정의부(100)에 가상 디바이스 종류, 개수, 또는 속성 정보들이 입력된다.
다음으로, 제2 단계에서는 다수의 가상 디바이스를 생성하는 단계(S1200)를 수행한다. 제2단계에서는 속성 정의부가 사용자 인터페이스부(160)을 통해 수신한 각 가상 디바이스 종류, 가상 디바이스의 생성 개수(M) 또는 속성 정보를 가상 디바이스 생성부(120)로 전송하고, 가상 디바이스 생성부는 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개(M)가 생성될 수 있도록 한다.
속성 정의부가 수신한 가상 디바이스의 종류가 2개 이상(가령, 제1종류, 제2종류)인 경우에는 종류별로 속성 정보와 생성 개수(M)에 대한 정보를 순차적으로 가상 디바이스 생성부로 전달하게 된다. 따라서, 제1종류의 가상 디바이스에 대한 M개의 가상 디바이스가 생성되고 난후, 다시 제2종류의 가상 디바이스에 대한 속성 정보와 가상 디바이스 생성 개수(P) 정보가 가상 디바이스 생성부에 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성될 수 있다.
이에 따라 가상 디바이스는 정의되는 속성 및 개수에 따라 다양한 종류의 가상 디바이스가 생성되고, 단말기에서 구동될 수 있다.
다음으로, 제3단계로서, 네트워크 기기 구동 단계(S1300)를 수행한다. 제3단계에서는 실제 네트워크 디바이스(400)를 복수개 네트워크에 연결하여 기능을 동작시키는 단계를 수행한다.
다음으로, 제4단계로서, 네트워크 기기 동작 시뮬레이션 단계(S1400)를 수행한다. 제4단계에서는 가상 디바이스 생성부(120)가 생성한 가상 디바이스 소프트웨어를 단말기(100)의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하여 네트워크 기기 동작 시뮬레이션을 수행하는 단계를 수행한다.
다음으로, 제5단계로서, 시뮬레이션 결과 표시 단계(S1500)를 수행한다. 단계 4에서 수행한 시뮬레이션 결과에 대해 서버의 표시부를 통해 표시되게 된다. 서버는 가상 디바이스의 종류별 디바이스의 동작 특성, 성능, 기능 등을 분석하고, 데이터 저장을 수행하며 그 결과를 화면에 표시한다. 또한 실제 네트워크 디바이스에 대한 동작 특성, 성능, 기능 등도 분석하고, 그 결과를 화면에 표시한다.
한편, 본 발명의 실시예에 따른 네트워크 기기 시뮬레이션을 위한 가상 디바이스 생성 방법, 또는 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법은 다양한 전자적으로 정보를 처리하는 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 저장 매체에 기록될 수 있다. 저장 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.
저장 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다. 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (16)

  1. 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법에 있어서,
    속성을 정의하고자 하는 가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 사용자 인터페이스부를 통해 입력받는 가상 디바이스 정보 입력 단계와,
    가상 디바이스의 종류 정보, 각 종류별 개수 정보, 또는 각 종류별 속성 정보 중 어느 하나 이상을 가상 디바이스 생성부로 전송하고, 가상 디바이스 생성부는 전송된 개수 정보에 기초하여 정의된 속성의 가상 디바이스를 복수개 생성하는 다수의 가상 디바이스 생성 단계;
    네트워크 디바이스를 복수개 네트워크에 연결하여 기능을 동작시키는 네트워크 기기 구동 단계와,
    가상 디바이스 생성부가 생성한 가상 디바이스 소프트웨어를 단말기의 프로세서 또는 쓰레드(Thread) 형태로 구동되도록 하여 네트워크 기기 동작 시뮬레이션을 수행하는 네트워크 기기 동작 시뮬레이션 단계와,
    수행한 시뮬레이션 결과에 대해 서버의 표시부를 통해 표시되게 하는 시뮬레이션 결과 표시 단계를 포함하여 구성되고,
    상기 가상 디바이스 정보 입력 단계의 가상 디바이스의 속성은 기본 속성과 동작 특성을 포함하며,
    상기 기본 속성은 Communication Input, Communication Output, Message Parser, Message Response, Network, 및 Protocol로 이루어지고,
    상기 Communication Input은 수신되는 메시지를 정의하고, Communication Output은 송신하는 메시지를 정의하며, Message Parser는 수신된 메시지의 번역 및 처리를 위한 방법을 정의하고, Message Response는 메시지 응답방법 또는 응답시간을 정의하며, Network는 네트워크의 종류를 정의하고, Protocol은 전송 프로토콜의 종류를 정의하도록 구성되고,
    상기 동작 특성은 데이터 측정을 위한 시간 간격과, 측정된 데이터의 서버 전송과, 데이터 측정과 데이터 전송의 멈춤여부를 정의하도록 구성되고,
    상기 가상 디바이스 정보 입력 단계는 단말기의 사용자 인터페이스부의 표시부를 통해 사용자가 입력한 종류, 개수, 또는 속성 정보가 맞는지 확인할 수 있도록 가상 디바이스 속성 정보들이 표시되고, 사용자에 의해 확인 버튼이 눌러지는 경우에 속성 정의부에 가상 디바이스 종류, 개수, 또는 속성 정보들이 입력되는 과정을 더 포함하고,
    상기 다수의 가상 디바이스 생성 단계는 입력된 가상 디바이스의 종류가 2개 이상(제1 종류 및 제2 종류 포함)인 경우에는 종류별로 속성 정보와 생성 개수에 대한 정보를 순차적으로 가상 디바이스 생성부로 전달하는 과정과, 제1 종류의 가상 디바이스에 대한 M개의 가상 디바이스가 생성되고 난후, 다시 제2 종류의 가상 디바이스에 대한 속성 정보와 가상 디바이스 생성 개수(P) 정보가 가상 디바이스 생성부에 입력되는 경우에는 기존 M개의 가상 디바이스 소프트웨어 외에 추가로 P개의 새로운 속성의 가상 디바이스가 생성되는 과정을 더 포함하는 것을 특징으로 하는 가상 디바이스를 이용한 네트워크 기기 시뮬레이션 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 삭제
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
KR1020160022257A 2016-02-25 2016-02-25 네트워크 기기 시뮬레이션 방법 KR101784796B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160022257A KR101784796B1 (ko) 2016-02-25 2016-02-25 네트워크 기기 시뮬레이션 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160022257A KR101784796B1 (ko) 2016-02-25 2016-02-25 네트워크 기기 시뮬레이션 방법

Publications (2)

Publication Number Publication Date
KR20170100121A KR20170100121A (ko) 2017-09-04
KR101784796B1 true KR101784796B1 (ko) 2017-10-12

Family

ID=59924277

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160022257A KR101784796B1 (ko) 2016-02-25 2016-02-25 네트워크 기기 시뮬레이션 방법

Country Status (1)

Country Link
KR (1) KR101784796B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061733A (ko) 2017-11-28 2019-06-05 (주)파인원커뮤니케이션즈 디바이스 관리 시스템 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190061733A (ko) 2017-11-28 2019-06-05 (주)파인원커뮤니케이션즈 디바이스 관리 시스템 및 방법

Also Published As

Publication number Publication date
KR20170100121A (ko) 2017-09-04

Similar Documents

Publication Publication Date Title
KR101547194B1 (ko) 타겟광고를 위한 쿠키정보 관리 방법 및 쿠키정보 관리를 위한 어플리케이션
US10775754B2 (en) Method for creating prototype and apparatus therefor
CN112040014B (zh) 物联网系统确定方法、装置、电子设备及存储介质
CN110891005A (zh) Iot设备的控制方法、云服务器及iot设备控制系统
WO2019061798A1 (zh) 显示控制方法、系统和虚拟现实设备
US10679060B2 (en) Automatic generation of user interfaces using image recognition
EP3910909A1 (en) Method and device for displaying information
CN110678879A (zh) 数据生成装置、数据生成方法以及程序
Kurniawan Iot projects with arduino nano 33 ble sense
KR101784796B1 (ko) 네트워크 기기 시뮬레이션 방법
CN112148241A (zh) 灯光处理方法、装置、计算设备和存储介质
Kahl et al. Architecture to enable dual reality for smart environments
KR102645321B1 (ko) 단말 장치, 기기 관리 서버, 정보 처리 시스템, 정보 처리 방법 및 기억 매체
KR102047510B1 (ko) 디바이스 관리 시스템 및 방법
CN112233208B (zh) 机器人状态处理方法、装置、计算设备和存储介质
CN113934618A (zh) 接口测试用例生成方法、装置、生成器及可读存储介质
WO2016135821A1 (ja) 検査装置、検査方法、及び、プログラム
JP2008033572A (ja) 画面作成装置、画面作成プログラムおよびそれを記録した記録媒体
Da Silva et al. Opportunities for visualising complex data by integrating virtual reality and digital twins
KR102618417B1 (ko) 정보를 제공하는 전자 장치의 동작 방법 및 이를 지원하는 전자 장치
JP4001458B2 (ja) タグ名共有化装置、タグ名共有化方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
CN112331052B (zh) 物联网演示系统确定方法及装置
US20210334075A1 (en) System for providing software development environment, method for providing software development environment, and non-transitory computer readable medium
Harrison et al. Exploring an option space to engineer a ubiquitous computing system
WO2019026454A1 (ja) データ生成装置、データ生成方法及びプログラム

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