CN105022591B - 数据存储系统中基于元数据的数据对齐 - Google Patents

数据存储系统中基于元数据的数据对齐 Download PDF

Info

Publication number
CN105022591B
CN105022591B CN201510264088.2A CN201510264088A CN105022591B CN 105022591 B CN105022591 B CN 105022591B CN 201510264088 A CN201510264088 A CN 201510264088A CN 105022591 B CN105022591 B CN 105022591B
Authority
CN
China
Prior art keywords
data
memory
aligned
byte
storage
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
CN201510264088.2A
Other languages
English (en)
Other versions
CN105022591A (zh
Inventor
C·J·斯夸尔斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Western Digital Technologies Inc
Original Assignee
Hitachi Global Storage Technologies Netherlands BV
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 Hitachi Global Storage Technologies Netherlands BV filed Critical Hitachi Global Storage Technologies Netherlands BV
Publication of CN105022591A publication Critical patent/CN105022591A/zh
Application granted granted Critical
Publication of CN105022591B publication Critical patent/CN105022591B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Abstract

为提供数据存储设备和系统的增强操作,在此提供多种系统、方法和固件。在第一示例中,数据存储设备被呈现。该数据存储设备包括网络接口,配置以接收用于在存储介质上存储的数据流,该数据流包含位于有效载荷数据之前的元数据。该数据存储设备包括处理系统,配置以当从该网络接口将该数据流写入存储器时处理至少该元数据以标识该数据流的数据间隙来在该存储器中建立至少该有效载荷数据的字节对齐。该处理系统还配置以在存储器中插入数据间隙并且在该存储器中存储该数据流。

Description

数据存储系统中基于元数据的数据对齐
技术领域
本公开的各个方面涉及数字数据存储系统领域。
背景技术
诸如个人计算机、工作站、服务器系统和云存储系统之类的计算机和网络系统典型地包括用于存储和检索数据的数据存储系统。这些数据存储系统可包括数据存储设备,诸如硬盘驱动器、固态存储设备、磁带存储设备和其他大容量存储设备。
这些数据存储系统可通过多种接口(诸如串行和并行数据接口、网络接口和其他数据接口)接收用于存储的数据。在某些网络接口的示例中,使用这样的文件传输协议:其采用一个以上的同时数据连接,用于传输元数据和用户数据。然而,在其它示例中,利用顺序比特流在一个连接中传输包括元数据和用户数据的数据流。
发明内容
为提供数据存储设备和系统的增强操作,在此提供多种方法和固件。在第一示例中,数据存储设备被呈现。该数据存储设备包括网络接口,配置以接收用于在存储介质上存储的数据流,该数据流包含位于有效载荷数据之前的元数据。该数据存储设备包括处理系统,配置以当从该网络接口将该数据流写入存储器时处理至少该元数据,以标识该数据流的数据间隙来在该存储器中建立至少该有效载荷数据的字节对齐。该处理系统还配置以在该存储器中插入该数据间隙并且在该存储器中存储该数据流。
在另一示例中,操作数据存储设备的方法被呈现。该方法包括通过网络接口接收用于在存储介质上存储的数据流,该数据流包含位于有效载荷数据之前的元数据。当在该存储介质上存储之前从该网络接口将该数据流写入存储器时,该方法包括处理至少该元数据以标识该数据流的数据间隙在在该存储器中建立有效载荷数据的字节对齐。该方法还包括在该存储器中插入该数据间隙并且在该存储器中存储该数据流。
在另一示例中,数据存储系统被呈现。该数据存储系统包括数据存储箱,其包括多个数据存储设备,配置以通过网络接收数据流并且在多个数据存储设备的存储介质上存储该数据流。一个或多个数据存储设备配置以通过网络接口接收用于在存储介质上存储的至少一个数据流,其中至少一个该数据流包含位于有效载荷数据之前的元数据,当将至少一个数据流从该网络接口写入存储器时处理至少该元数据,以标识该至少一个该数据流的数据间隙来在该存储器中建立有效载荷数据的字节对齐,并且在该存储器中插入数据间隙并且在存储器中存储至少一个该数据流。
附图说明
本公开的多个方面可参考如下附图更好地理解。附图中的组件不一定按比例绘制,相反,重点放在清楚地说明本公开的原理。此外,在附图中,相同的参考数字在整个几幅视图中指代对应部分。尽管结合这些附图描述了几个实施例,但本公开不限于在此公开的实施例。相反,其旨在涵盖所有可变更、修改和等效物。
图1为说明数据系统的系统示图。
图2为说明数据存储系统的操作方法的流程图。
图3为说明数据存储设备的框图。
图4为说明数据存储设备的操作方法的流程图。
图5为说明数据存储设备的操作方法的流程图。
具体实施方式
数据存储系统可通过多种接口(诸如串行和并行数据接口、网络接口和其他数据接口)接收用于存储的数据。在某些网络接口的示例中,使用这样的文件传输协议(FTP):其采用一个以上的同时数据连接,用于传输元数据和用户数据。在其它示例中,利用顺序比特流在一个连接中传输包括元数据和用户数据的数据流。
当多个同时数据连接被使用时,数据存储系统的数据对齐可通过分别存储在每个连接上接收到的数据来实现,保证用户数据在存储期间的对齐。然而,当单个连接被使用时,诸如在包括头部或元数据和有效载荷部分的用户数据的数据流的示例中,在存储期间数据的对齐可能比较麻烦。
如第一示例中,图1被呈现。图1为说明数据系统100的系统示图。系统100包括数据存储系统101,其进一步包括数据存储设备110、120和130。数据存储设备110通过网络链路150通信。数据存储设备120和130可通过进一步网络链路(在图1为清晰起见未示出)通信。
数据存储设备110包括网络接口111、处理系统112、存储器113和存储介质114。数据存储设备120和130包括相似单元。数据存储设备110的单元可通信地耦合并且允许数据交换。在操作中,数据由网络接口111通过网络链路150接收,用于在数据存储设备110的存储介质114中存储。网络接口111接收到的数据在在存储介质114中存储之前存储于存储器113。
为进一步说明系统100的操作,图2被呈现。图2为说明数据存储系统101的操作方法的流程图。图2的单元在下文括起来引用。在图2,数据存储设备110通过网络接口111接收(201)用于在存储介质114上存储的数据流,该数据流包含位于有效载荷数据之前的元数据。在该示例中,数据流140由网络接口111通过网络链路150接收。
数据流140包括元数据部分141和有效载荷数据部分142。元数据141可包括数据流140的头部、地址、属性或其他信息。有效载荷数据142可包括用户数据、有效载荷信息、内容或由数据存储设备110存储的其他数据。在该示例中,元数据141和有效载荷数据142以数据流140顺序接收。
当在存储介质114上存储之前从网络接口111将数据流写入存储器113时,处理系统112至少处理(202)元数据141以标识数据流140的数据间隙,以实现至少有效载荷数据142在存储器113中的字节对齐。当数据流140被接收到时,网络接口111传输数据流140以便在存储器113中存储。
如图1的存储器内容115所示,元数据141和有效载荷数据142当以数据流140接收到时被存储在存储器113中。然而,由于元数据141在有效载荷数据142之前占用存储器113中一定空间量,所以有效载荷数据142将不会处于在存储器113的任何特定的字节对齐。有效载荷数据142的这种非字节对齐当传输有效载荷数据142至存储介质114时可导致性能下降。在多个示例中,存储介质114对于存储其上的数据具有优选字节对齐。例如,字节对齐可由于将比特写入存储介质113的存储方案而优选。在其它示例中,字节对齐可由于当将比特写入存储介质113时使用的错误检查和校正方案而优选。
处理系统112在存储器113中插入(203)数据间隙并且在存储器113中存储数据流140。当数据以非对齐形式写入存储介质113时,重对齐处理典型地对在存储器113中存储之后的所有有效载荷数据142发生,其可导致性能下降并且浪费处理时间。在非对齐示例中,一旦所有数据流140写入存储器113,读写处理就必须对至少所有有效载荷数据142发生,以在传输至存储介质114之前对齐有效载荷数据142。有利地,在该示例中,对齐在数据流140的写入期间被确定,并且有效载荷数据142的大部分在数据流140写入存储器113期间被对齐。
在进一步示例中,存储器113中的一部分数据(诸如在标识数据间隙之前写入的一部分有效载荷数据142)仍未对齐。该部分可以小量读写重对齐以在存储器113中对齐。在某些示例中,元数据141不被重对齐,而仅有效载荷142被重对齐。
返回图1的单元,数据存储系统101包含多个数据存储设备,即,数据存储设备110、120和130。还可包括进一步的数据存储设备。数据存储系统101可包括箱,诸如机架固定系统、机箱、棚架等,用于结构上支持数据存储系统。此外,数据存储系统101可包括网络链路,网络交换器或集线器、电缆、电源系统和其他装置,以互连数据存储设备与至少网络链路150。数据存储系统101可还包括冷却系统、风扇、电池备用系统和其他装置,以为数据存储设备提供合适的操作环境。
数据存储设备110、120和130每个包括装置和电路来通过网络接口接收用于在存储介质上存储的数据。在该示例中,数据存储设备110是数据存储设备120和130的典型代表,虽然变型也是可能的。
数据存储设备110包括网络接口111、处理系统112、存储器113和存储介质114。网络接口111包括网络收发器装置,诸如物理层接口装置、放大器、滤波器、网络接口卡装置和其他联网接口单元,以通过网络链路150通信。处理系统112包括一个或多个微处理器或离散电路设备,以标识对齐数据和将数据写入存储器113的数据间隙。在某些示例中,处理系统112包含传输控制协议卸载引擎(TOE)模块,其从网络接口111接收数据并传输该数据用于缓冲在存储器113中。当处理系统112包含TOE时,进一步的处理单元可包括于处理系统112,诸如基于Linux的处理单元,其协助TOE电路。存储器113包含非暂存、易失性或非易失性、固态存储器,诸如动态随机存取存储器(DRAM)、静态RAM、相变存储器、闪存等。存储介质114包含一个或多个非易失性非暂存的存储介质。存储介质114的示例包括旋转磁存储介质、磁带介质、相变存储器介质、闪存介质或其他介质。
在数据存储设备111的某些示例中,网络接口111、处理系统112和存储器113包括于控制存储介质114的操作的片上系统(SOC)设备中。数据存储设备111可包括围绕在存储介质114周围的箱(诸如硬盘驱动箱),以保护存储介质114不受环境影响,而网络接口111、处理系统112、存储器113和其他单元位于附连至箱的印刷电路板上。
网络链路150使用金属、玻璃、光、空气、空间或某些其他材料作为传送介质。网络链路150可使用多种通信协议,诸如以太网、因特网协议(IP)、时分复用(TDM)、异步传输模式(ATM)、同步光联网(SONET)、混合光纤同轴电缆(HFC)、通用串行总线(USB)、串行连接SCSI(SAS)、光纤信道、通信信号、无线通信或某些其他通信格式,包括其组合、改进或变型。网络链路150可为直接链路或可包括中间网络、系统或设备,并且可包括通过多个物理链路传送的逻辑网络链路。网络链路150可包括多个不同信号,它们共享同一相关链路,如由图1的相关线表示,包含资源块、存取信道、寻呼信道(paging channel)、通知信道、前向链路、反向链路、用户通信、通信会话、开销通信、载波频率、其他信道、时隙、扩频码、传送端口、逻辑传送链路、网络套接字、分组或通信方向。
作为数据存储设备的另一示例,图3被呈现。图3为说明数据存储设备300的框图。数据存储设备300可为图1的数据存储设备110的示例,虽然变型也是可能的。在图3中,数据流350通过网络链路340接收,用于通过数据存储设备300在存储介质330上存储。网络链路340可为有线或无线以太网链路并包括因特网协议(IP)流量或包括对图1的网络链路150描述的单元。
数据存储设备300包括片上系统(SOC)310、动态随机存取存储器(DRAM)320和旋转磁存储介质330。数据存储设备300可包括箱301,其可封装或结构上支持数据存储设备300的单元。数据存储设备300可选地包括为简单起见在本文不讨论的附加设备、特征或功能。
SOC 310包括介质存取控制(MAC)单元311、传输控制协议卸载引擎(TOE)模块312、存储器控制器314、主处理器315和介质接口317,集成于单个半导体晶元或包于单个芯片封装的一个或多个半导体晶元。在进一步的示例中,多个芯片封装可被使用。在操作中,SOC310的单元诸如通过内部芯片互连可通信地耦合。应当理解,离散链路也可被使用,诸如独立的通信、功率和控制链路或其他电路。SOC 310可在共同形成SOC 310的单元的装置或电路之中分布或结合。
MAC 311包括用于处理通过链路340的网络流量的介质存取控制电路和逻辑,诸如链路层单元。在某些示例中,MAC 311包括物理层接口(PHY)的单元,而PHY的某些单元可包括于SOC 310的外部。MAC 311的进一步示例包括逻辑、传输门、缓冲器、网络接口卡装置、收发器和其他通信电路。MAC 311至少与TOE 312通信,用于处理通过网络链路340接收的数据分组。
TOE 312包括用于由MAC 311接收的网络流量的分组头部信息的卸载处理的电路和逻辑。该分组头部信息可包括TCP、IP或NFS分组头部以及其他。TOE包括处理电路,用以经由存储器控制器314在DRAM 320中缓冲或存储这些分组。在本文示例中,TOE 312可标识关于存储于DRAM的数据的数据对齐问题。TOE 312可标识由于在存储于DRAM 320的数据的存储期间数据流的元数据或头部数据而引起的字节不对齐。TOE 312可标识数据流的一个或多个间隙,以对DRAM 320的数据流的存储进行字节对齐。进一步的处理单元可包括于TOE312或伴随TOE 312,诸如协助TOE电路的基于Linux的处理单元。
TOE 312可包含一个或多个微处理器、微控制器、专用集成电路(ASIC)处理器或FPGA单元和其他电路,其检索和执行至少间隙插入软件313,以按照在此描述的那样操作。TOE 312可实现于单个处理设备,但也可分布于在执行程序指令时协作的多个处理设备或子系统。TOE 312的示例包括通用中央处理单元、专用处理器和逻辑设备以及其他任何类型的处理设备,组合或其变型。
TOE 312可包括存储系统,其包括软件313,存储系统为清晰起见从图3省略,但还可包括于SOC 310或TOE 312。存储系统可包括由TOE 312可读的任何非暂存计算机可读存储介质,并且能够存储软件313,诸如计算机可读存储设备。存储软件313的计算机可读存储介质可包括以用于信息(诸如计算机可读指令、数据结构、程序模块或其他数据)存储的任何方法或技术实现的易失性和非易失性、可移动和非可移动介质。除存储介质外,在某些实现,计算机可读存储介质可还包括软件313可通过其进行通信的通信介质。存储软件313的计算机可读存储介质可实现为单个存储设备,但也可实现于相对于彼此共同定位或分布的多个存储设备或子系统。存储软件313的计算机可读存储介质可包含能够与TOE 312通信的附加单元,诸如控制器。存储介质的示例包括随机存取存储器、只读存储器、闪存或可用于存储所需信息并且可由指令执行系统存取的其他任何介质,以及其任何组合或变型或其他任何类型的存储介质。
软件313可以以程序指令实现,并且在其他功能中,当总体上由存储设备301执行或特别地由TOE 312执行时,可指示存储设备301或TOE 312将关联于数据流的数据写入DRAM 320,在DRAM 320中存储数据流期间标识字节对齐问题,并且标识数据间隙以在存储于DRAM 320期间对齐数据流,以及其他操作。软件313可包括附加处理、程序或组件,诸如操作系统软件、数据库软件或应用软件。软件313还可包含可由TOE 312执行的某些其他形式的机器可读处理指令。
总体上,软件313可当载入至TOE 312并执行时将TOE 312从通用计算系统整体转换为定制以按照此处描述那样地操作的专用计算系统。计算机可读存储介质上的编码软件313可转换计算机可读存储介质的物理结构。物理结构的特定转换可取决于该说明书的不同实现中的各种因素。这样的因素的示例可包括但不限于,用于实现计算机可读存储介质的存储介质并且计算机可读存储介质是否具体化为主存储或辅助存储的技术。例如,如果计算机存储介质实现为基于半导体的存储器,则软件313可当程序被编码至其中时转换半导体存储器的物理状态。例如,软件313可转换组成半导体存储器的晶体管、电容器或其他离散电路单元的状态。相似转换可根据磁或光介质发生。在不偏离本描述的范围的情况下,物理介质的其他转换也是可能的,而在前的示例仅被提供以便于该讨论。
存储器控制器314包括用于与DRAM 320通信的电路和通信接口。存储器控制314通过存储器链路314通信,以将数据写入DRAM 320并且读取存储于DRAM 320的数据。存储器链路314可包括串行或并行数据接口,诸如同步DRAM(SDRAM)或双数据率SDRAM(DDR)存储器接口。
主处理器315可包含一个或多个微处理器、微控制器、专用集成电路(ASIC)处理器或FPGA单元和其他电路,其检索和执行至少间隙插入软件316以按照在此描述的那样操作。主处理器315可实现于单个处理设备,但也可分布在共同操作以执行程序指令的多个处理设备或子系统之间。主处理器315的示例包括通用中央处理单元、专用处理器和逻辑设备以及其他任何类型的处理设备、组合或其变型。
主处理器315可包括存储系统,其包括软件316,为清晰起见存储系统从图3省略,但可包括于SOC 310或主处理器315。存储系统可包括由主处理器315可读的任何非暂存计算机可读存储介质并且能够存储软件316,诸如计算机可读存储设备。存储软件316的计算机可读存储介质可包括以用于信息(诸如计算机可读指令,数据结构,程序模块或其他数据)存储的任何方法或技术实现的易失性和非易失性、可移动和非可移动介质。除存储介质外,在某些实现中,计算机可读存储介质可还包括软件316可通过其通信的通信介质。存储软件316的计算机可读存储介质可实现为单个存储设备,但也可实现于相对于彼此共同定位或分布的多个存储设备或子系统之间。存储软件316的计算机可读存储介质可包含能够与主处理器315通信的附加单元,诸如控制器。存储介质的示例包括随机存取存储器、只读存储器、闪存或可用于存储所需信息并且可由指令执行系统存取的其他任何介质,以及其任何组合或变型或其他任何类型的存储介质。
软件316可以以程序指令实现,并且在其他功能中,可当通常由存储设备301执行或特别由主处理器315执行时,指示存储设备301或主处理器315读取存储于DRAM 320的数据,传输在存储介质330上存储的数据,读写存储介质330的数据,并传输在存储介质330上存储的数据用于通过网络链路340递送,以及其它操作。软件316可包括附加处理、程序或组件,诸如操作系统软件、数据库软件或应用软件。软件316也可包含可由主处理器315执行的某些其他形式的机器可读处理指令。
总体上,软件316当载入主处理器315并执行时,可将主处理器315从通用计算系统整体转换为定制以按照在此描述的那样操作的专用计算系统。计算机可读存储介质上的编码软件316可转换计算机可读存储介质的物理结构。物理结构的特定转换可在该说明书的不同实现中取决于多种因素。这样的因素的示例可包括但不限于,用于实现计算机可读存储介质的存储介质的技术,以及计算机可读存储介质是否被具体化为主存储器或辅助存储器。例如,如果计算机存储介质实现为基于半导体的存储器,则软件316可当程序被编码在其中时转换半导体存储器的物理状态。例如,软件316可转换晶体管、电容器或组成半导体存储器的其他离散电路单元的状态。相似转换可根据磁或光介质发生。在不偏离本描述的范围的情况下,物理介质的其他转换也是可能的,而在前的示例仅提供以便于该讨论。
介质接口317包括用于传输写数据至存储介质330并从存储介质330读数据的电路、设备和装置。在旋转磁介质(诸如硬盘驱动)的示例中,介质接口317可包含信号处理电路、读信道电路、伺服控制系统、信道搜索/跟踪系统、写电路、升压转换器、缓冲器、线路放大器和其他电路和装置。
DRAM 320包含易失性固态存储器。DRAM可替代地包括任何非暂存固态存储器,包括相变、闪存、磁随机存取存储器等。DRAM 320利用信令接口与SOC 310对接,诸如SDRAM,DDR或其他存储器接口技术所使用。
存储介质330包含磁存储介质。存储介质330还可包括伺服/电枢、马达、主轴、底板和读/写头。在图3示出的磁存储介质部分330的单元仅仅表示旋转磁介质系统和相关机构,为清晰起见其他单元被省略。
图4为说明数据存储设备300操作方法的流程图。图4的操作在下文括起来引用。尽管TOE 312在图4被讨论为执行如下处理,但应当理解,主处理器315可替代地应对某些所讨论处理。此外,进一步处理单元可包括于TOE 312或伴随TOE 312,诸如协助在以下讨论的处理中的TOE电路的基于Linux的处理单元。
在图4中,存储设备300通过网络接口340接收(401)用于在存储介质上存储的数据流350,数据流350包括位于有效载荷数据之前的元数据。数据流350通过网络链路340由存储设备300的MAC 311接收。MAC 311将数据流350传送至TOE 312,用于在DRAM 320中数据流350的分组处理和缓冲。操作401可通过图3的步骤“1”说明。
数据流350可包括一个或多个头部351、元数据352和有效载荷数据353。在某些示例中,数据流350包含网络文件系统(NFS)分组,虽然任何网络文件处理系统可被使用。头部信息351可包括IP、以太网或NFS头部和相关信息。元数据352可包括文件信息,描述包括于有效载荷353的数据的信息、数据属性、存储地址或关联于有效载荷数据353的其他信息。有效载荷数据353包括用户数据或要通过存储设备300写入存储介质330的其他数据。
存储设备300当通过网络接口340接收时在存储器中缓冲(402)数据流350。在该示例中,TOE 312处理一个或多个头部351,以确定数据流350的属性,诸如标识分组类型、分组大小、分组格式、目的和源地址等。TOE 312在DRAM 320缓冲头部351、元数据352和有效载荷数据353。输入数据通过存储器接口341接收到DRAM 320中。存储器控制器314处理接收自TOE 312的输入数据,以物理地与DRAM 320对接。该缓冲处理在图3可见,如由步骤“2”表示,并且包括缓冲数据360直到第一间隙370的部分。在某些示例中,仅头部和元数据的一部分被缓冲。
存储设备300在数据流350中间标识(403)数据间隙370,以对齐存储器中数据流350的剩余部分。如在图3可见,“缓冲数据360”上方的小虚线表示关于一个示例字节对齐的字节对齐。头部351和元数据352在DRAM 320中的存储期间不与字节对齐相对齐,并且一旦有效载荷数据353写入DRAM 320,该有效载荷数据也不与字节对齐相对齐。然而,在数据流350到DRAM 320的写入处理期间,TOE 312标识DRAM 320中存储的数据和所需字节对齐之间的不对齐。该不对齐可通过标识存储的头部和元数据的大小并且确定在存储期间未对齐有效载荷数据有多少位来标识。在该示例中,第一数据间隙370被标识。该数据间隙处理在图3可见,如由步骤“3”表示。
所需对齐可基于不同的因素。字节对齐部分地基于存储介质330选择。所需对齐可基于存储介质的存储块的物理细分或基于应用于存储介质的错误检查或校正位。其与DRAM320的存储块细分或DRAM 320的错误检查方案相反。
在旋转磁存储器的示例中,物理磁盘可细分为存储块,并且存储块大小可用于建立字节对齐。存储块大小在某些示例可为扇区大小。在闪存介质的示例中,块大小可不同于磁介质,并且不同的字节对齐可被建立。例如,闪存介质的字节对齐可为页的大小。通过避免在传输至存储介质330之前重新对齐存储于DRAM 320的所有数据的附加步骤,字节对齐减少了数据从DRAM 320到存储介质330的传输。在本文讨论的示例中,数据对齐在将数据流350写入DRAM 320同时在流中间完成。
在某些示例中,错误检查或错误检查和校正(ECC)方案用于存储介质330。该错误检查方案可包括用于一段存储的用户数据的一个或多个字节,其表示错误检查位或错误校正位,诸如奇偶位,ECC位等。对应于错误检查位的特定位的用户数据位的数量可基于所需方案或基于物理介质本身而变化。在旋转磁存储器的示例中,物理磁盘可细分为存储块,并且每个存储块可具有对应数量的ECC位。用户数据位与ECC位的各种比率可被使用。存储于DRAM 320的数据的数据对齐可基于错误检查方案选择,以使一段用户数据和相关错误检查位适合存储介质330的物理介质的块大小。
一旦数据间隙370已经被标识,存储设备300就在存储器中插入(404)数据间隙370。在该示例中,TOE 312在DRAM 320中通过在数据流350的当前写处理期间留出一部分未写入的存储器而插入数据间隙370。在某些示例中,空白或占位符数据可被插入作为数据间隙370并且数据流350的写入可在数据间隙370的写入期间暂停。
一旦数据间隙370已经被插入,数据流350的写入可继续,并且存储设备300在存储器中存储(405)数据流350的剩余部分。在该示例中,TOE 312插入数据间隙370然后继续缓冲DRAM 320的数据流350的有效载荷数据353。在数据流350的所有有效载荷数据被写入DRAM 320之后,在数据间隙370之后写入的数据流350的一部分根据DRAM 320中的所需字节对齐而对齐。
为处理未在DRAM 320中对齐的DRAM 320中的最初写数据,可进行进一步重对齐。图5为说明数据存储设备300的操作方法的流程图,该方法包括重对齐处理。在图5中,存储设备300标识(501)关于已存储于存储器的数据流的未对齐数据的重对齐间隙。例如,在缓冲数据360中,有效载荷数据353的第一部分仍未对齐,与有效载荷数据353的第二部分相反。部分基于头部351和元数据352和第一间隙370的存储结尾位置的差确定有效载荷数据353的第一部分不对齐的量。在图3中,重对齐间隙由第二数据间隙371和步骤“4”表示。
存储设备300基于重对齐数据间隙对未对齐数据执行(502)重对齐处理。读写处理可由TOE 312执行,以从DRAM 320读取有效载荷数据353的未对齐部分并且在DRAM 320中插入第二间隙371。一旦有效载荷数据353的第一部分重新写回DRAM 320,该有效载荷数据353的第一部分就将连同有效载荷数据353的第二部分一起对齐。该重对齐数据在图3中的“重对齐数据361”中可见,并且重对齐处理可包括图3的步骤“4”。在某些示例中,一部分有效载荷数据353由于剩余太少的数据以至于不能以对齐方式适合于DRAM 320的对齐位置而仍未对齐。在进一步示例中,头部351或元数据352的所选择部分还可利用图3的步骤“4”的重对齐处理在DRAM 320中对齐。
存储设备300从存储器传输(503)对齐数据流至存储介质330。在该示例中,一旦数据流350的所需部分在DRAM 320中对齐,存储设备300就可从DRAM 320传输该已对齐数据以便于在存储介质330中存储。该操作在图3可视为步骤“5”。在某些示例中,主处理器315处理DRAM 320中的数据到存储介质330的传输,而存储介质330与介质接口317物理地对接。一旦在存储介质330上存储,数据就可在以后时间通过存储设备300检索并且通过网络链路340传输。
所包括的说明书和附图描述了具体实施例,以教导本领域技术人员如何制造和使用最佳模式。为教导发明原理的目的,某些传统方面已被简化或省略。本领域技术人员将会理解,该实施例的变型也落入本发明的范围。本领域技术人员还将理解,上述特征可以多种方式组合以形成多个实施例。结果,本发明不限于上述具体实施例,而仅由权利要求及其等效物限定。

Claims (20)

1.一种数据存储设备,包含:
网络接口,配置以接收用于在非瞬态存储介质上存储的数据流,该数据流包含位于有效载荷数据之前的元数据;以及
处理系统,配置以:
向存储器存储没有字节对齐的所述元数据和所述有效载荷数据的初始部分;
处理所述数据流,以标识所述有效载荷数据的所述初始部分之后插入的数据间隙,所述数据间隙被配置为在该存储器中建立该有效载荷数据的剩余部分的字节对齐;
与所述有效载荷数据的所述初始部分分离所述数据间隙地,在所述存储器中存储所述有效载荷数据的所述剩余部分,以在所述存储器中字节对齐所述有效载荷数据的所述初始部分;
基于所述元数据的存储结束位置并基于所述数据间隙,计算重新对齐间隙,所述重新对齐间隙被配置为在该存储器中建立该有效载荷数据的初始部分的字节对齐;
在存储该有效载荷数据的所述剩余部分之后,基于该有效载荷数据的所述初始部分从所述元数据分离了所述重新对齐间隙,在所述存储器中对齐该有效载荷数据的所述初始部分,以在所述存储器中字节对齐该有效载荷数据的所述初始部分;以及
在所述初始部分的对齐之后,将所述元数据和所有对齐的有效载荷数据从所述存储器传输至所述存储介质。
2.根据权利要求1的数据存储设备,其中所述存储器包括动态随机存取存储器。
3.根据权利要求1的数据存储设备,其中该非瞬态存储介质包括旋转磁存储介质。
4.根据权利要求1的数据存储设备,其中,所述处理系统进一步配置以基于对于所述有效载荷数据的所述初始部分的存储器中的字节对齐,重新对齐所述有效载荷数据的所述初始部分。
5.根据权利要求1的数据存储设备,其中,该字节对齐包含该非瞬态存储介质的数据存储方案的字节对齐。
6.根据权利要求1的数据存储设备,其中,该字节对齐包含该非瞬态存储介质的错误检查方案的字节对齐。
7.根据权利要求1的数据存储设备,其中,该处理系统包含传输控制协议卸载引擎(TOE)。
8.一种处理器,配置以:
通过网络接口接收用于在非瞬态存储介质上存储的数据流,该数据流包含位于有效载荷数据之前的元数据;
在所述非瞬态存储介质上存储之前,向存储器存储没有字节对齐的所述元数据和所述有效载荷数据的初始部分;
当将该数据流从网络接口存储到存储器时,处理至少该元数据以标识该数据流的数据间隙来在该存储器中建立有效载荷数据的剩余部分的字节对齐;
与所述有效载荷数据的所述初始部分分离所述数据间隙地,在该存储器中存储所述有效载荷数据的所述剩余部分;
基于所述元数据的存储结束位置并基于所述数据间隙,计算在存储所述有效载荷数据的所述剩余部分之后用于没有字节对齐的所述存储器中存储的所述有效载荷数据的所述初始部分的重新对齐间隙;
基于该有效载荷数据的所述初始部分从所述元数据分离了所述重新对齐间隙,对齐该有效载荷数据的所述初始部分;以及
响应于所述有效载荷数据的所述初始部分的对齐,将所述元数据和所有对齐的有效载荷数据从所述存储器传输至所述非瞬态存储介质。
9.根据权利要求8的处理器,其中所述处理器在配置以向存储器存储没有字节对齐的所述元数据和所述有效载荷数据的初始部分时,配置以在动态随机存取存储器中存储没有字节对齐的所述元数据和所述有效载荷数据的初始部分。
10.根据权利要求8的处理器,其中所述处理器在配置以将所述元数据和所有对齐的有效载荷数据从所述存储器传输至所述非瞬态存储介质时,配置以从所述存储器向非瞬态旋转磁存储介质传输所述元数据和所有对齐的有效载荷数据。
11.根据权利要求8的处理器,其中,所述处理器在配置以通过所述网络接口接收所述数据流时,配置以经由介质存取控制电路接收所述数据流。
12.根据权利要求8的处理器,其中,该字节对齐包含该非瞬态存储介质的数据存储方案的字节对齐。
13.根据权利要求8的处理器,其中,该字节对齐包含该非瞬态存储介质的错误检查方案的字节对齐。
14.根据权利要求8的处理器,其中,所述处理器包含传输控制协议卸载引擎(TOE)。
15.一种数据存储系统,包含:
数据存储箱,其包括多个数据存储设备,配置以通过网络接收数据流并且在多个数据存储设备的存储介质上存储该数据流;以及
其中一个或多个该数据存储设备,进一步配置以:
通过网络接口接收至少一个用于在非瞬态存储介质上存储的数据流,该至少一个数据流包含位于有效载荷数据之前的元数据;
向存储器写入没有字节对齐的所述元数据和所述有效载荷数据的初始部分;
在将所述元数据和所述有效载荷数据的所述初始部分写入存储器的至少部分期间,处理至少该元数据以标识该至少一个数据流的所述有效载荷数据的剩余部分的数据间隙;
在所述有效载荷数据的所述初始部分之后在该存储器中插入该数据间隙并且在所述数据间隙之后在该存储器中存储所述有效载荷数据的所述剩余部分,以在所述存储器中建立所述有效载荷数据的所述剩余部分的字节对齐;
基于所述元数据的存储结束位置并基于所述数据间隙,计算用于所述存储器中没有字节对齐地写入的所述有效载荷数据的所述初始部分的重新对齐间隙;
基于该有效载荷数据的所述初始部分从所述元数据分离了所述重新对齐间隙,在所述存储器中对齐该有效载荷数据的所述初始部分,以在所述存储器中建立所述有效载荷数据的所述初始部分的字节对齐;以及
将以安排的各个字节对齐的至少所述有效载荷数据从所述存储器写入所述非瞬态存储介质。
16.根据权利要求15的数据存储系统,其中所述一个或多个数据存储设备在配置以向存储器写入没有字节对齐的所述元数据和所述有效载荷数据的初始部分时,配置以向动态随机存取存储器写入没有字节对齐的所述元数据和所述有效载荷数据的初始部分。
17.根据权利要求16的数据存储系统,其中该一个或多个数据存储设备在配置以将以安排的各个字节对齐的至少所述有效载荷数据从所述存储器写入所述非瞬态存储介质时,配置以将以安排的各个字节对齐的至少所述有效载荷数据从所述存储器写入非瞬态旋转磁存储介质。
18.根据权利要求17的数据存储系统,其中该一个或多个数据存储设备在配置以通过所述网络接口接收至少一个数据流时,配置以经由介质存取控制电路接收至少一个数据流。
19.根据权利要求15的数据存储系统,其中,所述有效载荷数据的所述初始部分的该字节对齐和所述有效载荷数据的所述剩余部分的该字节对齐的每一个包含该非瞬态存储介质的数据存储方案的字节对齐。
20.根据权利要求15的数据存储系统,其中,所述有效载荷数据的所述初始部分的该字节对齐和所述有效载荷数据的所述剩余部分的该字节对齐的每一个包含该非瞬态存储介质的错误检查方案的字节对齐。
CN201510264088.2A 2014-04-22 2015-04-22 数据存储系统中基于元数据的数据对齐 Expired - Fee Related CN105022591B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/258,718 US9888077B2 (en) 2014-04-22 2014-04-22 Metadata based data alignment in data storage systems
US14/258,718 2014-04-22

Publications (2)

Publication Number Publication Date
CN105022591A CN105022591A (zh) 2015-11-04
CN105022591B true CN105022591B (zh) 2018-12-14

Family

ID=53298860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510264088.2A Expired - Fee Related CN105022591B (zh) 2014-04-22 2015-04-22 数据存储系统中基于元数据的数据对齐

Country Status (5)

Country Link
US (2) US9888077B2 (zh)
CN (1) CN105022591B (zh)
DE (1) DE102015005148A1 (zh)
GB (1) GB2527409B (zh)
IE (1) IE20150114A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9888077B2 (en) * 2014-04-22 2018-02-06 Western Digital Technologies, Inc. Metadata based data alignment in data storage systems
US10515430B2 (en) * 2015-11-03 2019-12-24 International Business Machines Corporation Allocating device buffer on GPGPU for an object with metadata using access boundary alignment
US10013178B2 (en) * 2016-04-30 2018-07-03 Sandisk Technologies Llc Methods, systems and computer readable media for optimizing storage device bus and resource utilization by host realignment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884055A (en) * 1996-11-27 1999-03-16 Emc Corporation Method and apparatus including a shared resource and multiple processors running a common control program accessing the shared resource
US6122717A (en) * 1996-06-17 2000-09-19 Integrated Device Technology, Inc. Methods and apparatus for a memory that supports a variable number of bytes per logical cell and a variable number of cells

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465340A (en) 1992-01-30 1995-11-07 Digital Equipment Corporation Direct memory access controller handling exceptions during transferring multiple bytes in parallel
US5491802A (en) * 1992-05-29 1996-02-13 Hewlett-Packard Company Network adapter for inserting pad bytes into packet link headers based on destination service access point fields for efficient memory transfer
US6219773B1 (en) * 1993-10-18 2001-04-17 Via-Cyrix, Inc. System and method of retiring misaligned write operands from a write buffer
US5825774A (en) * 1995-07-12 1998-10-20 3Com Corporation Packet characterization using code vectors
US6145017A (en) 1997-08-05 2000-11-07 Adaptec, Inc. Data alignment system for a hardware accelerated command interpreter engine
US6434674B1 (en) * 2000-04-04 2002-08-13 Advanced Digital Information Corporation Multiport memory architecture with direct data flow
US6831931B2 (en) * 2000-12-06 2004-12-14 International Business Machines Corporation System and method for remultiplexing of a filtered transport stream
US6622232B2 (en) 2001-05-18 2003-09-16 Intel Corporation Apparatus and method for performing non-aligned memory accesses
US7016987B2 (en) * 2001-06-21 2006-03-21 Integrated Device Technology, Inc. Transaction aligner microarchitecture
US20030118761A1 (en) * 2001-12-21 2003-06-26 Kimberly-Clark Worldwide, Inc. Elastomeric articles having improved chemical resistance
US6829689B1 (en) 2002-02-12 2004-12-07 Nvidia Corporation Method and system for memory access arbitration for minimizing read/write turnaround penalties
US7283549B2 (en) * 2002-07-17 2007-10-16 D-Link Corporation Method for increasing the transmit and receive efficiency of an embedded ethernet controller
US7092279B1 (en) * 2003-03-24 2006-08-15 Sheppard Douglas P Shared bit line memory device and method
US7231505B1 (en) * 2003-08-26 2007-06-12 Marvell International Ltd. Aligning IP payloads on memory boundaries for improved performance at a switch
US7099216B2 (en) 2003-09-05 2006-08-29 International Business Machines Corporation Single cycle read/write/writeback pipeline, full-wordline I/O DRAM architecture with enhanced write and single ended sensing
US7185153B2 (en) * 2003-12-18 2007-02-27 Intel Corporation Packet assembly
US20050135395A1 (en) * 2003-12-22 2005-06-23 Fan Kan F. Method and system for pre-pending layer 2 (L2) frame descriptors
US7167968B2 (en) * 2004-04-29 2007-01-23 International Business Machines Corporation Storage pre-alignment and EBCDIC, ASCII and unicode basic latin conversions for packed decimal data
US7412584B2 (en) * 2004-05-03 2008-08-12 Intel Corporation Data alignment micro-architecture systems and methods
WO2005122573A1 (en) * 2004-06-05 2005-12-22 Samsung Electronics Co., Ltd. Digital broadcasting transmission/reception system utilizing srs and trs code to improve receiving performance and signal processing method thereof
US7383399B2 (en) 2004-06-30 2008-06-03 Intel Corporation Method and apparatus for memory compression
US20060133383A1 (en) * 2004-12-22 2006-06-22 Russell Homer Communications system with scan table identification
US7580406B2 (en) * 2004-12-31 2009-08-25 Intel Corporation Remote direct memory access segment generation by a network controller
US7546514B2 (en) * 2005-04-11 2009-06-09 Hewlett-Packard Development Company, L.P. Chip correct and fault isolation in computer memory systems
US7391671B2 (en) 2005-09-29 2008-06-24 Hynix Semiconductor Inc. Data input device for use in semiconductor memory device
US7921263B2 (en) * 2006-12-22 2011-04-05 Broadcom Corporation System and method for performing masked store operations in a processor
US7765380B2 (en) * 2007-01-19 2010-07-27 Unity Semiconductor Corporation Fast data access through page manipulation
US8503423B2 (en) * 2007-02-02 2013-08-06 Interdigital Technology Corporation Method and apparatus for versatile MAC multiplexing in evolved HSPA
GB2448933B (en) * 2007-05-04 2009-11-25 Nec Corp Content synchronization for mobile communication network
EP2158544B1 (en) 2007-06-12 2012-08-08 Rambus Inc. In-dram cycle-based levelization
JP4977583B2 (ja) * 2007-11-22 2012-07-18 株式会社日立製作所 記憶制御装置及び記憶制御装置の制御方法
JP2009205555A (ja) 2008-02-28 2009-09-10 Toshiba Corp メモリシステム
US8036248B2 (en) 2008-10-29 2011-10-11 Silicon Image, Inc. Method, apparatus, and system for automatic data aligner for multiple serial receivers
US8402246B1 (en) 2009-08-28 2013-03-19 Violin Memory, Inc. Alignment adjustment in a tiered storage system
US8484433B2 (en) 2010-11-19 2013-07-09 Netapp, Inc. Dynamic detection and reduction of unaligned I/O operations
US9143140B2 (en) * 2011-02-15 2015-09-22 Cavium, Inc. Multi-function delay locked loop
JP2012203767A (ja) 2011-03-28 2012-10-22 Nec Commun Syst Ltd Dram型メモリシステムおよびメモリ管理制御方法
US20140022969A1 (en) * 2012-07-17 2014-01-23 Cubic Corporation Application and method of inter-frame gap reduction in low-power time-synchronized networks
US9948695B2 (en) * 2012-03-16 2018-04-17 Alcatel Lucent Enabling delivery of protected content using unprotected delivery services
US9444710B1 (en) * 2012-11-21 2016-09-13 Microsemi Storage Solutions (U.S.), Inc. System and method for frame alignment in high data rate communication systems
KR102432754B1 (ko) * 2013-10-21 2022-08-16 에프엘씨 글로벌 리미티드 최종 레벨 캐시 시스템 및 이에 대응하는 방법
US9888077B2 (en) * 2014-04-22 2018-02-06 Western Digital Technologies, Inc. Metadata based data alignment in data storage systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6122717A (en) * 1996-06-17 2000-09-19 Integrated Device Technology, Inc. Methods and apparatus for a memory that supports a variable number of bytes per logical cell and a variable number of cells
US5884055A (en) * 1996-11-27 1999-03-16 Emc Corporation Method and apparatus including a shared resource and multiple processors running a common control program accessing the shared resource

Also Published As

Publication number Publication date
US20180146039A1 (en) 2018-05-24
CN105022591A (zh) 2015-11-04
DE102015005148A1 (de) 2015-10-22
GB201506678D0 (en) 2015-06-03
GB2527409B (en) 2016-08-03
IE20150114A1 (en) 2015-11-04
GB2527409A (en) 2015-12-23
US9888077B2 (en) 2018-02-06
US10440117B2 (en) 2019-10-08
US20150304421A1 (en) 2015-10-22

Similar Documents

Publication Publication Date Title
CN104954271B (zh) Sdn网络中的数据包处理方法和装置
CN108701004A (zh) 一种数据处理的系统、方法及对应装置
CN103959255A (zh) 跨多个内存口使用选择性复制降低内存访问延迟的系统及方法
US10620841B2 (en) Transfer of object memory references in a data storage device
CN105022591B (zh) 数据存储系统中基于元数据的数据对齐
CN102833237B (zh) 一种基于桥接的无限带宽协议转换方法及系统
CN109478168A (zh) 内存访问技术及计算机系统
US20240039995A1 (en) Data access system and method, device, and network adapter
CN110442534A (zh) 用于相干消息的高带宽链路层
CN103984662A (zh) 一种读、写数据的方法及设备、存储系统
CN105868136A (zh) 处理多个命令/命令帧的电子装置及命令帧处理方法
CN106027424A (zh) 基于RapidIO交换技术的以太网交换装置
CN103985393A (zh) 一种多光盘数据并行管理方法及装置
CN105518610B (zh) 处理操作请求的存储系统、方法及装置
US10599600B2 (en) Peripheral Component Interconnect Express (PCIe) switching for multi-host computing system deployments
CN102637148A (zh) 一种基于ddr sdram的栈式数据缓存装置及其方法
US20150199298A1 (en) Storage and network interface memory share
US11275698B2 (en) Termination of non-volatile memory networking messages at the drive level
US9137167B2 (en) Host ethernet adapter frame forwarding
US20100299477A1 (en) Multi-host concurrent writing to magnetic tape
US20060277326A1 (en) Data transfer system and method
EP2779543A1 (en) Direct push operations and gather operations
US20140119371A1 (en) Systems and methods for stacking fibre channel switches with fibre channel over ethernet stacking links
CN116932451A (zh) 一种数据处理方法、主机及相关设备
CN105827681A (zh) 一种san网络下备份数据传输方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190124

Address after: American California

Patentee after: Western Digital Technologies, Inc.

Address before: Amsterdam

Patentee before: Hitachi Global Storage Technologies Netherlands B. V.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181214

Termination date: 20200422