CN107210967A - 用于优化网络传输的系统和方法 - Google Patents
用于优化网络传输的系统和方法 Download PDFInfo
- Publication number
- CN107210967A CN107210967A CN201580055035.8A CN201580055035A CN107210967A CN 107210967 A CN107210967 A CN 107210967A CN 201580055035 A CN201580055035 A CN 201580055035A CN 107210967 A CN107210967 A CN 107210967A
- Authority
- CN
- China
- Prior art keywords
- data
- transmission
- configured transmission
- determining
- network
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/36—Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/36—Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
- H04L47/365—Dynamic adaptation of the packet size
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种用于通过网络有效传输数据的系统和方法。数据源和目的地经由网络彼此连接。所述数据源被配置为将数据传输到所述目的地并确定与所述传输相关联的网络延迟。响应于确定第一传输参数可能未被优化,所述源被配置为修改所述第一传输参数并评价其对数据吞吐量的影响。只要吞吐量增加,所述源便可重复这种修改。一旦认为所述第一传输参数被优化,所述源可针对第二传输参数执行类似的过程。在各种实施例中,所述第一传输参数可对应于数据包大小,并且所述第二传输参数可对应于由所述源处理的流的数量。
Description
背景技术
技术领域
本发明涉及计算机网络领域,更具体地讲,涉及通过网络有效地传输数据。
相关领域
随着计算机存储器存储和数据带宽的增加,企业日常管理的数据量和复杂性也随之增加。大部分数据可包括电子文档、公告、任务、讨论主题等。根据这些信息的商业价值,对特定信息的访问可以是安全的和私有的。信息服务器和终端用户系统的内容可备份到备份存储中,以防止数据(尤其是被认为是关键数据的数据)丢失。在这种情况下,专用服务器和存储子系统可包括备份系统。
在大量终端用户系统上管理和支持信息技术(IT)基础设施是一个重大的挑战。一般来说,IT管理员会开发管理系统用于数据备份和数据保护、数据恢复、还原和重启、归档和长期保留,以及管理存储架构所需的日常流程和程序。这种管理系统包括用于管理计算设备上的存储系统的对策和策略。例如,备份映像可从一个位置被自动复制或迁移到另一个位置处的存储设备。这种迁移可被称为备份映像的复制。
在一些情况下,数据从备份服务器到存储设备的传输可通过光纤信道(FC)链路进行。当企业通过SAN、邮件服务器、文件服务器和大型数据库访问大量信息时,通常应用FC网络协议。此外,服务器虚拟化越来越普及。例如,虚拟机监控程序能够向来宾操作系统提供可通过光纤信道网络基础设施访问的虚拟化存储。另外,以太网协议可用于在全球距离内将信息传输到远程站点,或在集群低延迟计算环境中传输信息。例如,备份映像从一个备份服务器到第二备份服务器的迁移可利用以太网进行。
如上所述,在一些计算环境中,公司可设法通过网络将数据从一个位置复制到另一个远程位置。例如,可能需要从一个位置备份到远程位置。在这种环境中,网络延迟可能会对复制进程的性能产生严重影响。这种网络延迟可能是由于传播延迟、网络拥塞和/或处理延迟造成的。在一些情况下,延迟可能会使性能下降到所期望或所要求的程度以下。
鉴于以上情况,本领域需要用于通过网络有效传输数据的改进系统和方法。
发明内容
本发明涉及用于通过网络有效传输数据的系统和方法。
在一个实施例中,计算系统包括经由网络(诸如局域网(LAN))彼此连接的备份服务器和客户端计算机。备份服务器经由另一网络(诸如因特网)连接到至少一个存储服务器。在一个实施例中,备份数据对应于复制操作。在各种实施例中,备份服务器被配置为发起备份操作。在发起操作之后,确定将数据从备份服务器传输到目的地服务器的网络延迟。另外,可根据网络延迟的原因对可增加总吞吐量的各种传输参数进行修改。在各种实施例中,网络延迟可能是由于传播延迟、节点延迟、拥塞延迟或这些原因的组合造成的。响应于上述确定,备份服务器被配置为选择用于备份操作的多个可能传输模式中的一个。各种传输模式可具有不同的数据块大小、批量大小和/或不同的正被处理的流的数量。通过这种方式可增加总吞吐量和性能。
在各种实施例中,数据源和目的地经由网络彼此连接。数据源被配置为将数据传输到目的地并确定与传输相关联的网络延迟。响应于确定第一传输参数(诸如数据包大小)可能尚未被优化,源被配置为修改第一传输参数并评价其对数据吞吐量的影响。只要吞吐量增加或未降低,源便可重复这种修改。一旦认为第一传输参数已被优化,源可针对第二传输参数执行类似的过程。在此类实施例中,响应于确定第二传输参数(诸如正被处理的流的数量)可能尚未被优化,源被配置为修改第二传输参数并评价其对数据吞吐量的影响。只要吞吐量增加或未降低,源便可重复这种修改。
参考以下描述和附图将理解这些和其他实施例。
附图说明
图1是示出网络架构的一个实施例的一般化框图。
图2是示出计算网络的一个实施例的一般化框图。
图3是示出网络延迟的各种原因的一个实施例的一般化流程图。
图4是示出用于在网络环境中管理数据传输的方法的一个实施例的一般化框图。
图5是示出用于在网络环境中优化数据传输的方法的一个实施例的一般化流程图。
图6示出了描述用于优化网络数据传输的各种模块的系统的一个实施例。
尽管本发明容许各种修改和替代形式,但是本发明的具体实施例以举例的方式在附图中示出并且将在本文中详细描述。但应当理解,附图以及对其进行的详细描述并不旨在将本发明限制为所公开的特定形式,恰恰相反,其目的在于涵盖落入由所附权利要求限定的本发明精神和范围内的所有修改形式、等同形式和替代形式。如本申请通篇所用,词语“可”用于许可语义(即,意思是有可能),而非强制语义(即,意思是必须)。类似地,词语“包括”的意思是包括但不限于。
各种单元、电路或其他组件可被描述为“被配置为”执行一个或多个任务。在此类语境中,“被配置为”是一种广泛表述,通常是指结构“具有在操作期间执行一个或多个任务的电路”。因此,即使当单元/电路/组件当前未开启时,该单元/电路/组件也可被配置为执行任务。一般来讲,形成对应于“被配置为”的结构的电路可包括硬件电路。类似地,为了方便描述,各种单元/电路/组件可被描述为执行一个或多个任务。此类描述应被解释为包括短语“被配置为”。表述被配置为执行一个或多个任务的单元/电路/组件明确地不旨在援引35U.S.C.§112第六段对该单位/电路/组件的解释。
具体实施方式
在以下描述中,阐述了许多具体细节以提供对本文提出的方法和机制的透彻理解。但本领域普通技术人员应当认识到,可在没有这些具体细节的情况下实践各种实施例。在一些情况下,未详细示出公知的结构、组件、信号、计算机程序指令以及技术,以避免模糊本文所述的方法。应当理解,为了简单清晰地说明,附图中所示的元件不一定按比例绘制。例如,一些元件的尺寸可能相对于其他元件被放大。
本说明书包括对“一个实施例”的引用。在不同语境中出现的短语“在一个实施例中”不一定是指同一实施例。特定特征、结构或特性可以与本公开一致的任何合适方式组合。此外,如本申请通篇所用,词语“可”用于许可语义(即,意思是有可能),而非强制语义(即,意思是必须)。类似地,词语“包括”的意思是包括但不限于。
术语。以下段落提供了在本公开(包括所附权利要求)中出现的术语的定义和/或语境:
“包括”。此术语是开放式的。如在所附权利要求中所用,此术语不排除附加的结构或步骤。请考虑以下权利要求:“包括显示管线的装置”。这一权利要求不排除装置包括附加的组件(例如,处理器、存储控制器)。
“被配置为”。各种单元、电路或其他组件可被描述或声明为“被配置为”执行一个或多个任务。在此类语境中,“被配置为”用于通过表明单元/电路/组件包括在操作期间执行一个或多个任务的结构(例如,电路)来指示结构。因此,即使当指定的单元/电路/组件当前不可操作(例如,未开启)时,也可以说该单元/电路/组件被配置为执行任务。与“被配置为”语言一起使用的单元/电路/组件包括硬件,例如电路、存储器(用于存储可执行以实现操作的程序指令)等。如果表述单元/电路/组件“被配置为”执行一个或多个任务,其明确地不旨在援引35U.S.C.§112(f)对该单元/电路/组件的解释。另外,“被配置为”可包括由软件和/或固件(例如,FPGA或执行软件的通用处理器)操纵的通用结构(例如,通用电路),以便以能够执行所讨论的任务的方式操作。“被配置为”还可包括适应制造过程(例如,半导体制造设施)以制造适于实现或执行一个或多个任务的设备(例如,集成电路)。
“基于”、“响应于”。如本文所用,这些术语用于描述影响确定的一个或多个因素。此术语不排除可能影响确定的其他因素。也就是说,确定可仅基于那些因素,也可至少部分地基于那些因素。考虑短语“基于B确定A”。虽然B可以是影响确定A的因素,但是这一短语不排除还基于C确定A。在其他情况下,可仅基于B确定A。
本文描述了用于通过一个或多个网络有效传输数据的系统和方法的各种实施例。一般来说,在复制(replication)(或不同地被称为“复制(duplication)”)操作中可使用两个存储服务器。被称为发起方或发起服务器的第一存储服务器可执行备份软件应用程序。例如,根据给定的时间表,备份软件应用程序可指示发起方服务器将第一存储介质上的备份数据映像传输到目标服务器。第一存储介质可连接到发起方服务器。目标服务器可将接收的备份数据映像存储在连接到目标服务器的第二存储介质上。在一些实施例中,备份数据从发起方服务器到目标服务器的传输可利用一个或多个网络进行。这些网络可能已被发起方服务器和目标服务器中的每一者检测和初始化。
参考图1,其示出了示出网络架构100的一个实施例的一般化框图,该网络架构包括用于通过网络有效传输备份数据的能力。如图所示,网络架构100包括通过局域网180彼此互连并且连接到备份服务器150的客户端计算系统110A-110C。网络180可包括各种技术,包括无线连接、直接局域网(LAN)连接、广域网(WAN)连接(诸如因特网)、路由器和其他。网络180可包括也可以是无线的一个或多个LAN。网络180还可包括远程直接存储器访问(RDMA)硬件和/或软件、传输控制协议/互联网协议(TCP/IP)硬件和/或软件、路由器、中继器、交换机、网格和/或其他。诸如光纤信道、以太网光纤信道(FCoE)、iSCSI、Infiniband等的协议可用于网络180中。
客户端计算机系统110A-110C代表任何数量的固定或移动计算机,诸如台式个人计算机(PC)、服务器、服务器群组、工作站、膝上型计算机、手持计算机、服务器、存储服务器和/或设备、个人数字助理(PDA)、智能电话等。一般来说,客户端计算机系统110A-110C包括一个或多个处理器,这些处理器包括一个或多个处理器核。每个处理器核包括用于根据预定义的通用指令集执行指令的电路。处理器核可访问用于数据和计算机程序指令的高速缓存存储器子系统。高速缓存子系统可连接到包括随机存取存储器(RAM)和存储设备的存储器层级。
客户端计算机系统内的每个处理器核和存储器层级可连接到网络接口。客户端计算机系统110A-110C中的每一者除了包括硬件组件之外,还可包括存储在存储器层级内的基本操作系统(OS)。因此,基本OS可操作以向终端用户提供各种服务,并提供可操作以支持各种程序的执行的软件框架。另外,在一些实施例中,客户端计算机系统110A-110C中的每一者可包括用于支持虚拟机(VM)的虚拟机监控程序。如本领域技术人员所熟知,可在桌面和服务器中使用虚拟化来将软件(诸如OS)从系统的硬件完全或部分解耦。
备份服务器150可通过交换机130连接到第二网络190。网络190可以是因特网、另一外部网络或其他。作为另外一种选择或除此之外,网络180可经由利用与网络180和190两者相关联的协议的一个或多个交换机连接到网络190。网络180和备份服务器150可与用于因特网的一组通信协议(诸如,传输控制协议(TCP)和互联网协议(IP)或TCP/IP)配合。交换机130可以是TCP/IP交换机。
存储设备160A-160B可用于存储网络架构100内的数据的副本。存储设备160A-160B可包括或进一步连接到由一个或多个硬盘、磁带驱动器、服务器刀片、固态磁盘(SSD)或专用设备组成的各种存储器,并且可包括各种存储器设备,诸如RAM、闪存RAM、MEMS(微机电系统)存储器、电池支持的RAM和/或非易失性RAM(NVRAM)等。存储设备162a-162b可用于存储在设备160A-160B上存储的数据的副本。存储设备162a-162b可包括针对存储设备160A-160B所列出的一个或多个存储器设备。在一些实施例中,可在图1中的一个或多个存储设备中使用去重复,以最小化冗余数据的存储,从而降低存储需求。
在一个实施例中,网络架构100中的存储服务器120A-120B可在客户端计算系统110A-110C上创建文件的副本,以保护数据。另外,客户端计算系统110A-110B和/或备份服务器150上的备份代理可确定数据对象何时有资格被归档。服务器120A-120B可经由因特网190进行访问。类似于网络180,诸如光纤信道、以太网光纤信道(FCoE)、iSCSI等的协议可用于网络190中。
在另一实施例中,包括备份管理器158A-158B内的驱动程序的软件层可检测存储服务器120A-120B中的相应一者中的网络端口的能力。在一个实例中,该软件层可检测具有2×4千兆字节(GB)端口的光纤信道主机总线适配器(HBA)卡。另外,软件层可检测具有2×1千兆字节端口的以太网网卡。因此,软件层可将20%的备份数据流量分配给以太网端口,并将80%的备份数据流量分配给光纤信道端口。在另一个实施例中,当检测到端口断开时、当检测到新端口连接时以及当测量到给定端口具有高于第一阈值或低于第二阈值的空闲水平时,可重新调整备份数据网络流量的分配。例如,可重新分配繁忙的端口连接,使其具有较少的备份数据网络流量。可重新分配相对空闲的端口连接,使其具有较多的备份数据网络流量。
Web服务通常是经由超文本传输协议(HTTP)进行访问的应用程序编程接口(API)或Web API,并且可由存储服务器120A-120B和备份服务器150执行。Web服务支持通过网络实现互操作的机器到机器交互。Web服务具有以机器处理格式(诸如Web服务描述语言(WSDL))描述的接口。存储服务器120A-120B、备份服务器150和未示出的其他机器和服务器可通过应用程序编程接口(诸如Web服务)彼此通信。
备份服务器150和存储服务器120A-120B可包括备份应用程序158B。如针对存储服务器120B所示,该备份应用程序158A或“备份管理器”可包括存储在存储器170上并且可由处理器174执行以完成一个或多个备份操作的程序指令。备份操作可包括例如在计算机系统上或从一个计算机系统到另一个系统创建部分或完全备份;在计算机系统上或从一个计算机系统到另一个计算机系统执行还原功能(例如,部分或精细还原功能,或者完全还原功能)。备份操作还可包括其他操作,诸如复制操作。可以为数据映像确定生命周期内的备份和复制操作策略。例如,策略可包括确定分层存储中的层数、存储介质的类型和数量、要存储在给定存储介质上的映像的持续时间、一天中特定操作的阻塞时间等。
备份系统代理可辅助备份管理器158B。备份管理器158B可被配置为创建卷映像备份。在一些实施例中,备份管理器158B可接收指示备份管理器158B创建特定系统的卷映像备份的用户输入。在一些实施例中,备份管理器158B可自动创建特定系统的卷映像备份,例如备份管理器可被安排执行特定系统的定期备份。作为创建备份的一部分,备份管理器158B还可创建与备份数据(例如,目录元数据156)相关联的目录元数据(未示出)。
在备份操作期间由备份管理器158B创建的目录元数据156可包括以下中的至少一个或多个:数据名称、数据大小、数据指纹、批号以及数据类型、版本号、所有权、权限、修改时间、备份段和子段标识符、密码段和子段标识符、错误代码等。批号可用于标识在其中创建相关联的备份条目的特定备份操作。其他形式的元数据和/或标识符对于本领域普通技术人员而言将是显而易见的。目录元数据156可用于例如在稍后的时间还原浏览。例如,备份存储设备160A-160B和归档存储162a-162b中存储的信息的数据布局可存储在目录156中。
在一个实施例中,文件系统154可用于提供用于数据的存储、组织、操纵和检索的专用数据库。文件系统154可通过作为网络协议的客户端来提供对数据的访问。作为另外一种选择,文件系统154可以是虚拟的,并且仅作为用于虚拟数据的访问方法而存在。在一个实施例中,备份服务器150包括文件系统154,但是存储服务器120A-120B不包括。
除了上述之外,图1示出了可在跨网络传输数据期间利用的传输优化器152A-152B。例如,在备份服务器150跨网络190移动备份数据期间,可使用传输优化器152B。在各种实施例中,如下文将更详细地描述,传输优化器可监控与跨网络传输数据相关联的延迟。响应于各种检测到的条件,传输优化器152B可引起数据传输方式的改变,以尽量增加总吞吐量。在各种实施例中,本文关于数据传输和优化所描述的功能可以硬件、软件或这两者的组合来体现。
应当注意,在替代实施例中,客户端计算机和服务器、交换机、网络和共享存储器的数量和类型不限于图1所示的那些。一个或多个客户端可在不同时间离线操作。此外,在操作期间,各个客户端计算机的连接类型可随用户连接、断开和重新连接到网络架构100改变。
现在转到图2,其示出了两个服务器之间的通信信道的一个实施例的一般化框图。对应于图1的硬件和软件组件的那些组件用相同编号示出。一般参考存储服务器120B来描述各个组件,但应当理解,服务器150可具有类似的组件。存储介质170包括基本OS 240、一个或多个OS筛选器驱动程序和设备驱动程序250,以及一个或多个其他软件应用程序(诸如,备份应用程序158)。软件层可包括输入/输出(I/O)驱动程序和I/O API 260。应当注意,所描绘的软件组件可以常规方式从存储介质(诸如,硬盘驱动器)(未示出)被调入和调出主存储器。存储服务器120A-120B中的每一者可通过相应的光纤信道连接222A-222B中的一者分别连接到存储设备160A-160B。
单个逻辑通信信道210可包括一个或多个可用网络。例如,网络220A-220C可包括在逻辑通信信道210中。如图所示,至少光纤信道协议220A、以太网协议220B和另一网络协议220C(未指定)位于逻辑通信信道210内。对应于协议220A-220C的网络可用于数据传输,诸如用于复制操作。示出了未包括在逻辑通信信道210中的另一网络信道协议220D。
组件260中的软件(其还可包括网络代理逻辑)可在网络初始化期间和在数据包处理过程中使用。这在功能上还可包括网络协议登录步骤、主机标识符生成、数据包转换和数据包跟踪。该功能可在硬件(诸如,ASIC)中、在软件中或在这两者中实现。该功能的一部分或全部还可被放置在网络接口230A-230E中的相应一者中。该功能可包括Berkeley(BSD)套接字或套接字API。这些套接字API可允许网络访问,诸如面向连接的方法,由此TCP保持发起方存储服务器和目标存储服务器之间的信道。该面向连接的方法也可被称为面向会话的方法。Socket API识别在可经由IP连接访问的机器上运行的特定进程。通过为在机器上运行的每个服务进程赋予“端口”(用于识别进程的数值),客户端应用程序可区分文件传输服务和Web服务。因此,可将消息发送到作为通信终点的特定软件进程。
现在转到图3,其示出了描述网络延迟的各种原因的不同场景。如上所述,网络延迟增加会降低数据的总吞吐量。然而,网络延迟存在不同的原因。例如,图3中的场景302提供了传输延迟的实例。一般来说,传输延迟是指由于正在行进的距离而导致的通信延迟。换句话讲,如果给定传输速度,将花费最少的时间来穿过给定距离。在所示的实例中,第一服务器300A经由网络330连接到第二服务器310A。服务器300A经由网络330以数据包320A的形式将数据传送到服务器310A。例如,所传送的数据320A可表示备份数据、复制数据或其他。在一个实施例中,每个数据包320A具有给定的大小。另外,当存储服务器310A接收一个或多个数据包320A时,服务器310A可向服务器300A提供确认已经接收到数据的响应(例如,确认)。通过这种方式,源服务器300A能够跟踪已经发送并且由目的地服务器310A正确接收的数据。如果服务器300A没有接收到确认,那么服务器300A可重新传送还没有接收到其确认的数据包320A。此外,服务器310A有时可接收给定数据包,但是该数据包被确定为具有一个或多个错误。在这种情况下,服务器310A可利用提示错误的指示来响应服务器300A,并且服务器300A可重新传送存在问题的数据包。
在如上所述的此类实施例中,服务器300A可被配置为在给定时间帧(例如,每秒)内传送特定数量的数据包320A,然后在发送另外的数据包之前等待服务器310A的接收确认。因此,用于传送数据包320A并接收其接收确认的最小延迟是所行进的距离(例如,通信信道330的长度)和信道330的传输速度的函数(即,往返时间RTT)。例如,客户可对其数据使用基于存储区域网(SAN)的复制。例如,他们可设法在两个数据存储位置(数据存储)之间复制数据。在一个实施例中,信道330可利用两个位置之间的长距离光纤信道,并且往返时间可以是50ms。在该实施例中,传送服务器被配置为每秒传输多达20个数据包,每个数据包为64KB(例如,可使用TCP协议)。因此,吞吐量将为大约20×64KB或1.3MB/秒。然而,如果接收服务器310A能够支持300MB/秒,那么性能小于其能力的1/200,这种情况可被认为是不可接受的。
又如,图3中的场景304示出了由于网络拥塞而导致的网络延迟。一般来说,网络拥塞指是指由于大量数据穿过通信信道而导致通信延迟的情况。在所示的实例中,服务器300B经由信道330将数据包320B传送到服务器310。如实例中所示,来自其他位置的数据包332和334也经由网络/信道330进行传送。这些其他数据包源可以是连接到网络330的其他设备、连接到网络330的其他网络,或者其他。在任何情况下,可以看到的是网络330上的数据包数量相对较大。在这种情况下,从服务器300B传送的数据包的往返时间可增加,因为它们肯定会与所有其他数据包332、334竞争带宽。换句话讲,给定数据包的服务必须等待一段时间,这段时间用于要服务的给定数据包之前的其他数据包。此“等待”时段导致延迟增加。
最后,图3示出了描绘由于处理而导致的网络延迟的第三场景306。一般来说,处理延迟是指由于接收设备处理所接收的数据所花费的时间而导致的延迟。在这种情况下,服务器300C经由网络330将数据包320C传送到服务器310C。服务器310C被示为已经接收和缓冲了许多尚未被处理的数据包350。在这种情况下,从服务器300C到达的数据包320C不会被立即处理,而是会在该数据包之前的其他数据包之后被缓冲和处理。接收服务器310C内的这种“处理”延迟增加了生成确认并将其传送到服务器300C所花费的时间。因此,由于增加了处理时间,往返时间也增加。应当理解,图3所示的每种场景可以各种组合在任何给定时间存在。
现在转到图4,其示出了用于确定网络延迟的原因以及管理数据的传输的方法400的一个实施例的一般化流程图。如上所述,可跨网络或其他通信信道将数据从源设备传输到目的地设备。此类数据可对应于备份数据、镜像数据或者从一个位置到另一个位置的任何其他数据传输。在所示的实例中,开始传输数据(框402)。在传输数据之后,确定网络延迟。例如,可根据以下时间确定延迟:从给定数据从源(例如,数据包)传输的时间,到源接收到目的地对数据接收表示某种确认的时间(例如,往返时间)。在各种实施例中,可针对单个数据包、多个数据包、数据包块(例如,20个数据包组成的块)或其他来确定延迟。作为另外一种选择或除此之外,可针对给定量的数据(例如,给定数量的数据包)来确定平均延迟。用于确定延迟的许多可能性是可能的,并且可以设想这些可能性。
在确定延迟之后,确定延迟是否大于期望值(框406)。例如,源可被编程为具有一个或多个值或阈值,可将这些值或阈值与所确定的延迟进行比较。根据所确定的延迟的比较结果,可启动优化过程。在一个实施例中,如果延迟满足给定条件(例如,大于某一阈值),那么可启动优化过程(例如,继续到框408)。但是,如果延迟不满足此类条件,那么该方法可返回到重复延迟检测的框404。在其他实施例中,源可以是可编程的,以简单地停止给定数据传输工作的优化过程,或者在重复上述延迟检测和比较之前等待一段给定时间。
如果延迟大于期望值(框406),那么可探测延迟的原因(框408)。在各种实施例中,可推断而不是明确地确定网络延迟的实际原因。例如,根据网络延迟响应于传输数据方式的变化如何变化,可推断延迟的某些原因。例如,如果数据吞吐量随着数据传输速率的增加而增加,那么可推断延迟主要是传输延迟(即,传播延迟)之一。这可能是真实的,因为如果数据传输速率增加,那么处理或拥塞相关的延迟一般也会增加。无论延迟的真正原因是什么,都可选择性地试图优化数据传输参数,以改进整体性能。通过更改传输参数来探测延迟之后,采用新的传输参数(框410)并将其用于传输数据(框412)。此类参数可包括数据包大小、被处理的流的数量,或者不改变数据传输速率的其他参数。在本讨论中,一般讨论两个参数:数据包大小和流的数量。但可使用任何其他数量的参数。另外,尽管以下讨论描述了以给定顺序更改参数,但是可以不同于所描述的顺序来更改参数。许多此类替代形式是可能的,并且可以设想这些替代形式。
在图4的实例中,框420一般对应于设法改进整体性能的优化过程。一般来说,改进的性能对应于数据总吞吐量的增加。图5示出了用于执行此类优化的方法500的一个实施例。在所示的实施例中,检测网络延迟(框502)。如所讨论的,这可对应于平均的特定数据包或其他。在确定网络延迟之后,在以数据包传输数据的实施例中,确定是否可增加数据包大小。根据传输协议,可利用各种参数来调整数据包的大小或以其他方式缩放在给定时间段内传送的数据量。
在增加数据包大小(框506)之后,评价网络延迟。具体地讲,响应于数据包大小的变化来观察网络延迟,以查看网络延迟是增加、降低还是不变。如果网络延迟降低(框510),那么随着吞吐量增加但延迟不增加,可认为数据包大小的改变是所期望的。在这种情况下,该方法可返回到框504,以考虑是否可进一步增加数据包大小。如果在框510中延迟没有降低,那么确定延迟是否增加或保持大致相同(不变)。如果延迟没有增加(即,延迟大致不变),那么该方法可如之前那样继续框504。但是,如果延迟响应于大小参数改变而增加(框512),那么可认为该改变是不期望的,并且可还原先前的数据包大小(框514)。在各种实施例中,并非立即还原先前的数据包大小(框514),而是确定总吞吐量是否会随着更大的数据包大小而增加,而不管增加的延迟。如果是,那么可保留当前的数据包大小。无论是否简单地根据吞吐量还原先前的数据包大小,此类选项均可在源处是可编程的。另外,在一些实施例中,该方法可返回到框504(以虚线示出),以指示可尝试甚至更大尺寸的数据包,而不管增加的延迟。这种方法可在仍然可增加吞吐量的情况下使用。在其他实施例中,该方法可简单地从框514移动到框516。当有效地认为数据包大小已被优化时,移动到框516。
在框504中,如果不能增加数据包大小(例如,其已经达到最大大小或者不能以其他方式增加),那么可确定是否可增加当前在源处正被处理的流的数量。例如,在一些实施例中,可在源处处理给定的流。当由源传输给定流的数据时,从目的地接收某种确认存在特定延迟。在一些实施例中,源可发送给定流的给定数据量(例如,20个数据包),并且在发送更多数据之前等待确认。为了增加吞吐量,源可在给定时间处理更多的流。例如,当等待对应于第一数据流的确认时,源可处理第二流并在等待时传输数据。通过这种方式,可更有效地利用源等待确认所花费的时间。但是,简单地增加流的数量而不考虑其对网络延迟的影响可能并不是一种好的做法。因此,图5示出了如何基于网络延迟评价来优化流的数量。
在图5的实例中,如果可以增加流的数量(框516),那么便增加流的数量(框518),并且确定其对网络延迟的影响的评价(框522)。如果延迟减小,那么随着吞吐量增加,可通过返回到框516来继续该过程。在这种情况下,可能并非流的数量增加导致了延迟降低。但是,由于吞吐量增加,所以认为该方法是成功的。如果延迟没有降低(框522)并且也没有增加(框524),那么吞吐量增加,但不恶化延迟。在这种情况下,更改参数(即,流的数量)可被认为是成功的,并且可通过返回到框516来重复。然而,如果延迟增加(框526),那么更改参数可被认为不成功,并且还原先前的值。如关于框514所讨论的,并非简单地还原先前的参数值,而是可确定总吞吐量以查看总吞吐量是否增加,而不管增加的延迟。如果吞吐量增加,那么可保留新参数。在一些实施例中,如果在不管增加的延迟的情况下,吞吐量增加,那么框514和/或526可返回以尝试增加数据包大小和/或流的数量。
在图5的方法中的某一处,确定更改参数不能提高吞吐量(即,认为流的数量是优化的),该过程可在框528处完成。在各种实施例中,优化过程可简单地停止当前数据传输,或者可周期性地重试。作为另外一种选择,如果检测到网络延迟达到特定阈值,那么可重新访问。许多替代实施例是可能的,并且可以设想这些替代实施例。在一些实施例中,源可具有给定源的能力的知识(例如,其能够处理多少吞吐量),并且设法考虑利用该能力来优化数据传输。例如,如果已知目的地仅能够处理100Mbsec的数据吞吐量,那么源不会继续试图增加该吞吐量以上的吞吐量。可以提前知道目的地能力的知识(例如,目标/目的地是同一企业的一部分),或者可以建立在源和目的地之间交换该信息的通信协议。在一些情况下,目的地可能具有更大的吞吐量,但是由于其他活动,希望将数据传输限制为小于其能力的某个值。这些和其他实施例是可能的,并且可以设想这些和其他实施例。
现在转到图6,其示出了经由网络670将数据源610连接到目的地680的系统的一个实施例。在所示的实例中,数据源610被示为包括用于存储程序指令的存储介质620(例如,易失性和/或非易失性)。例如,类似于图2,存储介质被示为包括与操作系统240、驱动程序250和260以及备份应用程序158相对应的程序和/或指令。还示出了与前述描述相关联的各种程序模块。例如,示出了被配置为跨网络670传输和接收数据的模块630,示出了被配置为检测或确定与数据传输相关联的网络延迟的网络延迟模块640,并且示出了被配置为修改传输参数(诸如,数据包大小、被处理的流的数量或其他)的传输参数修改模块650。还示出了传输参数1-N,这些参数一般表示影响数据传输的存储参数,诸如数据包大小、流的数量等。应当注意,目的地680可被配置有被示为包括在源中的一个或多个组件和/或模块。另外,在各种实施例中,上文被描述为由源执行的功能中的一些可由目的地执行。例如,目的地可提供建议的参数修改。许多此类替代形式是可能的,并且可以设想这些替代形式。
应当注意,上述实施例可包括软件。在此类实施例中,表示所述系统和/或方法的程序指令和/或数据库(两者都可被称为“指令”)可被传送或存储到计算机可读介质上。一般来说,计算机可访问存储介质可包括在使用期间可由计算机访问以向计算机提供指令和/或数据的任何存储介质。例如,计算机可访问存储介质可包括以下存储介质:诸如磁介质或光介质(例如,固定磁盘或可移动磁盘)、磁带、CD-ROM或DVD-ROM、CD-R、CD-RW、DVD-R、DVD-RW或Blu-Ray。存储介质还可包括易失性或非易失性存储介质,诸如RAM(例如,同步动态RAM(SDRAM)、双倍数据速率(DDR、DDR2、DDR3等)SDRAM、低功率DDR(LPDDR2等)、RambusDRAM(RDRAM)、静态RAM(SRAM)等)、ROM、闪存、可经由外围接口(诸如,通用串行总线(USB)接口)访问的非易失性存储器(例如,闪存)等。存储介质可包括微机电系统(MEMS),以及可经由通信介质(诸如,网络和/或无线链路)访问的存储介质。
在各种实施例中,本文所述的方法和机制中的一个或多个部分可形成云计算环境的一部分。在此类实施例中,可根据一个或多个不同模型,通过因特网提供资源作为服务。这些模型可包括基础设施即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。在IaaS中,计算机基础设施作为服务提供。在这种情况下,计算设备通常由服务提供商拥有和操作。在PaaS模型中,开发人员用来开发软件解决方案的软件工具和底层设备可作为服务提供,并由服务提供商托管。SaaS通常包括服务提供商许可软件作为按需服务。服务提供商可托管软件,或者可在给定时间段内将软件部署到客户。上述模型的许多组合是可能的,并且可以设想这些组合。
虽然已经相当详细地描述了上述实施例,但是一旦完全理解上述公开内容后,许多变型形式和修改形式对于本领域技术人员而言将变得显而易见。旨在将所附权利要求解释为包括所有这些变型形式和修改形式。
Claims (20)
1.一种用于优化计算机网络中数据传输的方法,所述方法包括:
确定与经由网络从源到目的地的数据传输相关联的网络延迟;
响应于确定用于在所述网络上传输数据的第一传输参数未被优化:
修改所述第一传输参数;
使用经修改的所述第一传输参数传输数据;并且
响应于确定与使用所述第一传输参数传输数据相关联的网络延迟满足第一条件,认为所述第一传输参数被优化;
响应于确定所述第一参数被优化:
修改用于在所述网络上传输数据的第二传输参数;
使用经修改的所述第二传输参数传输数据;并且
响应于确定与使用所述第二传输参数传输数据相关联的网络延迟满足第二条件,确定所述第二传输参数被优化。
2.根据权利要求1所述的方法,其中响应于确定与使用所述第一传输参数传输数据相关联的网络延迟不满足所述第一条件,所述方法还包括重复以下过程:修改所述第一传输参数,使用经修改的所述第一传输参数传输数据,并且确定与使用经修改的所述第一传输参数传输数据相关联的网络延迟。
3.根据权利要求2所述的方法,其中响应于确定与使用所述第二传输参数传输数据相关联的网络延迟不满足所述第二条件,所述方法还包括重复以下过程:修改所述第二传输参数,使用经修改的所述第二传输参数传输数据,并且确定与使用经修改的所述第二传输参数传输数据相关联的网络延迟。
4.根据权利要求1所述的方法,其中所述第一参数对应于数据包大小,并且所述第二参数对应于由所述源处理的流的数量。
5.根据权利要求4所述的方法,其中所述第一条件包括确定所述数据包大小已经达到最大数据包大小或者不能在不降低吞吐量的情况下增加。
6.根据权利要求5所述的方法,其中所述第二条件包括确定流的数量已经达到最大数量或者不能在不降低吞吐量的情况下增加。
7.根据权利要求1所述的方法,其中确定网络延迟包括将给定数据从所述源传送到所述目的地,在所述源处接收来自于所述目的地对所述给定数据的确认,并且确定在传送所述给定数据和接收所述确认之间所耗费的时间量。
8.一种计算系统,包括:
第一计算设备;
第二计算设备;以及
将所述第一计算设备连接到所述第二计算设备的网络;
其中所述第一计算设备被配置为:
确定与经由所述网络从所述第一计算设备到所述第二计算设备的数据传输相关联的网络延迟;
响应于确定用于在所述网络上传输数据的第一传输参数未被优化:
修改所述第一传输参数;
使用经修改的所述第一传输参数传输数据;并且
响应于确定与使用所述第一传输参数传输数据相关联的网络延迟满足第一条件,认为所述第一传输参数被优化;
响应于确定所述第一参数被优化:
修改用于在所述网络上传输数据的第二传输参数;
使用经修改的所述第二传输参数传输数据;并且
响应于确定与使用所述第二传输参数传输数据相关联的网络延迟满足第二条件,确定所述第二传输参数被优化。
9.根据权利要求8所述的计算系统,其中响应于确定与使用所述第一传输参数传输数据相关联的网络延迟不满足所述第一条件,所述第一计算设备被配置为重复以下过程:修改所述第一传输参数,使用经修改的所述第一传输参数传输数据,并且确定与使用经修改的所述第一传输参数传输数据相关联的网络延迟。
10.根据权利要求9所述的计算系统,其中响应于确定与使用所述第二传输参数传输数据相关联的网络延迟不满足所述第二条件,所述第一计算设备被配置为重复以下过程:修改所述第二传输参数,使用经修改的所述第二传输参数传输数据,并且确定与使用经修改的所述第二传输参数传输数据相关联的网络延迟。
11.根据权利要求8所述的计算系统,其中所述第一参数对应于数据包大小,并且所述第二参数对应于由所述第一计算设备处理的流的数量。
12.根据权利要求11所述的计算系统,其中所述第一条件包括确定所述数据包大小已经达到最大数据包大小或者不能在不降低吞吐量的情况下增加。
13.根据权利要求12所述的计算系统,其中所述第二条件包括确定所述流的数量已经达到最大数量或者不能在不降低吞吐量的情况下增加。
14.根据权利要求8所述的计算系统,其中为了确定网络延迟,所述第一计算设备被配置为将给定数据传送到所述第二计算设备,接收来自于所述第二计算设备对所述给定数据的确认,并且确定在传送所述给定数据和接收所述确认之间所耗费的时间量。
15.一种存储程序指令的非暂态计算机可读存储介质,其中所述程序指令可执行以:
确定与经由网络从源到目的地的数据传输相关联的网络延迟;
响应于确定用于在所述网络上传输数据的第一传输参数未被优化:
修改所述第一传输参数;
使用经修改的所述第一传输参数传输数据;并且
响应于确定与使用所述第一传输参数传输数据相关联的网络延迟满足第一条件,认为所述第一传输参数被优化;
响应于确定所述第一参数被优化:
修改用于通过所述网络传输数据的第二传输参数;
使用经修改的所述第二传输参数传输数据;并且
响应于确定与使用所述第二传输参数传输数据相关联的网络延迟满足第二条件,确定所述第二传输参数被优化。
16.根据权利要求15所述的非暂态计算机可读存储介质,其中响应于确定与使用所述第一传输参数传输数据相关联的网络延迟不满足所述第一条件,所述程序指令可执行以重复以下过程:修改所述第一传输参数,使用经修改的所述第一传输参数传输数据,并且确定与使用经修改的所述第一传输参数传输数据相关联的网络延迟。
17.根据权利要求16所述的非暂态计算机可读存储介质,其中响应于确定与使用所述第二传输参数传输数据相关联的网络延迟不满足所述第二条件,所述程序指令可执行以重复以下过程:修改所述第二传输参数,使用经修改的所述第二传输参数传输数据,并且确定与使用经修改的所述第二传输参数传输数据相关联的网络延迟。
18.根据权利要求15所述的非暂态计算机可读存储介质,其中所述第一参数对应于数据包大小,并且所述第二参数对应于由所述源处理的流的数量。
19.根据权利要求18所述的非暂态计算机可读存储介质,其中所述第一条件包括确定所述数据包大小已经达到最大数据包大小或者不能在不降低吞吐量的情况下增加。
20.根据权利要求19所述的非暂态计算机可读存储介质,其中所述第二条件包括确定所述流的数量已经达到最大数量或者不能在不降低吞吐量的情况下增加。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/524,656 | 2014-10-27 | ||
US14/524,656 US9992118B2 (en) | 2014-10-27 | 2014-10-27 | System and method for optimizing transportation over networks |
PCT/US2015/057429 WO2016069503A1 (en) | 2014-10-27 | 2015-10-27 | System and method for optimizing transportation over networks |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107210967A true CN107210967A (zh) | 2017-09-26 |
CN107210967B CN107210967B (zh) | 2021-07-20 |
Family
ID=54541197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580055035.8A Active CN107210967B (zh) | 2014-10-27 | 2015-10-27 | 用于优化网络传输的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9992118B2 (zh) |
EP (1) | EP3213472B1 (zh) |
CN (1) | CN107210967B (zh) |
WO (1) | WO2016069503A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109257246A (zh) * | 2018-08-09 | 2019-01-22 | 华为技术有限公司 | 检测时延的方法、装置及系统 |
CN111033619A (zh) * | 2017-10-23 | 2020-04-17 | 美光科技公司 | 裸片上终止架构 |
CN111147404A (zh) * | 2018-11-05 | 2020-05-12 | 丹佛斯动力系统公司 | 用于优化设备之间的数据流的方法和系统 |
CN111221478A (zh) * | 2020-01-13 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 数据写入、读取方法、装置、设备及机器可读存储介质 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10044835B1 (en) | 2013-12-11 | 2018-08-07 | Symantec Corporation | Reducing redundant transmissions by polling clients |
US20160140191A1 (en) * | 2014-11-19 | 2016-05-19 | Datos IO Inc. | Method and apparatus for the storage and retrieval of time stamped blocks of data |
US9774539B1 (en) * | 2015-06-15 | 2017-09-26 | Veritas Technologies Llc | Systems and methods for reconfiguring data flow across network channels |
US9954979B2 (en) * | 2015-09-21 | 2018-04-24 | International Business Machines Corporation | Protocol selection for transmission control protocol/internet protocol (TCP/IP) |
US9626120B1 (en) * | 2015-12-28 | 2017-04-18 | Veritas Technologies | Systems and methods for dynamically adjusting batch request sizes |
CN106487896B (zh) * | 2016-10-14 | 2019-10-08 | 北京百度网讯科技有限公司 | 用于处理远程直接内存访问请求的方法和装置 |
US10855556B2 (en) | 2018-07-25 | 2020-12-01 | Netapp, Inc. | Methods for facilitating adaptive quality of service in storage networks and devices thereof |
US11327847B2 (en) * | 2018-10-18 | 2022-05-10 | Nokia Solutions And Networks Oy | Methods, devices, systems, and computer-readable mediums for reduced recovery point objective duration |
US10938877B2 (en) * | 2018-11-30 | 2021-03-02 | Xaptum, Inc. | Optimizing data transmission parameters of a proprietary network |
US11451485B2 (en) * | 2020-03-27 | 2022-09-20 | At&T Intellectual Property I, L.P. | Dynamic packet size adaptation to improve wireless network performance for 5G or other next generation wireless network |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1860766A (zh) * | 2003-10-15 | 2006-11-08 | 株式会社Ntt都科摩 | 控制多个通信层的操作的设备和方法 |
US7787447B1 (en) * | 2000-12-28 | 2010-08-31 | Nortel Networks Limited | Voice optimization in a network having voice over the internet protocol communication devices |
EP2398268A1 (en) * | 2010-06-16 | 2011-12-21 | Alcatel Lucent | Method of setting a plurality of parameters in a wireless telecommunication network |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5848352A (en) | 1995-04-26 | 1998-12-08 | Wink Communications, Inc. | Compact graphical interactive information system |
US5668810A (en) | 1995-04-26 | 1997-09-16 | Scientific-Atlanta, Inc. | Data transmission protocol method and apparatus |
EP0760563A1 (en) | 1995-08-29 | 1997-03-05 | ALCATEL BELL Naamloze Vennootschap | Multiframe structure and handling protocol for a telecommunication network |
US5727159A (en) | 1996-04-10 | 1998-03-10 | Kikinis; Dan | System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers |
US5987518A (en) | 1996-10-28 | 1999-11-16 | General Instrument Corporation | Method and apparatus for communicating internet protocol data over a broadband MPEG channel |
US6263437B1 (en) | 1998-02-19 | 2001-07-17 | Openware Systems Inc | Method and apparatus for conducting crypto-ignition processes between thin client devices and server devices over data networks |
US6659860B1 (en) | 1998-05-12 | 2003-12-09 | Sony Computer Entertainment Inc. | Game device, game machine operation device and game system which employ a half-duplex serial communication system and game device two-way communication method |
US6397259B1 (en) | 1998-05-29 | 2002-05-28 | Palm, Inc. | Method, system and apparatus for packet minimized communications |
CA2346891A1 (en) | 1998-10-19 | 2000-04-27 | General Instrument Corporation | Television set-top box with configurable functionality |
US6192082B1 (en) | 1998-11-13 | 2001-02-20 | Compaq Computer Corporation | Digital television data format conversion with automatic parity detection |
US6662223B1 (en) * | 1999-07-01 | 2003-12-09 | Cisco Technology, Inc. | Protocol to coordinate network end points to measure network latency |
BR0012596A (pt) | 1999-07-20 | 2004-06-22 | United Video Properties Inc | Sistemas de televisão interativa com coleta de dados |
US20030115447A1 (en) | 2001-12-18 | 2003-06-19 | Duc Pham | Network media access architecture and methods for secure storage |
US8335915B2 (en) | 2002-05-14 | 2012-12-18 | Netapp, Inc. | Encryption based security system for network storage |
US7526085B1 (en) | 2004-07-13 | 2009-04-28 | Advanced Micro Devices, Inc. | Throughput and latency of inbound and outbound IPsec processing |
US7782789B2 (en) | 2004-09-23 | 2010-08-24 | Harris Corporation | Adaptive bandwidth utilization for telemetered data |
US7428306B2 (en) | 2006-04-18 | 2008-09-23 | International Business Machines Corporation | Encryption apparatus and method for providing an encrypted file system |
US20090125726A1 (en) | 2007-11-14 | 2009-05-14 | Mcm Portfolio Llc | Method and Apparatus of Providing the Security and Error Correction Capability for Memory Storage Devices |
US8041033B2 (en) | 2008-04-10 | 2011-10-18 | Red Hat, Inc. | Cipher feedback with variable block chaining |
US8228911B2 (en) * | 2008-09-19 | 2012-07-24 | Honeywell International Inc. | Enhanced data link communication over iridium |
CN101459619B (zh) | 2009-01-05 | 2011-01-05 | 杭州华三通信技术有限公司 | 一种在网络中对报文传输的处理方法和装置 |
US8122140B2 (en) * | 2009-03-27 | 2012-02-21 | Wyse Technology Inc. | Apparatus and method for accelerating streams through use of transparent proxy architecture |
US20100274772A1 (en) | 2009-04-23 | 2010-10-28 | Allen Samuels | Compressed data objects referenced via address references and compression references |
US8713300B2 (en) | 2011-01-21 | 2014-04-29 | Symantec Corporation | System and method for netbackup data decryption in a high latency low bandwidth environment |
US8838787B2 (en) * | 2011-11-30 | 2014-09-16 | Harman International Industries, Incorporated | System for optimizing latency in an AVB network |
US9247448B2 (en) | 2012-08-27 | 2016-01-26 | Qualcomm Incorporated | Device and method for adaptive rate multimedia communications on a wireless network |
-
2014
- 2014-10-27 US US14/524,656 patent/US9992118B2/en active Active
-
2015
- 2015-10-27 WO PCT/US2015/057429 patent/WO2016069503A1/en active Application Filing
- 2015-10-27 EP EP15794390.3A patent/EP3213472B1/en active Active
- 2015-10-27 CN CN201580055035.8A patent/CN107210967B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7787447B1 (en) * | 2000-12-28 | 2010-08-31 | Nortel Networks Limited | Voice optimization in a network having voice over the internet protocol communication devices |
CN1860766A (zh) * | 2003-10-15 | 2006-11-08 | 株式会社Ntt都科摩 | 控制多个通信层的操作的设备和方法 |
EP2398268A1 (en) * | 2010-06-16 | 2011-12-21 | Alcatel Lucent | Method of setting a plurality of parameters in a wireless telecommunication network |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111033619A (zh) * | 2017-10-23 | 2020-04-17 | 美光科技公司 | 裸片上终止架构 |
CN111033619B (zh) * | 2017-10-23 | 2021-07-23 | 美光科技公司 | 裸片上终止架构 |
CN109257246A (zh) * | 2018-08-09 | 2019-01-22 | 华为技术有限公司 | 检测时延的方法、装置及系统 |
CN111147404A (zh) * | 2018-11-05 | 2020-05-12 | 丹佛斯动力系统公司 | 用于优化设备之间的数据流的方法和系统 |
CN111221478A (zh) * | 2020-01-13 | 2020-06-02 | 阿里巴巴集团控股有限公司 | 数据写入、读取方法、装置、设备及机器可读存储介质 |
CN111221478B (zh) * | 2020-01-13 | 2023-06-13 | 阿里巴巴集团控股有限公司 | 数据写入、读取方法、装置、设备及机器可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2016069503A1 (en) | 2016-05-06 |
US9992118B2 (en) | 2018-06-05 |
CN107210967B (zh) | 2021-07-20 |
EP3213472A1 (en) | 2017-09-06 |
EP3213472B1 (en) | 2018-08-15 |
US20160119238A1 (en) | 2016-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107210967A (zh) | 用于优化网络传输的系统和方法 | |
JP6564960B2 (ja) | ネットワーキング技術 | |
US10735509B2 (en) | Systems and methods for synchronizing microservice data stores | |
CN111352583A (zh) | 具有发起方模式的固态驱动 | |
US20130024421A1 (en) | File storage system for transferring file to remote archive system | |
TW201211895A (en) | Migrating virtual machines among networked servers upon detection of degrading network link operation | |
JP2008250767A (ja) | 分散ストレージシステム | |
CN105706056A (zh) | 现代硬件上的故障域 | |
CN109327332B (zh) | 一种Ceph云存储下基于LIO的iSCSI GateWay高可用实现方法 | |
US8060773B1 (en) | Systems and methods for managing sub-clusters within a multi-cluster computing system subsequent to a network-partition event | |
US9460182B2 (en) | Networking-assisted input/output order preservation for data replication | |
US8621260B1 (en) | Site-level sub-cluster dependencies | |
JP6507274B2 (ja) | スケーラブルネットワークバッファ管理のためのシステム及び方法 | |
US11966294B2 (en) | Journal barrier consistency determination | |
US7756975B1 (en) | Methods and systems for automatically discovering information about a domain of a computing device | |
CN104468674A (zh) | 数据迁移方法及装置 | |
US10892990B1 (en) | Systems and methods for transmitting data to a remote storage device | |
US10042682B2 (en) | Copy message from application buffer to send buffer within kernel | |
US11537312B2 (en) | Maintaining replication consistency during distribution instance changes | |
CN105573935A (zh) | 调平io |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |