CN103430496A - 计算机系统、服务器、开放流控制器和通信方法 - Google Patents
计算机系统、服务器、开放流控制器和通信方法 Download PDFInfo
- Publication number
- CN103430496A CN103430496A CN2012800122205A CN201280012220A CN103430496A CN 103430496 A CN103430496 A CN 103430496A CN 2012800122205 A CN2012800122205 A CN 2012800122205A CN 201280012220 A CN201280012220 A CN 201280012220A CN 103430496 A CN103430496 A CN 103430496A
- Authority
- CN
- China
- Prior art keywords
- bag
- switch
- iscsi
- open flows
- stream entry
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- 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/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/64—Routing or path finding of packets in data switching networks using an overlay routing layer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
Abstract
根据本发明的计算机系统中包括:主机,该主机借助TCP层发送传输层中的包,高级协议信息在该包中被包括在TCP报头的选项区中。开放流控制器在交换机中设置流条目,针对该流条目规定了与所述协议信息对应的转发地址。开放流交换机根据流条目将所接收的包转发给转发地址,该流条目符合在所接收的包的TCP报头中所包括的协议信息。结果,计算机系统的适应性得以提高。
Description
技术领域
本发明涉及计算机系统和通信方法,并且具体地涉及计算机系统中利用开放流(open now)协议的流控制方法。
背景技术
对于高速和大容量辅助存储装置的需求正越来越大。特别地,在大规模计算机中采用了许多配置,在所述配置中由存储装置组装形成的存储设备(磁盘阵列)与SAN(存储区域网络;存储器区域网络)连接。
在各SAN中,采用iSCSI(互联网小型计算机系统接口)的SAN作为发展中的市场正在引人注意,这是因为装置成本比较低并且可以有效利用现有设施。
例如,在日本公开专利申请(JP2005-151437(专利文献1)中公开了关于利用iSCSI的SAN的技术。在专利文献1中所描述系统中,指示SCSI命令被封装的信息存储于TCP(传输控制协议)包的报头中,并且通过参考此信息可以判断SCSI命令是否被封装而不必提取SCSI命令。
由于iSCSI在低于SCSI协议的层利用TCP/IP技术,发明人预期通过将开放流协议应用到采用iSCSI的系统,能获得具有高适应性(灵活性)的流控制。
开放流协议是一种由单位流来控制路由的方法,并且由开放流联盟(OpenFlow Consortium)建议(参考非专利文献1)。在开放流协议中,从一个点到另一个点的一系列通信被定义为″流″,该流由MAC地址、IP地址和端口号码或等的组合确定。当开放流协议被采用时,可以针对每个流改变路由,而不是基于有关源和目的地的信息而一致地被确定。再者,路由是端到端地被控制,而不仅仅是在两个相邻装置之间被控制。
然而,当前在OSI参考模型中,交换机(在下文称为开放流交换机)只能够处理从层1到层4的TCP层的各层,而不能够处理在这些层之上的iSCSI层。尽管在OSI参考模型中iSCSI层在层4之内,但是由于iSCSI层在TCP层之上,因此开放流交换机并不能识别该iSCSI层。因此,当前开放流系统无法利用iSCSI层的SCSl名称(发起方名称或目标名称)来执行流控制。
为了更灵活地实施流控制,开放流交换机优选地能够处理有关iSCSI层的信息。特别地,如果开放流交换机能够处理iSCSI名称,则有用性被提高,这是因为流控制基于iSCSI名称而被实施。另一方面,如果利用iSCSI名称的流控制是不可能的,则由于流不是针对每个发起方或目标被控制,因此难以构造具有大适应性的网络并且难以有效地使用SAN中的逻辑磁盘。
另一方面,例如,在日本公开专利申请JP2006-129487(参考专利文献2)和日本公开专利中请(特开平JP11-239163(参考专利文献3)中描述了有关利用TCP的流控制的技术。在专利文献2中描述了一种系统,该系统利用TCP包的选项字段来区别连接到服务器的终端。再者,在专利文献3中,描述了交换机在各LAN之间执行流控制的技术。
文献列表
[专利文献]
[专利文献1]日本公开专利申请JP特开2005-151437
[专利文献2]日本公开专利申请JP特开2006-l29487
[专利文献3]日本公开专利申请JP特开平11-239163
[非专利文献]
[非专利文献1]开放流交换机规范版本1.0.0(线协议(WireProtoco1)0x01),2009年12月31日。
发明内容
如上所述,本发明的一个目的是提高计算机系统的适应性。
本发明的另一个目的是提供一种计算机系统,其能够基于TCP层之上的协议执行流控制。
根据本发明的计算机系统包括:开放流控制器;开放流交换机,该开放流交换机针对符合由开放流控制器设置的流条目的接收的包,执行由该流条目定义的中继操作;以及主机,该主机连接到开放流交换机。主机发送包,在该包中TCP层之上和传输层之内的协议信息被包括在TCP报头的选项区中。开放流控制器在交换机中设置流条目,该流条目定义转发目的地。根据符合在接收的包的TCP报头中所包括的协议信息的流条目,开放流交换机将所接收的包转发到转发目的地。
根据本发明的通信方法包括:由主机发送包,在该包中TCP层之上和在传输层之内的协议信息被包括在TCP报头中;由开放流控制器在交换机中设置流条目,该流条目定义与协议信息对应的转发目的地;以及由开放流交换机根据符合在接收的包的TCP报头中所包括的协议信息的流条目,向目的地转发符合由开放流控制器设置的流条目的接收的包。
根据本发明,可以提高计算机系统的适应性。
再者,可以实现根据TCP层之上的协议的流控制。
附图说明
从实施例的描述结合附图可以显见本发明的上述以及其它目的、优点和特征,其中在附图中:
图1为示出根据本发明的计算机系统的配置的一个示例的图示;
图2为示出由发起方或目标所产生和转发的包的配置的一个示例的图示;
图3为示出一般TCP包的数据设计的图示;
图4A为示出根据本发明的存储于TCP报头的选项区中的ISCSI信息的数据设计的一个示例的图示;
图4B为示出根据本发明的存储于TCP报头的选项区中的ISCSI信息的数据设计的另一示例的图示;
图4C为示出根据本发明的存储于TCP报头的选项区中的ISCSI信息的数据设计的再一示例的图示;
图5为示出根据本发明的开放流控制器的配置的一个示例的图示;
图6为示出根据本发明的在开放流控制器中设置的路由信息的配置的一个示例的图示;
图7为示出根据本发明的在开放流控制器中设置和管理的流表的配置的一个示例的图示;
图8为示出根据本发明的在开放流控制器中设置的流条目(规则+动作)的一个示例的图示;
图9为示出根据本发明的开放流交换机的配置的一个示例的图示;以及
图10为示出在根据本发明的计算机系统中包转发操作的一个示例的图示。
具体实施方式
在下文中,将参考附图解释根据本发明的实施例。在各图中,相同或类似的附图标记表示相同、类似或等效部件。当存在多个类似部件时,将附加数字附加到附图标记。当不加区别地描述部件时,附图标记并不附加数字。
(概要)
根据本发明的发起方转发包数据(包),在该包数据中,在层4(传输层)之内且在TCP层之上的协议信息(例如iSCSI名称)被存储于TCP报头的选项区。开放流控制器(在下文中称为控制器)在开放流交换机(在下文中称为交换机)中将具有TCP层之上的协议信息的流条目设置为规则。开放流交换机(在下文中称为交换机)参考所接收的包的TCP报头,从而将所接收的包转发到由与报头对应的流条目定义的转发目的地。结果,根据本发明的计算机系统能够控制由TCP层之上的协议信息所定义的流,并且实现具有高适应性(灵活性)的流控制。在下述示例中,将解释利用iSCSI名称作为协议信息来实施流控制的计算机系统。
(计算机系统的配置)
参考图1至9,将解释根据本发明的计算机系统的配置的一个示例。图1为示出根据本发明的计算机系统的配置的一个示例的图示。参考图1,根据本发明的计算机系统包括服务器100(主机)、存储设备200(存储装置,主机)、控制器300以及由多个交换机40-1至40-4形成的交换机网络400。例如,服务器100和存储设备200通过交换机网络400被连接而形成SAN,该交换机网络400经由线路600(例如以太网(注册商标)LAN)被连接。
服务器100为包括发起方101-1、101-2...的计算机装置。每个发起方101-1、101-2...可以由软件、硬件或二者的组合实现。发起方101用iSCSI发起方来说明,其具有诸如网络卡(网络接口卡NIC)的SCSI装置驱动器。发起方101将SCSI命令或SCSI数据封装在TCP包中从而发送给目标201。此时,由发起方101转发给目标201的包将在层4之内且在TCP层之上的协议信息存储于TCP报头的选项区。
存储设备200为包括目标20l-1、201-2...的存储装置。每个目标201-1、201-2...可以由软件、硬件或二者的组合实现。例如目标为诸如逻辑磁盘的存储装置。目标201将对于SCSI命令的应答封装到TCP包中,并且将该TCP包发送到发起方101。此时,由目标201转发给发起方101的包将在层4之内且在TCP层之上的协议信息存储于TCP报头的选项区。
图2为示出根据本发明由发起方或目标产生和转发的包的配置的一个示例的图示。此处,将说明根据iSCSI协议的包的配置。参考图2,包110为传统包,并且包210为根据本发明由发起方101或目标201产生和转发的包。包110为具有层2的报头的PDU(协议数据单元),并且包括SCSI层之内或之上(TCP层之上)的数据区111、iSCSI层的报头区112(在下文中称为iSCSI层报头112)、TCP层的报头区113(在下文中称为TCP层报头113)、以及IP层之内或之下的报头区114(在下文中称为IP层报头114)。发起方101或目标201将有关iSCSI协议的信息(iSCSI信息115,例如SCSl名称)记录在TCP层报头113中并且将其作为包210发送,而在传统包110中该信息应该存储于iSCSI层报头112中。此时,包110的iSCSI层报头112和数据区111在包210中被用作iSCSI层之内或之下(TCP层之上)的数据区211。结果,该包210作为PDU被转发到交换机网络400,该包210包括TCP层报头113、IP层报头114和iSCSI层之内或之下(TCP层之上)的数据区211。
此处,iSCSI名称优选作为iSCSI信息115,该iSCSI名称被用于识别和控制iSCSI节点(例如发起方101或目标201)。该iSCSI名称被唯一地分配给iSCSI节点,而不依赖于iSCSI节点的位置。在SCSI协议中使用了iSCSI合格名称(其利用IP域名)以及IEEE EUI-64格式(其利用IEEE的64位扩展唯一标识符)。例如,iSCSI信息115由这样的文本形成,在该文本中添加有类型标识符“iqn.″、域取得日期、域名以及域取得者。
尽管在图1所示配置中在服务器100中仅仅提供发起方101,但是优选地提供具有目标的功能的配置(例如网络适配器)。再者,尽管在图1所示配置中,在存储设备200中仅仅提供目标201,优选地提供具有发起方的功能的配置(例如网络适配器)。
图3为示出一般TCP包的数据设计的图示。参考图3,TCP层报头113包括多个字段,在所述多个字段中存储有源端口号码、目的地端口号码、序列号码、确认号码、报头长度、代码比特(URG、ACK、PSH、RST、SYN、FIN)、窗口大小、校验和、紧急指针、选项和数据。此处,选项存储于其中的字段(在下文中称为选项区)通常为具有来自被用于设置TCP连接特性的160字节的可变长度的字段,然而根据本发明,该选项区被用于存储iSCSI信息115。优选地,在TCP层报头113的选项区中,存储用于每个TCP连接的iSCSI信息115。
图4为示出根据本发明的存储于TCP报头的选项区中的iSCSI信息的数据设计的一个示例的图示。图4A指示当发起方名称和目标名称作为iSCSI信息115而被存储时,选项区的数据设计。图4B指示当仅仅发起方名称作为iSCSI信息115而被存储时,选项区的数据设计。图4C指示当仅仅目标名称作为iSCSI信息115而被存储时,选项区的数据设计。
当前没有被定义的“30至252”的任何一个优选地被用作选项类型。在本实施例中,假设使用“151”。
选项长度指示了包括选项类型和选项长度的区域的选项区的总大小,并且典型地指示512字节。每个选项类型和选项长度为1个字节。参考图4A,作为iSCSI信息115而被存储的发起方名称和目标名称中的每个均为255个字节。当iSCSI名称(发起方名称或目标名称)小于255个字节时,在距离选项长度的终止处255个字节的区域内,用″0x00″填充(0填充)其中并未存储iSCSI名称的空区域。类似地,在距离其中存储了iSCSI名称和“0x00″的该255个字节区域的终止处255个字节的区域内,用“0x00″填充其中并未存储iSCSI名称的空区域。当发起方名称和目标名称中的每个均为255个字节时,不插入0x00作为终止。
参考图4B,作为iSCSI信息115而被存储的发起方名称为255个字节,并且用0x00填充空区域(255个字节)。参考图4C,作为iSCSI信息115而被存储的目标名称为255个字节,并且用“0x00″填充空区域(255字节)。类似地,当iSCSI名称(发起方名称或目标名称)小于255个字节时,空区域用″0x00"填充。在根据本实施例的操作中,存储了两种类型的iSCSI名称。
控制器300通过控制接口500与多个交换机40-1至40-4的每一个连接,该控制接口500为安全通道网络。控制器300根据开放流协议在多个交换机40-1至40-4的每一个中设置流条目,从而通过多个交换机40-1至40-4的某些来控制在服务器100和存储设备200之间的通信流。再者,例如通过在交换机40中将具有TCP层之上的协议信息的流条目设置为规则,根据本发明的控制器300能够控制发起方和目标之间的流。
控制器300通过开放流技术来控制转发包的通信路由的构造以及系统中转发包的操作。此处,开放流技术是指这样的技术,其中控制器300在通信路由上的交换机40中根据路由策略(流条目:流+动作、)设置针对多层和流的路由信息,并且控制路由或节点(细节参考非专利文献1)。藉此,路由控制功能与路由器和交换机分离,并且优化的路由和流量管理通过控制器的集中控制被实现。针对其应用开放流技术的交换机40将通信作为具有端到端(END2END)的流来处理,而不是像传统路由器和交换机那样基于包或帧来处理。
参考图5,将解释根据本发明的控制器300的配置的细节。优选地,控制器300由包括CPU和存储装置的计算机实现。在控制器300中,图5所示的路由计算部31和流控制部32的功能由执行存储于存储装置的程序的CPU(未示出)实现。再者,控制器300将路由信息33和流表34记录于未被示出的存储装置中。
再者,控制器300将有关将被控制的交换机40的位置以及连接状态的信息保留为拓扑信息。例如,该拓扑信息包括有关交换机40的各端口和主机(例如服务器100或存储设备200)之间的每个连接状态的信息。
基于未被示出的拓扑信息以及交换机40通知的第一包的报头信息,路由计算部31计算用于传递包的通信路由。计算结果在未被示出的存储装置中作为路由信息33而被记录。这种情况下,设置用于指定作为通信路由的端部的那些节点(例如发起方和目标)以及指定布置在通信路由上的交换机的信息。
图6为指示根据本发明在开放流控制器中设置的路由信息33的配置的一个示例的图示。参考图6,路由信息33指定向其应用了后述的流条目(规则+动作)的通信路由,并且包括被记录为与关联到流条目的流标识符341关联的经过交换机信息332、附加信息333和端点信息331。端点信息331为用于指定作为通信路由的端点的那些节点的信息。经过交换机信息332为用于指定交换机40与通信路由上的交换机之间的一对连接端口的信息。附加信息333包括关于在端点改变之后路由上的交换机40(经过交换机)的信息。例如,当通信路由为连接在各节点之间的路由时,通信路由的两个端点的一对MAC地址被记录为端点信息331。经过交换机信息332包括在由端点信息331指示的各端点之间的通信路由上提供的交换机40的标识符(例如数据路径ID:DPID)。此外,经过交换机信息332可以包括用于将交换机中设置的流条目(规则+动作)与此交换机关联的信息。
通过修改流条目消息,流控制部32在所计算的通信路由上的交换机40中,执行对流条目(规则+动作)的设置、改变和删除。因而,交换机40根据所接收的包的报头信息来执行对应于该规则的动作(例如中继或删除包数据)。根据来自交换机40的第一包的通知,流控制部32设置针对交换机40的流条目。尽管通信路由的设置以及流控制部32执行的对流条目的设置和管理是根据专利文献1中描述的开放流协议来执行,但是后述操作中的部分(例如,其中规则为TCP层之上的协议信息的配置)此协议定义并未定义。
在流条目中设置的规则中,例如来自OSI(开放系统互连)参考模型的层1-4的地址和标识符的组合被定义,该组合被包括在TCP/IP的包数据的报头信息中。例如,可以将层1的物理端口、层2的MAC地址、层3的IP地址、层4的端口号码以及VLAN标签(VLAN id)的任意的组合设置为规则。
再者,根据本发明的流控制部32还将在TCP层之上以及传输层之内的协议信息设置为由流条目定义的规则。例如,将iSCSI层中的iSCSI名称(发起方名称、目标名称)独立地或者与上述地址或标识符组合地设置为规则。
例如,在流条目中设置的动作中,定义用于处理TCP/IP的包数据的方法。例如,设置指示所接收的包数据是否将被中继的信息以及在中继情况下的目的地(例如包的目的地端口号码)。另外,也可以将指示复制或撤销包数据的信息设置为动作。
交换机40中将被设置(或已被设置)的流条目由流控制部32记录于流表34中,并且由控制器300来管理。图7为示出根据本发明由控制器设置或管理的流表34的配置的一个示例的图示。在流表34中,用于指示将作为目标的交换机40的标识符(例如DPID)的目标装置342以及在此交换机40中将被设置的流条目340被记录为与标识该流条目的流标识符341关联。在流条目340中,设置了规则343和动作信息344。通过参考流表34,流控制部32能够识别在交换机40中设置了什么类型的流条目。再者,虽然图4未示出,流条目34可以包括指示流条目340是否在作为目标装置342的交换机40中被设置的信息。
图8为示出由控制器300(流控制部32)在交换机40中设置的流条目的一个示例的图示。在本发明中,在层4之内且在TCP层之上的协议信息能够成为规则。在图5所示示例中,流条目在路由A上的交换机40-2、40-4中被设置,该流条目包括规则和动作,该规则为IP地址以及在TCP层之上的iSCSI层的iSCSI名称的组合,并且该动作将根据作为通信路由的路由A来转发包。具体地,将源IP地址“1.0.0.2"、目的地IP地址“1.0.0.2″、发起方名称“iqn.2000-01.com.ABC:0123abcd”和目标名称“iqn.2000-01.com.ABC:01:xxxx-xx”定义为规则,并且将“输出此包到目的地端口号码以便转发到路由A”定义为动作。
根据由控制器300设置(更新)的流条目,交换机40确定处理所接收的包的方法(动作)。例如,转发到另一交换机40以及撤销包被示出为针对所接收的包的动作。
图9为示出根据本发明的交换机40的配置的一个示例的图示。参考图6,交换机40包括交换机操作部41、流表42和交换机控制部43。交换机操作部41容纳线路600,并且针对通过所容纳线路600而被转发的包执行交换功能。交换机控制部43通过控制接口500与控制器300连接,并且根据来自控制器300的指令设置流表42中的流条目。交换机操作部41根据在流表42中设置的流条目确定针对所接收的包的操作。具体地,当在流表中设置符合所接收的包的报头信息的规则时,交换机操作部41执行在包括该符合的规则的流条目中定义的动作。另一方面,当在流表中并未设置符合所接收的包的报头信息的规则时,交换机操作部41将此包数据作为第一包告知交换机控制部43。交换机控制部43通过控制接口500将该第一包发送到控制器300。
此处,在搜寻符合所接收的包的流条目时,根据本发明的交换机操作部41不仅使用专利文献1中定义的报头信息,而且使用TCP报头的选项区内的信息。例如,在接收图2所示的包210时,交换机操作部41不仅提取IP层报头114和TPC层报头113,而且还提取存储于TCP层报头113的选项区中的iSCSI信息115,从而利用流表42中登记的流条目(的规则)进行检查。此处,当在流表42中设置流条目(其中与iSCSI信息115对应的协议信息被定义为规则)时,交换机操作部41能够根据此流条目将所接收的包转发到转发目的地。这种情况下,接收的包被转发到与iSCSI信息115对应的通信路由。
可替换地,如果存在指定协议的报头信息,则交换机操作部41可以参考TCP层报头113的选项区以确认iSCSI信息115。例如,用于确认iSCSI信息115的这种条件优选地由控制器300与登记该流条目一起设置。
如上所述,在根据本发明的计算机系统中,通过开放流协议实现了由在层4之内且在TCP层之上的协议(例如iSCSI协议)定义的发起方和目标之间的通信控制(流控制)。例如,由于到指定目标的通信连接能够由控制器300控制,所以当目标移动时,该流能够容易地改变。再者,可以容易地处理目标的添加或控制。
(操作)参考图10,将解释根据本发明的计算机系统中包转发操作的细节。图10为示出根据本发明的在计算机系统的包转发操作的一个示例的图示。此处,作为一个示例,将解释在图4A所示包括TCP报头的包210从发起方101-1转发到目标201-1的情况下的操作。
参考图10,发起方101转发包210(步骤S1),该包中发起方名称和目标名称被存储于TCP报头的选项区。在本发明中,当朝向TCP层传送转发的数据时,iSCSI层中的发起方101指定选项区的数据。这种情况下,图4A所示数据设计中的iSCSI信息115(发起方名称和目标名称、)被指定为选项区的数据。
从发起方101传送的包210首先被输入交换机40-2。交换机40-2确认在其自己的流表42中是否登记了符合接收的包210的流条目。此处,确认从层1到层4的TCP层(包括选项区)的包210的报头信息是否符合在流表42中设置的规则。
当有关包210的流条目未被登记在流表42中时,交换机40-2将包210作为第一包发送给控制器300(步骤S2)。
控制器300基于所通知的包210的报头信息来计算包210的转发路由,并且在交换机40中设置流条目(步骤S3、S4)。详细地,控制器300参考TCP报头的选项区以确认iSCSI信息115被存储。因而,控制器300识别出包210为符合iSCSI协议的数据。接着,控制器300计算在基于存储于包210中的iSCSI信息115和的其它报头信息(例如IP地址和MAC地址)所指定的各端点之间的通信路由(步骤S3)。随后,控制器300在通信路由上的交换机中设置流条目,在该流条目中规则为iSCSI信息115和其它报头信息的组合,并且动作是转发到所计算的通信路由(步骤S4)。
在本示例中,在通信路由得计算阶段,经由交换机40-4到达存储设备200的路由(假设为路由A)被选择为使得路由长度最短。再者,控制器300定义此路由,使得交换机通过包括源IP地址、目的地IP地址以及TCP报头的选项区的发起方名称和目标名称的信息来识别该路由。这种情况下,例如如图8所示,流条目在通信路由上的交换机40-1、40-2中被设置,该流条目定义“当源IP地址为1.0.0.1并且目的地IP地址为1.0.0.2时参考TCP选项区,以及当发起方名称为iqn.2000-01.com.nec:0123abcd并且目标名称为iqn.2000.01.com.nec:01:xxxx-xx时,发送到路由A”。此处,在交换机40中设置的包210的输出目的地取决于交换机,并且例如在该动作中定义作为所计算的路由的输出目的地的端口号码。
根据流条目的设置,交换机40-2和40-4参考选项区,从而针对其中源IP地址为1.0.0.1并且目的地IP地址为1.0.0.2的包,利用流条目进行检查。
根据控制器300设置的流条目,交换机40-2将包210输出到路由A(步骤S5)。这种情况下,交换机40-2通过连接到路由A上的交换机40-4的端口来输出包210。由于所接收的包210中源IP地址为“1.0.0.1″并且目的地地址为“1.0.0.2″,交换机40-4参考TCP报头的选项区。这种情况下,选项区包括发起方名称iqn.2000-01.com.nec:0123abcd以及目标名称iqn.2000-01.com.nec:01:xxxx-xx。因此,交换机40-4判定所接收的包符合在步骤S4设置的流条目,并且将包210输出到由此流条目定义的路由A(步骤S6)。这种情况下,交换机40-4通过连接到路由A上的存储设备200的端口来输出包210。
存储设备200参考所接收的包210的数据区211以确认目标名称,并且将其输出到对应目标201(步骤S7)。可替换地,存储设备200可以参考所接收的包210中的TCP层报头113的选项区以确认目标名称。这种情况下,由于发起方不需要在数据区211中插入目标名称,数据区211的存储区域能够大于传统包110的存储区域。
这种情况下,包210被发送到具有包括在包210中的目标名称“iqn.2000-01.com.nec:01:xxxx-xx"的目标201-1。
当SCSI命令被包括在包210中时,目标201-1将应答封装在包中,如上所述,将自己的目标名称和TCP层报头113中源的发起方名称记录为iSCSI信息115,并且向服务器100发送该信息。由于转发包210的过程与上文类似,省略解释。
此后,经由由控制器300设置的路由A,在发起方101-1和目标201-1之间执行TCP/IP包通信。
如上所述,在根据本发明的计算机系统中,由于利用开放流协议针对每个发起方和目标来控制流,可以获得下述效果。
(1)在多个逻辑磁盘作为相对于一个发起方的目标而被提供的配置中,流能够针对每个目标而被控制。
(2)在可扩展配置中,当目标的IP地址改变时(当作为目标的逻辑磁盘在多个存储设备之间转移时,或者类似情况),可以适应性控制流。这种情况下,控制器300执行新通信路由的计算以及基于有关改变的目的地的信息而设置流条目,参考路由信息33和流表34以指定不需要的通信路由和流条目,并且将它们从交换机删除。
(3)类似地,在可扩展配置中,当发起方的IP地址改变时(当发起方在多个服务器之间转移时,或者类似情况),可以适应性控制流。
(4)即使在利用其中iSCSI以外的包流动的网络(诸如LAN或WAN)的情况下,或者在利用网状网络的情况下,也可以适应性地选择路由。
如上所述,已经解释了根据本发明的实施例的细节,然而,特定配置不限于上述实施例,并且本发明也可以包括在不背离本发明精神的范围进行改动的配置。例如在上述实施例中,通过iSCSI名称和IP地址的组合来识别和控制流,然而,可以通过IP地址以外的规则来控制流,该规则为与MAC地址或端口号码的组合。
另外,在上述实施例中,已经解释了其中流由流条目控制的情形,该流条目指定与路由上的交换机相关的转发目的地端口。然而,本发明并不限于此。根据本发明的交换机40能够利用iSCSI信息115确定转发目的地,这是因为能够参考TCP报头的选项区来识别iSCSI信息115。因此,通过基于第一包设置在所有交换机40(图1中,交换机40-1至40-2)中已经设置的流条目,控制器300能够根据iSCSI名称实施流控制。另外,在步骤S40特别被用于选择路由的策略可以基于实现而改变。
再者,可以在该系统中提供多个服务器100和多个存储设备200,并且交换机40、发起方101和目标201的数目在上述示例中不受限制。此外,发起方101或目标201可以安装在实现服务器或存储设备以外的功能的计算机装置(主机)上。
本申请是基于日本专利中请No.2011-052130,并且其公开内容通过引用结合于此。
Claims (12)
1.一种计算机系统,包括:
开放流控制器;
开放流交换机,所述开放流交换机被配置成根据由所述开放流控制器设置的流条目,针对符合所述流条目的接收的包,执行中继操作;以及
主机,所述主机连接到所述开放流交换机,
其中所述主机被配置成发送所述包,在所述包中,在传输层之内且在TCP(传输控制协议)层之上的协议信息被存储于TCP报头的选项区中,
其中所述开放流控制器被配置成在交换机中设置所述流条目,所述流条目定义与所述协议信息对应的转发目的地,以及
其中所述开放流交换机被配置成根据符合在所述接收的包的所述TCP报头中所包括的所述协议信息的所述流条目,向所述转发目的地转发所述接收的包。
2.根据权利要求1所述的计算机系统,其中所述协议信息包括iSCSI(互联网小型计算机系统接口)名称,所述iSCSI名称标识作为目标的目的地主机,以及
其中所述开放流控制器被配置成,在连接所述主机和所述目的地主机的路由上的交换机中,设置定义与所述iSCSI名称对应的所述转发目的地的所述流条目。
3.根据权利要求2所述的计算机系统,其中所述iSCSI名称仅仅包括发起方名称,或者仅仅包括目标名称。
4.根据权利要求1至3中任一项所述的计算机系统,其中所述协议信息被存储于所述TCP报头的选项区中。
5.根据权利要求1至4中任一项所述的计算机系统,其中所述目的地主机为逻辑磁盘。
6.一种在根据权利要求1至5中任一项所述的计算机系统中用作所述主机的服务器。
7.一种在根据权利要求1至5中任一项所述的计算机系统中使用的开放流控制器。
8.一种在根据权利要求1至5中任一项所述的计算机系统中使用的开放流交换机。
9.一种通信方法,包括:
由主机发送包,在所述包中,在传输层之内且在TCP(传输控制协议)层之上的协议信息被存储于TCP报头中;
由开放流控制器在交换机中设置流条目,所述流条目定义与所述协议信息对应的转发目的地;以及
由所述开放流交换机根据符合在所述接收的包的所述TCP报头中所包括的所述协议信息的所述流条目,向所述转发目的地转发所述接收的包,所述开放流交换机被配置成根据所述流条目,针对符合由所述开放流控制器设置的所述流条目的所述接收的包,执行中继操作。
10.根据权利要求9所述的通信方法,其中所述协议信息包括iSCSI(互联网小型计算机系统接口)名称,所述iSCSI名称标识作为目标的目的地主机,以及
其中所述开放流控制器被配置成在连接所述主机和所述目的地主机的路由上的交换机中,设置定义与所述iSCSI名称对应的所述转发目的地的所述流条目。
11.根据权利要求10所述的通信方法,其中所述iSCSI名称仅仅包括发起方名称,或者仅仅包括目标名称。
12.根据权利要求9至11中任一项所述的通信方法,其中所述发送包包括:由所述主机将所述协议信息存储于所述TCP报头的选项区中从而生成所述包。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011052130 | 2011-03-09 | ||
JP2011-052130 | 2011-03-09 | ||
PCT/JP2012/053773 WO2012120990A1 (ja) | 2011-03-09 | 2012-02-17 | コンピュータシステム、サーバ、オープンフローコントローラ及び通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103430496A true CN103430496A (zh) | 2013-12-04 |
Family
ID=46797959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012800122205A Pending CN103430496A (zh) | 2011-03-09 | 2012-02-17 | 计算机系统、服务器、开放流控制器和通信方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9397937B2 (zh) |
EP (1) | EP2685675A4 (zh) |
JP (1) | JP5911108B2 (zh) |
CN (1) | CN103430496A (zh) |
WO (1) | WO2012120990A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015109822A1 (zh) * | 2014-01-27 | 2015-07-30 | 中兴通讯股份有限公司 | 一种of协议指令实现方法及控制器 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104283814B (zh) * | 2013-07-05 | 2018-03-30 | 中兴通讯股份有限公司 | 控制数据转发的方法及逻辑交换机 |
WO2015068598A1 (ja) * | 2013-11-11 | 2015-05-14 | 日本電気株式会社 | 装置、セッション処理品質安定化システム、優先度処理方法、送信方法、中継方法およびプログラム |
CN105099721B (zh) * | 2014-04-28 | 2018-12-07 | 华为技术有限公司 | 维护组播成员的方法及设备 |
EP3166265B1 (en) | 2014-08-06 | 2019-10-02 | Huawei Technologies Co., Ltd. | Method, apparatus and system for processing data packet in software defined network (sdn) |
JP6631065B2 (ja) | 2014-11-25 | 2020-01-15 | 株式会社リコー | 通信路切替装置、通信路切替装置の制御方法、及びプログラム |
US11281600B2 (en) * | 2019-06-12 | 2022-03-22 | Dell Products L.P. | ALUA/aggregated switch latency reduction system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1289494A (zh) * | 1998-01-29 | 2001-03-28 | 艾普动力公司 | 在网络上用域名路由选择发送数据到目的端的系统和方法 |
WO2010103909A1 (ja) * | 2009-03-09 | 2010-09-16 | 日本電気株式会社 | OpenFlow通信システムおよびOpenFlow通信方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11239163A (ja) | 1998-02-23 | 1999-08-31 | Nippon Telegr & Teleph Corp <Ntt> | Lan間フロー制御方法及びスイッチ |
JP3757917B2 (ja) | 2002-08-20 | 2006-03-22 | 日本電気株式会社 | パケット転送装置、パケット転送方法解決サーバ、dnsサーバ、ネットワークシステム及びプログラム |
JP4137757B2 (ja) | 2003-10-01 | 2008-08-20 | 株式会社日立製作所 | ネットワーク変換器及び情報処理システム |
JP4152866B2 (ja) | 2003-11-19 | 2008-09-17 | 株式会社日立製作所 | 記憶装置、記憶装置システム、および、通信制御方法 |
KR100619949B1 (ko) | 2004-10-29 | 2006-09-13 | 엘지전자 주식회사 | 고속 이동통신망에서의 티씨피 흐름 제어방법 |
JP2008527772A (ja) * | 2004-12-31 | 2008-07-24 | ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー | コネクションレス通信トラフィックのためのコネクション型通信スキーム |
-
2012
- 2012-02-17 WO PCT/JP2012/053773 patent/WO2012120990A1/ja active Application Filing
- 2012-02-17 EP EP12754670.3A patent/EP2685675A4/en not_active Withdrawn
- 2012-02-17 CN CN2012800122205A patent/CN103430496A/zh active Pending
- 2012-02-17 US US14/003,782 patent/US9397937B2/en active Active
- 2012-02-17 JP JP2013503438A patent/JP5911108B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1289494A (zh) * | 1998-01-29 | 2001-03-28 | 艾普动力公司 | 在网络上用域名路由选择发送数据到目的端的系统和方法 |
WO2010103909A1 (ja) * | 2009-03-09 | 2010-09-16 | 日本電気株式会社 | OpenFlow通信システムおよびOpenFlow通信方法 |
Non-Patent Citations (1)
Title |
---|
OPEN FLOW GROUP: "OpenFlow Switch Specification version 0.9.0A", 《OPENFLOW SWITCH SPECIFICATION VERSION 0.9.0A》, 20 July 2009 (2009-07-20) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015109822A1 (zh) * | 2014-01-27 | 2015-07-30 | 中兴通讯股份有限公司 | 一种of协议指令实现方法及控制器 |
Also Published As
Publication number | Publication date |
---|---|
EP2685675A1 (en) | 2014-01-15 |
JPWO2012120990A1 (ja) | 2014-07-17 |
WO2012120990A1 (ja) | 2012-09-13 |
JP5911108B2 (ja) | 2016-04-27 |
EP2685675A4 (en) | 2014-12-10 |
US9397937B2 (en) | 2016-07-19 |
US20130343393A1 (en) | 2013-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6418261B2 (ja) | 通信システム、ノード、制御装置、通信方法及びプログラム | |
CN102804693B (zh) | 用于在ip网络上实现l2 vpn的方法和设备 | |
CN103430496A (zh) | 计算机系统、服务器、开放流控制器和通信方法 | |
JP5590263B2 (ja) | 情報システム、制御装置、仮想ネットワークの提供方法およびプログラム | |
CN108243103B (zh) | 用于在克洛斯网络中分配路由协议信息的装置、系统和方法 | |
CN109218178A (zh) | 一种报文处理方法及网络设备 | |
CN105933228A (zh) | 用于位索引显式复制的流量工程 | |
CN104052574A (zh) | 在网络控制器和交换机之间控制数据的传输的方法和系统 | |
CN101286922B (zh) | 一种信令控制的方法、系统及设备 | |
CN104937885A (zh) | 用于结构交换机的全局vlan | |
CN106105130A (zh) | 携带熵头的源路由 | |
JP6206508B2 (ja) | パケット転送装置、制御装置、通信システム、通信方法及びプログラム | |
CN111835645B (zh) | 用于跨网络内的多个接口代理子网内流量的方法、系统和装置 | |
JP5987971B2 (ja) | 通信システム、スイッチ、制御装置、制御用チャネルの構築方法及びプログラム | |
CN111147372B (zh) | 下行报文发送、转发方法和装置 | |
US10693777B2 (en) | In-situ operations, administration, and maintenance (iOAM) for software defined architectures (SDAs) | |
CN107231307A (zh) | 用于防止数据中心架构内子网间流量转接的方法、系统和装置 | |
JP5818268B2 (ja) | 通信システム、制御装置、経路制御方法およびプログラム | |
WO2014129624A1 (ja) | 制御装置、通信システム、経路切替方法及びプログラム | |
JP6525256B2 (ja) | 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法 | |
TW201803314A (zh) | 伺服器、開關、通信系統、通信方法及記錄媒體 | |
CN105027513A (zh) | 通信系统、整合控制器、分组转发方法和程序 | |
US20110235573A1 (en) | Mobile ad hoc network configured as a virtual internet protocol network | |
CN103856400A (zh) | FCoE报文转发方法、设备及系统 | |
KR20140131480A (ko) | 루트화된 다점 연결 네트워크에서 보호절체 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20171208 |