CN105340214B - 用于管理唤醒使能应用的方法、系统以及计算机可读介质 - Google Patents

用于管理唤醒使能应用的方法、系统以及计算机可读介质 Download PDF

Info

Publication number
CN105340214B
CN105340214B CN201380076976.0A CN201380076976A CN105340214B CN 105340214 B CN105340214 B CN 105340214B CN 201380076976 A CN201380076976 A CN 201380076976A CN 105340214 B CN105340214 B CN 105340214B
Authority
CN
China
Prior art keywords
wake
port
multiport
awakening mode
enabled
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.)
Active
Application number
CN201380076976.0A
Other languages
English (en)
Other versions
CN105340214A (zh
Inventor
P.巴拉苏布拉马尼安
P.R.贾德霍苏尔
D.G.萨勒三世
D.A.安妮科
C.B.帕尔默
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105340214A publication Critical patent/CN105340214A/zh
Application granted granted Critical
Publication of CN105340214B publication Critical patent/CN105340214B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3209Monitoring remote activity, e.g. over telephone lines or network connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • 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
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • H04W52/0229Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal where the received signal is a wanted signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0261Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
    • H04W52/0274Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by switching on or off the equipment or parts thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0261Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
    • H04W52/0274Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by switching on or off the equipment or parts thereof
    • H04W52/028Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by switching on or off the equipment or parts thereof switching on or off only a part of the equipment circuit blocks
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B70/00Technologies for an efficient end-user side electric power management and consumption
    • Y02B70/30Systems integrating technologies related to power network operation and communication or information technologies for improving the carbon footprint of the management of residential or tertiary loads, i.e. smart grids as climate change mitigation technology in the buildings sector, including also the last stages of power distribution and the control, monitoring or operating management systems at local level
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

在各种实施例中,提供了用于管理唤醒使能应用的唤醒使能传输连接的方法和系统。端口组被指定为唤醒使能端口组。运行应用的计算设备的操作系统(OS)对于计算设备的一个或者多个网络接口控制器(NIC)探测多端口唤醒模式。唤醒使能应用从唤醒使能端口组中获取端口。OS作出应用是唤醒使能的确定,并且这样,从唤醒使能端口组向唤醒使能应用指派端口。在NIC处接收到分组之后,基于将分组与多端口唤醒模式比较,作出所述分组是否对应于唤醒使能传输连接的确定。在将分组与多端口唤醒模式匹配之后,NIC与OS通信,以唤醒与所述唤醒使能传输连接相关联的唤醒使能应用的一部分。

Description

用于管理唤醒使能应用的方法、系统以及计算机可读介质
背景技术
一般地,应用可以被配置成在处于挂起状态的同时保持网络连通性并且接收网络通信。通过进入的网络分组而促进保持网络连通性。将分组与唤醒使能应用(wake-enabledapplication)的数据模式匹配,以便于唤醒应用。数据模式可以指的是与应用相关联的数据分组中的序列,当其被识别时,唤醒应用。在操作时,运行应用的操作系统(OS)可以探测对于与应用的唤醒使能传输连接相对应的网络接口控制器(NIC)的数据模式。当所接收的分组匹配于用于传输连接的数据模式时,NIC将中断OS来恢复挂起的应用,以使得分组被传送到应用。
用于唤醒处于挂起状态中的应用的当前方案遭受可扩展性的缺乏,因为每个应用传输连接要求其自己的模式。此外,如今的计算设备包括多个NIC,每个NIC被配置成支持不同的并且有限数目的数据模式。这样,对于远程唤醒功能性而言所支持的应用传输连接的数目可以取决于计算设备上的活跃NIC而改变。上文的影响是对于可被配置为唤醒使能应用的应用的数目的限制并且还有针对唤醒使能应用的用户体验的不一致。
发明内容
提供本发明内容来以简化的形式介绍概念的选择,这些概念将进一步在下文的具体实施方式中进行描述。本发明内容不打算标识所要求保护的主题的关键特征或者必要特征,其也不打算被孤立地用作确定所要求保护的主题的范围的帮助。
在各种实施例中,提供了用于管理唤醒使能应用的方法和系统。特别地,基于多端口唤醒模式来管理唤醒使能应用的唤醒使能传输连接。一组端口可以被指定为唤醒使能端口组。在实施例中,唤醒使能端口组包括一个或者多个端口范围。唤醒使能端口组可以在OS的启动过程期间被OS指定。通配符模式(此后为“多端口唤醒模式”)可以被指派给一个或者多个NIC;OS探测对于一个或多个NIC的多端口唤醒模式,以支持对唤醒使能应用进行唤醒。操作系统利用具有多端口唤醒模式的NIC的单个可配置槽/模式,即便NIC可被配置成支持有限数目的槽(slot)/模式。所述一个或者多个NIC可以与运行操作系统和/或唤醒使能应用的计算设备相关联。
唤醒使能应用可以在创建唤醒使能应用的唤醒使能传输连接期间从操作系统请求端口。OS可以做出传输连接是唤醒使能的确定,并且这样,从唤醒使能端口组向唤醒使能传输连接指派端口号。否则,如果做出了传输连接不是唤醒使能的确定,在唤醒使能端口组之外的端口被指派给传输连接。在实施例中,唤醒使能应用可以与两个或者更多传输连接相关联,其中至少一个传输连接不是唤醒使能的。这样,唤醒使能应用可以包括与唤醒使能端口组中的端口相关联的第一唤醒使能传输连接和与唤醒使能端口组之外的端口相关联的第二非唤醒使能传输连接。
对于所述一个或者多个NIC中的每个NIC探测的多端口唤醒模式可以与唤醒使能端口组中的每个端口匹配。就这一点而言,当任何进入的分组与所述一个或者多个NIC处的多端口唤醒模式中的端口匹配时,与匹配端口的唤醒使能传输连接相关联的唤醒使能应用被叫醒。特别地,当接收到分组时,基于将分组与多端口唤醒模式匹配来确定分组对应于唤醒使能传输连接。在将分组与多端口唤醒模式匹配之后,如果需要,NIC将操作系统唤醒并且将分组递送到操作系统。操作系统唤醒与基于多端口唤醒模式中的端口而标识的唤醒使能传输连接相关联的唤醒使能应用的至少一部分。
附图说明
在以下参考附图详细地描述本发明,在附图中:
图1是适合在实现本发明实施例时使用的示范性计算环境的方框图;
图2是可以采用本发明实施例的示范性计算系统的方框图;
图3是示出了按照本发明实施例的用于管理唤醒使能应用的方法的流程图;
图4是示出了按照本发明实施例的用于管理唤醒使能应用的方法的流程图;以及
图5是示出了按照本发明实施例的用于管理唤醒使能应用的方法的流程图。
具体实施方式
本发明的实施例的主题在本文中以特殊性进行描述,以满足法定要求。然而,描述本身不打算限制本专利的范围。而是,本发明人已经预计到,所要求保护的主题还可以以其他方式体现,以接合其他现有或者未来的科技包括不同步骤或者类似于在本文档中描述的步骤的步骤组合。而且,虽然术语“步骤”和/或“方框”可以在本文中用来意味着所采用方法的不同元素,但是术语不应该被解译为暗示着在本文公开的各种步骤之中或者之间的任何特定次序,除非是在明确描述了各个步骤的次序时。
出于本公开内容的目的,词语“包括”具有与词语“包含”相同宽泛的意义。附加地,诸如“一”和“一个”之类的词语除非以其他方式指示为相反,否则包括复数以及单数。因此,例如,在存在一个或者多个特征的情况下,满足“一个特征”。同样,术语“或者”包括连接词、反义连接词和两者(a或者b因此包括a或者b以及a和b)。
出于以下详细讨论的目的,本发明的实施例参考具有一个或者多个NIC以及在OS上运行的应用的计算设备来描述。而且,虽然本发明的实施例可以一般指的是本文描述的组件,但要理解的是,所描述的技术的实现方式可以被扩展到执行本文描述步骤的其他组件。
典型地,应用可以被配置成在处于挂起状态时保持网络连通性并且接收网络通信。通过进入的网络分组而促进保持网络连通性。将分组(即,数据分组)与唤醒使能的应用的数据模式相匹配,以便于唤醒应用。数据模式可以指的是与应用相关联的数据分组中的序列,当其被识别时,唤醒应用。在操作时,运行应用的OS可以对于与应用的唤醒使能传输连接相对应的NIC探测数据模式。当所接收的分组匹配用于传输连接的模式时,NIC将中断OS来恢复挂起的应用,以使得分组被传送到应用。
本发明的实施例使用计算机联网原理来构建。端口(例如,软件端口)可以是充当计算机主机操作系统中的通信端点的特定于应用、特定于进程或者特定于用户的软件构建。端口与主机的IP地址相关联,以及与用于通信的协议类型相关联。端口的目的是唯一标识在单个计算机上运行的不同应用、进程或者用户,并且因此使得它们能够共享与诸如互联网之类的分组交换网络的单个物理连接。主要使用端口的协议是传输层协议,诸如互联网协议组的传输控制协议(TCP)和用户数据报协议(UDP)。通过通常被称作端口号的16比特编号来标识针对每个地址和协议的端口。端口号的可以选自:0到1023的周知端口、1024到49151的注册端口和49152到65535的动态和/或私有端口。动态范围意味着对于暂时端口的选择。端口号与计算机的IP地址一同完成了针对通信会话的目的地地址。也就是说,数据分组跨网络被路由到特定目的地IP地址,并且然后在到达目的地计算机之后,被进一步路由到与目的地端口号绑定的特定进程。
TCP连接包括两个端点,并且每个端点包括IP地址和端口号。因此,当客户端用户连接到服务器计算机时,所建立的连接可以被认为是五元组{协议,本地IP地址,本地端口,远程IP地址,远程端口}。通常,五项中的四项是容易已知的——协议,客户端机器使用它自己的IP地址,并且在连接到远程服务时服务器机器的IP地址以及服务器端口号是所要求的。并非立即明显的是,在建立连接时,连接的客户端侧使用端口号。除非客户端程序明确请求特定端口号(即,特定于端口的绑定),否则所使用的端口号是暂时端口号(即,动态绑定)。暂时端口是由机器IP堆栈指派的临时端口,并且出于该目的从所指定的端口范围指派暂时端口。当连接终止时,暂时端口可用于重新使用,但是大多数IP堆栈在暂时端口的整个池都已经被使用之前不会重新使用该端口号。
计算设备的OS可以探测传输连接的数据模式,以支持唤醒使能应用的唤醒使能传输连接。传输连接与针对唤醒功能性而注册到OS的唤醒使能应用相关联。特别地,开发者针对每个应用安排了与OS的契约,以指示特定事件以及要针对这些事件中的每个事件而执行的回调(callback)。一个这样的事件是接收匹配于与由应用创建的特定传输连接相关联的数据模式的分组。数据模式可以被配置为具有掩码的一组比特模式(bitpattern)。例如,具有预定值连同偏移的比特模式。偏移和偏移处的预定值可以用来确定在NIC处接收的分组和在NIC处支持的数据模式的匹配。如果应用被挂起,则OS将在接收到匹配于数据模式的分组后作为回调执行的一部分而恢复挂起的应用。这允许应用在其在后台操作时或者处于挂起状态时保持网络连通性。遗憾地,OS可能仅仅支持由特定NIC支持的最大数目的数据模式。这样,唤醒使能应用的数目被类似地限制于所支持的数据模式的数目。
一般地,本发明的实施例引入了一种用于管理唤醒使能应用的方法,其增加了使用唤醒使能功能性可以支持的应用的数目。在本发明的实施例中,预计的是,可以由NIC上的单个多端口唤醒模式支持多个传输连接。关于这一点,用户可以选择多个应用以用于远程唤醒功能性,并且具有唤醒使能端口组的多端口唤醒模式可以被用来配置针对每个应用的唤醒使能传输连接。
操作中,多端口唤醒模式被探测作为在单个数据模式中计及多个源端口(例如,唤醒使能端口组)的数据模式。多端口唤醒模式可以是比特模式。在实施例中,OS的预留端口组(例如,动态范围)可以用来配置唤醒使能端口组(例如,有特权的应用)以及非唤醒使能范围(例如,不具有特权的应用)。预计的是,预留端口组本身可以仅仅包括唤醒使能端口组;预留端口组和唤醒使能端口组在那些实施例中是同义的。预留端口组可以与OS相关联,以使得基于来自应用的请求,OS从预留端口组指派端口。OS可以针对每个传输协议(例如,TCP或者UDP)使用端口池。端口可以在应用的唤醒使能传输连接的创建期间被指派。在具有OS的计算设备上,应用请求从暂时端口提供的端口,并且特别地,当传输连接是唤醒使能的时从唤醒使能端口组提供端口,而当传输连接不是唤醒使能的时从非唤醒使能端口组提供端口。
在本发明实施例中,预计了用于确定端口组(例如,唤醒使能端口组)的若干方法。唤醒使能端口组可以包括使用各种各样的不同方法选择的多个端口号。其可以简单是在有特权(例如,唤醒使能端口组)和没有特权的传输连接(例如,非唤醒使能端口组)之间拆分的预留端口组的子范围。有特权的传输连接可以指的是被配置成远程唤醒功能性的传输连接。此外,唤醒使能端口组可以由多个子范围组成。子范围可以被指派到不同的特权组。附加地,在本发明实施例内,预计附加的粒度,因为范围或者子范围与特定用户、处理器或者应用相关联。指派和标识端口组以及针对不同类型端口组的范围的任何和所有这样的的变型及其组合被预计在本发明的实施例内。
应用可以在实现本发明实施例时以附加功能细节为特征。如上文提及的,应用可以与若干不同传输连接相关联。这样,当应用被配置为有特权的应用时,被指派了端口号的传输连接可以被选择性地配置为唤醒使能的或者非唤醒使能的。预计的是,应用或者其他基于软件或者硬件的配置机制可以被实现,以创建与应用相关联的传输连接的分层结构。关于这一点,具有三个传输连接的应用可以驱逐(relegate)一个或者多个连接,以使得在所驱逐的连接上的数据模式不唤醒应用。
在已经针对计算设备修改了动态端口范围的实施例中,操作系统可以标识以设置为零的最低有效8比特开始的自由端口范围。作为示例,默认比特模式可以是[49152,49152+255],其在二进制被转化为[1100000000000000,1100000011111111]。此外,作为示例,唤醒使能端口组可以被选取为256端口宽,以支持对于每个应用的多个连接。就这一点而言,唤醒使能端口组可以被实现为范围。唤醒使能端口组可以被查询TCP/IP的端口池管理器的TCP/IP堆栈所选取,以使得范围的开始具有被设置为零的最低有效8比特。以这种方式选择端口促进了在网络接口设备上对比特多端口唤醒模式进行编程。虽然在本文中被呈现为连续端口范围,但是端口范围还可以被实现为非连续范围。例如,非连续范围比特掩蔽(bitmasking)可以提供端口号的非连续范围。范围掩蔽技术可以提供端口号的非连续范围。范围掩蔽技术可以进一步依据特定硬件;但是在其他实现方式中,可以是独立于硬件的。例如,唤醒使能端口组可以因机器的不同而不同,并且不针对发明的每个实现方式保持不变。进一步预计的是,针对唤醒使能端口组的多端口唤醒模式被构建,以使得五元组分组的本地和远程IP地址以及远程端口不被包括在多端口唤醒模式中。
在接收到分组后,基于将分组与多端口唤醒模式相比较和匹配,来确定传输连接是唤醒使能的。特别地,将分组中的端口与多端口唤醒模式的唤醒使能端口组中的端口匹配。例如,当与唤醒使能端口中的任一端口匹配的分组到达时,这触发对端口号和唤醒命令的标识。特别地,还可以基于比较在序列中规定的比特模式,来确定传输连接是唤醒使能的。匹配和比较端口利用了比特掩蔽技术,其中单个多端口唤醒模式匹配于整个唤醒使能端口组。当所接收的分组匹配于针对从唤醒使能端口组被指派了的端口的唤醒使能传输连接的多端口唤醒模式时,NIC将中断OS来唤醒挂起的应用,以使得分组被传送给应用。
因此,本发明的实施例提供了一种用于管理唤醒使能应用的简单和高效的方法。特别地,基于多端口唤醒模式来管理唤醒使能应用的唤醒使能传输连接。分组可以在NIC处被接收。分组包括针对与应用的所打算的通信的端口号。这样,针对分组的所打算的应用可以被确定。在实施例中,NIC可以遍历传输连接表,以确定应用。应用可与具有OS的计算设备相关联。计算设备可以包括一个或者多个附加NIC。每个NIC可以被配置具有包括唤醒使能端口组的多端口唤醒模式。可以将具有端口号的分组与在NIC上探测的多端口唤醒模式相匹配,其中将分组匹配与多端口唤醒模式的唤醒使能端口组中的任何端口匹配。在标识了在分组和NIC的多端口唤醒模式之间的匹配之后,与接收分组的传输连接相关联的唤醒使能应用被唤醒。关于这一点,在计算设备上的现有NIC中的单个多端口唤醒模式可以针对与所指定的唤醒使能端口组中的本地端口的若干个传输连接使能远程唤醒。计算设备上的每个现有NIC可以被配置成支持相同数目的传输连接。
因此,在本发明的第一方面,提供了存储计算机可用指令的一个或者多个计算机可读介质,所述计算机可用指令在被一个或者多个计算设备使用时使所述一个或者多个计算设备执行用于管理唤醒使能应用的方法。该方法包括接收分组。该方法还包括基于将该分组与多端口唤醒模式相比较,确定该分组对应于唤醒使能应用的唤醒使能传输连接。多端口唤醒模式包括唤醒使能端口组。该方法进一步包括唤醒与唤醒使能传输连接相关联的唤醒使能应用的至少一部分。
在本发明的第二方面,提供了一种用于管理唤醒使能应用的系统。该系统包括操作系统,其被配置成预留具有唤醒使能端口组和非唤醒使能端口组的预留端口组。操作系统还被配置成将端口指派给应用,并且特别地,用于基于确定应用的传输连接是唤醒使能的而从预留端口组指派端口,并且在确定传输连接不是唤醒使能的时从非唤醒使能端口组指派端口。操作系统被进一步配置成探测包括唤醒使能端口组的多端口唤醒模式。在示范性实施例中,多端口唤醒模式作为具有掩码的比特模式而被探测,其中多端口唤醒模式是单比特模式,其支持针对唤醒使能端口组中的多个源端口的唤醒功能性。系统还包括具有网络接口控制器的多端口唤醒模式组件;该多端口唤醒模式被配置成接收分组。多端口唤醒模式还被配置成将分组与多端口唤醒模式匹配。多端口唤醒模式被进一步配置成促进唤醒与唤醒使能传输连接相关联的唤醒使能应用的至少一部分。系统还包括唤醒使能应用,其被配置成接收唤醒命令以使得唤醒使能应用的至少一部分被叫醒。
在本发明的第三方面,提供了一种用于基于多端口唤醒模式来管理唤醒使能应用的唤醒使能传输连接的计算机实现方法。该方法包括接收分组。分组可匹配于多端口唤醒模式。多端口唤醒模式包括唤醒使能端口组。该方法进一步包括确定分组匹配于多端口唤醒模式,该分组对应于唤醒使能应用的唤醒使能传输连接。该方法还包括唤醒与唤醒使能传输连接相关联的唤醒使能应用的至少一部分。唤醒唤醒使能应用的至少一部分包括:标识分组中的端口和IP地址并且将该端口和该IP地址与唤醒使能应用匹配。
已经简要描述了本发明实施例的概述,在下文中描述可以实现本发明的实施例的示范性操作环境,以便对本发明的各种方面提供一般上下文。特别地,首先参考图1,示出了用于实现本发明实施例的示范性操作环境,并且该示范性操作环境一般被指定为计算设备100。计算设备100仅仅是适当计算环境的一个示例并且不打算建议关于本发明的使用范围或者功能性的任何限制。计算设备100也不应该被解译为关于所图示的任何一个组件或者组件的组合具有任何依赖性或者要求。
本发明可以在计算机代码或者机器可用指令的一般上下文中被描述,所述计算机代码或者机器可用指令包括由计算机或者诸如个人数据助理或者其他手持式设备之类的其他机器执行的诸如程序模块之类的计算机可执行指令。一般地,程序模块(包括例程、程序、对象、组件、数据结构等等)指的是执行特定任务或者实现特定抽象数据类型的代码。本发明可以在各种各样的系统配置中实践,其包括手持式设备、消费电子产品、通用计算机、特殊计算设备等等。本发明的实施例还可以在分布式计算环境中实践,其中,由通过通信网络链接的远程处理设备来执行任务。
参考图1,计算设备100包括直接或者间接耦合以下设备的总线110:存储器112、一个或者多个处理器114、一个或者多个呈现组件116、包括NIC119的输入/输出硬件端口118、输入/输出组件120和说明性电力供应装置122。总线110表示可以是一个或者多个总线的事物(诸如地址总线、数据总线或者其组合)。虽然图1的各种方框出于清晰的目的以线示出,但是实际上,绘制各种组件不是这么清楚,而是隐喻地,更准确而言,线将是灰色的并且模糊的。例如,人们可以认为诸如显示设备之类的呈现组件是I/O组件。同样,处理器具有存储器。我们认识到,这是技术的本质,并且重申图1的图仅仅图示了可以结合本发明的一个或者多个实施例使用的示范性计算设备。在如“工作站”、“服务器”、“膝上型电脑”、“手持式设备”等等这样的分类之间没有做出区分,因为所有这些都被预计处于图1的范围之内,并且被称为“计算设备”。
计算设备100典型地包括各种各样的计算机可读介质。计算机可读介质可以是可由计算设备100访问的任何可用介质,并且包括易失性和非易失性介质、可移除和不可移除介质。作为示例而不是限制,计算机可读介质可以包括计算机存储介质和通信介质。
计算机存储介质包括以用于存储信息(诸如计算机可读指令、数据结构、程序模块或者其他数据)的任何方法或者技术而实现的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪速存储器或者其他存储器技术、CD-ROM、数字多用盘(DVD)或者其他光盘存储装置、盒式磁带、磁带、磁盘存储装置或者其他磁存储设备、或者可用来存储期望的信息并且可以被计算设备100访问的任何其他介质。计算机存储介质排除信号本身。
通信介质典型地体现了计算机可读指令、数据结构、程序模块或者在诸如载波或者其他传输机制之类的已调制数据信号中的其他数据,并且包括任何信息递送介质。术语“已调制数据信号”意味着这样的信号,即:使其特性中的一个或者多个特性以这样的方式设定或者改变,即:将信息编码在信号中。作为示例而不是限制,通信介质包括诸如有线网络或者有线直连网络之类有线介质和诸如声学、RF、红外和其他无线介质之类的无线介质。上文的任何的组合也应该被包括在计算机可读介质的范围内。
存储器112包括以易失性和/或非易失性存储器形式的计算机存储介质。存储器112可以是可移除的、不可移除的或者其组合。示范性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等等。计算设备100包括从诸如存储器112或者I/O组件120之类的各种实体读取数据的一个或者多个处理器114。(一个或者多个)呈现组件116将数据指示呈现给用户或者其他设备。示范性呈现组件116包括显示设备、扬声器、打印组件、振动组件等等。
I/O硬件端口118允许计算设备100逻辑地耦合到包括I/O组件120的其他设备,其中一些可以是内置的。说明性组件包括麦克风、控制杆、游戏板、碟形卫星天线、扫描仪、打印机、无线设备等等。I/O硬件端口充当物理接口;物理接口可以是在与插头或者线缆连接的一件装置上的专用插座。端口连接器可以是插入式的或者内孔式的。特定类型的I/O硬件端口可以处于网络接口控制器(例如,NIC119)中,所述网络接口控制器充当连接到计算机网络的计算机硬件组件。在实施例中,NIC是无线组件。I/O硬件端口可以不同于软件端口(此后为“端口”),所述软件端口在计算机联网中是特定于应用、特定于用户或者特定于进程的、充当计算机主机操作系统中的通信端点的软件构建。NIC(例如,NIC119)实现了被要求使用特定物理层和数据链路层标准来通信的电子电路。
进行对图2的附加参考,描述了描绘适合于在本发明实施例中使用的示范性计算系统200的方框图。一般地,计算系统200图示了使得能够管理唤醒使能应用的环境。特别地,本发明的实施例提供了用于使用唤醒使能端口组来配置唤醒使能应用以及相关联的NIC以用于支持唤醒使能应用的远程唤醒的系统和方法。除了未示出的其他组件之外,计算系统200一般包括客户端计算设备210、操作系统220、应用230和应用232、具有网络接口控制器250的多端口唤醒模式组件240、以及网络260。网络260可以包括但不限于一个或者多个局域网(LAN)和/或广域网(WAN)。这样的联网环境在办公室、企业范围计算机网络、内联网和互联网中是常见的。因此,网络260不在本文中进一步描述。
在一些实施例中,所图示的组件/模块中的一个或者多个可以被实现为单独的应用。在本发明实施例的范围内,在计算系统200中可以采用任何数目的客户端计算设备、网络接口控制器、应用和多端口唤醒模式组件可以。每个可以包括单个实例或者在分布式环境中合作的多个实例。附加地,未示出的其他组件/模块可以被包括在计算系统200内。
应该理解的是,本文描述的这个和其他安排仅仅被阐述为示例。其他安排和元件(例如,机器、组件、功能、次序和功能编组等等)可以除了那些所示出的之外或者替代于其而被使用,并且一些元件可以被一同省略。此外,本文中描述的元件中的许多元件是可以被实现为离散或者分布组件或者结合其他组件或者以任何适当组合和位置来实现的功能实体。本文描述为由一个或者多个实体执行的各种功能可以由硬件、固件和/或软件实行。例如,各种功能可以被执行存储在存储器中的指令的处理器实行。
继续参考图2,客户端计算设备210可以包括任何类型的计算设备,诸如例如参考图1描述的计算设备100。仅仅作为示例,客户端计算设备210可以是台式个人计算机、膝上型计算机、蜂窝电话、PDA、或者任何其他客户端计算设备。客户端计算设备210可以包括操作系统220、应用230和应用232、以及多端口唤醒模式组件240。然而,应该指出的是,在本文范围内,本文描述的系统和方法不限于在这样的计算设备上的实现方式,但是可以在各种各样不同类型的计算设备中的任何计算设备上实现。
操作系统220可以管理客户端计算设备210的资源。操作系统220可以提供对于资源的功能性,所述资源包括应用230和应用232、多端口唤醒模式组件240、网络接口控制器250。操作系统220可以提供针对支持客户端计算设备210的网络连接功能性的硬件和软件组件两者的资源管理。操作系统220负责预留端口组,以用于实现本发明的实施例。预留端口组可以是从操作系统220的动态端口范围中被预留的。预留端口组可以包括唤醒使能端口组和非唤醒使能端口组两者。
此外,操作系统220被配置成探测包括唤醒使能端口组的多端口唤醒模式。在示范性实施例中,多端口唤醒模式作为具有掩码的比特模式被探测。所探测的多端口唤醒模式可以包括偏移(其应用于模式和掩码)、大小(其应用于模式和掩码)和所指示的大小的比特串。多端口唤醒模式是单比特模式,其支持针对唤醒使能端口组中的多个源端口的唤醒功能性。当分组匹配于多端口唤醒模式时,操作系统220接收已接收的分组来唤醒唤醒使能应用的一部分。操作系统220可以被配置成将分组中的所标识目的地端口和IP地址与具有开放端口的应用相比较,以标识唤醒使能应用。唤醒使能应用与对应于分组的唤醒使能传输连接相关联。
操作系统220还负责在端口获取(例如,创建传输连接)期间响应于来自唤醒使能应用的请求。基于确定唤醒使能应用的传输连接是唤醒使能的,从唤醒使能端口组给唤醒使能应用指派端口。操作系统220可以进一步基于特定应用、进程或者用户来指派端口号。每个应用、进程或者用户还可以与预留端口组的不同子集相关联,这样,可以基于确定应用、进程或者用户的类型以及针对所述应用、进程或者用户的对应范围来具体地指派端口。其任何变型和组合可以通过本发明实施例被预计。
多端口唤醒模式组件240的网络接口控制器250负责管理客户端计算设备210与网络260的连通性。网络接口控制器250还负责从网络接收网络业务量的分组。网络接口控制器250可以接收匹配于多端口唤醒模式的分组,以确定是否唤醒应用(例如,应用230或者232)。这意味着一个元组有5个元素。五元组连接的元素包括:协议、源IP地址、源端口、目标IP地址和目标端口。例如,TCP连接可以由以下五元组来定义:{TCP,10.9.8.7,23,10.11.12.13,2345}。网络接口控制器250可以包括无线网络接口或者以太网络接口等等。多个网络接口控制器250可以与单个客户端计算设备210相关联。在实施例中,网络接口控制器250执行下文描述的多端口唤醒模式组件240的附加功能。
继续参考图2,应用230和232可以是被配置成响应于远程触发的动作的应用。例如,访问本地文件、访问桌面图形用户界面、或者通过IP电话(VOIP)呼叫与用户建立双向通信。应用230和232可以各自与多个传输连接相关联。不是所有的传输连接都可以被启用以唤醒应用。关于这一点,应用可以用唤醒使能的传输连接以及非唤醒使能的传输连接来起作用。这可以作为应用或者操作系统220的其他配置机制的一部分经由分层方案来实现。应用230和232可以被配置成在端口获取进程(例如,创建传输连接)期间请求端口号。关于这一点,从唤醒使能端口组或者非唤醒使能端口组给应用并且特别是传输连接指派端口号。
多端口唤醒模式组件240负责唤醒一个或者多个应用(例如,应用230或者应用232)。在基本水平上,多端口唤醒模式组件240可以基于与多端口唤醒模式的比较,将分组的端口与唤醒使能端口组中的任何端口相匹配。特别地,多端口唤醒模式可以是与分组相比较和匹配的比特模式。多端口唤醒模式可以包括偏移(其应用于模式和掩码)、大小(其应用于模式和掩码)以及所指示的大小的比特串。在操作时,作为示例,基于准确的比特对比特匹配,对分组和所探测的多端口唤醒模式进行比较和匹配。也就是说,如果设置了在掩码中的给定比特,那么在模式中的对应比特必须与分组中的对应比特相匹配。如果在掩码中的给定比特被清除,则不用进行在模式和分组中的对应比特的比较。利用本发明的实施例,预计了分组与NIC的多端口为模式的比较和匹配的任何变型和组合。
进一步预计的是,在本发明的实施例中,多端口唤醒模式组件可以支持多个IP地址。例如,针对相同计算设备支持两个单独IP地址的NIC可以被编程,以支持第一IP地址上的应用的特定绑定,并且支持在第二IP地址上与本文所述的多端口唤醒模式技术的动态绑定。利用本发明实施例,预计了基于计算设备的多个IP地址而将特定绑定与多端口唤醒模式分开的任何变型和组合。
多端口唤醒模式组件240进一步负责唤醒与唤醒使能应用的唤醒使能传输连接相关联的唤醒使能应用的至少一部分。多端口唤醒组件204可以中断操作系统220。在实施例中,多端口唤醒模式组件可以被配置成将系统唤醒并且将分组递送给OS。要预计的是,如OS一样,多端口唤醒模式可以进一步被配置成将分组中所标识的目的地端口和IP地址与具有开放端口的应用相比较,以标识唤醒使能应用。应用可以从挂起状态中被叫醒,以向该应用指示分组。唤醒命令可以在应用处被接收,以将应用从挂起状态唤醒。利用本发明的实施例还预计了唤醒应用的其他实现方式。
现在转向图3,提供了图示出用于基于多端口唤醒模式来管理唤醒使能应用的唤醒使能传输连接的方法300的流程图。在图3中图示的组件包括网络310、NIC320、操作系统330、唤醒使能应用340和非唤醒使能应用350。OS330指定362了预留端口组。预留端口组包括唤醒使能端口组和非唤醒使能端口组。每一个端口组可以包括一个或者多个端口范围。OS330可以在OS的启动过程期间指定预留端口组。OS330对于运行操作系统的计算设备的一个或者多个NIC(例如,NIC320)探测364多端口唤醒模式。非唤醒使能应用350可以从OS330请求366端口,并且唤醒使能应用可以从OS330请求368端口。用于获取端口的请求可以在创建传输连接期间生成。OS330确定370应用是唤醒使能的还是非唤醒使能的,并且特别地,应用的传输连接是否是唤醒使能的。OS330确定应用的传输连接是否是唤醒使能的,以使得OS330从非唤醒使能端口组向非唤醒使能应用的非唤醒使能传输连接指派372端口,从非唤醒使能端口组向唤醒使能应用的非唤醒使能传输连接指派374端口,并且从唤醒使能端口组向唤醒使能应用的唤醒使能传输连接指派376端口。
网络310向NIC320发送378分组。NIC接收380分组,并且确定该分组是否匹配于NIC320的多端口唤醒模式。预计的是,在分组中的端口匹配于多端口唤醒模式中的所标识端口时,分组对应于唤醒使能传输连接,所述所标识的端口在多端口唤醒模式的唤醒使能端口组中。在将分组与多端口唤醒模式匹配之后,NIC320促进唤醒应用的至少一部分。特别地,如果需要,NIC320唤醒OS330,并且然后将分组递送382到OS330,以使得唤醒使能应用被唤醒。OS330基于分组中所标识的目的地端口和IP地址,唤醒384唤醒使能应用的至少一部分。预计的是,OS330可以将用于向传输连接递送的分组排队386,以使得在应用请求分组时,分组被递送。
继续参考图4,提供了图示出用于基于多端口唤醒模式来管理唤醒使能应用的唤醒使能传输连接的方法400的流程图。在方框410,接收到分组。在方框420,基于将分组与多端口唤醒模式相比较,确定该分组对应于唤醒使能应用的唤醒使能传输连接。多端口唤醒模式包括唤醒使能端口组。在方框430,在唤醒使能传输连接的端口上,唤醒唤醒使能应用的至少一部分。
继续参考图5,提供了图示出用于基于多端口唤醒模式来管理唤醒使能应用的唤醒使能传输连接的方法500的流程图。在方框510,接收到分组。分组可匹配于多端口唤醒模式。多端口唤醒模式包括唤醒使能端口组。在方框520,确定分组匹配于多端口唤醒模式。在方框530,唤醒与唤醒使能传输连接相关联的唤醒使能应用的至少一部分。唤醒唤醒使能传输连接进一步包括:在方框540,标识分组中的端口和IP地址,并且在方框550,将端口和IP地址与使用在多端口唤醒模式中所匹配的端口的唤醒使能传输连接相匹配。
本发明的实施例已经相对于特定实施例进行了描述,这些特定实施例在所有方面都打算是说明性的而非限制性的。在不脱离本发明的范围的情况下,对于本发明所属领域的普通技术人员而言,可替换的实施例将变得显而易见。
从前述中将看到,本发明是非常适于实现以上阐述的所有目的和目标连同显而易见并且结构固有的其他优点的发明。
将理解的是,某些特征和子组合是实用的并且可以在不引用其他特征或者子组合的情况下被采用。这由本权利要求的范围所预计并且在本权利要求的范围内。

Claims (17)

1.一种管理唤醒使能应用的方法,所述方法包括:
接收分组,其中所述分组与多端口唤醒模式可匹配,并且所述多端口唤醒模式对应于至少具有唤醒使能端口组的预留端口组,所述唤醒使能端口组被指派到网络控制器接口作为通过所述多端口唤醒模式的唤醒模式;
基于标识所述分组中的端口与所述唤醒使能端口组中的端口相匹配,确定所述分组对应于唤醒使能应用的唤醒使能传输连接,其中所述多端口唤醒模式是对应于包括多个端口的所述唤醒使能端口组的通配符模式,并且所述多个端口被指派到唤醒使能应用,以基于所述多端口唤醒模式和所述唤醒使能应用的对应端口来支持通过所述网络控制器接口的唤醒功能性;以及
唤醒与所述唤醒使能传输连接相关联的所述唤醒使能应用的至少一部分,其中唤醒所述唤醒使能应用包括:
标识所述分组中的所述端口和IP地址;以及
将所述端口和所述IP地址与所述唤醒使能传输连接进行匹配,所述唤醒使能传输连接使用所述唤醒使能端口组中的、通过所述多端口唤醒模式而匹配的端口。
2.根据权利要求1所述的方法,其中所述分组在唤醒使能应用处于挂起状态时被接收。
3.根据权利要求1所述的方法,其中在创建所述唤醒使能传输连接时,从唤醒使能端口组向所述唤醒使能传输连接指派所述唤醒使能传输连接的端口。
4.根据权利要求1所述的方法,其中所述多端口唤醒模式作为具有掩码的比特模式而被指派,其中所述多端口唤醒模式是单比特模式,其支持针对唤醒使能端口组中的多个源端口的唤醒功能性。
5.根据权利要求4所述的方法,其中将所述分组与所述多端口唤醒模式比较包括:
标识分组中的所述端口;以及
使用所述多端口唤醒模式的比特掩码,将所述分组中的端口与关联到所述多端口唤醒模式的所述唤醒使能端口组中的端口进行匹配,基于所述比特掩码的所述多端口唤醒模式与所述唤醒使能端口组的整个组可匹配。
6.存储计算机可用指令的一个或者多个计算机可读介质,所述计算机可用指令在被一个或者多个计算设备使用时使所述一个或者多个计算设备执行根据权利要求1至5中任一项权利要求所述的方法。
7.一种用于管理唤醒使能应用的系统,所述系统包括:
操作系统,其被配置成:
预留具有唤醒使能端口组和非唤醒使能端口组的预留端口组;
从预留端口组指派端口;以及
探测包括唤醒使能端口组的多端口唤醒模式,其中所述多端口唤醒模式支持针对唤醒使能端口组中的多个源端口的唤醒功能性;
多端口唤醒模式组件,其具有网络接口控制器,所述多端口唤醒模式被配置成:
接收分组;
基于将所述分组与多端口唤醒模式相比较,确定所述分组对应于唤醒使能应用的唤醒使能传输连接;以及
促进唤醒与所述唤醒使能传输连接相关联的唤醒使能应用的至少一部分;以及
唤醒使能应用,其被配置成:
接收唤醒命令,以使得所述应用的至少一部分被叫醒。
8.根据权利要求7所述的系统,其中所述操作系统动态确定预留端口组,以使得预留端口组不被硬编码到操作系统。
9.根据权利要求7所述的系统,其中所述操作系统支持多个网络接口控制器,其中以多端口唤醒模式来探测网络接口控制器中的每个。
10.根据权利要求7所述的系统,其中所述多端口唤醒模式组件被进一步配置成:
支持多个互联网协议IP地址,其中第一IP地址支持一个或者多个特定绑定唤醒使能应用,并且第二IP地址支持一个或者多个动态绑定唤醒使能应用,并且其中所述第二IP地址支持多端口唤醒模式。
11.根据权利要求7所述的系统,所述多端口唤醒模式组件被进一步配置成:
将分组递送给操作系统,以使得唤醒使能应用被叫醒;以及
操作系统被进一步配置成:
唤醒与使用在多端口唤醒模式中所匹配的端口的唤醒使能传输连接相关联的唤醒使能应用的至少一部分;以及
将分组排队,以用于递送给传输连接。
12.根据权利要求7所述的系统,其中所述操作系统被进一步配置成:
在确定传输连接是唤醒使能的时,从唤醒使能端口组指派端口;以及
在确定传输连接不是唤醒使能的时,从非唤醒使能端口组指派端口。
13.一种用于基于多端口唤醒模式来管理唤醒使能应用的唤醒使能传输连接的计算机实现方法,所述方法包括:
接收分组,其中所述分组可匹配于多端口唤醒模式,所述多端口唤醒模式包括唤醒使能端口组;
确定分组匹配于多端口唤醒模式,其中所述分组对应于唤醒使能应用的唤醒使能传输连接;
唤醒与所述唤醒使能传输连接相关联的唤醒使能应用的至少一部分,其中唤醒所述唤醒使能应用包括:
标识分组中的端口和IP地址;以及
将所述端口和所述IP地址与使用在多端口唤醒模式中所匹配的端口的唤醒使能传输连接匹配。
14.根据权利要求13所述的方法,其中对于多个网络接口控制器的每一个网络接口控制器作为具有比特掩码的比特模式来探测所述多端口唤醒模式,以使得所述多个网络接口控制器中的每一个网络接口控制器的单个唤醒槽支持所述多端口唤醒模式。
15.根据权利要求14所述的方法,其中所述多端口唤醒模式被构建以使得本地和远程互联网协议IP地址以及远程端口不被包括在所述模式中。
16.根据权利要求15所述的方法,其中所述唤醒使能端口组被选择以使得范围的开始具有被设置为零的最低有效8比特。
17.存储计算机可用指令的一个或者多个计算机可读介质,所述计算机可用指令在被一个或者多个计算设备使用时使所述一个或者多个计算设备执行根据权利要求13至16中任一项权利要求所述的方法。
CN201380076976.0A 2013-05-29 2013-09-21 用于管理唤醒使能应用的方法、系统以及计算机可读介质 Active CN105340214B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361828663P 2013-05-29 2013-05-29
US61/828663 2013-05-29
US14/019243 2013-09-05
US14/019,243 US9491032B2 (en) 2013-05-29 2013-09-05 Pattern coalescing for remote wake-enabled applications
PCT/US2013/061076 WO2014193460A1 (en) 2013-05-29 2013-09-21 Pattern coalescing for wake-enabled applications

Publications (2)

Publication Number Publication Date
CN105340214A CN105340214A (zh) 2016-02-17
CN105340214B true CN105340214B (zh) 2019-05-14

Family

ID=51986473

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380076976.0A Active CN105340214B (zh) 2013-05-29 2013-09-21 用于管理唤醒使能应用的方法、系统以及计算机可读介质

Country Status (4)

Country Link
US (2) US9491032B2 (zh)
EP (1) EP3005610B1 (zh)
CN (1) CN105340214B (zh)
WO (1) WO2014193460A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9473312B2 (en) * 2013-09-06 2016-10-18 Dell Products, L.P. Wake on application
KR102126566B1 (ko) * 2013-11-04 2020-06-24 삼성전자주식회사 전자 장치의 적외선 통신 방법 및 그 전자 장치
JP6312528B2 (ja) * 2014-05-26 2018-04-18 キヤノン株式会社 情報処理装置、及びその電力状態を変更する方法
KR102048329B1 (ko) * 2014-09-19 2019-11-25 후아웨이 테크놀러지 컴퍼니 리미티드 애플리케이션 프로그램 실행 방법 및 장치
JP2017037458A (ja) * 2015-08-10 2017-02-16 富士通株式会社 管理装置、ストレージネットワークの接続制御方法、及びプログラム
TWI681660B (zh) * 2017-05-26 2020-01-01 虹光精密工業股份有限公司 受控裝置、控制裝置及應用其之控制系統及控制方法
CN107315605A (zh) * 2017-06-14 2017-11-03 上海青橙实业有限公司 Jack Server端口动态匹配的方法和装置
CN111240750B (zh) * 2018-11-29 2023-05-05 阿里巴巴集团控股有限公司 一种目标应用程序的唤醒方法及装置
CN114460868A (zh) * 2020-11-10 2022-05-10 中兴通讯股份有限公司 一种终端设备分级管理方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101772141A (zh) * 2008-12-30 2010-07-07 英特尔公司 降功率状态网络处理

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US339375A (en) 1886-04-06 Assigkob of
US260495A (en) 1882-07-04 Alphonse mont ant
US5995971A (en) * 1997-09-18 1999-11-30 Micdrosoft Corporation Apparatus and accompanying methods, using a trie-indexed hierarchy forest, for storing wildcard-based patterns and, given an input key, retrieving, from the forest, a stored pattern that is identical to or more general than the key
US6493824B1 (en) * 1999-02-19 2002-12-10 Compaq Information Technologies Group, L.P. Secure system for remotely waking a computer in a power-down state
US7865752B2 (en) 2000-12-22 2011-01-04 Intel Corporation Port-based packet filter
US7483966B2 (en) 2003-12-31 2009-01-27 International Business Machines Corporation Systems, methods, and media for remote wake-up and management of systems in a network
US7649843B2 (en) * 2004-02-09 2010-01-19 Transwitch Corporation Methods and apparatus for controlling the flow of multiple signal sources over a single full duplex ethernet link
KR101117766B1 (ko) 2004-03-31 2012-03-16 삼성전자주식회사 원격지 단말을 기동하는 방법 및 장치
US20060252435A1 (en) * 2005-03-18 2006-11-09 Yahoo! Inc. Enabling application wakeup on a mobile device with a hybrid client
US20070067445A1 (en) 2005-09-16 2007-03-22 Smart Link Ltd. Remote computer wake-up for network applications
JP4898225B2 (ja) 2006-01-06 2012-03-14 キヤノン株式会社 アプリケーション装置及びアプリケーション装置の電力の復帰方法
US7779451B2 (en) * 2006-03-30 2010-08-17 Intel Corporation Securing wakeup network events
US7779282B2 (en) * 2006-12-29 2010-08-17 Intel Corporation Maintaining network connectivity while operating in low power mode
US8238233B2 (en) 2007-03-28 2012-08-07 Intel Corporation Maintaining network services across multiple physical interfaces
JP2008301077A (ja) * 2007-05-30 2008-12-11 Toshiba Corp ネットワークコントローラ、情報処理装置およびウェイクアップ制御方法
US7941289B2 (en) 2007-12-21 2011-05-10 Dresser, Inc. Fuel dispenser calibration
US20090210519A1 (en) * 2008-02-18 2009-08-20 Microsoft Corporation Efficient and transparent remote wakeup
US8571501B2 (en) * 2008-04-21 2013-10-29 Qualcomm Incorporated Cellular handheld device with FM Radio Data System receiver
TW201038004A (en) 2009-04-02 2010-10-16 Compal Electronics Inc Wake up method and application thereof
TW201041343A (en) * 2009-05-15 2010-11-16 Acer Inc Wireless communication device, power saving method thereof, and packet filtering method thereof
US8842590B2 (en) * 2009-07-21 2014-09-23 Htc Corporation Mobile device and data connection method thereof
WO2011093901A1 (en) * 2010-02-01 2011-08-04 Hewlett-Packard Development Company, L.P. Deep sleep mode management for a network switch
US8799633B2 (en) 2011-02-11 2014-08-05 Standard Microsystems Corporation MAC filtering on ethernet PHY for wake-on-LAN
US8799514B1 (en) * 2011-06-30 2014-08-05 Juniper Networks, Inc. Allocating port ranges
US8239698B2 (en) * 2011-07-01 2012-08-07 Intel Corporation System and method for maintaining connectivity to remote application servers
US8892710B2 (en) 2011-09-09 2014-11-18 Microsoft Corporation Keep alive management
US9049660B2 (en) 2011-09-09 2015-06-02 Microsoft Technology Licensing, Llc Wake pattern management
US8806250B2 (en) 2011-09-09 2014-08-12 Microsoft Corporation Operating system management of network interface devices
US10033763B2 (en) * 2013-05-03 2018-07-24 Kony Inc. Centralized mobile application management system and methods of use

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101772141A (zh) * 2008-12-30 2010-07-07 英特尔公司 降功率状态网络处理

Also Published As

Publication number Publication date
US9491032B2 (en) 2016-11-08
CN105340214A (zh) 2016-02-17
US9866398B2 (en) 2018-01-09
EP3005610A1 (en) 2016-04-13
EP3005610B1 (en) 2017-05-31
US20140359167A1 (en) 2014-12-04
US20170041154A1 (en) 2017-02-09
WO2014193460A1 (en) 2014-12-04

Similar Documents

Publication Publication Date Title
CN105340214B (zh) 用于管理唤醒使能应用的方法、系统以及计算机可读介质
US10560345B2 (en) Consistent placement between private and public cloud deployments of application services
CN108737468B (zh) 云平台服务集群、构建方法及装置
US9967330B2 (en) Virtual resource bank for localized and self determined allocation of resources
US8321862B2 (en) System for migrating a virtual machine and resource usage data to a chosen target host based on a migration policy
US10929189B2 (en) Mobile edge compute dynamic acceleration assignment
CN102214117B (zh) 虚拟机管理方法、系统及虚拟机管理服务器
CN105049502B (zh) 一种云端网络管理系统中设备软件更新的方法和装置
CN109451088A (zh) 一种数据访问方法及装置
US10802885B2 (en) Method and apparatus for data processing based on multicore
WO2022171083A1 (zh) 基于物联网设备的信息处理方法、相关设备及存储介质
CN108243079B (zh) 一种基于vpc进行网络访问的方法与设备
JP2009266202A5 (ja) 情報処理装置、情報処理装置の制御方法、セッション管理システム並びにプログラム
US9851995B2 (en) Hypervisor adjustment for host transfer between clusters
CN103957237A (zh) 一种弹性云的体系结构
CN112905305A (zh) 基于vpp的集群式虚拟化数据转发方法、装置及系统
CN113874811A (zh) 对网络的电力使用的云管理分配以控制备用电池运行时间
US7966394B1 (en) Information model registry and brokering in virtualized environments
CN110505618A (zh) 一种业务处理方法和服务器
CN103501282B (zh) 网络报文发送控制方法、虚拟交换机和物理机
CN113014611A (zh) 一种负载均衡方法及相关设备
CN107888663A (zh) 一种分发文件的方法、设备及计算机可读介质
CN108650337B (zh) 一种服务器探测方法、系统及存储介质
CN110636149B (zh) 远程访问方法、装置、路由器及存储介质
US9996335B2 (en) Concurrent deployment in a network environment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant