CN101938527B - 通信装置及其控制方法 - Google Patents

通信装置及其控制方法 Download PDF

Info

Publication number
CN101938527B
CN101938527B CN201010215096.5A CN201010215096A CN101938527B CN 101938527 B CN101938527 B CN 101938527B CN 201010215096 A CN201010215096 A CN 201010215096A CN 101938527 B CN101938527 B CN 101938527B
Authority
CN
China
Prior art keywords
data
send
information
source address
address
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
CN201010215096.5A
Other languages
English (en)
Other versions
CN101938527A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of CN101938527A publication Critical patent/CN101938527A/zh
Application granted granted Critical
Publication of CN101938527B publication Critical patent/CN101938527B/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明提供一种即使被分配多个源地址也能够选择合适的源地址、并减少在通信处理期间由源地址改变造成的通信错误的发生的通信装置及其控制方法。所述通信装置包括:发送部,其发送数据;发送信息管理部,其管理发送信息,所述发送信息包括用于识别要被发送的数据的类型的数据识别信息、目的地址以及所述数据的源地址;源地址确定部,其在要被发送的数据为特定类型时,可以被操作用来参照所管理的发送信息,并从所分配的源地址当中,确定过去被用于将数据发送至所述要被发送的数据的目的地址的源地址作为其源地址;以及通信控制部,其使所述发送部使用所确定的源地址发送所述数据。

Description

