CN103098036A - 数据共享系统、终端以及数据共享方法 - Google Patents
数据共享系统、终端以及数据共享方法 Download PDFInfo
- Publication number
- CN103098036A CN103098036A CN201080069069XA CN201080069069A CN103098036A CN 103098036 A CN103098036 A CN 103098036A CN 201080069069X A CN201080069069X A CN 201080069069XA CN 201080069069 A CN201080069069 A CN 201080069069A CN 103098036 A CN103098036 A CN 103098036A
- Authority
- CN
- China
- Prior art keywords
- terminal
- data
- time
- calculation process
- power consumption
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4265—Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1087—Peer-to-peer [P2P] networks using cross-functional networking aspects
- H04L67/1091—Interfacing with client-server systems or between P2P systems
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
在从其他终端#1(9)对第1终端#0(1)传输数据所需要的估计时间、在第1终端#0(1)中对汇集于第1终端#0(1)的数据进行运算处理所需要的估计时间以及从第1终端#0(1)向其他终端#1(9)传输运算处理完毕的数据所需要的估计时间的合计时间满足实时制约,并且在第1终端#0(1)中对汇集于第1终端#0(1)的数据进行运算处理时消耗的估计电力小于在其他终端#1(9)中估计的消耗电力的情况下,数据共享系统选择将第1终端#0(1)作为服务器并将其他终端#1(9)作为客户端的CS方式。在多个终端(1、9)中任意终端的合计时间均不满足实时制约的情况下,数据共享系统选择P2P方式。
Description
技术领域
本发明涉及数据共享系统、终端以及数据共享方法。
背景技术
以往,作为在多个终端间共享数据的方式的一例,存在服务器-客户端(server-client)方式、点到点(Peer to Peer)方式。在服务器-客户端方式中,服务器终端从客户端终端回收所有数据来进行运算处理。服务器终端将其运算结果传输给各客户端终端。在点到点方式中,网络上的终端彼此交换数据,各终端进行运算处理。点到点有时也简记为“P2P”。本说明书中,将“服务器-客户端”简记为“CS”,将“点到点”简记为“P2P”。
在P2P方式以及CS方式双方中,存在管理服务器接受在客户端装置间共享的数据的登记请求以及访问请求,各客户端装置按照来自管理服务器的承认应答来执行数据保存、数据访问的步骤,从而能够享有两种方式的优点的系统。
专利文献1:日本特开2006-11693号公报
然而,在以往的CS方式中,由于在一个终端进行运算处理所以能够削减系统整体的消耗电力,但在数据回收时和运算结果的传输时由于在服务器终端与各客户端终端之间进行数据通信,所以导致从数据回收到运算结果传输结束为止花费时间。另一方面,在以往的P2P方式中,由于在从其他终端对终端输入数据时只要进行数据通信即可,所以能够在短时间内结束从数据输入到运算处理完成,但由于在各终端进行运算处理,所以系统整体的消耗电力变大。鉴于此,当包含终端中的运算处理在内,想要抑制系统整体的消耗电力时,希望能够以CS方式共享数据,在想要以高速进行处理的情况下,希望能够以P2P方式共享数据。
发明内容
本发明的目的在于,提供一种能够根据消耗电力、处理速度来选择数据的共享方式的数据共享系统、终端以及数据共享方法。
数据共享系统具备能够相互通信的多个终端。在从多个终端中的其他终端对第1终端传输数据所需要的估计时间、在第1终端中对汇集于第1终端的数据进行运算处理所需要的估计时间以及从第1终端向其他终端传输运算处理完毕的数据所需要的估计时间的合计时间满足实时制约,并且在第1终端中对汇集于第1终端的数据进行运算处理时消耗的估计电力小于其他终端进行与第1终端相同的运算处理时所消耗的估计电力小的情况下,数据共享系统选择将第1终端作为服务器、将其他终端作为客户端的CS方式。数据共享系统在多个终端中任意终端的合计时间均不满足实时制约的情况下,选择P2P方式。
起到能够根据消耗电力、处理速度来选择数据的共享方式这一效果。
附图说明
图1是表示实施例1所涉及的数据共享系统的框图。
图2是表示实施例1所涉及的数据共享方法的流程图。
图3是表示实施例2所涉及的数据共享系统的框图。
图4是表示实施例2所涉及的应用程序数据表的图。
图5是表示在实施例2所涉及的文件共享方法中允许文件共享的终端的登记作业的流程图。
图6是表示在实施例2所涉及的文件共享方法中允许文件共享的终端的登记作业的流程图。
图7是表示在实施例2所涉及的文件共享方法中虚拟主终端的设定以及终端间距离的测定作业的流程图。
图8是表示在实施例2所涉及的文件共享方法中虚拟主终端的设定以及终端间距离的测定作业的流程图。
图9是表示在实施例2所涉及的文件共享方法中决定邻接的终端的处理的流程图。
图10是表示在实施例2所涉及的文件共享方法中以选择出的数据共享方式进行的处理的整体的流程图。
图11是表示图10的接续处理的流程图。
图12是表示在实施例2所涉及的文件共享方法中以选择出的数据共享方式进行的处理整体的流程图。
图13是表示图12的接续处理的流程图。
图14是表示在实施例2所涉及的文件共享方法中以选择出的数据共享方式进行的处理的整体的流程图。
图15是表示实施例2所涉及的文件共享方法中的共享方式的选择步骤的流程图。
具体实施方式
以下,基于附图详细说明本发明所涉及的数据共享系统、终端以及数据共享方法的实施例。数据共享系统估计将数据汇集到一个终端并进行了运算处理后的结果向其他终端传输时的合计时间以及运算处理时的消耗电力,来选择P2P方式或者CS方式。在本说明书以及说明书附图中,有时将“应用程序”或者“应用程序的程序”仅表达为“应用程序”。需要说明的是,本发明并不受限于本实施例。
(实施例1)
·数据共享系统以及终端的说明
图1是表示实施例1所涉及的数据共享系统的框图。如图1所示,数据共享系统具备相互能够通信的多个终端(#0、#1)1、9。此外,终端的数量也可以是3个以上。各终端1、9具备数据传输时间估计部2、运算时间估计部3、消耗电力估计部4、合计时间计算部5、判断部6、选择部7以及通信部8。这些各部也可以由处理器执行实现后述的数据共享方法的程序来实现。程序例如被储存在省略图示的存储器中,例如由省略图示的处理器调出并按顺序执行。
数据传输时间估计部2估计从能够相互通信的其他终端向本终端传输数据所需要的时间、以及从本终端向其他终端传输运算处理完毕的数据所需要的时间。运算时间估计部3估计在本终端中对汇集于本终端的数据进行运算处理所需要的时间。合计时间计算部5算出由数据传输时间估计部2估计出的数据传输时间与由运算时间估计部3估计出的运算时间的合计时间。判断部6判断由合计时间计算部5算出的合计时间是否满足实时制约。消耗电力估计部4估计在本终端中对汇集于本终端的数据进行运算处理时所消耗的电力。
选择部7在由判断部6判断为合计时间满足实时制约,并且由消耗电力估计部4估计出的消耗电力小于估计其他终端进行与本终端相同的运算处理时消耗的消耗电力的情况下,选择CS方式。在CS方式中,本终端成为服务器,其他终端成为客户端。选择部7在任意终端的合计时间均不满足实时制约的情况下,选择P2P方式。
·数据共享方法的说明
图2是表示实施例1所涉及的数据共享方法的流程图。在此,说明第1终端#0_1在CS方式中成为服务器的情况。如图2所示,如果实现数据共享方法的处理开始,则首先第1终端#0_1的数据传输时间估计部2估计经由通信部8从其他终端#1_9向第1终端#0_1传输数据所需要的时间ttrans(in)。另外,第1终端#0_1的数据传输时间估计部2估计经由通信部8从第1终端#0_1向其他终端#1_9传输运算处理完毕的数据所需要的时间ttrans(out)。
第1终端#0_1的运算时间估计部3估计在第1终端#0_1中对汇集于第1终端#0_1的数据进行运算处理所需要的时间texe。而且,第1终端#0_1的合计时间计算部5算出ttrans(in)、texe和ttrans(out)的合计时间(ttrans(in)+texe+ttrans(out)),来估计处理的合计时间(步骤S1)。
接着,第1终端#0_1的判断部6判断由合计时间计算部5算出的处理的合计时间(ttrans(in)+texe+ttrans(out))是否满足实时制约。并且,第1终端#0_1的消耗电力估计部4估计在第1终端#0_1中对汇集于第1终端#0_1的数据进行运算处理时消耗的电力。而且,第1终端#0_1的判断部6判断由消耗电力估计部4估计出的消耗电力是否小于其他终端#1_9进行与第1终端#0_1相同的运算处理时消耗的估计电力,即在第1终端#0_1中进行运算处理时消耗的电力是否最少(步骤S2)。
在处理的合计时间(ttrans(in)+texe+ttrans(out))满足实时制约,并且第1终端#0_1中的消耗电力的估计值最少的情况(步骤S2:T(true,真)),第1终端#0_1的选择部7选择CS方式(步骤S3)。此时的服务器是第1终端#0_1,客户端是其他终端#1_9。另一方面,在任意终端的合计时间(ttrans(in)+texe+ttrans(out))均不满足实时制约的情况(步骤S2:F(false,伪)),第1终端#0_1的选择部7选择P2P方式(步骤S4)。然后,结束处理。
根据实施例1,由于在处理的合计时间满足实时制约的情况下,选择将消耗电力的估计值最少的终端设为服务器、并且将其他终端设为客户端的CS方式,所以包含终端中的运算处理在内,能够抑制系统整体的消耗电力。由于在处理的合计时间不满足实时制约的情况下,选择P2P方式,所以能够高速进行处理。
(实施例2)
·数据共享系统以及终端的说明
图3是表示实施例2所涉及的数据共享系统的框图。如图3所示,数据共享系统具备多个终端(#0、#1)10、19。此外,终端的数量也可以是3个以上。作为终端的一例,例如可举出便携式电话机、便携式笔记本(Mobile Computers)等具有通信功能的信息处理装置。
在各终端(#0、#1)10、19中,CPU(Central Processing Unit,中央处理装置)13、通信模块14以及存储控制器16与总线15连接。存储控制器16例如与作为作业区域被CPU13使用的存储器17连接。存储器17与文件系统18连接。CPU13例如从文件系统18读出OS(Operating System,操作系统)12,将存储器17作为作业区域来执行。OS12的调度器决定数据共享方法,在数据共享方法是CS方式的情况下,决定成为服务器的终端。
在各终端(#0、#1)10、19中,OS12具有应用程序数据表。在应用程序数据表中,登记有当各终端取得了从其他终端传输来的数据时,用于基于该取得的数据来决定应用程序的执行方式的参数。当各终端(#0、#1)10、19中新添加应用程序的程序时,安装应用程序的数据中含有应用程序数据表所记载的信息。在安装作业中,对应用程序数据表追加该信息。
在OS12上,执行应用程序的程序11。CPU13例如从文件系统18读出应用程序的程序11,将存储器17作为作业区域来执行。当在终端#0_10与终端#1_19之间共享数据时,在终端#0_10和终端#1_19中执行相同的应用程序的程序11。例如在以P2P方式共享数据的情况下,通信模块14也可以仅与各终端的邻接终端连接。在仅与各终端的邻接终端连接的构成的情况下,各终端以管道式向邻接的终端传输数据,从邻接的终端接收数据,由于反复进行该动作,所以通信模块14只要1个就足够了。
通信模块14对应于CS方式以及P2P方式这两种方式。通过变更进行通信控制的软件中的模式,通信模块14能够以CS方式或者P2P方式与其他终端的通信模块14进行通信。另外,通信模块14具有例如基于Bluetooth(蓝牙,注册商标)、红外线等的无线通信功能。通信模块14利用基于蓝牙、红外线等的无线通信功能来测定各终端间的距离。例如,从一方终端的通信模块14发送包含发送时刻的数据的信号,记录另一方终端的通信模块14接收到该信号的时刻,通过求出发送时刻和接收时刻之差能够测定终端间的距离。对于各终端(#0、#1)10、19的功能性构成,由与实施例1相同,因此省略重复的说明。
·应用程序数据表的说明
图4是表示实施例2所涉及的应用程序数据表的图。如图4所示,在应用程序数据表21中,作为数据共享方法,例如按应用程序的每个程序来设定例如“执行时决定”、CS方式或者P2P方式。“执行时决定”表示在应用程序的程序执行时决定数据共享方法。在图4所示的例子中,应用程序#0的数据共享方法被设定为“执行时决定”。应用程序#1的数据共享方法被设定为“CS方式”。应用程序#n的数据共享方法被设定为“P2P方式”。“CS方式”以及“P2P方式”在应用程序的程序设计时设定。CS方式有时针对想要削减消耗电力的应用程序的程序设定。P2P方式有时针对需要进行高速处理的应用程序的程序设定。
另外,在应用程序数据表21中,作为例如按应用程序的每个程序来决定数据共享方法时所使用的参数、数据的一例,例如可以在应用程序的程序设计时设定“消耗电力计算式”、“处理时间阈值”以及“电池余量阈值”。另外,作为在执行时决定数据共享方法时所使用的参数、数据的一例,例如可以在应用程序的程序起动时收集并设定“CPU负载率”、“终端间距离”以及“各终端电池余量”。
“消耗电力计算式”可以是例如在应用程序的程序设计时进行模拟并基于模拟结果而模块化的公式。“处理时间阈值”可以是应用程序应该满足的最差处理时间。“电池余量阈值”可以是成为服务器的终端作为服务器执行处理所需的最少电池余量。“CPU负载率”可以在各终端取得从其他终端传输来的数据前由OS12的调度器取得并设定。“终端间距离”可以在各终端取得从其他终端传输来的数据前由通信模块14测定终端间的距离来进行设定。“各终端电池余量”可以在各终端取得从其他终端传输来的数据前取得并进行设定。
·执行应用程序时的运算时间的估计
运算时间texe利用下(1)式来进行估计。在(1)式中,T是以基准时钟频率并且以基准数据大小的数据模拟执行了应用程序的程序时的执行时间。C是基准时钟频率。c是估计时、即应用程序的程序执行时的时钟频率。D是基准数据大小。d是估计时的数据大小。
texe=T×C/c×d/D×(1-CPU负载率)...(1)
·执行应用程序时的数据传输时间的估计
数据传输时间ttrans利用下(2)式来进行估计。在(2)式中,T是在单位距离间发送1个数据包时所花费的传输时间。P是数据包量,是“数据大小”/“每个数据包的数据大小”。D是单位距离。d是终端间的距离。
ttrans=T×P×d/D...(2)
·执行应用程序时的消耗电力的估计
消耗电力Pexe利用下(3)式来进行估计。在(3)式中,P是以基准数据大小的数据执行了应用程序的程序时的消耗电力。D是基准数据大小。d是消耗电力估计时的数据大小。
Pexe=P×D/d...(3)
·数据共享方法的说明
实施例2所涉及的数据共享方法例如被以如下那样的流程来实施。首先,作为事前准备,执行允许进行文件共享的终端的登记作业。该终端的登记作业例如可以由用户来执行。接着,进行假设成为主终端的终端(虚拟主终端)的设定作业以及终端间距离的测定作业。虚拟主终端在应用程序的程序执行时决定数据共享方式的情况下,判断选择CS方式还是选择P2P方式。接着,实际选择CS方式或者P2P方式,以选择出的数据共享方式来进行数据的传输以及运算处理。
·允许文件共享的终端的登记作业
图5以及图6是表示在实施例2所涉及的文件共享方法中允许文件共享的终端的登记作业的流程图。图5表示了在某终端#0中登记其他终端#n时的步骤。如图5所示,如果终端的登记作业开始,则某终端#0对其他终端#n请求将终端#0登记为共享文件的终端(步骤S11)。某终端#0等待接收来自其他终端#n的对登记请求的应答(步骤S12:F),接收对登记请求的应答(步骤S12:T)。
某终端#0在来自其他终端#n的应答是允许登记请求的应答的情况下(步骤S13:T),登记允许了登记请求的终端#n(步骤S14),结束某终端#0的一系列登记作业。另一方面,某终端#0在来自其他终端#n的应答是不允许登记请求的应答的情况下(步骤S13:F),不登记不允许登记请求的终端#n,结束某终端#0中的一系列登记作业。关于在多个终端中将对其他终端#n请求登记的终端#0设为哪个终端,例如可以由用户任意决定。
图6表示了在其他终端#n中登记某终端#0时的步骤。如图6所示,如果终端的登记作业开始,则其他终端#n从某终端#0接收将该终端#0登记为共享文件的终端这一请求(步骤S21)。接收到登记请求的终端#n在将登记请求的发送源、即某终端#0登记为共享文件的终端的情况下(步骤S22:T),将允许登记通知给终端#0(步骤S23),结束其他终端#n中的一系列登记作业。另一方面,接收到登记请求的终端#n在不将登记请求的发送源、即某终端#0登记为共享文件的终端的情况下(步骤S22:F),将不允许登记通知给终端#0(步骤S24),结束其他终端#n中的一系列登记作业。
·虚拟主终端的设定作业以及终端间距离的测定作业
图7以及图8是表示在实施例2所涉及的文件共享方法中虚拟主终端的设定以及终端间距离的测定作业的流程图。图7表示了某终端#0中的虚拟主终端的设定以及终端间距离的测定作业的步骤。如图7所示,如果在某终端#0中起动应用程序的程序(步骤S31),则开始虚拟主终端的设定以及终端间距离的测定作业。
在其他终端#n中也起动与在某终端#0中起动的应用程序相同的应用程序。起动了相同的应用程序的多个终端中的最初起动该应用程序的终端,这里为某终端#0被设定成虚拟主终端。该情况下,虚拟主终端在上述的允许文件共享的终端的登记作业中,有时与作为对其他终端#n请求登记的终端的终端#0不同。或者,也可以在上述的允许文件共享的终端的登记作业中,将作为对其他终端#n请求登记的终端的终端#0设为虚拟主终端。
虚拟主终端#0向与其他终端#n共享文件的模式转移(步骤S32)。接着,虚拟主终端#0与其他终端#n之间建立会话,对其他终端#n通知向共享文件的模式转移(步骤S33)。向共享文件模式的转移通知的通知目的地是在上述步骤S14中登记了的终端。虚拟主终端#0等待接收来自其他终端#n的针对向共享文件的模式的转移通知的应答(步骤S34:F),接收针对向共享文件的模式的转移通知的应答(步骤S34:T)。
在来自其他终端#n的全部应答是允许转移的应答的情况下(步骤S35:T),虚拟主终端#0将允许了转移的终端#n登记为共享文件的终端(步骤S36)。接着,虚拟主终端#0对参加共享文件的模式的全部终端#n通知与该全部终端#n相关的数据(步骤S37)。接着,虚拟主终端#0测定参加共享文件的模式的各终端#n与本终端#0之间的距离(步骤S38),然后解除会话。而且,虚拟主终端#0结束虚拟主终端#0中的一系列虚拟主终端的设定以及终端间距离的测定作业。
另一方面,在来自其他终端#n的应答中包含不允许转移的应答的情况下(步骤S35:F),虚拟主终端#0从共享文件的模式向通常的模式转移(步骤S39),然后解除会话。而且,虚拟主终端#0结束虚拟主终端#0中的一系列虚拟主终端的设定以及终端间距离的测定作业。在通常模式中,各终端与其他终端之间不共享文件,执行起动了的应用程序。
图8表示了其他终端#n中的虚拟主终端的设定以及终端间距离的测定作业的步骤。如图8所示,如果在其他终端#n中起动与在某终端#0中起动的应用程序相同的应用程序(步骤S41),则开始虚拟主终端的设定以及终端间距离的测定作业。其他终端#n与某终端#0之间建立会话,从某终端#0接收向共享文件的模式转移了的通知(步骤S42)。
接收到转移通知的终端#n在向共享文件的模式转移的情况下,向某终端#0应答允许向共享文件的模式转移(步骤S43:T),向共享文件的模式转移(步骤S44)。接着,向共享文件的模式转移了的终端#n将终端#0登记为虚拟主终端(步骤S45)。接着,向共享文件的模式转移了的终端#n接收与参加共享文件的模式的全部终端相关的数据(步骤S46)。
接着,向共享文件的模式转移了的终端#n测定参加共享文件的模式的其他终端#n与本终端#n之间的距离(步骤S47),然后解除会话。而且,向共享文件的模式转移了的终端#n结束该终端#n中的一系列虚拟主终端的设定以及终端间距离的测定作业。另一方面,接收到转移通知的终端#n在不向共享文件的模式转移的情况下(步骤S43:F),解除会话。而且,不向共享文件的模式转移的终端#n结束该终端#n中的一系列虚拟主终端的设定以及终端间距离的测定作业。
·在P2P方式中决定邻接终端的处理
图9是表示在实施例2所涉及的文件共享方法中决定邻接的终端的处理的流程图。如图9所示,如果决定邻接的终端的处理开始,则首先虚拟主终端#0在未被设定邻接终端的终端中,搜索例如终端ID(Identifier,标识符)最小的终端(终端#n)(步骤S51)。接着,虚拟主终端#0将与在步骤S51中搜索出的终端#n最近的终端设定成和该终端#n邻接的终端(步骤S52)。此时,虚拟主终端#0将在上述步骤S38中虚拟主终端#0测定出的终端间距离、以及在上述步骤S47中由参加共享文件的模式的其他终端#n测定并在后述的步骤S86中向虚拟主终端#0传输的终端间距离中终端间距离最小的终端设定成和该终端#n邻接的终端。
接着,虚拟主终端#0判断是否剩余未被设定邻接终端的终端(步骤S53)。如果剩余(步骤S53:Y(是)),则返回到步骤S51,反复执行步骤S51~步骤S53,直到未被设定邻接终端的终端不存在为止。如果未被设定邻接终端的终端不存在(步骤S53:N(否)),则结束一系列的决定邻接终端的处理。
·应用程序执行时选择出的数据共享方式下的处理整体
图10~图14是表示在实施例2所涉及的文件共享方法中选择出的数据共享方式下的处理整体的流程图。图10以及图11表示了虚拟主终端#0中的处理步骤。如图10所示,如果在虚拟主终端#0中开始处理,则首先虚拟主终端#0取得成为应用程序的输入数据的数据(步骤S61)。例如,在应用程序是结合由各终端拍摄到的图像来生成全景照片等大照片的应用程序的情况下,图像文件为输入数据。
接着,虚拟主终端#0取得虚拟主终端#0的CPU负载率、数据大小以及电池余量信息(步骤S62)。接着,虚拟主终端#0对其他终端#n通知虚拟主终端#0的数据的数据大小(步骤S63)。此时,其他终端#n也同样地通知该终端#n的数据的数据大小。然后,虚拟主终端#0基于从其他终端#n通知来的数据大小以及虚拟主终端#0的数据大小来计算在应用程序中待处理的对象的数据的全部数据大小。
接着,虚拟主终端#0基于全部数据大小以及虚拟主终端#0的CPU负载率来估计运算时间(texe)(步骤S64)。另外,虚拟主终端#0基于全部数据大小以及终端间距离来估计数据传输时间(ttrans)(步骤S65)。接着,虚拟主终端#0选择共享方式(步骤S66)。关于共享方式的选择步骤将后述。
在虚拟主终端#0选择P2P方式的情况下(步骤S66:P2P方式),虚拟主终端#0选择P2P方式对其他终端#n通知以P2P方式共享数据(步骤S67)。接着,虚拟主终端#0向与虚拟主终端#0邻接的终端传输在步骤S61中取得的虚拟主终端#0的数据(步骤S68)。关于邻接的终端,通过图9所示的处理步骤来决定。另外,虚拟主终端#0从与虚拟主终端#0邻接的终端接收该邻接终端的数据(步骤S69)。反复执行步骤S68到步骤S70,直到全部数据的接收结束(步骤S70:F),如果接收到全部数据(步骤S70:T),则虚拟主终端#0进行运算处理(步骤S71),然后结束虚拟主终端#0中的一系列处理。
另一方面,当虚拟主终端#0选择共享方式时(步骤S66),在选择CS方式的情况下(步骤S66:CS方式),如图11所示,虚拟主终端#0选择CS方式对其他终端#n通知成为服务器的终端(步骤S72)。接着,成为了虚拟主终端的终端#0向成为服务器的终端传输在步骤S61中取得的终端#0的数据(步骤S73)。成为服务器的终端利用从除其之外的终端传输来的数据来进行运算处理,向各终端传输运算处理的结果。成为了虚拟主终端的终端#0接收从成为服务器的终端传输来的运算处理的结果(步骤S74),然后结束虚拟主终端#0中的一系列处理。
图12以及图13表示了其他终端#n中的处理步骤。如图12所示,如果在其他终端#n中开始处理,则首先其他终端#n取得成为应用程序的输入数据的数据(步骤S81)。接着,其他终端#n取得其他终端#n的CPU负载率、数据大小以及电池余量信息(步骤S82)。接着,其他终端#n对包含虚拟主终端#0的其他终端通知在步骤S81中取得的数据的数据大小(步骤S83)。而且,其他终端#n基于从包含虚拟主终端#0的其他终端通知来的数据大小以及在步骤S81中取得的数据的数据大小,来计算在应用程序中处理的对象的数据的全部数据大小。
接着,其他终端#n基于全部数据大小以及其他终端#n的CPU负载率来估计运算时间(texe)(步骤S84)。另外,其他终端#n基于全部数据大小以及终端间距离来估计数据传输时间(ttrans)(步骤S85)。接着,其他终端#n向虚拟主终端#0传输估计出的运算时间(texe)、数据传输时间(ttrans)、CPU负载率、电池余量以及各终端间距离(步骤S86)。
接着,其他终端#n等待从虚拟主终端#0通知由虚拟主终端#0选择出的共享方式(步骤S87:F)。如果被通知选择了P2P方式(步骤S87:P2P方式),则其他终端#n基于与参加共享文件的模式的全部终端相关的数据,与邻接的终端之间建立会话(步骤S88)。接着,其他终端#n向与其他终端#n邻接的终端传输在步骤S81中取得的数据(步骤S89)。关于邻接的终端,利用图9所示的处理步骤来决定。
另外,其他终端#n从与其他终端#n邻接的终端接收该邻接的终端的数据(步骤S90)。反复执行步骤S89到步骤S91,直到全部数据的接收结束为止(步骤S91:F),如果接收到全部数据(步骤S91:T),则其他终端#n进行运算处理(步骤S92),结束其他终端#n中的一系列处理。
另一方面,如果其他终端#n被从虚拟主终端#0通知虚拟主终端#0选择了CS方式和成为服务器的终端(步骤S87:CS方式),则如图13所示,与成为服务器的终端之间建立会话(步骤S93)。接着,其他终端#n向成为服务器的终端传输在步骤S81中取得的数据(步骤S94)。成为服务器的终端利用从除其之外的终端传输来的数据进行运算处理,将运算处理的结果传输给各终端。其他终端#n接收从成为服务器的终端传输来的运算处理的结果(步骤S95),结束其他终端#n中的一系列处理。
图14表示了成为服务器的终端#m中的处理步骤。如图14所示,如果在成为服务器的终端#m中开始处理,则首先成为服务器的终端#m与成为客户端的终端即作为虚拟主终端的终端#0、以及除了成为服务器的终端#m之外的其他终端#n之间建立会话(步骤S101)。接着,成为服务器的终端#m接收在步骤S73中终端#0传输的数据以及在步骤S94中其他终端#n传输的数据(步骤S102)。接着,成为服务器的终端#m利用成为服务器的终端#m的数据以及在步骤S102中接收到的数据来进行运算处理(步骤S103)。然后,成为服务器的终端#m向作为虚拟主终端的终端#0以及除了成为服务器的终端#m之外的其他终端#n传输运算处理的结果(步骤S104),并结束成为服务器的终端#m中的一系列处理。
·共享方式的选择步骤
图15是表示实施例2所涉及的文件共享方法中的共享方式的选择步骤的流程图。在此,终端的数量是N个(N是2以上的整数),将n设为从0到N-1的整数。如图15所示,如果共享方式的选择处理开始,则首先虚拟主终端#0将共享方式设定成P2P方式(步骤S111)。虚拟主终端#0将n设定成0(步骤S112),在n是比N-1小的值的期间(步骤S113:T),反复执行以下的步骤S113到步骤S120。
关于终端#n,在处理时间短于实时制约(处理时间阈值)(步骤S114:T)、电池余量#n多于电池余量阈值(步骤S115:T)、消耗电力P#n小于该时刻的最小消耗电力Psmallest的情况下(步骤S116:T),虚拟主终端#0选择CS方式。而且,虚拟主终端#0将此时的终端#n设定为成为服务器的终端(步骤S119)。然后,将n的值加一(步骤S120)。
在步骤S114以及步骤S115为真(T),但步骤S116为假(F)的情况下,利用步骤S117以及步骤S118来选择共享方式。即,在终端#n的消耗电力P#n与该时刻的最小消耗电力Psmallest相等的情况下(步骤S117:T),如果终端#n的CPU负载率#n小于该时刻的最小CPU负载率smallest(步骤S118:T),则虚拟主终端#0选择CS方式,将此时的终端#n设定为成为服务器的终端(步骤S119)。然后,将n的值加一(步骤S120)。
在步骤S114、步骤S115步骤S117以及步骤S118为假(F)的情况下,虚拟主终端#0不变更P2P方式,使n的值加一(步骤S120)。另外,如果n不是小于N-1的值(步骤S113:F),则结束一系列的处理。
在此,示出了将终端#n设为成为服务器的终端时的处理时间的计算例。例如,针对终端#0,将终端间距离以及数据大小分别设为1m以及100KB。针对终端#1,将终端间距离以及数据大小分别设为2m以及150KB。针对终端#n-1,将终端间距离以及数据大小分别设为5m以及100KB。针对其他终端,省略例示。该情况下,终端#n中的处理时间如下(4)式表示。
处理时间=texe+Σttrans
=T×C/c×d/(100KB+150KB+...+100KB)×(1-CPU负载率)
+(T0×100KB/128B×1m/D)
+(T1×150KB/128B×2m/D)
+...
+(Tn-1×100KB/128B×5m/D)
+(Tn×(100KB+150KB+...+100KB)/128B×1m/D)
+(Tn×(100KB+150KB+...+100KB)/128B×2m/D)
+...
+(Tn×(100KB+150KB+...+100KB)/128B×1m/D)...(4)
在上述(4)式中,第2行是计算运算时间的部分。第3~6行是计算从各终端向成为服务器的终端#n传输各终端所取得的数据所需要的时间的部分。第7~10行是计算从成为服务器的终端#n向各终端传输成为服务器的终端#n中的运算处理的结果所需要的时间的部分。在此,假设同时进行从各终端向成为服务器的终端#n的数据传输、和从成为服务器的终端#n向各终端的数据传输。
根据实施例2,能够得到与实施例1同样的效果。
附图标记说明:1、9…终端;2…数据传输时间估计部;3…运算时间估计部;4…消耗电力估计部;5…合计时间计算部;6…判断部;7…选择部;8…通信部。
Claims (12)
1.一种数据共享系统,其特征在于,
具备能够相互通信的多个终端,
在所述多个终端中从其他终端对第1终端传输数据所需要的估计时间、在所述第1终端中对汇集于所述第1终端的数据进行运算处理所需要的估计时间以及从所述第1终端向所述其他终端传输运算处理完毕的数据所需要的估计时间的合计时间满足实时制约,并且在所述第1终端中对汇集于所述第1终端的所述数据进行运算处理时消耗的估计电力小于在所述其他终端中进行与所述第1终端相同的运算处理时消耗的估计电力的情况下,选择将所述第1终端设为服务器、并将所述其他终端设为客户端的服务器-客户端方式,
在所述多个终端中的任意终端的所述合计时间均不满足实时制约的情况下,选择点到点方式。
2.根据权利要求1所述的数据共享系统,其特征在于,
当在所述第1终端中对汇集于所述第1终端的所述数据进行运算处理时消耗的估计电力和所述其他终端进行与所述第1终端相同的运算处理时消耗的估计电力中的最少电力相同时,
在所述第1终端的处理器对所述数据进行运算处理时的负载率小于被估计为所述最少的消耗电力的终端的处理器对所述数据进行运算处理时的负载率的情况下,选择将所述第1终端作为服务器、并将所述其他终端作为客户端的服务器-客户端方式。
3.根据权利要求1所述的数据共享系统,其特征在于,
所述实时制约以及所述消耗电力的计算式在应用程序的设计时被设定并被记述在所述应用程序中。
4.根据权利要求2所述的数据共享系统,其特征在于,
所述实时制约以及所述消耗电力的计算式在应用程序的设计时被设定并被记述在所述应用程序中,
当所述应用程序起动时取得所述处理器的负载率。
5.一种终端,其特征在于,具备:
通信部,其与其他终端进行通信;
数据传输时间估计部,其估计从能够相互通信的其他终端对本终端传输数据所需要的时间、以及从所述本终端向所述其他终端传输运算处理完毕的数据所需要的时间;
运算时间估计部,其估计在所述本终端中对汇集于所述本终端的数据进行运算处理所需要的时间;
合计时间计算部,其计算由所述数据传输时间估计部估计出的数据传输时间与由所述运算时间估计部估计出的运算时间的合计时间;
消耗电力估计部,其估计在所述本终端中对汇集于所述本终端的所述数据进行运算处理时消耗的电力;
判断部,其判断由所述合计时间计算部算出的合计时间是否满足实时制约;以及
选择部,其在由所述判断部判断为所述合计时间满足所述实时制约,并且由所述消耗电力估计部估计出的消耗电力小于所述其他终端进行与所述本终端相同的运算处理时消耗的估计消耗电力的情况下,选择将所述本终端设为服务器并将所述其他终端设为客户端的服务器-客户端方式,在任意终端的所述合计时间均不满足所述实时制约的情况下,选择点到点方式。
6.根据权利要求5所述的终端,其特征在于,
当由所述判断部判断为所述合计时间满足所述实时制约,并且由所述消耗电力估计部估计出的消耗电力和所述其他终端进行与所述本终端相同的运算处理时消耗的估计消耗电力中的最少消耗电力相同时,
在所述本终端的处理器对所述数据进行运算处理时的负载率小于被估计为所述最少消耗电力的终端的处理器对所述数据进行运算处理时的负载率的情况下,所述选择部选择将所述本终端设为服务器、并将所述其他终端设为客户端的服务器-客户端方式。
7.根据权利要求5所述的终端,其特征在于,
所述实时制约以及所述消耗电力的计算式在应用程序的设计时被设定并被记述在所述应用程序中。
8.根据权利要求6所述的终端,其特征在于,
所述实时制约以及所述消耗电力的计算式在应用程序的设计时被设定并被记述在所述应用程序中,
所述处理器在所述应用程序起动时取得所述处理器的负载率。
9.一种数据共享方法,其特征在于,
对能够相互通信的多个终端中从其他终端对第1终端传输数据所需要的时间、在所述第1终端中对汇集于所述第1终端的数据进行运算处理所需要的时间以及从所述第1终端向所述其他终端传输运算处理完毕的数据所需要的时间的合计时间进行估计,
当所述合计时间满足实时制约,并且在所述第1终端中对汇集于所述第1终端的所述数据进行运算处理时消耗的估计电力小于所述其他终端进行与所述第1终端相同的运算处理时消耗的估计电力时,选择将所述第1终端设为服务器、并将所述其他终端设为客户端的服务器-客户端方式,
在所述多个终端中的任意终端的所述合计时间均不满足实时制约的情况下,选择点到点方式。
10.根据权利要求9所述的数据共享方法,其特征在于,
当在所述第1终端中对汇集于所述第1终端的所述数据进行运算处理时消耗的估计电力和所述其他终端进行与所述第1终端相同的运算处理时消耗的估计电力中的最少电力相同时,
在所述第1终端的处理器对所述数据进行运算处理时的负载率小于所述被估计为最少的消耗电力的终端的处理器对所述数据进行运算处理时的负载率的情况下,选择将所述第1终端设为服务器、并将所述其他终端设为客户端的服务器-客户端方式。
11.根据权利要求9所述的数据共享方法,其特征在于,
应用程序中预先记述有所述实时制约以及所述消耗电力的计算式。
12.根据权利要求10所述的数据共享方法,其特征在于,
应用程序中预先记述有所述实时制约以及所述消耗电力的计算式,
当所述应用程序起动时取得所述处理器的负载率。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2010/066091 WO2012035639A1 (ja) | 2010-09-16 | 2010-09-16 | データ共有システム、端末およびデータ共有方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103098036A true CN103098036A (zh) | 2013-05-08 |
CN103098036B CN103098036B (zh) | 2016-08-31 |
Family
ID=45831139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080069069.XA Expired - Fee Related CN103098036B (zh) | 2010-09-16 | 2010-09-16 | 数据共享系统、终端以及数据共享方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9219636B2 (zh) |
JP (1) | JP5534022B2 (zh) |
CN (1) | CN103098036B (zh) |
WO (1) | WO2012035639A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9049176B2 (en) * | 2011-06-22 | 2015-06-02 | Dropbox, Inc. | File sharing via link generation |
JPWO2015151548A1 (ja) * | 2014-04-03 | 2017-04-13 | ソニー株式会社 | 電子機器および記録媒体 |
JP6340917B2 (ja) * | 2014-05-23 | 2018-06-13 | 富士ゼロックス株式会社 | 文書管理プログラム、文書閲覧編集プログラム、文書管理装置、端末装置及び文書管理システム |
US9380536B2 (en) | 2014-09-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced device selection algorithm for device-to-device (D2D) communication |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003208414A (ja) * | 2002-01-11 | 2003-07-25 | Hitachi Ltd | 負荷分散機能付きサーバおよびクライアント |
JP2003281008A (ja) * | 2002-03-26 | 2003-10-03 | Toshiba Corp | サーバー計算機負荷分配装置、サーバー計算機負荷分配方法、サーバー計算機負荷分配プログラム及びサーバー計算機システム |
JP2006293743A (ja) * | 2005-04-12 | 2006-10-26 | Mitsubishi Electric Corp | サーバ型計算機および転送評価判定装置 |
JP2009232271A (ja) * | 2008-03-24 | 2009-10-08 | Brother Ind Ltd | ツリー型放送システム、モード切替指示方法、放送装置、及び放送処理プログラム |
CN101631092A (zh) * | 2008-07-18 | 2010-01-20 | 株式会社日立制作所 | 数据分发系统及方法 |
JP2010109426A (ja) * | 2008-10-28 | 2010-05-13 | Alaxala Networks Corp | ネットワーク中継装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4034312B2 (ja) | 2003-03-24 | 2008-01-16 | 富士通株式会社 | 分散処理制御装置、分散処理制御方法および分散処理制御プログラム |
JP4490743B2 (ja) | 2004-06-24 | 2010-06-30 | 株式会社日立製作所 | ファイル共有システム、ファイル共有用管理サーバおよびクライアント装置 |
US20070220293A1 (en) * | 2006-03-16 | 2007-09-20 | Toshiba America Electronic Components | Systems and methods for managing power consumption in data processors using execution mode selection |
-
2010
- 2010-09-16 WO PCT/JP2010/066091 patent/WO2012035639A1/ja active Application Filing
- 2010-09-16 CN CN201080069069.XA patent/CN103098036B/zh not_active Expired - Fee Related
- 2010-09-16 JP JP2012533793A patent/JP5534022B2/ja not_active Expired - Fee Related
-
2013
- 2013-03-13 US US13/801,783 patent/US9219636B2/en not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003208414A (ja) * | 2002-01-11 | 2003-07-25 | Hitachi Ltd | 負荷分散機能付きサーバおよびクライアント |
JP2003281008A (ja) * | 2002-03-26 | 2003-10-03 | Toshiba Corp | サーバー計算機負荷分配装置、サーバー計算機負荷分配方法、サーバー計算機負荷分配プログラム及びサーバー計算機システム |
JP2006293743A (ja) * | 2005-04-12 | 2006-10-26 | Mitsubishi Electric Corp | サーバ型計算機および転送評価判定装置 |
JP2009232271A (ja) * | 2008-03-24 | 2009-10-08 | Brother Ind Ltd | ツリー型放送システム、モード切替指示方法、放送装置、及び放送処理プログラム |
CN101631092A (zh) * | 2008-07-18 | 2010-01-20 | 株式会社日立制作所 | 数据分发系统及方法 |
JP2010109426A (ja) * | 2008-10-28 | 2010-05-13 | Alaxala Networks Corp | ネットワーク中継装置 |
Also Published As
Publication number | Publication date |
---|---|
US9219636B2 (en) | 2015-12-22 |
JPWO2012035639A1 (ja) | 2014-01-20 |
JP5534022B2 (ja) | 2014-06-25 |
WO2012035639A1 (ja) | 2012-03-22 |
CN103098036B (zh) | 2016-08-31 |
US20130198270A1 (en) | 2013-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Cooperative and distributed computation offloading for blockchain-empowered industrial Internet of Things | |
Fiandrino et al. | Sociability-driven framework for data acquisition in mobile crowdsensing over fog computing platforms for smart cities | |
CN107734558A (zh) | 一种基于多服务器的移动边缘计算控制及资源调度方法 | |
CN108650667B (zh) | 终端调度方法和装置 | |
CN105096200A (zh) | 基于电力消耗和社交因素的控制通知 | |
CN109828843A (zh) | 一种计算节点间数据传输的方法、系统及电子设备 | |
CN103098036A (zh) | 数据共享系统、终端以及数据共享方法 | |
CN102904919A (zh) | 流处理方法和实现流处理的分布式系统 | |
Ciobanu et al. | Avoiding data corruption in drop computing mobile networks | |
WO2021027842A1 (zh) | 一种实现边缘计算的方法、装置和系统 | |
Liu et al. | Opportunistic resource sharing in mobile cloud computing: The single-copy case | |
CN104902568A (zh) | 一种无线网络资源的共享方法及电子设备 | |
CN104065684A (zh) | 信息处理方法、电子设备和终端设备 | |
Vance et al. | Edgecache: a game-theoretic edge-based content caching system for crowd video sharing | |
Zhalgasbekova et al. | Opportunistic data collection for IoT-based indoor air quality monitoring | |
Nuevo et al. | OIoT: A platform to manage opportunistic IoT communities | |
US9448855B2 (en) | System and method for executing a cloud computing task | |
CN102143223A (zh) | 根据投票矢量控制各对等点间的内容的传播的设备和方法 | |
CN112566184B (zh) | 一种通信方法 | |
KR20150028952A (ko) | 소셜 네트워크 서비스 유저 간의 네트워크 기반 데이터의 전송 및 공유 시스템 및 방법 | |
KR101633010B1 (ko) | 와이파이 다이렉트를 통한 그룹 협력 시스템 및 이를 이용한 협력 센싱 방법 | |
Yu et al. | Cost-aware cooperative theory based routing in mobile opportunistic networks | |
Zhao et al. | Low-Latency D2D Pairing Strategy Based on Joint Attributes | |
CN115243080B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
BATATA | Proposal for a Peer-to-Peer Architecture Model for Sharing Files without Files for Smartphones |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160831 Termination date: 20180916 |