KR20230154531A - Cpu 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치 - Google Patents

Cpu 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치 Download PDF

Info

Publication number
KR20230154531A
KR20230154531A KR1020220054037A KR20220054037A KR20230154531A KR 20230154531 A KR20230154531 A KR 20230154531A KR 1020220054037 A KR1020220054037 A KR 1020220054037A KR 20220054037 A KR20220054037 A KR 20220054037A KR 20230154531 A KR20230154531 A KR 20230154531A
Authority
KR
South Korea
Prior art keywords
nas
network
data
controller
cpu
Prior art date
Application number
KR1020220054037A
Other languages
English (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 KR1020220054037A priority Critical patent/KR20230154531A/ko
Publication of KR20230154531A publication Critical patent/KR20230154531A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 갖는 네트워크 저장 장치는 서비스 어플리케이션, 운영체제(OS) 및 네트워크 트래픽에 대한 정보를 처리하는 NAS 어플리케이션 프로세서; 및 하드 디스크 드라이브와 네트워크로 연결되어, 상기 하드 디스크 드라이브의 데이터 입출동작을 제어하는 NAS 컨트롤러를 포함하고, 상기 NAS 컨트롤러는 상기 NAS 어플리케이션 프로세서와 시리얼 인터페이스를 통해 데이터 처리에 대한 정보를 교환하는 것을 특징으로 한다.

Description

CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치{A network attatched storage device that supports the data bottleneck processing function inside the CPU}
본 발명은 NAS의 CPU 기능을 분리하여 제한적인 자원을 활용하면서도 어플리케이션 서비스 성능을 높이고, 기존 고성능의 CPU를 활용하지 않으면서도 사용자의 요구를 만족시킬 수 있는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치에 관한 것이다.
최근 태블릿 PC, 노트북 PC, 스마트 폰과 같은 휴대용 컴퓨터를 사용하는 사람들이 많이 늘어나고, 잘 갖춰진 인터넷 인프라 덕에 카페나 지하철에서는 물론이고 집안에서조차 고정된 데스크톱 PC에 만족하지 못하고 이동하며 휴대용 컴퓨터를 사용하곤 한다. 또한, 자신이 보유한 많은 양의 데이터를 인터넷을 통해 가져와 쓰고자 하는 욕구가 늘어, 인터넷만 연결되면 언제 어디서나 자신의 데이터를 이용할 수 있도록 하는 장치인 나스(NAS: Network Attached Storage)가 인기를 끌게 된다.
나스는 네트워크에 연결돼 있는 스토리지라고 간단히 정의할 수 있는데, 컴퓨터에 장착돼 의존적으로 실행되지 않고 독립적인 전원과 IP 주소를 가지고 있어 굳이 컴퓨터의 전원을 켜놓지 않아도 적은 소비 전력으로 오랫동안 사용할 수 있다.
가상 서버라 불리는 클라우드 시장이 성장함에 따라 NAS 시장은 위축될 것이라는 말이 많은데, 이는 네트워크를 이용하여 사용자가 원하는 파일을 넣고 빼는 기능들이 클라우드와 거의 흡사하기 때문이다.
하지만, NAS 시장은 위축되지 않고 꾸준히 성장하고 있는데, 이는 일반 소비자들에게 아직 클라우드에 대한 개념이 자리잡지 않았고, 아직 안정화되지 않은 클라우드를 이용하기에는 심적 부담감이 있고, 더욱이 보안에 대해 극도로 민감해진 사용자들이 개인용 클라우드이자 개인용 네트워크 HDD로 볼 수 있는 NAS를 더 선호하기 때문이다.
도 1은 종래의 네트워트 저장 장치(NAS) 내의 어플리케이션 프로세서의 기능을 도식화한 예시도로서, 종래의 NAS는 고성능 CPU만으로 HDD 컨트롤러, 네트워크 컨트롤러, 다른 장치의 컨트롤러의 데이터를 처리함에 따른 병목현상이 발생하고, 또한, 어플리케이션이 대용량의 데이터를 처리해야 함으로 필연적으로 내부 버스(BUS)에 병목현상이 발생한다는 문제가 있다.
따라서, NAS의 데이터 흐름을 원할하게 하기 위해서는 CPU의 업그레이드가 필연적으로 수반되어야 하는 문제가 있다.
공개특허공보 제10-2013-0104099호 (공개일자: 2013. 09. 25.)
본 발명이 해결하고자 하는 과제는 종래의 문제점을 해결할 수 있는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치를 제공하는 데 그 목적이 있다.
상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치는 서비스 어플리케이션, 운영체제(OS) 및 네트워크 트래픽에 대한 정보를 처리하는 NAS 어플리케이션 프로세서; 및 하드 디스크 드라이브와 네트워크로 연결되어, 상기 하드 디스크 드라이브의 데이터 입출동작을 제어하는 NAS 컨트롤러를 포함하고, 상기 NAS 컨트롤러는 상기 NAS 어플리케이션 프로세서와 시리얼 인터페이스를 통해 데이터 처리에 대한 정보를 교환하는 것을 특징으로 한다.
일 실시예에서, 상기 NAS 컨트롤러는 데이터 입/출력을 제어하는 DMA 컨트롤러를 포함하는 것을 특징으로 한다.
일 실시예에서, 상기 NAS 컨트롤러는 유선 네트워크 컨트롤러와 데이터를 교환하는 것을 특징으로 한다.
일 실시예에서, 상기 유선 네트워크 컨트롤러는 상기 NAS 어플리케이션 프로세서와 외부 네트워크 노드 간을 중개하는 것을 특징으로 한다.
일 실싱예에서, 상기 유선 네트워크 컨트롤러는 클라이언트 단말, 메모리, 네트워크 컨트롤러와 이더넷으로 통신하며, 상기 NAS 어플리케이션 프로세서의 IP/MAC을 이용하는 것을 특징으로 한다.
일 실싱예에서, 상기 NAS 컨트롤러는 하드 디스크 드라이버(HDD)의 데이터 입/출력을 제어하는 파일 시스템의 동작을 제어하는 MCU를 포함하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 갖는 NAS 컨트롤러를 이용하면, NAS의 CPU 기능을 분리하여 제한적인 자원을 활용하면서도 어플리케이션의 성능을 높일 수 있다는 이점이 있다.
또한, 기존 고성능 CPU를 활용하지 않으면서도 사용자의 요구를 만족시킬 수 있다는 이점이 있다.
도 1은 종래의 네트워트 저장 장치(NAS) 내의 어플리케이션 프로세서의 기능을 도식화한 예시도이다.
도 2는 본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치의 구성도이다.
도 3은 종래의 NAS 컨트롤러와 본원의 NAS 컨트롤러를 비교한 예시도이다.
이하, 본 명세서의 실시예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 명세서에 기재된 기술을 특정한 실시 형태에 대해 한정하는 것이 아니며, 본 명세서의 실시예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 명세서에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 명세서에서 사용된 "제 1," "제 2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제 1 사용자 기기와 제 2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 명세서에 기재된 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.
어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 명세서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다.
예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 명세서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 명세서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 명세서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 명세서에서 정의된 용어일지라도 본 명세서의 실시예들을 배제하도록 해석될 수 없다.
이하, 첨부된 도면들에 기초하여 본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치를 보다 상세하게 설명하도록 한다.
도 2는 본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치의 구성도이고, 도 3은 종래의 NAS 컨트롤러와 본원의 NAS 컨트롤러를 비교한 예시도이다.
본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장장치(100)는 NAS의 CPU 기능을 분리하여 제한적인 자원을 활용하면서도 어플리케이션의 성능을 높이고, 기존 고성능 CPU를 활용하지 않으면서도 사용자의 요구를 만족시킬 수 있는 장치에 관한 것이다.
보다 구체적으로, 도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장장치(100)는 NAS 어플리케이션 프로세서(110) 및 NAS 컨트롤러(120)를 포함한다.
상기 NAS 어플리케이션 프로세서(110)는 서비스 어플리케이션, 운영체제(OS) 및 네트워크 트래픽에 대한 정보를 처리하는 구성일 수 있다.
상기 NAS 어플리케이션 프로세서(110)는 메모리에 적재된 커널이나 응용 프로그램을 실행시키거나 스토리지에 저장된 소프트웨어를 실행시키고 그에 따른 제어 신호를 출력하고, 프로그램 실행 과정에서 생성되는 데이터나 결과 데이터를 메모리에 저장시키는 기능을 한다.
부수적으로, 상기 서비스 어플리케이션은 NAS 어플리케이션 프로세서(110)에 의해 실행되며, 데몬 형태로 다른 어플리케이션과 별개로 백그라운드로 동작하고 네트워크 저장 장치(100)가 시작할 때 그 동작을 시작할 수 있다.
상기 NAS 어플리케이션 프로세서(110)에 의해 실행되는 서비스 어플리케이션은, 리눅스 커널 레이어의 VFS를 통해서 데이터 입출력 이력을 수집하고 이를 메모리에 저장하고, 데이터 입출력 이력을 정기적으로 분석하여 사용 패턴을 얻어 하드웨어와 소프트웨어의 동작 환경을 설정하거나 변경하는 어플리케이션일 수 있다.
상기 NAS 컨트롤러(120)는 하드 디스크 드라이브(HDD)와 네트워크로 연결되어, 상기 하드 디스크 드라이브의 데이터 입출동작을 제어하는 구성으로, 상기 NAS 어플리케이션 프로세서(110)와 시리얼 인터페이스(Serial Interface)를 통해 데이터 처리에 대한 정보를 교환하는 구성일 수 있다.
또한, NAS 컨트롤러(120)는 내부 버스를 통해 NAS 어플리케이션 프로세서(110)와 정보를 교환하는 메모리, 네트워크 컨트롤러와 이더넷(TCP/IP) 통신하며, 또한, 외부의 노드, 예컨대, 복수의 클라이언트와 이더넷(TCP/IP) 통신을 지원하는 유선 네트워크 컨트롤러(Hardwired Network controller)를 포함할 수 있다.
참고로, 메모리 램(RAM: Random Access Memory)과 롬(Read Only Memory)를 포함하여 구성될 수 있고, 롬은 비 액세스 계층 시스템이 최초로 구동될 때 실행되어야 하는 메모리 테스트와 같은 부팅 프로그램을 저장하고, 램은 운영체제(OS: Operating System)의 커널과 응응 프로그램을 적재하고 프로그램의 실행 과정에서 생성되는 데이터를 임시로 저장하는 구성이다.
즉, 유선 네트워크 컨트롤러(Hardwired Network controller)는 상기 NAS 어플리케이션 프로세서와 외부 네트워크 노드 간을 중개하는 구성일 수 있다.
상기 유선 네트워크 컨트롤러(Hardwired Network controller)는 NAS 어플리케이션 프로세서의 IP/MAC을 이용한다.
상기 유선 네트워크 컨트롤러(Hardwired Network controller)는 외부 기기와 IP(Internet Protocol)를 통해 연결하여 데이터를 주고 받기 위한 수단으로 네트워크 컨트롤러와 네트워크 포트로 구성될 수 있다.
또한, NAS 전용 컨트롤러(120)는 NAS 어플리케이션 프로세서(110)의 데이터 처리 요청에 따라 데이터를 처리하고, 그 결과를 회신하는 NAS 전용 MCU를 포함한다.
또한, NAS 전용 MCU의 데이터 입/출력을 지원하는 DMA 컨트롤러를 포함한다.
또한, NAS 전용 MCU는 상술한 유선 네트워크 컨트롤러(Hardwired Network controller)와 데이터를 교환한다.
상기 NAS 컨트롤러(120)는 스토리지(예: HDD)의 데이터 입/출력을 제어하기 위한 파일 시스템을 포함할 수 있다.
상기 스토리지는, 운영 체제, 응용 프로그램, 콘텐츠 데이터, 사용자 데이터 등의 대용량의 데이터를 보관하기 위한 하드 디스크 드라이브(HDD)나 SSD(Solid State Disk)와 같은 저장 장치로, 대용량의 데이터를 저장하기 위한 물리적 저장 매체(하드 디스크 또는 플래시 메모리)로서, 상기 NAS 전용 MCU의 제어에 따라 저장매체를 제어하는 파일 시스템과 연동된다. 참고로, 상기 스토리지는 SD(Security Digital), 메모리 스틱과 같은 착탈식 플래시 메모리가 장착된 메모리 인터페이스가 될 수도 있다.
한편, 상기 USB 인터페이스는 NAS와 주변 기기를 연결하기 위한 입출력 수단으로 USB 컨트롤러와 USB 포트로 구성될 수 있고, 유사한 고성능 직렬 버스로 디지털 기기 사이의 정보 전송 수단인 IEEE 1394(Firewire) 인터페이스로 대체될 수도 있다.
따라서, 본 발명의 일 실시예에 따른 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치를 이용하면, NAS의 CPU 기능을 분리하여 제한적인 자원을 활용하면서도 어플리케이션 서비스 성능을 높이고, 기존 고성능의 CPU를 활용하지 않으면서도 사용자의 요구를 만족시킬 수 있다는 이점이 있다.
본 발명의 일 실시예에서 사용된 “부”는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상
의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다
본 발명의 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
전술된 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치
110: NAS 어플리케이션 프로세서
120: NAS 컨트롤러

Claims (6)

  1. 서비스 어플리케이션, 운영체제(OS) 및 네트워크 트래픽에 대한 정보를 처리하는 NAS 어플리케이션 프로세서; 및
    하드 디스크 드라이브와 네트워크로 연결되어, 상기 하드 디스크 드라이브의 데이터 입출동작을 제어하는 NAS 컨트롤러를 포함하고,
    상기 NAS 컨트롤러는
    상기 NAS 어플리케이션 프로세서와 시리얼 인터페이스를 통해 데이터 처리에 대한 정보를 교환하는 것을 특징으로 하는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장장치.
  2. 제1항에 있어서,
    상기 NAS 컨트롤러는
    데이터 입/출력을 제어하는 DMA 컨트롤러를 포함하는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장장치.
  3. 제1항에 있어서,
    상기 NAS 컨트롤러는
    유선 네트워크 컨트롤러와 데이터를 교환하는 것을 특징으로 하는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치.
  4. 제3항에 있어서,
    상기 유선 네트워크 컨트롤러는
    상기 NAS 어플리케이션 프로세서와 외부 네트워크 노드 간을 중개하는 것을 특징으로 하는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치.
  5. 제4항에 있어서,
    상기 유선 네트워크 컨트롤러는
    클라이언트 단말, 메모리, 네트워크 컨트롤러와 이더넷으로 통신하며, 상기 NAS 어플리케이션 프로세서의 IP/MAC을 이용하는 것을 특징으로 하는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치.
  6. 제1항에 있어서,
    상기 NAS 컨트롤러는
    하드 디스크 드라이버(HDD)의 데이터 입/출력을 제어하는 파일 시스템의 동작을 제어하는 MCU를 포함하는 CPU 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치.
KR1020220054037A 2022-05-02 2022-05-02 Cpu 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치 KR20230154531A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220054037A KR20230154531A (ko) 2022-05-02 2022-05-02 Cpu 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220054037A KR20230154531A (ko) 2022-05-02 2022-05-02 Cpu 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치

Publications (1)

Publication Number Publication Date
KR20230154531A true KR20230154531A (ko) 2023-11-09

Family

ID=88748039

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220054037A KR20230154531A (ko) 2022-05-02 2022-05-02 Cpu 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치

Country Status (1)

Country Link
KR (1) KR20230154531A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130104099A (ko) 2012-03-13 2013-09-25 주식회사 히타치엘지 데이터 스토리지 코리아 나스에서 동작 환경 설정 방법 및 환경 설정이 가능한 나스

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130104099A (ko) 2012-03-13 2013-09-25 주식회사 히타치엘지 데이터 스토리지 코리아 나스에서 동작 환경 설정 방법 및 환경 설정이 가능한 나스

Similar Documents

Publication Publication Date Title
US10778521B2 (en) Reconfiguring a server including a reconfigurable adapter device
EP3234798B1 (en) System on a chip comprising multiple compute sub-systems
EP3234797B1 (en) System on a chip comprising reconfigurable resources for multiple compute sub-systems
US9122503B1 (en) Systems and methods for adaptive throttling of input/output requests in a virtual environment
US10915348B2 (en) Technologies for duplicating virtual machine states
Krintz The appscale cloud platform: Enabling portable, scalable web application deployment
US10474484B2 (en) Offline management of virtualization software installed on a host computer
US20190250852A1 (en) Distributed compute array in a storage system
JP6445710B2 (ja) マルチモード・システム・オン・チップ
EP2920735B1 (en) Systems and methods for isolation of information handling resources in response to external storage resource boot
US20190007483A1 (en) Server architecture having dedicated compute resources for processing infrastructure-related workloads
US10326826B1 (en) Migrating an on premises workload to a web services platform
US20180013837A1 (en) Auto detecting remote session protocol for remote access
US11507292B2 (en) System and method to utilize a composite block of data during compression of data blocks of fixed size
US10824437B1 (en) Platform management for computing systems without baseboard management controllers
JP6050528B2 (ja) セキュリティ・コプロセッサ・ブート性能
Tang et al. When virtualization encounter AFL
US20230221971A1 (en) Multiple port emulation
KR20230154531A (ko) Cpu 내부의 데이터 병목처리 기능을 지원하는 네트워크 저장 장치
US11593121B1 (en) Remotely disabling execution of firmware components
US20070174034A1 (en) Transparent intellectual network storage device
JP6197871B2 (ja) 仮想マシン管理方法,仮想マシン管理装置,および仮想マシン管理プログラム
US9342362B2 (en) Service-processor-centric computer architecture and method of operation thereof
US20100017189A1 (en) Transparent Intellectual Network Storage Device
KR20230127517A (ko) 2개 이상의 시스템간 메모리 동기화 방법 및 시스템

Legal Events

Date Code Title Description
E902 Notification of reason for refusal