实现多用户端同时连线至服务器的方法

文档序号:7683204阅读:171来源:国知局
专利名称:实现多用户端同时连线至服务器的方法
技术领域
本发明是有关于一种同时使多个用户端连线至一服务器的方法,且特别是 有关于一种由一发起端指示多个用户端,以求准确地在同一时间点下,瞬间连 线此服务器的方法。
背景技术
文件传输协议(File Transfer Protocol; FTP)是一个历史悠久的网络通讯协 议,主要的功能是用来传输文件。和大多数的网络协议一样,文件传输协议采 用一种用户端/服务器端的结构(Client/Server),各地的用户端可以通过网络连
到服务器端上传或下载文件。文件传4rf办议比较特别的地方在于使用时必须建 立二种连接,其中的一种连接用来传递控制指令,另一种连接用来传输文件数 据或查看文件目录。
当用户端执行一文件传输协议软件,而首先连线至一文件传输协议服务器 时,用户端会先连接到文件传输协议服务器的连接端口,以建立用来传递控制 指令的"控制流"(Control Stream),接着,用户端会输入账号、密码等指令, 这些指令及其回应都是使用"控制流"。此时,若用户端欲下载文件数据或是 需要査看文件目录时,文件数据或文件目录是通过另一种"数据流"(Data Stream)来进行传递。"数据流"和"控制流"不同之处在于数据流所传输的 数据比较大,而控制流只是用来传输指令及简单的回复。
因此,针对上述文件传输协议服务器的测试中,服务器测试工具对于文件 传输协议服务器的压力测试(Stress testing)是通过由不同用户端在同一时间 点下对一文件传输协议服务器进行"控制流",借此判断此文件传输协议服务 器能否在同一时间点下,瞬间接受一定数量用户端的连线工作,而可以保持一 定的稳定性。
然而,对于分散式系统下而言,各用户端之间的时间同步化是相当困难的, 加上各用户端所安装的测试工具本身并无类似的设置,使得各用户端之间无法通过测试工具本身彼此之间互相沟通合作,以串联其他用户端在一定时间点下 同时对一文件传输协议服务器进行,无法实现同步化的功能。另外,各用户端 必须分配人力,以尽量同时进行连线至文件传输协议服务器端,如此,对于人 力的安排及所必须付出的人力成本势必提高不少。因此,如何促使各用户端之 间可彼此之间互相沟通合作,在同一时间点下实现对一文件传输协议服务器端 进行同步化连线的动作,而得知此文件传输协议服务器的最大可连线用户端的 数量,以供本领域技术人员了解此文件传输协议服务器的特性及改进方向,即 成为目前亟待解决的一重要课题。

发明内容
本发明的一目的在于提供一种实现多用户端同时连线至服务器的方法,降 低人力操作众多用户端的操作时间,以提升工作效率。
本发明的另一目的在于以最少数量的用户端而模拟大量连线至服务器的 数量,以降低提供更多用户端的成本。
根据上述目的,本发明提供一种实现多用户端同时连线至服务器的方法, 此方法可应用于一分散式系统的多个用户端,且此用户端属于同一级网段,其 包括选定其中一用户端为一发起端;使发起端分别指示其余的用户端在一预定 时间后,共同对一服务器进行连线工作;其余的用户端在接受指示后,便分别 对发起端进行回复,以供发起端得知可进行连线工作的用户端的数量,上述的 预定时间过后,发起端及其余可进行连线工作的用户端同时对此服务器进行连 线工作,如此,发起端及此用户端便可同时连线至此服务器,以测试此服务器 在一定数量的用户端在进行连线工作时的稳定性。
下面结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的 限定。


