CN101005507A - 一种用于主机到主机通信的系统和方法 - Google Patents
一种用于主机到主机通信的系统和方法 Download PDFInfo
- Publication number
- CN101005507A CN101005507A CNA2007100042447A CN200710004244A CN101005507A CN 101005507 A CN101005507 A CN 101005507A CN A2007100042447 A CNA2007100042447 A CN A2007100042447A CN 200710004244 A CN200710004244 A CN 200710004244A CN 101005507 A CN101005507 A CN 101005507A
- Authority
- CN
- China
- Prior art keywords
- user
- host
- memory
- resource
- virtual unit
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/104—Grouping of entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明中提供了一种用于主机到主机通信的系统和方法。所述系统可以包括至少一个用户应用的第一主机,所述主机可以被安排以允许所述用户和与第二主机相耦合的第二用户通信。所述系统可以进一步包括被安排以连接所述第一和第二主机的网络,以及被安排以控制所述第一和第二主机之间的通信协议以允许所述第一和第二用户相互通信的主机到主机设备控制器。
Description
技术领域
本发明一般涉及计算机和处理器体系结构的领域。特别地,本发明涉及用于主机到主机通信的系统和方法。
背景技术
在计算机科学的许多领域中,在高性能计算(HPC)应用和数据库领域,需要用于消息传递和远程直接存储器访问的快速、有效和安全的机制。HPC是集中开发超级计算机和在超级计算机上运行的软件的计算机科学的分支。该分支的主要范围是开发并行处理算法和软件,例如,以允许将程序划分成小的代码段,从而使得可以通过单独的处理节点同时执行每一段。
一些技术,例如由英特尔公司(Santa Clara,California)和CarnegieMellon大学联合开发的iWARP多处理超级计算机,试图针对这些需求提供解决方案。然而,当前的解决方案通常承受尤其与这些系统和技术的主机或用户的安全性和存储器保护有关的缺点。
举例来说,所提出的保护存储器区域和主机的消息队列的解决方案是通过使用存储标记。然而,在各种攻击中可以容易地伪造和重用存储标记,导致主存储器受损。在很多操作系统共享相同的存储器的虚拟化系统中,这个问题甚至更为至关紧要。
发明内容
本发明的实施例可以提供用于主机到主机通信的系统和方法。
根据本发明的第一方面提供了一种用于主机到主机通信的系统。所述系统可以包括至少一个用户应用的第一主机,所述主机可以被安排以允许所述用户和与第二主机相耦合的第二用户通信。所述系统可以进一步包括被安排以连接所述第一和第二主机的网络,以及被安排以控制所述第一与第二主机之间的通信协议以允许所述第一和第二用户相互通信的主机到主机设备控制器。
根据本发明的第二方面提供了一种计算机实现的方法,用于在位于第一主机的第一用户应用与位于第二主机的第二用户应用之间建立通信。所述方法可以包括:在所述第一用户应用的虚拟设备上代表所述第一用户应用创建匿名连接资源分配;授权所述第一用户应用来自于第一类型的资源凭证,所述资源凭证允许在所述虚拟设备上执行操作;以及当从所述第二用户应用收到连接请求时,基于所述第一用户应用的策略向所述第二用户应用发送指令。
根据本发明的第三方面提供了一种方法,用于向位于第一主机的第一用户应用的第一存储器区域通告来自于位于第二主机的第二用户应用的、对所述第一存储器区域的读和写远程直接存储器访问(RDMA)操作。
所述方法可以包括:从第一类型向主机到主机设备控制器发送IO请求以通告所述第一存储器区域;生成所述第一存储器区域的存储窗凭证(CAPw);将所述IO请求和所述CAPw发送至所述第一用户应用的虚拟设备,所述虚拟设备位于所述主机到主机设备控制器。所述方法可以进一步包括:在所述第一虚拟设备上创建存储器区域资源,所述第一虚拟设备与所述CAPw相耦合,生成设备凭证以允许访问所述第一存储器区域资源,以及将所述设备凭证发送至所述第二用户应用。
附图说明
现将仅通过例子,参照附图来描述本发明的实施例,其中:
图1是依照本发明的实施例,用于主机到主机通信的系统的逻辑结构的示意性框图;
图2是依照本发明的实施例,用于在两个用户应用之间建立连接的方法的流程图;
图3是依照本发明的实施例,用于主机到主机多播通信的系统的示意性框图;
图4是依照本发明的示例性实施例,用于存储器通告的方法的示意性流程图;
图5是依照本发明的示例性实施例,用于远程直接存储器访问写操作的方法的流程图;以及
图6是依照本发明的示例性实施例,用于远程直接存储器访问读操作的方法的流程图。
具体实施方式
概述:
现参照图1,其是依照本发明的实施例,用于主机到主机通信的系统100的逻辑结构的示意性框图。在以下的详细描述中,术语“用户”将用于描述被允许访问IO设备或其它用户的操作系统/分区(partition)、处理节点、应用等。
系统100可以包括主机,例如主机A10、主机B20和主机C30,其可以相互连接以及通过网络40连接至外部系统,并且它们还可以连接至主机到主机设备控制器50。取决于具体的应用,网络40可以是例如Infiniband高速串行计算机总线、吉比特以太网、诸如由Myricom公司(Arcadia,California)开发的Myrinet网络的高速局域网系统,或者任何其它类型的快速互联网络。
用户A12、B22和C32可以分别是主机A、B和C的一部分。如图1所示,通过与作为该主机的一部分的用户相耦合的主网关(HG)来定义主机。举例来说,主机A10可以包括可以与HG A14相耦合的用户12(A到Z)。应当注意的是,HG的A、B和C可以加密签名并且检验打算用于向与它们相耦合的存储单元(例如可以与HG A14相耦合的存储单元16)发送的数据的权能凭证。
在题为“A METHOD AND SYSTEM FOR MEMORYPROTECTION AND SECURITY USING CREDENTIALS”序列号[代理人案卷IL920050027US1]的美国专利申请中,以及题为“A METHOD ANDSYSTEM FOR PROTECTION AND SECURITY of IO DEVICES USINGCREDENTIALS”序列号[代理人案卷IL920050028US1]的美国专利申请中,详细描述了关于主网关组件的功能性的额外的细节,以上专利均在2006年1月17日申报,被转让给本发明的共同受让人,并且通过引用合并于此。
存储单元16、26和36在逻辑上与各HG相耦合。每个存储单元可以包括与用户应用相耦合的较小的存储段(未示出)。
主机到主机设备控制器50可以控制系统100的各种主机之间的通信协议。设备50可以由主机10、20和30共享,以允许用户应用相互通信。其可以实现为如图1所示的系统100中的独立组件,但是应当注意的是,其还可以实现为各HG的一部分或各主机内单独的组件。可选地,其可以与作为各主机的一部分的其它组件(未在图1中示出)相耦合。
愿意从其它的用户应用接收消息并且愿意针对其它用户的直接存储器访问通告其存储器的各用户应用,可以依照本发明的实施例在主机到主机设备控制器50上创建虚拟设备(VD)。为了创建这样的虚拟设备(VD),例如VD A60,可以要求启动用户(initiating consumer),例如用户A12,从管理实体获得设备凭证,举例来说,诸如在题为“A METHOD ANDSYSTEM FOR PROTECTION ACCESS AND OPERATION OF IODEVICES USING CREDENTIALS”序列号[IL920050028US1]的美国申请中所描述的资源管理器组件的管理实体,该专利被转让给本发明的共同受让人。应当注意的是,取决于系统100的具体实现,管理实体可以是集中式或分布式。
设备凭证可以识别愿意从其它用户应用接收消息和/或愿意作为虚拟设备的拥有者(下文定义为“拥有者”)针对其它用户的直接存储器访问通告其存储器的用户,并且可以将虚拟设备上对VD的拥有者特许的IO请求、IO请求序列、IO程序或IO程序集的执行权授权给他。
可以允许拥有者在其拥有的VD上创建两种类型的资源:
用于接收消息的连接资源,例如分别在VD A60、VD B70和VD C80中的“ConResource B”62、“ConResource A”72和“ConResource Y”。连接资源可以与“接收队列”关联。相应地,可以允许连接资源的拥有者向该队列预先布告(pre-post)主机缓冲区,并且可以允许可能愿意向“拥有者”用户发送消息的用户(下文定义为“使用者”)根据FIFO原则发送将要置于这些缓冲区中的消息。
用于允许直接存储器访问的存储资源,例如VD B70中的“MemResource X”74。存储资源可以与所通告的存储器区域关联。
依照本发明的实施例,可以要求“使用者”与其建立通信路径。作为通信路径建立的结果,可以在拥有者的虚拟设备上创建连接资源。可以授权使用者凭证,该凭证允许其访问资源和执行关于该资源对“使用者”允许的IO请求、IO请求序列、IO程序或IO程序集,例如“发送消息”。应当注意的是,可能愿意访问属于“拥有者”用户的远程存储器的“使用者”,可能必须获得对相应的存储资源的使用者存储窗凭证,如将在下面详细描述的。
在图1所示的例子中,分属于不同的主机的用户A12、用户B22和用户C32,分别在主机到主机设备控制器50上创建其虚拟设备VD A60、VD B70和VD C80。可能愿意相互通信的用户A和用户B在其自己的设备上创建相应的通信资源。相应地,用户A可以在VD A60上创建连接资源B“ConResource B”62,并且它可以授权用户B访问该资源,而用户B可以在VD B70上创建连接资源A“ConResource A”72,并且它可以允许用户A访问它。如图1所示,用户B还可以为用户X创建存储资源“MemResource X”74,允许用户X直接访问用户B的存储器。用户C可以针对用户Y的使用创建连接资源“ConResource Y”82。
依照本发明的实施例,可以允许拥有者和使用者用户在虚拟设备上执行IO请求、IO程序,例如IO请求序列,或者IO程序集。拥有者用户可以在其自己的虚拟设备的资源上使用和执行它们,相反使用者用户可以在其它用户的虚拟设备的资源上使用和执行它们。当完成IO程序的IO请求者的执行时,可以将输出发送至启动IO请求或IO程序的用户。下面详细提供更多的细节。
下面将详细描述用户之间的连接的建立及其之间的各种通信操作。
连接建立:
现参照图2,其是依照本发明的实施例,用于建立两个用户应用之间的连接的方法的流程图。应当注意的是,可以在相同的用户之间建立许多连接,并且每个连接可以如下建立。
可能愿意从其它的用户接收消息的拥有者用户A,可以在其虚拟设备上创建(步骤200)匿名连接资源分配,例如没有相应的使用者用户的连接资源。当收到“连接资源分配”IO请求时,可以在拥有者的虚拟设备中创建连接资源分配,该IO请求可以包括授权给拥有者用户的凭证,以及端口作为参数:
连接资源分配=[拥有者凭证,端口]
位于用户A(拥有者用户)的虚拟设备中的IO程序可以处理连接资源分配请求并且创建连接资源。然后,其可以授权(步骤202)用户A“拥有者连接资源凭证”。
可能愿意向用户A发送消息的使用者用户B可以向用户A的虚拟设备A发送连接IO请求。因此,虚拟设备A可以从用户B接收(步骤204)连接IO请求,其可以包括“使用者”设备凭证以及端口作为参数:
连接=[使用者凭证,端口]
取决于用户A所设置的策略,其可以指示(步骤206)连接资源自动地接受输入连接请求,或者在连接请求到达时明确地通知(步骤206A)用户A。在后一种情况下,要求用户A以“收受”或“拒绝”指令响应。
在这两种情况下,当接受连接请求时,匿名连接资源可以成为连接资源B。相应地,主机到主机设备控制器52可以生成(步骤208)使用者连接资源凭证并且将其发送(步骤210)至用户B用于与用户A通过连接资源B的未来的通信。
布告连接建立操作:
当在拥有者用户与使用者用户(例如在上面的例子中分别是用户A和B)之间建立连接之后,用户A可以发送“布告接收缓冲区”IO消息来检验其在虚拟设备A中具有从用户B接收消息所要求的空间。用户A可以在“布告接收缓冲区”IO消息中包括验证其作为虚拟设备拥有者的权利的其拥有者设备凭证,以及缓冲区长度作为参数:
布告接收缓冲区=[拥有者凭证,缓冲区]
通过相应的主网关,例如HG A,可以将各个“布告接收缓冲区”IO消息从拥有者用户,例如用户A,发送至主机到主机设备控制器。主网关可以生成诸如窗凭证的凭证,其可以保护存储器不受随后的非授权访问。在题为“A METHOD AND SYSTEM FOR MEMORY PROTECTIONAND SECURITY USING CREDENTIALS”序列号[代理人案卷IL920050027US1]的美国专利申请中描述了窗凭证的创建,该专利于2006年1月17日申报,并且被转让给共同受让人。窗凭证可以与连接资源关联并且存储于主机到主机设备控制器50上的其上下文内。
当使用者用户,例如用户B,愿意向拥有者用户,例如用户A发送消息的时候,可以执行下面的操作。
用户B可以向HG B提交“发送”IO请求。IO请求的参数可以包括设备资源凭证,其验证用户B访问虚拟设备A连接资源的“使用者”权利,以及局部存储器区域权能(例如分散-聚集列表,其中每个元素可以包括地址、长度和访问许可):
发送=[使用者凭证,存储器区域权能]
HG B可以生成窗凭证并且将其与“发送”IO请求一起发送至主机到主机设备控制器上的虚拟设备A。视情况,HG B可以附加预定义量的数据有效负载,此处称为直接数据。在这种情况下,如果直接数据的大小包括了整个消息,则不发送窗凭证。
虚拟设备A可以处理IO请求。其可以访问虚拟设备A上的连接资源,并且检验是否存在可用的接收缓冲区以调配所接收的消息。当没有预先布告缓冲区时,虚拟设备A可以中断所接收的请求,并且将相应的状态发回给可以将该状态转发至用户B的HG B。
当接收缓冲区可用时,可以使用存储在设备连接资源内的接收缓冲区存储窗凭证,经由HG A,以直接存储器访问(DMA)操作向接收缓冲区发送直接数据(如果存在)。接下来,可以将“读”请求发送至HG B以带来剩余的数据有效负载(如果需要)。读请求可以通过HG B处理,并且可以将读数据发回给虚拟设备A。后者可以将数据递送至预先布告的缓冲区并且可以向缓冲区所属于的用户A产生“完成”请求(如果要求)。
拥有者用户可能愿意从很多用户接收消息。在这种情况下,拥有者用户可以在其虚拟设备上创建与其接收队列关联的共享连接资源。愿意访问共享连接资源的用户可以发布提供其“使用者”设备凭证和端口作为参数的IO请求“ConnectShared Resource(连接共享资源)”。拥有者设备的虚拟设备可以将“使用者”共享资源凭证发回给用户,该凭证授权其发送关于共享连接资源的消息的权利。
多播:
现参照图3,其是依照本发明的实施例,用于主机到主机多播通信的系统的示意性框图。将不再描述先前所描述的要素,以维持说明的简明性。
主机到主机设备控制器可以包括多播虚拟设备90以控制所有的多播活动。多播组,例如多播组M,可以表示为多播虚拟设备90上的资源。为了加入多播组,使用者用户可以向多播虚拟设备90发送特殊的IO请求。当允许该用户加入多播组时,可以以响应授权其相应的“使用者资源凭证”。在发送至多播组的每个消息中要求提供该凭证。当收到以多播组之一为目标的消息时,主机到主机设备控制器可以将该消息复制到多播组成员所拥有的虚拟设备的共享连接资源。
远程直接存储器访问过程:
依照本发明的实施例,用于主机到主机通信的系统允许位于不同主机的用户之间的远程直接存储器访问(DMA)读和写操作。
为了实现这些RDMA操作,应当首先向启动者用户通告寻址存储器区域。通告过程可以向启动存储器访问操作的用户提供设备凭证。
现参考图4,其是依照本发明的示例性实施例,用于存储器通告的方法的示意性流程图。在这个例子中,用户B可以向用户A通告主机B的存储器区域。
用户B可以通过向主机到主机设备控制器中的虚拟设备B发送(步骤400)“向用户通告存储器”IO消息来启动过程。IO消息的参数可以包括识别用户B作为虚拟设备B的拥有者的拥有者设备凭证、识别应当将凭证发送给该用户的用户ID,以及例如地址、长度、访问许可的存储器B区域权能:
“向用户通告存储器”=[拥有者凭证,用户ID,存储器区域权能]
当通过HG B处理IO消息时,HG B可以生成(步骤402)存储器B区域的存储窗凭证CAPw,并且可以将其与IO消息一起发送(步骤404)至主机到主机设备控制器。虚拟设备B可以接收IO消息,并且使用主机到主机设备控制器的服务,其可以在虚拟设备B上创建(步骤406)“存储器区域”资源。资源可以包括存储窗凭证CAPw。接下来,主机到主机设备控制器可以生成(步骤408)允许访问所创建的“存储器区域”资源的设备凭证,并且使用以上所描述的发送布告连接过程,可以将其发送(步骤410)至用户A。
另一选项是为主机到主机设备控制器生成资源凭证,并且将其送回到通告用户B。后者应当将其发送至用户A。
现参照图5,其是依照本发明的示例性实施例,用于远程直接存储器访问写操作的方法的流程图。在这个例子中,用户A可以向主机B的存储器区域执行写事务。如上所述,已向用户A通告了主机B的寻址存储器区域,并且已在虚拟设备B上创建了相应的“存储器区域”资源。
相应地,用户A可以向虚拟设备B发送(步骤500)“写”IO请求。与IO请求一起,用户A可以提供主机B的存储器区域的权能(设备凭证、地址和长度),以及局部存储器区域(主机A的存储器区域)的权能(地址、长度、访问许可)。HG A可以生成(步骤502)主机A的存储器区域的窗权能CAPw,并且可以将其与IO请求一起发送至虚拟设备B。为了改进性能,HG A可以将预定义量的数据有效负载(此处称为直接数据)附加到IO请求。直接数据的最大尺寸可以在早期阶段(例如在建立连接的时候)在HG A与主机到主机设备之间协商。如果整个数据有效负载符合允许的直接数据尺寸,则不通过HG A发送窗凭证。
视情况,当数据有效负载尺寸超过随IO请求所提供的直接数据的尺寸时,在收到“写”IO请求时,虚拟设备B可以对主机A的存储器区域执行“读”事务。提供了该区域的窗凭证。可以通过HG A处理事务并且可以将数据返回给虚拟设备B。
接下来,主机到主机设备控制器可以使用从设备凭证恢复的存储窗凭证访问(步骤504)虚拟设备B的“存储器区域”资源,并且可以经由HGB将数据写(步骤506)到主机B的存储器区域。
现参照图6,其是依照本发明的示例性实施例,用于远程直接存储器访问读操作的方法的流程图。在这个例子中,用户A可以执行从主机B的存储器区域的读事务。如上所述,已向用户A通告了主机B的寻址存储器区域,并且已在虚拟设备B上创建了相应的“存储器区域”资源。
相应地,用户A可以向虚拟设备B发送(步骤600)“读”IO请求。与IO请求一起,用户A可以提供主机B的存储器区域的特性(设备凭证、地址和长度),以及局部存储器区域(主机A的存储器区域)的权能(地址、长度、访问许可)。HG A可以生成(步骤602)主机A的存储器区域的窗凭证,并且可以将其与IO请求一起发送至虚拟设备B。
在收到“读”IO请求时,虚拟设备B可以使用从设备凭证恢复的存储窗凭证访问(步骤604)虚拟设备B的“存储器区域”资源。然后其可以向主机B的存储器区域执行(步骤606)“读”事务。事务可以经过HG B,其可以确认事务的正确性并且启动DMA操作以检索所读取的数据。
接下来,虚拟设备B可以将数据随主机A的存储器区域的窗凭证发送(步骤608)回HG A。HG A可以确认数据的访问并且完成对相应的存储器区域的DMA操作。
如以上所简要提到的,依照本发明的实施例,可以允许拥有者和使用者用户在虚拟设备上执行IO请求、IO程序,例如IO请求序列,或者IO程序集。拥有者用户可以在其自己的虚拟设备的资源上使用和执行它们。举例来说,拥有者用户可以向其虚拟设备发送用于生成很多连接资源(并且向这些连接资源预先布告请求)和存储资源的一个IO程序,以通告存储器区域。
使用者用户可以在其他用户的虚拟设备的资源上使用和执行IO请求、IO程序,例如IO请求序列,或者IO程序集。举例来说,使用者用户可以执行对拥有者用户的存储资源的一系列RDMA写操作、使用其连接资源向其他的用户发送消息,以及将所有的操作封装于一个IO程序中。
在完成IO请求或IO程序的执行时,可以将输出发送至启动IO请求或IO程序的用户,即发送至第一例中的拥有者用户和第二例中的使用者用户。
在以上描述中,为了提供对本发明的全面的理解,陈述了许多具体的细节。然而,对本领域的技术人员来说显而易见的是,可以在没有这些具体细节的情况下实践本发明。在其它的例子中,并未详细示出公知的电路、控制逻辑,以及用于常规算法和过程的计算机程序指令的细节,以免不必要地使本发明不明显。
体现本发明的方面的软件程序代码通常保存在诸如计算机可读介质的永久存储器中。在客户机-服务器环境下,可以将这样的软件程序代码存储于客户机或服务器。可以将软件程序代码收录于用于随数据处理系统使用的各种已知介质中的任何一种。这包括但不限于诸如磁盘驱动器、磁带、压缩磁盘(CD’s)、数字视频盘(DVD’s)的磁的和光的存储设备,以及随或不随其上调制了信号的载波收录于传输介质的计算机指令信号。举例来说,传输介质可以包括诸如因特网的通信网络。另外,虽然可以以计算机软件来体现本发明,但是可选地,可以使用诸如专用集成电路或其它硬件的硬件组件,或者硬件组件和软件的一些组合来部分地或全部体现实现本发明所必要的功能。举例来说,可以以计算机软件体现主机到主机设备控制器50,或者可选地,使用硬件组件来部分地或全部体现主机到主机设备控制器50。
本发明通常实现为计算机程序产品,包括用于控制计算机或类似设备的程序指令集。可以将这些指令预加载到系统或记录于诸如CD-ROM的存储介质,或者使之通过诸如因特网或移动电话网络的网络可供下载来提供这些指令。
可以在不背离本发明的范围的情况下对前述进行改进和修改。
本领域的技术人员可以理解,本发明不限于已在上文具体示出和描述的内容。相反,在阅读前述说明时,本领域的技术人员可以想到,本发明的范围包括上文所描述的各种特征的组合和再组合这二者,及其并不在现有技术中的变型和修改。
Claims (18)
1.一种用于主机到主机通信的系统,所述系统包括:
第一用户应用的第一主机,所述主机被安排以允许所述用户应用和与第二主机相耦合的第二用户应用通信;
网络,所述网络被安排以连接所述第一和第二主机;以及
主机到主机设备控制器,所述主机到主机设备控制器被安排以控制所述第一与第二主机之间的通信协议,以允许所述第一和第二用户应用相互通信。
2.根据权利要求1的系统,其中为了与所述第二用户应用通信,所述第一用户应用在所述主机到主机设备控制器上创建虚拟设备,所述虚拟设备被安排以从所述第二用户应用接收消息,并且进一步被安排以直接访问与所述第一用户应用相耦合的存储器。
3.根据权利要求2的系统,其中所述第一用户应用被安排以创建连接资源以从所述第二用户应用接收消息,以及存储资源以允许第二用户应用直接访问与所述第一用户应用相耦合的存储器。
4.根据权利要求1的系统,其中所述主机到主机设备控制器进一步包括多播虚拟设备,所述多播虚拟设备被安排以从所述第一用户应用向多个用户应用发送消息。
5.根据权利要求2的系统,其中所述主机到主机设备控制器进一步被安排以实现在所述第一与第二用户应用之间的远程直接存储器访问读和写操作。
6.根据权利要求2的系统,其中所述虚拟设备进一步被安排以执行以下任何一种:接收于所述第一或第二用户应用的输入输出请求、输入输出请求序列、输入输出程序或输入输出程序集。
7.一种计算机实现的方法,其用于在位于第一主机的第一用户应用与位于第二主机的第二用户应用之间建立通信,所述方法包括:
在所述第一用户应用的虚拟设备上代表所述第一用户应用创建匿名连接资源分配;
授权所述第一用户应用来自于第一类型的资源凭证,所述资源凭证允许在所述虚拟设备上执行操作;以及
当从所述第二用户应用收到连接请求时,基于所述第一用户应用的策略向所述第二用户应用发送指令。
8.根据权利要求7的方法,其中所述发送所述指令的步骤进一步包括:基于所述第一用户应用的所述策略,自动地向所述第二用户应用发送接受指令。
9.根据权利要求7的方法,其中所述发送所述指令的步骤进一步包括:
基于所述第一用户应用的所述策略,通知所述第一用户应用接收到来自于所述第二用户应用的所述连接请求;以及
发送接收于所述第一用户应用的接受或拒绝指令。
10.根据权利要求7的方法,其中所述来自于所述第一类型的资源凭证是连接资源凭证。
11.根据权利要求10的方法,其中如果所述发送至第二用户应用的指令是接受所述用户应用之间的连接,则所述方法进一步包括:
从第二类型生成连接资源凭证;以及
从所述第二类型发送所述连接资源凭证,以允许所述第二用户应用与所述第一用户应用经由所述虚拟设备的未来的通信,
其中所述生成和发送的步骤由所述第一类型用户执行。
12.根据权利要求11的方法,其进一步包括:允许所述第一用户应用从所述第二用户应用接收消息,以及允许所述第二用户应用向所述第一用户应用发送消息。
13.根据权利要求7的方法,其中所述来自于所述第一类型的资源凭证是共享资源凭证。
14.根据权利要求13的方法,其进一步包括:允许所述第一用户应用从多用户应用接收消息。
15.根据权利要求7的方法,其进一步包括:允许所述第二用户应用经由多播虚拟设备向多个用户应用发送消息,所述消息包括多播连接资源凭证。
16.根据权利要求7的方法,其中所述操作包括以下任何一种:接收于所述第一用户应用的输入输出请求、输入输出请求序列、输入输出程序或输入输出程序集。
17.一种用于向位于第一主机的第一用户应用的第一存储器区域通告来自于位于第二主机的第二用户应用的、对所述第一存储器区域的读和写远程直接存储器访问操作的方法,所述方法包括:
从第一类型向主机到主机设备控制器发送输入输出请求以通告所述第一存储器区域;
生成所述第一存储器区域的存储窗凭证;
将所述输入输出请求和所述存储窗凭证发送至所述第一用户应用的虚拟设备,所述虚拟设备位于所述主机到主机设备控制器;
在所述第一虚拟设备上创建存储器区域资源,所述第一虚拟设备与所述存储窗凭证相耦合;
生成设备凭证以允许访问所述第一存储器区域资源;以及
将所述设备凭证发送至所述第二用户应用。
18.根据权利要求7的方法,其中所述读和写远程直接存储器访问操作包括以下任何一种:接收于所述第一用户应用的输入输出请求、输入输出请求序列、输入输出程序,或输入输出程序集。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/334,833 US20070168454A1 (en) | 2006-01-19 | 2006-01-19 | System and method for host-to-host communication |
US11/334,833 | 2006-01-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101005507A true CN101005507A (zh) | 2007-07-25 |
Family
ID=38264508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007100042447A Pending CN101005507A (zh) | 2006-01-19 | 2007-01-18 | 一种用于主机到主机通信的系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20070168454A1 (zh) |
JP (1) | JP2007193812A (zh) |
CN (1) | CN101005507A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105579968A (zh) * | 2013-09-26 | 2016-05-11 | 大陆汽车有限责任公司 | 针对进程间通信的用户消息队列方法 |
CN106295391A (zh) * | 2015-06-09 | 2017-01-04 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8411085B2 (en) | 2008-06-27 | 2013-04-02 | Microsoft Corporation | Constructing view compositions for domain-specific environments |
US8255192B2 (en) * | 2008-06-27 | 2012-08-28 | Microsoft Corporation | Analytical map models |
US8620635B2 (en) | 2008-06-27 | 2013-12-31 | Microsoft Corporation | Composition of analytics models |
US20090322739A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Visual Interactions with Analytics |
US8117145B2 (en) * | 2008-06-27 | 2012-02-14 | Microsoft Corporation | Analytical model solver framework |
US8155931B2 (en) * | 2008-11-26 | 2012-04-10 | Microsoft Corporation | Use of taxonomized analytics reference model |
US8190406B2 (en) * | 2008-11-26 | 2012-05-29 | Microsoft Corporation | Hybrid solver for data-driven analytics |
US8103608B2 (en) * | 2008-11-26 | 2012-01-24 | Microsoft Corporation | Reference model for data-driven analytics |
US8145615B2 (en) * | 2008-11-26 | 2012-03-27 | Microsoft Corporation | Search and exploration using analytics reference model |
US8145593B2 (en) | 2008-12-11 | 2012-03-27 | Microsoft Corporation | Framework for web services exposing line of business applications |
US20100153565A1 (en) * | 2008-12-11 | 2010-06-17 | Microsoft Corporation | Connection management in line-of-business |
US8314793B2 (en) | 2008-12-24 | 2012-11-20 | Microsoft Corporation | Implied analytical reasoning and computation |
US8259134B2 (en) * | 2009-06-19 | 2012-09-04 | Microsoft Corporation | Data-driven model implemented with spreadsheets |
US8531451B2 (en) | 2009-06-19 | 2013-09-10 | Microsoft Corporation | Data-driven visualization transformation |
US8788574B2 (en) | 2009-06-19 | 2014-07-22 | Microsoft Corporation | Data-driven visualization of pseudo-infinite scenes |
US8866818B2 (en) | 2009-06-19 | 2014-10-21 | Microsoft Corporation | Composing shapes and data series in geometries |
US9330503B2 (en) | 2009-06-19 | 2016-05-03 | Microsoft Technology Licensing, Llc | Presaging and surfacing interactivity within data visualizations |
US8493406B2 (en) | 2009-06-19 | 2013-07-23 | Microsoft Corporation | Creating new charts and data visualizations |
US8692826B2 (en) | 2009-06-19 | 2014-04-08 | Brian C. Beckman | Solver-based visualization framework |
US8352397B2 (en) | 2009-09-10 | 2013-01-08 | Microsoft Corporation | Dependency graph in data-driven model |
US9043296B2 (en) | 2010-07-30 | 2015-05-26 | Microsoft Technology Licensing, Llc | System of providing suggestions based on accessible and contextual information |
US9690638B2 (en) | 2011-09-29 | 2017-06-27 | Oracle International Corporation | System and method for supporting a complex message header in a transactional middleware machine environment |
US20150113602A1 (en) * | 2012-05-08 | 2015-04-23 | Serentic Ltd. | Method and system for authentication of communication and operation |
JP6276273B2 (ja) * | 2012-09-07 | 2018-02-07 | オラクル・インターナショナル・コーポレイション | 分散型データグリッドクラスタにおけるメッセージ前処理をサポートするシステムおよび方法 |
KR102484606B1 (ko) * | 2016-03-11 | 2023-01-05 | 삼성전자주식회사 | 전자장치 및 그 제어방법 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2002234258A1 (en) * | 2001-01-22 | 2002-07-30 | Sun Microsystems, Inc. | Peer-to-peer network computing platform |
US7353533B2 (en) * | 2002-12-18 | 2008-04-01 | Novell, Inc. | Administration of protection of data accessible by a mobile device |
JP2007508623A (ja) * | 2003-10-08 | 2007-04-05 | ユニシス コーポレーション | 複数のノードにわたってシステムリソースを割り当てて管理する仮想データセンタ |
JP2005250649A (ja) * | 2004-03-02 | 2005-09-15 | Nec Corp | プロセス間通信アクセス制御方式及び方法 |
-
2006
- 2006-01-19 US US11/334,833 patent/US20070168454A1/en not_active Abandoned
-
2007
- 2007-01-18 CN CNA2007100042447A patent/CN101005507A/zh active Pending
- 2007-01-19 JP JP2007009807A patent/JP2007193812A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105579968A (zh) * | 2013-09-26 | 2016-05-11 | 大陆汽车有限责任公司 | 针对进程间通信的用户消息队列方法 |
CN105579968B (zh) * | 2013-09-26 | 2019-12-17 | 大陆汽车有限责任公司 | 针对进程间通信的用户消息队列方法 |
CN106295391A (zh) * | 2015-06-09 | 2017-01-04 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN106295391B (zh) * | 2015-06-09 | 2021-02-19 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US20070168454A1 (en) | 2007-07-19 |
JP2007193812A (ja) | 2007-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101005507A (zh) | 一种用于主机到主机通信的系统和方法 | |
TWI761357B (zh) | 塊鏈實施之方法及系統 | |
US10742624B2 (en) | Sentinel appliance in an internet of things realm | |
US7617541B2 (en) | Method and/or system to authorize access to stored data | |
CN101247393B (zh) | 用于防止ip欺骗和促进专用数据区的解析的系统和方法 | |
CN1941700B (zh) | 电信系统中的特权授予与资源共享的方法 | |
JP6314236B2 (ja) | トラフィックポリシーの実施をサポートするエンティティハンドルレジストリ | |
US20120030574A1 (en) | Key-configured topology with connection management | |
CN101356773A (zh) | 基于上下文信息的自组织(ad hoc)组创建 | |
CN103229161A (zh) | 连续接入网关和去重数据缓存服务器 | |
US20070008971A1 (en) | Systems and methods for passing network traffic data | |
CN116760639B (zh) | 一种用于多租户的数据安全隔离与共享框架实现方法 | |
JP2022525551A (ja) | データレコードのコピーの分散型台帳システムへの誤伝送の防止 | |
JP6475910B2 (ja) | 機密データパケットの交換のための時間ロックされたネットワーク及びノード | |
US20230351028A1 (en) | Secure element enforcing a security policy for device peripherals | |
WO2020096072A1 (ko) | 디앱에서 요구하는 높은 트랜잭션 처리량을 효율적으로 블록체인에서 처리하기 위한 방법 및 시스템 | |
US10242174B2 (en) | Secure information flow | |
US20240129306A1 (en) | Service to service communication and authentication via a central network mesh | |
CN111741014A (zh) | 消息发送方法、装置、服务器及存储介质 | |
US20200322309A1 (en) | Virtual Point of Presence in a Country to Allow for Local Web Content | |
US20060137004A1 (en) | Network security protection | |
CN108833395A (zh) | 一种基于硬件接入卡的外网接入认证系统及认证方法 | |
JP2024512406A (ja) | リソースの管理権を安全に設定するシステム及び方法 | |
CN113438299A (zh) | 文件传输方法及传输装置 | |
Bhattacharya et al. | Covert channel secure hypercube message communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20070725 |