CN1906604A - Routing of resource information in a network - Google Patents

Routing of resource information in a network Download PDF

Info

Publication number
CN1906604A
CN1906604A CNA200480002748XA CN200480002748A CN1906604A CN 1906604 A CN1906604 A CN 1906604A CN A200480002748X A CNA200480002748X A CN A200480002748XA CN 200480002748 A CN200480002748 A CN 200480002748A CN 1906604 A CN1906604 A CN 1906604A
Authority
CN
China
Prior art keywords
resource
server
distribution standard
network
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA200480002748XA
Other languages
Chinese (zh)
Other versions
CN1906604B (en
Inventor
M·J·安卡纳森
J·弗拉克斯
J·斯里尼瓦杉
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 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1906604A publication Critical patent/CN1906604A/en
Application granted granted Critical
Publication of CN1906604B publication Critical patent/CN1906604B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2812Exchanging configuration information on appliance services in a home automation network describing content present in a home automation network, e.g. audio video content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4828End-user interface for program selection for searching program descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6581Reference data, e.g. a movie identifier for ordering a movie or a product identifier in a home shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/281Exchanging configuration information on appliance services in a home automation network indicating a format for calling an appliance service function in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • H04L12/282Controlling appliance services of a home automation network by calling their functionalities based on user interaction within the home
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/2847Home automation networks characterised by the type of home appliance used
    • H04L2012/2849Audio/video appliances

Abstract

A media server in a Universal Plug and Play (UPnP) network includes a resource sharing service to govern the distribution of resource information regarding resources to rendering devices. In one case, the resource sharing service consults a criterion to determine whether an identified network device is authorized to receive resource information. In another case, the resource sharing service consults another criterion to determine whether a specified individual associated with the media server must consent to the transfer of the resource information in order for the transfer to occur. The resource information may include resource metadata that describes high level information regarding resources, as well as resource content. The media server includes various user interface presentations that allow the media server user to specify shared resources and distribution criteria.

Description

The route of resources in network information
Technical field
The present invention relates to information is routed to receiver's strategy, and in more concrete realization, relate to the strategy that metadata and media content is routed to selectively the receiver via the such LAN (Local Area Network) of home network (home network) via network.
Background technology
Universal plug and play (UPnP) provides a kind of network architecture of being convenient to add and remove from network to network equipment.For example, the UPnP framework can connect a new equipment " insertion " network the user; Then, network can be determined the feature of new equipment automatically, and is mutual based on coordinating between the miscellaneous equipment of determined feature in this new equipment and network subsequently.The UPnP framework is specially adapted to local relevant network is set, and (notices the function that term " universal plug and play " stems to be provided in the equipment plug and play (PnP) of early development such as family, commerce, school or the like; Equipment PnP provides a kind of flexible technique from peripheral hardware to the so independent computer equipment of PC that add and remove).
Fig. 1 has represented the high layer information relevant with exemplary UPnP framework 100.All in all, UPnP framework 100 comprises a plurality of equipment (for example equipment 102,104 and 106) and reference mark (for example reference mark 108 and 110) that is coupled via network 112.
UPnP equipment (102,104 and 106) can comprise various electronic.Exemplary equipment comprises all types of computing machines, CD/DVD player/jukebox, TV, VCR, MP3 player, stereophonic sound system, digital photo frame (EPF), all kinds of static state and video camera or the like.More particularly, so-called UPnP equipment is from the conceptive symbol that comprises that can comprise physical device, service or the like that defined.Service has defined each function of being carried out by UPnP equipment again, and described function can be used for other UPnP equipment.For example, an exemplary services may be about the time sequencing function that clock provided.Usually, service comes its function of modeling with state variable, and to other UPnP equipment demonstration each behavior relevant with this model.Under the exemplary cases of Fig. 1, UPnP equipment 102 comprises the physical device 114 that service 116 is provided.UPnP equipment 104 comprises the physical device 118 that service 120 and 122 is provided.UPnP equipment 106 comprises the actual root device 124 that service 126 and 128 is provided.Root device 124 comprises the embedded device 130 that service 132 is provided again.
Network 112 can be coupled equipment (102,104,106) with transmission control protocol and Internet protocol (TCP/EP).Network 112 also can freely be chosen multiple other standard agreement, such as HTTP(Hypertext Transport Protocol), Simple Object Access Protocol (SOAP), general purpose event notification architecture (GENA) or the like.Network 112 can be realized physically with multiple rigid line and/or wireless communication mechanism, such as telephone wire, electric wire, infrared data association (IrDa), Ethernet, radio frequency (RF) coupling or the like.
At last, reference mark (108,110) have defined the agency that can recover and control other UPnP equipment.The UPnP equipment self can comprise the one or more reference mark integrated with it.
Fig. 2 has illustrated the conventional func of being carried out by the UPnP framework of arranging in the hierarchical layer 100.Addressing function 202 is about such program: wherein equipment and reference mark receiver address come with network 112 mutual.More particularly, equipment or reference mark can or use an automatic IP allocator (if for example do not have Dynamic Host Configuration Protocol server can with) to come receiver address from DHCP (DHCP) server.Automatically the IP program provides a kind of technology that is used for selecting intelligently from one group of privately owned reserved address an IP address.
Recover function 204 about such program: wherein equipment is to reference mark their service of announcement.Equipment can be announced the multicast variant (being HTTP-MU) that sends HTTP and carry out this announcement process.The reference mark uses HTTPU (being the clean culture variant of HTTP) to respond subsequently.Recovering function 204 utilizes general purpose event notification architecture (GENA) and simple services recovery agreement (SSDP) to realize the above-mentioned exchange between UPnP equipment and reference mark.And UPnP equipment and the service with network coupled also can be searched in the reference mark of up-to-date adding.
Described function 206 is about such program: the more information relevant with UPnP equipment can be determined in the reference mark of wherein having recovered UPnP equipment.The UPnP devices advertise responds to reference mark transmission information, and wherein this information is represented with extend markup language (XML).This information definition with UPnP device type (for example manufacturer, model and model name, sequence number or the like), service that it provided, be used for the URL(uniform resource locator) mutual (URL) or the like relevant details with equipment.
Control function 208 comprises from the reference mark to UPnP equipment and sends a control messages.UPnP framework 100 uses SOAP to send this message.Soap message comprises action request.UPnP equipment is carried out the action of appointment in soap message, then in response to the reference mark.Response comprises action specific value or diagnostic trouble code.
Event report (eventing) function 210 is about such program: the incident that is associated of the service that the reference mark monitors with UPnP framework 100 is provided wherein.More particularly, service can send an incident when its model changes state.The process of " announcement " these state variation is called event report.The reference mark can be announced to the service of being paid close attention to and send a subscribe messages and subscribe to receive each incident.
At last, explicit function 212 needs use and the device-dependent demonstration of UPnP URL to search a page information from this UPnP equipment.The reference mark can be announced and send a HTTP GET to UPnP equipment and ask to begin procedure for displaying.Explicit function 212 makes state that the user can evaluation equipment and/or controls this equipment.
The website of UPnP forum (promptly Http:// upnp.org/) the more detailed information relevant with related subject with the UPnP framework is provided.
As mentioned above, UPnP equipment is used in the network environment of relative localization usually, such as in family or commercial the application.For example, in home environment, comprise that the network of UPnP equipment can be mutual with the set of the set of media supply service and media display device.Exemplary media supply equipment can comprise the personal computer of the set of preserving music, video, picture or the like, perhaps can comprise various types of jukeboxs.Exemplary media display device can comprise TV, stereo, personal computer or the like.Reference mark (such as personal computer) then can be used for resource information is routed to selected media display device from one of media supply equipment.
Yet the existing network that comprises UPnP equipment is not carried out the transmission of above-mentioned resource information in mode clear and definite, safety and that be responsible for.For example, home environment can include a group individuality of various ages and interest.Some more family-friendly members of media contents possibility, but be not suitable for other people.For example, father and mother may wish the music that does not comprise any adult's content, video and picture are sent to child.Meanwhile, father and mother may not wish to carry out alternately with this class resource information of suitable child.Comprise that the existing network of UPnP equipment is not provided for different resource informations is sent to selectively the mechanism of Different Individual in the family.For example, father may load the video of multiple DVD jukebox, and it generally provides resource information widely; The existing network that comprises UPnP equipment can not provide according to applicability and receiver's interest the resource in this jukebox is scattered different members to family selectively.
Similar defective is present in other network application that comprises UPnP equipment.For example, in business environment, commercial owner may be by the information warehouse that comprises multiple resource information.Some of this resource information may not be suitable for distribution general in company, because it may comprise secret or responsive content, or only comprise all uninterested content of many employees.The general networks that comprises UPnP equipment does not comprise that any keeper of making can send to resource information suitable receiver's mechanism selectively.
And, in arbitrary environment, all there is such risk: and comprise that the network individuality that it doesn't matter of the equipment of constructing according to the UPnP framework may " tap into " this network in unwarranted mode.For example, network can be realized (all or part of) with Radio Link.In these networks, have such risk: unwarranted individuality may be deliberately or is inserted the resource that the UPnP framework is provided inadvertently.Similarly risk also is present in the network of other kind.And the function that provides for the network that comprises UPnP equipment is designed to guarantee with wide area IP network function continuity is arranged.Though this provides many advantages, it has also introduced such risk: the user in the wan environment may be deliberately or is found the mode that taps into home network environment inadvertently.Because the UPnP framework is not provided for controlling or the suitable mechanism of lockout message route, so the unwarranted user of this class has whole media and the set of information resources or the UPnP equipment on the Control Network of chance access network.
Thereby the technology that needs a kind of resource information that is used for the Control Network environment to scatter in this area in more specific realization, needs a kind of technology that is used to control the resources in network information route that comprises UPnP equipment.
Summary of the invention
According to a kind of exemplary realization, the method that is used for distributed resource information between network has been described.Described method comprises: (a) receive the request of consumer to resource information at the source entity place; (b) managing request everywhere at source entity is designated as and can shares on the network to determine whether any resource that satisfies this request and satisfy at least one distribution standard; (c) generate the response of representing result; And (d) response is forwarded to the consumer.
According to the exemplary realization of another kind, described and be used to define and use source entity on network, to scatter the method for the relevant condition of resource information.Described method comprises provides user interface to show to allow the user to select: at least one resource that (a) will share on the network; And (b) at least one distribution standard of distributing about the resource information of at least a portion of at least one resource on the network of domination.This method also comprises: show via described user interface to receive the selection of user to described at least one resource and described at least one distribution standard.
Other exemplary realization is described below.
Description of drawings
Fig. 1 illustrates the conventional UPnP framework that comprises a plurality of equipment and reference mark.
The a series of conventional func that provided by UPnP framework shown in Figure 1 are provided Fig. 2.
Fig. 3 illustrates the exemplary network architecture that comprises resource sharing.
Fig. 4 illustrates the exemplary application of the network architecture shown in Figure 3.
Fig. 5 illustrates the exemplary medium server that is used for the network architecture shown in Figure 3.
Fig. 6 illustrates by the employed exemplary catalogue of the medium server of Fig. 5.
Fig. 7 illustrates and is used for stoping the unwarranted individual exemplary scheme that inserts the resource of applied environment shown in Figure 4.
Fig. 8-15 illustrates different exemplary user interface (UI) page for the medium server demonstration of Fig. 5.
Figure 16-20 illustrates and is used for enabling and forbid media device, is used to define the used standard of shared resource information and is used for exemplary process in the network architecture shared resource information of Fig. 3.
Figure 21 illustrates the illustrative computer environment of the medium server that is used to realize Fig. 5.
In instructions and accompanying drawing, use identical numeral to represent identical assembly and feature.The feature that the numeral of 100 series at first occurs in Fig. 1, the feature that the numeral of 200 series at first occurs in Fig. 2, the feature that the numeral of 300 series at first occurs in Fig. 3, the rest may be inferred.
Embodiment
For convenience of explanation, below discuss and to describe the resource information distributed function with universal plug and play (UPnP) framework.As used herein, the network (such as exemplary UPnP network 314 shown in Figure 3) that has according to one or more entities (for example equipment) of UPnP framework structure described in term " UPnP network ", and wherein the UPnP agreement is used for declaration, recovery, description, event report and the control of these entities.In current framework, except being coupled to UPnP network 314 according to other entity the entity of UPnP framework structure.Yet this particular network framework only is exemplary.The resource information distributed function can realize (just, described function be not limited to comprise the UPnP entity network) with the framework and the network of other type.
More particularly, as sketching, UPnP network 314 can comprise one or more source entities that information is provided to one or more trusted entities.UPnP network 314 selectively comprises one or more reference mark entity, described reference mark entity be used for harmony messages from the source entity to the trusted entities transmission and be used to carry out other function.For example, source entity can comprise a medium server, or the equipment of some other type.Trusted entities can comprise the equipment of a reference mark equipment, a media display device or some other type.Generally speaking, term " entity " and " equipment " should broadly be explained at this; These terms can refer to be used to carry out the discrete standalone unit of above-mentioned task, perhaps can comprise the system that is composed of multiple units, and perhaps can comprise the hardware that comprises in the unit and/or component software or the like.In order to simplify discussion, use term " equipment " to describe the arbitrary generic module that is coupled with UPnP network 314 in these chapters and sections.(and medium server equipment is also referred to as " medium server " and discusses to simplify.)
In addition, for a concrete example is provided, the resource information distributed function will describe in the home environment is discussed below, wherein family people uses UPnP network 314 interconnect a plurality of medium servers and media display device in the family.Yet the resource distribution function can be used for any environment, comprises business environment (for example in company), school environment (for example in middle school or university) or the like.
In addition, general (for example in a buildings) device coupled together in relatively little and clear and definite geographic area for UPnP network 314.Yet the resource information distributed function can be used for the environment of region encirclement more.
In addition, in the following discussion, " resource " is meant arbitrary unit of information.For example, resource can be corresponding to single file, perhaps can be for the only part of file, and perhaps can be corresponding to the set of a plurality of files.For example, hypothetical resource is corresponding to a song.This song can be stored in the single file, be kept in the only part of single file or be stored in (wherein these several files also make up the stream from other song) in several files.More particularly, (notice the rightmost of figure) as shown in Figure 3, the exemplary resources (R) of preserving in the resource memory (below will describe) can comprise various informational contents, is commonly referred to as " resource information " at this.Such composition of resource information is " resource metadata ".Resource metadata comprises the high layer information relevant with resource, such as the title of resource, the artist relevant with resource, date of writing resources or the like.Another composition of resource information is " resource content ".Resource content comprises the described data of resource metadata.For example, the resource content of audio resource can be given consumer's voice data corresponding to being used for playback.(in each part of instructions, use term " resource content item " to represent the resource content that is associated with a specific resources; Here the use of term " item " has only reflected grammer problem easily, uses term " resource content " to become clear in particular environment so that make.) last, below describe and will be used for showing often with reference to " resource content " transmission to a display device at this display device place.The transmission of Information of other relevant this resource except that resource content is not got rid of in this transmission; The transmission of resource content for example can also comprise: the resource metadata that is accompanied by resource content.
In addition, resource self can be the set of individual member resource.For example, resource can be formed so-called resource and comprise symbol or resource file folder, or the resource collection of other type.As will be discussed, resource comprises symbol and is meant that medium server is used for the grouping of one or more member resources of these member resources of inner management.The resource file folder is meant that medium server makes it the grouping to one or more member resources of user's " as seen ".For example, medium server can comprise a user interface display (or other display mechanism), and this display has been represented a plurality of resource file folders, and each file can comprise one or more member resources.Yet medium server can internally be managed these member resources under resource comprises the environment of symbol.Information distribution in the resource file folder generally is different from resource and comprises information distribution in the symbol, but in optionally realizing, distribution can be identical.(and medium server can randomly make the user can watch with resource to comprise symbol and the relevant information of they corresponding member resources, and carries out exercises according to comprising symbol one by one, rather than carries out according to file one by one.) any set (or resource comprises symbol or resource file folder) self can comprise member's " son " set (just, corresponding child resource comprises symbol or child resource file).
The specific resource collection of one class is the resource playlist.This resource can realize that file is meant the tabulation of audio frequency, video and/or photo resource (or resource of other type) with file.
Above-mentioned example has only been described some demonstrations that resource can be supposed; In general, the arbitrary set based on the information of arbitrary Consideration represented abstractively in term " resource ".
In one implementation, resource can be corresponding to media resource, such as audio resource (for example music, recording books etc.), video resource, picture resource (for example digital photos) or the like.Yet principle described here can be used to distribute arbitrary category information for arbitrary purpose.
Here alleged term " processing " moves about many kinds.Under a kind of situation, term " processing " is meant the action that is used for revising processed information.Under the another kind of situation, term " processing " is meant and only is used for tackling processed information or makes action with processed information-related decision.Some examples that these many classes that only are this term can comprise are moved.
Say further, all be called " intermediary service user " with the mutual any entity of medium server described here at this in order to carry out various management roles (such as the definition shared resource).The medium server user can about with the mutual operator of medium server, perhaps can represent some other entity, be included as mutual and logic function configuration with medium server.In an exemplary realization, the medium server user is assumed to be and signs in on the medium server.In one implementation, the user signs in on the medium server by identity information is provided to medium server, and after this medium server is according to this user of configuration verification (for example by requiring the user that the checking of password or some other form is provided).Other realization of medium server may not require that the user is for providing their identity alternately with medium server.As described below, the state of login medium server user conversation can be activity or inactive.
All be called as resource information consumer (abbreviating for simplicity, " consumer " below as) from any entity of medium server request resource information.The consumer can be to medium server request resource metadata and/or resource content.The consumer can represent to wish from a reference mark or a display device and the mutual operator of medium server, maybe can represent some other entity, comprises being configured to the logic function mutual with medium server.Under operator's situation, same individual can not only serve as the medium server user, but also serve as the consumer; Perhaps, can play the part of this two other roles of branch by different individualities.
At last, in instructions, provide a plurality of examples in optional mode (for example A or B).In addition, this instructions comprises those situations that makes up two possibilities in single realization (for example A and B), even this instructions is not mentioned these situations especially.
This instructions comprises following chapters and sections:
A. be used to realize the example system of resource sharing
A.1. systematic review
A.2. the exemplary application of system
A.3. the medium server framework is summarized
A. intermediary service module
B. contents directory equipment monitor (CDDM) module
C. subscriber interface module
A.4. the user is switched regulation fast
A.5. add-on security is stipulated
The a.IP address limitation
The b.MAC address validation
C. subnet restriction
The d.TTL restriction
E. equipment and session restriction
F. limit candidate device and be used to verify the UPnP action
G. URLs withdraws from
H. various server security measures
A.6.URL parametrization is stipulated
B. exemplary user interface (UI) shows
B.1. be used to authorize the exemplary UI of new equipment
B.2. the exemplary UI that is used for shared resource
C. exemplary processes
C.1. device authorization process
C.2. resource sharing process
A. define shared resource
B. distribute shared resource based on request
C. the processing of parametrization URL
D. illustrative computer environment
A. be used to realize the example system of resource sharing
A.1. systematic review
Fig. 3 has described the exemplary network architecture 300 that comprises that resource information is shared.The network architecture 300 comprises a plurality of UPnP equipment 302-312 of being coupled via UPnP network 314 (for simplicity following and abbreviate " equipment " as).Equipment 302-312 comprises above-mentioned medium server 302 and a plurality of media display device 304-312.Exemplary medium server can comprise all kinds of computing machines, all kinds of jukeboxs or the like.Exemplary display device can comprise all kinds of computing machines, stereophonic sound system, loudspeaker, TV, handheld audio players or the like.Although (medium server 302 only is shown, and network 314 can comprise any amount of medium server.And although show a plurality of media display device 304-312, yet network 314 can only comprise a media display device, or may not comprise any media display device.)
UPnP network 314 also randomly comprises one or more reference mark (for example the reference mark 316,318).Reference mark 316,318 can be integrated with one of UPnP equipment 302-312.Just, for example, display device also can comprise and is used for the reference mark function mutual with medium server 302.Perhaps, one or more reference mark can be independent of UPnP equipment 302-312 and realize.Exemplary reference mark can be realized with all kinds of computing machines, PDA(Personal Digital Assistant), testing logical module or the like.Generally speaking, resource information trusted entities and other role can be served as in media display device 304-312 and reference mark 316,318, and be as described below, this means that they can receive the resource information that medium server 302 is provided.
UPnP network 314 can use agreement anyly be combined in transmission information between the UPnP equipment 302-312,316,318, described agreement is such as TCP/IP, SOAP, GENA, HTTP or the like.It can also comprise any combination (not shown) of gateway, router, rigid line link, wireless link (for example radio link) or the like.
By summary, when a new UPnP media display device added UPnP network 314, it announced its existence to medium server 302.For example, for example this new media display device corresponding to exemplary apparatus shown in Figure 3 306.Medium server 302 is warned the existence of the relevant new media display device 306 of user (i.e. " medium server user ") of medium server 302 again.As discussed in more detail below, medium server 302 can be by becoming the IP address translation that receives corresponding to new equipment 306 its medium access control (MAC) address, or, determine the identity of new media display device 306 by using some other sign/permission mechanism.Then, medium server 302 is given the option that the medium server user enables this new equipment 306.If be activated, this new equipment 306 just becomes received member in the equipment group, and this member is that medium server 302 is allowed to the member to its transfer resource.
In the middle of media transmission operation self, the corresponding resource information of resource that provides in 302 of medium servers and the resource memory 320 is routed to the resource information trusted entities with network 314 couplings.Say that broadly in order to carry out this operation, the consumer can at first use the corresponding resource information of resource that a reference mark (such as reference mark 316) or miscellaneous equipment are investigated to be provided in the resource memory 320 with medium server 302.For example, this operation may need to investigate the resource metadata of resource, such as the title of available resources and other high layer information relevant with resource.After this investigation, the consumer can select the resource content relevant with a resource, is used for showing that at selected display device place selected device is such as media display device 306.The transmission of resource content from medium server 302 to selected display device 306 can be set up in reference mark 316 after this.In one implementation, UPnP framework 300 uses a non-UPnP agreement to come actual resource content 306 the transmission from medium server 302 to display device of carrying out, and described agreement is such as but not limited to http protocol.
In order to carry out the function of summing up above, medium server 302 comprises resource information sharing functionality 322.The high-level characteristic of having described resource information sharing functionality 322 below is discussed.A.3, chapters and sections have been described the operation of resource information sharing functionality 322 in more detail.
At first, routing program can comprise definition will be on network 314 task of resources shared.In a kind of exemplary realization, medium server 302 is configured to specify sharable resource in the set unit, and described set unit presss from both sides such as resource file.Just, resource information sharing functionality 322 can be resource file folder " marking " for sharing, and at least some resources that allow wherein to comprise can be shared (based on the Consideration of discussing below) on network 314.Resource information sharing functionality 322 can be carried out this function via one or more UI pages, but makes the medium server user can define the shared state of Shared Folders.Chapters and sections B has described these UI pages in more detail.Generally speaking, but inherit the shared state be applied to the interior resource of resource hierarchy tissue.Just, the resource file folder can be regarded as father's resource, and father's resource comprises the one or more individual member resource that can form child resource.The resource file folder also can comprise sub-folder, and each sub-folder can comprise member's child resource.One father's resource is appointed as can share generally can also have its child resource is appointed as sharable effect, comprise all its member resources and sub-folder.Yet resource information sharing functionality 322 also can be configured to operate according to different succession examples.For example, under a kind of optional situation, but the shared state of father's resource cannot automatically be used for its sub-folder.
Equally, but the shared state that resource information sharing functionality 322 can be configured to allow the user to remove resource (resource " is not shared ").For example, in one case, do not share father's resource and have the effect of not sharing its child resource.Under a kind of situation, whether resource information sharing functionality 322 can forbid that the medium server user is designated as the father of child resource and or not this child resource when sharing.Under the another kind of situation, it is shared that resource information sharing functionality 322 can allow the medium server user selectively the shared Sub resource not to be appointed as, and therefore surmounted above-mentioned succession scheme.
Can adopt many other strategies to come shared resource, what list above only is representative sample in many possibilities.For example, resource information sharing functionality 322 can be configured to allow the medium server user can share (rather than on resource collection rank) on the individual resource class resource being appointed as.And resource information sharing functionality 322 can be configured to allow the medium server user that the set of other class is appointed as and can be shared.
According to another example feature, and as describing in more detail among the chapters and sections C, medium server 302 can be made other constraint to its institute's resources shared information type.For example, medium server 302 can be shared the resource information that obtains from specific a few class known media file only.Equally, medium server 302 can be refused the resource information that the shared file of sharing from removable driver, network obtains.By being restricted to the resource information that obtains from known expection resource " totally ", reduced possibility to the unwarranted visit of UPnP network 314 sharing.
Resource information sharing functionality 322 also allows the medium server user to define the distribution standard, and this distribution standard can randomly be used for the controlling resource information route of (comprising resource metadata and resource content).For example, as the first distribution standard, resource information sharing functionality 322 allows the medium server user that the transmission of resource information is restricted to specific resource information trusted entities.As the second distribution standard, resource information sharing functionality 322 allows the medium server user to make the transmission of resource information depend on whether the individuality of appointment needs to permit this transmission.For example, medium server 302 can dispose like this: if make the individuality of appointment sign in to (and individual terminal session is movable) on the computing machine of realizing medium server 302, then impliedly satisfied this standard.This feature can be set up so that only consider the medium server user who directly just logins when mutual with the control desk of realizing medium server 302 the user, rather than with the control desk remote interaction user of (for example being connected) via network; Yet in another implementation, the medium server user can be considered to be login when they are only logined via long-range connection.In another case, medium server 302 can dispose like this: only make that (such as when the individuality of appointment is inquired in response to the UI relevant with the transmission appropriateness for certain) just satisfies this standard when the individuality of appointment confirms that clearly transmission can be accepted.In an exemplary realization, above-mentioned " individuality " corresponding to a medium server user, this user is appointed as the resource relevant with the distribution standard can share on the network.These two standards only are illustrative; Resource information sharing functionality 322 can be utilized other standard of domination resource information transmission.For example, restriction when other standard can comprise, its access privileges to resource information is restricted to some moment in one day.Resource information sharing functionality 322 can be provided for defining one or more UI pages of distribution standard, and described distribution standard has been arranged the distribution of resource information, as describing (following) among the chapters and sections B.
In one implementation, the first distribution standard set is corresponding to the transmission of resource metadata, and another distribution standard set can be corresponding to the transmission of resource content.First set may be different from second set.For example this means that the title rather than the actual retrieve resource content itself of resource only watched in different restrictions.Perhaps, the first distribution standard set may be identical with the second distribution standard set.Yet even the distribution standard is identical, this still has the effect that makes the consumer watch resource metadata but do not watch resource content; This is because for example, and the consumer may receive resource metadata at the place, reference mark that is accepted resource metadata by the mandate of distribution standard, but the consumer manages to place resource content the standard of being distributed to forbid accepting on the display device of resource content.Be contemplated to other variation of this strategy.For example, resource information sharing functionality 322 can provide single distribution standard set.Resource metadata or resource content or both distributions can be exclusively arranged in this single set.
According to an exemplary realization, resource information sharing functionality 322 has been specified the distribution standard in the environment of resource collection rather than individual resource.For example, as mentioned above, the medium server user can use the above-mentioned UI page to come a resource collection is grouped into resource file folder, expression then, as long as satisfy certain criteria, relevant with resource in this resource file folder so resource information (metadata, interior perhaps both) will be given to share and be given the miscellaneous equipment that is coupled with UPnP network 314.This shared resource file also can comprise one or more sub-folders, and each sub-folder all comprises one or more resources.Above-mentioned same class father-sub-succession scheme can be used to arrange the application of distribution standard to hierarchical resource.For example, the distribution standard of setting up for the resource file folder can be applicable to the resource (for example file) in each sub-folder and the resource file folder.Perhaps, resource information sharing functionality 322 can dispose like this: make the distribution standard that is associated with resource file folder only be applied to a subset of resources in the resource file folder; For example, resource information sharing functionality 322 can dispose like this: make the distribution standard only be applied to the individual resource in the resource file folder, rather than resource file presss from both sides the resource in any sub-folder that may comprise.More generally, resource information sharing functionality 322 can be configured so that surmount above-mentioned father-sub-succession scheme in various environment.
Equally, such scheme only is exemplary with representational.There are many other changes.For example, resource information sharing functionality 322 can allow the medium server user that the distribution standard " is appended to " the interior individual resource of resource file folder, perhaps removes the distribution standard from individual resource.Perhaps or in addition, medium server 302 can contain symbol but not the resource file folder is specified the distribution standard for resource packet.Followingly will describe in detail in the environment of Fig. 6, resource comprises symbol and is meant medium server 302 its resources of management and the inner set of using, and the resource file folder is meant directly mutual with it set of medium server user.Medium server 302 can reorganize the resource of grouping in the file and comprise symbol with establishment.
According to another example feature, resource information sharing functionality 322 allows the different distribution standard set of medium server user definition.For example, different users can define corresponding different distribution standard set.When the associated user of resource information sharing functionality 322 signs in on the computer system that realizes medium server 302, resource information sharing functionality 322 can automatically call these distribution standard sets one of them.Perhaps, single medium server user can define different distribution standard sets.The medium server user can call these and gather one of them so that be fit to a specific popular operating environment best.For example, the medium server user can be desirably at him and activate the first distribution standard set that is used for weekend when being in daytime, does not activate another set that is used for week when being in daytime and be not desirably at him.Perhaps, a distribution standard set can merge with another standard set that distributes, and makes two set to use in arbitrary preset time.Can configuration rule solve the potentially conflicting between set.Equally, these only are representative and exemplary situation; Can realize many other changes of this layout strategy.
Other realization can be made other restriction to above-mentioned scene.In an exemplary realization, resource information sharing functionality 322 can allow the medium server user only to add or revise the distribution standard for this particular intermediaries server user has been appointed as sharable those resources.
According to another feature, resource information sharing functionality 322 can be carried out " hard coded " to one or more distribution standards, makes these distribution standards need not the user and defines them via the UI page (or by other mechanism) and automatically use.In addition, described a plurality of factors above and come at first to determine whether resource can be shared, whether be stored on the removable driver and the shared factor or the like that is under an embargo because of it such as definite resource.These factors are in the conceptive distribution standard that is considered to through hard coded." hard coded " means that at this perhaps medium server user can not revise these factors by the used UI page of other distribution standard of definition (such as relevant standard of trusted entities or the like).Yet, in one implementation, make the medium server user be in the various regulations that various environment following time also can change in these factors even resource information sharing functionality 322 can comprise.
According to another feature, various mechanism can be used to the distribution standard that stops medium server customer inspection and/or change other medium server user.For example, in one implementation, resource information sharing functionality 322 only allows the medium server user to define or revise the distribution of resource standard, as long as the medium server user is appointed as those resources can share.The further change of this layout strategy also is feasible.
In routing operations itself, resource information sharing functionality 322 at first makes the consumer can search for the information that is associated with shared resource.For example, as top represented in summary, the consumer can use reference mark 316 (or miscellaneous equipment) import a request in case watch with resource memory 320 in the resource metadata that is associated of the resource that provides.More particularly, request can be browse request, searching request or other request of a certain class.Browse request is the UPnP action that can cause searching the set of item of information in specific appointment classification, and searching request is the UPnP action that can cause searching in response to the critical item of appointment one or more target information items.In either case, the transmission of this request is all by 324 expressions of the path among Fig. 3.
Thereby in response to request 324, described resource satisfies consumer's request simultaneously, also satisfies by the user-defined any relevant distribution standards of one or more medium servers (if any) with the resource of location the following stated in resource information sharing functionality 322 is described shared resource by scanning resource metadata set.For example, the consumer can ask medium server 302 provide with the comedy school in the corresponding resource metadata of all available video resources.Resource information sharing functionality 322 is come in response to this request to locate any related resource by the scanning resource metadata, the search terms coupling of described any related resource and appointment and satisfy any relevant distribution standard (such as limit standard that the subclass of these resources to the resource information trusted entities show, such as preventing that child to use particular intermediaries display device from showing the standard of R level resource).Notice that resource information sharing functionality 322 can be configured to randomly, unnecessary application distribution standard just.Therefore, if there is no Xiang Guan distribution standard, if or medium server 302 be not configured to the application distribution standard at present, the standard that then distributes is inoperative for the distribution of restriction resource information.
Resource information sharing functionality 322 find with the situation of the corresponding resource metadata of one or more resources that satisfies above-mentioned constraint condition under, resource information sharing functionality 322 sends to the consumer to this resource metadata.The response that resource information sharing functionality 322 is generated can be illustrated especially with extend markup language (XML).The XML response can provide the resource metadata of the sign high level data relevant with available resources, such as the title relevant with available resources, artist, creation date, size or the like.Resource metadata also provides URLs, such as URL(uniform resource locator) (URL), this finger URL identified therefrom can the retrieve resource content the network site.Fig. 3 has illustrated this transmission by the 326 pairs of XML information in path.If suitably assembled, reference mark 316 becomes a display format to the XML information translation that receives, and goes up this information of demonstration at monitor or other display device (generally the demonstration that is provided by reference mark 316 shows that 328 represent) then in Fig. 3.On the other hand, in one realized, if if do not have resource information owing to satisfy search parameter and can use the constraint condition that satisfies the distribution standard and be confirmed as availablely, then reference mark 316 was understood and is not received information from media 302.Under this situation, the consumer may not know the existence and the feature of any non-coupling resource information of preservation in the resource memory 320.(as used herein, term " non-coupling resource information " is meant with the search parameter that satisfies the consumer but does not satisfy the relevant resource information of resource of the constraint condition of distribution standard.)
Because the availability of a plurality of former thereby non-coupling resource metadatas of expectation restriction.This feature generally is favourable, may think the demonstration (or consumer's guardian may think oppose) of the resource metadata of opposing because it has eliminated the consumer.Equally, the availability that limits non-coupling resource metadata be of value to eliminate the consumer may uninterested external information.In another is realized, resource information sharing functionality 322 also can allow the medium server user that such distribution standard is provided: described distribution standard does not satisfy under the situation of relevant distribution standard in the coupling metadata of a specific resources, only can some (but non-whole) resource metadatas of filtering.This may be applicable to such situation: wherein the guardian only wishes to stop child to watch the title of specific resources at the display device place, but does not oppose that child receives some and shows that these resources are present in the information in the medium server 302.Therefore, the effect of the distribution standard under this situation has only stoped title when using.In one implementation, resource metadata self can comprise that can be used for arranging reference mark or other resource information trusted entities shows that the demonstration of the mode of resource metadata recommends.
Notice at last, mention resource (as defined above) once more and be meant for example individual resource of a specific resources item is provided.In addition, resource is meant a resource collection (for example resource comprises symbol, resource file folder or the like), and this resource collection can comprise one or more member resources (and may comprise one or more other resource collections).Therefore resource information sharing functionality 322 can be configured to provide a description the resource metadata of one or more individual resources or resource collection.In the former case, resource metadata can comprise the high layer information relevant with individual resource, such as the title of individual resource, author or the like.Under one situation of back, resource metadata can comprise the high layer information relevant with resource collection.This high layer information can comprise arbitrary class global information of describing universal class itself and with individual member resource and resource collection in the relevant information of subclass (if existence), such as the title of individual member resource, author or the like.
For ease of discussing, below to describe and can suppose that generally the resource metadata of each resource comprises a URLs, where this URLs can find resource content (making it to be searched subsequently) if having been described.Yet in one realized, if resource is a resource collection, its resource metadata may comprise or may not comprise URLs associated therewith.For example, so-called playlist resource comprises symbol and has a URLs associated therewith.This URLs can be used to or searches playlist (for example tabulation of song) or searches each first song in the playlist (set of the song that for example " links to each other ").How playlist searches each first song if can identifying, for example by the individual URLs that is associated with song is provided.Yet other resource collection may not have URLs associated therewith.Usually, arbitrary given application can comprise set with URLs, do not have the set of URLs or have and do not have the combination of the set of URLs.For ease of discussing, below explanation has generally hinted corresponding relation between resource metadata item and the URLs to people; Yet, may use the condition of above-mentioned resource collection, although always do not specify.
After having watched available resource (via the resource metadata that is provided), the consumer may determine on selected media display device, for example on display device 306, plays and one of available individual resource corresponding resource content.This can carry out in many ways.According to a kind of technology, reference mark 316 (or other agency) can provide and the corresponding URLs of a selected resource content item to display device 306, such as URL(uniform resource locator) (URL).(same, notice that this URLs offers reference mark 316 in response to consumer's initial inquiry with its part as resource metadata by medium server 302.) then, display device 306 can be submitted to medium server 302 to this URLs.Medium server 302 uses selected resource content, shows this resource content to selected display device 306 then.This serial action can be carried out outside the UPnP agreement, for example uses the operation of HTTP GET operation or other type.In this operation, display device 306 provides a HTTP GET order to medium server 302.This order comprises URLs.Fig. 3 represents This move with path 330.The requested resource content responds by providing for medium server 302.Fig. 3 represents This move with path 332.Operable other agreement has IEEE1394, RTSP/RTP or the like except that HTTP GET agreement.Also can use various media group stream technology that resource content is transferred to media display device 306 from medium server 302.And a plurality of URLs can be forwarded to display device 306, are transferred to medium server 302 then carrying out all transmission of a plurality of resource content items, rather than one by one be respectively described each URLs of every transmission.
As mentioned above, using HTTP GET agreement (or other agreement) to search the real resource content also can randomly make according to the distribution standard.Just, as mentioned above, the first distribution standard set can be arranged the distribution of resource metadata, and the second distribution standard set can be arranged the distribution of resource content.First set can be identical with second set, and perhaps first set can be different from second set.By using second standard set, if relevant distribution standard shows this content of the uncommitted reception of the display device of asking, then medium server 302 can be forbidden the distribution of resource content.This regulation prevents that unwarranted display device trial from receiving resource content with it from (or permission or not permission are arranged) URLs that authorisation device receives.This regulation also can stop the equipment that once was authorized to but no longer was authorized to pass through to use " inefficacy " (for example outmoded) URLs with trial access resources content, thereby receives resource content.
In one case, medium server 302 can prevent that resource content is distributed to an equipment, even the licensed reception resource metadata of same equipment.Perhaps, medium server 302 can prevent that resource metadata is distributed to an equipment, even this equipment self can the access resources content.Generally speaking, term " the first distribution standard set " and " the second distribution standard set " are abstract concepts, and only expression can be applied to different standard sets the distribution of resource metadata and resource content.In one case, these two set can be according to being realized by two parameter libraries that separate on the letter.In another case, these two set can by to each standard added field or attribute to show each standard and be applied to the distribution of resource metadata or the distribution that is applied to resource content realizes.In another case, can provide single standard set, suppose that it impliedly is applied to the distribution of resource metadata and resource content, perhaps be applied to any distribution of resource metadata or resource content.For realizing this interspersion strategy, many other variations also are feasible.
Except the relevant standard of the said equipment, the distribution standard of other type can be applicable to the distribution of resource content.For example, under the situation that above-mentioned resource metadata scatters, do not give required permission to this transmission if relevant distribution standard shows specified individuality, medium server 302 can be forbidden the distribution of resource content; This standard in one case can be satisfied like this: sign in at present and versatilely on the computer system that realizes medium server 302 by requiring this individuality.Other standard still can be arranged the distribution of resource content.
In another implementation, medium server 302 can not make the distribution of resource content depend on the distribution standard.The prerequisite of this realization can be: if the corresponding efficient resource finger URL of the resource content that is provided with medium server 302 is provided the consumer, suppose that then the consumer has suitable right to come own access resources content.This is because the consumer can need to satisfy the condition that proposes in the distribution standard, and the distribution of described distribution standard domination resource metadata is so that at first obtain resource metadata.
A.2. the exemplary application of system
Fig. 4 illustrates the exemplary application of above-mentioned resource sharing strategy in a home environment.Yet as mentioned above, principle described here can be applicable to arbitrary environment, organizes or the like such as commercial, science.
Among Fig. 4, the synoptic diagram of family 402 comprises a plurality of rooms, such as cubicle 404, children's room 406, father and mother's bedroom 408, kitchen 410 and living room 412.Fig. 4 also illustrates three people in the family 402, comprises father 414, mother 416 and child 418.
Cubicle 404 comprises medium server 420 and relevant resource and display device M 422.Children's room 406 comprises display device N 424.Father and mother's bedroom 408 comprises display device O 426.Kitchen 410 comprises display device P 428.And living room 412 comprises display device 430 and 432 (Q and R).Although not shown, yet each reference mark can spread in the family 402.For example, the equipment M 422 in the cubicle 404 also can serve as an access point, and the consumer can be mutual from this access point and medium server 420.Because medium server 420 is positioned at cubicle 404, so cubicle 404 can serve as the control center that is used to set up the distribution standard, and described distribution standard has been arranged resource distribution in the family.Mother 416 is in this embodiment by setting up these standards to serve as the medium server user.At last, cubicle 404 also comprises and is used for router four 34 that all devices is coupled.Router four 34 operates in a usual manner, just, according to the addressing information relevant with resource information and other information described information is routed to each equipment.
Resource information sharing functionality 322 can provide a large amount of different resource sharing situations to be fit to different environment and purpose.Some resource sharing possibilities have been outline in below discussing, so that the object lesson that can how to adopt resource information sharing functionality 322 is discussed.
In first kind of situation, medium server user (just using medium server 420) may wish to select first group of specific resource and enroll the resource file folder, mark and the interior relevant resource information of resource of this resource file folder are used for only distributing to the equipment N 424 in the children's room 406 then.Therefore, child 418 can visit child's suitable in his or she room resource information (for example resource metadata and/or resource content).Meanwhile, father and mother 414,416 browse or can not see this resource metadata during the searching resource metadata at them; This has the beneficial effect that father and mother 414,416 are full of by their uninterested resource metadata.
In second kind of situation, father and mother 414,416 may wish the resource information of action school is only distributed to themselves, are used for watching in themselves room 408.Father and mother 414,416 may be concerned about that the child 418 that the violence in this resource information for example is not suitable for them watches.The medium server user can only should play on the equipment O 426 in the father and mother room 408 by the R level resource information set of compulsory exercise school, thereby realizes this constraint condition.Therefore, child 418 can not be from his or her room 406 these objectionable resource informations of visit; Child 418 even do not know that also there be (because resource information sharing functionality 322 even can to the child shielding resource metadata relevant with these resources) in this objectionable resource information.
In the third situation, the medium server user can be labeled as the resource information relevant with other specific resource collection and be applicable on arbitrary display device and show.This realizes by regulation " armamentarium " for these resource collection definition distribution standards the time.
Except the relevant constraint condition of the said equipment, the medium server user can make to be depended on whether the individuality of selected operation medium server 420 hints or clearly represents this resource information of transmission the visit of resource information.For example, in the 4th kind of scene, become a mother 416 when signing in on the medium server 420 (and her terminal session is movable) satisfy this standard.Under this situation, only can infer alternately that with 420 same times of medium server ground she permits the transmission of resource information from mother 416.In another case, this standard only satisfies when mother's 416 permission transmission.This shows in the time of can attempting to visit specific resource metadata or resource content by the child at her that a message pop-up finishes.Transmission only just continues when mother 416 responds this inquiry for certain.
On the other hand, the user of regulation " all users " can not cause any restriction to the demonstration of resource information.In other words,, then can on arbitrary authorisation device, show resource information, and need not to move the permission of the individuality of medium server 420 if be provided with this standard.Yet device-dependent standard can be made independently restriction to where showing resource information, therefore prevents that effectively specific equipment from receiving these resources.
Again, resource information sharing functionality 322 can provide except that device-dependent standard and other type standard the user permits relevant standard, relevant various standards or the like during day when consuming with resource.Equally, again, above-mentioned feature can be applied to other environment except that home environment equivalently, such as business environment.
At last, describe in more detail in A.5 at chapters and sections as following, family's 402 each outer entities can be attempted with unwarranted mode and home network mutual.For example, the subnetwork that provides in the family 402 can be realized with Radio Link; Under this situation, unauthorized entities may enough closely be worked with family 402 so that will oneself be expressed as an effective reference mark or a display device.In another case, unauthorized entities can be represented an individuality with wide area network (such as the internet), so that deliberately or inadvertently insert the resource information that medium server 420 is provided.In either case, above-mentioned resource sharing strategy all can be used to limit the distribution of resource information to one group of known and limited display device.This has the effect that prevents unauthorized entities access resources information, because these entities are not on the list of devices of the permission in advance that may receive resource information.Distribute and also depend on the permission of the specified individual of moving medium server 402.This makes unwarranted access path that another obstacle (because this standard-required medium server user hint or explicit permission are provided a few resources information) has been arranged again.Below chapters and sections A.5 several other regulations that design for the unwarranted visit that hinders resource information have been described.
A.3. the medium server framework is summarized
Fig. 5 is the more detailed description of exemplary medium server 302 shown in Figure 3.Medium server 302 can be realized each piece shown in Figure 5 with the combination of software, firmware (for example Gu Ding logical circuit) or software and firmware.The combination of software, firmware or software and firmware generally represented in term used herein " logic ".Under the situation that software is realized, shown piece can be illustrated in a treatment facility (for example CPU) and go up the set (and/or the statement of announcing) of carrying out the program code of appointed task when carrying out.Program code can be stored in one or more computer readable memory devices.
By summary, medium server 302 frameworks comprise three primary clusterings.First primary clustering is an intermediary service module 502.Intermediary service module 502 provides (host) resource information to share code, monitors the server whether UPnP network 314 has the code of new equipment and be used for the shared resource content.Intermediary service module 502 also keeps being used for the configuration data (for example comprise shared resource Folder List, institute's permitted device tabulation, provide required medium server user list of permission or the like for the resource information transmission) of the distribution of resource metadata and resource content on the distribution network 314.
Second primary clustering is contents directory equipment monitor (CDDM) service module 504.Following detailed description, CDDM EM equipment module 504 is compared with intermediary service module 502, has higher access privileges so that mutual with the system resource of medium server 302.Like this, medium server 302 uses CDDM service modules 504 to allow a small amount of privileged operation, and described privileged operation is an intermediary service module 502 because its low access privileges and inexecutable.Itemized and described the operation that CDDM service module 504 is provided below.
The 3rd primary clustering is configuration and control panel module 506 (being called control panel module 506 for simplicity).Control panel module 506 allows the user of a login to permit or refuses mandate to the new equipment that adds network 314, also manages one and shares tabulation of resource file folder and the relevant distribution standard of definition.Control panel module 506 is warning medium server user when medium server 302 runs into crucial system errors also.
As at sub-chapters and sections A.4 described in (following), medium server 302 has realized that quick user switches (FUS).The FUS technology allows a more than medium server user to sign in to constantly on the computer system of host's medium server 302 at any.Under this situation, medium server 302 provides a plurality of examples of the control panel module 506 that can move simultaneously.Fig. 5 illustrates following exemplary cases especially: wherein module instance 506 is used for and user 508 is mutual, module instance 510 is used for and the user is 512 mutual, module instance 514 is used for and user 516 is mutual.Yet each user can start maximum examples of control panel module 506 at any one time.Privately owned application programming interface (API) 518 is coupled to other assembly in the medium server 302 to control panel module 506.
All operations in different what is called " user environment " of each of above-mentioned three modules.Intermediary service module 502 is moved in arbitrary so-called " being prevented (clamped-down) " user environment, such as so-called local service user environment or web services environment (will be described below).CDDM service module 504 moves in so-called local system user environment.And control panel module 506 is moved in the user environment of so-called login user.Basically, prevented user environment to provide and the relevant access privileges of UPnP function set, such as monitoring whether UPnP network 314 has new equipment, shared resource information or the like.Yet, prevented user environment to allow to visit by the specific resources that computer system provided that realizes that medium server 302 is required, read, delete and write the resource of preserving on the disk such as actual.Local system user environment (being used by CDDM service module 504) provides the visit to these core computer resources, in addition, can revise access permission to these computer resources so that the user environment that allows to be prevented is visited these computer resources.Thereby, prevented user environment (using) and local system user environment (being used) complimentary to one another so that provide realization UPnP sharing functionality necessary function by the CDDM service by intermediary service module 502.The user environment of login user (being used by control panel module 506) provides the relevant especially access privileges of user (for example the user 508) with a login.
Expectation is distributed to different secured user's environment to different functions so that the resource of protection medium server 302 is more broadly said, is the resource of the computer system of protection host medium server 302.For example, medium server 302 can be carried out specific operation under background mode, and signs in on the medium server 302 without any the medium server user.A kind of such consistency operation must be when the critical system mistake occurring or when on network 314, detecting new media display device or reference mark advice media server user (in either case, this is all carried out by starting control panel module 506).Expectation prevents that the function relevant with these background tasks whole system resources direct and that medium server 302 is provided are directly mutual.For this reason, medium server 302 uses CDDM service module 504, and this module 504 is moved in the local system user environment, so that replenish intermediary service module 502 (it moves) in by the prevention user environment.As mentioned above, CDDM service module 504 has necessary access privileges and visits and exceed the core system resource of being prevented the user environment scope.
In the following discussion, for ease of explanation, prevented user environment in the specific implementation environment that uses the local service user environment, to describe.The local service user environment is meant the Windows by Microsoft The special account that operating system is created, this special account generally do not allow the interactive mode of computer system is logined as other conventional user account.Yet, as mentioned above, also may use web services environment (at the Windows of Microsoft Be also referred to as predefined user environment in the operating system) realize user environment or some other user environment prevented.Local service user environment and network service user environment have a category associated therewith like privilege, but the benefit that these user environments provided and inequality.For example, the network service user environment provide by with the operation Windows The certificate that other machine of the network coupled of operating system is recognized.On the contrary, local service user environment certificate is only recognized on user's local machine; And the local service user of a machine can not be verified on other machine.
The resource information sharing functionality of introducing in Fig. 3 environment 322 has been represented above-mentioned three assemblies 502,504 and 506 generally.Each these said modules all can be described below successively.
A. intermediary service module
At first, equipment monitor module 520 from the equipment reception notification of UPnP network 314 coupling.For example, this module 520 detects by the declaration that new display device generated that is added into UPnP network 314.Then, relevant this incident of other module in these module 520 advice media servers 302, this Event triggered other action (will describe in detail below) for example with reference to Figure 16 and 17.Equipment monitor module 520 also detects the request of being made by the reference mark of being coupled to UPnP network 314.As shown in Figure 5, resource information consumer's (for example abbreviating " consumer " as) can begin this request, so that browse or search for the resource metadata that medium server 302 is provided.Then relevant this request of content of announcement directory service module of equipment monitor module 520, this request has triggered other action (below will describe in detail).
Whether resource initiate, deletion or that revise is arranged in the Resource Monitor module 522 monitoring resources storeies 320 (Fig. 3 introduction).After detecting variation, the variation of Resource Monitor module 522 content of announcement directory service modules 526 relevant resources.The Resource TOC that provides in the resource memory 320 has been provided control directory services module 526.As shown in Figure 5, control directory services module 526 is also mutual with a consumer, and this consumer imports a request with the resource of browsing or searching resource storer 320 is provided.Control directory services module 526 is transferred to this consumer by the retrieve resource metadata and with it and in response to this request, and described resource metadata has been described the available resources that satisfy consumer's request and satisfy any distribution standard relevant with this request.
Resource memory 320 self can be represented single resource storage or a plurality of storage.Resource memory 320 can with magnetic storage apparatus, optical storage apparatus, EEPROM memory device with and/or the memory device of any other type realize.The exemplary readable resource that can preserve in the resource memory 320 comprises: .bmp image file .gif image file .jpeg image file .png image file .GIFf image file .avi video file .mp3 audio frequency are compiled Mpeg file .mpeg video Mpeg file .wav audio file .wma audio file .wmv video file or the like.This only is illustrative exemplary lists.Resource memory 320 can be positioned at the other parts of medium server 302 and exist together, or can be all or be positioned at one or more positions that separate partially.Under one situation of back, the resource that medium server 302 remotely provides in the management resource storer 320.
Resource transmission module 524 is coordinated the transmission of resource content to a media display device (such as media display device 306 shown in Figure 3).In one implementation, resource transmission module 524 is http servers.The transmission of resource content is started by receiving resource content request (such as the request of the HTTPGET under the situation of using http server).Resource transmission module 524 responds by send resource content when satisfying relevant distribution standard (if can use).In one implementation, resource transmission module 524 is carried out this task by the help of connection manager service module 530.Coupling between connection manager service module 530 management medium servers 302 and the display device, described coupling is used to receive resource content.This module 530 can be called in reference mark (for example reference mark 314 or 316) makes medium server 302 be ready to the brilliance transmission of resource information.This preparation must be mated the relevant information of ongoing resource information transmission in ability, discovery and the UPnP network 314 of medium server 302 and display device and be set up and disconnect connection between medium server 302 and the display device.(notice, carry out the examples of features realization of resource content transmission with the HTTP technology and can simplify this processing by saving one or more above-mentioned functions.)
In a kind of exemplary and illustrative HTTP realized, connection manager service module 530 can be supported a GetProtocolInfo method.This method is returned the tabulation that separates with comma of protocol information type that a medium server 302 can send and receive.The reference mark uses this information to set up the media connection between medium server 302 and selected display device (for example the media display device 306).Each ProtocolInfo item all is the combination of host-host protocol, network, multi-usage internet mail expansion (MIME) type and additional information, totally by following format specification: Protocol:Network:Content Format:Additional Info.
Intermediary service module 502 also can comprise optional audio-video (AV) transmission service module (not shown).If supported, AV transmission service module can be used to the playback of controlling resource content to display device.This module is special allow an ad-hoc location (function is searched in use) in the stream that a reference mark stops resource content, the stream that suspends resource content, the searching resource content, or the like.
In the specific examples of Fig. 5, intermediary service module 502 can use a http server 524 to coordinate the transmission of resource content (such as HTTP 1.1 servers).This server 524 is the distributed resources content in response to the reception of HTTP GET request.The URL of expectation resource has been specified in HTTP GET request, URL again in response to resource metadata to the previous transmission of trusted entities (for example reference mark) and be provided for the media display device, the reference mark again may be suggested by consumer's prior searches or browse request.As long as satisfy relevant distribution standard, server 524 by from the corresponding resource memory 320 of specified URL the retrieve resource content, resource content is transformed to the media form (being if desired) of being asked and this resource content is offered the consumer, thereby respond.The URL of one resource can have following exemplary form:
Http:// machine ip:port/ResourceId wherein " ResourceId " is meant the identifier of being distributed to resource content by control directory services module 526.The operable agreement that other is used for the transfer resource content comprises IEEE-1394, RTSP/RTP or the like except HTTP-GET.
Control directory services module 526 provides and makes medium server 302 share leitungskern to the media display device to resource information (particularly resource metadata).It comprises a resource memory 532 of sharing.In one implementation, shared resource storer 532 comprises a catalogue and relevant resource metadata, and described resource metadata has been provided by the resource that will be shared that provides in resource memory 320.
More particularly, briefly browse a series of figure, Fig. 6 illustrates and can be used to the information organization in the shared resource storer 532 is comprised the interior example hierarchical framework of symbol to virtual resource, and for example catalogue 600.Among this figure, " root " resource comprises symbol 602 all other resources that comprise catalogue 600 and comprises symbol." music " resource comprises symbol 604 and comprises that the resource that is referred to music comprises symbol." music/whole music " resource comprises symbol 606 and is included in whole music sources of sharing in the content catalogue." music/special edition " resource comprises symbol 608 and comprises that the resource of each special edition comprises symbol, and wherein each such resource comprises symbol and comprises the music sources that belongs to this special edition." music/artist " resource comprises symbol 610 and comprises that each artistical resource comprises symbol, and wherein each such resource comprises the resource that symbol all comprises whole musical workss of being created by this artist." music/genre " resource comprises symbol 612 and comprises that the resource of each school comprises symbol, and each such resource comprises the resource that symbol all comprises the musical works that belongs to this school.
" video " resource comprises symbol 614 and comprises that the resource of sorting out video comprises symbol." video/all videos " resource comprises symbol 616 and is included in all videos resource of sharing in the content catalogue." video/performer " resource comprises symbol 618 and comprises that each performer's resource comprises symbol, and each such resource comprises symbol and all comprises the resource that characterizes this performer." video/school " resource comprises symbol 620 and comprises that the resource of each school comprises symbol, and each such resource comprises symbol and all comprises the video resource that belongs to this school.
" picture " resource comprises symbol 622 and comprises that the resource of sorting out picture comprises symbol." picture/whole pictures " resource comprises symbol 624 and is included in all images resource of sharing in the content catalogue.Although (not shown, can comprise that one " picture/special edition " resource comprises symbol, the described symbol that comprises comprises that based on the file name resource of each picture special edition comprises symbol.And, although not shown, can comprise that " picture/acquisition date " resource comprises symbol, this comprises symbol and is included in one and comprises symbol for the resource of the every picture group sheet that obtains of fixing the date).
At last, " user file " resource comprises symbol 626 and comprises that the resource of holding the resource that belongs to the individual consumer comprises symbol.Fig. 6 illustrates the set that the resource that is associated with exemplary N user comprises symbol 628.
Each resource in the catalogue 600 comprises symbol all associated Target id.For example, video/performer's resource comprises symbol and has Target id and " comprise symbol: VideoActor ".Generally speaking, catalogue 600 shown in Figure 6 is exemplary; Other catalogue can be used the different tissues and the selection of resource.
In one implementation, accord with each interior individual resource comprising shown in the catalogue 600 all corresponding to a separately corresponding resource file that is kept in the resource memory 320.But as mentioned above, " resource " should be understood that a kind of abstract ensemble of communication.Single resource can only be preserved (wherein such file also may be preserved the information relevant with other resource) with the part of file.Perhaps, the set that can be better than different files of single resource is saved.Notice that equally resource collection (resource such as Fig. 6 comprises symbol) self is formed resource.
Return Fig. 5, shared resource storer 532 comprises the resource metadata 534 that is associated with shared resource in the catalogue 600.As mentioned above, resource metadata generally comprises the high layer information of describing resource content, such as name, artist, creation date, resource size, the URLs as URL relevant with resource content, or the like.Shared resource storer 532 also can be preserved standard information 536, and standard information 536 has been described and has been used for limiting resource information (comprising resource metadata and resource content) and spread to the standard that suitable consumer's resource collection (for example resource file presss from both sides or resource comprises symbol) is associated at control corresponding point and display device.As mentioned above, an exemplary standard can be arranged which equipment of mandate and be received resource information.Another standard can be arranged the specified individual (if there is) that needs which operation medium server 302 the permission that provides for resource information transmission is provided.
More particularly, as chapters and sections A.1 as described in, standard information 536 can comprise two standard sets: another set that set that the domination resource metadata scatters and domination resource content scatter.These set can be with two storeies that separate, use field or the attribute relevant with a common storer or use some other technology to realize.First standard set can be different from second standard set, show with presenting of resource content compare, demonstration that different constraint condition has been arranged resource metadata, perhaps these two set can be identical.Perhaps can use single set to arrange resource metadata, resource content or its both distribution.For ease of following discussion, suppose that standard information 536 keeps single standard set, this single set is used for providing on a small quantity resource metadata and resource content.
In one implementation, resource metadata 534 is associated with individual shared resource, and wherein shared resource can be corresponding to the file of preserving on the resource memory 320.Under this situation, resource metadata 534 can be extracted by " climbing " mistake shared file when serving initialization.According to the number of shared file, this operation can spend the reasonable time amount.In another implementation, resource metadata 534 can be maintained in the Relational database of shared resource storer 532.In also having an example, resource metadata 534 can extract from the whole shared files in the resource memory 320, and is stored in one or more files that separate.(for example, medium server 302 can use a file that separates for each the file system label that uses in the resource memory 320, and wherein each file system label can be corresponding to a drive letter that separates.This regulation is convenient to the collection of resource metadata, especially under the situation that adopts removable label, such as the USB hard disk driver; Medium server 302 only just can be attempted reading resource metadata from a label when its corresponding driving device has been installed at present.) use of Relational database and/or branch open file can reduce the time quantum that is associated with initialization medium server 302.For example, when use dividing the open file strategy, branchs open file can be loaded in the internal memory apace so that resource metadata 534 is provided, and this is with to get over whole resource memory 320 hardy opposite to extract this information.
Similarly, in one implementation, standard information 536 can be associated with the individual shareable resource file that resource memory 320 is provided.Under this situation, the standard information 536 relevant with shared file (belonging to the corresponding shared resource file that resource memory 320 is provided) can be by extracting " to climb " the shared resource file with above-mentioned identical mode during the service initialization.This can spend estimable time quantum.Therefore, in order to quicken this process, medium server 302 can be taked a Relational database strategy and/or one fen open file strategy (being similar to the above-mentioned situation that is used for the storage and the management of resource metadata 534).In one implementation, the Relational database of standard special use and/or branch open file are used to provide standard information 536, and standard information 536 is different from the Relational database and/or the branch open file of the metadata special use that is used to provide resource metadata 534.In another is realized, can use single Relational database and/or branch open file preserve resource metadata 534 and standard information 536 both.In another implementation, resource metadata 534 and/or standard information 536 can continue, and read back from Windows  operating system registration table.
As mentioned above, in one implementation, standard information 536 can be applied to the resource file folder.The medium server user can create that this is related by the one or more user interface pages that show and resource file accompanies the information of pass.In another is realized, standard information can comprise that symbol is associated with the resource in the catalogue 600 (shown in Figure 6) or and catalogue 600 in the individual resource that comprises be associated.Medium server 302 can be at this by showing that comprising the one or more user interface pages that accord with relevant information with resource creates that this is related.Be used to realize the last situation function of (about resource file folder and standard are associated) though following discussion has been described, also can provide similar function to realize back one situation (being associated with standard) about resource being comprised symbol.In both cases, distribution standard can be used to arrange the distribution of resource metadata and resource content.The tissue (interior tissue that is called resource in the medium server 302) that resource comprises symbol generally can not be complementary in (tissue that is called the mutual with it resource of medium server user) by the layering of expection and resource file folder, although may there be relation (for example resource comprises symbol and resource file folder) between these two tissues.
No matter use which kind of method to construct resource metadata 534, medium server 302 can both be made various constraints to the licensed metadata that is kept in the storer, and described storer is used for reservation of resource metadata 534.In an example, use following exemplary constraint condition: (a) file of the resource information that is shared for preservation of medium server user shared resource information must be read permission; (b) file of preserving the resource information be shared must have known media types; (c) if preserving the file that is shared resource information is a hard link or a browser shortcut, the medium server user who attempts shared resource information must have the permission of reading to basic resource; (d) file of preserving the resource information be shared can not be hidden; (e) file of preserving the resource information be shared can not be a hidden folder; (f) file of preserving the resource information be shared can not be stored on the removable driver; And the file of (g) preserving the resource information that is shared can not be on network be shared.Equally, these constraint conditions only are exemplary; Other application can alleviate or remove one or more in these constraint conditions according to the requirement of application-specific.
Continue the discussion of Fig. 5, control directory services module 526 comprises that also one shares resource management memory module 538.This module 538 is generally served as the effect of the information of preserving in the managing shared resource storer 532.For example, shared resource administration module 538 Resource Monitor module 522 notify its resource to be added into, to revise or from resource memory 320 when deleted, upgrade shared resource storer 532.
In one implementation, shared resource administration module 538 is followed the tracks of the medium server user who shares each shared resource file at first.The medium server user that shared resource administration module 538 can be configured to only to have allowed to have set up the shared resource file revises the distribution standard information 536 that is associated with this shared resource file or " not sharing " this resource file folder (just, but remove the shared state of this resource file folder).For example, in one implementation, suppose that the medium server user has set up the access privileges of shared file A, B and C.Under this situation, shared resource administration module 538 can be configured to only allow this user to come to be these file applications distribution standards.Suppose that perhaps file A, B and C have been grouped into not licensed other the shared resource of this medium server user at an interior file.If shared resource administration module 538 is configured to allow the medium server user to file application distribution standard, then these standards are generally still only effective for file A, B and C.Other realization can alleviate these constraint condition in every way.
Provide under the situation of resource metadata 516 in the file of opening in a minute or a plurality of file, shared resource administration module 538 can also comprise the function that is used to keep these minutes open file.This function can comprise that the shared file on " climbing " mistake resource memory 320 is so that search the background process that the shared file of sign on the catalogue 600 changes during the service initialization.This function also can comprise with Resource Monitor module 522 mutual so that detect the mechanism that notice is provided when changing in the resource file folder.Shared resource management 538 can be thrown these files when determining that file separately wants destroyed; Shared resource administration module 538 subsequently can be by getting over the shared resource file so that therefrom search the file that metadata comes reconstruct to separate.Generally speaking, shared resource administration module 538 can adopt multiple other coherence's technology to guarantee that file has separately reflected the metadata of shared resource exactly.
In the operation, control directory services module 526 general consumer survey and the corresponding resource metadatas of shared resource of allowing.More particularly, one typical mutual in, the consumer via the reference mark send a request with browse or search and catalogue 600 in the resource metadata that is associated of the shared resource that provides.Equipment monitor module 520 to be below the mode that describes in detail is detected this request, then in response to this, and content of announcement directory service module 526.Thereby control directory services module 526 responds by any resource that scanning resource metadata 534 satisfies consumer's request with the location.For example, the consumer request content directory service module 526 whole resource metadatas in the specific genre are shown; Perhaps the consumer request content directory service module 526 resource metadata (for example by specify specific keyword be used for ferret out resource) relevant with a target resource is provided.This process may draw the resource metadata item of one or more couplings.Then, control directory services module 526 (if can use) also can be checked the resource metadata of any coupling according to the standard information 536 of preserving in the shared resource storer 532, and picks out the resource metadata item of any coupling that does not satisfy relevant criterion.(may forbid this regulation, make standard information inoperative in the distribution of resource information.) then, control directory services module 526 can be formatted as an XML message to the coupling resource metadata that row exist, and then this XML message is sent to the consumer.The resource collection (comprising symbol) that this resource metadata can be described individual coupling resource and comprise individual member resource such as resource.
The reference mark equipment that receives can become a display format (for example HTML) to the XML message conversion, shows that then this information supplies the consumer to watch.This demonstration can provide the media tabulation that has identified the coupling resource metadata.Then, the consumer can order media display device 306 to play the resource content that is associated with one or more items in the media tabulation.This can be sent to a selected display device (such as display device 306) by the URLs (such as URL) that selected item in handle and the media tabulation is associated and carry out.These URLs are sent to by medium server 302 in consumer's the XML message and specify.(then, notice once more that the result of browse operation can return resource and comprise symbol, for example resource comprises the symbol tabulation; Resource comprises to accord with having maybe may not have URLs associated therewith, if do not have, they self can not be displayed on the display device place for playback, can be by playback although comprise the individual resource that identifies in the symbol.)
Another assembly of intermediary service module 502 is a control panel com object 540.Generally speaking, this object 540 configuration data of allowing control panel modules 506 to search and be provided with in the intermediary service module 502.In an exemplary realization, object 540 is a The Component Object Model (COM) objects.Generally speaking, com object is carried out one or more tasks.Just, com object is implemented function via an interface, and application program can be called this interface and carry out its preset task.
Under the environment of medium server 502, control panel module 506 is mutual via control panel com object 540 and intermediary service module 502.For serving as this role, control panel com object 540 is carried out following exemplary task.At first, control panel com object 540 equipment that allows control panel modules 506 to enumerate to be resumed, the current state (for example they are licensed, refusals or had not only had licensed but also be not rejected) of searching them, obtain the facility information that is used for filling UI (such as the manufacturer of equipment, icon, model or the like) and permission or refusal equipment.Secondly, control panel com object 540 allows control panel module 506 managing shared resource Folder Lists, and described shared resource file comprises shareable resource of preserving on the resource memory 320 and any relevant distribution standard information 536 that is associated with these resource file folders (such as the list of devices of the licensed reception resource information relevant with these shared resource files).For this reason, control panel com object 540 allows control panel modules 506 to search the present resources shared Folder List distribution standard information 536 relevant with them, so as not share these resource files folders so as to create new shared resource file and/or the distribution standard so as to revise and a shared resource file press from both sides relevant distribution standard, or the like.At last, when new reference mark on the intermediary service module 502 discovery UPnP networks 314 or media display device, its uses control panel com object 540 and control panel host's callback object 542 (below will go through) to notify control panel module 506.
Switch (FUS) in order to adapt to quick user, it is movable simultaneously that medium server 502 allows a plurality of control panel modules 506.Yet in one implementation, medium server 502 allows each terminal server session that the control panel module 506 of an activity is only arranged.
The b.CDDM module
As mentioned above, the non-service module 502 of media moves (user environment of more specifically saying so and being prevented) in the local service user environment, and CDDM service module 504 moves in the local system user environment.The local service user environment is compared with the local system user environment generally more limited access privilege.Thereby intermediary service module 502 depends on CDDM service module 504 and carries out a series of functions that it self does not have right to access to carry out.According to an exemplary realization, the on commission privileged functions of CDDM service module 504 of giving is described below.
At first, when equipment monitor module 520 detected new media display device 306 or reference mark 316 on network 314, CDDM service module 504 was carried out the role of starting control panel module 506.This makes the medium server user can permit or refuse this equipment.Licensed equipment is allowed to visit and the corresponding resource information of the shared resource of medium server 302 (resource metadata and resource content) subsequently.CDDM service module 504 is situation time starting control panel module 506:(a below also) the medium server user signs in on medium server 302 computing machines (or as described below, link the terminal server session that the front has been set up on this computing machine again); And (b) medium server 302 fronts have detected not by any medium server user permission or the equipment refused.
In addition, CDDM module 504 starting control panel modules 506 are so that warning subscriber-related various mistakes of medium server and condition.For example, CDDM service module 504 can be warned the medium server user: do not find any network interface of IP address in the IP address range (for example in private IP address scope or automatic IP address scope) of admissible former configuration.Perhaps CDDM service module 504 can be warned the medium server user: when resource information sharing functionality 322 is served not in operation, and the deleted or rename of the shared resource file on the resource memory 320.Generally speaking, CDDM service module 504 Loading Control panel module 506 under the situation of movable at present login user.CDDM service module 504 starts control panel module 506 by the mark of reception login user and by calling a CreateProcessAsUser function.Yet before doing like this, it guarantees control panel module 506 off-duty still in the terminal server session of at present movable login user.
Secondly, CDDM service module 504 is regulated the access privileges that is associated with a resource file folder of being preserved, and makes that intermediary service module 504 can the function (such as structure resource metadata 534) of access resources file to carry out its regulation.This can followingly carry out: by changing the access control list (ACL) relevant with shared resource file folder to allow the visit of local service user environment.In an exemplary realization, this has given reading and writing and the deletion visit of local service user environment for resource file folder content.(just, visit is write and deleted to resource file folder so that give the local service user environment through ACL except read access; This is because some media types should be decoded before they are available on UPnP network 314.Be used for the instrument of file decoding has been created temporary file in the catalogue that comprises described file sometimes.Temporary file then should be deleted.)
The 3rd, CDDM service module 504 monitors the computer system that is used to realize medium server 302 is logined or published to medium server 302 when to detect new intermediary service user.It also confirms to sign in to the identity of the medium server user on the medium server 302.Just, as mentioned above, intermediary service module 502 can according at present on the medium server computing machine the movable identity of logining the medium server user, limit sharing of resource information.Thereby the user profile that intermediary service module 502 can use CDDM service module 504 to be extracted considers that the medium server user that logins of present activity determines whether it has the permission of shared resource information.(by the mark that uses the WTSQueryUserToken function to search to login the medium server user and by using the GetTokenInformation function to search medium server user's SID from mark, CDDM service module 504 can be determined medium server user's identity.)
C. control panel module
Control panel module 506 provides and has made the medium server user can permit or refuse function to the mandate of the new equipment that is added into UPnP network 314.Control panel module 506 also allows medium server user definition shared resource file and relevant distribution standard.As mentioned above, a standard can limit resource information (for example resource metadata and resource content) and only spread to appointed equipment.Whether the specified individual that another standard can make the distribution of resource depend on and use medium server 302 clearly or impliedly permits shared resource information.If the individuality of appointment only signs in on the medium server 302, then he or she just is regarded as explicit permission (in one implementation), and individual session is movable at present.Control panel module 506 can be carried out above-mentioned task by a series of UI demonstrations (the UI page).These UI are presented among the following chapters and sections B and will be described in further detail.Control panel module 506 can realize (program that small routine is promptly carried out) with a small routine in application environment, and can move in the environment of logining the medium server user.
Medium server 302 can activate control panel module 506 in two ways.One, the medium server user can manually activate control panel module 506.Its two, intermediary service module 502 can automatically be started control panel module 506, for example in case when new display device adds UPnP network 314 the advice media server user.
In one implementation, medium server 302 provides the single instance of control panel module 506 in each terminal server session.Thereby when 506 startings of control panel module, it confirms that another example of control panel module 506 does not move as yet in this terminal server session.Then, control panel module 506 determines that whether intermediary service module 502 is in operation; If not, then control panel module 506 makes its starting.Then, the control panel module 506 common control panel com objects of creating by intermediary service module 502 (top description) host 540.At last, control panel module 506 is created its host's of institute client computer callback com object 542; It then calls the Initialize () function that is associated with control panel com object 540, and client computer callback object 542 is passed to this function.Intermediary service module 502 uses client computer callback objects 542 to notify the control panel module 506 relevant specific incidents, such as service close, back-end data changes or find new reference mark or media display device on the UPnP network 314 when control panel 506 operations.
A.4. the user is switched (FUS) regulation fast
The FUS technology for the user-dependent various computing session of different response medium servers between switching a kind of technology easily is provided.For example, this technology allows the first medium server user to link a computing machine and moves an application program, and the second medium server user of Another Application program is and then moved in the back.When the second medium server user linked computing machine, computing machine can be preserved Application Instance and the desktop setting relevant with the first medium server user conversation.When the first medium server user links computing machine once more, computing machine can recover when the first medium server user disconnects and his or her computer talk is associated application program and setting.By a plurality of Application Instances and the desktop setting that record and continuous computed different response medium server user are associated, the FUS technology can be in the above described manner between any amount of medium server user repeatedly.A kind of exemplary commodity that FUS is provided are the WindowXP  operating system that is provided by Microsoft (Redmond, Washington).On the contrary, in traditional calculating solution, before the permission second medium server user linked computing machine, computing machine can require the first medium server user to publish, thereby stops the first medium server user's application when the second medium server user is linked same computing machine.
Medium server 302 is used a plurality of examples that the FUS technology allows to exist simultaneously control panel module 506.For example, as mentioned above, control panel module instance 506 is associated with medium server user A 508, and control panel module instance 510 is associated with medium server user B 512, and control panel module instance 514 is associated with medium server user C 516.Yet, produced all difficulties to above-mentioned UPnP medium server environmental applications FUS technology.These chapters and sections have been described an exemplary FUS solution, and it has solved these problems in above-mentioned UPnP medium server 302 environment.
At first, though as mentioned above, medium server 302 allows to move simultaneously more than example of control panel module 506, yet medium server 302 only allows each terminal server session that a control panel module 506 is arranged.In order to implement this feature, medium server 302 requires each control panel module 506 to create this object and its (by calling Initialize () function) of initialization before using com object 540.When calling the Initialize function, caller should provide client computer callback com object 542.
More particularly, when client calls Initialize () function, intermediary service module 502 is extracted the terminal server session ID of client computer from the imitation mark of client computer.Then, intermediary service module 502 determines whether this session id is associated with another client computer.If whether still then intermediary service module 502 calls in the callback object 542 of this client computer to determine this client computer " survival ".If it is movable that client computer is still, then refuse new client computer.Otherwise intermediary service module 502 is accepted the callback object 542 of new client computer and preservation client computer for using in the future.
Secondly, because medium server 302 has held a plurality of medium server users now, therefore it can be configured to notify a more than listed medium server user when new equipment is introduced network 314.Medium server 302 has also solved does not have the medium server user to sign in to situation on the medium server 302 (but perhaps at discovering device time medium server user logined inertia) when finding an equipment.In these cases, medium server 302 is postponed the existence of the relevant new equipment of advice media server user, till medium server user login or continuing an existing session.
The 3rd, control panel module 506 is recognized: other example of module (for example example 510 and 514) activity simultaneously and modification global data, global data is such as the licensing status or the shared resource Folder List of equipment.In order to solve this situation, the relevant COM client computer callback object 542 of whole client computer of medium server 302 notice and activity when arbitrary client modification global data.
At last, medium server 302 also comprises the mechanism of the what is called swindle application program that is used for eliminating possibility " disguising oneself as " control panel module 506.Fig. 5 illustrates an exemplary this swindle application program 544.More particularly, medium server 302 is embodied as a privately owned API (because it is coupled the intraware in the medium server 302) to the API 518 between intermediary service module 502 and the control panel module 506.Individuality may be attempted API 518 is carried out reverse engineering, allows swindle application program 544 to call in intermediary service module 502 and alter its configuration data.
In order to address these problems, when client computer had successfully been called the Initialize () function relevant with control panel com object 540, intermediary service module 502 had also been distributed unique client computer ID to each client computer.More particularly, intermediary service module 502 notifies client computer relevant this ID by calling the function of being correlated with the callback object 542 of client computer.Intermediary service module 502 also writes down the ID that is distributed.Then, when client computer was called service after a while once more, client computer was provided its client computer ID by expection.Intermediary service module 502 detects the ID that caller provides at present, and this ID is compared with the client computer ID that writes down previously.Just, thereby intermediary service module 502 can identify client computer independently by the terminal server session ID that searches client computer mark from its imitation, and therefore the client computer ID that be provided by client computer is provided.If these ID are complementary, 502 permissions of then intermediary service module are called; Otherwise intermediary service module 502 refusals call.
As mentioned above, a plurality of users may sign in on the medium server 302 simultaneously.Medium server 302 can be configured to based on from user-dependent respective client mark the terminal server session ID that extracts distinguish these users.
Thereby client computer ID has prevented swindle application program 544 " deception " control panel module 506.Use client computer callback object 542 notify relevant its ID of client computer with respect to swindle application program and provide extra guaranteeing (with return ID as Initialize () but the selecting technology of the argument of function compare).This is because swindle application program 544 must satisfy the additional difficult problem that COM client computer callback object 542 is provided when calling Initialize () function.
Medium server 302 can exchange other confidential information by requiring intermediary service module 502 and control panel module 506 before these two inter-modules foundation are formally mutual, thereby additional safe floor is provided.
A.5. add-on security is stipulated
Above-mentioned resource sharing feature (realizing with standard information 536) is the most common to be the resource information that is used to stop authorized user to visit those medium servers user to wish to keep privately owned (for example, any reason that proposes in using owing to the family of discussing at reference Fig. 4 is relevant).Similarly the private ownership problem also be present in dormitory use in (generally be that UPnP network 314 is applied to have arbitrary setting of authorized users relatively in a large number, but wherein the medium server user still wishing selectively specific resource information to be distributed on a small quantity only subclass of the mandate participant of this UPnP network 314).
Above-mentioned resource sharing feature also provides a kind of resource that is used to protect UPnP network 314 not by the mechanism of entities access without permission.Just, resource sharing feature limits resource spread to a known Device Domain.The resource of therefore, forbidding this known domain device access UPnP network 314 in addition.Specify the clear and definite of medium server user or hint permission by the resource information transmission is depended on, the resource sharing feature also provides additional assurance.
Yet the resource sharing feature can not solve each known safe that UPnP network 314 faced and threaten, particularly about without permission (with authorize relative) user's situation.And, the security threat that the unauthorized user caused is dynamic and opportunistic in nature, like this, the medium server user has such worry: the resource sharing resource may not stand the unpredictalbe challenge in future to 314 securities of UPnP network.
Above-mentioned worry guarantees to come the supplemental resources sharing feature with additional security mechanism, and described additional safety mechanism is designed to protect the resource information of UPnP network 314 especially not by unwarranted user capture.Addition thereto also can be expectation, does not receive the privately owned resource information that is not used in their consumption so that further guarantee authorized user.More particularly, UPnP network 314 faces two safety issues at least.The resource information that first safety issue may " tapping into " UPnP network 314 be provided by entity without permission and causing.This entity may be in UPnP network 314 operate outside, and attempt tapping into UPnP network 314 via cable modem, DSL modulator-demodular unit, dial-up connection, wireless connections or some other coupling strategy.Second problem is by authorizing or unauthorized entities may be distributed to a large amount of audiences beyond the UPnP network 314 original scopes to resource information and causes.This is called " ultradistribution " scene.Ultradistribution can be done it on purpose or be unintentional.
These chapters and sections have been described the multiple technology that is used to solve top two problems.Any of these technology can be used separately, just, do not have other technology and uses.Medium server 302 also can be used any combination of these technology, comprises any two, three, four of these technology or the like combination, alleviates these problems so that guarantee UPnP network 314.In fact, in one implementation, medium server 302 can be used whole technology.Medium server 302 or other management interface also can randomly be given the medium server user enabled and forbade these technology individually by the user interface demonstration of suitable configuration ability.
Fig. 7 illustrates a UPnP and uses, and this UPnP application can be served as the carrier (vehicle) that is used to describe many security techniques that medium server 302 provided.This application generally is modeled after application shown in Figure 4.This application is applied to during this locality is provided with, such as family 702.Family 702 comprises a plurality of rooms.Each room can comprise one or more UPnP equipment.In the illustrative case of Fig. 7, family 702 comprises via the medium server 704 of router 718 with equipment 706-716 coupling.Router 718 also is coupled to another router 720.Router 718 can comprise rigid line connection and/or the wireless connections that are used for medium server 704 is coupled to equipment 706-716.For example, an exemplary equipment (for example equipment 714) is communicated by letter with router 718 via wireless coupling (for example RF, infrared or the like).
Fig. 7 also illustrates the mutual representative sample of UPnP network 314 in uncommitted and the family 702, comprises example 722,724 and 726.Entity 722 use equipment 728 are attempted mutual via radio communication and the UPnP of family network 314.This equipment 728 may represent to have the media display device of wireless connections, perhaps similar device.Entity 724 use equipment 730 are attempted via a network (such as wide area network) and UPnP network 314 mutual.For example, this equipment 730 may be represented via internet 732, modulator-demodular unit 733 and the router 718 arbitrary class computer equipment (for example personal computer, server or the like) (perhaps in another implementation, being directly coupled to medium server 704 without router 718 routes via internet 732 and modulator-demodular unit 733) with medium server 704 couplings.Modulator-demodular unit 733 can be the modulator-demodular unit of a dialing modem, broadband modem or other type.At last, entity 726 use equipment 734 are attempted via router 720 and UPnP network 314 mutual.These unauthorized entities and equipment only are extensive dissimilar invadors' the explanations of attempting the resource of visit UPnP network 314.
In order to hinder above-mentioned entity, UPnP network 314 can comprise one or more following mechanism.
The a.IP address limitation
(Fig. 3's) resource information sharing functionality 322 can be limited to a predetermined non-public address scope, and this has the effect of getting rid of the public broadband traffic.In an exemplary realization, the presumptive address scope is 192.168 scopes (for example being) and automatic IP scope (for example being) from 192.168.0.0 to 192.168.255.255 according to an exemplary realization from 169.254.0.0 to 169.254.255.255 according to an exemplary realization.Other exemplary non-public address scope is 10.0.0.0 to 10.255.255.255 and 172.16.0.0 to 172.31.255.255 (according to a kind of exemplary realization).Can use any of these scopes, perhaps can use the combination (maybe can use some other scopes) of these scopes.It is (" can not use " gap for example can be arranged in any these scope) of adjacency that these scopes need not.Generally speaking, above-mentioned scope can change " end points " of change scope (for example by) according to many relations.
For example, for use 192.168 and automatic IP scope are described.Select this scope to be because: many home network routers commonly used all have the built-in Dynamic Host Configuration Protocol server of address in a small amount of distribution 192.168 scopes.And the most of routers on the broadband network are designed to only delete the message of having specified the target ip address in 192.168 scopes.Thereby resource information sharing functionality 322 can be in response to any request with 192.168 extraneous addresses, and any message in 192.168 scopes generally all is not suitable for propagating by the router of public broadband network.This can cause producing a safety wall between privately owned UPnP network 314 and public broadband network or dial-up connection.Fig. 7 illustrates this notion by a visit symbol 736 that blocks is shown between medium server 704 and internet 732.The visit of this blockade stops in the family 702 or the 702 outer people of family use medium server 704 to come by its resource of broadband network ultradistribution.This regulation also stops in the family 702 or the 702 outer people of family tap into UPnP network 314 in unwarranted mode.
In order to realize this feature, (Fig. 5's) resource transmission module 524, control directory services module 526 and equipment monitor module 500 can all be configured to only monitor in the presumptive address scope interface and/or abandon the request of starting from other IP address.Resource information sharing functionality 322 can provide forbids that medium server user (or any other people) revises the various mechanism of this presumptive address scope, such as by this address realm being carried out hard coded rather than make it become the medium server user to dispose addressable parameter.
The b.MAC address validation
As mentioned above, resource information sharing functionality 322 uses medium access agreement (MAC) address or the miscellaneous equipment specific information of equipment to verify this equipment.In this technology, resource information sharing functionality 322 at first identifies the IP address of the new equipment that is added into UPnP network 314.(new equipment at first detects with the equipment monitor module 520 of Fig. 5.) then, resource information sharing functionality 322 uses the SendARP functions that the IP address translation is become MAC Address, described SendARP function be the Internet protocol by the use ARP(Address Resolution Protocol) of Microsoft help provided.As discussed above, resource information sharing functionality 322 then can use (below) user interface that will discuss among the chapters and sections B shows to come the existence of the relevant new equipment of advice media server user.If the medium server subscriber authorisation this equipment, then when resource information sharing functionality 322 was made UPnP request (such as browsing or searching request) subsequently or made the relevant request of content (such as HTTP GET request), resource information sharing functionality 322 used IP and MAC Address to verify this equipment.Request from unwarranted equipment is left in the basket.It is favourable that the MAC Address of use origination request is come Authentication devices, because only the IP address is insecure (because the IP address can change according to the availability of Dynamic Host Configuration Protocol server).
This mac authentication technology is particularly useful when stoping wireless device (such as equipment 728) to obtain unwarranted visit to UPnP network 314.For example, drive and use simultaneously accessing wirelessly equipment 728 as sporocarp 722 by family 702, then resource information sharing functionality 322 may show a message pop-up, and whether this message pop-up inquiry (medium server 704) medium server user he or she wish to authorize this equipment.Unless the medium server user selects permits access, otherwise resource information sharing functionality 322 is just refused the visit to this equipment 728.
Mac-address authentication is most valuable when being used in combination with other security measures, and described other measure is such as IP address limitation (describing in the sub-in the above chapters and sections (a)).For example, do not have the mac authentication of IP address limitation may be not therein medium server 704 directly link sufficient protection (perhaps when medium server 704 is coupled to external function via dial-up connection) be provided in the network configuration of broadband network.Do not have the IP address limitation, resource information sharing functionality 322 just can detect " adjacent " equipment outside the family, and whether these equipment of inquiry medium server user should be verified; This may not can cause security risks, but it becomes trouble owing to the frequent demonstration of message pop-up.And, suppose that broadband (or dialing) modulator-demodular unit links one on the network of Internet Server provider and act on behalf of the ARP(Address Resolution Protocol) router.Under this situation, during any of all devices that is routed by the proxy ARP router on resource information sharing functionality 322 checking subnets, resource information sharing functionality 322 can be verified all devices effectively.
C. subnet restriction
In an exemplary realization, resource information sharing functionality 322 requires its net computer to operate on the same subnet that it operated.Because this restriction, resource information sharing functionality 322 has ignored that UPnP action that the client computer from its local subnet outside receives is asked and resource content is searched request.This can cause further reduction to be operated in the possibility that UPnP network 314 extraneous equipment can be visited its resource.
Notice that above-mentioned mac-address authentication program does not stride across sub-net boundary and works, do not send the ARP grouping because the ARP agreement does not stride across sub-net boundary; Therefore, if use mac-address authentication, then this technology also can from essence performance constraint to single subnet.But use resource information sharing functionality 322 to implement the subnet restriction and be different from the hint subnet restriction that SendARP () is provided; For example, back one technology may obtain damaging owing to employed routing table in the modification technology.
Be also noted that under the default situation that SSDP service (for example Microsoft provide service) is restricted to subnet to broadcasting SSDP declaration on Windows  operating system platform.Just, UPnP equipment uses SSDP to come by their existence of network declaration, and therefore, for default setting, resource information sharing functionality 322 can not detected by the UPnP equipment on other subnet.Yet this SSDP feature is different from resource information sharing functionality 322 performed subnets and limits, because preceding a kind of technology depends on the configurable setting of registration table.Equally, SSDP declaration is not limited to 192.168 and the automatic IP address scope.
The d.TTL restriction
Resource information sharing functionality 322 can limit term of life (TTL) parameter so that further reduce the mutual possibility of resource information of permission unauthorized entities and UPnP network 314.In an exemplary realization, the TTL parameter is an Internet protocol (IP) parameter, and this parameter is generally corresponding to the number that is sent to the node that traveled through the process of destination node (for example IP 3rd level node, such as router or the like) in message from source node.Each IP grouping comprises a TTL parameter.In the environment of UPnP network 314, the TTL parameter may limit the route of the message that is sent by content recovery service module 526, and described message comprises the resource metadata that is associated with shared resource.Perhaps or in addition, the TTL parameter also can limit the route to the response of resource content request (such as HTTP GET message).For example, be made as numeral 3 TTL parameter and can be enough to forbid the distribution of resource information on a public broadband network (because generally can make message be exposed to router more than three to the transmission of a destination) by the public broadband network.Resource information sharing functionality 322 is restricted to UPnP network 314 under the exemplary cases of the single network that may only comprise a router therein, and the TTL parameter can be set as to hang down and reach 1.In an exemplary realization, resource information sharing functionality 322 can be carried out hard coded to the TTL parameter, makes it be not easy to be changed by medium server user (or by arbitrary other entity).
For example, notice the exemplary cases of Fig. 7, wherein the TTL parameter has been set as 1.This is provided with can forbid that medium server 704 is distributed to entity 726 to resource metadata and resource content, because this entity 726 is via being coupled to medium server 704 more than a router.Therefore, TTL is provided with the visit that has stoped effectively router 720, shown in the visit symbol 738 that stops.This wideband transmit the TTL parameter is made as a low value also can forbids the distribution of resource information on internet 732, because can make many intermediate routers be routed to its final destination.
E. equipment and session restriction
Resource information sharing functionality 322 can limit the UPnP number of devices of authorizing at any one time is restricted to a predetermined number (such as be 10 equipment in an example).In one implementation, the UPnP equipment maximum number of appointment can comprise can with all types of equipment of UPnP network coupled, comprise media display device, medium server, reference mark or the like.In another implementation, the appointed equipment maximum number can be only relevant with a class or multiclass UPnP equipment, such as only relevant with the media display device.Resource information sharing functionality 322 can be the numerical limitations of concurrent resource content service conversation (such as concurrent http session) predetermined number (such as be 10 sessions in an example) also.Resource information sharing functionality 322 can be carried out hard coded to these two parameters (being maximum device number and maximum number of sessions), so as to prevent medium server user (or arbitrary other entity) thus easily changing these parameters avoids this restriction.
Under the environment of Fig. 7, the UPnP of family network 314 can be restricted to 5 to number of devices, and this can stop equipment 716 access resources information (resource metadata and resource content).This unaccepted visit is visited symbol 740 marks by stoping in Fig. 7.Even this regulation assists in ensuring that authorized medium server user and can not use UPnP network 314 that resource is distributed to a large amount of receivers (for example under the ultradistribution scene).This regulation also generally can stop the trial of distributed resource metadata and resource content on internet 732, and existing together to the public broadband transmission comprises that a large amount of participants attempt the degree of access shared resources.
F. limit candidate device and be used to verify the UPnP action
Resource information sharing functionality 322 also can be only being only limited to alternately such equipment: described equipment has called the UPnP action or has used SSDP to announce they self as the media display device on UPnP network 314.(last restricted application is in do not announce they self but the mutual UPnP reference mark of licensed and UPnP network 314 on UPnP network 314.) these restrictions help to get rid of the mutual unauthorized entities of attempt and resource information sharing functionality 322.Just, potential " hacker " can need to obtain also to move suitable UPnP software, so as with 322 resources shared information interactions of resource information sharing functionality; This requirement has proposed to forbid to the 314 unwarranted visits of UPnP network.For example, because these restrictions, the hacker can not be only by opening Web browser and send and a shared corresponding URLs of announcing previously of resource to resource information sharing functionality 322, thereby 322 resources shared contents of access resources information sharing function.But equipment must confirm at first that it is the authorized equipment of correct UPnP, for example by sending an initial UPnP action request (for example, browsing or searching request corresponding to); Only when permission equipment uses resource content to search request access resources content.(notice that in an exemplary realization, the equipment of attempting the retrieve resource content under the not licensed in front situation even is not presented to the medium server user for approval, even they are newfound equipment; Just, these equipment can be left in the basket.)
As further safeguard measure, resource information sharing functionality 322 can require each equipment oneself to be declared as the media display device with unique device number (UDN).In one implementation, resource information sharing functionality 322 confirms that the UDN of display device is different from present or the UDN of front detected other media display device on UPnP network 314.If the UDN of resource information sharing functionality 322 and detected UDN coupling, then it can refuse the visit to the media display device quietly.And in case the equipment that detected is the media display device, resource information sharing functionality 322 just can require its UDN to keep not being changed.If resource information sharing functionality 322 detects a variation, then it can refuse the visit to equipment quietly.And if a media display device has a sequence number, then resource information sharing functionality 322 just can require this sequence number also to keep not being changed.If resource information sharing functionality 322 detects the variation in the sequence number, then its silent refusal is to the visit of equipment.
G. URLs withdraws from
As mentioned above, resource information sharing functionality 322 uses URLs (being such as but not limited to HTTP URL) to define the position of its resource.The component part of each URLs is the resource ID (for example ResourceID) of sign related resource content.Resource information sharing functionality 322 can provide further safeguard protection by the URLs that periodic variation identifies its resource content item.(in the following discussion, term " resource content item " is meant the resource content that is associated with the selected resource of preservation in the resource memory 320; Adding term " item " only is for phraseological convenience and clear.) this can carry out by the resource ID of periodic variation identifying resource content item.This protection meeting is made time restriction to the use of URLs.For example, the consumer can carry out that a UPnP browses or the UPnP hunting action is searched one or more URLs.Yet because these URLs of resource information sharing functionality 322 periodic variations, so the consumer is compelled to use a resource content to search request (URLs that use is searched) in mode relatively timely and comes the retrieve resource content.If the consumer waits for long, these URLs cocktail parties become out-of-date and invalid.Thereby if URLs is leaked to unauthorized entities, then these URLs can be all ineffective for a long time; This has limited the open infringement of not expected by URLs that is caused.
H. various resource transmission module 524 security measures
Above-mentioned several mechanism helps resources conseravtion transport module 524 (for example can realize with http server) not to be subjected to various security threats.For example, rely on the measure of IP address limitation, resource information sharing functionality 322 is only started resource transmission module 524 on the network interface in privately owned scope (for example 192.168 scopes) or automatic IP scope.And, dependence equipment and session restriction, the numerical limitations that resource information sharing functionality 322 is searched session to resource content is a predetermined number (for example 10 sessions), and is the numerical limitations of institute's permitted device one predetermined number (for example 10 equipment).Rely on the TTL restriction, resource information sharing functionality 322 can be the TTL parameter limit one predetermined number (such as 3), thereby has limited router number related when the resource content response is provided.Rely on the UPnP motion limits, resource information sharing functionality 322 can be only just served these requests when the resource content request is started from the equipment of permitting previously; It can ignore all other requests.(more particularly, resource information sharing functionality 322 need not to show that to the medium server user new equipment of attempting the access resources content is for permission.) and, resource information sharing functionality 322 only just can share resource content when the medium server user shares the resource content of the resource (for example file) that to be licensed for access on the file system; This makes the medium server user of the resource that is rejected on the access media server 302 can not play its content on the equipment on the UPnP network 314.Resource information sharing functionality 322 also can determine to share the specific equipment that whether is restricted to, perhaps based on sign in in the medium server system particular individual and by preconditioning.
Resource transmission module 524 can also comprise multiple other security measures.For example, search request or do not read the resource content response in timely mode if client computer is opened a communication jack and write resource content partly, then resource transmission module 524 can be configured to " overtime ".In an exemplary realization, resource information sharing functionality 322 can be these overtime being made as 5 minutes.These are overtime can easily to be changed their value so that prevent medium server user (or any other people) by hard coded.
According to another feature, resource transmission module 524 can be searched request to resource content and be restricted to pre-sizing, such as about 4000 characters.
According to another feature, resource transmission module 524 can be confirmed URLs.Affirmation must guarantee that URLs meets predetermined form, such as: http://machine ip:port/ResourceID (that is, under the situation of using HTTPURL).Request header can be analyzed and confirm to resource transmission module 524 also modestly.
A.6.URL parametrization is stipulated
Again, with reference to Fig. 3, notice from medium server 302 retrieve resource information to comprise four main information exchanges.In first exchange (by path 324 expressions), the consumer can use reference mark 316 that UPnP inquiry is sent to medium server 302.This UPnP inquiry can be constituted as a browse request or a searching request.In browse request, consumer's purpose is the set of the resource metadata that is associated with resource that medium server 302 is provided of scanning.In searching request, consumer's purpose is more targeted, for example, and in order to search specific resources metadata that the medium server 302 that identified by various search terms provided or the like.
In either case, in second exchange (by path 326 expressions), medium server 302 responds by showing the consumer's requested resource metadata that satisfies that is associated with one or more resources (for example file in the resource memory 320).This resource metadata can comprise and each relevant high layer information of coupling resource, such as title, school, artist, creation date or the like.This resource metadata also can comprise the URLs (such as URL) of the corresponding network position that sign therefrom can the retrieve resource content item.For ease of discussing, in these chapters and sections, suppose the special use of URL in conjunction with http server; Yet principle described here can be applied to the URLs of other type and relevant resource content server.(in the following discussion, term " resource content item " is meant the resource content that is associated with the selected resource of being preserved in the resource memory 320; Adding term " item " only is for phraseological convenience and clear.)
Suppose that after having watched resource metadata the consumer selects a corresponding resource content item to be presented on the display device, such as display device 306.Under this situation, in the 3rd exchange (by path 330 expressions), the consumer makes display device 306 send a request to medium server 302, and indication medium server 302 is searched selected resource content item.For example, the consumer can be sent to display device 306 to the URL that is associated with selected content item.Display device 306 has specified the HTTP GET of selected resource content item to ask to carry out corresponding by sending one to medium server 302.This HTTP GET request comprises with the corresponding URL of selected resource content item (being sent to the there by the reference mark).
At last, thus medium server 302 ask in response to HTTP GET by searching selected resource content item in the specified position of URL.In the 4th exchange (by path 332 expressions), medium server 302 then offers display device 306 to selected resource content item.
The remainder of these chapters and sections has been described a kind of technology that is used to improve the efficient of above-mentioned message exchange.
At first, notice that resource memory generally can preserve file with predefined original media form.Term " media form " comprises any feature relevant with a resource, described feature affects it how to be saved and/or to be presented.For example, the media form can specified format type (for example various types of compressions and unpacked format), format resolution or the like.For example, resource memory 320 can be preserved an image file, and its Format Type is RGB, and format resolution is 640 * 480.Thereby, be 640 * 480 image if display device is configured to handle the size of representing with the rgb format type, this display device can show this image file.In addition, medium server 302 can comprise and being used in response to consumer's request the function (not shown) of a resource from its original media format conversion to another media form.Perhaps resource memory 320 can be preserved a plurality of resource versions of representing with the original media form of corresponding difference.Both of these case any down, can be conceptualized as with different media forms that single resource is associated and to comprise a plurality of individual resources.Therefore, for each individual resource, medium server 302 can be conceptualized as the selective property of a plurality of resources distribution that provides corresponding with different media forms.
Technology described here provides a kind of consumer of making to search to meet the mechanism of the resource content of specifying the media form.Medium server 302 can be finished this target by different way.For the frame of being quoted, a kind of mode of finishing this target is to make medium server 302 announce respectively the different URL that are associated with the different media forms of resource content item.For example, the first exemplary URL can the specified format type be that RGB, format resolution are 640 * 480 resource content item.The second exemplary URL can specify same resource content item, but current Format Type is that YUV, format resolution are 1280 * 1024.Other exemplary media form is corresponding to the version of various icons and thumbnail size, and multiple standards monitor resolution form.Yet this method has multiple shortcoming.For example, the URL in a large number that it requires medium server 302 management and announcement and different media format permutation (permutation) to be associated, described different media format permutation is associated with single " father " resource content item.After this point was provided, many URL can make UPnP network 314 become complicated, thereby may increase the network traffic on the UPnP network 314, and produce other possible problem.
More particularly, in one implementation, medium server 302 can by provide for each coupling resource one so-called " resource (res) " thus element in response to browsing or search for UPnP request." res " element comprises and is identified at the URL that where can find the resource content item relevant with mating resource.Above-mentioned solution can be specified and the corresponding a plurality of media forms of a coupling resource items by different way.For example, medium server 302 can provide a plurality of res elements, and each res element all is associated with a corresponding media form (each all has the URL of self).Perhaps, medium server 302 can mate resource for each and produce a plurality of occurrences, and each occurrence is associated with a corresponding media form (URL with himself).These two solutions all can be introduced various complexities to UPnP network 314, may influence its performance.
Equally, in above-mentioned solution, medium server 302 only provides relevant with one group the corresponding one group of limited URL of the media form of supporting.Yet the limited media form that is provided of this group may not satisfy the demand of Resource consumers.
Below in the technology of Biao Zhenging, medium server 302 can be in response to the browsing or searching request and be that an available resource content item is announced single URL of consumer, and this single URL can comprise the variable element of having carried out the individual features attribute that can be modified for the scope of describing different media forms.Just, medium server 302 can be announced this URL with the original default value for its variable element, and described original default value has reflected determines that wherein the resource content item is by the media form of best image." best " default media form determine to be based on one or more standards.These default parameters can be revised so that adapt to the employed local vector form of media display device in reference mark (for example the reference mark 316), perhaps revise based on some other Consideration.For example, reference mark 316 can be moved by the GetProtocolInfo UPnP that is provided by its connection manager service module, thereby determines the ability that presents of media display device 306.Then, a media form (or more than a media form) can be selected in reference mark 316, and the display capabilities of this media form and display device 306 is compatible and present format compatible with (collecting from medium server 302 returns to the resource metadata at reference mark 316) that resource self can be supported.Can be representing under the situation of resource content that more than a kind of media form reference mark 316 can warn the consumer to do like this, and allow the consumer to select a media form.For the ease of this task, reference mark 316 can convert the media format information of being supported to information that the consumer understands easily.Perhaps, reference mark 316 can be carried out automatic analysis and select (for example, having selected consideration of what form or the like based on the consumer in the past) in multiple possible form.
In either case, revise parameter and all created once the URL that revises, this URL then can be forwarded to attend the meeting and show the display device (for example display device 306) of resource content.Then, display device 306 can be by should submitting to medium server 302 by modified URL, thereby search the corresponding resource content with modified URL.Perhaps, display device 306 can only be beamed back medium server 302 (for example, by original URL is sent to display device 306, display device 306 is transferred to it medium server 302 then) at following original URL of the situation of not revising its parameter.
Medium server 302 is by reading parameter, with the specified media form form of URL intrinsic parameter the resource content item is offered media display device 306 then the URL that offers it from media display device 306, thereby responds.This operation requires medium server 302 that selected resource content item is become by the specified media form of the parameter of URL from original media format conversion.Perhaps, this operation resource content item that can only require medium server 302 to provide to be preserved and not to its make amendment (under the situation that parameter indicating there is no need to make amendment).Perhaps, medium server 302 may have been preserved the resource content item with multiple different media form; Under this situation, medium server 302 can be chosen the suitable media of a preservation form (if any), and need not it is made amendment.
In one implementation, the media form that receives from medium server 302 with it of media display device 306 is represented the resource content item that receives.In another was realized, media display device 306 also can comprise and being used for converted thereof into the translation function (not shown) that also has a kind of media form before showing the resource content item that (maybe may preserve or the like) receives.
Rely on above-mentioned technology, medium server 302 need not to announce a large amount of URL that are associated with the different arrangements of possibility media form.This help has reduced the traffic in the UPnP network 314, and has simplified the URL management expectancy of medium server 302.This strategy also make reference mark 316 have dynamic tailor media form in case be fit to best that it is solving at present present the required dirigibility of scene, and need not between the pre-emptive right of limited quantity, to select.This strategy also provides a kind of standard and unique technique, this technology make the reference mark can for they may be mutual with it different medium server cutting media forms.
In one implementation, medium server 302 can be selected employed original default value among the URL based on one or more standards.For example, medium server 302 can be selected employed original default value among this URL by the resource that check is associated with a URL.The information of preferred original default value that described resource may comprise the sign that wherein comprises.Perhaps, medium server 302 can carry out the analysis of himself to the information of extracting from a resource, so that preferred original default value is judged.Perhaps, medium server 302 can use the other factors that is not from resource self derivation, is most popular such as which media form of consideration, or the like.Also can provide other technology to select these preferred initial values.
The exemplary details of above-mentioned technology proposes below.Can be used to below the consideration to realize that above-mentioned resource content searches the exemplary parameter URL of strategy:
http://ServerName/Tulips.jpg?format=YUV,width=640,height=408
This URL comprises first field of identity protocol scheme.Protocol scheme has defined the technology of access resources content item of being used for.Under this situation, first field has been specified " http ", shows that the resource content item will visit with the HTML (Hypertext Markup Language) technology.Second field identification one administrative authority.Administrative authority has defined the entity that the resource content item can be provided, and generally makes the server that the resource content item can be provided.Under this situation, second field is appointed as administrative authority to " ServerName ".The 3rd field has been specified and has been used for the path of access resources content item.Path (being " Tulips.jpg " under this situation) make management board's (for example ServerName server) can be in its system the position of identifying resource content item.The 4th field identification one the inquiry.Inquiry comprises the information of media form of retrieve resource content item of being used for.(medium server 302 can offer reference mark 316 to the URL of above-mentioned parameterization with XML " res " element bag.The res element also can comprise other metadata that is associated with the coupling resource except that URL.)
More particularly, in an exemplary realization, the 4th field among the URL that lists has above comprised describe, in general terms and has been used for presenting a plurality of parameters of the media form of resource.In the above example, first parameter is appointed as YUV to the Format Type that shows, second parameter is appointed as 640, the three parameters to resolution width the resolution height is appointed as 480.These parameters only are exemplary.URL can specify other parameter or less parameter.For example, URL can specify three additional parameters, and they have described the fill color that is used for presenting image, R (redness)=x for example, B (blueness)=y, G (green)=z.(just, when presenting an image, it may not cover the whole display surface of display device; Fill color has been specified redness, blueness and the green component of backcolor shown in not comprising those viewing areas of picture material.)
In addition, parameterized URL can represent with other sentence structure form except that above-mentioned.In the superincumbent form, each parameter all is designated as the right of one name-value, and sentence structure is " name=value ".Yet another sentence structure can omit name information; Rather than clearly identifying name information, this information can be from URL be inferred in the position of correlation.The exemplary URL that clearly identifies that omits name information is as follows:
Http:// ServerName/Tulips.jpg? YUV, 640 * 480Also may provide a kind of mixed format, it had both used name-value sentence structure and had used position sentence structure (indeterminate sign name) for other parameters for some parameters.
No matter use which kind of form, medium server 302 can also be announced and can be the relevant information of value scope of each parameter selection.For example, in an illustrative realized, name parameter can be accepted YUV or rgb value, and width parameter can be accepted 0 to 248 value, and height parameter can be accepted 0 to 2048 value.In response to consumer's browse request or consumer's searching request the time, medium server 302 can be announced this range information with resource metadata itself.Perhaps, medium server 302 is scattered band information periodically, for example once a day, weekly or the like.Also or, but range information can be kept in advance in reference mark and/or the display device based on known allowed band, so it transmits these information not necessarily for medium server 302.
Described in superincumbent summary, when reference mark 316 received parameterized URL, it can be any value (be with or without consumer's help) of parameter change for being permitted in the value scope of appointment.For example, consider the exemplary URL of first sign.If consumer's display device 306 energy display resolutions are 640 * 480 YUV image, then this URL can not revised in reference mark 316 before display device 306 is submitted to medium server 302 with this URL.Yet, suppose that the media display device can be to show the YUV image on 1280 * 1024 the display in resolution.Under this situation, the reference mark can the above-mentioned URL of following modification:
Http:// ServerName/Tulips.jpg? format=YUV, width=1280, height-1024So display device 306 can be submitted to medium server 302 (receiving its back from the reference mark at it) to this modified URL.Medium server 302 can be by searching expectation the resource content item and before it is sent to display device 306, convert thereof into 1280 * 1024 given resolution, thereby respond.
Consider that media display device 306 only shows another example of RGB image.Under this situation, the reference mark can be following be revised as the rgb format type to URL (original in the yuv format type appointment):
Http:// ServerName/Tulips.jpg? format=RGB, width=1280, height=1024Once more, medium server 302 is understood before the image in the resource content item is sent to media display device 306, is converted it to the RGB image.Medium server 302 also can this image of convergent-divergent so that adapt to the resolution expectation value (promptly 1280 * 1024) of display device 306.
In one implementation, when the resolution of medium server 302 converted images when adapting to the regulation of display device 306, it can attempt keeping the length breadth ratio of original image.This prevents image distortion artificially on display device 306.This may reserve the zone that does not comprise picture material in the display surface of display device.Fill color that can appointment in URL can be used for display background look in the zone of these skies.
Top example emphasizes that the URL of operation parameterization presents image.Yet this strategy also can be applicable to other media and information type, such as audio-frequency information and video information.For example, for pcm audio, URL can comprise the parameter of specifying sampling rate, channel number (monophony, stereo, 5.1 surround sounds or the like) and every sampling bits number.For digital video, it will still be PAL or the like at the use NTSC of display device place that URL can specify.
In addition, the example that provides above emphasizes to use such URL parameter: described URL parametric description the individual features attribute relevant (for example generally and how to preserve and/or show that resource content is relevant) with the form of resource content.Yet other parameter can be described the attribute relevant with the further feature of resource content.For example, these other parameters can be described the timing information relevant with the playback of resource content, the time interval that begins such as the resource content starting point of wanting playback from resource content and extended period of playback or the like.
In addition, top example has been described such situation, wherein uses single URL to define the whole media format permutation that are associated with a resource content item.Yet medium server can use two or more URL to represent the different aspect of resource content item.For example, can generate different URL for different mime types, each URL can be included in the one or more parameters in the specific mime type environment.For example, presentation format can provide and corresponding two URL of these two forms for the medium server of the resource content item of WMA and MP3.Each of these two URL can comprise the one or more variable elements that are used to change the format character in their specific mime types.For example, WMA RUL can comprise a bit-rate parameters, and this bit-rate parameters can be modified to 90kbps etc. from bit rate 128kbps.Be converted to from a kind of mime type (or type of other classification) and another kind ofly can be known as " between form " code conversion.Yet this only is a kind of exemplary scenario.As mentioned above, above-mentioned realization uses single URL to change between aspect all of a resource content item, comprises Format Type.
In addition, top example has been described a resource content and has been searched program, wherein the reference mark receives an original URL, revises this URL, then modified URL is transferred to media display device (if or do not make variation, then the URL of unmodified is transferred to the media display device).Then, the media display device is transferred to modified (unmodified) URL medium server, points out medium server to return the resource content item that identifies in the URL of modification or unmodified.Yet it is feasible that many other searched scheme.For example, the reference mark can be searched original URL and it is sent to the media display device immediately.The media display device then can be revised URL (perhaps decision is not revised it), then this URL is transferred to medium server.In this was realized, the reference mark need not to investigate the requirement/feature that presents of media display device, because the media display device self has been handled any modification of the URL that may need or expect now.Other arrangement also is feasible.For example, single trusted entities can be carried out repertoire, perhaps can adopt one or more other entities except that reference mark and media display device to come retrieve resource information.
At last, above-mentioned discussion is based on so a kind of realization: wherein medium server 302 is used for receiving modified URL, handles the resource content item and resource content is distributed to display device (or other trusted entities) slightly based on modified URL.But, more general is, medium server 302 may be implemented as (perhaps being expressed as conceptive) and has a plurality of agencies or the module of carrying out each these task or different Task Distribution, and the agency who carries out these tasks may be or may not be that other parts with medium server 302 are positioned at.For example, in one implementation, medium server 302 can be considered the agency's of the dispersion of carrying out above-mentioned task loose set, and they have formed medium server 302 together.
B. exemplary user interface shows
In an exemplary realization, (Fig. 5's) control panel module 506 provides a series of UI to show (being also referred to as the page), and they make the server user can be mutual with medium server 302.For example, control panel 506 can be provided for enabling and the UI page of first series of the equipment of forbidding and 314 couplings of UPnP network.Control panel 506 modules can provide makes the medium server user can select which resource should be shared, answer another serial UI page of shared resource under which condition.B.1 and B.2 chapters and sections have described this two class UI page respectively.
Generally speaking, in one implementation, control panel module 506 can provide the above-mentioned UI page by a control panel interface (such as the control panel interface function of being familiar with that is proposed by the  of Microsoft that is positioned at Washington Redmond).Like this, the UI demonstration can be by cutting so that the outward appearance and the feel (for example " display page that divides label ") that adopt control panel UI to show.The selection of this UI type only is exemplary; Other type and UI layout can be used for realizing the UI page.
B.1. be used to authorize the exemplary UI of new equipment
Fig. 8-10 shows control panel module 506 and can be used for the different UI pages of equipment introducing network 314.
At first, when detecting a new media display device on UPnP network 314, medium server 302 may be implemented as subscriber-related its existence of alarm medium server.According to a kind of technology, control panel module 506 can be carried out this alarm function by bubble type message 800 shown in Figure 8 is provided.These message 800 statements " have been found a new digital media receiver.You wish to enable, forbid or dispose this equipment? " this message 800 can comprise the hypertext link that makes the medium server user can select one of option of enumerating, promptly by clicking the hypertext link that is associated with a selected option.Can use other type of message and select form; Message 800 shown in Figure 8 only is an example.
Activate the UI page 900 shown in Figure 9 after the hypertext link of control panel object 506 in having activated message 800.This page 900 comprises a plurality of parts (902,904,906).Each part all provides and the information that distinct device is relevant that is coupled to UPnP network 314.For example, part 902 shows and finds a new equipment.This part 902 has also identified the manufacturer and the model of new equipment.This part 902 also fetches by the hypertext link in activating partly and gives the option that the medium server user enables new equipment.Part 904 has been described the equipment that the front has been activated.Thereby, the hypertext link that this part 904 is associated with this part 904 by activation, thus forbid this equipment for chance of medium server user.Part 906 has been described disabled equipment of front (but be not new for UPnP network 314).Thereby this part 906 enables this equipment for activation of medium server user once more.
If the medium server user has activated the hypertext link that is associated with arbitrary part in the UI page 900, control panel object 506 just activates the UI page 1000 shown in Figure 10.The UI page 1000 provides the summary information of describing the selected device feature.It also comprises three order buttons (1002,1004,1006).Order button 1002 makes the medium server user can enable this equipment.Order button 1004 makes the medium server user can forbid this equipment.Order button 1006 makes the medium server user can change the device name that occurs on the UI display page.This last button 1006 helps " to user-friendly " name of recognizing easily of the equipment of giving, such as " Kid ' s PC (child's PC) ".
B.2. the exemplary UI that is used for shared resource
Figure 11 illustrates a UI display page 1100, and this page 1100 has illustrated that the resource information (comprising resource metadata and resource content) of arranging in these resource file folders is in each resource file folder of the distribution on the UPnP network 314 and the association between the different distributions standard.The page 1100 illustrates three exemplary clauses and subclauses 1102.First entry has identified the name (for example resource file folder " C: My videos " 1104) of working resource file on the resource memory 320, the permission relevant criterion (for example " All users " 1106) that is associated with this resource file folder and has pressed from both sides associated device standard (for example " All devices " 1108) with this resource file.The resource that standard " All users " 1106 shows no matter who signs in on the computing machine of realizing medium server 302 can the retrieve resource file " C: Myvideos " in 1104.Standard " All devices " 1108 shows can be come by the arbitrary display device on the UPnP network 314 in the retrieve resource file resource of " C: My videos " 1104.
On the other hand, second entry has identified name " C: My photos " 1110, user " Donald " 1112 and equipment " Kids bedroom device " 1114.Rely on user " Donald " 1112, have only when user Donald sign in to realize medium server 302 be on the terminal server session movable at present on the computing machine time (perhaps when Donald permits the transmission of resource information, for example by when the consumer in the UPnP network 314 attempts access resources information, for certain message pop-up being responded), could retrieve resource resource information in the file " C: Myphotos " 1110.Other variation to this design purport also is feasible.For example, as mentioned above, resource information sharing functionality 322 can be configured to provide that the domination resource information distributes more than two distribution standards (or be less than two standards, or do not have standard).
Figure 11 only illustrates three resource file folders 1102.The medium server user can add additional next the sharing of resource file folder of order button 1116 selections by starting one.Revise the existing list 1102 that order button 1118 permission medium server users revise the shared resource file.Remove order button 1120 permission medium server users and from existing resources file set 1102, remove the resource file folder.
Described in chapters and sections in front, first standard set can be arranged the distribution of resource metadata, and second standard set can be arranged the distribution of resource content.For ease of explanation, Figure 11 is based on this hypothesis of the distribution of same standard set domination resource metadata and resource content.Yet, standard that if resource information sharing functionality 322 can be distinguished the medium server user is used for resource metadata and the standard that is used for resource content, then the user interface page just can suitably be revised with the meticulousr standard information of demonstration, and makes the medium server user import standard information on meticulousr level.The standard that is used for resource metadata can be distinguished in the user interface page by different way with the standard that is used for resource content, distributes different user's input fields such as passing through to these classifications.
Figure 12 illustrates the page 1200 that is activated by control panel module 506 when the medium server user presses modification order button among Figure 11.For example, suppose that medium server user highlight represented the first entry 1122 among Figure 11 (for example using mouse or other input mechanism), press order button 1118 then.The page that produces 1200 shown in Figure 12 illustrates each existing attribute of first entry 1122, and changes these attributes for activation of medium server user.
For example, the page 1200 is designated the Sharename of resource " My videos " 1202, and the permission relevant criterion is designated " All " 1204, equipment standard is designated " All devices " 1206.The medium server user can revise first field 1202 by the information (for example using mouse and keyboard input devices to edit this field) in the related text frame of edit field.The second and the 3rd field (1024,1206) is set as drop-down choice menus, and this menu provides the predefine tabulation of user and equipment respectively.For example, drop-down selection field 1206 has been described in detail in detail so that its predefine tabulation to be shown among Figure 12.The medium server user can select one or more clauses and subclauses to come to provide input (1204,1206) for these two fields from these drop-down lists.Can use other data input technology except that text input frame and drop-down menu to come input page 1200 desired information.Again, if medium server function 322 makes the medium server user can distinguish resource metadata standard and resource content standard,, this page 1200 provides additional field for the data input so can being expanded in a suitable manner.
Figure 11 and 12 is not exhaustive to can be used to select resource file folder and definition to press from both sides the UI strategy of the differentiation standard that is associated with resource file.For example, Figure 13 illustrates an exemplary page 1300, this page 1300 provides the main of whole shared resource files and relevant distribution standard thereof to show, also makes the medium server user can use this page 1300 itself to change any shown information (for example need not to call another page).For example, each user field and device field (DFLD) in this page 1300 all comprise corresponding drop-down menu, and described drop-down menu permission medium server user changes into the selection that these fields show.For example, consider the drop-down menu 1302 of example user field 1304, and the drop-down menu 1306 of exemplary apparatus field 1308.Navigation commands button 1310 permission medium server users are each catalogue of check before which resource file folder decision will add to shared resource (for example adding order button 1312 by activating).As in the past, remove order button 1314 and be used for removing the resource file folder of selecting previously from shared resource.
But Figure 14 illustrates the another kind selecting technology that is used to import standard information.The page 1400 shown in this Fig can be specified the medium server user has influenced the global criteria of whole shared resource files information.Just, options 1402 make the medium server user can specify medium server 302 whether should not consider who sign in on the medium server 302 and in whole shared resource files shared resource information.Options 1404 makes the medium server user can specify medium server 302 whether should not add differentiation and just whole resource file folders is distributed to armamentarium.It " is/deny " to select that these options (1402,1404) can use the UI input feature vector of a check box UI input feature vector or some other type to receive a scale-of-two from the medium server user.
The page 1400 also makes the medium server user that the various selections of the security that provided of domination medium server 302 can be provided.For example, whether options 1406 makes the medium server user can specify intermediary service should be started automatically when the medium server user starts the computing machine of realizing medium server 302.Options 1408 makes medium server user mutual maximum device number of licensed and medium server 302 on can specified network 314.Can use similar user's input field (not shown) that the medium server user is specified and A.5 middle other the relevant security options of security mechanisms discussed of top chapters and sections.For example, if licensed, the suitable UI page makes the medium server user can activate or forbid the A.5 middle arbitrary mechanism described of chapters and sections selectively, and specifies employed any correlation parameter in these mechanism.
At last, Figure 15 illustrates a page 1500, and it can be used as the part of automatic establishing program, is also referred to as " guide ".The layer representation of the resource file folder 1502 that provides on the resource memory 320 that comprises resource is provided this page.Catalogue 1502 comprise and layer in the adjacent check box of each resource file folder.The medium server user can be by clicking respective resources file back selectively check box, each that shows these resource files folders whether should be shared.The rightmost of the page 1500 partly provides options (1504 and 1506), and described options makes the medium server user can make the identical global criteria of discussing in the environment with Figure 14 in the above and selects.
In the superincumbent discussion, the distribution standard is assigned to resource according to each file.Yet, also may come the application distribution standard thereby comprise symbol by comprising the symbol display message according to each and allowing the medium server user to comprise the symbol input information according to each according to each.
Again, the UI layout shown in the accompanying drawing is exemplary.Other UI strategy also can make the medium server user select from following theme: equipment; Share; Be provided with; And incident.In sharing classification, medium server 302 can be given the medium server user option of shared resource in following resource class: My Music (my music); My Pictures (my picture); My videos (my video) or the like.
C. exemplary processes
Figure 16 and 17 is about the device authorization process, and Figure 18-20 is about the resource sharing process.Each frame shown in these figure can be realized with the combination of software, firmware or firmware and software.
C.1. device authorization process
Figure 16 illustrates medium server 302 and authorizes the employed program 1600 of new equipment that is added into UPnP network 314.In step 1602, there is the people that one new media equipment is inserted UPnP network 314.In step 1604, medium server 302 generates a message, the existence of the subscriber-related new equipment of this message warning medium server.Fig. 8 illustrates a kind of display format that can be used to provide this message.In step 1606, medium server 302 is opened a UI page (or a plurality of page), and the described page makes the medium server user can enable new equipment.Fig. 9 and 10 provides two so exemplary UI pages that are used to realize this step.In step 1608, the medium server user makes the selection relevant with new equipment, for example or enable or forbid new equipment.The medium server user is also licensed to provide a user-friendly title to new equipment.
Figure 17 illustrates the program 1700 that is used for determining new equipment identity.In step 1702, the IP address of medium server sign new equipment.In step 1704, medium server becomes medium access control (MAC) address (or information of some miscellaneous equipment special use) to the IP address translation.The IP address can convert MAC Address to for example SendARP function, and described SendARP function is that the Internet protocol helper by Microsoft is provided, and this helper uses address resolution protocol.In case be authorized to, equipment can identify with network 314 one by one alternately with its IP and MAC Address.It is favourable using MAC Address to come Authentication devices, because independent IP address and unreliable (because the IP address can change according to the availability of Dynamic Host Configuration Protocol server).
The more profound explanation of the operation shown in Figure 16 and 17 can be provided with reference to framework 500 shown in Figure 5.When adding a new media software, it sends UPnP statement.Equipment monitor module 520 detects this statement.Similarly, equipment monitor module 520 also detects the request of having been done by the reference mark of being coupled to UPnP network 314.In response to this, equipment monitor module 520 is searched the IP address of new equipment and is obtained MAC Address with SendARP ().If MAC Address is new, equipment monitor module 520 is just notified control panel com object 540, and this object 540 is notified any callback object 542 that has existed again.Equipment monitor module 520 is also notified CDDM service module 504.Control panel callback object 542 can come the advice media server user by control panel module 506.CDDM service module 504 can determine whether it needs to create a control panel module 506 for movable at present terminal server session, if it is done like this.
C.2. resource sharing process
Figure 18 illustrates and makes the medium server user can select the resource file folder that will be shared and specify to be used for arranging the process 1800 that these resource files press from both sides the distribution of interior resource information.Figure 19 illustrates and makes the consumer can browse or search for the process 1900 of resources shared metadata.Figure 20 illustrates the process 2000 that makes the consumer can search selected resource content item with parameterized URL method.
A. define shared resource
At first from Figure 18, program 1800 has only illustrated a kind of of many modes of being used for specifying Shared Folders and distribution standard.Described in top chapters and sections B, many different UI strategies that are used to collect this information are arranged, therefore many associated process that are used to carry out this task are arranged.For ease of discussing, suppose a standard set only having collected the distribution that to arrange resource metadata and resource content.The medium server user can be distinguished be used in resource information sharing functionality 322 under the situation of two standard sets of resource metadata and resource content, operation shown in Figure 180 can suitably be expanded to collect this information.
In step 1802, the medium server user selects a resource file folder of sharing.Figure 11-13 illustrates only some technology that the medium server user can be used for carrying out this task.
In step 1804, the medium server user selects to permit the individual (if there is) of resource information transmission.As mentioned above, this constraint condition can according to the configuring condition of service broadly or narrow sense ground analyze.In broad sense realized, the individuality that is identified was assumed to be at when signing in on the terminal server session movable at present on the computer system that realizes medium server 302 and permits.In stricter realization, medium server 302 attempts inquiring when whether retrieve resource information permits this transmission with definite individuality that is identified the individuality that is identified the consumer especially.Transmission only takes place when the individuality permission transmission that is identified.If non-selected any individuality that identifies under the default situation, does not just influence the permission related constraint condition of resource distribution.
In step 1806, the medium server user selects to be authorized to receive the equipment of the resource information in the selected resource file folder.Figure 11-15 only illustrates some UI technology that can be used to require the standard of collection in step 1804 and 1806.Equally, as mentioned above, can provide additional step to collect influences the additional standard that resource information distributes in the resource file folder.
In step 1808, control panel module 506 randomly warns medium server subscriber-related in the result who the resource information in the allocated resource file is shared to designated equipment, and described sharing arranged by specific permission associated user standard.This can carry out by showing a message, and described message has illustrated by medium server user's the constraint condition that selection applied (or lacking by its constraint condition that applies).After checking this message, the medium server user can determine to revise one or more previous selections.Step 1810 expression medium server user can repeat one or more selections when being unsatisfied with assigned finger; Otherwise process 1800 can continue.
In step 1812, medium server 302 determines whether the medium server user has the permission of sharing resource information in the selected resource file folder.Just, the founder of resource file folder may specify and have modifications, reads and/or one or more individualities of the permission of the resource information that the distributed resources file is interior.If the medium server user is not one of these individualities, step 1814 just shows that the resource file folder can not be shared.If the medium server user is one of these individualities, step 1814 just shows that the resource information in the resource file folder can be shared, so process 1800 continues.
Step 1816 must change the state of selected resource file folder into " sharing ".This step 1816 is included in registration resources shared file in the shared resource storer 532, and relevant distribution standard is kept in the standard information 536.
In the superincumbent discussion, the distribution standard is assigned to resource according to each file.Yet, also may comprise the mode of symbol to resource application distribution standard according to each with what be similar to aforesaid way.
Shared relevant additional general consideration with the interior resource of resource file folder has been proposed below.In the following discussion, " resource " may be corresponding to the resource file folder of being preserved in the resource memory 320.But being expressed as, the resource file double-layered quilt has a shared state or can not shared state.Know " resource information " that each resource has a reality to be distinguished equally, comprise resource metadata and resource content.
More particularly, in an exemplary realization, control directory services module 526 only permits the medium server user that the resource file folder is appointed as and can be shared, but not the individual resource in the resource file folder.Just, resource is designated as in the shareable resource file and can shares by being included in, rather than specify on resource ground one by one.And, control directory services module 526 meeting permission medium server users only are appointed as the audio frequency of particular type, video and picture resource and can share (such as exemplary file population, comprise:, comprise form MP3, WMA, PCM and WAV for audio file; For video file, comprise form MPEG-1,2, WMV and AVI; For picture format, comprise form JPEG, GIF, BMP, PNG and TIFF).And control directory services module 526 can limit hidden file appointment, network is shared and (just, thereby prevent that the medium server user is appointed as these resources can share) is appointed as and can be shared to removable media.These regulations have to benefit improves the security that UPnP network 314 is provided, because the unfamiliar resource information that does not drop in the above-mentioned permission classification can not be shared.Yet, in optionally realizing, may be appointed as one or more " being under an embargo " resource that identifies above can share.
In another exemplary realization, be designated as sharable resource file folder and have additional subclass (for example sub-folder and file).When the medium server user selects arbitrary given resource is appointed as can share the time, the whole resources in the shared resource file and all its child resource file also can automatically be appointed as and can be shared.
In another exemplary realization, intermediary service module 502 also permits the medium server user one resource file folder to be appointed as " not sharing " (for example, thereby but remove the shared state that the front is assigned to the resource file folder of this resource file folder).Yet in an exemplary realization, arbitrary child resource of the not licensed father's of the sharing resource of medium server user (for example sub-folder and file) is not appointed as and is shared.Just, for example, the medium server user " c: doc " is appointed as can share the time, the medium server user can licensed handle " c: doc music " is not appointed as and shares, and " c: doc " has been designated as shared because root folder.Yet in another implementation, control directory services module 526 can be configured to permit that the selectivity of shared resource is not specified.
In another exemplary realization, the medium server user can change into the title of Resource TOC shared.Control directory services module 526 can be followed the tracks of the variation of arbitrary title in service operation, and automatically the shared relevant attribute relevant with old title is transferred to newname.Whenever the medium server user has changed when being designated as shared arbitrary resource, control directory services module 526 can be configured to notify equipment with 314 couplings of UPnP network relevant for this variation.This can carry out by sending a UPnP incident.
B. distribute shared resource based on request
Figure 19 illustrate make the consumer can with the mutual program 1900 of control directory services module 526.In step 1902, the consumer ask medium server 302 provide with it be designated as the relevant resource metadata of resources shared.The consumer can make this request from reference mark integrated with display device or that be associated, the selected resource content of the final reception in described reference mark.Perhaps, the consumer can be from making this request from the far reference mark of display device, and described reference mark finally receives resource content.The consumer can start the browsing session with medium server 302 especially, and wherein medium server 302 can illustrate the resource metadata that is designated as shared list of available resources (may in certain some particular category) by providing, thereby responds.Consumer or can start search sessions with medium server 302, wherein medium server 302 can be by carrying out target search and the consumer returned in the indication of Search Results based on the specified one or more search parameters of consumer, thereby respond.
In step 1904, any resource metadata item that medium server 302 scanning shared resource storeies 532 are associated with the shared resource file that satisfies consumer's requirement with the location.Just, this must checkout resource metadata 534 browses or the specific resources metadata item of search parameter (for example relevant with the resource type of expectation, resource name, resource artist or the like) to choose to satisfy.Whether scanning also must test stone information 536 be discontented with the fixed relevant distribution standard of toe with definite with the resource metadata item of browsing or search terms mates.For example, medium server 302 can identify and satisfy ten resource metadata items (corresponding to ten relevant resources) that the consumer requires, but the equipment relevant criterion only allows wherein three to be displayed on the equipment that the consumer using at present (for example therefrom send with the consumer and browse or the reference mark of searching request is associated).
In step 1906, medium server 302 has generated the XML message of describing above-mentioned result.XML message can be by XML planning domination, and XML planning has specified each information field that message should comprise and it to present these fields with what form.Can use other form except that XML to transmit this information.In step 1908, medium server 302 sends to the reference mark that the consumer is using to message from medium server 302.
In step 1910, the reference mark receives XML message, and converts thereof into a display format.Then, allow the consumer to check the corresponding resource metadata item tabulation of the one or more shared resources that identified with medium server 302.The consumer can select one or more resources to be used for showing at selected display device from tabulation.
C. the processing of parametrization URL
The process 2000 that a URL who provides based on the UPnP action (for example browsing or hunting action) in response to the front searches the shared resource content item is provided Figure 20.More particularly, medium server 302 is in response to browsing or hunting action and the resource metadata that sends comprises the URL(uniform resource locator) (URL) of shared resource, and described URL has described and where located and share the resource content item that item is associated.URL can construct at the A.6 described parametric method of chapters and sections with top.Process 2000 shown in Figure 20 has illustrated the technology that is used to handle these parameters URL.
In step 2002, the consumer is receiving resource metadata such as 316 such places, reference mark, reference mark from medium server 302.As this step 1 corresponding to the step 1910 among Figure 19.For shared resource, metadata generally comprises at least one parameterized URL.As chapters and sections A.6 as described in, the parameter among this URL has been specified the media form of the resource content item that URL identified.For example, Format Type (such as RGB that is used for image resource or yuv format type) that parameter may be described the resource content item wherein can be provided.Another parameter may be described the format resolution (such as the height and the width of a specific image resolution) of resource content item.These parameters only are exemplary; Other or different parameters can be provided.In either case, when making browsing or during the response of searching request, medium server 302 may be that these parameters are selected such default value, described default value can reflect the media form that is stored in before the resource content project in the medium server 302.Perhaps, medium server 302 can select medium server 302 to be defined as best default value based on other Consideration.
In step 2004, reference mark 316 randomly changes the one or more parameters among the parametrization URL that is returned.For example, URL can specify a specific image resolution ratio at first.The reference mark can change the value of this parameter to adapt to the bigger display resolution that display device was provided that is shown this image by meeting.
In step 2006, reference mark 316 is sent to the display device that finally can present the resource content item to modified (or unmodified) URL, such as display device 306.
In step 2008, display device 306 then can be submitted to medium server 302 to modified URL.This step can modified by comprising (or unmodified) URL HTTP GET order and carry out.
In step 2010, medium server 302 receives the HTTP GET order that comprises modified (or unmodified) URL.It is retrieve resource content item from resource memory 320 then.If the resource content item of being searched does not have the media form of appointment in the URL, then medium server 302 can convert thereof into the media form of appointment.
In step 2012, medium server 302 is forwarded to display device 306 to the resource content item that modified URL identified and is used to be presented at this equipment 306 places.
In step 2014,306 receptions of media display device and demonstration are sent to its resource content item by medium server 302.Display device 306 also before the resource content item is presented at display device 306 sentences, randomly converts the resource content item to another media form.
Equally, program shown in Figure 20 only is a possible situation.In another situation, reference mark 316 can be sent to display device 306 to original URL, display device 306 can make amendment to it (or decision do not revise).After this, display device 306 sends to medium server 302 with this modified (or unmodified) URL in the above described manner.
Among Figure 20, suppose that the one or more parameters in the URL comprise the information of the media form of specifying the respective resources content item.Yet other URL can comprise the parameter (such as the timing relevant information) of the further feature of the resource content item beyond the appointment place media format information.
At last, the basic framework of Figure 20 also is applied in the occasion (just, resource metadata comprises the URL without any variable element) that resource metadata does not comprise parametrization URL.Under this situation, can not carry out URL retouching operation shown in Figure 20.
D. illustrative computer environment
Figure 21 provides and can be used to realize described in the previous section from the relevant information of the computer environment 2100 of arbitrary processing capacity, and described function ratio is as in medium server 302 functions described in Fig. 3 and 5.Computing function can be used to realize reference mark (for example the reference mark 316,318) and arbitrary media display device (304-312) or the like similarly.
Computing environment 2100 is included in multi-purpose computer 2102 and the display device of discussing in the environment of Fig. 1 2104.Yet computing environment 2100 can comprise the computing machine and the network architecture of other kind.For example, although not shown, computer environment 2100 can comprise hand-held or laptop devices, set-top box, programmable consumer electronics, mainframe computer, game console or the like.And Figure 21 is depicted as the element of the computer environment 2100 of being convenient to discuss and being coupled.Yet computing environment 2100 can adopt distributed processing configuration.In distributed computing environment, computational resource spreads in the environment physically.
Exemplary computing machine 2102 comprises one or more processors or processing unit 2106, Installed System Memory 2108 and bus 2110.Bus 2110 links together each system component.For example, bus 2110 is linked Installed System Memory 2108 to processor 2106.Bus 2110 can realize with arbitrary class bus structure or bus-structured combination, comprises rambus or Memory Controller Hub, peripheral bus, Accelerated Graphics Port and uses multiple bus-structured any processor or local bus.For example, this structure can comprise industrial standard architectures (ISA) bus, Micro Channel Architecture (MCA) bus, enhancement mode ISA (EISA) bus, video electronics standard alliance (VESA) local bus and peripheral component interconnect (PCI) bus that is also referred to as the Mezzanine bus.
Computing machine 2102 also can comprise multiple computer-readable medium, comprises multiclass volatibility and non-volatile medium, and each medium all is removable or immovable.For example, Installed System Memory 2108 comprises that form is the computer-readable medium of volatile ram and Nonvolatile memory, the former such as random-access memory (ram) 2112, the latter such as ROM (read-only memory) (ROM) 2114.ROM 2114 comprises input/output (BIOS) 2116, and it comprises the basic routine of the interelement transmission information that for example helps between the starting period in computing machine 2102.RAM 2112 generally comprises data and/or program module, and their form can be by processing unit 2106 fast accesses.
The computer storage media of other type comprises: be used for hard disk drive 2118 that not removable, non-volatile magnetic medium is read and write; Be used for disc driver 2120 that removable, non-volatile magnetic disk 2122 (for example " floppy disk ") are read and write; And be used for CD drive 2124 that removable, non-volatile CD 2126 is read and write, such as CD-ROM, DVD-ROM or other optical medium.Hard disk drive 2118, disc driver 2120 and CD drive 2124 are linked system bus 2110 by one or more data medium interfaces 2128 respectively.Perhaps, hard disk drive 2118, disc driver 2120 and CD drive 2124 can be linked system bus 2110 by scsi interface (not shown) or other coupling mechanism.Although it is not shown, but computing machine 2102 can comprise the computer-readable medium of other type, such as magnetic tape or other magnetic storage apparatus, flash card, CD-ROM, digitized video dish (DVD) or other optical memory, Electrically Erasable Read Only Memory (EEPROM) or the like.
Generally speaking, aforementioned calculation machine readable medium uses for computing machine 2102 for computer-readable instruction, data structure, program module and other data provide non-volatile memories.For example, readable memory can storage operating system 2130, one or more application program 2132 (such as the logic that realizes medium server 302, reference mark (316,318) or arbitrary media display device (304-312) shown in Figure 3), other program module 2134 and routine data 2136.
Computer environment 2100 can comprise multiple input equipment.For example, computer environment 2100 comprises and is used for order and information are input to computing machine 2102 interior keyboard 2138 and indicating equipment 2140 (for example " mouse ").Computer environment 2100 can comprise the miscellaneous equipment (not shown), such as microphone, joystick, cribbage-board, satellite dish, serial port, scanner, card-reading apparatus, numeral or video camera or the like.Input/output interface 2142 is coupled to processing unit 2106 to input equipment.More general is that input equipment can be coupled to computing machine 2102 by arbitrary class interface and bus structure, such as parallel port, serial port, game port, USB (universal serial bus) (USB) port or the like.
Computer environment 2100 also comprises display device 2104.Video adapter 2144 is coupled to bus 2110 to display device 2104.Except display device 2104, computer environment 2100 can comprise other input peripheral, such as loudspeaker (not shown), printer (not shown) or the like.
Computing machine 2102 can be operated in the networked environment, and this environment uses and is connected such as the logic between the such one or more remote computers of remote computing device 2146.Remote computing device 2146 can comprise arbitrary class computer equipment, comprises general purpose personal computer, portable computer, server, router, network computer, peer device or other common network node or the like.Whole features of being discussed with reference to computing machine 2102 above remote computing device 2146 can comprise, the perhaps a little collection of one.
Can use any class network computing machine 2102 and remote computing device 2146 couplings, such as Local Area Network 2148 or wide area network (WAN) 2150 (such as the internet).When realizing in the LAN networked environment, computing machine 2102 is linked local network 2148 via a network interface or adapter 2152.When realizing in the WAN networked environment, computing machine 2102 can be linked WAN 2150 via modulator-demodular unit 2154 or other connection strategy.It is inner or outside that modulator-demodular unit 2154 can be positioned at computing machine 2102, and it can pass through serial i/O interface 2156 or other suitable coupling mechanism links to each other with bus 2110.Although not shown, computing environment 2100 can be provided for computing machine 2102 is linked the radio communication function (for example via modulated radio signal, modulated infrared signal or the like) of remote computing device 2146.
In networked environment, computing machine 2102 can obtain the program module of being preserved in the remote memory storage devices 2158.Generally speaking, the description of the program module shown in the discrete block only is for the ease of discussing among Figure 21; In fact, program module can be distributed in the computing environment 2100, and this distribution can change with dynamical fashion when processing unit 2106 execution modules.
Where no matter be stored in physically, can provide one or more memory modules 2108,2122,2126,2158 or the like to preserve Fig. 3 and 5 described medium server 302 functions.In an exemplary realization, the function each side that medium server 302 is provided can be used at the controlled code of the NET framework of Microsoft or other virtual machine environment and realize.
Although with for the action of architectural feature and/or method specific language description the present invention, be limited to described special characteristic or action yet be appreciated that the invention that defines is unnecessary in claims.But these special characteristics and action are as realizing that exemplary form of the present invention is disclosed.

Claims (109)

1. method that is used on network scattering resource information comprises:
Receive the request of consumer for resource information at the source entity place;
Managing described request everywhere at source entity is designated as on network and can shares to determine whether any resource that satisfies described request and satisfy at least one distribution standard;
Generation shows the response of result; And
Described response is forwarded to the consumer.
2. the method for claim 1 is characterized in that, described network is configured to a universal plug and play (UPnP) network.
3. the method for claim 1 is characterized in that, described resource information is a resource metadata, the distribution of described at least one distribution standard domination resource metadata, and described response comprises satisfies consumer's requested resource metadata.
4. the method for claim 1 is characterized in that, described resource information is a resource content, the distribution of described at least one distribution standard domination resource content, and described response comprises satisfies consumer's requested resource content.
5. the method for claim 1 is characterized in that, described at least one distribution standard has been specified licensed reception at least one trusted entities about the resource information of at least one resource, if described at least one resource satisfies described request.
6. method as claimed in claim 5 is characterized in that, described at least one trusted entities is display device or reference mark.
7. the method for claim 1 is characterized in that, described at least one distribution standard has specified the individuality that whether is identified to be required to provide the condition of their permission as the transmission response.
8. method as claimed in claim 7 is characterized in that, the individuality that is identified is corresponding to the resource that is associated with at least one distribution standard being appointed as sharable individuality on network.
9. method as claimed in claim 7 is characterized in that, described at least one distribution standard code: if the individuality that is identified signs in on the source entity at present, then the individuality that is identified is regarded as permitting.
10. method as claimed in claim 9 is characterized in that, when the individual login sessions of identify had active state, the individuality that is identified was regarded as signing in on the source entity.
11. method as claimed in claim 9 is characterized in that, when identify individuality directly signed in on the control desk of realizing source entity, the individuality that is identified was regarded as signing in on the source entity.
12. method as claimed in claim 7 is characterized in that, described at least one distribution standard code: express authorization transmits if the individuality that is identified is in response to an inquiry, and then the individuality that is identified is regarded as permitting.
13. the method for claim 1 is characterized in that, described source entity is preserved a plurality of distribution standard sets that are separated ground or additionally call.
14. the method for claim 1 is characterized in that, described source entity allows the user to change described at least one distribution standard.
15. method as claimed in claim 14 is characterized in that, the user who is allowed to change described at least one distribution standard is appointed as sharable user on network at least one resource relevant with the distribution standard.
16. the method for claim 1 is characterized in that, described source entity stops the user to change described at least one distribution standard.
17. the method for claim 1 is characterized in that, also comprises:
Automatically detect new trusted entities and add network to;
Notify the existence of subscriber-related new trusted entities; And
Allow the user to add and the domination resource information to arrive at least one other distribution standard of the distribution of new trusted entities.
18. the method for claim 1 is characterized in that, described processing comprises and determines whether that any resource satisfies specified browsing or search terms in the request.
19. method as claimed in claim 18 is characterized in that, described response identification browse or the relevant resource metadata of at least one resource of search terms with satisfying.
20. the method for claim 1 is characterized in that, described processing comprises and determines whether that any resource satisfies specified URLs in the request.
21. method as claimed in claim 20 is characterized in that, described URLs is a unified URLs (URL), and described request is that a HTTP(Hypertext Transport Protocol) is searched request.
22. method as claimed in claim 20 is characterized in that, described response identification the resource content of from least one resource that satisfies request, obtaining.
23. the method for claim 1 is characterized in that,
In first operation that relates to first request:
Described processing comprises and determines whether that any resource satisfies specified browsing or search terms in first request; And
Described response identification browse or the relevant resource metadata of at least one resource of search terms with satisfying, wherein said resource metadata comprises has described the URLs of where locating described at least one resource; And
In second operation that relates to second request:
Described processing comprises and determines whether that any resource satisfies the described URLs of appointment in second request; And
Described response identification the resource content of obtaining from least one resource that satisfies second request.
24. a computer-readable medium, it comprises the machine readable instructions of each step that is used to realize the described reception of claim 1, processing, generation and forwarding.
25. one kind is used to define and is fit to use source entity to scatter the method for the relevant condition of resource information on network, comprising:
Provide a user interface to show, allow the user to select:
At least one resource that shares on the network; And
Arrange at least one distribution standard that the resource information relevant with at least a portion of described at least one resource distributes on network; And
Show the selection of reception user via described user interface to described at least one resource and described at least one distribution standard.
26. method as claimed in claim 25 is characterized in that, described network is configured to universal plug and play (UPnP) network.
27. method as claimed in claim 25 is characterized in that, described resource information is a resource metadata, the distribution of described at least one distribution standard domination resource metadata.
28. method as claimed in claim 25 is characterized in that, described resource information is a resource content, the distribution of described at least one distribution standard domination resource content.
29. method as claimed in claim 25 is characterized in that, described at least one distribution standard code at least one be allowed to receive the trusted entities of the resource information relevant with described at least one resource.
30. method as claimed in claim 29 is characterized in that, described at least one trusted entities is display device or reference mark.
31. method as claimed in claim 25 is characterized in that, described at least one distribution standard has specified the individuality that whether is identified to be required to provide the condition of their licence as the resource information distribution.
32. method as claimed in claim 31 is characterized in that, the individuality that is identified is corresponding to the resource relevant with described at least one distribution standard being appointed as sharable individuality on network.
33. method as claimed in claim 31 is characterized in that, described at least one distribution standard code: if the individuality that is identified signs in on the source entity at present, then the individuality that is identified is regarded as permitting.
34. method as claimed in claim 33 is characterized in that, when the individual session of identify had active state, the individuality that is identified was regarded as signing in on the source entity.
35. method as claimed in claim 33 is characterized in that, when identify individuality directly signed in on the control desk of realizing source entity, the individuality that is identified was regarded as signing in on the source entity.
36. method as claimed in claim 31 is characterized in that, described at least one distribution standard code: express authorization scatters if the individuality that is identified is in response to an inquiry, and then the individuality that is identified is regarded as permitting.
37. method as claimed in claim 25 is characterized in that, described source entity is preserved a plurality of distribution standard sets that are separated ground or additionally call.
38. method as claimed in claim 25 is characterized in that, described source entity allows the user to change described at least one distribution standard.
39. method as claimed in claim 38 is characterized in that, the user who is allowed to change described at least one distribution standard is appointed as sharable user on network at least one resource relevant with the distribution standard.
40. method as claimed in claim 25 is characterized in that, described source entity stops the user to change described at least one distribution standard.
41. method as claimed in claim 25 is characterized in that, described source entity resource organizations in resource collection.
42. method as claimed in claim 41 is characterized in that, one of described resource collection is the resource file folder, and described at least one distribution standard application is at least one member resource of resource file folder.
43. method as claimed in claim 41 is characterized in that, one of described resource collection is to comprise symbol by the employed resource of its resource of source entity inner management, and described at least one distribution standard application comprises at least one member resource of symbol in resource.
44. method as claimed in claim 41 is characterized in that, but the member resource in the described set has been inherited the shared state of its corresponding father's resource.
45. method as claimed in claim 41 is characterized in that, the member resource in the described set has been inherited the distribution standard that corresponding father's resource with it is associated.
46. method as claimed in claim 41 is characterized in that, also comprises: but remove the shared state of one of resource collection, do not share thereby one of described resource collection is appointed as.
47. method as claimed in claim 25 is characterized in that, if following at least one condition is true, then described source entity is forbidden sharing and the corresponding resource information of a resource:
Described resource is stored on the removable internal memory medium;
Described resource resides in respect on the long-range network of source entity;
The user who attempts shared resource does not have the permission of access resources;
Described resource is stored in a hidden file or the sub-folder; And
Described resource is stored in the file that its media types do not meet the predetermined media types tabulation that source entity is configured to share.
48. method as claimed in claim 25 is characterized in that, also comprises: in response to the distribution that comes controlling resource information from the request of an entity, according to described at least one distribution standard.
49. a computer-readable medium, machine readable instructions of each step that is used to realize the described reception of claim 25 and provides is provided for it.
50. a server that is used for scattering resource information on network comprises:
Be configured to preserve the shared resource storer of the indication of the resource that can share on the network; And
Be configured to carry out the logic of following steps:
Reception is used for the request for resource information;
The request of processing is satisfied described request and is satisfied at least one distribution standard with the resource that determines whether appointment in any shared resource storer;
Generation shows the response of result; And
Described response is forwarded to the consumer.
51. server as claimed in claim 50 is characterized in that, described network is configured to a universal plug and play (UPnP) network.
52. server as claimed in claim 50 is characterized in that, described shared resource storer is configured to the resource metadata be associated with resource by preserving, the indication of the resource that preservation can share on the network.
53. server as claimed in claim 52 is characterized in that, described shared resource storer comprises a plurality of storages.
54. server as claimed in claim 53 is characterized in that, the driver that separates that described a plurality of storages are kept corresponding to server.
55. server as claimed in claim 52 is characterized in that, described shared resource storer separates with its related resource provides resource metadata, makes resource metadata easily to be visited.
56. server as claimed in claim 52 is characterized in that, described shared resource storer is also preserved described at least one distribution standard.
57. server as claimed in claim 56 is characterized in that, described shared resource memory allocation be used to preserve two storeies that separate of resource metadata and described at least one distribution standard.
58. server as claimed in claim 56 is characterized in that, described shared resource memory allocation be used to preserve the single memory of resource metadata and described at least one distribution standard.
59. server as claimed in claim 51 is characterized in that, described resource information is a resource metadata, the distribution of described at least one distribution standard domination resource metadata, and described response comprises satisfies consumer's requested resource metadata.
60. server as claimed in claim 50 is characterized in that, described resource information is a resource content, the distribution of described at least one distribution standard domination resource content, and described response comprises satisfies consumer's requested resource content.
61. server as claimed in claim 50 is characterized in that, described at least one distribution standard code be allowed to receive at least one trusted entities of the resource information relevant with at least one resource, if described at least one resource satisfies described request.
62. server as claimed in claim 61 is characterized in that, described at least one trusted entities is display device or reference mark.
63. server as claimed in claim 50 is characterized in that, the individuality whether described at least one distribution standard code is identified is required to provide the condition of their permission as the transmission response.
64., it is characterized in that the individuality that is identified is corresponding to the resource relevant with described at least one distribution standard being appointed as sharable individuality on network as the described server of claim 63.
65., it is characterized in that described at least one distribution standard code: if the individuality that is identified signs in on the server at present, then the individuality that is identified is regarded as permitting as the described server of claim 63.
66., it is characterized in that if the individual login sessions that identifies has active state, then the individuality that is identified is regarded as signing in on the server as the described server of claim 65.
67., it is characterized in that when identify individuality directly signed in on the control desk of realizing server, the individuality that is identified was regarded as signing in on the server as the described server of claim 65.
68., it is characterized in that described at least one distribution standard code as the described server of claim 63: express authorization transmits if the individuality that is identified is in response to an inquiry, and then the individuality that is identified is regarded as permitting.
69. server as claimed in claim 50 is characterized in that, described shared resource storer is configured to preserve a plurality of distribution standard sets that are separated ground or additionally call.
70. server as claimed in claim 50 is characterized in that, described server is configured to allow the user to change described at least one distribution standard.
71., it is characterized in that the user who is allowed to change described at least one distribution standard is appointed as sharable user on network at least one resource relevant with the distribution standard as the described server of claim 70.
72. server as claimed in claim 50 is characterized in that, described server is configured to stop the user to change described at least one distribution standard.
73. server as claimed in claim 50 is characterized in that, also comprises the logic that is used to carry out following steps:
Automatically detect new trusted entities and add network to;
Notify subscriber-related existence in new trusted entities; And
Allow the user to add and the domination resource information to arrive at least one other distribution standard of the distribution of new trusted entities.
74. server as claimed in claim 50 is characterized in that, described processing logic is configured to determine whether that any resource satisfies specified browsing or search terms in the request.
75. as the described server of claim 74, it is characterized in that, described response identification browse or the relevant resource metadata of at least one resource of search terms with satisfying.
76. server as claimed in claim 50 is characterized in that, described processing logic is configured to also determine whether that any resource satisfies specified URLs in the request.
77., it is characterized in that described URLs is a unified URLs (URL) as the described server of claim 76, described request is that a HTTP(Hypertext Transport Protocol) is searched request.
78. as the described server of claim 76, it is characterized in that, described response identification the resource content of obtaining from least one resource that satisfies request.
79. one kind is used to define the server that is suitable for scattering the condition of the resource information relevant with resource on network, described server comprises:
Be used to preserve the shared resource storer of the indication of the resource that can share on the network; And
Be configured to carry out the logic of following steps:
Provide a user interface to show, allow the user to select:
At least one resource that shares on the network; And
Arrange at least one distribution standard that the resource information relevant with at least a portion of described at least one resource distributes on network; And
Show the selection of reception user via described user interface to described at least one resource and described at least one distribution standard.
80., it is characterized in that described network is configured to a universal plug and play (UPnP) network as the described server of claim 79.
81., it is characterized in that described shared resource storer is configured to the resource metadata be associated with resource by preserving, the indication of the resource that preservation can share on the network as the described server of claim 79.
82., it is characterized in that described shared resource storer comprises a plurality of storages as the described server of claim 81.
83., it is characterized in that the driver that separates that described a plurality of storages are kept corresponding to server as the described server of claim 82.
84., it is characterized in that described shared resource storer separates with its related resource provides resource metadata as the described server of claim 81, make resource metadata easily to be visited.
85., it is characterized in that described shared resource storer has also been preserved described at least one distribution standard as the described server of claim 81.
86. as the described server of claim 85, it is characterized in that, described shared resource memory allocation be used to preserve two storeies that separate of resource metadata and described at least one distribution standard.
87. as the described server of claim 85, it is characterized in that, described shared resource memory allocation be used to preserve the single memory of resource metadata and described at least one distribution standard.
88., it is characterized in that described resource information is a resource metadata as the described server of claim 79, the distribution of described at least one distribution standard domination resource metadata.
89., it is characterized in that described resource information is a resource content as the described server of claim 79, the distribution of described at least one distribution standard domination resource content.
90. as the described server of claim 79, it is characterized in that, described at least one distribution standard code be allowed to receive at least one trusted entities of the resource information relevant with at least one resource, if described at least one resource satisfies described request.
91., it is characterized in that described at least one trusted entities is display device or reference mark as the described server of claim 90.
92., it is characterized in that the individuality whether described at least one distribution standard code is identified is required to provide the condition of their permission as the distribution resource information as the described server of claim 79.
93., it is characterized in that the individuality that is identified is corresponding to the resource relevant with described at least one distribution standard being appointed as sharable individuality on network as the described server of claim 92.
94., it is characterized in that described at least one distribution standard code: if the individuality that is identified signs in on the server at present, then the individuality that is identified is regarded as permitting as the described server of claim 92.
95., it is characterized in that if the individual login sessions that identifies has active state, then the individuality that is identified is regarded as signing in on the server as the described server of claim 94.
96., it is characterized in that when identify individuality directly signed in on the control desk of realizing server, the individuality that is identified was regarded as signing in on the server as the described server of claim 94.
97., it is characterized in that described at least one distribution standard code as the described server of claim 92: express authorization scatters if the individuality that is identified is in response to an inquiry, and then the individuality that is identified is regarded as permitting.
98., it is characterized in that described shared resource storer is configured to preserve a plurality of distribution standard sets that are separated ground or additionally call as the described server of claim 79.
99., it is characterized in that described server is configured to allow the user to change described at least one distribution standard as the described server of claim 79.
100., it is characterized in that the user who is allowed to change described at least one distribution standard is appointed as sharable user on network at least one resource relevant with the distribution standard as the described server of claim 99.
101., it is characterized in that described server is configured to stop the user to change described at least one distribution standard as the described server of claim 79.
102. as the described server of claim 79, it is characterized in that, described shared resource storer resource organizations in being designated as sharable resource collection.
103., it is characterized in that one of described resource collection is the resource file folder as the described server of claim 102, described at least one distribution standard application is at least one member resource of resource file folder.
104., it is characterized in that one of described resource collection is to comprise symbol by the employed resource of its resource of intra-server management as the described server of claim 102, described at least one distribution standard application comprises at least one member resource of symbol in resource.
105. as the described server of claim 102, it is characterized in that, but the member resource in the described set has been inherited the shared state of its corresponding father's resource.
106., it is characterized in that the member resource in the described set has been inherited the distribution standard that corresponding father's resource with it is associated as the described server of claim 102.
107., it is characterized in that also comprising as the described server of claim 102: but remove the shared state of one of resource collection, do not share thereby one of described resource collection is appointed as.
108., it is characterized in that if following at least one condition is true, then described server is configured to forbid share and the corresponding resource information of a resource as the described server of claim 79:
Described resource is stored on the removable internal memory medium;
Described resource resides in respect on the long-range network of source entity;
The user who attempts shared resource does not have the permission of access resources;
Described resource is stored in a hidden file or the sub-folder; And
Described resource is stored in the file that its media types do not meet the predetermined media types tabulation that server is configured to share.
109. as the described server of claim 79, it is characterized in that also comprising such logic, described logic is configured to: in response to the distribution that comes controlling resource information from the request of an entity, according to described at least one distribution standard.
CN200480002748XA 2003-12-19 2004-07-23 Routing of resource information in a network Expired - Fee Related CN1906604B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/742,588 US7668939B2 (en) 2003-12-19 2003-12-19 Routing of resource information in a network
US10/742,588 2003-12-19
PCT/US2004/023957 WO2005067428A2 (en) 2003-12-19 2004-07-23 Routing of resource information in a network

Publications (2)

Publication Number Publication Date
CN1906604A true CN1906604A (en) 2007-01-31
CN1906604B CN1906604B (en) 2011-06-01

Family

ID=34678494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200480002748XA Expired - Fee Related CN1906604B (en) 2003-12-19 2004-07-23 Routing of resource information in a network

Country Status (6)

Country Link
US (1) US7668939B2 (en)
EP (1) EP1695226B1 (en)
JP (1) JP2007515127A (en)
KR (1) KR20060112192A (en)
CN (1) CN1906604B (en)
WO (1) WO2005067428A2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924758A (en) * 2010-07-28 2010-12-22 中兴通讯股份有限公司 Media server and method thereof for providing services
CN1842782B (en) * 2003-12-19 2011-04-13 微软公司 Server architecture for network resource information routing
CN102272717A (en) * 2009-01-07 2011-12-07 索尼公司 Parallel tasking application framework
CN102483742A (en) * 2009-09-04 2012-05-30 培基维帝亚股份有限公司 System and method for managing internet media content
CN103563298A (en) * 2011-03-18 2014-02-05 三星电子株式会社 Method and system for managing contact information in universal plug and play home network environment
CN103841051A (en) * 2012-11-27 2014-06-04 国基电子(上海)有限公司 Service request control system and method
CN103891238A (en) * 2012-08-14 2014-06-25 华为技术有限公司 Method and device for sharing graphics information
CN107948722A (en) * 2011-12-30 2018-04-20 搜诺思公司 System and method for music playback of networking
CN111258602A (en) * 2020-01-10 2020-06-09 百度在线网络技术(北京)有限公司 Information updating method and device
US11188666B2 (en) 2013-04-16 2021-11-30 Sonos, Inc. Playback device queue access levels
US11188590B2 (en) 2013-04-16 2021-11-30 Sonos, Inc. Playlist update corresponding to playback queue modification
US11321046B2 (en) 2013-04-16 2022-05-03 Sonos, Inc. Playback transfer in a media playback system
US11514105B2 (en) 2013-05-29 2022-11-29 Sonos, Inc. Transferring playback from a mobile device to a playback device
US11825174B2 (en) 2012-06-26 2023-11-21 Sonos, Inc. Remote playback queue

Families Citing this family (262)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020002039A1 (en) 1998-06-12 2002-01-03 Safi Qureshey Network-enabled audio device
US6317881B1 (en) * 1998-11-04 2001-11-13 Intel Corporation Method and apparatus for collecting and providing viewer feedback to a broadcast
US9032097B2 (en) * 2001-04-26 2015-05-12 Nokia Corporation Data communication with remote network node
KR100493904B1 (en) * 2003-09-18 2005-06-10 삼성전자주식회사 Method for DRM license supporting plural devices
KR101044937B1 (en) * 2003-12-01 2011-06-28 삼성전자주식회사 Home network system and method thereof
US20060095628A1 (en) * 2003-12-19 2006-05-04 Microsoft Corporation External-Network Data Content Exposure to Network-Connected Devices
US20050138137A1 (en) * 2003-12-19 2005-06-23 Microsoft Corporation Using parameterized URLs for retrieving resource content items
US7647385B2 (en) * 2003-12-19 2010-01-12 Microsoft Corporation Techniques for limiting network access
US7668939B2 (en) 2003-12-19 2010-02-23 Microsoft Corporation Routing of resource information in a network
JP2005209056A (en) * 2004-01-26 2005-08-04 Ricoh Co Ltd Network apparatus and information providing method for the same
US20050198099A1 (en) * 2004-02-24 2005-09-08 Covelight Systems, Inc. Methods, systems and computer program products for monitoring protocol responses for a server application
US7295833B2 (en) 2004-04-09 2007-11-13 At&T Mobility Ii Llc Spam control for sharing content on mobile devices
US7849135B2 (en) * 2004-04-09 2010-12-07 At&T Mobility Ii Llc Sharing content on mobile devices
US8028038B2 (en) 2004-05-05 2011-09-27 Dryden Enterprises, Llc Obtaining a playlist based on user profile matching
US8028323B2 (en) * 2004-05-05 2011-09-27 Dryden Enterprises, Llc Method and system for employing a first device to direct a networked audio device to obtain a media item
US9826046B2 (en) * 2004-05-05 2017-11-21 Black Hills Media, Llc Device discovery for digital entertainment network
US10268352B2 (en) 2004-06-05 2019-04-23 Sonos, Inc. Method and apparatus for managing a playlist by metadata
US9626437B2 (en) * 2004-06-10 2017-04-18 International Business Machines Corporation Search scheduling and delivery tool for scheduling a search using a search framework profile
KR100631708B1 (en) * 2004-06-16 2006-10-09 엘지전자 주식회사 Terminal providing push-to-talk service, friend introduction system using push-to-talk service and method
KR100636147B1 (en) * 2004-06-24 2006-10-18 삼성전자주식회사 Method for controlling content over network and apparatus thereof, and method for providing content over network and apparatus thereof
US20060010387A1 (en) * 2004-07-07 2006-01-12 Olson Jorell A Projection apparatus with support for media content on portable storage devices
WO2006014480A2 (en) * 2004-07-08 2006-02-09 Actuality Systems, Inc. Architecture for rendering graphics on output devices over diverse connections
US7974217B2 (en) * 2004-07-19 2011-07-05 Samsung Electronics Co., Ltd. Method and apparatus for identifying network device corresponding to internet protocol address, and method and apparatus for allocating internet protocol address
GB0416342D0 (en) * 2004-07-22 2004-08-25 Koninkl Philips Electronics Nv Access to associated content
US7362280B2 (en) * 2004-08-18 2008-04-22 Ruckus Wireless, Inc. System and method for a minimized antenna apparatus with selectable elements
US7652632B2 (en) * 2004-08-18 2010-01-26 Ruckus Wireless, Inc. Multiband omnidirectional planar antenna apparatus with selectable elements
US7696946B2 (en) 2004-08-18 2010-04-13 Ruckus Wireless, Inc. Reducing stray capacitance in antenna element switching
US7193562B2 (en) 2004-11-22 2007-03-20 Ruckus Wireless, Inc. Circuit board having a peripheral antenna apparatus with selectable antenna elements
US7880683B2 (en) 2004-08-18 2011-02-01 Ruckus Wireless, Inc. Antennas with polarization diversity
US7965252B2 (en) 2004-08-18 2011-06-21 Ruckus Wireless, Inc. Dual polarization antenna array with increased wireless coverage
US7292198B2 (en) 2004-08-18 2007-11-06 Ruckus Wireless, Inc. System and method for an omnidirectional planar antenna apparatus with selectable elements
US8031129B2 (en) 2004-08-18 2011-10-04 Ruckus Wireless, Inc. Dual band dual polarization antenna array
US7498996B2 (en) * 2004-08-18 2009-03-03 Ruckus Wireless, Inc. Antennas with polarization diversity
US7899497B2 (en) * 2004-08-18 2011-03-01 Ruckus Wireless, Inc. System and method for transmission parameter control for an antenna apparatus with selectable elements
US7933628B2 (en) 2004-08-18 2011-04-26 Ruckus Wireless, Inc. Transmission and reception parameter control
KR100608582B1 (en) * 2004-08-28 2006-08-03 삼성전자주식회사 Method and apparatus for universal plug and play communication
US7590803B2 (en) * 2004-09-23 2009-09-15 Sap Ag Cache eviction
US9240868B2 (en) 2004-11-05 2016-01-19 Ruckus Wireless, Inc. Increasing reliable data throughput in a wireless network
US8619662B2 (en) 2004-11-05 2013-12-31 Ruckus Wireless, Inc. Unicast to multicast conversion
US7505447B2 (en) * 2004-11-05 2009-03-17 Ruckus Wireless, Inc. Systems and methods for improved data throughput in communications networks
US8638708B2 (en) 2004-11-05 2014-01-28 Ruckus Wireless, Inc. MAC based mapping in IP based communications
CN1934750B (en) * 2004-11-22 2012-07-18 鲁库斯无线公司 Circuit board having a peripheral antenna apparatus with selectable antenna elements
US20060120385A1 (en) * 2004-12-02 2006-06-08 Atchison Darrell T Method and system for creating and managing multiple subscribers of a content delivery network
US8792414B2 (en) 2005-07-26 2014-07-29 Ruckus Wireless, Inc. Coverage enhancement using dynamic antennas
US7358912B1 (en) 2005-06-24 2008-04-15 Ruckus Wireless, Inc. Coverage antenna apparatus with selectable horizontal and vertical polarization elements
US7580915B2 (en) * 2004-12-14 2009-08-25 Sap Ag Socket-like communication API for C
US7600217B2 (en) * 2004-12-14 2009-10-06 Sap Ag Socket-like communication API for Java
US20060143398A1 (en) * 2004-12-23 2006-06-29 Stefan Rau Method and apparatus for least recently used (LRU) software cache
US7523263B2 (en) * 2004-12-28 2009-04-21 Michael Wintergerst Storage plug-in based on shared closures
US7539821B2 (en) 2004-12-28 2009-05-26 Sap Ag First in first out eviction implementation
US7451275B2 (en) * 2004-12-28 2008-11-11 Sap Ag Programming models for storage plug-ins
US7694065B2 (en) * 2004-12-28 2010-04-06 Sap Ag Distributed cache architecture
US20060143256A1 (en) * 2004-12-28 2006-06-29 Galin Galchev Cache region concept
US8204931B2 (en) 2004-12-28 2012-06-19 Sap Ag Session management within a multi-tiered enterprise network
US20060143389A1 (en) * 2004-12-28 2006-06-29 Frank Kilian Main concept for common cache management
US7971001B2 (en) * 2004-12-28 2011-06-28 Sap Ag Least recently used eviction implementation
US7552284B2 (en) * 2004-12-28 2009-06-23 Sap Ag Least frequently used eviction implementation
US7672949B2 (en) * 2004-12-28 2010-03-02 Sap Ag Connection manager having a common dispatcher for heterogeneous software suites
US20060143236A1 (en) * 2004-12-29 2006-06-29 Bandwidth Productions Inc. Interactive music playlist sharing system and methods
US20060156388A1 (en) * 2005-01-13 2006-07-13 Vlad Stirbu Method and apparatus for a security framework that enables identity and access control services
US7646343B2 (en) 2005-06-24 2010-01-12 Ruckus Wireless, Inc. Multiple-input multiple-output wireless antennas
US7893882B2 (en) 2007-01-08 2011-02-22 Ruckus Wireless, Inc. Pattern shaping of RF emission patterns
KR100645537B1 (en) * 2005-02-07 2006-11-14 삼성전자주식회사 Method of dynamic Queue management for the stable packet forwarding and Element of network thereof
JP5092200B2 (en) * 2005-03-17 2012-12-05 株式会社日立製作所 Network device and event processing method
WO2006108104A2 (en) * 2005-04-05 2006-10-12 Cohen Alexander J Multi-media search, discovery, submission and distribution control infrastructure
US7656866B2 (en) * 2005-04-22 2010-02-02 At&T Corp. Controlling media server resources in a VoIP network
US7581066B2 (en) * 2005-04-29 2009-08-25 Sap Ag Cache isolation model
US8589562B2 (en) * 2005-04-29 2013-11-19 Sap Ag Flexible failover configuration
US7831634B2 (en) 2005-04-29 2010-11-09 Sap Ag Initializing a cache region using a generated cache region configuration structure
JP2008542901A (en) * 2005-05-31 2008-11-27 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Portable storage medium, host device, and method of accessing contents of portable storage medium by host device
US7689660B2 (en) * 2005-06-09 2010-03-30 Sap Ag Application server architecture
EP1898316A4 (en) * 2005-06-30 2012-04-04 Mitsubishi Electric Corp Client device
DE102005033211A1 (en) * 2005-07-13 2007-01-18 Deutsche Thomson-Brandt Gmbh Method for determining the activity of a device in a network of distributed stations and network station for carrying out the method
US7966412B2 (en) * 2005-07-19 2011-06-21 Sap Ag System and method for a pluggable protocol handler
JP4933156B2 (en) * 2005-07-29 2012-05-16 株式会社リコー Image shooting device
US20070027808A1 (en) * 2005-07-29 2007-02-01 Microsoft Corporation Strategies for queuing events for subsequent processing
US20070067386A1 (en) * 2005-08-30 2007-03-22 D-Link Systems, Inc. Embedded media server
CA2622625A1 (en) * 2005-09-14 2007-03-22 O-Ya!, Inc. Networked information indexing and search apparatus and method
CN101322346A (en) 2005-12-01 2008-12-10 鲁库斯无线公司 On-demand services by wireless base station virtualization
US8539496B1 (en) * 2005-12-12 2013-09-17 At&T Intellectual Property Ii, L.P. Method and apparatus for configuring network systems implementing diverse platforms to perform business tasks
TWI292536B (en) * 2005-12-13 2008-01-11 Inst Information Industry Computing system, method and computer readable media for group interactive multicast using upnp av architecture
US9467322B2 (en) * 2005-12-27 2016-10-11 Rovi Solutions Corporation Methods and apparatus for integrating media across a wide area network
US20070157016A1 (en) * 2005-12-29 2007-07-05 Dayan Richard A Apparatus, system, and method for autonomously preserving high-availability network boot services
US8707323B2 (en) * 2005-12-30 2014-04-22 Sap Ag Load balancing algorithm for servicing client requests
CN1997014A (en) * 2006-01-05 2007-07-11 三星电子株式会社 Streaming service providing method adaptive to dynamic network changes
KR101017365B1 (en) * 2006-02-14 2011-02-28 삼성전자주식회사 Method for synchronizing multiple CDS devices, CDS devices and system thereof.
US20070226734A1 (en) * 2006-03-03 2007-09-27 Microsoft Corporation Auxiliary display gadget for distributed content
US8863221B2 (en) * 2006-03-07 2014-10-14 Samsung Electronics Co., Ltd. Method and system for integrating content and services among multiple networks
US8509817B2 (en) 2006-03-22 2013-08-13 Core Wireless Licensing S.A.R.L. System and method for mobile telephone and UPnP control point integration
US7600024B2 (en) * 2006-03-31 2009-10-06 Microsoft Corporation Restricting device access per session
US20230017018A1 (en) * 2006-03-31 2023-01-19 Sheng Tai (Ted) Tsao Method and Apparatus For Information exchange Over a Web Based Environment
US8489748B2 (en) 2006-04-04 2013-07-16 Core Wireless Licensing S.A.R.L. Enhanced UPnP AV media renderer
KR101235272B1 (en) * 2006-04-05 2013-02-20 삼성전자주식회사 Method and apparatus for trans-coding by media server and requesting trans-coding by control point
US8117246B2 (en) * 2006-04-17 2012-02-14 Microsoft Corporation Registering, transfering, and acting on event metadata
DE102006019360A1 (en) * 2006-04-21 2007-10-25 Deutsche Telekom Ag Method and device for reproducing textual data on media renderers in a UPnP network
US7788703B2 (en) * 2006-04-24 2010-08-31 Ruckus Wireless, Inc. Dynamic authentication in secured wireless networks
US9071583B2 (en) * 2006-04-24 2015-06-30 Ruckus Wireless, Inc. Provisioned configuration for automatic wireless connection
US9769655B2 (en) 2006-04-24 2017-09-19 Ruckus Wireless, Inc. Sharing security keys with headless devices
US7639106B2 (en) * 2006-04-28 2009-12-29 Ruckus Wireless, Inc. PIN diode network for multiband RF coupling
US7971182B1 (en) 2006-05-09 2011-06-28 Vmware, Inc. Application environment specifications for provisioning application specific runtime environments using undefined symbols
JP4933149B2 (en) * 2006-05-22 2012-05-16 キヤノン株式会社 Information processing apparatus, electronic data transfer method, and program
US20080045149A1 (en) * 2006-05-26 2008-02-21 Dinesh Dharmaraju Wireless architecture for a traditional wire-based protocol
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
WO2007145069A1 (en) * 2006-06-15 2007-12-21 Sony Corporation Information processing device, information processing method, and computer program
US7792756B2 (en) * 2006-06-27 2010-09-07 Microsoft Corporation Subscription management in a media sharing service
US8327266B2 (en) * 2006-07-11 2012-12-04 Napo Enterprises, Llc Graphical user interface system for allowing management of a media item playlist based on a preference scoring system
US7792967B2 (en) * 2006-07-14 2010-09-07 Chacha Search, Inc. Method and system for sharing and accessing resources
US8667076B2 (en) * 2006-07-28 2014-03-04 Microsoft Corporation Mapping universal plug and play discovered items to an SMB location
US8670725B2 (en) 2006-08-18 2014-03-11 Ruckus Wireless, Inc. Closed-loop automatic channel selection
US7904575B2 (en) * 2006-08-25 2011-03-08 Samsung Electronics Co., Ltd. Apparatus and method for matching protocols of embedded audio/video contents
KR101138395B1 (en) * 2006-09-22 2012-04-27 삼성전자주식회사 Method and apparatus for sharing access right of content
US9436931B2 (en) * 2006-09-29 2016-09-06 Intel Corporation Remote prompting infrastructure
US7882356B2 (en) * 2006-10-13 2011-02-01 Microsoft Corporation UPnP authentication and authorization
US8520850B2 (en) 2006-10-20 2013-08-27 Time Warner Cable Enterprises Llc Downloadable security and protection methods and apparatus
US7797412B2 (en) * 2006-10-25 2010-09-14 Oracle America Inc. Method and system for managing server configuration data
FR2909824B1 (en) * 2006-12-06 2009-05-29 Awox Sa METHOD AND COMMUNICATION DEVICE APPLYING IN PARTICULAR TO WIRELESS LOCAL COMMUNICATION
US8180735B2 (en) * 2006-12-29 2012-05-15 Prodea Systems, Inc. Managed file backup and restore at remote storage locations through multi-services gateway at user premises
US8621540B2 (en) 2007-01-24 2013-12-31 Time Warner Cable Enterprises Llc Apparatus and methods for provisioning in a download-enabled system
US20080228507A1 (en) * 2007-03-14 2008-09-18 Paul Larue Retail publishing system, method, program, and apparatus
US20080243692A1 (en) * 2007-03-30 2008-10-02 Verizon Services Corp. Content ingest, maintenance, and delivery
US8069433B2 (en) * 2007-04-18 2011-11-29 Microsoft Corporation Multi-format centralized distribution of localized resources for multiple products
US20100064351A1 (en) * 2007-04-27 2010-03-11 Telefonaktiebolaget L M Ericsson Universal Plug and Play Extender
US8347263B1 (en) 2007-05-09 2013-01-01 Vmware, Inc. Repository including installation metadata for executable applications
US8577937B1 (en) * 2007-05-09 2013-11-05 Vmware, Inc. Repository including exclusion list
US8001083B1 (en) 2007-05-09 2011-08-16 Vmware, Inc. Repository including version management
US7971047B1 (en) 2007-09-10 2011-06-28 Vmware, Inc. Operating system environment and installation
US11262996B2 (en) * 2007-05-09 2022-03-01 Vmware, Inc. Repository including exclusion list
US9015180B1 (en) 2007-05-09 2015-04-21 Vmware, Inc. Repository including file identification
US8219987B1 (en) 2007-08-24 2012-07-10 Vmware, Inc. Optimized virtual machine specification for provisioning application specific runtime environment
US8316309B2 (en) * 2007-05-31 2012-11-20 International Business Machines Corporation User-created metadata for managing interface resources on a user interface
US8613044B2 (en) * 2007-06-22 2013-12-17 4Dk Technologies, Inc. Delegating or transferring of access to resources between multiple devices
US8254352B2 (en) * 2007-06-28 2012-08-28 Universal Electronics Inc. System and method for configuration of network-capable appliances
US8667144B2 (en) * 2007-07-25 2014-03-04 Qualcomm Incorporated Wireless architecture for traditional wire based protocol
US8547899B2 (en) 2007-07-28 2013-10-01 Ruckus Wireless, Inc. Wireless network throughput enhancement through channel aware scheduling
KR20090022997A (en) * 2007-08-29 2009-03-04 삼성전자주식회사 Method and apparatus for managing drm rights object
JP5092179B2 (en) * 2007-09-13 2012-12-05 オンキヨー株式会社 Server and server program
EP3021634B1 (en) * 2007-11-02 2020-03-25 BlackBerry Limited Long term evolution user equipment multi-packet data network parameter based connectivity control
US20090150520A1 (en) * 2007-12-07 2009-06-11 David Garcia Transmitting Assets In UPnP Networks To Remote Servers
US20090150481A1 (en) * 2007-12-08 2009-06-11 David Garcia Organizing And Publishing Assets In UPnP Networks
US20090150570A1 (en) * 2007-12-07 2009-06-11 Bo Tao Sharing Assets Between UPnP Networks
US20090150480A1 (en) * 2007-12-08 2009-06-11 Xiyuan Xia Publishing Assets Of Dynamic Nature In UPnP Networks
US8355343B2 (en) 2008-01-11 2013-01-15 Ruckus Wireless, Inc. Determining associations in a mesh network
US8577894B2 (en) 2008-01-25 2013-11-05 Chacha Search, Inc Method and system for access to restricted resources
JP4609506B2 (en) * 2008-03-05 2011-01-12 ソニー株式会社 Network system
JP4492719B2 (en) * 2008-03-10 2010-06-30 ソニー株式会社 Data communication apparatus, data communication method, data request apparatus, data request method, and data communication system
JP4569649B2 (en) * 2008-03-19 2010-10-27 ソニー株式会社 Information processing apparatus, information reproducing apparatus, information processing method, information reproducing method, information processing system, and program
US8811294B2 (en) * 2008-04-04 2014-08-19 Qualcomm Incorporated Apparatus and methods for establishing client-host associations within a wireless network
US8285810B2 (en) 2008-04-17 2012-10-09 Eloy Technology, Llc Aggregating media collections between participants of a sharing network utilizing bridging
US8484311B2 (en) * 2008-04-17 2013-07-09 Eloy Technology, Llc Pruning an aggregate media collection
US8224899B2 (en) 2008-04-17 2012-07-17 Eloy Technology, Llc Method and system for aggregating media collections between participants of a sharing network
US8285811B2 (en) 2008-04-17 2012-10-09 Eloy Technology, Llc Aggregating media collections to provide a primary list and sorted sub-lists
JP4346670B1 (en) * 2008-05-20 2009-10-21 株式会社東芝 Electronic device and content data providing method
JP4342596B1 (en) * 2008-05-20 2009-10-14 株式会社東芝 Electronic device and content data providing method
US7948887B2 (en) 2008-06-24 2011-05-24 Microsoft Corporation Network bandwidth measurement
US8307093B2 (en) * 2008-06-25 2012-11-06 Microsoft Corporation Remote access between UPnP devices
US9043726B2 (en) * 2008-07-03 2015-05-26 Ebay Inc. Position editing tool of collage multi-media
US8365092B2 (en) 2008-07-03 2013-01-29 Ebay Inc. On-demand loading of media in a multi-media presentation
US8893015B2 (en) 2008-07-03 2014-11-18 Ebay Inc. Multi-directional and variable speed navigation of collage multi-media
US10282391B2 (en) 2008-07-03 2019-05-07 Ebay Inc. Position editing tool of collage multi-media
US20100011289A1 (en) * 2008-07-09 2010-01-14 Theladders.Com, Inc. Method and system for document viewing
US8086526B2 (en) 2008-07-23 2011-12-27 Ebay Inc. Hybrid account
US20100042535A1 (en) * 2008-08-15 2010-02-18 Ebay Inc. Currency display
US7853712B2 (en) * 2008-09-29 2010-12-14 Eloy Technology, Llc Activity indicators in a media sharing system
US20100094834A1 (en) * 2008-10-15 2010-04-15 Concert Technology Corporation Bridging in a media sharing system
US8484227B2 (en) 2008-10-15 2013-07-09 Eloy Technology, Llc Caching and synching process for a media sharing system
US8880599B2 (en) 2008-10-15 2014-11-04 Eloy Technology, Llc Collection digest for a media sharing system
US9357247B2 (en) 2008-11-24 2016-05-31 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US10755287B2 (en) * 2008-11-25 2020-08-25 Microsoft Technology Licensing, Llc Selecting between client-side and server-side market detection
US9398089B2 (en) 2008-12-11 2016-07-19 Qualcomm Incorporated Dynamic resource sharing among multiple wireless devices
US8041823B2 (en) * 2008-12-23 2011-10-18 At & T Intellectual Property I, L.P. Optimization of media flows in a telecommunications system
US8700072B2 (en) 2008-12-23 2014-04-15 At&T Mobility Ii Llc Scalable message fidelity
US9014832B2 (en) 2009-02-02 2015-04-21 Eloy Technology, Llc Augmenting media content in a media sharing group
US20100205321A1 (en) * 2009-02-12 2010-08-12 Qualcomm Incorporated Negotiable and adaptable periodic link status monitoring
US8102849B2 (en) 2009-02-12 2012-01-24 Qualcomm, Incorporated Association procedure to enable multiple multicast streams
US8217843B2 (en) 2009-03-13 2012-07-10 Ruckus Wireless, Inc. Adjustment of radiation patterns utilizing a position sensor
US8171141B1 (en) * 2009-04-02 2012-05-01 Vmware, Inc. Provisioning system including stack manager
US8698675B2 (en) 2009-05-12 2014-04-15 Ruckus Wireless, Inc. Mountable antenna elements for dual band antenna
US9602864B2 (en) 2009-06-08 2017-03-21 Time Warner Cable Enterprises Llc Media bridge apparatus and methods
US11647243B2 (en) 2009-06-26 2023-05-09 Seagate Technology Llc System and method for using an application on a mobile device to transfer internet media content
US20120210205A1 (en) 2011-02-11 2012-08-16 Greg Sherwood System and method for using an application on a mobile device to transfer internet media content
US9264248B2 (en) * 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US8838797B2 (en) * 2009-07-10 2014-09-16 Empire Technology Development Llc Dynamic computation allocation
US9836376B2 (en) * 2009-09-24 2017-12-05 Contec, Llc Method and system for automated test of end-user devices
US20110082902A1 (en) * 2009-10-01 2011-04-07 Apple Inc. Systems and methods for providing media pools in a communications network
KR101066451B1 (en) * 2009-10-06 2011-09-23 한국과학기술연구원 UPnP CONTROL POINT AND UPnP DEVICE BASED ON THE UPnP NETWORK AND CONNECTING METHOD USING THE SAME
KR20110053110A (en) * 2009-11-13 2011-05-19 삼성전자주식회사 Display apparatus, client, image display system comprising the same and image displaying method
KR101164813B1 (en) * 2009-11-13 2012-07-12 삼성전자주식회사 Display apparatus, terminal and image displaying method
EP2350863B1 (en) 2009-11-16 2015-08-26 Ruckus Wireless, Inc. Establishing a mesh network with wired and wireless links
US9979626B2 (en) 2009-11-16 2018-05-22 Ruckus Wireless, Inc. Establishing a mesh network with wired and wireless links
EP2507681A4 (en) * 2009-12-02 2013-08-07 Packetvideo Corp System and method for transferring media content from a mobile device to a home network
KR101656882B1 (en) * 2009-12-04 2016-09-12 삼성전자주식회사 Method and apparatus for providing a user interface list in a network
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
FR2952493A1 (en) * 2010-02-24 2011-05-13 France Telecom Method for filtering information in e.g. digital media player in domestic network, involves filtering information according to criterion defined by user of terminal such that information is not presented if criterion is satisfied
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US8346920B2 (en) * 2010-07-15 2013-01-01 Srr Patent Holdings, Llc Managing network resource requests
US9407012B2 (en) 2010-09-21 2016-08-02 Ruckus Wireless, Inc. Antenna with dual polarization and mountable antenna elements
US9208239B2 (en) 2010-09-29 2015-12-08 Eloy Technology, Llc Method and system for aggregating music in the cloud
WO2012041216A1 (en) * 2010-09-30 2012-04-05 北京联想软件有限公司 Portable electronic device, content publishing method, and prompting method
US8689181B2 (en) * 2010-11-23 2014-04-01 Axeda Corporation Scripting web services
WO2012079208A1 (en) 2010-12-13 2012-06-21 Motorola, Inc. Sharing media among remote access clients in a universal plug and play environment
US9064278B2 (en) 2010-12-30 2015-06-23 Futurewei Technologies, Inc. System for managing, storing and providing shared digital content to users in a user relationship defined group in a multi-platform environment
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US9582239B2 (en) 2011-01-21 2017-02-28 Qualcomm Incorporated User input back channel for wireless displays
US8964783B2 (en) 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US20120204093A1 (en) * 2011-02-08 2012-08-09 Microsoft Corporation Providing web-based content to local device
US8798777B2 (en) 2011-03-08 2014-08-05 Packetvideo Corporation System and method for using a list of audio media to create a list of audiovisual media
KR101243015B1 (en) * 2011-03-16 2013-03-12 엔에이치엔비즈니스플랫폼 주식회사 Service providing system and service providing method for providing combined separate services
US9792188B2 (en) 2011-05-01 2017-10-17 Ruckus Wireless, Inc. Remote cable access point reset
CN102882830B (en) * 2011-07-11 2016-06-08 华为终端有限公司 Medium resource access control method and equipment
KR101995425B1 (en) * 2011-08-21 2019-07-02 엘지전자 주식회사 Video display device, terminal device and operating method thereof
US20130073670A1 (en) * 2011-09-15 2013-03-21 Microsoft Corporation Geo-Migration Of User State
KR101315608B1 (en) 2011-09-27 2013-10-18 엘지전자 주식회사 Contents managing method and display apparatus thereof
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
US8756668B2 (en) 2012-02-09 2014-06-17 Ruckus Wireless, Inc. Dynamic PSK for hotspots
US9634403B2 (en) 2012-02-14 2017-04-25 Ruckus Wireless, Inc. Radio frequency emission pattern shaping
US10186750B2 (en) 2012-02-14 2019-01-22 Arris Enterprises Llc Radio frequency antenna array with spacing element
US9092610B2 (en) 2012-04-04 2015-07-28 Ruckus Wireless, Inc. Key assignment for a brand
US20130312046A1 (en) * 2012-05-15 2013-11-21 Mark Robertson Smart stream delivery server, system and methods for assembling a mix of services to be delivered to a subscriber's premises
US10187474B2 (en) * 2012-08-08 2019-01-22 Samsung Electronics Co., Ltd. Method and device for resource sharing between devices
GB2504725B (en) * 2012-08-08 2017-01-11 Samsung Electronics Co Ltd Resource sharing between devices
US9570799B2 (en) 2012-09-07 2017-02-14 Ruckus Wireless, Inc. Multiband monopole antenna apparatus with ground plane aperture
KR102007841B1 (en) * 2012-10-15 2019-08-06 엘지전자 주식회사 Media share control apparatus, media display apparatus, server for providing a media share application and media share method
US9736205B2 (en) * 2012-10-15 2017-08-15 Lg Electronics Inc. Media share control apparatus, media reproducing apparatus, and method of providing user interface for media sharing thereof
US20150319485A1 (en) * 2012-12-07 2015-11-05 Samsung Electronics Co., Ltd. Method and system for streaming multimedia contents in a wi-fi network
US9565472B2 (en) 2012-12-10 2017-02-07 Time Warner Cable Enterprises Llc Apparatus and methods for content transfer protection
WO2014146038A1 (en) 2013-03-15 2014-09-18 Ruckus Wireless, Inc. Low-band reflector for dual band directional antenna
WO2014193331A1 (en) 2013-05-27 2014-12-04 Echostar Ukraine, LLC Network-wide remote parental control
US10277948B2 (en) * 2013-05-27 2019-04-30 Dish Ukraine L.L.C. Remote parental control with reward unlock
US10715973B2 (en) 2013-05-29 2020-07-14 Sonos, Inc. Playback queue control transition
US9798510B2 (en) 2013-05-29 2017-10-24 Sonos, Inc. Connected state indicator
US9703521B2 (en) 2013-05-29 2017-07-11 Sonos, Inc. Moving a playback queue to a new zone
US9735978B2 (en) 2013-05-29 2017-08-15 Sonos, Inc. Playback queue control via a playlist on a mobile device
US9495076B2 (en) 2013-05-29 2016-11-15 Sonos, Inc. Playlist modification
US9953179B2 (en) 2013-05-29 2018-04-24 Sonos, Inc. Private queue indicator
CN103327100B (en) * 2013-06-21 2017-04-19 华为技术有限公司 Resource processing method and site server
WO2015006307A1 (en) * 2013-07-09 2015-01-15 Contentraven, Inc. Systems and methods for trusted sharing
CN103560979B (en) * 2013-11-21 2017-03-29 中国联合网络通信集团有限公司 A kind of resource allocation methods and equipment
EP2887232B1 (en) * 2013-12-18 2015-12-16 Advanced Digital Broadcast S.A. Computer implemented method for universal plug-and-play content retrieval
US9621940B2 (en) 2014-05-29 2017-04-11 Time Warner Cable Enterprises Llc Apparatus and methods for recording, accessing, and delivering packetized content
US9628850B2 (en) 2014-05-30 2017-04-18 Lg Electronics Inc. Server, home device access server, terminal, and home device remote control system including the same
JP6354382B2 (en) 2014-06-26 2018-07-11 株式会社リコー Authentication system, authentication method, authentication apparatus, and program
AU2015207840B2 (en) * 2014-07-31 2020-06-18 Samsung Electronics Co., Ltd. System and method of managing metadata
US10528598B2 (en) * 2015-02-26 2020-01-07 Schneider Electric USA, Inc. Energy management system and method
US10152212B2 (en) 2015-04-10 2018-12-11 Sonos, Inc. Media container addition and playback within queue
WO2016197115A1 (en) * 2015-06-05 2016-12-08 Arris Enterprises Llc Virtual wallet for set-top-box
US9736259B2 (en) 2015-06-30 2017-08-15 Iheartmedia Management Services, Inc. Platform-as-a-service with proxy-controlled request routing
US10404758B2 (en) 2016-02-26 2019-09-03 Time Warner Cable Enterprises Llc Apparatus and methods for centralized message exchange in a user premises device
US10341128B2 (en) * 2016-03-12 2019-07-02 Wipro Limited Method and system for optimizing usage of network resources in a communication network
US10779056B2 (en) 2016-04-14 2020-09-15 Contec, Llc Automated network-based test system for set top box devices
US10462456B2 (en) 2016-04-14 2019-10-29 Contec, Llc Automated network-based test system for set top box devices
CN107018168B (en) 2016-09-19 2020-07-24 阿里巴巴集团控股有限公司 Internet resource scheduling method and device and network red packet scheduling method
US10284456B2 (en) 2016-11-10 2019-05-07 Contec, Llc Systems and methods for testing electronic devices using master-slave test architectures
US11968268B2 (en) 2019-07-30 2024-04-23 Dolby Laboratories Licensing Corporation Coordination of audio devices
JP2022542388A (en) * 2019-07-30 2022-10-03 ドルビー ラボラトリーズ ライセンシング コーポレイション Coordination of audio equipment
US11620165B2 (en) 2019-10-09 2023-04-04 Bank Of America Corporation System for automated resource transfer processing using a distributed server network
CN114945906A (en) * 2019-11-15 2022-08-26 吉尼瓦技术有限公司 Communication platform capable of being customized

Family Cites Families (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829368B2 (en) 2000-01-26 2004-12-07 Digimarc Corporation Establishing and interacting with on-line media collections using identifiers in media signals
US6084952A (en) 1996-01-18 2000-07-04 Pocketscience, Inc. System and method for communicating electronic messages over a telephone network using acoustical coupling
US5966135A (en) 1996-10-30 1999-10-12 Autodesk, Inc. Vector-based geographic data
EP0968596B1 (en) 1997-03-12 2007-07-18 Nomadix, Inc. Nomadic translator or router
US6192415B1 (en) 1997-06-19 2001-02-20 International Business Machines Corporation Web server with ability to process URL requests for non-markup language objects and perform actions on the objects using executable instructions contained in the URL
US6119167A (en) 1997-07-11 2000-09-12 Phone.Com, Inc. Pushing and pulling data in networks
JP4596495B2 (en) 1997-07-18 2010-12-08 ソニー株式会社 CONTROL DEVICE, CONTROL METHOD, ELECTRIC DEVICE SYSTEM, ELECTRIC DEVICE SYSTEM CONTROL METHOD, AND RECORDING MEDIUM
US6925483B1 (en) 1998-06-25 2005-08-02 Cisco Technology, Inc. System for characterizing information from an information producer
CN1180615C (en) 1998-07-17 2004-12-15 联合视频制品公司 Interactive television program guide system having multiple devices within household
AR019458A1 (en) 1998-07-23 2002-02-20 United Video Properties Inc AN INTERACTIVE TELEVISION PROGRAMMING GUIDE PROVISION THAT SERVES AS AN ENTRY
US6502135B1 (en) 1998-10-30 2002-12-31 Science Applications International Corporation Agile network protocol for secure communications with assured system availability
JP2000330937A (en) * 1999-05-17 2000-11-30 Yaskawa Electric Corp Intranet system and method for controlling server
US6910068B2 (en) * 1999-06-11 2005-06-21 Microsoft Corporation XML-based template language for devices and services
US6430624B1 (en) 1999-10-21 2002-08-06 Air2Web, Inc. Intelligent harvesting and navigation system and method
US6564257B1 (en) 1999-12-09 2003-05-13 International Business Machines Corporation Repository protection by URL expiration
US20040220926A1 (en) * 2000-01-03 2004-11-04 Interactual Technologies, Inc., A California Cpr[P Personalization services for entities from multiple sources
US20030097338A1 (en) 2000-02-03 2003-05-22 Piotrowski Tony E. Method and system for purchasing content related material
AU2001250975A1 (en) 2000-03-24 2001-10-08 Eliza Corporation Phonetic data processing system and method
US6839748B1 (en) 2000-04-21 2005-01-04 Sun Microsystems, Inc. Synchronous task scheduler for corba gateway
US6643650B1 (en) 2000-05-09 2003-11-04 Sun Microsystems, Inc. Mechanism and apparatus for using messages to look up documents stored in spaces in a distributed computing environment
US7194689B2 (en) 2000-08-22 2007-03-20 Microsoft Corporation Generic user control point tool for universal plug and play (UPnP) devices
US20020092019A1 (en) 2000-09-08 2002-07-11 Dwight Marcus Method and apparatus for creation, distribution, assembly and verification of media
US20020077988A1 (en) 2000-12-19 2002-06-20 Sasaki Gary D. Distributing digital content
US7200575B2 (en) 2001-02-27 2007-04-03 Hewlett-Packard Development Company, L.P. Managing access to digital content
US7124173B2 (en) 2001-04-30 2006-10-17 Moriarty Kathleen M Method and apparatus for intercepting performance metric packets for improved security and intrusion detection
US20020194604A1 (en) 2001-06-19 2002-12-19 Sanchez Elizabeth C. Interactive television virtual shopping cart
US20030005130A1 (en) 2001-06-29 2003-01-02 Cheng Doreen Yining Audio-video management in UPnP
JP3695369B2 (en) 2001-08-07 2005-09-14 ソニー株式会社 Information distribution system, information distribution method, information supply apparatus, and information supply method
JP4007898B2 (en) * 2001-10-25 2007-11-14 松下電器産業株式会社 Content usage condition management system
US7337402B2 (en) * 2001-11-09 2008-02-26 Microsoft Corporation Tunable information presentation appliance using an extensible markup language
GB0129177D0 (en) 2001-12-06 2002-01-23 Koninl Philips Electronics Nv Havi-upnp bridging
US8261306B2 (en) 2001-12-11 2012-09-04 Koninklijke Philips Electronics N.V. System for and method of shopping through television
JP2003186831A (en) * 2001-12-13 2003-07-04 Sony Corp Network system, information processing device and method, recording medium, and program
US7287053B2 (en) 2002-01-15 2007-10-23 International Business Machines Corporation Ad hoc data sharing in virtual team rooms
US7690012B2 (en) * 2002-02-28 2010-03-30 Scientific-Atlanta, Inc. Positive parental control
JP2003256260A (en) 2002-03-01 2003-09-10 Sony Corp Data sharing system, shared center server, advertising staff terminal device, computer program, storage medium, and data sharing method for shared center server
US20030191802A1 (en) * 2002-04-03 2003-10-09 Koninklijke Philips Electronics N.V. Reshaped UDDI for intranet use
JP3823929B2 (en) 2002-05-17 2006-09-20 ソニー株式会社 Information processing apparatus, information processing method, content distribution apparatus, content distribution method, and computer program
US20030233471A1 (en) 2002-06-17 2003-12-18 Julian Mitchell Establishing a call in a packet-based communications network
US7149755B2 (en) 2002-07-29 2006-12-12 Hewlett-Packard Development Company, Lp. Presenting a collection of media objects
CN1322432C (en) 2002-10-25 2007-06-20 国际商业机器公司 Safety system and method for medium content data file network distribution
US7526545B2 (en) 2003-01-17 2009-04-28 Relevant Media Llc Content distribution system
US20040158823A1 (en) 2003-02-12 2004-08-12 Ylian Saint-Hilaire Method, apparatus and system for generating customized UPnP applications
US7308489B2 (en) 2003-05-29 2007-12-11 Intel Corporation Visibility of media contents of UPnP media servers and initiating rendering via file system user interface
US7831693B2 (en) 2003-08-18 2010-11-09 Oracle America, Inc. Structured methodology and design patterns for web services
KR100608590B1 (en) 2003-09-16 2006-08-03 삼성전자주식회사 Network device to enable the service support according to quality of service, network system and method using this
US20050198493A1 (en) 2003-09-17 2005-09-08 Bartas John A. Distribution methods and apparatus for promoting distributed digital content on a local network
US20050125564A1 (en) 2003-12-04 2005-06-09 Matsushita Electric Industrial Co., Ltd. Profiling service for the automatic service discovery and control middleware frameworks
US7647385B2 (en) 2003-12-19 2010-01-12 Microsoft Corporation Techniques for limiting network access
US20050138137A1 (en) 2003-12-19 2005-06-23 Microsoft Corporation Using parameterized URLs for retrieving resource content items
US7555543B2 (en) 2003-12-19 2009-06-30 Microsoft Corporation Server architecture for network resource information routing
US7668939B2 (en) 2003-12-19 2010-02-23 Microsoft Corporation Routing of resource information in a network
US20050160458A1 (en) 2004-01-21 2005-07-21 United Video Properties, Inc. Interactive television system with custom video-on-demand menus based on personal profiles
US7707039B2 (en) 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US7933290B2 (en) 2004-03-30 2011-04-26 Nokia Corporation System and method for comprehensive service translation
KR100619018B1 (en) 2004-05-12 2006-08-31 삼성전자주식회사 Method for sharing A/V content over network, sink device, source device and message structure
US20060168225A1 (en) 2004-10-29 2006-07-27 John Gunning Network and a distributed electronic commerce system using the network
US7412534B2 (en) 2005-09-30 2008-08-12 Yahoo! Inc. Subscription control panel
US20070107016A1 (en) 2005-11-04 2007-05-10 Angel Albert J Interactive Multiple Channel User Enrollment, Purchase Confirmation Transactional System with Fulfillment Response Feature for Video On Demand Cable Systems
CA2634489C (en) 2005-12-21 2016-08-30 Digimarc Corporation Rules driven pan id metadata routing system and network
US7706740B2 (en) 2006-01-06 2010-04-27 Qualcomm Incorporated Apparatus and methods of selective collection and selective presentation of content

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1842782B (en) * 2003-12-19 2011-04-13 微软公司 Server architecture for network resource information routing
CN102272717A (en) * 2009-01-07 2011-12-07 索尼公司 Parallel tasking application framework
CN102483742A (en) * 2009-09-04 2012-05-30 培基维帝亚股份有限公司 System and method for managing internet media content
CN102483742B (en) * 2009-09-04 2016-06-22 Iii控股2有限责任公司 For managing the system and method for internet media content
CN101924758A (en) * 2010-07-28 2010-12-22 中兴通讯股份有限公司 Media server and method thereof for providing services
US9467847B2 (en) 2011-03-18 2016-10-11 Samsung Electronics Co., Ltd Method and system for managing contact information in a universal plug and play home network environment
CN103563298A (en) * 2011-03-18 2014-02-05 三星电子株式会社 Method and system for managing contact information in universal plug and play home network environment
CN103563298B (en) * 2011-03-18 2017-04-05 三星电子株式会社 The method and system of contact details is managed in UPnP home network environment
US10757471B2 (en) 2011-12-30 2020-08-25 Sonos, Inc. Systems and methods for networked music playback
CN107948722A (en) * 2011-12-30 2018-04-20 搜诺思公司 System and method for music playback of networking
US10567831B2 (en) 2011-12-30 2020-02-18 Sonos, Inc. Systems and methods for networked music playback
US10779033B2 (en) 2011-12-30 2020-09-15 Sonos, Inc. Systems and methods for networked music playback
CN107948722B (en) * 2011-12-30 2020-09-18 搜诺思公司 System and method for networked music playback
US10945027B2 (en) 2011-12-30 2021-03-09 Sonos, Inc. Systems and methods for networked music playback
US11743534B2 (en) 2011-12-30 2023-08-29 Sonos, Inc Systems and methods for networked music playback
US11825174B2 (en) 2012-06-26 2023-11-21 Sonos, Inc. Remote playback queue
CN103891238A (en) * 2012-08-14 2014-06-25 华为技术有限公司 Method and device for sharing graphics information
CN103841051B (en) * 2012-11-27 2017-05-10 国基电子(上海)有限公司 Service request control system and method
CN103841051A (en) * 2012-11-27 2014-06-04 国基电子(上海)有限公司 Service request control system and method
US11188590B2 (en) 2013-04-16 2021-11-30 Sonos, Inc. Playlist update corresponding to playback queue modification
US11321046B2 (en) 2013-04-16 2022-05-03 Sonos, Inc. Playback transfer in a media playback system
US11727134B2 (en) 2013-04-16 2023-08-15 Sonos, Inc. Playback device queue access levels
US11188666B2 (en) 2013-04-16 2021-11-30 Sonos, Inc. Playback device queue access levels
US11775251B2 (en) 2013-04-16 2023-10-03 Sonos, Inc. Playback transfer in a media playback system
US11899712B2 (en) 2013-04-16 2024-02-13 Sonos, Inc. Playback queue collaboration and notification
US11514105B2 (en) 2013-05-29 2022-11-29 Sonos, Inc. Transferring playback from a mobile device to a playback device
US11687586B2 (en) 2013-05-29 2023-06-27 Sonos, Inc. Transferring playback from a mobile device to a playback device
CN111258602B (en) * 2020-01-10 2023-06-30 百度在线网络技术(北京)有限公司 Information updating method and device
CN111258602A (en) * 2020-01-10 2020-06-09 百度在线网络技术(北京)有限公司 Information updating method and device

Also Published As

Publication number Publication date
EP1695226A4 (en) 2012-05-02
JP2007515127A (en) 2007-06-07
US20050138193A1 (en) 2005-06-23
EP1695226A2 (en) 2006-08-30
KR20060112192A (en) 2006-10-31
US7668939B2 (en) 2010-02-23
WO2005067428A3 (en) 2006-08-03
EP1695226B1 (en) 2014-04-02
CN1906604B (en) 2011-06-01
WO2005067428A2 (en) 2005-07-28

Similar Documents

Publication Publication Date Title
CN1906604A (en) Routing of resource information in a network
CN1842782A (en) Server architecture for network resource information routing
CN100346254C (en) Content sharing system, content reproduction apparatus, content recording apparatusand server managing apparatus groups
CN1256824C (en) Architecture for home network on world wide web with private-public IP address/URL mapping
US7647385B2 (en) Techniques for limiting network access
CN100338547C (en) Content reproduction apparatus, program, and content reproduction control method
CN1231028C (en) Distributed system to intelligenly establish sessions between anonymous users over various networks
US20050138137A1 (en) Using parameterized URLs for retrieving resource content items
CN1430140A (en) Equipment and method for limitting contents access and storage
CN1518699A (en) Information image utilization system, information image management apparatus, information image management method, user information image, program, and recording medium
CN1617152A (en) Content sharing system, content processing apparatus, information processing apparatus and content sharing method
CN1783792A (en) Dynamic content change notification
CN1777273A (en) Information processing apparatus and method, recording medium, and program
CN1524217A (en) Distributed computing services platform
CN1319206A (en) Computer readable recorded medium on which image file is recorded, device for producing recorded medium and medium on which image file creating program is recorded
CN1768373A (en) Information processing device, information processing method, and computer program
CN1841997A (en) Information process distribution system, information processing apparatus and information process distribution method
CN1738248A (en) Information-processing method, information-processing apparatus and computer program
CN101065967A (en) Meta data management device and meta data use device
CN1745369A (en) Information processing device, information processing method, and computer program
CN1522407A (en) Information image utilizing system, information image managing server, information image managing method, apparatus information image, program and recording medium
CN1533531A (en) Information image utilizing system, information image managing apparatus, informaton image managing method, contents information image, program and recording medium
CN1619514A (en) Information processing system, information processor and its method and program
CN1853148A (en) A processing device security management and configuration system and user interface
CN1592265A (en) Method for providing virtual office,device system and program,and storage medium

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
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150513

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150513

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

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

Granted publication date: 20110601

Termination date: 20200723

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