为让本发明的上述和其他目的、特征、优点与实施例能更明显易懂,所附 附图的详细说明如下
图1为本发明实施例的结构关系示意图; 图2为本发明实施例的方法流程图;图3为图2的歩骤204的细部流程图4为图2的步骤205的细部流程图。其中,附图标记
分散式系统l 201-205:步骤
FTP服务器IO 2041-2045:次步骤
用户端ArAn 2051-2054:次歩骤
连线通道t广tn
具体实施例方式
本发明公开一种实现多用户端同时连线至服务器的方法,此方法不仅可测试文件传输协议(FTP)服务器IO,其余的服务器(如网站服务器、邮件服
务器或交换机服务器等)也可被应用以在大量连线数量下测试其稳定性,其中
一实施例为在此以测试FTP服务器10为例,图1为本发明实施例的关系示意图。本发明可针对一分散式系统1下的多个用户端ArA。(如电脑节点,node),可想而知,此分散式系统l下的该用户端ArAn的系统时间不尽相同,使得该用户端ArAn的系统时间无法理想地一致化,而且该用户端ArAn均属于同一级的网段(Internet Protocol Range, IP Range),其中此网段所指的是IP地址的网段,例如192.168丄100/24(C级网络)和192.168.1.200/24是在同一级的网段中,反之,192.168.1.100/24和192.168.5.200/24就是在不同的网段。图2为本发明实施例的方法流程图,此方法包括步骤(201)-歩骤(205),其中歩骤C201)选定其中的一个用户端为一发起端
如图1所示,实施例中的用户端ArAn为相同的电脑节点,均具有连接网络及收发数据包的功能,使用者可选定任一电脑节点(例如用户端A。为发起端,并设定预定进行此次"控制流"工作的连线数量(如120个),因此,本领域技术人员仅需在用户端Ai的位置配置少数人力,便可操控不同位置下的用户端A2-A。包括用户端A1;不需在各用户端前另外配置人力;
步骤(202)由发起端分别指示其余的用户端,使其在一预定时间后,共同对一 FTP服务器10进行连线工作
此实施例中,由发起端(即用户端A》以一种用户数据报协议(UserDatagram Protocol, UDP)的广播方式分别发送一指示数据包至其余的用户端A2-An,以提供其余的用户端A2-An对此FTP服务器10进行"控制流"工作的
细节资料。
上述提到的指示数据包遵守UDP协议,其中至少包括多个栏位如下
(1) 表头(UDP Header)栏位记载有此数据包的数据包信息、检査号码、旗号等表头信息。
(2) 服务器的IP位置(Server IP)栏位记载有预定连线至FTP服务器IO的IP位置。
(3) 账号名称(Username)栏位记载有可连线至此FTP服务器10的账号名称。
(4) 账号密码(Password)栏位记载有可连线至此FTP服务器10的账号密码。
(5) 执行序数量(Threadnumber)栏位记载有命令用户端模拟连线此FTP服务器10的应用程序数量。
(6) 预定时间(Time to start)栏位记载有一可供计量以得知可否对此FTP服务器10进行"控制流"工作的时间值(如5分钟),待此时间值过后,其余可进行连线工作的用户端便开始对此FTP服务器IO进行连线工作。由于该用户端的系统时间并无法理想地一致化,因此,若此栏位中所记载的数据为时刻(如x点x分)时,其对于用户端同时进行连线的目的并无太大意义,因此,预定时间量栏位较适当记载如时间长度类的时间值。
如此,其余的用户端A2-An在指示数据包中得知此指示数据包的表头信息、预定连线至FTP服务器IO的IP位置、账号名称、账号密码、模拟连线的应用程序数量以及预定连线的时刻后,便可跳至下一步骤。
在此可一提的是,UDP协定为一种非连线型(Connectionless)的非可靠传输协定,其特点为(i)不运用确认机制来保证数据是否正确地被接收;(ii)不需要重传遗失的数据;(iii)数据的接收可不必按顺序进行;(vi)不提供回传机制来控制数据流的速度;(v) UDP的数据包可能会在传送过程中丢失、重复、非依序或突变的传输速度导致接收端接收不及;
步骤(203)使其余的用户端A2-An在接受指示后,分别回复发起端(即用户端A。,以供发起端(即用户端A》得知可同时进行连线工作的用户端
数量由于现实情况中,并非每一用户端都得以进行"控制流"的工作,某些用户端可能故障或有其他用途。因此,由此歩骤可知,必须使得其余的用户端A2-An在收到上述的指示数据包后,分别发出一回复数据包至发起端(即用户端A。,以便回复发起端(即用户端A。其余的用户端A2-An是否进行此次
"控制流"工作,以便由发起端(即用户端A,)掌握此次"控制流"工作的
用户端数量。
步骤(204)使发起端(即用户端A。利用执行序数量栏位的应用程序数
量,调整可同时进行连线工作的一实际连线数量
由于连线至服务器的数量亦是本领域技术人员了解此服务器可提供连线的极限数量及负荷能力的重要数据,发起端必须确保实际的连线数量相当于预
定的连线数量,因此,此实施例中,图3为图2的步骤204的细部流程图。当发起端(即用户端A。收到各回复数据包时,发起端(即用户端A,)用以控制及调整可进行"控制流"工作的连线数量的应对步骤依序为步骤(2041)取得实际连线数量
此步骤中可将发出回复数据包的用户端,定义为可同时进行"控制流"工作的用户端,该用户端所接收指示数据包中的执行序数量栏位的应用程序数量以及发起端本身所代表的用户端的总和即为实际连线数量。
例如本实施例中可进行此次"控制流"工作的用户端为A2-A1() (9个),且用户端A2-Au)所收到指示数据包的分别为10个,意指用户端A2-Au)可代表连线至FTP服务器10的连线数量为90个连线数量(即模拟的电脑结点),再加上发起端(即用户端A。本身所代表的用户端的IO个应用程序数量,共只有100个连线数量(即模拟的电脑结点),不符预定进行此次"控制流"工作的120个连线数量(即模拟的电脑结点);
步骤(2042)判断上述实际的连线数量是否符合预定的连线数量,若是,结束歩骤(204),并继续步骤(205),否则进行步骤(2043);
步骤(2043)依据步骤(2041)中所取得的实际连线数量,调整各个可同时进行此次"控制流"工作的用户端的应用程序数量,使得其实际的连线数量符合预定的连线数量。
例如本实施例中可进行此次"控制流"工作的连线数量仅为IOO个(即模拟的电脑结点),不足预定进行此次"控制流"工作的120个连线数量,因此,发起端(即用户端A,)便使各用户端A,-Au)的应用程序数量调整为12个应用
程序,使得可进行此次"控制流"工作的连线数量符合预定进行此次"控制流"
工作的120个连线数量;
步骤(2044)更新调整后的应用程序数量至执行序数量栏位中,并由发起端(即用户端A。以UDP广播方式分别发送另一指示数据包至各个可同时进行"控制流"工作的用户端(即用户端A2-An)),其中另一指示数据包的表头信息、预定连线至FTP服务器10的IP位置、账号名称、账号密码以及预定连线的时间值与原先的指示数据包均未改变,唯一改变的只是模拟连线的应用程序数量(如本实施例中,由IO个改为12个)。其中值得一提的是由于发起端
(即用户端A,)为一电脑结点,其执行的速度相当快,而预定连线的时间值若足够时,发起端便不需对另一指示数据包中的预定连线的时间值加以修改;步骤(2045)各个可进行此次"控制流"工作的用户端(即用户端A2-A10)在接收另一指示数据包后,再次发出另一回复数据包至发起端(即用户端A,),以供发起端(即用户端A。得知可同时进行连线工作的用户端数量,回步骤
(2041)。
步骤(205)上述的预定时间过后,使发起端(即用户端A,)及其余可进行连线工作的用户端(即用户端A2-A1Q)同时对FTP服务器IO进行连线工作
此实施例中,图4为图2的歩骤205的细部流程图。各个可进行此次"控制流"工作的用户端A,-An)(包括发起端)便依据下列步骤进行步骤(2051)进行计时工作(可为向上累加时间或倒数计时);
步骤(2052)依据另一指示数据包的预定时间值栏位中的时间值,判断是否到达预定连线的时刻,若是,则进行步骤(2053),否则,回步骤(2051);
步骤(2053)依据另一指示数据包中的模拟连线的应用程序数量,分配多个可供连线至FTP服务器10的连线通道t,-tn;以及
步骤(2054)依据另一指示数据包中的表头信息、预定连线至FTP服务器10的IP位置、账号名称及账号密码,使得该连线通道t,-tn开始对FTP服务器IO进行"控制流"。
如此,本发明通过上述的流程方法,可充分克服分散式系统1的多个用户端无法同一时间点下连线至一服务器的缺点,而实现多用户端同时连线服务器,以测试此服务器在一定数量的用户端在进行连线时的稳定性;同时,本发明亦提供降低人力操作众多用户端的操作时间,也提供了以最少数量的用户端而模拟大量用户端的方法,以降低人力成本及提供更多用户端的成本。
虽然本发明己以一较佳实施例揭露如上,然其并非用以限定本发明,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1. 一种实现多用户端同时连线至服务器的方法,其应用在一分散式系统下的数个用户端,其特征在于,该方法包括选定该用户端的其中之一为一发起端;使该发起端分别指示该其余的用户端在一预定时间后,共同对一服务器进行连线工作;使该其余的用户端在接受指示后,分别回复至该发起端,以供该发起端得知可进行连线工作的用户端数量;以及待该预定时间过后,使该发起端及其余可进行连线工作的用户端同时对该服务器进行连线工作。
2. 根据权利要求1所述的方法,其特征在于,该主控端以一种用户数据 报协议的广播方式,分别发送一指示数据包至其余的用户端中,提供其余的用 户端对该服务器进行连线工作的数据。
3. 根据权利要求2所述的方法,其特征在于,该指示数据包内包括一表 头栏位、 一服务器的IP位置栏位、 一账号名称栏位、 一账号密码栏位、 一执 行序 数量栏位及一预定时间栏位。
4. 根据权利要求3所述的方法,其特征在于,该指示数据包的执行序数 量栏位中,记载有一种应用程序的数量,该种应用程序用以模拟连线至该服务 器。
5. 根据权利要求3所述的方法,其特征在于,该指示数据包的预定时间 栏位,记载有一时间值,待该时间值过后,其余可进行连线工作的用户端便开 始对该服务器进行连线工作。
6. 根据权利要求4所述的方法,其特征在于,该其余的用户端分别回复 该发起端的步骤中,分别发出一回复数据包至该发起端,以供该发起端得知可 同时进行连线工作的用户端数量。
7. 根据权利要求6所述的方法,其特征在于,该其余的用户端分别回复 该发起端的步骤后,更包括使该发起端利用该执行序数量栏位的应用程序数量,调整可同时进行连线 工作的一实际连线数量。
8.根据权利要求7所述的方法,其特征在于,使该发起端利用该执行序 数量栏位的应用程序数量,调整该实际连线数量的步骤中,更包括得知该实际连线数量,其中该实际连线数量为可同时进行连线工作的用户 端所接收指示数据包中的执行序数量栏位的应用程序数量总和;判断该实际连线数量是否符合一预定的连线数量;当该实际连线数量不符该预定的连线数量,则依据该实际连线数量调整每 一该可同时进行连线工作的用户端所接收的指示数据包的执行序数量栏位的 应用程序数量,使其实际连线数量符合该预定的连线数量;更新调整后的应用程序数量至该执行序数量栏位中,并由该发起端以 UDP广播方式分别发送另一指示数据包至每一该可进行连线工作的用户端; 以及使每一该可进行连线工作的用户端在接收该另一指示数据包后,再次发出 另一回复数据包至该发起端,以供该发起端得知可同时进行连线工作的用户端数量。
9. 根据权利要求1所述的方法,其特征在于,每一该用户端为一电脑结点。
10. 根据权利要求1所述的方法,其特征在于,该服务器为一 FTP服务器。全文摘要
一种实现多用户端同时连线至服务器的方法,此方法可应用于一分散式系统的多个用户端,且该用户端属于同一级网段,包括有选定其中一用户端为一发起端;使发起端分别指示其余的用户端在一预定时间后,共同对一服务器进行连线工作;其余的用户端在接受指示后,便分别对发起端进行回复,以供发起端得知可进行连线工作的用户端数量,上述预定时间过后,发起端及其余可进行连线工作的用户端同时对此服务器进行连线工作,如此,发起端及该用户端便可同时连线至此服务器,以测试此服务器在一定数量的用户端在进行连线工作时的稳定性。
文档编号H04L12/56GK101499994SQ20081000612
公开日2009年8月5日 申请日期2008年2月3日 优先权日2008年2月3日
发明者张裕昌 申请人:英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1