具有一个或多个通信控制程序的通信装置和方法 技术领域 本公开总地涉及通信装置、 通信方法以及程序, 特别涉及具有节能模式的通信装 置、 通信方法和程序。
背景技术 各种类型的电子设备被设计使得当在持续的期间内没有给出输入操作时进入被 称为最小功率状态、 节能状态、 功率节省状态等 ( 下文中统称为 “功率节省状态” ) 而降低 功率消耗。 这样的电子设备响应于操作指令的输入而退出功率节省状态进入通常操作状态 ( 下文中称为 “通常功率 (normal power) 状态” )。
具有通信功能的电子设备 ( 下文中称为 “通信装置” ) 可以被设计以响应于接收的 数据包。数据包接收的频率通常高于用户输入操作指令的频率。如果在功率节省状态中, 每次接收数据包时, 执行恢复到通常功率状态, 则很难有效地降低功率消耗。 考虑到这个方 面, 可以将通信设备硬件划分为主系统和子系统, 由此延长功率节省状态的持续期间。
主系统硬件可以包括控制装置功能的主 CPU。子系统硬件可以包括控制处于功率 节省状态的通信的子 CPU。子系统的功率消耗显著低于主系统的功率消耗。当通信装置进 入功率节省状态时, 中止或减小对主系统的供电, 并且子系统处理接收的数据包。 通过这样 的配置, 可以延长主系统的不操作状态 ( 即, 功率节省状态 ) 的持续期间。
通常, 子系统执行的任务 ( 即, 主系统的责任 ) 局限于简单的常规任务, 例如对 ARP( 地址解析协议 ) 请求的响应、 对 PING 的响应等。 由此, 根据用户如何使用通信装置, 可 能存在不能有效地实现功率消耗的情况。
详细地, 例如通信装置可以是对其自由增加应用和通信控制模块的图像形成装 置。当新安装应用或通信控制模块时, 由于该安装可能增加装置返回至通常功率状态的频 率。即, 安装的应用或通信控制模块执行可能增加子系统负责区域之外的数据包的接收频 率的通信。结果, 主系统更频繁地退出功率节省状态。此外, 由于增加的应用或通信控制模 块, 可能存在恢复的额外条件和用于重复恢复的处理。
根据用户如何使用通信装置, 安装的应用等可能不同, 尤其由此很难预先预测。 这 使得传统的固定子系统很难应对。
由此, 优选地提供一种通信装置、 通信方法和程序, 其能够恰当地维持功率节省状 态。
发明内容
至少一个实施例的总的目的是提供实质上消除由现有技术的限制和缺点引起的 一个或多个问题的通信装置和通信方法。
在一个实施例中, 通信装置具有用于控制通信的一个或多个通信控制程序, 其特 征在于, 所述通信装置包括 : 自动响应单元, 用于代表所述一个或多个通信控制程序在功率 节省状态对接收的数据做出响应 ; 以及设置单元, 用于从所述一个或多个通信控制程序收集自动响应信息并且在自动响应单元中设置自动响应信息, 所述自动响应信息包括关于自 动响应单元做出响应的接收的数据的条件, 并且自动响应信息还包括要被包括在响应中的 响应数据, 其中当检测到自动响应信息中包括的条件与功率节省状态中接收的数据相匹配 时, 自动响应单元发送自动响应信息中包括的响应数据, 并且当检测到所述条件与功率节 省状态中接收的所述数据不匹配时, 使得所述通信装置退出功率节省状态。
在一个实施例中, 通信方法在具有用于控制通信的一个或多个通信控制程序的通 信装置中使用, 其特征在于, 所述通信方法包括 : 自动响应步骤, 使用自动响应单元代表所 述一个或多个通信控制程序在功率节省状态对接收的数据做出响应 ; 设置步骤, 使用设置 单元从所述一个或多个通信控制程序收集自动响应信息并且在自动响应单元中设置自动 响应信息, 所述自动响应信息包括关于自动响应单元做出响应的接收的数据的条件, 并且 自动响应信息还包括要被包括在响应中的响应数据 ; 以及恢复控制步骤, 基于在功率节省 状态下接收的数据和自动响应信息之间的比较使得通信装置退出功率节省状态, 其中当检 测到自动响应信息中包括的条件与功率节省状态中接收的数据相匹配时, 自动响应步骤发 送自动响应信息中包括的响应数据, 并且当检测到所述条件与功率节省状态中接收的所述 数据不匹配时, 使得所述通信装置退出功率节省状态。
在一个实施例中, 一种计算机可读记录介质中记录有程序, 使得具有用于控制通 信的一个或多个通信控制程序的通信装置作用为 : 自动响应单元, 用于代表所述一个或多 个通信控制程序在功率节省状态对接收的数据做出响应 ; 以及设置单元, 用于从所述一个 或多个通信控制程序收集自动响应信息并且在自动响应单元中设置自动响应信息, 所述自 动响应信息包括关于自动响应单元做出响应的接收的数据的条件, 并且自动响应信息还包 括要被包括在响应中的响应数据, 其中当检测到自动响应信息中包括的条件与功率节省状 态中接收的数据相匹配时, 自动响应单元发送自动响应信息中包括的响应数据, 并且当检 测到所述条件与功率节省状态中接收的所述数据不匹配时, 使得所述通信装置退出功率节 省状态。
根据至少一个实施例, 正确地保持功率节省状态并且恰当地进行从功率节省状态 的恢复。 附图说明 当结合附图读取具体实施方式时, 本发明的其他目的、 特征和优点将变得更加明 显, 其中 :
图 1 是表示根据本实施例的图像形成装置的硬件配置的例子的图表 ;
图 2 是根据本实施例的图像形成装置的软件模块配置的例子的图表 ;
图 3 是说明收集来自通信控制模块的自动响应信息的处理的时序图 ;
图 4 是表示自动响应信息的配置的例子的图表 ;
图 5 是表示数据过滤器的配置的例子的图表 ;
图 6 是表示子系统设置模块和收集到的自动响应信息之间的关系的图表 ;
图 7 是说明在图像形成装置中执行转换到功率节省状态的操作过程的时序图 ;
图 8 是表示代理通信控制信息的配置的例子的图表 ;
图 9 是说明准备转换到子系统设置模块执行的功率节省状态的操作处理的图表 ;
图 10 是表示应用、 通信控制模块和自动响应信息之间的关系的图表 ; 图 11 是表示应用实例、 通信控制模块实例以及自动响应信息实例之间的关系的图表 ; 图 12 是说明子系统执行的过滤接收的数据包的过程的图表 ;
图 13 是说明检查自动响应的可用性并且使得自动响应如同由子系统执行的过程 的图表。
具体实施方式
下面, 参考附图描述本发明的实施例。将使用图像形成装置作为通信装置的例子 来描述这些实施例。图 1 是表示根据本实施例的图像形成装置的硬件结构的例子的图表。 在图 1 中, 图像形成装置 10 包括控制器板 11 和引擎 13。控制器板 11 和引擎 13 通过引擎 接口 14 连接。
主 CPU 111 和子 CPU 121 布置在控制器板 11 上。主 CPU 111 是用于主系统 M 的 CPU。子 CPU 121 是用于子系统 S 的 CPU。主 CPU 111 和子 CPU 121 通过总线彼此连接。在 图 1 中, 箭头表示一个或多个总线。 主系统 M 由控制通常功率状态的图像形成装置的硬件组组成。子系统 S 由控制处 于功率节省状态的图像形成装置 10 的硬件组组成。功率节省状态指的是当在持续周期中 没有给出操作输入时为了降低功率消耗, 仅向子系统 S 提供功率或者降低向主系统 M 或引 擎 13 提供的功率的状态。功率节省状态也通常指的是功率节省模式、 节能模式、 最小功率 状态等。通常功率状态指的是除了功率节省状态之外的状态。即, 通常功率状态指的是不 限制对主系统 M、 子系统 S 和引擎 13 的供电的状态。
在主系统 M 中, 主 CPU 111 通过一个或多个总线连接至 ROM 112、 RAM113、 ASIC( 专 用集成电路 )114、 PHY 芯片 115 以及 PHY 芯片 116。主 CPU111 基于存储在 ROM 112 中并载 入到 RAM 113 中的程序来控制图像形成装置 10 的整体功能。 ASIC 114 主要执行图形处理。 ASIC 114 通过一个或多个总线连接至 HDD( 硬盘驱动器 )117 和引擎接口 14。PHY 芯片 115 将来自主 CPU111 的逻辑信号转换为电子信号用于提供至引擎接口 14。PHY 芯片 116 将来 自主 CPU 111 的逻辑信号转换为电子信号用于提供给集线器 118。集线器 118 通过一个或 多个总线连接至 USB 接口 119 以及引擎接口 14。USB 接口 119 是用于支持 USB 连接的硬件 接口。
在子系统 S 中, 子 CPU 121 通过一个或多个总线连接至 ROM 122、 RAM123、 PHY 124 以及 USB 接口 125。子 CPU 121 基于存储在 ROM122 以及载入到 RAM 123 中的程序控制处 于功率节省模式的图像形成装置 10 的操作 ( 即, 主要的通信处理 )。PHY 芯片 124 将来自 子 CPU 121 的逻辑信号转换为电子信号提供给网络接口 126。网络接口 126 是用于与例如 LAN( 局域网 ) 的网络连接的硬件, 并且提供在网络通信中的物理层功能。
引擎 13 包括操作面板 131、 扫描仪 132、 打印机 133 和 FCU( 传真控制单元 )134。 操作面板 131 包括例如液晶显示面板的显示手段和例如硬件按键的输入手段。扫描仪 132 扫描文档, 并且通过引擎接口 14 向 ASIC 114 提供扫描后的图像数据。在通过引擎接口 14 从 ASIC 114 提供图像数据时, 打印机 133 在纸张上打印图像数据。FCU 134 执行传真传输 和接收。
图 2 是表示根据本实施例的图像形成装置的硬件模块的示例的图表。
在图 2 中, 主系统 M 包括应用 1101、 通信控制模块 1102、 子系统设置模块 1103、 状 态管理模块 1104、 数据包监视模块 1105 以及子系统接口模块 1106。 每个程序模块包括被存 储在 ROM 112 中并且被载入到 RAM 113 中。被载入到 RAM 113 的每个程序模块包括主 CPU 111 执行以实现程序模块的功能的处理步骤。
通信控制模块 1102 是用于向应用 1101 提供网络通信控制功能的程序。对于每个 协议 ( 即, 应用层的协议 ) 单独提供通信控制模块 1102。例如, 存在与 SNMP( 简单网络管理 协议 )、 Bonjour 协议以及 WSD( 设备网络服务 ) 协议一对一对应的通信控制模块 1102, 用 于执行与各个通信协议对应的处理。可以在图像形成装置 10 中自由安装 ( 即, 加入 ) 或卸 载 ( 即, 移除 ) 通信控制模块 1102。
子系统设置模块 1103 从每个通信控制模块 1102 收集自动响应信息 1110, 并且通 过子系统接口模块 1106 对子系统 S 设置包括收集的自动响应信息 1110 的代理通信控制信 息 1210。自动响应信息 1110 包括用于识别接收的数据 ( 即, 接收的数据包 ) 的条件, 子系 统 S 代表处于功率节省状态的通信控制模块 1102 对该接收的数据做出响应, 自动响应信息 1110 还包括子系统 S 做出的响应中要包括的数据 ( 即, 响应数据 )。在本实施例中, 处于功 率节省状态下的子系统 S 做出的代理响应也被称为 “自动响应” 。从给定的通信控制模块 1102 收集的自动响应信息 1110 具有对于给定的通信控制模块 1102 所特定的值。 当仅响应 于特定接收的数据 ( 即, 接收的数据包 ) 恢复主系统 M 时, 自动响应信息 1110 也可以包括 关于这样的特定的接收数据的信息。当接收的数据 ( 即, 接收的数据包 ) 被指向一些多点 播送地址时, 可以恢复主系统。在这种情况下, 自动响应信息 1110 可以包括多点播送地址 的列表。如果任意数据包既不是经过自动响应也不是子系统 M 的恢复原因, 那么丢弃该数 据包。
为了控制自动响应并且检查恢复主系统 M 的必要性, 子系统 S 使用代理通信控制 信息 1210。
状态管理模块 1104 检查是否进入功率节省状态, 并且控制向功率节省状态的转 换。数据包监视模块 1105 监视图像形成装置 10 从网络接收的数据 ( 即, 数据包 )。数据 包监视模块 1105 对于在自动响应信息 1110 中对自动响应信息 1110 的每一项分别指定的 条件相匹配的数据的数据接收的数目进行计数。子系统接口模块 1106 提供用于与子系统 S 通信的接口。
在图 2 中, 沿着连接程序模块的线描绘的数字等指示由这些线连接的模块之间的 相重性 (multiplicity) 程度。根据这个符号, 0 到多个通信控制模块 1102 可以在子系统 M 中。此外, 根据该符号, 一个通信控制模块 1102 具有自动响应信息 1110 的 0 到多个项目。 此外, 一个通信控制模块 1102 可以由通过使用相同的通信协议执行通信的多个应用 1101 使用。
子系统 S 包括主系统通信模块 1201、 自动响应条件检查模块 1202 以及自动响应模 块 1203。每个程序模块存储在 ROM 122 中并被载入到 RAM 123。被载入到 RAM 123 的每个 程序模块包括由子 CPU 121 执行以实现程序模块的功能的处理步骤。
自动响应条件检查模块 1202 从主系统 M 接收信息, 并且向主系统 M 发送请求。从 主系统 M 接收的信息的一个例子是代理通信控制信息 1210。 发送给主系统 M 的请求的一个例子是恢复主系统 M 的请求。
自动响应条件检查模块 1202 基于主系统 M 设置的代理通信控制信息 1210 中包 括的自动响应信息 1110, 确定是否自动地响应于接收的数据包或者使得主系统响应。如果 接收的数据包没有落入任一种类内, 可以丢弃这样的数据包。如果自动响应条件检查模块 1202 选择的了自动相应, 自动响应模块 1203 基于自动响应信息 1110 自动地对接收的数据 包做出响应。
在下文中将描述图像形成装置 10 执行的操作过程。图 3 是描述从通信控制模块 收集自动响应信息的处理的时序图。
在步骤 S101 中, 主系统设置模块 1103 收集 ( 即, 登记 ) 在通信控制模块 1102 中 保持的自动响应信息。子系统设置模块 1103 以将收集的信息与从中收集信息的通信控制 模块 1102 相关联的方式, 将收集的信息存储在 RAM 113 中。
图 4 是表示自动响应信息的结构的示例的图表。在图 4 中, 自动响应信息 1110 包 括过滤信息、 响应数据信息、 数据包监视时间等。 过滤信息指定了进行自动响应的条件。 即, 对于与过滤信息中指定的条件相匹配的接收的数据包进行自动响应。在图 4 中, 过滤信息 包括协议、 源端口号、 目的端口号、 数据过滤器阵列等。协议指定通信协议。例如, 协议可以 指示 “ether/ip/udp/snmp” 、 “ether/ip/udp/bonjour” 或 “ether/ip/udp/wsd” 。这个例子 使用符号 “< 数据 - 链路 - 层协议名 >/< 网络 - 层协议名 >/< 传输 - 层协议名 >/< 应用 - 层 协议名 >” 。通信协议通常指定拥有自动响应信息 1110 的通信控制模块 1102 的通信协议。 源端口号和目的端口号指示识别源端口和目的端口的号码。 数据过滤器阵列是数据过滤器 的阵列。 图 5 是表示数据过滤器的结构的例子的图表。数据过滤器包括例如偏移量、 关键 字和关键字长度的项目。偏移量指示从数据包数据部分的开始计数的偏移量值, 在 UDP( 用 户数据报协议 ) 的情况下, 数据包的数据开始部分可以是 UDP 头之后的部分。关键字是要 被匹配的字符串。关键字长度是关键字的长度。
接收的数据包可以包括在数据过滤器的偏移量指定的位置由数据过滤器的关键 字和关键字长度指定的字符串。 在这种情况下, 确定接收的数据报与该数据过滤器匹配。 自 动响应信息 1110 可以包括数据过滤器的阵列, 使得可以在自动响应信息 1110 中设置多个 数据过滤器。以这种方式, 可以配置数据过滤器使得要被比较的数据结构并不重要。无论 在 UDP 的上层使用什么协议, 例如, 可以使用数据过滤器执行匹配。在本实施例中, 传输层 通信协议为 UDP 的接收的数据包经过自动相应。因为建立连接的过程和确保可靠性的过程 是复杂的, 所以 TCP 不适于自动响应。然而, 这并不意味着本发明仅限于使用 UDP。这仅意 味着例如 UDP 的无连接类型的协议适于自动响应。
再次参考图 4, 响应数据信息指示响应于与过滤信息相匹配的接收的数据包而要 被返回的响应的内容。在图 4 中, 响应数据信息包括例如数据标识符、 响应数据大小和响应 数据的项目。 响应数据标识符是指示预先确定的响应数据的标识符 (ID)。 预先确定的响应 数据指的是预先在子系统 S 的 ROM 122 中存储的数据。当在响应数据信息中指定响应数据 标识符时, 返回与响应数据标识符对应的数据作为对接收的数据包的响应。在响应时间标 识符和一组响应数据大小和响应数据之间存在排他的关系。 仅可以指定或使用响应数据标 识符和该组响应数据大小和响应数据中的一个。响应数据大小指示响应数据的大小。响应
数据是要被发送作为对接收的数据包的响应的实际数据内容。 使用允许要在响应数据信息 中指定响应数据大小和响应数据的布置, 通信控制模块 1102 在自动相应的时候可以自由 指定响应数据。
下面将描述数据包监视时间。
例如, 当图像形成装置 10 上电时, 或者当在通常功率状态下安装新的通信控制模 块 1102 时, 执行步骤 S101。在图像形成装置 10 上电时, 子系统设置模块 1103 从图像形成 装置 10 中安装的每个通信控制模块 1102 收集具有特定值的自动响应信息 1110。 当安装了 新的通信控制模块 1102 时, 该通信控制模块 1102 的自动响应信息 1110 被额外地登记在子 系统设置模块中。主系统 M 的 RAM 113 存储从已经被安装的各个通信控制模块 1102 收集 自动响应信息条目 1110 的列表。由此, 子系统设置模块 1103 和自动响应信息 1110 具有如 图 6 所示的关系。
图 6 是表示子系统设置模块和自动响应信息之间的关系的图表。图 6 说明自动响 应信息 1110 包括 7 个自动响应信息条目 1110-1 到 1110-7 的例子。应该注意到可以从单 个通信控制模块 1102 收集多个自动响应信息条目 1110。 自动响应信息 1110 的收集可以由 子系统设置模块 1103 通过从通信控制模块 1102 取得自动响应信息 1110 来执行, 或者由通 信控制模块 1102 将自动响应信息 1110 发送至子系统设置模块 1103 来执行。
响应于图像形成装置 10 或通信控制模块 1102 的设置的改变, 可以更新子系统设 置模块 1103 中收集 ( 登记 ) 的自动响应信息 1110。例如, 用户可以使用操作面板 131 等来 编辑给定的通信控制模块 1102 的自动响应信息 1110。在这种情况下, 通信控制模块 1102 将编辑后的自动响应信息 1110 发送给子系统设置模块 1103(S102)。子系统设置模块 1103 使用新提供的自动响应信息 1110 来更新 ( 替换 ) 与该通信控制模块 1102 相关联的自动响 应信息 1110。
当自动响应不再必要时, 移除在子系统设置模块 1103 中收集 ( 登记 ) 自动响应信 息 1110。 例如, 给定的通信控制模块 1102 可以自动地或者响应于用户设置来检测该自动响 应不再必要。在这种情况下, 自动控制模块 1102 请求子系统设置模块 1103 移除自动响应 信息 1110(S103)。子系统设置模块 1103 从 RAM 113 中移除与该通信控制模块 1102 相关联 的自动响应信息 1110。当卸载了给定的通信控制模块 1102 时还执行步骤 S103。
在下文中, 将给出执行到功率节省状态的转换的过程的描述。图 7 是说明在图像 形成装置中执行到功率节省状态的转换的操作过程的时序图。
状态管理模块 1104 可以检测在预定的时间周期中没有键入操作输入, 并且响应 于这样的检测, 决定执行到功率节省状态的转换。 如果已经做出了这样的决定, 状态管理模 块 1104 联系每个通信控制模块 1102 和其他模块来查询是否正确地转换到功率节省状态 (S201、 S203、 S205、 S207)。这些其他的模块是图 2 中没有示出的各种类型的程序模块。当 从任一个联系的程序模块中接收到指示转换不正确的响应时, 状态管理模块 1104 中止到 功率节省状态的转换。 当程序模块具有正在进行的通信或具有还没有被完成的一系列处理 时, 提供指示转换的不正确的响应。
当从所有联系的程序模块接收到指示充分转换的响应 ( 即转换 OK) 时 (S202、 S204、 S206、 S208), 状态管理模块 1104 通知子系统设置模块 1103 将执行到功率节省状态的 转换 (S209)。响应于该通知, 子系统设置模块 1103 通过子系统接口模块 1106 联系子系统S 以询问在子系统 S 中可设置的信息量 ( 即, 数据大小 )(S210、 S211)。响应于该询问, 子系 统 S 的主系统通信模块 1201 基于 RAM 123 的可用的存储容量来计算可接受的信息量, 然后 返回该计算得到的量 (S212、 S213)。
然后子系统设置模块 1103 检查是否任意网络通信都在进行中 (S214)。该检查是 关于是否执行到功率节省状态的转换的最终检查。
当没有网络通信正在进行中, 子系统设置模块 1103 生成代理通信控制信息 1210, 该代理通信控制信息包括通过图 3 所示的处理从每个通信控制模块 1103 收集并存储在 RAM 113 中的自动响应信息 1110(S215)。
图 8 是表示代理通信控制信息的结构的示例的图表。在图 8 中, 代理通信控制信 息 1210 包括 MAC 地址、 IP 地址、 端口号的列表以及自动响应信息条目的列表。
MAC 地址和 IP 地址是图像形成装置 10 的 MAC 地址和 IP 地址的当前值。端口号的 列表指定在主系统 M 中对于接收目的的当前可用的端口 ( 例如 TCP 或 UDP 端口 )。自动响 应信息条目的列表指定通过图 3 的处理从各个通信控制模块 1102 收集的自动响应信息条 目 1110( 见图 4)。
子系统设置模块 1103 通过子系统接口模块 1106 对子系统 S 转换 ( 即设置 ) 生成 的代理通信控制信息 1210( 步骤 S221、 S222)。子系统 S 的主系统通信模块 1201 在子系统 S 的 RAM 123 中存储接收的代理通信控制信息 1210。 此后, 子系统设置模块 1103 通知状态管理模块 1104 已经完成了转换到功率节省 状态的准备 (S223)。响应于该通知, 状态管理模块 1104 通过子系统接口模块 1106 通知子 系统 S 应该执行到功率节省状态的转换。当在主系统通信模块 1201 接收到该通知时, 子系 统 S 进入与功率节省状态相应地的操作状态。详细地, 自动响应条件检查模块 1202 和自动 响应模块 1203 的功能被启用。功能的启用可以改变指示这些功能的启用或禁止状态的标 记变量的值, 或者可以随着处理或线程激活自动响应条件检查模块 1202 和自动响应模块 1203。
此后, 图像形成装置 10 进入功率节省状态, 使得主系统 M 的功率被暂停或减小。
如果在步骤 S214 中确定网络通信正在进行中, 那么子系统设置模块 1103 通知状 态管理模块 1104 不执行到功率节省状态的转换 (S231)。 响应于该通知, 状态管理模块 1104 中止到功率节省状态的转换。
在下文中将给出由子系统设置模块 1103 执行的准备到功率节省状态的转换的处 理细节 (S210 到 S221) 的描述。图 9 是说明由子系统设置模块执行的准备转换到功率节省 状态的操作过程。在图 9 中, 相同的数字指示与图 7 中相同的步骤, 在此不再描述。
在图 9 中, 步骤 S216 和 S217 是额外提供的。在生成代理通信控制信息 1210 之后 (S215), 子系统设置模块 1103 比较 (S216) 生成的代理通信控制信息 1210 的数据大小和在 步骤 S210 到 S213 中已经获取的子系统 S 中可设置的数据的大小。如果代理通信控制信息 1210 的数据大小更大, 子系统设置模块 1103 选择要被包括到自动响应信息条目的列表中 的自动响应信息 1110, 使得代理通信控制信息 1210 变得小于在子系统 S 中可设置的数据大 小 (S217)。即, 在通信控制信息 1210 中不是包括所有收集的自动响应信息条目 1110, 而是 具有相对较高的优先级的部分自动响应信息条目 1110 被选择并包括在代理通信控制信息 1210 中。如图 6 所示可以收集七个自动响应信息条目 1110。在这样的情况下, 在子系统 S
中可设置的限制内选择这七个条目中具有相对较高优先级的那些条目。结果, 在步骤 S221 中, 在子系统 S 中设置仅包括选定部分的自动响应信息 1110 的代理通信控制信息 1210。
用于选择自动响应信息 1110 的优先级可以是由处于通常功率状态的数据包监视 模块 1105 计数的接收的数据包的数目。详细地, 在步骤 S101、 S102 或 S103 之后, 子系统 设置模块 1103 指示数据包监视模块 1105 计数基于当前登记的自动响应信息条目 1110 的 列表的接收的数据包。数据包监视模块 1105 比较接收的数据包和每个自动响应信息条目 1110。如果接收的数据包与自动响应信息条目 1110 中的任一个相匹配, 数据包监视模块 1105 增加用于对应的自动响应信息 1110 的计数 ( 即, 接收的数据包的数目 )。该计数被存 储在 RAM113 中。可以将数据包监视模块 1105 计数接收的数据包的监视周期设置为在各个 自动响应信息条目 1110 中设置的所有监视周期中最长的。
在图像形成装置 10 上电的时候, 步骤 S101 可以被执行多次。然而, 在图像形成装 置 10 上电的时候, 每次执行步骤 S101 时不执行接收的数据包的监视, 而是从所有的安装的 通信控制模块 1102 收集了所有的自动响应信息条目 1110 之后, ( 对于一个监视周期 ) 执行 一次接收的数据包的监视。图像形成装置 10 可以具有 FAX 功能。这种情况下, 图像形成装 置 10 在任何时候均保持操作。具有相对高的优先级的自动响应信息 1110 在白天和晚上可 能不同。这是因为连接至网络的终端的数目在晚上减少, 并且也接收到用于维护目的的请 求。在平日和周末之间也可能存在这样的不同。在这种情况下, 在指定时间 ( 或日期 )( 对 于一个监视周期 ) 监视一次接收的数据包。 子系统设置模块 1103 通过使用数据包监视模块 1105 获得的计数来选择自动响应 信息条目 1110。 即, 以计数的递减顺序将自动响应信息条目 1110 连续地包括在代理通信控 制信息 1210 中直到达到子系统 S 中可设置的限制。
用户可以选择具有较高优先级的自动响应信息 1110。例如, 子系统设置模块 1103 可以出现在操作面板 121 上的自动响应信息条目 1110 的列表中, 并且可以允许用户确定优 先级顺序或优先级等级 ( 在下文中将被简称为 “优先级” )。然后子系统设置模块 1103 根 据指定的优先级来选择自动响应信息条目 1110。
自动响应信息 1110 通过数据包来表现。终端用户可能很难理解这样的低等级的 信息。考虑到这一点, 可以提供更加用户友好的界面来允许用户容易地理解和确定自动响 应信息条目 1110 的优先级。
如图 10 所示, 自动响应信息 1110 通过通信控制模块 1102 与应用 1110 有关系。 图 10 是示出应用、 通信控制模块和自动响应信息之间关系的图表。图 10 所示的应用 1101 用 于执行通信。图 10 所示的通信控制模块 1102 具有由此限定的自动响应信息 1110( 即, 附 加通信控制模块 1102 上 )。应用 1101 使用多于一个的通信控制模块 1102。此外, 通信控 制模块 1102 具有多于一个的自动响应信息条目 1110。
例如, 图 10 中示出的可以被扩展为图 11 所示的实例等级 ( 即, 实物等级 )。图 11 是表示应用实例、 通信控制模块实例以及自动响应信息实例之间的关系的图表。
在图 11 中, A 应用 1101a 和 B 应用 1101b 被表示为应用 1101 的实例。 A 应用 1101a 使用通信控制模块 1102a 和通信控制模块 1102c。B 应用 1101b 使用通信控制模块 1102a 和通信控制模块 1102b。
通信控制模块 1102a 具有自动响应信息 1110a 和自动响应信息 1110b。通信控制
模块 1102b 具有自动响应信息 1110c。通信控制模块 1102c 具有自动响应信息 1110d 和自 动响应信息 1110e。
指示这样的关系的信息 ( 特别是应用 1101 和通信控制模块 1102 之间的使用关 系 ) 可以被预先存储在 HDD 117 中。HDD 117 用作使用关系存储单元。子系统设置模块 1103 可以基于这样的信息在操作面板 121 上出现应用 1101 的列表, 由此允许用户对每个应 用 1101 确定自动响应优先级。子系统设置模块 1103 在 RAM 113 中存储为给定应用 1101 设置的优先级, 作为由从给定应用 1101 使用的通信控制模块 1102 中收集的自动响应信息 条目 1110 的优先级。
在图 11 的例子中, 对于 A 应用 1101a 设置的优先级被用作自动响应信息条目 1110a、 1110b、 1110d 和 1110e 的优先级。通过相同的记号 (token), 将对 B 应用 1101b 设置 的优先级用作自动响应信息条目 1110a、 1110b 和 1110c 的优先级。
以这种方式, 提供基于特定应用设置的优先级。这对用户提供了容易理解的设置 环境。
在下文中, 将给出由子系统 S 在功率节省状态下执行的处理的描述, 在子系统 S 中 设置了代理通信控制信息 1210。 图 12 是表示子系统执行的过滤接收的数据包的过程的图表。
当子系统 S 在功率节省状态接收数据包 ( 即, 帧 ) 时 (S301), 子系统 S 的自动响应 条件检查模块 1202 检查是否将接收的数据包指向图像形成装置 10(S302)。 详细地, 检查接 收的数据包的目的 MAC 地址和目的 IP 地址是否与代理通信控制信息 1210 中包含的 MAC 地 址和 IP 地址相匹配。当不匹配时, 自动响应条件检查模块 1202 确定接收的数据包没有被 指向图像形成装置 10, 然后丢弃接收的数据包 (S303)。如果接收的数据包是广播数据包, 自动响应条件检查模块 1202 确定接收的数据包被指向图像形成装置 10。如果接收的数据 包是多播数据包, 当发现图像形成装置 10 属于相关多播组时自动响应条件检查模块 1202 确定接收的数据包被指向到图像形成装置 10。
当确定接收的数据包被指向图像形成装置 10 时, 自动响应条件检查模块 1202 检 查接收的数据包的目的端口号是否匹配代理通信控制信息 1210 的端口号列表中列出的端 口号中的任一个 (S304)。当接收的数据包的目的端口号不匹配端口号列表中列出的端口 号的任一个时, 自动响应条件检查模块 1202 丢弃接收的数据包 (S303)。当接收的数据包 的目的端口号匹配在端口号列表中列出的端口号的任一个, 则自动响应条件检查模块 1202 通过使用代理通信控制信息 1210 中包含的自动响应信息条目的列表来检查关于接收的数 据包自动响应是否是可用的 (S305)。 如果断定自动响应是可用的, 自动响应模块 1203 进行 自动响应 (S306)。如果断定自动相应不是可用的 ( 或者主系统 M 应该被恢复 ), 自动响应 条件检查模块 1202 通过主系统通信模块 1201 将恢复请求发送至主系统 M(S307)。响应于 恢复请求, 子系统 M 恢复。即, 图像形成装置 10 处于通常功率状态。
下文中将描述步骤 S305 和 S306 的细节。图 13 是说明检查自动响应的可用性并 且如同由子系统执行的那样进行自动响应的过程的图表。
自动响应条件检查模块 1202 分析 (S401) 接收的数据包 ( 即, 确切地说为接收的 帧 ) 的 Ethernet( 注册商标 ) 头, 从而检查 (S402) 上级协议是否是 IP。当上级协议是 IP 时 ( 在 S402 中为是 ), 自动响应条件检查模块 1202 分析 IP 头 (S403) 来检测上级协议是否
是 UDP(S404)。当上级协议是 UDP( 在 S404 中为是 ), 自动响应条件检查模块 1202 分析 UDP 头 (S405), 并且将接收的数据包的源端口号和目的端口号与属于代理通信控制信息 1210 中包括的自动响应信息条目的列表的每个自动响应信息条目 1110 的源端口号和目的端口 号相比较 (S406)。作为比较结果, 选择与接收的数据包相匹配的自动响应信息 1110。应 该理解到如果在给定的自动响应信息条目 1110 中进指定了源端口号和目的端口号中的一 个, 则仅比较它们中的这一个。此外, 如果在给定的自动响应信息条目 1110 中既不指定源 端口号也不指定目的端口号, 选择这样的自动响应信息条目 1110 而不进行比较。
当选择了与接收的数据包相匹配的自动响应信息 1110 时 ( 在 S407 中为是 ), 自动 响应条件检查模块 1202 比较接收的数据包 ( 其为 UDP 数据包 ) 的数据部分和选定的自动 响应信息 1110 的数据过滤器 (S408)。 即, 适于数据部分的偏移量位置的字符串与每个数据 过滤器的关键字相比较。当字符串与关键字相匹配, 确定包括数据过滤器的自动响应信息 1110 与接收的数据包相匹配。如果自动响应信息 1110 包括多个数据过滤器, 通过使用 AND 条件或 OR 条件来检查匹配。
当存在数据过滤器与接收的数据包相匹配的自动响应信息 1110 时 (S409 为是 ), 自动响应条件检查模块 1202 确定自动响应是可用的。 在响应中, 自动响应模块 1203 基于上 述自动响应信息 1110 的响应数据信息来识别响应数据, 并且将 UDP 头加入到响应数据以生 成 UDP 数据包 (S410)。UDP 头的源端口号被设置为等于接收的数据包的目的端口号。UDP 头的目的端口号被设置为等于接收的数据包的源端口号。
然后自动响应模块 1203 将 IP 头加入到 UDP 数据包以生成 IP 数据包 (S411)。IP 头的源 IP 地址被设置为等于代理通信控制信息 1210 中包含的 IP 地址。IP 头的目的 IP 地 址被设置为等于接收的数据包的源 IP 地址。自动响应模块 1203 随后将 Ethernet( 注册商 标 ) 头加入到 IP 数据包以生成 Ethernet 帧 (S412)。 Ethernet 头的源 MAC 地址被设置为等 于代理通信控制信息 1210 中包含的 MAC 地址。Ethernet 头的目的 MAC 地址被设置为等于 接收的数据包 ( 即, 接收的帧 ) 的源 MAC 地址。然后自动响应模块 1203 将生成的数据 ( 即 Ethernet 帧 ) 发送到网络 (S413)。即, 进行自动响应。
如果在步骤 S402、 S404、 S407 或 S409 中检查结果是否定的, 自动响应条件检查模 块 1202 确定自动响应是不可用的。结果, 执行图 12 的步骤 S307 以恢复主系统 M。
上述过程也可以应用到增加应用 1101 而不是增加通信控制模块 1102 的情况。可 能存在接收的数据包包含在恢复是要由主系统 M 使用的数据的情况。在这种情况下, 自动 响应模块 1203 首先将该数据存储在 RAM 123 中, 然后在主系统 M 恢复后将该数据传送到主 系统 M。
可以在主系统 M 上运行用于在网络上搜索 PC( 个人计算机 ) 上运行的程序的应用 ( 搜索应用 )1101。搜索应用通过使用多播将搜索请求发送到与图像形成装置 10 的段相同 的段, 并且使用单播将搜索请求发送到与图像形成装置 10 的段不同的段。搜索应用基于来 自响应于搜索请求程序的响应来检测程序的存在。
使用单播的搜索请求指定可以由 PC 注册的 IP 地址。属于与图像形成装置 10 的 段不同的段的 PC 以不规则的间隔发送该请求以将 IP 地址注册到图像形成装置 10。根据 PC 的数目, 图像形成装置 10 可以频繁地接收这样的请求。
可以对搜索请求定义与上述注册请求相对应的自动响应信息 1110, 作为被分配给用于注册请求的通信协议的通信控制模块 1102 的自动响应信息 1110。 通过该布置, 由子系 统 S 对注册请求进行自动响应。即使当在功率节省状态下接收注册请求时, 功率节省状态 没有被禁止。
在上述情况下, 自动响应模块 1203 首先在 RAM 123 中存储接收的注册请求的 IP 地址, 并且然后在主系统 M 恢复以后将 IP 地址传送给主系统 M。通过这样的布置, 主系统 M 的搜索应用可以将 IP 地址识别为搜索目标。在此后执行的单播搜索中, 这个 IP 地址被用 作搜索目标。如果可以在搜索应用中注册的 IP 地址的数目是有限的, 如果超出限制之外接 收到注册请求, 则丢弃 IP 地址。当在超过限制之外接收到注册请求时, 可以恢复主系统 M, 使得不需要的 IP 地址被移除, 随后注册新的 IP 地址。在主系统 M 恢复时可以移除不需要 的 IP 地址, 使得 RAM 123 的可用容量所允许的那么多 IP 地址可以被存储在 RAM 123 中, 而 不用考虑上述限制。在使用应用时或使用应用之后, 可以监视一次接收的数据包 ( 即, 对于 一个监视周期 )。
根据本实施例, 子系统 S 基于从每个通信控制模块 1102 动态获取的自动响应信息 1110 进行自动响应。当应用 1101 或通信控制模块 1102 是新安装的, 可以对通信控制模块 1102 定义恰当的自动响应信息 1110。这能够避免图像接收状态的周期的缩短。结果, 恰当 地减少功率消耗。此外, 由于在加入的应用 1101 中包含自动响应信息 1110, 根据加入的应 用 1101 使用的协议可以执行正确的恢复处理。
为了避免图像形成装置 10 的成本增加, 对于子系统 S 来说, 关于资源的限制 ( 例 如, 关于 RAM 123 的容量限制 ) 比对于主系统 M 更严格。由此, 可能存在在 RAM 123 中不能 存储所有的自动响应信息条目 1110 的情况。本实施例考虑这样的情况, 使得在 RAM 123 中 可存储的限制内选择自动响应信息条目 1110。自动响应信息条目 1110 是响应于流过网络 的数据包的情况而选择的, 从而自动响应的范围可以被恰当地改变以适应于网络条件。结 果, 延长了功率节省状态。
可以设置使得多个图像形成装置 10 分享自动响应信息 1110。例如, 给定图像形 成装置 10 的子系统设置模块 1103 收集自动响应信息 1110, 并且在网络上的文件服务器中 存储收集的自动响应信息 1110。其他图像形成装置 10 可以从文件服务器获取和利用自动 响应信息 1110。使用这样的布置, 可以通过利用另一个图像形成装置 10 的自动响应信息 1110 来在新安装的图像形成装置 10 中正确地维持功率节省状态。可以对每个图像形成装 置 10 指定在响应数据信息中指定的响应时间标识符。在这种情况下, 可以从共享的自动响 应信息中排除具有响应数据标识符的自动响应信息。例如, 用于传送自动响应信息 1110 的 通信协议可以是 HTTP 或 FTP。
本实施例已经描述了将图像形成装置 10 用作通信装置的情况。这不是限制性例 子, 并且本发明的装置不局限于图像形成装置 10。 本发明可以用于任意装置, 只要该装置具 有在接收数据时可以被禁止 ( 即退出 ) 的功率节省状态。
此外, 本发明不局限于这些实施例, 而可以进行各种改变和变形而不偏离本发明 的范围。