公开了用于利用顺序号的数据通信协调的方法和系统。描述了用于客户端-服务器通信的顺序号,以控制客户端对服务器资源的使用。服务器授予客户端的信用,该客户端消耗信用以向服务器发送每个命令。每个信用对应一顺序号,一组顺序号构成有效命令窗口。服务器强制实施对于每个接收到的命令,该命令包括有效命令窗口内的一顺序号,且该号码不曾被另一命令所使用。服务器还可以保持最大窗口大小,以便具有信用的客户端不能发送具有超过最大顺序号的顺序号的命令。当结合于数据通信协议中时,会产生服务质量、对抗服务拒绝、信息丢失的检测、服务器资源的划分、安全的信息签名、以及其他许多益处。
【技术实现步骤摘要】
本申请涉及数据通信协调,尤其涉及利用顺序号的数据通信协调。
技术介绍
今天仍然使用的许多数据通信协议,如SMB (服务器信息块)协议,是在计算机资源有很大不同的时代发展起来的,例如,那时网络带宽一般是有限的且存储器非常珍贵。结果是,当在当代网络中使用时,这种协议会限制总体性能。例如,因为是在存储器有限的时候设计的,使用的缓冲器很小,则要求更多的往返行程来传递大量数据。而且,现有的SMB协议还有随时间而变得明显的其他限制。例如,现有的SMB协议易受拒绝服务攻击的影响;该协议的设计使得它很难对抗这些攻击。同样地,现在没有用于执行类似服务质量的操作,这是由于例如受信任的客户获得与不受信任的客户相同的服务器资源。总而言之,尽管是频繁使用且有价值的协议,但是当用于当代网络资源时,现有的SMB版本还是不够理想。
技术实现思路
简要的说,本专利技术的各个方面针对对客户端一服务器通信使用顺序号,如结合在数据通信协议中,以控制客户端对服务器资源的使用。本专利技术的各个方面将顺序号的使用应用于排序并非重要的协议,但却提供服务质量、服务拒绝对抗、服务器资源的划分、安全信息签名、以及其他许多益处。服务器授予客户端信用(credit),客户端使用信用用于向服务器发送每条命令。每个信用与一顺序号对应,一组顺序号构成有效命令窗口。服务器强制实施对于每个接收到的命令,该命令包括有效命令窗口内的一顺序号,且该顺序号未曾被另一个命令所使用。服务器还可保持最大窗口大小,以便即使具有信用的客户端也不能发送顺序号超过与最大窗口大小对应的最大顺序号的命令。一般来说,一旦从客户端接收命令,服务器验证顺序号是否在窗口内且之前未被使用。然后,服务器从客户端可用的那些顺序号中除去相应的顺序号,因此消耗一个信用。然后,服务器确定是否授予该客户端一个或多个其他的信用。因此,提供了一种通过包含对于授予客户端的每个信用唯一号码的有效操作窗口,控制授予客户端的信用数,从而限制对服务器资源的使用的机制。一种实施机制确保允许对接收到的命令的进一步的服务器操作,该命令包括有效操作窗口内的一顺序号,且该唯一号码未被另一个命令所使用。一种分配机制控制授予客户的信用和有效操作窗口内的唯一号码。当结合附图考虑时,从下面的详细说明中,本专利技术的其他优点会更为明显。附图说明本专利技术通过例子来说明,且不受伴随的附图的限制,附图中相同的标号指示相同的元件,并且其中图I示出其中可以结合本专利技术的各个方面的通用计算环境的说明性的例子。图2是根据本专利技术的各个方面,表示其中客户端与服务器通信的示例性网络环境 的框图。图3到图13是根据本专利技术的各个方面,为使用顺序号而保持的客户和服务器的数据的表不。具体实施例示例性的操作环境图I示出本专利技术可以实现于其中的适合的计算系统环境100的例子。计算系统环境100只是适合的计算环境的一个例子,并不意图提出对本专利技术的使用范围或功能的任何限制。计算环境100也不应解释为对有关示例性的操作环境100中描述的一个元件或元件组合有任何依赖或要求。本专利技术在许多其他通用或专用的计算系统环境或配置中是可操作的。适合本专利技术使用的熟知的计算系统、环境、和/或配置的例子包括,但不限于个人计算机、服务器计算机、手提或膝上设备、写字板设备、多处理器系统、基于微处理器的系统、机顶盒、可编程的消费电子产品、网络PC、微型机、大型机、包括以上任何一种系统或设备的分布式计算环境坐坐寸寸O本专利技术的可在计算机可执行指令的一般上下文中描述,如计算机可执行的程序模块。一般来说,程序模块包括例程、程序、对象、组件、数据结构等等,它们执行特定的任务或实现特定的抽象数据类型。本专利技术也可以在分布式计算环境中实施,其中由通过通信网络链接的远程处理设备来执行任务。在分布式计算环境中,程序模块可位于包括存储器存储设备的本地和/或远程计算机存储介质中。参考图1,用于实现本专利技术的示例性的系统包括计算机110形式的通用计算设备。计算机110的组件包括,但不限于,处理单元120、系统存储器130、以及连接各种系统组件,包括把系统存储器连接到处理单元120的系统总线121。系统总线121可为几种类型的总线结构的任何一种,包括存储器总线或存储器控制器、外围总线、以及使用任何一种总线结构的局部总线。作为例子,而非限制,这些结构包括工业标准结构(ISA)总线、微通道结构(MCA)总线、增强型ISA总线、视频电子标准协会(VESA)局部总线、以及外围组件互联(PCI)总线,也称为Mezzanine总线。计算机110 —般包括各种计算机可读介质。计算机可读介质可为计算机110可访问的任何可用介质,且包括易失和非易失的介质、以及可移动的和不可移动的介质。作为例子,而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括易失和非易失的介质、可移动的和不可移动的介质,这些介质以用于信息存储的任何方法或技术,比如计算机可读指令、数据结构、程序模块或其它数据来实现。计算机存储介质包括但不限于,RAM、ROM、EEPR0M、闪存或其它存储技术、CDR0M、数字视频盘(DVD)或其它光存储器、磁性磁带、磁性录音带、磁性磁盘存储器或其它的磁性存储设备,或可用于存储需要的信息并可由计算机110访问的任何其它介质。通信介质一般包括计算机可读指令、数据结构、程序模块或在一个调制数据信号,如载波或其它传输机制中的其它数据,且包括任何信息传递介质。术语“调制数据信号”意思是以编码信号中的信息的方式设置或改变其一个或多个特征的信号。作为例子,而非限制,通信介质包括,如有线网络或直接线缆连接的有线介质,以及如声频、RF、红外线和其它无线介质。以上的任何组合也应该包括在计算机可读介质的范围内。系统存储器130包括,以如只读存储器(ROM) 131和随机存取存储器(RAM) 132的 易失和非易失的存储器形式的计算机存储介质。基本输入/输出系统133 (BIOS)—般存储在ROM 131内,它包括如启动时帮助在计算机110内的元件间传输信息的基本例程。RAM132 一般包含可由处理单元120即时存取和/或目前在操作的数据和/或程序模块。作为例子而非限制,图I说明了操作系统134、应用程序135、其它程序模块136以及程序数据137。计算机110还包括其它可移动/不可移动、易失/非易失的计算机存储介质。仅仅作为例子,图I示出了从不可移动、非易失的磁性介质读取或向其中写入的硬盘驱动器141、从可移动的、非易失的磁性磁盘152读取或向其中写入的磁盘驱动器151、以及用于向如CD ROM或其它光学介质的可移动、非易失的光学介质156读写的光盘驱动器155。其它能用于示例性的操作环境的可移动/不可移动、易失/非易失的计算机存储介质包括但不限于磁性盒式磁带、闪存卡、数字多用途盘、数字视频磁带、固态RAM、固态ROM等等。硬盘驱动器141 一般通过如接口 140的不可移动的存储器接口连接到系统总线121,而磁盘驱动器151通过如接口 150的可移动的存储器接口连接到系统总线121。以上图I描述并示出的驱动器及其关联的计算机存储介质,为计算机110提供了计算机可读指令、数据结构、程序模块和其它数据的存储。例如,图I中,为存储操作系统144、应用程序145、其它本文档来自技高网...
【技术保护点】
在具有客户端和服务器的网络计算环境中的一种方法,该方法包括:建立包括至少一个顺序号的命令窗口,其中所述命令窗口响应于所述客户端被授予一额外的信用来调整以包括一额外的未使用的顺序号,其中所述额外的信用使得所述客户端能够使用文件系统命令来消耗服务器资源;接收消耗至少一个服务器资源的文件系统命令,所述文件系统命令包括一相关联的顺序号;确定所述相关联的顺序号是否位于所述命令窗口中;确定所述相关联的顺序号是否以前未被包括在另一文件系统命令中;在确定所述相关联的顺序号位于所述命令窗口中且以前未被包括在在会话期间发送的另一文件系统命令中时,允许所述文件系统命令;授予所述客户端第一额外的信用;以及调整所述命令窗口以包括第一额外的未使用的顺序号。
【技术特征摘要】
2005.05.25 US 60/685,008;2005.07.15 US 11/182,9891.在具有客户端和服务器的网络计算环境中的一种方法,该方法包括 建立包括至少一个顺序号的命令窗口,其中所述命令窗口响应于所述客户端被授予一额外的信用来调整以包括一额外的未使用的顺序号,其中所述额外的信用使得所述客户端能够使用文件系统命令来消耗服务器资源; 接收消耗至少一个服务器资源的文件系统命令,所述文件系统命令包括一相关联的顺序号; 确定所述相关联的顺序号是否位于所述命令窗口中; 确定所述相关联的顺序号是否以前未被包括在另一文件系统命令中; 在确定所述相关联的顺序号位于所述命令窗口中且以前未被包括在在会话期间发送的另一文件系统命令中时,允许所述文件系统命令; 授予所述客户端第一额外的信用;以及 调整所述命令窗口以包括第一额外的未使用的顺序号。2.如权利要求I所述的方法,其特征在于,进一步包括在确定所述相关联的顺序号没有超过最大顺序号时,允许所述命令。3.如权利要求I所述的方法,其特征在于,进一步包括响应于接收到的命令,授予所述客户端第二额外的信用,以及调整所述命令窗口以包括第二额外的未使用的顺序号。4.如权利要求I所述的方法,其特征在于,允许所述文件系统命令消耗被授予所述客户端的一个信用。5.如权利要求I所述的方法,其特征在于,进一步包括 授予所述客户端一个或多个阻塞操作信用;以及 响应于接收到从所述客户端发送来的阻塞命令,允许所述服务器来执行阻塞操作,其中所述阻塞命令没有超过阻塞操作信用的最大数量。6.如权利要求5所述的方法,其特征在于,进一步包括 返回指示所述阻塞操作的进行的数据;以及 返回所述阻塞操作的标识符。7.如权利要求6所述的方法,其特征在于,进一步包括授予所述客户端一额外的信用,并响应于接收到所述阻塞操作命令来调整所述命令窗口。8.如权利要求I所述的方法,其特征在于,进一步包括处理接收到的来自所述客户端的对一额外的信用的请求。9.如权利要求I所述的方法,其特征在于,进一步包括取消至少一个先前被授予所述客户端的信用。10.在具有客户端和服务器的网络计算环境中的...
【专利技术属性】
技术研发人员:A·莫哈蒙德,B·S·拉曼,D·科鲁斯,
申请(专利权)人:微软公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。