CN101411165B - 利用代理服务器控制嵌入式设备与外部的通信的方法和设备 - Google Patents

利用代理服务器控制嵌入式设备与外部的通信的方法和设备 Download PDF

Info

Publication number
CN101411165B
CN101411165B CN200780011378.XA CN200780011378A CN101411165B CN 101411165 B CN101411165 B CN 101411165B CN 200780011378 A CN200780011378 A CN 200780011378A CN 101411165 B CN101411165 B CN 101411165B
Authority
CN
China
Prior art keywords
mentioned
socket
identification information
request
communication
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.)
Expired - Fee Related
Application number
CN200780011378.XA
Other languages
English (en)
Other versions
CN101411165A (zh
Inventor
青木康泰
大谷宗孝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101411165A publication Critical patent/CN101411165A/zh
Application granted granted Critical
Publication of CN101411165B publication Critical patent/CN101411165B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/24Arrangements for testing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/18Service support devices; Network management devices
    • H04W88/182Network node acting on behalf of an other network entity, e.g. proxy

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)
  • Eye Examination Apparatus (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明比之前更高效地实现嵌入式设备的通信。一种嵌入式设备,其经由代理通信的控制的外部的代理服务器与其他的装置进行通信,具备:能够与代理服务器通信的通信设备;用于存储与其他的装置的通信状态的存储部;更新部,其根据从由中央处理装置执行的任务接收到与其他的装置的通信的控制请求的情况,在通信设备与代理服务器不能通信的状态下,将通信状态更新为正常地进行了与控制请求相应的控制之后的状态;将与控制请求相应的通信状态的更新结果应答给任务的应答部;以及控制指示部,其在通信设备与代理服务器能够通信的状态下,使用通信设备对代理服务器发送用于使代器的、与其他的装置之间的通信状态转移到存储部中所存储的通信状态的指示。

Description

利用代理服务器控制嵌入式设备与外部的通信的方法和设备
技术领域
本发明涉及嵌入式设备、代理服务器、方法以及程序。具体地,本发明涉及用于利用外部的代理服务器代理通信的控制的嵌入式设备、代理服务器、方法以及程序。 
背景技术
近年来,对软件所要求的性能在提高。此外,伴随着移动电话、数字家电等嵌入式设备的普及,还存在需要软件在多个不同的平台上运行的情况。为了高效地开发这种软件,以往研究出了模型驱动开发(MMD:Model Driven Development)。如果采用模型驱动开发,则能够根据用统一建模语言(UML:Unified Modeled Language)等描述的软件的规范描述,自动地生成在各种平台上实际运行的软件。 
作为实现模型驱动开发的技术,以往使用国际商业机器公司的Rational Rose(R)RT。在该技术中,开发人员在通用性高的个人计算机上进行软件的规范描述的制作、规范描述的修改等。并且,根据所生成或者所修改的规范描述生成的软件,经由通信线路被发送给嵌入式设备来执行。进而,在该技术中,还提供能够将实际的软件与规范描述进行对比的调试环境。例如,开发人员能够用个人计算机的画面确认由嵌入式设备执行的程序的执行中的部分是与规范描述的哪一部分对应的。 
专利文献1:特开2002-63088号公报 
专利文献2:特开平9-22391号公报 
但是,为了进行这种开发,必须在嵌入式设备中设置通信功能。为了实现通信功能,需要例如可以利用以太网(注册商标)等进行通信的通信 设备;控制该通信设备的设备驱动器。进而,根据开发用软件,需要作为通用的通信协议的TCP/IP的控制用软件。但是,根据嵌入式设备,存在不具有基于TCP/IP的通信功能的情况。在这样的情况下,有可能需要另外开发在最终产品中未采用的设备驱动器等,从而招致开发成本的增大、开发期间的长期化等。 
作为参考技术,列举专利文献1以及专利文献2。如果采用专利文献1,则能够将基于TCP/IP等协议的通信变换为其他的协议。由此,利用串行接口等通信线路,不使用以太网等就能够实现基于TCP/IP的通信。如果应用该技术,则能够不需要以太网等的通信设备。但是,需要基于TCP/IP的控制用的软件,从而有可能会使嵌入式设备等的存储器的需要容量增大。 
如果采用专利文献2,则能够使其他装置代理某一装置的通信。这通过从该装置采用远程过程调用(RPC:Remote Procedure Call)的方法,调用该其他装置上的通信用的过程来实现。但是,远程过程调用是以建立基于TCP/IP的通信为前提的。即,在该技术中,也需要基于TCP/IP的控制用的软件,从而有可能会使嵌入式设备等的存储器的需要容量增大。此外,在通信线路的通信状况不稳定的情况下,存在通信会被切断而不能再开始的情况。 
发明内容
因而,本发明的目的在于提供一种能够解决上述问题的嵌入式设备、代理服务器、方法以及程序。该目的通过在权利要求的范围中的独立项中所记载的特征的组合来实现。此外,从属项规定本发明的进一步有利的具体例子。 
为了解决上述问题,在本发明的第1方式中,提供一种嵌入式设备,其经由代理通信的控制的外部的代理服务器与其他的装置进行通信,具备:能够与代理服务器通信的通信设备;用于存储与其他的装置的通信状态的存储部;更新部,其根据从由中央处理装置执行的任务接收到与其他的装置的通信的控制请求的情况,在通信设备与代理服务器不能通信的状态下, 将通信状态更新为正常地进行了与控制请求相应的控制之后的状态;将与控制请求相应的通信状态的更新结果应答给任务的应答部;以及控制指示部,其在通信设备与代理服务器能够通信的状态下,使用通信设备对代理服务器发送用于使代理服务器的、与其他的装置之间的通信状态转移到存储部中所存储的通信状态的指示。 
而且,上述的发明的概要并没有列举本发明的必要特征的全部,这些特征组的子组合也能够形成发明。 
如果采用本发明,则能够比之前更高效地实现嵌入式设备的通信。 
具体实施方式
以下,通过用于实施发明的最佳方式(以下,称为实施方式)说明本发明,但是,以下的实施方式并不限定权利要求的范围中的发明,此外,并不限定在实施方式中说明的特征的组合的全部是发明的解决方法所必须的。 
图1表示通信系统10的整体构成。通信系统10具备移动电话20、代理服务器30、通信装置40。移动电话20是成为软件开发、调试等的对象的嵌入式设备的一例,其经由串行接口等第1通信线路25与代理服务器30连接。并且,移动电话20执行开发中、动作验证中的程序,并将其执行状态通知给通信装置40,使其执行状态显示在通信装置40的画面上。此外,移动电话20根据从通信装置40接收到的指示,使程序的执行中断、再开始。此外,嵌入式设备,代替移动电话,也可以是PDA、数字家电或者电子控制的汽车等。 
代理服务器30除了经由第1通信线路25与移动电话20连接外,还经由依据以太网(注册商标)等的第2通信线路35与其他的装置(例如通信装置40)连接。并且,代理服务器30代理移动电话20的、与通信装置40的通信的控制。例如,代理服务器30,为了不具有基于TCP/IP的通信的控制功能的移动电话20,代理移动电话20与通信装置40之间的基于TCP/IP的通信的控制。通信装置40使用于安装在移动电话20上的程序的 开发、调试的程序运行。并且,通信装置40通过与代理服务器30进行基于TCP/IP的通信,从移动电话20获得在移动电话20上运行的程序的执行状态,或者,使在移动电话20上运行的程序的执行中断或者再次开始。 
这样,本实施方式的通信系统10的目的在于:为了未安装基于TCP/IP等通用的通信协议的通信功能的嵌入式设备,利用设置在嵌入式设备的外部的代理服务器30代理依据通信协议的通信的控制。其结果,因为不需要在移动电话20上安装用于通信控制的程序,所以能够消减移动电话20的存储器的需要容量,能够减轻开发在移动电话20上运行的程序的时间和劳力。 
图2表示移动电话20的功能结构。移动电话20具有中央处理装置22、存储部24、通信设备26。中央处理装置22执行预先安装在移动电话20上的程序。存储部24是为了该程序的执行,或者为了存储与通信装置40的通信状态而设置的。通信设备26经由第1通信线路25与代理服务器30能够通信地进行连接。通信设备26与代理服务器30之间的第1通信线路25也存在变成暂时不能通信的状态的情况。例如,使用者可以在移动电话20中的程序的执行中,从移动电话20暂时卸下第1通信线路25。 
中央处理装置22利用预先安装在移动电话20上的程序,作为任务200和通信模块210发挥作用。任务200包含用于控制TCP/IP的套接字(ンケツト)通信的API(Application Programming Interface:应用编程接口)的调用。该API例如也可以满足与BSD(Berkeley Software Distribution:伯克利软件套件)的UNIX(注册商标)等具有互换性的规定的标准。而且,任务200例如也可以是由操作系统定期给予执行权的进程或者线程等。 
在移动电话20中,代替实现套接字通信的库程序,安装有使中央处理装置22作为通信模块210发挥作用的库程序。任务200,代替用于控制套接字通信的API,而通过调用已安装的该库程序的API,将与通信装置40的通信的控制请求发送到通信模块210。而且,因为在套接字通信的API和该库程序的API中调用的接口是相同的,所以不需要为了适合于通信模块210而改造程序。 
通信模块210,如果从任务200接收到控制请求,则使用通信设备26 对代理服务器30发送应该执行与控制请求相应的控制的指示。但是,当在第1通信线路25不能通信的状态下接收到控制请求的情况下,通信模块210进行以下的处理。通信模块210以接收到的控制请求是预先确定的非阻断控制请求为条件,不与代理服务器30通信,而是更新存储部24内的通信状态。并且,通信模块210向任务200应答通信状态的更新结果。并且,以第1通信线路25变成可以通信的状态为条件,通信模块210向代理服务器30发送用于使代理服务器30进行的、与通信装置40的通信状态转移为存储部24所存储的通信状态的指示。由此,即使第1通信线路25是不能通信的状态,任务200也能够继续处理,而不等待第1通信线路25成为可以通信。 
图3表示存储部24的数据结构的一例。存储部24将用于移动电话20与通信装置40进行套接字通信的各个套接字的通信状态与该套接字的标识信息(例如称为文件描述符等标识符)对应起来进行存储。进而,存储部24可以与各个套接字对应地,存储分配给该套接字的端口编号、在该套接字的通信中使用的通信缓冲区的地址以及直到基于该套接字的通信完成为止中断处理并等待的任务的标识编号。 
作为一例,标识信息为1的套接字,是表示该套接字被新生成的内容的生成状态(标记为开启(OPEN)状态)。并且,对该套接字未分配任何端口编号以及缓冲区地址。此外,标识信息为5的套接字,是处理基于该套接字的数据的接收的状态(标记为接收状态)。对该套接字分配了通信缓冲区的地址以及直到该发送接收完成为止中断处理并等待的任务的标识编号。 
图4表示通信模块210的功能结构。通信模块210具有更新部220、应答部230、控制指示部240、接收部250。更新部220根据从由中央处理装置22执行的任务200接收到与通信装置40的通信的控制请求,判断该控制请求是否是预先确定的非阻断控制请求,该非阻断控制请求设定为不等待与该控制请求相应的控制的完成便可以继续任务200的处理。例如,更新部220可以以从任务200接收到的控制请求是确保或者释放在通信中 所需的资源(存储器的存储区域等)的请求为条件,判断为该控制请求是非阻断控制请求。 
更新部220,以是非阻断控制请求为条件,即使是例如通信设备26与代理服务器30不能通信的状态,也在正常地进行了与该控制请求相应的控制之后的状态下更新存储部24的通信状态。另一方面,更新部220以从任务200接收到的控制请求是并非非阻断控制请求的阻断控制请求为条件,根据由接收部250进行的控制的执行结果的接收,更新存储部24的通信状态。例如。更新部220以从任务200接收到的控制请求是在与通信装置40之间请求数据的发送接收的控制请求为条件,判断为该控制请求是阻断控制请求。 
应答部230将与该控制请求相应的通信状态的更新结果应答给任务200。即,对于非阻断控制请求,不等待与该请求相应的控制的执行,便将更新结果应答给任务200。另一方面,对于阻断控制请求,根据接收部250从代理服务器30接收到与该请求相应的控制的执行结果,将该执行结果应答给任务200。控制指示部240,在通信设备26与代理服务器30可以通信的状态下,使用通信设备26对代理服务器30发送用于使代理服务器30的、与通信装置40之间的通信状态转移为存储部24中所存储的通信状态的指示。 
接收部250使用通信设备26从代理服务器30接收根据由控制指示部240发送的指示,代理服务器30所执行的控制的执行结果。执行结果被通知给更新部220以及应答部230。在接收到阻断控制请求的情况下,更新部220根据该执行结果更新通信状态,并且应答部230将该执行结果应答给任务200。 
图5是表示移动电话20与通信装置40之间的通信的通信状态的状态转移的图。更新部220根据接收到非阻断控制请求的情况,即使是通信设备26与代理服务器30不能通信的状态,也沿着图中的实线更新存储部24中所存储的通信状态。以下,具体地说明与非阻断控制请求相应的通信状态的转移。首先,在套接字未生成的情况下,不存在与该套接字对应的状 态。将该状态,为了方便设置成该套接字的空状态。更新部220根据生成新的套接字的控制请求,与新生成的套接字的标识信息对应地,将表示新生成了该套接字的内容的生成状态(在图5中是开启(OPEN)状态)作为通信状态存储在存储部24中。标识信息,可以不管由代理服务器30生成的套接字的标识信息如何,由更新部220来生成。而且,该控制请求是BSD Socket API中的套接字(socket)系统调用。因为该控制请求是非阻断控制请求,所以通信状态的更新不等待代理服务器30中的控制的执行便进行。 
接着,更新部220根据与该套接字的标识信息对应地接收到设定为接收来自通信装置40的通信请求的状态的控制请求,将与该标识信息对应的通信状态更新为缓冲区的分配完毕状态(在图5中是侦听(LISTEN)状态)。该控制请求对代理服务器30请求向套接字分配存储从通信装置40接收的通信请求的缓冲区。作为一例,该控制请求是BSD Socket API中的侦听(listen)系统调用。因为该控制请求也还是非阻断控制请求,所以通信状态的更新不等待控制的执行便进行。在开启状态、侦听状态或者后面描述的已连接(CONNECTED)状态,更新部220根据与套接字的标识信息对应地接收到了释放该套接字的控制请求的情况,将与该标识状态对应的通信状态返回到空状态。该控制是例如BSD Socket API中的关闭(close)系统调用。因为该控制请求也还是非阻断控制请求,所以通信状态的更新不等待控制的执行便进行。 
更新部220以从任务200接收到的控制请求是改变通信设备26与通信装置40之间的通信的属性的请求为条件,判断为该控制请求是非阻断控制请求。例如,在开启状态,更新部220根据与套接字的标识信息对应地接收到向该套接字分配指定的端口编号的控制请求的情况,与该标识信息对应地将该端口编号存储在存储部24中。该控制请求例如是BSD Socket API中的绑定(bind)系统调用。因为该控制请求也还是非阻断控制请求,所以端口编号的分配不等待代理服务器30中的控制的执行便进行。 
另一方面,更新部220根据接收到阻断控制请求的情况,并根据接收 部250的控制的执行结果的接收,沿着图中的虚线更新存储部24中所存储的通信状态。以下,具体地说明与阻断控制请求相应的通信状态的转移。更新部220以从任务200接收到的控制请求是检测通信设备26与通信装置40是否能够通信的请求、对来自通信装置40的通信请求进行通信许可的应答的请求或者是数据的发送接收的请求的情况为条件,判断为这些请求是阻断控制请求。例如,更新部220在侦听状态,根据与该套接字的标识信息对应地接收到检测通信设备26与通信装置40是否能够通信的控制请求(例如选择(select)系统调用)的情况,将与该标识信息对应的通信状态更新为通信等待状态(在图5中是侦听+选择(LISTEN+SELECT)状态)。选择系统调用发布用于调查多个套接字的状态的请求。如果采用该系统调用,则能够调查是否能够从各个套接字读出数据、是否能够对各个套接字写入数据,或者,在读出、写入中是否发生了错误。在接收部250接收到是否能够进行由代理服务器30执行的通信的检测结果的情况下,更新部220将与该标识信息对应的通信状态返回到分配完毕状态。这样,因为该控制请求是阻断控制请求,所以在代理服务器30进行的控制的执行之后,将执行结果通知给任务200。 
此外,更新部220在侦听状态,根据与该套接字的标识信息对应地接收到对来自通信装置40的通信请求进行通信许可的应答的控制请求(例如接受(accept)系统调用)的情况,将与该标识信息对应的通信状态更新为接受通信的通信接受状态(在图5中是接受(ACCEPT)状态)。并且,在接收部250接收到由代理服务器30执行的控制的执行结果的情况下,更新部220将与该标识信息对应的通信状态返回到分配完毕状态。此外,更新部220,也可以在通过该控制新生成了套接字的情况下,在存储部24中存储新的套接字的标识信息,并与该标识信息对应起来存储连接完毕状态(在图5中是已连接状态)。在此情况下,更新部220应该将新生成的标识信息和由代理服务器30生成的套接字对应起来,并将该标识信息通知给代理服务器30。因为该控制请求是阻断控制请求,所以在代理服务器30的控制的执行之后应答执行结果。
此外,更新部220,在已连接状态,根据与套接字的标识信息对应地接收到请求使用了该套接字的数据的发送接收的控制请求(例如选择系统调用、接收(recv)系统调用或者发送(send)系统调用)的情况,判断为接收到了阻断控制请求。并且,更新部220将与该标识信息对应的通信状态更新为通信等待状态(在图5中是选择(SELECT)状态、接收(RECV)状态或者发送(SEND)状态)。并且,在接收部250接收到由代理服务器30执行的数据的发送接收结果的情况下,更新部220将与该标识信息对应的通信状态返回到连接完毕状态。这样,因为该控制请求是阻断控制请求,所以在代理服务器30的控制的执行之后,执行结果被通知给任务200。 
图6表示移动电话20的通信状态和与之对应对通信装置40发送的指示。参照图6,说明控制指示部240的处理的具体例子。控制指示部240,在通信设备26与代理服务器30可以通信的状态下,向代理服务器30发送使代理服务器30的、与通信装置40之间的通信状态转移到存储部24中所存储的通信状态的指示。为了实现之,首先,控制指示部240从中央处理装置22检索与各个套接字对应的通信状态。并且,控制指示部240向代理服务器30发送与所检索的通信状态预先对应起来的指示。图6所表示的是该处理中的通信状态与指示的对应关系。即,根据对于某一套接字检索到开启状态的情况,控制指示部240对代理服务器30发送应该执行套接字系统调用的指示。此外,对于其他的套接字,以通信状态是侦听状态为条件,控制指示部240对代理服务器30发送新生成套接字并且与标识信息对应起来进行管理的指示(例如执行套接字系统调用的指示)以及对该套接字分配存储从通信装置40接收到的通信请求的缓冲区的指示(例如执行侦听系统调用的指示)。此外,根据对于其他的套接字检索到选择状态的情况,控制指示部240对代理服务器30发送应该顺次执行套接字系统调用和选择系统调用的指示。进而,根据对于其他的套接字检索到侦听+选择状态的情况,控制指示部240对代理服务器30发送应该顺次执行套接字系统调用、绑定系统调用、侦听系统调用和选择系统调用的指示。 
图7表示代理服务器30的功能结构。代理服务器30具有中央处理装 置32、存储部34、LAN接口36、串行接口38。存储部34将从移动电话20指定的套接字的第1标识信息(例如称为fd)和用于代理服务器30与通信装置40进行通信的套接字的第2标识信息(例如称为处理(ハンドル))对应起来进行存储。这样,虽然第1标识信息以及第2标识信息可以不同,但对应的第1标识信息以及第2标识信息共同标识由代理服务器30生成的同一套接字。即,由代理服务器30生成的套接字由在移动电话20上工作的任务200利用第1标识信息标识,由在代理服务器30上工作的通信模块310利用第2标识信息标识。 
LAN接口36经由以太网(注册商标)等第2通信线路35与通信装置40通信。LAN接口36,作为移动电话20与通信装置40的通信控制的结果,在与通信装置40之间进行必要的通信。另一方面,串行接口38经由第1通信线路25与移动电话20通信。第1通信线路25例如是串行线路、并行线路或者USB(Universal Serial Bus,通用串行总线)等。串行接口38从移动电话20接收通信控制的指示,或者将通信控制的执行结果发送给移动电话20。 
中央处理装置32利用预先安装的程序,作为套接字生成部300、通信模块310、ID管理部320、发送接收部330发挥作用。通信模块310例如利用Windows(注册商标)操作系统等的、用于实现套接字通信的库程序实现。并且,通信模块310控制代理服务器30与通信装置40之间的通信。套接字生成部300根据接收到新生成套接字并与第1标识信息对应起来进行管理的指示的情况,生成在代理服务器30与通信装置40之间的通信中使用的套接字并获得第2标识信息。套接字的生成通过对通信模块310进行系统调用的调用来实现。 
ID管理部320使串行接口38接收到的第1标识信息和套接字生成部300获得的第2标识信息对应起来存储在存储部34中。发送接收部330根据与套接字的第1标识信息对应地从串行接口38接收到使用该套接字发送接收数据的指示的情况,在存储部34中检索与该第1标识信息对应的第2标识信息。并且,发送接收部330使用由检索到的第2标识信息标识的套 接字与通信装置40发送接收数据。代理服务器30与通信装置40之间的数据的发送接收通过对通信模块310进行系统调用的调用来实现。 
而且,在本实施方式中,虽然是作为代理服务器30和通信装置40被分开地设置的装置而表示的,但也可以同一信息处理装置作为代理服务器30以及通信装置40的各个发挥作用。在此情况下,发送接收部330在与在代理服务器30内工作的其他的任务之间进行基于TCP/IP的通信。这样,代理服务器30的控制的对象也可以是代理服务器30内的其他的任务与移动电话20之间的通信。 
图8表示移动电话20以及代理服务器30的处理的第1例。任务200将生成新的套接字的控制请求发送到通信模块210(S800)。该控制请求例如通过调用套接字(socket)系统调用来实现。更新部220,如果接收到该控制请求,则不管通信设备26与代理服务器30是否能够通信,都生成新生成的套接字的第1标识信息(fd)(S810)。接着,更新部220与生成的该第1标识信息对应起来,将表示新生成了套接字的内容的生成状态(开启状态)作为通信状态存储在存储部24中(S820)。接着,应答部230将该第1标识信息作为通信状态的更新结果应答给任务200(S825)。在BSD Socket API标准中,规定:如果套接字系统调用失败则返回-1,如果套接字系统调用成功则返回套接字的标识信息。因此,应答套接字的第1标识信息这一点成为应答了通信状态的更新成功的内容。接收更新结果的应答,任务200进行由应用程序确定的下一处理。 
在通信设备26与代理服务器30可以通信的状态下,或者如果变成通信设备26与代理服务器30可以通信的状态,则接着进行以下的处理。控制指示部240以存储部24中所存储的通信状态是生成状态(开启状态)为条件,对代理服务器30发送新生成套接字并与该第1标识信息对应地进行管理的指示(S840)。例如,控制指示部240可以发送标识应该执行的套接字系统调用的API编号、应该与所生成的套接字对应地进行管理的第1标识信息(fd)。进而,控制指示部240也可以将在从任务200接收到系统调用的调用的情况下指定的自变量发送给代理服务器30。接收该指示, 套接字生成部300生成在代理服务器30与通信装置40之间的通信中使用的套接字并生成该套接字的第2标识信息(S850)。并且,ID管理部320将接收到的第1标识信息和生成的第2标识信息对应起来进行管理。 
以上,如套接字系统调用的例子那样,在接收到非阻断控制请求的情况下,更新部220不等待与该控制请求相应的控制的结束便更新通信状态。并且,应答部230将该通信状态的更新结果应答给任务200。由此,任务200,即使在移动电话20与代理服务器30之间的第1通信线路25不能通信的情况下,也能够继续其处理。而且,套接字系统调用是非阻断控制请求的一例,对于侦听系统调用而言,也与图8的例子是同样的。即,通信模块210,如果接收到用于向套接字分配缓冲区的侦听系统调用的调用,则即使在移动电话20与代理服务器30之间的第1通信线路25不能通信的情况下,更新部220也将通信状态更新为分配完毕状态(侦听状态),并且应答部230将缓冲区的分配成功了的内容应答给任务200。这样,通过对于资源的分配请求将实际的控制推迟到通信开始,即使在移动电话20与代理服务器30不能通信的情况下,也能够使任务200的处理继续。 
图9表示移动电话20以及代理服务器30的处理的第2例。任务200将使用套接字检测通信设备26与通信装置40能否通信的控制请求与该套接字的第1标识信息对应起来发送给通信模块210(S900)。该控制请求例如通过调用选择(select)系统调用来实现。更新部220,如果接收到该控制请求,则将与该第1标识信息对应的套接字的通信状态更新为通信等待状态(S910)。并且,更新部220,使任务200的处理中断并等待,直到通信设备26与代理服务器30能够通信为止(S920)。在此情况下,更新部220可以与该第1标识信息对应地,将标识正在等待的任务200的标识信息与存储器24对应地进行存储。 
在通信设备26与代理服务器30能够通信的状态下,应答部230以通信状态是通信等待状态为条件,将以下表示的多个指示发送给代理服务器30(S930)。所谓该指示,是新生成套接字并与第1标识信息对应起来进行管理的指示(例如执行套接字系统调用的内容的指示)、对该套接字分 配存储通信请求的缓冲区的指示(例如执行侦听系统调用的内容的指示)以及使用该套接字检测是否可以通信的指示(例如执行选择系统调用的指示)。应答部230可以将标识各个系统调用的API编号、成为控制对象的套接字的第1标识信息对应起来发送到代理服务器30。 
接收这些指示,套接字生成部300进行通信的控制(S940)。首先,套接字生成部300生成在代理服务器30与通信装置40之间的通信中使用的套接字并生成该套接字的第2标识信息(S940)。并且,ID管理部320将该第2标识信息与第1识别信息对应起来存储在存储部34中。而且,套接字生成部300,在接收到新生成套接字并与标识信息对应起来进行管理的指示的情况下,可以在该标识信息已作为第1标识信息存储在了存储部34中的情况下,不新生成套接字。在此情况下,ID管理部320以及发送接收部330对于由与已存储的第1标识信息对应的第2标识信息标识的套接字,进行其他的处理。 
套接字生成部300对于由第2标识信息标识的套接字,分配存储通信请求的缓冲区。并且,发送接收部330使用该套接字与通信装置40发送接收数据。例如,发送接收部330通过与通信装置40通信,检测是否能够使用该套接字进行通信。如果检测完成,则将检测结果通知给通信模块210。在接收部250接收到代理服务器30的是否能够通信的检测结果的情况下,应答部230将该检测结果应答给任务200(S950)。此外,更新部220将与第1标识信息对应的通信状态返回到分配完毕状态。接收之,继续其下面的处理(S960)。 
以上,如参照图9说明的那样,对于请求数据的发送接收等的阻断控制请求,与根据该请求的控制的结束相应地将其结果应答给任务。即,任务200中断处理直到发送接收完成为止。通信模块210,即使最近接收到的系统调用仅是选择,也向代理服务器30指示与之前接收到的套接字系统调用以及侦听系统调用对应的控制。由此,能够保证移动电话20中的通信状态和代理服务器30中的通信状态的吻合。 
图10表示移动电话20以及代理服务器30的处理的第3例。参照图 10,说明进行套接字通信的应用程序的处理的典型例子。如果任务200对通信模块210执行套接字系统调用的调用(S1000),则更新部220生成套接字的第1标识信息(S1010),应答部230将该第1标识信息应答给任务200(S1020)。如果任务200执行将指定的端口编号分配给套接字的绑定(bind)系统调用的调用(S1030),则更新部220将该端口编号与该套接字的第1识别信息对应起来存储在存储部24中。并且,应答部230将端口编号的分配成功了的内容应答给任务200(S1040)。 
如果任务200对通信模块210执行侦听系统调用的调用(S1050),则更新部220将通信状态更新为分配完毕状态,应答部230将缓冲区的分配成功了的内容应答给任务200(S1055)。接着,如果任务200执行对来自通信装置40的通信请求进行通信许可与否的应答的接受(accept)系统调用的调用(S1060),则更新部220生成新生成的套接字的第1标识信息并使其存储在存储部24中。此外,更新部220将与该第1标识信息对应的通信状态更新为通信接受状态(ACCEPT状态),并且中断任务200的处理,直到移动电话20与代理服务器30能够通信为止。 
这样,直到接受系统调用等阻断控制请求被发布为止,任务200的处理都不中断而执行。 
在移动电话20与代理服务器30能够通信的状态下,控制指示部240将以下表示的多个指示发送到代理服务器30(S1065)。所谓该指示,是新生成套接字并与第1标识信息对应起来进行管理的指示(例如执行套接字系统调用的内容的指示)、对该套接字分配存储从通信装置40接收的通信请求的缓冲区的指示(例如执行侦听系统调用的内容的指示)以及对来自通信装置40的通信请求进行通信许可的应答的指示(例如执行接受系统调用的内容的指示)。控制指示部240可以以与第1标识信息对应起来对应地存储端口编号为条件,与该端口编号对应地对代理服务器30进一步发送应该分配该端口编号的指示。 
此外,控制指示部240生成应该与利用接受系统调用新生成的套接字对应地进行管理的第1标识信息(newfd)。具体地,控制指示部240在 存储部24中检索与空状态对应的条目。并且,控制指示部240获得与该条目对应的套接字的标识信息。例如,图3的第3行例示的条目与空状态相对应。该条目作为第1标识信息位于具有2个的条目的下一行。因此,控制指示部240将2加1而得到的3生成作为第1标识信息(newfd),并使之存储在存储部24中。并且,控制指示部240应该将新生成的第1标识信息(newfd)和由代理服务器30生成的套接字对应起来,并将该第1标识信息(newfd)通知给代理服务器30。 
接收这些指示,套接字生成部300调用套接字(socket)系统调用、绑定(bind)系统调用、侦听(listen)系统调用以及接受(accept)系统调用(S1070)。此外,代理服务器30的标识信息管理部320将接收到通知的第1标识信息(newfd)和新生成的套接字的第2标识信息对应起来存储在存储部34中。这些系统调用的执行结果被返回给通信模块210(S1075)。接收之,更新部220将与第1标识信息(fd)对应的通信状态返回到分配完毕状态(侦听状态),并将与第1标识信息(newfd)对应的通信状态更新为连接完毕状态。应答部230,作为这些控制的执行结果,将第1标识信息(newfd)应答给任务200(S1080)。由此,任务200解除处理的中断而能够进行下一处理。 
以上,如果采用本发明的实施方式,则即使在移动电话20以及代理服务器30之间的第1通信线路25无效的情况下,对于与套接字有关的资源的确保/释放等、不要求实际的通信的控制,也能够作为控制成功了的结果使任务200的执行继续。并且,在通信实际开始的情况下,首先使任务200的执行停止,进行资源的确保、释放等处理。由此,即使在发生第1通信线路25的切断的情况下,也能够使任务200的TCP/IP的通信继续。其结果,作为第1通信线路25,能够不用以太网(注册商标)等,而采用串行接口、并行接口等,进而还能够暂时切断第1通信线路25。由此,还能够为了不对移动电话20的工作状况产生影响,一般在与代理服务器30切断了的状态下使移动电话20工作,从而仅在需要的情况下与代理服务器30连接并进行调试。
图11表示作为代理服务器30发挥作用的信息处理装置600的硬件结构的一例。信息处理装置600具备:具有利用主控制器1082相互连接的CPU1000、RAM1020以及图形控制器1075的CPU外围部;具有利用输入输出控制器1084与主控制器1082连接的通信接口1030、硬盘驱动器1040以及CD-ROM驱动器1060的输入输出部;以及具有与输入输出控制器1084连接的ROM1010、软盘驱动器1050以及输入输出芯片1070的传统输入输出部。 
主控制器1082将RAM1020、以高的传输速率访问RAM1020的CPU1000以及图形控制器1075相连接。CPU1000根据存储在ROM1010以及RAM1020中的程序工作,进行各部分的控制。例如CPU1000作为参照图7说明的中央处理装置32发挥作用。图形控制器1075获得CPU1000等生成在设置于RAM1020内的帧缓冲区上的图像数据,使之显示在显示装置1080上。代之,图像控制器1075也可以在内部包含存储CPU1000等生成的图像数据的帧缓冲区。 
输入输出控制器1084将主控制器1082、作为比较高速的输入输出装置的通信接口1030、硬盘驱动器1040以及CD-ROM驱动器1060相连接。通信接口1030经由网络与外部的装置通信。例如通信接口1030作为参照图7说明的LAN接口36发挥作用。硬盘驱动器1040存储信息处理装置600使用的程序以及数据。CD-ROM驱动器1060从CD-ROM1095读取程序或者数据,并提供给RAM1020或者硬盘驱动器1040。RAM1020也可以作为参照图7说明的存储部34发挥作用。 
此外,在输入输出控制器1084上,连接有ROM1010、软盘驱动器1050、输入输出芯片1070等比较低速的输入输出装置。输入输出芯片1070例如也可以作为串行接口38等发挥作用。ROM1010存储在信息处理装置600的启动时CPU1000所执行的引导程序、依赖于信息处理装置600的硬件的程序等。软盘驱动器1050从软盘1090读取程序或者数据,并经由输入输出芯片1070提供给RAM1020或者硬盘驱动器1040。输入输出芯片1070连接软盘1090,经由例如并行端口、串行端口、键盘端口、鼠标端口等连 接各种输入输出装置。 
提供给信息处理装置600的程序存储在软盘1090、CD-ROM1095或者IC卡等记录介质上而由使用者提供。程序经由输入输出芯片1070以及/或者输入输出控制器1084从记录介质被读出,并被安装在信息处理装置600上执行。此外,控制移动电话20的控制程序也能够经由输入输出芯片1070提供给移动电话20,并被安装在移动电话20中执行。程序在信息处理装置600等中运行而进行的动作,因为与在图1至图10中说明的代理服务器30或者移动电话20的动作相同,故而省略说明。 
以上所示的程序也可以存储在外部的存储介质上。作为存储介质,除了软盘1090、CD-ROM1095外,还能够使用DVD、PD等光记录介质、MD等光磁记录介质、磁带介质、IC卡等半导体存储器等。此外,也可以将设置在与专用通信网络、因特网等连接的服务器系统上的硬盘或者RAM等存储装置作为记录介质使用,经由网络将程序提供给信息处理装置600。 
以上,虽然使用实施方式对本发明进行了说明,但本发明的技术范围并不限于上述实施方式中所记载的范围。本领域的技术人员可以明了,在上述的实施方式中,可以加以多种改变或者改进。因而,根据权利要求的范围的记载可以明了,加以这样的改变或者改进后的方式也包含在本发明的技术范围内。 
附图说明
图1表示通信系统10的整体构成; 
图2表示移动电话20的功能结构; 
图3表示存储部24的数据结构的一例; 
图4表示通信模块210的功能结构; 
图5是表示移动电话20与通信装置40之间的通信的通信状态的状态转移的图; 
图6表示移动电话20的通信状态和与之对应地对通信装置40发送的指示;
图7表示代理服务器30的功能结构; 
图8表示移动电话20以及代理服务器30的处理的第1例; 
图9表示移动电话20以及代理服务器30的处理的第2例; 
图10表示移动电话20以及代理服务器30的处理的第3例;以及 
图11表示作为代理服务器30发挥作用的信息处理装置600的硬件结构的一例。

Claims (15)

1.一种嵌入式设备,其经由代理通信的控制的外部的代理服务器与其他的装置进行通信,具备:
能够与上述代理服务器通信的通信设备;
用于存储与上述其他的装置的通信状态的存储部;
更新部,其根据从由中央处理装置执行的任务接收到与上述其他的装置的通信的控制请求的情况,在上述通信设备与上述代理服务器不能通信的状态下,将上述通信状态更新为正常地进行了与上述控制请求相应的控制之后的状态;
将与上述控制请求相应的上述通信状态的更新结果应答给上述由中央处理装置执行的任务的应答部;以及
控制指示部,其在上述通信设备与上述代理服务器能够通信的状态下,使用上述通信设备对上述代理服务器发送用于使上述代理服务器的、与上述其他的装置之间的通信状态转移到上述存储部中所存储的通信状态的指示。
2.根据权利要求1所述的嵌入式设备,进一步具备:
接收部,其使用上述通信设备从上述代理服务器接收根据由上述控制指示部发送的指示、上述代理服务器所执行的控制的执行结果;
其中,上述更新部,以从上述任务接收到的上述控制请求是预先确定的非阻断控制请求为条件,即使在上述通信设备与上述代理服务器不能通信的状态下也更新上述通信状态,并且以从上述任务接收到的上述控制请求不是上述非阻断控制请求为条件,与上述接收部进行的上述执行结果的接收相应地更新上述通信状态,其中上述非阻断控制请求设定为不等待与上述控制请求相应的控制的完成便能够继续上述任务的处理。
3.根据权利要求2所述的嵌入式设备,其中上述更新部,以从上述任务接收到的上述控制请求是确保或者释放在通信中所需要的资源的请求为条件,判断为该控制请求是上述非阻断控制请求,并且以从上述任务接收到的上述控制请求是在与上述其他的装置之间请求数据的发送接收的控制请求为条件,判断为该控制请求不是上述非阻断控制请求。
4.根据权利要求3所述的嵌入式设备,其中上述更新部,进一步以从上述任务接收到的上述控制请求是改变上述通信设备与上述其他的装置之间的通信属性的请求为条件,判断为该控制请求是上述非阻断控制请求。
5.根据权利要求3所述的嵌入式设备,其中上述更新部,以从上述任务接收到的上述控制请求是检测上述通信设备与上述其他的装置是否能够通信的请求为条件,判断为该控制请求是上述非阻断控制请求。
6.根据权利要求3所述的嵌入式设备,其中上述更新部,以从上述任务接收到的上述控制请求是对来自上述其他的装置的通信请求进行通信许可的应答的请求为条件,判断为该控制请求不是上述非阻断控制请求。
7.根据权利要求3所述的嵌入式设备,其中:
上述代理服务器是代理该嵌入式设备与上述其他的装置之间的、基于TCP/IP的通信的控制的服务器;
上述存储部将各个套接字的通信状态与该套接字的标识信息对应起来进行存储;
上述更新部根据生成新的套接字的控制请求,与新生成的套接字的标识信息对应地,将表示新生成了套接字的内容的生成状态作为上述通信状态存储在上述存储部中;
上述应答部将上述标识信息作为上述更新结果应答给上述任务;
上述控制指示部,在上述通信设备与上述代理服务器能够通信的状态下,以上述通信状态是上述生成状态为条件,对上述代理服务器发送新生成套接字并与上述标识信息对应起来进行管理的指示。
8.根据权利要求7所述的嵌入式设备,其中:
上述更新部,根据与套接字的标识信息对应地接收到对该套接字分配存储从上述其他的装置接收的通信请求的缓冲区的控制请求的情况,将与该标识信息对应的上述通信状态更新为缓冲区的分配完毕状态;
上述应答部将缓冲区的分配成功了的内容应答给上述任务;
上述控制指示部,在上述通信设备能够与上述代理服务器通信的状态下,以上述通信状态是上述分配完毕状态为条件,对上述代理服务器发送新生成套接字并与上述标识信息对应起来进行管理的指示以及对该套接字分配缓冲区的指示。
9.权利要求8所述的嵌入式设备,其中:
上述更新部,根据与套接字的标识信息对应地接收到检测上述通信设备与上述其他的装置是否能够使用该套接字通信的控制请求的情况,将与该标识信息对应的上述通信状态更新为通信等待状态;
上述控制指示部,在上述通信设备能够与上述代理服务器通信的状态下,以上述通信状态是上述通信等待状态为条件,对上述代理服务器发送新生成套接字并与上述标识信息对应起来进行管理的指示、对该套接字分配上述缓冲区的指示以及检测是否能够进行基于该套接字的通信的指示,并且在上述接收部接收到上述代理服务器的、是否能够进行通信的检测结果的情况下:
上述应答部与上述检测结果的接收相应地将上述检测结果应答给上述任务;以及
上述更新部将与该标识信息对应的上述通信状态返回到上述分配完毕状态。
10.根据权利要求9所述的嵌入式设备,其中:
上述更新部,根据与套接字的标识信息对应地接收到将指定的端口编号分配给该套接字的控制请求的情况,与该标识信息对应地将上述端口编号存储在上述存储部中;
上述应答部将端口编号的分配成功了的内容应答给上述任务;
上述控制指示部,在上述通信设备能够与上述代理服务器通信的状态下,以端口编号已与该套接字的标识信息对应起来对应地进行了存储为条件,进一步对上述代理服务器发送该端口编号。
11.根据权利要求7所述的嵌入式设备,其中:
在该嵌入式设备中,代替实现套接字通信的库程序,安装有使上述中央处理装置作为上述更新部、上述应答部、上述控制指示部以及上述接收部发挥作用的库程序;
上述任务通过调用所安装的该库程序的API,将上述控制请求发送到上述更新部;
上述更新部,以从上述任务接收到套接字系统调用、绑定系统调用、侦听系统调用以及关闭系统调用中的至少任意一个调用为条件,判断为从上述任务接收到上述非阻断控制请求,并且以从上述任务接收到接受系统调用、选择系统调用、接收系统调用以及发送系统调用中的至少任意一个调用为条件,判断为从上述任务接收到不是上述非阻断控制请求的控制请求。
12.一种代理服务器,其代理嵌入式设备进行的与其他的装置的通信的控制,具备:
将从上述嵌入式设备指定的套接字的第1标识信息和用于该代理服务器与上述其他的装置进行通信的套接字的第2标识信息对应起来进行存储的存储部;
套接字生成部,其根据接收到新生成套接字并与上述第1标识信息对应起来进行管理的指示的情况,生成在该代理服务器与上述其他的装置之间的通信中使用的套接字并获得第2标识信息;以及
将接收到的上述第1标识信息与所生成的套接字的上述第2标识信息对应起来存储在上述存储部中的标识信息管理部。
13.根据权利要求12所述的代理服务器,其中上述套接字生成部,即使在接收到新生成套接字并与上述标识信息对应起来进行管理的指示的情况下,也在该标识信息已经作为上述第1标识信息存储在了上述存储部中的情况下,不新生成套接字。
14.根据权利要求12所述的代理服务器,进一步具备:
发送接收部,其根据与套接字的第1标识信息对应地接收到使用该套接字发送接收数据的指示的情况,使用上述存储部中与该第1标识信息对应的第2标识信息所标识的套接字与上述其他的装置发送接收数据。
15.一种控制经由代理通信的控制的外部的代理服务器与其他的装置进行通信的组装设备的方法,上述组装设备具有:
能够与上述代理服务器通信的通信设备;以及
用于存储与上述其他的装置的通信状态的存储部;
该方法包括:
根据从由中央处理装置执行的任务接收到与上述其他的装置的通信的控制请求的情况,在上述通信设备与上述代理服务器不能通信的状态下,将上述通信状态更新为正常地进行了与上述控制请求相应的控制之后的状态的步骤;
将与上述控制请求相应的上述通信状态的更新结果应答给上述任务的步骤;以及
在上述通信设备与上述代理服务器能够通信的状态下,使用上述通信设备对上述代理服务器发送用于使上述代理服务器的、与上述其他的装置之间的通信状态转移到上述存储部中所存储的通信状态的指示的步骤。
CN200780011378.XA 2006-04-13 2007-04-10 利用代理服务器控制嵌入式设备与外部的通信的方法和设备 Expired - Fee Related CN101411165B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006111300 2006-04-13
JP111300/2006 2006-04-13
PCT/JP2007/057895 WO2007123025A1 (ja) 2006-04-13 2007-04-10 組込機器による外部との通信を代行サーバにより制御させる技術

Publications (2)

Publication Number Publication Date
CN101411165A CN101411165A (zh) 2009-04-15
CN101411165B true CN101411165B (zh) 2013-06-19

Family

ID=38624931

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200780011378.XA Expired - Fee Related CN101411165B (zh) 2006-04-13 2007-04-10 利用代理服务器控制嵌入式设备与外部的通信的方法和设备

Country Status (9)

Country Link
US (1) US7996524B2 (zh)
EP (1) EP2015190B1 (zh)
JP (1) JP4965562B2 (zh)
CN (1) CN101411165B (zh)
AT (1) ATE531176T1 (zh)
BR (1) BRPI0710748B1 (zh)
CA (1) CA2642585C (zh)
TW (1) TWI418178B (zh)
WO (1) WO2007123025A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8869171B2 (en) * 2010-12-23 2014-10-21 Mellanox Technologies Ltd. Low-latency communications
CN103138965B (zh) * 2011-11-28 2016-07-06 中国电信股份有限公司 一种查询物联网设备状态的方法、装置和系统
CN103327040A (zh) * 2012-03-21 2013-09-25 鸿富锦精密工业(深圳)有限公司 代理服务更新系统及方法
US9088612B2 (en) * 2013-02-12 2015-07-21 Verizon Patent And Licensing Inc. Systems and methods for providing link-performance information in socket-based communication devices
US10356047B2 (en) 2013-12-05 2019-07-16 Crowdstrike, Inc. RPC call interception
EP3447973B1 (en) * 2016-05-10 2021-04-07 Huawei Technologies Co., Ltd. Packet switching service recognition method and terminal

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063088A (ja) * 2000-07-07 2002-02-28 Internatl Business Mach Corp <Ibm> データ通信方法
JP2003046599A (ja) * 2001-07-31 2003-02-14 Anritsu Corp 測定システム
CN1441374A (zh) * 2001-12-05 2003-09-10 微软公司 移动式和嵌入式设备的配置和管理系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0922391A (ja) 1995-07-05 1997-01-21 Matsushita Electric Ind Co Ltd クライアント/サーバシステム
JP3392302B2 (ja) * 1996-10-04 2003-03-31 株式会社日立製作所 情報処理装置、通信方法および記憶媒体
JP3608905B2 (ja) * 1997-05-29 2005-01-12 三菱電機株式会社 データ通信システム及びデータ通信方法
JPH11112609A (ja) * 1997-10-06 1999-04-23 Toshiba Corp 通信システムにおける通信障害回復方法ならびに同方法がプログラムされ記録される記録媒体
JPH11225376A (ja) * 1998-02-06 1999-08-17 Ntt Chuo Personal Tsushinmo Kk 通信接続装置
JP3464907B2 (ja) 1998-03-20 2003-11-10 富士通株式会社 プロトコル変換システム
US7778260B2 (en) * 1998-10-09 2010-08-17 Netmotion Wireless, Inc. Method and apparatus for providing mobile and other intermittent connectivity in a computing environment
EP1170923B1 (en) 2000-07-07 2005-05-25 International Business Machines Corporation Interception method and system for compensating disadvantageous characteristics of a communication protocol
US7293108B2 (en) * 2001-03-15 2007-11-06 Intel Corporation Generic external proxy
EP1563389A4 (en) 2001-08-01 2008-06-25 Actona Technologies Ltd VIRTUAL DATA DISTRIBUTION NETWORK
JP4329358B2 (ja) 2003-02-24 2009-09-09 富士通株式会社 ストリーム配信方法、及びストリーム配信システム
US7533176B2 (en) * 2004-07-14 2009-05-12 International Business Machines Corporation Method for supporting connection establishment in an offload of network protocol processing
US20060053485A1 (en) * 2004-09-08 2006-03-09 Chia-Hsin Li Network connection through NAT routers and firewall devices
JP2006127461A (ja) * 2004-09-29 2006-05-18 Sony Corp 情報処理装置、通信処理方法、並びにコンピュータ・プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002063088A (ja) * 2000-07-07 2002-02-28 Internatl Business Mach Corp <Ibm> データ通信方法
JP2003046599A (ja) * 2001-07-31 2003-02-14 Anritsu Corp 測定システム
CN1441374A (zh) * 2001-12-05 2003-09-10 微软公司 移动式和嵌入式设备的配置和管理系统

Also Published As

Publication number Publication date
EP2015190A1 (en) 2009-01-14
TW200803282A (en) 2008-01-01
US20090201944A1 (en) 2009-08-13
JP4965562B2 (ja) 2012-07-04
US7996524B2 (en) 2011-08-09
ATE531176T1 (de) 2011-11-15
BRPI0710748A2 (pt) 2012-09-18
BRPI0710748B1 (pt) 2018-11-27
CA2642585C (en) 2015-03-17
CA2642585A1 (en) 2007-11-01
EP2015190A4 (en) 2010-09-22
JPWO2007123025A1 (ja) 2009-09-03
TWI418178B (zh) 2013-12-01
CN101411165A (zh) 2009-04-15
EP2015190B1 (en) 2011-10-26
WO2007123025A1 (ja) 2007-11-01

Similar Documents

Publication Publication Date Title
US6484217B1 (en) Managing shared devices in a data processing system
US7062516B2 (en) Methods, systems, and articles of manufacture for implementing a runtime logging service storage infrastructure
US7523196B2 (en) Session monitoring using shared memory
US8239505B2 (en) Progressively implementing declarative models in distributed systems
JP3730563B2 (ja) セッション管理装置およびセッション管理方法およびプログラムおよび記録媒体
US5987497A (en) System and method for managing the configuration of distributed objects
US8099494B2 (en) Tuning and optimizing distributed systems with declarative models
CN100570607C (zh) 用于多处理环境中的数据聚合的方法和系统
CN101411165B (zh) 利用代理服务器控制嵌入式设备与外部的通信的方法和设备
US7640549B2 (en) System and method for efficiently exchanging data among processes
US6732360B1 (en) System and method for providing connection between client and heterogeneous database management systems
CN110806933A (zh) 一种批量任务处理方法、装置、设备和存储介质
CN112600928A (zh) 文件传输方法、装置、电子设备及介质
US20060112379A1 (en) Method and system for on demand java resources
JP3319764B2 (ja) ソフトウェアシステム間でソフトウェア機能を同期化させるための方法および装置
US20070174836A1 (en) System for controlling computer and method therefor
US20080256180A1 (en) Use of hardware to manage dependencies between groups of network data packets
US7421711B2 (en) System, method and apparatus for supporting a kernel mode driver
JP2013186765A (ja) バッチ処理システム、進捗状況確認装置、進捗状況確認方法、及びプログラム
US20010025324A1 (en) Data communication method and apparatus, and storage medium storing program for implementing the method and apparatus
CN111385334A (zh) 一种数据配送方法、装置、设备及存储介质
CN117076409B (zh) 文件共享方法、装置、系统、电子设备及存储介质
CN116466973B (zh) 一种多并发固件升级方法、系统、计算机设备及存储介质
EP0890901A1 (en) Method, system and program storage for operating a group of computers
JP2005055961A (ja) タスク間通信プログラム及びタスク間通信方法

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: 20130619