【技术实现步骤摘要】
【国外来华专利技术】通过远程直接存储器访问的任意大小的传输操作背景诸如服务器消息块(SMB)或其版本(例如,SMB2)之类的文件访问协议可以用作主要用于在网络上的各节点之间提供对文件以及杂项通信的共享访问的应用层网络协议。在历史上,SMB或SMB2在传输控制协议(TCP)传输和传统的网络基础结构之上操作。尽管SMB2作为针对通用远程文件访问的协议已非常成功,但SMB2尚未广泛适用于要求高吞吐量和低等待时间文件输入/输出的远程文件访问。远程直接存储器访问(RDMA)是从一个计算机的存储器进入另一计算机的存储器而不涉及该另一计算机的操作系统的直接存储器访问。该直接传送准许通过网络的高吞吐量、低等待时间数据传输,这在性能关键的部署中尤其有用。在应用执行RDMA读或写请求时,使用有RDMA能力的网络适配器将应用数据从源存储器缓冲区直接递送到目的地存储器缓冲区,在该传输中这些有RDMA能力的网络适配器不涉及中央存储单元(CPU)(也被简称为处理器)或操作系统。这些RDMA传输会减少等待时间并允许快速消息传输。不幸地是,RDMA的这些好处尚未被使用SMB2的系统利用,因为SMB2尚未用RDMA来操作。虽然本
技术介绍
中着眼于特定的问题,但本专利技术决不旨在限于解决那些特定问题。概述各实施例一般涉及将诸如SMB2操作(或,例如SMB操作的其他版本或文件访问协议操作)之类的数据操作实现在RDMA传输之上的协议和处理。在各实施例中,该协议定义指定用于协商RDMA连接以及用于例如使用经协商的连接来传送SMB2数据的新消息。在一实施例中,用于将SMB2操作实现在RDMA传输之上的协议是SMB直通( ...
【技术保护点】
一种存储计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被处理器执行时执行一种用于通过远程直接存储器访问(RDMA)使用数据操作来交换数据的方法,所述方法包括:建立与服务器的连接;与所述服务器协商连接,其中所述协商建立所述服务器将在该连接中接收的最大字节数;确定用于将与所述连接相关联的数据发送给所述服务器的数据包的数目;确定是否要使用对所述数据的分段;如果不要使用对所述数据的分段,则将第一协议包与所述数据一起发送给所述服务器;如果要使用对所述数据的分段,则初始化传送缓冲区内的前多个字节,以作为所述第一协议包中的数据来发送;设置所述第一协议包中的数据长度字段和剩余数据长度字段;将所述第一协议包发送给所述服务器;对于至少一个第二协议包,要重复的指令包括:初始化所述传送缓冲区内的多个字节,以作为所述至少一个第二协议包中的数据来发送;设置所述至少一个第二协议包中的剩余数据长度字段;以及将所述至少一个第二协议包发送给所述服务器。
【技术特征摘要】
【国外来华专利技术】2011.06.29 US 13/172,7571.一种存储计算机可执行指令的计算机可读存储介质,所述计算机可执行指令在被处理器执行时执行一种用于通过远程直接存储器访问(RDMA)使用数据操作来交换数据的方法,所述方法包括:建立与服务器的连接;与所述服务器协商连接,其中所述协商建立所述服务器将在该连接中接收的最大字节数;确定用于将与所述连接相关联的数据发送给所述服务器的数据包的数目;确定是否要使用对所述数据的分段;如果不要使用对所述数据的分段,则将第一协议包与所述数据一起发送给所述服务器;如果要使用对所述数据的分段,则初始化传送缓冲区内的前多个字节,以作为所述第一协议包中的数据来发送;设置所述第一协议包中的数据长度字段和剩余数据长度字段;将所述第一协议包发送给所述服务器;对于至少一个第二协议包,要重复的指令包括:初始化所述传送缓冲区内的多个字节,以作为所述至少一个第二协议包中的数据来发送;`设置所述至少一个第二协议包中的剩余数据长度字段;以及将所述至少一个第二协议包发送给所述服务器。2.如权利要求1所述的计算机可读存储介质,其特征在于,确定是否要使用分段包括确定用于发送所述数据的数据包的数目是否大于1。3.如权利要求2所述的计算机可读存储介质,其特征在于,确定用于将与所述连接相关联的数据发送给所述服务器的数据包的数目包括确定所述服务器将在所述连接中接收的最大字节数是否小于要被发送的数据的字节数。4.如权利要求1所述的计算机可读存储介质,其特征在于,与所述服务器协商连接包括:预先发布接收区;构建协议协商请求;将所述协议协商请求发送给所述服务器;设置协商期满计时器;确定对所述协议协商请求的响应是否在所述协商期满计时器期满之前被接收;如果对所述协议协商请求的响应没有在所述协商期满计时器期满之前被接收,则重新发送所述协议协商响应;如果对所述协议协商请求的响应在所述协商期满计时器期满之前被接收,则接收协议协商响应;确认所述协议协商响应;以及处理所述协议协商响应,其中所述协议协商响应将至少一个积分提供给所述发送方来发送所述协议包。5.如权利要求4所述的计算机可读存储介质,其特征在于,还包括:如果存在足够积分来发送所述至少一个第二协议包,则发送所述至少一个第二协议包;如果不存在足够的积分来发送所述至少一个第二协议包,则向所述服务器请求至少又一个积分;确定是否接收到足够的积分;如果没有接收到足够的积分,则终止所述连接;以及如果接收到足够的积分,则发送所述至少一个第二协议包。6.一种被配置成通过远程直接存储器访问(RDMA)使用服务器消息块(SMB/SMB2)来交换数据的系统,所述系统包括:RDMA网络接口卡(RNIC),所述RDMA网络接口卡用于通过RDMA消息来传送数据;存储器,所述存储器用于存储处理器能执行的计算机程序指令;以及与所述RNIC和所述存储器通信的处理器,所述处理器用于执行...
【专利技术属性】
技术研发人员:T·M·塔尔佩伊,G·R·卡拉莫,D·M·克鲁斯,
申请(专利权)人:微软公司,
类型:
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。