通信装置及其控制方法
技术领域
本发明涉及一种被分配用于网络通信的多个源地址的通信装置及该通信装置的控制方法。 
背景技术
一直以来,包括PC(个人计算机)、打印机、MFP(多功能外设)的各种类型的装置,已经作为能够连接到网络(例如内联网、互联网、LAN等)的通信装置在使用。一般来说,连接到网络的通信装置中广泛使用的协议是互联网协议(IP)。在IP协议下,各装置被分配唯一的IP地址,从而所连接的各个装置能够基于IP地址互相识别。 
一般来说,在传统的IP协议(IPv4(IP版本4))下,单个IP地址被分配给单个网络接口(I/F),作为将一个通信装置与网络上的其他通信装置识别开来的IP地址。另一方面,在最近才开始广泛使用的IPv6(IP版本6)下,通信装置一旦连接到路由器即开始与路由器通信,以自动获取IP地址。另外,除了这样获取的IP地址,为了在即使没有路由器存在的情况下也能够通信,基于网络接口分配IPv6地址。另外,在DHCP服务器存在的情况下,通信装置获取DHCP服务器发出的IP地址。 
如上面提到的,分配多个IPv6地址给单个网络接口是通常的做法。因此,在支持IPv6的通信装置中,单个网络接口分配IPv4地址和多个IPv6地址。对于被分配多个IP地址的通信装置,已提出了用于进行合适的通信的IP地址的选择方法(参见Internet Engineering Task Force RFC 3484“Default Address Selection for Internet Protocol version 6(IPv6)”<URL:http://www.ietf.org/rfc/RFC3484.txt>)。 
顺便提及,在一些各自由多个通信装置构成的网络系统中,服务器根据各个客户机的源地址提供服务。例如,这种服务器包括根据客户机的源地址改变所提供的信息的Web服务器,以及基于客户机地址执行验 证的通信服务器。这样的基于客户机地址的系统通常在不考虑通信协议的类型和应用程序的类型的情况下,广泛应用在通信系统中(参见日本特开2001-282728号公报)。 
在服务器根据各客户机的源地址提供服务的传统的系统中,客户机有时在一系列的通信处理中使用多个源地址执行通信。这种情况下,在根据各客户机的源地址改变所提供的信息的通信服务器或者在基于客户机地址执行验证的通信服务器中,如果源地址在一系列交易(transaction)中被改变,则有时候会发生通信错误。 
在根据RFC 3484中定义的源地址选择来选择源地址时也相同,网络环境是动态改变的。因此,对于相同的目的地址,并不总是选择相同的源地址。 
发明内容
本发明提供一种即使被分配多个源地址也能够选择合适的源地址、并减少在通信处理期间由源地址改变造成的通信错误的发生的通信装置、该通信装置的控制方法,以及存储有用于执行该控制方法的存储介质。 
根据本发明的第一方面,提供一种被分配用于网络通信的多个源地址的通信装置,该通信装置包括:发送单元,其适于发送数据;管理单元,其适于管理发送信息,所述发送信息包括用于识别要被所述发送单元发送的数据的类型的数据识别信息、所述要被发送的数据的目的地址、以及所述要被发送的数据的源地址;确定单元,其适于在要被所述发送单元发送的数据为特定类型的情况下,被操作用来参照所述管理单元管理的所述发送信息,并从分配给所述通信装置的所述多个源地址当中,确定过去被用于将数据发送至所述要被发送的数据的目的地址的源地址作为该数据的源地址;以及控制单元,其适于控制所述发送单元,使得所述发送单元使用由所述确定单元确定的所述源地址发送所述数据,其中,所述特定类型的所述数据为需要使用相同源地址发送的数据,所述通信装置还包括:存储单元,其适于将所述数据识别信息和该数据的属性信息相互关联地存储;以及属性确定单元,其适于参照所述存储单元中存储的、包括所述数据识别信息和所述属性信息的信息,并确定所述发送单元要发送的所述数据是否包含所述属性信息,并且其中,在所述属性确定单元确定所述要发送的数据不包含所述属性信息的情况下,所述确定单元将预定源地址确定为所述数据的所述源地址。 
根据本发明的第二方面,提供一种被分配用于网络通信的多个源地址的通信装置的控制方法,该控制方法包括以下步骤:发送数据;管理发送信息,所述发送信息包括用于识别要被发送的数据的类型的数据识别信息、所述要被发送的数据的目的地址、以及所述要被发送的数据的源地址;在所述发送要发送的数据为特定类型的情况下,参照所管理的发送信息,并从分配给所述通信装置的所述多个源地址当中,确定过去被用于将数据发送至所述要被发送的数据的目的地址的源地址作为该数据的源地址;以及控制所述发送,使得所述发送使用所确定的源地址发送所述数据,其中,所述特定类型的所述数据为需要使用相同源地址发送的数据,所述控制方法还包括以下步骤:将所述数据识别信息和该数据的属性信息相互关联地存储;以及 参照所存储的、包括所述数据识别信息和所述属性信息的信息,并确定所述要发送的数据是否包含所述属性信息,并且其中,在确定所述要发送的数据不包含所述属性信息的情况下,将预定源地址确定为所述数据的所述源地址。 
根据本发明,即使被分配多个源地址,也可以在通信处理期间选择合适的源地址、并减少由地址选择造成的通信错误的发生。 
通过以下参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。 
附图说明
图1是网络环境的示例的网络结构图,其中设置了作为根据本发明的第一实施例的通信装置的客户机PC。 
图2是图1中的客户机PC的概略框图。 
图3是客户机PC和服务器PC的概略功能框图。 
图4是表示图3中的存储在发送信息存储部的发送信息管理表的示例的图。 
图5是表示图3中的存储在发送数据识别信息存储部的发送数据识别信息的示例的图。 
图6A及图6B是由客户机PC的客户机通信控制部执行的通信处理的流程图。 
图7A及图7B是根据本发明的第二实施例的、由客户机PC的客户机通信控制部执行的通信处理的流程图。 
具体实施方式
现在,将参照表示本发明的实施例的附图来详细说明本发明。 
图1是网络环境的示例的网络结构图,其中设置了作为根据本发明的第一实施例的通信装置的客户机PC。 
如图1所示,客户机PC 100作为根据本发明的第一实施例的通信装置的示例,经由网络106(通过例如LAN(局域网)或者WAN(广域网)实现)连接到服务器PC 105。 
客户机PC 100保持有IP地址,以经由网络106与服务器PC 105或其他通信装置(未图示)进行通信。服务器PC 105响应于来自客户机PC100的请求提供服务。该服务器PC 105提供的服务包括Web、DNS、邮件、SNMP代理、WS-Eventing(环球网服务事件规范)等服务。应当注意,服务器PC 105提供的服务中使用的协议类型不受限制,只要服务使用IP地址进行通信即可。 
如果客户机PC 100保持多个IP地址,则需要从这些地址中选择一个适于服务器PC 105的地址(目的地址)的合适的地址。 
尽管在图示的示例中,网络环境包括客户机PC 100、服务器PC 105以及网络106,但是也可以连接有除此之外的其他的网络设备、信息处理装置、以及通信装置。另外,至于客户机PC 100和服务器PC 105之间的通信方法,可以理解可以采用除了LAN、WAN以外的网络、通过IEEE802.11定义的无线LAN,或者IEEE 1394接口。 
图2是图1中出现的客户机PC 100的概略框图。 
CPU 1是执行连接到系统总线4的各部件的中央控制的中央处理单元。RAM 2为起CPU 1的主存储器、工作区域等作用的存储器。ROM 3为包括字体ROM(font ROM)(未图示)、程序ROM(未图示)以及数据ROM(未图示)的存储器。外部存储器11通过硬盘(HD)、软(floppy,注册商标)盘(FD)等实现。外部存储器11存储启动程序、各种应用程序、字体数据、用户文件、编辑的文件等。 
字体ROM或者外部存储器11存储用于后述的文档处理的字体数据等。程序ROM或者外部存储器11存储操作系统(后面称为“OS”)作 为CPU 1的控制程序,等等。数据ROM或者外部存储器11存储各种用于后述的文档处理的数据。存储在外部存储器11中的程序在执行时分别加载到RAM 2中。 
CPU 1执行各种处理,包括基于存储在ROM 3中的程序ROM或者外部存储器11中的应用程序(文档处理程序等)、来处理包含混合存在的图形、图像、文本以及表(包括电子数据表)的文档的文档处理。另外,CPU 1执行将轮廓字体光栅化到例如固定在RAM 2中的显示RAM中的处理,以进而经由CRT控制器(CRTC)6在CRT 10上显示字符串。 
键盘控制器(KBC)5控制从具备各种键的键盘(KB)9、或者通过指针设备(未图示)输入的信息。CRTC(CRT控制器)6控制在CRT 10上的显示。尽管CRT 10为用于显示图形、图像、文本、表等的显示装置,并且通过CRT实现,但是也可以通过液晶显示设备、等离子显示设备等实现。盘控制器(DKC)7控制向外部存储器11的存取。网络控制器(NWC)8经由双向接口21连接到网络106。 
基于通过鼠标光标(未图示)等在CRT 10上指定的命令,CPU 1打开各种窗口中的有关联的一个,并执行各种数据处理中有关联的一个。在使用后述的客户机应用程序101或者服务器应用程序108的情况下,用户可以打开应用程序的配置窗口、在窗口上配置各种设置。 
应注意,图1中的服务器PC 105具有与图2中表示的客户机PC 100相同的配置,因此省略对其的说明。 
图3是客户机PC 100和服务器PC 105的概略的功能框图。 
响应于来自客户机应用程序101的请求,客户机PC 100执行经由客户机通信控制部102和通信库103与服务器PC 105的通信。尽管在图示的示例中,在客户机PC 100上仅客户机应用程序101工作,但是在其上也可以有多个客户机应用程序工作。 
客户机应用程序101与客户机通信控制部102通信。客户机通信控制部102经由OS的通信库103与服务器PC 105通信。尽管假定通信库103执行套接字通信(socket communication),但是通信库103也可以通 过RPC(远程过程调用)、LPC(本地过程调用)、Web服务等执行通信。 
服务器应用程序108在服务器PC 105上工作。服务器应用程序108与服务器通信控制部107通信。服务器通信控制部107从通信库104经由网络106与客户机PC 100通信。 
客户机通信控制部102包括通信控制部401、发送信息管理部402、发送信息存储部403、发送信息管理表404、源地址确定部405、发送数据识别信息存储部406以及发送部407。 
通信控制部401利用包括客户机通信控制部102的各部执行发送信息的获取以及源地址的确定,并根据确定结果设置用于通信的源地址。然后执行客户机PC 100和服务器PC 105之间的通信控制。 
发送信息管理部402获取并管理用于发送数据和通信的地址。由发送信息管理部402获取的信息包括,例如用于识别使用客户机通信控制部102的客户机应用程序的应用程序标识。另外,所述信息包括用于识别发送数据的类型的发送数据识别信息。另外,所述信息包括作为发送数据的目的地址的IP地址以及端口号。而且,所述信息包括作为发送数据的源地址的IP地址和端口号。 
发送信息存储部403将发送信息管理部402获取到的发送数据信息以及各地址信息,作为发送信息管理表404进行存储。图4示出发送信息管理表404的示例。应当注意,发送信息存储部403实际上为固定在外部存储器11等中的存储区域,并且假定发送信息管理表404存储于其中。 
源地址确定部405确定要用于网络通信的源地址。如果存储在发送信息存储部403中的发送信息管理表404中没有适用的发送信息,则根据RFC 3484中定义的源地址选择来执行源地址确定。另一方面,如果存储在发送信息存储部403中的发送信息管理表404中有适用的发送信息,则源地址确定部405将过去执行的数据发送中使用了的源地址确定作为此次通信使用的源地址。 
发送数据识别信息存储部406存储用于确定需要使用相同源地址发 送的发送数据的发送数据识别信息表408。图5示出存储在发送数据识别信息存储部406中的发送数据识别信息表408的示例。 
发送部407根据来自客户机应用101的指令将发送数据发送至目的地址。此时,发送部407使用源地址确定部405确定的源地址执行数据发送。发送部407在发送数据的发送中可以使用非连接型协议(non-connection-type protocol)。另外,该非连接型协议可以是UDP协议。 
图4是表示图3中的存储在发送信息存储部403的发送信息管理表404的示例的图。 
在图4中,发送信息管理表404为发送信息管理部402管理的管理表。发送信息管理表404包括控制编号501、应用程序识别信息项502、发送数据识别信息项503、目的地址504以及源地址505。 
各控制编号501为当发送数据信息项以及地址信息项被存储在发送信息存储部403时发送信息管理部402给出的编号。各应用程序识别信息项502为用于识别使用客户机通信控制部102的客户机应用程序的识别信息。各发送数据识别信息项503为用于识别发送数据项的识别信息。各目的地址504为发送数据项发送至的目的地的地址,并由IP地址和端口号的组合构成。各源地址505为发送数据项的发送源的地址,并由IP地址和端口号的组合构成。 
在所示的示例中,“应用程序1”作为应用程序识别信息项502,与作为发送数据识别信息项503的“WS-Eventing[Subscribe]”相关联。另外,作为目的地址504的IP地址[2001:a:b::10]和端口号[80]的组合以及IP地址[fd00:1:2::100]和端口号[80]的组合分别关联于“应用程序1”和“WS-Eventing[Subscribe]”的组合。 
另一方面,“应用程序1”作为应用程序识别信息项502,与作为发送数据识别信息项503的“SNMP[GetRequest]”相关联。另外,作为目的地址504的IP地址[192.168.1.10]和端口号[161]的组合与“应用程序1”和“SNMP[GetRequest]”的组合相关联。 
这里,“应用程序1”为,例如,分配给客户机应用程序101的识别 信息。假定其他客户机应用程序被分配例如“应用程序2”、“应用程序3”……,等等。识别信息的形成不限于此。 
因此,当由“应用程序1”表示的客户机应用程序101将需要从相同的源地址发送并与“WS-Eventing[Subscribe]”相关联的发送数据发送到预定目的地址时,源地址按如下方式设置:如果预定目的地址由IP地址[2001:a:b::10]和端口号[80]的组合构成,则将IP地址[2001:a:b::200]和端口号[1025]设置为源地址505,并使用该源地址执行通信。 
然而,当由“应用程序1”表示的客户机应用程序101将需要从相同的源地址发送并与“WS-Eventing[Subscribe]”相关联的发送数据发送到发送信息管理表404内的目的地址504中不存在的目的地址时,源地址按如下方式设置:如果IP地址[2001::1000]和端口号[80]的组合,例如,在目的地址504中不存在,则根据RFC 3484中定义的源地址选择来设置源地址,并执行通信(正常通信)。然后,包括源地址的发送信息被存储在发送信息存储部403中的发送信息管理表404中。 
另外,在“应用程序1”发送不需要从相同源地址发送的发送数据(没有作为一个发送数据识别信息项503登记的数据)的情况下也是相同,源地址也按与上述相同的方式设置。也就是说,根据RFC 3484中定义的源地址选择来设置源地址,使用该源地址执行通信(正常通信)。在这种情况下,由于不需要从相同源地址发送数据,因此包括源地址的发送信息没有存储在发送信息存储部403中的发送信息管理表404。 
图5是表示图3中的存储在发送数据识别信息存储部406中的发送数据识别信息表408的例子的图。 
在图5中,发送数据识别信息表408为管理表,其存储在发送数据识别信息存储部406中,并且通过将各自用于识别需要从相同源地址发送的发送数据项的发送数据识别信息项、和关联于该发送数据识别信息项的属性信息分组而形成。发送数据识别信息表408包括图4中的发送数据识别信息项503、分别关联于发送数据识别信息项503的发送数据属性1601、发送数据属性2602、发送数据属性3603以及发送数据属性4 604。应当注意,尽管在所示的例子中,设置了四种类型的发送数据属性1-4,但是发送数据属性的类型并不限于此。 
在由“WS-Eventing[Subscribe]”的发送数据识别信息项503指示的组中,作为发送数据的属性值对应地登记下列各值:作为发送数据属性1601的“Subscribe”、作为发送数据属性2602的“Renew”、作为发送数据属性3603的“GetStatus”以及作为发送数据属性4604的“Unsubscribe”。 
如果发送数据项包括WS-Eventing的“Subscribe”消息、“Renew”消息、“GetStatus”消息或者“Unsubscribe”消息,则这意味着发送数据项要作为“需要从相同源地址发送的发送数据”经历发送处理。“需要从相同源地址发送的发送数据”可以关联于基于其他协议(SNMP、SMTP、HTTP等)的命令登记在发送数据识别信息表408中。 
另外,该协议并不限于针对OSI(开放系统互连,Open SystemsInterconnection)参照模型的特定层的协议,只要发送数据项为可以被通信装置解释的数据,在多个层上的协议都可以被登记在发送数据识别信息表408中。 
作为登记需要从相同源地址发送的发送数据的方法,例如,包括一种客户机应用程序101经由客户机通信控制部102将发送数据项登记在发送数据识别信息存储部406的方法。另外,也有一种从服务器PC 105的服务器应用程序108或者服务器通信控制部107经由客户机通信控制部102登记发送数据项的方法,但是登记方法绝不仅限于上述方法。 
图6A及图6B是由客户机PC 100的客户机通信控制部102执行的通信处理的流程图。本处理是响应于来自客户机应用程序101(应用程序1)的用于发送数据的指令而执行的、用于向服务器PC 105发送数据的处理的例子。 
在步骤S701,源地址确定部405为了确定需要从相同源地址发送的发送数据项,从发送数据识别信息存储部406中获取发送数据识别信息表408。以此能够从图5所示的发送数据识别信息表408中获取,例如,发送数据识别信息项503“WS-Eventing[Subscribe]”的属性值,作为能 够用来确定需要从相同源地址发送的发送数据项的信息。“WS-Eventing[Subscribe]”的属性值为发送数据属性1 601“Subscribe”、发送数据属性2 602“Renew”、发送数据属性3 603“GetStatus”、发送数据属性4 604“Unsubscribe”。另外,作为其他发送数据识别信息项503的“SNMP[GetRequest]”的属性值,可以获取发送数据属性1 601“GetRequest”、发送数据属性2 602“GetNextRequest”、以及发送数据属性3 603“SetRequest”。 
接下来,在步骤S702,发送信息管理部402参照步骤S701获取的发送数据识别信息项,并确定是否有发送数据属性与客户机应用程序101指示要被发送的发送数据项中的一个属性对应。步骤S702对应于本发明的属性确定单元的功能。 
如果在步骤S702中确定发送数据项中没有包含所获取的发送数据属性,则源地址确定部405执行步骤S703中的处理。也就是说,源地址确定部405基于客户机应用程序101指定的目的地址,根据RFC 3484中定义的源地址选择来设置默认源地址(步骤S703)。 
接下来,在步骤S704,发送部407使用步骤S703中设置的源地址将发送数据项发送到服务器PC 105,其后结束通信。 
另一方面,如果在步骤S702确定发送数据项中包含有所获取的发送数据属性,则处理进行到步骤S705。在步骤S705,发送信息管理部402从发送数据识别信息表408中,获取关联于包含在发送数据项中的发送数据属性1 601的发送数据识别信息项503。例如,如果发送数据项为WS-Eventing的Subscribe消息,则作为发送数据属性1 601的[Subscribe]为关联属性,因此,发送信息管理部402获取WS-Eventing[Subscribe]作为发送数据识别信息项503。 
接下来,在步骤S706,源地址确定部405参照存储在发送信息存储部403中的发送信息管理表404,并根据客户机应用程序101指定的目的地址,获取关联于步骤S705中获取的发送数据识别信息项503的源地址。 
接下来,在步骤S707,源地址确定部405确定是否可以从发送信息 管理表404中获取关联源地址。结果,如果发送信息管理表404中不存在关联源地址,并且因此源地址确定部405不能获取源地址,则源地址确定部405执行步骤S708的处理。即,作为向新目的地的通信,源地址确定部405根据RFC 3484中定义的源地址选择,基于客户机应用程序101指定的目的地址设置默认源地址(步骤S708)。 
在步骤S709,发送部407使用步骤S708中设置的源地址,将发送数据项发送到服务器PC 105。然后,在步骤S710,发送信息管理部402获取关于发送部407在步骤S709发送的发送数据项的发送信息。 
在步骤S711,发送信息管理部402将在步骤S710中获取的发送信息,存储在存储于发送信息存储部403的发送信息管理表404中,其后通信结束。步骤S711中存储在发送信息管理表404中的发送信息包括步骤S705中获取的发送数据识别信息项503、客户机应用程序101指定的目的地址以及步骤S708中设置的源地址。 
例如,当发送关联于发送数据识别信息项“WS-Eventing[Subscribe]”的数据至目的地址的IP地址[2001::1000]和端口号[80]时,发送信息管理表404中登记下述的新记录组,即“应用程序1”、“WS-Eventing[Subscribe]”、目的地址的IP地址[2001::1000]和端口号[80]、以及步骤S709中用于发送的源地址。这里,“关联于发送数据识别信息‘WS-Eventing[Subscribe]’的数据”具体是指例如包含WS-Eventing的[Subscribe]、[Renew]、[GetStatus]以及[Unsubscribe]的数据。 
如果在步骤S707源地址确定部405从发送信息管理表404中获取关联源地址,则源地址确定部405将步骤S706中获取的地址设置为源地址(步骤S712)。当发送关联于发送数据识别信息“WS-Eventing[Subscribe]”的数据至目的地址的IP地址[2001:a:b::10]以及端口号[80]时,使用相同源地址的IP地址[2001:a:b::200]以及端口号[1025]进行通信。 
在步骤S713,发送部407使用步骤S712中设置的源地址将发送数据发送至服务器PC 105,其后通信结束。 
在步骤S711,如果步骤S707中确定发送信息管理表404不包含关联于所获取的发送数据识别信息和目的地址的源地址,则发送信息管理部402在步骤S711可以仅将步骤S708中设置的源地址,存储在关联于发送信息管理表404中获取的发送数据识别信息和目的地址的组合的源地址505的空域(vacant field)。 
根据上述第一实施例,在服务器PC根据客户机PC的源地址提供服务的通信系统中,即使客户机PC保持有多个源地址,也可以选择合适的源地址。另外,可以减少由于在通信处理中源地址的改变引起的通信错误的发生,进而有效利用网络资源或者PC资源。 
在本实施例中,作为确定源地址的方法的例子,采用了这样一种方法,即在存储于发送信息存储部403的发送信息管理表404中没有可用的发送信息的情况下,根据RFC 3484中定义的源地址选择来确定源地址。然而,源地址的确定方法并不限于此。 
接下来描述本发明的第二实施例。根据本发明的第二实施例的通信装置具有与上述参照图1-3描述的根据第一实施例的通信装置相同的结构,因此与第一实施例中相同的组成部分用相同的附图标记表示,同时省略对其的说明。以下,仅描述与第一实施例的不同点。 
在上述第一实施例中,当发送部407根据客户机应用程序101的指令,第一次将具有发送数据识别信息存储部406中登记的发送数据属性的发送数据项发送到具有不同IP地址和端口号的目的地址时,用于该发送中的源地址被与前述的其他信息项相关联地登记在发送信息管理表404中。 
然而,可以设想有这样的情况,即用于第一次发送的源地址由于通信装置的地址改变等而变得无效。当在存在登记的源地址的状况下产生通信故障时,即使可以进行使用其他源地址的通信,但如果继续使用登记的源地址,则通信也会变得不可能。 
为了防止这种问题,将给出根据本实施例的通信装置的描述,对于该通信装置而言,即使发生这样的通信错误,但如果存在可以通信的源 地址,则其也能够执行通信。 
图7A及图7B为示出作为根据本发明的第二实施例的通信装置的客户机PC 100的客户机通信控制部102所执行的通信处理的流程图。应当注意,图7A及图7B中的步骤S701至S713与图6A及图6B相同,因此使用与其相同的步骤编号,同时省却对其的说明。 
参照图7B,在步骤S713,发送部407使用步骤S712中设置的源地址将发送数据发送到服务器PC 105。此时,发送部407从OS的通信库103获取发送的结果。 
接下来,在步骤S801,发送部407基于步骤S713中获取的发送结果,确定是否发生了通信错误。步骤S801对应于本发明中的通信错误确定单元的功能。作为步骤S801中的确定的结果,如果确定没有发生通信错误,则发送部407结束通信。 
另一方面,如果确定发生了通信错误,则发送部407从发送信息管理表404中删除关联记录(发送数据识别信息项503、目的地址504、以及源地址505)(步骤S802)。然后,处理进行到步骤S708。 
根据上述处理,当客户机应用程序101将发送数据项重新发送或者新发送至关联于相同发送数据识别信息项的相同目的地址时,如果至少存在一个可以通信的源地址,则即使在通信故障发生时也能够继续通信。 
另外,如果由于例如通信故障或者客户机PC 100的地址改变,关联于相同发送数据识别信息和目的地址的源地址改变,则可以执行下述的处理:通信控制部401可以向客户机应用程序101通知源地址已经在通信会话期间改变,进而向用户或者通信系统通知源地址的改变。 
在上述实施例中,描述了这样的结构,即根据步骤S801中的通信错误发生的确定,从发送信息管理表404删除用于设置通信会话的相应的信息项。然而,除了通信错误发生的确定外,当从客户机应用程序101接收用于开始或者结束通信会话的请求的客户机通信控制部102接收到结束请求时,可以从发送信息管理表404中删除用于设置通信会话的相应信息项。另外,在使用发送信息管理表404中的信息项设置的、并且 其间由发送部407发送数据项的通信会话结束后,经过预定时间时,可以从发送信息管理表404中删除相应信息项。另外,当发送部407执行的失败通信尝试的次数超过预定次数时,可以删除用于设置通信会话的信息项。上述对应信息项的删除,具体是指从发送信息管理表404中删除对应的记录(发送数据识别信息项503、目的地址504、以及源地址505)。 
根据上述第二实施例,可以获得与第一实施例提供的效果相同的效果。另外,根据向设置的源地址发送数据的数据发送中通信错误的发生,从发送信息管理表404中删除对应记录。因此,可以减少由于通信错误引起的网络资源浪费,并提供高度可靠和有效的通信装置。 
尽管在第一和第二实施例中描述的源地址的选择可以通过配置RFC3484中定义的客户机策略表(policy table)的方法,或者配置路由表(routing table)的方法执行,但方法不限于特定的方法。 
另外,在上述第一和第二实施例中,给出了选择作为位于OSI参照模型的第三层即网络层的IP地址参照的源地址的例子的说明。本发明也可以类似地应用于在源地址信息包含在OSI参照模型的高于第三层的层的情况下的源地址选择上。 
另外,尽管上述第一和第二实施例中,给出了本发明应用于单一装置的情况的描述,但是,本发明也可以应用于包括多个设备和装置的系统。另外,可以理解只要实现本发明的上述功能,客户机PC 100以及服务器PC 105上的程序的操作可以使用打印机或者MFP(多功能外设)中提供的CPU、RAM以及ROM执行。 
可以理解本发明的本实施例也可以通过使个人计算机(CPU、处理器)执行经由网络或各种存储介质获取到的软件(程序)来实现。 
本发明的各方面还可以通过读出并执行记录在存储装置上的用于执行上述实施例的功能的程序的系统或装置的计算机(或诸如CPU或MPU的设备)、以及由系统或装置的计算机例如读出并执行记录在存储设备上的用于执行上述实施例的功能的程序来执行各步骤的方法来实现。鉴于此,例如经由网络或者从用作存储设备的各种类型的记录介质(例如计 算机可读介质)向计算机提供程序。 
虽然参照示例性实施例对本发明进行了说明,但是应当理解,本发明不限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以使其涵盖所有变型、等同结构及功能。 
本申请要求2009年6月29日提交的日本专利申请2009-153931号公报的优先权,并在此通过引用并入其全部内容。 

Claims (6)

1.一种通信装置,其被分配用于网络通信的多个源地址,该通信装置包括:
发送单元,其适于发送数据;
管理单元,其适于管理发送信息,所述发送信息包括用于识别所述发送单元要发送的数据的类型的数据识别信息、所述要发送的数据的目的地址、以及所述要发送的数据的源地址;
确定单元,其适于进行操作,以在所述发送单元要发送的数据为特定类型时,参照所述管理单元管理的所述发送信息,并从分配给所述通信装置的所述多个源地址中,确定过去被用来将数据发送至所述要发送的数据的目的地址的源地址作为该数据的源地址;以及
控制单元,其适于控制所述发送单元,使得所述发送单元使用由所述确定单元确定的所述源地址发送所述数据,
其中,所述特定类型的所述数据为需要使用相同源地址发送的数据,所述通信装置还包括:
存储单元,其适于将所述数据识别信息和该数据的属性信息相互关联地存储;以及
属性确定单元,其适于参照所述存储单元中存储的、包括所述数据识别信息和所述属性信息的信息,并确定所述发送单元要发送的所述数据是否包含所述属性信息,并且
其中,在所述属性确定单元确定所述要发送的数据不包含所述属性信息的情况下,所述确定单元将预定源地址确定为所述数据的所述源地址。
2.根据权利要求1所述的通信装置,其中,在所述发送单元发送数据后,所述管理单元从所发送的数据中获取包括数据识别信息、目的地址、以及源地址的发送信息,并管理所获取的发送信息。
3.根据权利要求1所述的通信装置,其中,在所述属性确定单元确定所述要发送的数据包含所述属性信息的情况下,所述确定单元根据与所述属性信息关联的所述数据识别信息和所述要发送的数据的目的地址,从所述管理单元管理的所述发送信息中确定所述相同源地址。
4.根据权利要求1所述的通信装置,该通信装置还包括:
通信错误确定单元,其适于确定关于所述发送单元发送的数据是否发生了通信错误,并且
其中,在所述通信错误确定单元确定发生了通信错误的情况下,所述管理单元从所述管理单元管理的所述发送信息中删除所述数据的发送信息。
5.根据权利要求1所述的通信装置,其中,
当发送数据后经过预定时间段时,或者当失败的发送尝试次数超过预定次数时,或者当请求删除所述数据的发送信息时,所述管理单元从所述管理单元管理的所述发送信息中删除所述数据的发送信息。
6.一种通信装置的控制方法,所述通信装置被分配用于网络通信的多个源地址,该控制方法包括以下步骤:
发送数据;
管理发送信息,所述发送信息包括用于识别要发送的数据的类型的数据识别信息、所述要发送的数据的目的地址、以及所述要发送的数据的源地址;
在所述发送要发送的数据为特定类型时,参照所管理的发送信息,并从分配给所述通信装置的所述多个源地址中,确定过去被用来将数据发送至所述要发送的数据的目的地址的源地址作为该数据的源地址;以及
控制所述发送,使得所述发送使用所确定的源地址发送所述数据,
其中,所述特定类型的所述数据为需要使用相同源地址发送的数据,所述控制方法还包括以下步骤:
将所述数据识别信息和该数据的属性信息相互关联地存储;以及
参照所存储的、包括所述数据识别信息和所述属性信息的信息,并确定所述要发送的数据是否包含所述属性信息,并且
其中,在确定所述要发送的数据不包含所述属性信息的情况下,将预定源地址确定为所述数据的所述源地址。
CN201010215096.5A 2009-06-29 2010-06-29 通信装置及其控制方法 Expired - Fee Related CN101938527B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-153931 2009-06-29
JP2009153931A JP5279633B2 (ja) 2009-06-29 2009-06-29 通信装置及びその制御方法、並びにプログラム

Publications (2)

Publication Number Publication Date
CN101938527A CN101938527A (zh) 2011-01-05
CN101938527B true CN101938527B (zh) 2013-08-14

Family

ID=43381971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010215096.5A Expired - Fee Related CN101938527B (zh) 2009-06-29 2010-06-29 通信装置及其控制方法

Country Status (3)

Country Link
US (1) US20100332681A1 (zh)
JP (1) JP5279633B2 (zh)
CN (1) CN101938527B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018007074A (ja) * 2016-07-04 2018-01-11 キヤノン株式会社 通信装置、制御方法、及びプログラム
US11038834B2 (en) 2018-01-31 2021-06-15 Hewlett Packard Enterprise Development Lp Selecting an external link of a plurality of external links
CN109756708B (zh) * 2018-12-28 2021-05-14 深圳英飞拓智能技术有限公司 音视频数据的续传方法及装置
JP7215381B2 (ja) * 2019-09-20 2023-01-31 トヨタ自動車株式会社 制御装置及び通信方法
CN114785828B (zh) * 2022-04-22 2023-05-02 珠海格力电器股份有限公司 数据通信方法、专用设备、电器装置和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477501A (zh) * 2002-07-12 2004-02-25 ������������ʽ���� 信息处理装置、信息处理方法和存储了程序的介质
CN101207629A (zh) * 2006-12-18 2008-06-25 佳能株式会社 通信设备及其控制方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7085267B2 (en) * 2001-04-27 2006-08-01 International Business Machines Corporation Methods, systems and computer program products for translating internet protocol (IP) addresses located in a payload of a packet
US6909713B2 (en) * 2001-09-05 2005-06-21 Intel Corporation Hash-based data frame distribution for web switches
JP4186733B2 (ja) * 2003-07-28 2008-11-26 株式会社日立製作所 通信システム、端末及びアドレス生成方法
JP2006086800A (ja) * 2004-09-16 2006-03-30 Fujitsu Ltd ソースアドレスを選択する通信装置
US8045589B2 (en) * 2007-04-26 2011-10-25 Kyocera Corporation Radio communication system with data structure change
JP4610599B2 (ja) * 2007-10-26 2011-01-12 株式会社エヌ・ティ・ティ・ドコモ ルータ装置および通信方法
JP2009111437A (ja) * 2007-10-26 2009-05-21 Hitachi Ltd ネットワークシステム
JP4780093B2 (ja) * 2007-11-27 2011-09-28 コニカミノルタビジネステクノロジーズ株式会社 データ通信システム、アドレス管理装置、データ通信装置、アドレス管理方法およびアドレス管理プログラム
US8447846B2 (en) * 2010-08-06 2013-05-21 International Business Machines Corporation Using unique local unicast addresses in a global domain name server by providing a centralized registry

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477501A (zh) * 2002-07-12 2004-02-25 ������������ʽ���� 信息处理装置、信息处理方法和存储了程序的介质
CN101207629A (zh) * 2006-12-18 2008-06-25 佳能株式会社 通信设备及其控制方法

Also Published As

Publication number Publication date
CN101938527A (zh) 2011-01-05
JP5279633B2 (ja) 2013-09-04
US20100332681A1 (en) 2010-12-30
JP2011010206A (ja) 2011-01-13

Similar Documents

Publication Publication Date Title
JP3935276B2 (ja) ネットワークデバイス管理方法、装置、記憶媒体、及び送出装置
US6631407B1 (en) Device management network system, management server, and computer readable medium
JP4806273B2 (ja) ネットワーク設定とネットワーク資源の少なくとも一方を発見する方法及び記録媒体
US6643694B1 (en) System and method for integrating a proxy server, an e-mail server, and a DHCP server, with a graphic interface
US8230049B2 (en) Information processing apparatus, information processing apparatus control method, and storage medium storing computer program
JP2002259100A (ja) 印刷システム
US20090193133A1 (en) Network device management apparatus, control method therefor, network system, and storage medium
US20080304101A1 (en) Server and printer introducing method under thin client environment
JP6205878B2 (ja) データ処理装置、システムおよびプログラム
CN101938527B (zh) 通信装置及其控制方法
US10972564B2 (en) System and method for automating actions in distributed computing
JP2010521761A (ja) リモートコンピュータリソースの動的割当に対する管理層方法及び装置
EP0919912B1 (en) Multiserver workflow system
JP2000347976A (ja) 機器管理システム、管理サーバ及びコンピュータ読取可能な記録媒体
JP2000181849A (ja) ネットワ―ク上の周辺機器用サ―バ発見方法
JP2001175562A (ja) 電子装置間における構成設定のコピー方法
WO2014148483A1 (ja) Dnsサーバ装置、ネットワーク機器、通信システム、および通信方法
US8233171B2 (en) Device managing apparatus, method of controlling the same, and control program
US20110179189A1 (en) Communication apparatus, method of controlling the same, program, and storage medium
JP2009278178A (ja) セキュリティパラメータ配布装置及びセキュリティパラメータ配布方法
JP2001255974A (ja) 情報処理装置及び方法
US10992782B2 (en) Method for performing a server-specified program start-up via a client
JP4165340B2 (ja) 情報処理装置
JP2005169998A (ja) 情報処理装置、及びこれを用いた情報処理システム、並びに情報処理プログラム
JP2006135507A5 (zh)

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

Granted publication date: 20130814

Termination date: 20200629

CF01 Termination of patent right due to non-payment of annual fee