DE202014010945U1 - Systeme zur Bereitstellung von Meldungen von Änderungen in einem Cloud-basierten Dateisystem - Google Patents

Systeme zur Bereitstellung von Meldungen von Änderungen in einem Cloud-basierten Dateisystem Download PDF

Info

Publication number
DE202014010945U1
DE202014010945U1 DE202014010945.1U DE202014010945U DE202014010945U1 DE 202014010945 U1 DE202014010945 U1 DE 202014010945U1 DE 202014010945 U DE202014010945 U DE 202014010945U DE 202014010945 U1 DE202014010945 U1 DE 202014010945U1
Authority
DE
Germany
Prior art keywords
subscription
resource
networked device
message
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE202014010945.1U
Other languages
English (en)
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.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of DE202014010945U1 publication Critical patent/DE202014010945U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • 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
    • H04L63/102Entity profiles
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • 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/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • 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/28Timers or timing mechanisms used in protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00095Systems or arrangements for the transmission of the picture signal
    • H04N1/00114Systems or arrangements for the transmission of the picture signal with transmission of additional information signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Cloud-Speichersystem, umfassend: einen Kommunikationsprozessor in Verbindung mit: einer Ressourcendatenbank zur Speicherung einer Vielzahl von Ressourcen, einer Abonnementdatenbank zur Speicherung einer Vielzahl von Abonnements, wobei ein Abonnement in der Vielzahl von Abonnements zumindest ein Ressourcenmerkmal, zumindest eine Art von Änderung und zumindest ein vernetztes Gerät identifiziert, und ein Abonnementprozessor, der ausgelegt ist: auf Basis einer Abonnementanforderung eine erste Abonnementanforderung in der Abonnementdatenbank zu speichern; eine Änderung an einer Ressource mit dem zumindest einem Ressourcenmerkmal, das von dem ersten Abonnement identifiziert wird, zu identifizieren; zu bestimmen, ob die Änderung zumindest eine Art von Änderung ist, die von dem ersten Abonnement identifiziert wird; und eine Meldung an das zumindest eine vernetzte Gerät, das von dem ersten Abonnement identifiziert wird, zu erzeugen; wobei der Kommunikationsprozessor ausgelegt ist: die Meldung an das zumindest eine vernetzte Gerät zu übermitteln.

Description

  • Einführung
  • Traditionell speichern Personal-Computer Dateien lokal auf einem Medium, auf das von dem Computer, der die Dateien erzeugt oder bearbeitet direkt zugegriffen wird. Während Netzwerkzugang weiter verbreitet geworden ist, ist es möglich geworden, Dateien auf einem Remote-Netzwerk zu speichern. Das Speichern von Dateien auf einem Remote-Netzwerk, auch als Cloud-Speicherung bezeichnet, erlaubt einem Benutzer, auf die Dateien unter Verwendung eines beliebigen Geräts, das auf das Netzwerk zugreifen kann, zuzugreifen. Solche Cloud-Speichersysteme mindern den Bedarf der Benutzer für lokale Speicherkapazität und versichern den Benutzern, dass, unabhängig davon, welches Gerät auf eine Datei zugreift, auf eine aktuelle Kopie der Datei zugegriffen wird.
  • Netzwerkanwendungen, die sich auf in Cloud-Speichersystemen gespeicherte Ressourcen beziehen, fragen üblicherweise den Zustand dieser Ressourcen ab, um Änderungen an den Ressourcen zu erkennen und auf diese zu reagieren. Für jede solcher Ressourcen, die von einer Netzwerkanwendung abgefragt wird, muss das Host-Cloud-Speichersysteme auf eine Anfrage so oft antworten, wie die Netzwerkanwendung versucht, die Ressource abzufragen. Da solche Ressourcen sich unter Umständen nur selten ändern, können solche Systeme unnötige Anforderungen an die Ressourcen des Cloud-Rechnersystem erstellen, während die Netzwerkanwendung unter Umständen nicht auf eine Änderung der Ressource reagiert, bis eine Abfragezeitraum abgeschlossen ist und eine neue Anforderung für Aktualisierungen gemacht wird.
  • Kurzdarstellung
  • Somit besteht ein Bedarf in der Technik für Cloud-Speichersysteme, Meldungen über Änderungen an einer Ressource asynchron an eine Netzwerkanwendung zu übermitteln — im „Push-“ Verfahren an Netzwerkanwendungen als Reaktion auf Änderungen der Ressourcen zu übermitteln. Die Systeme und Verfahren, die hierin beschrieben sind, erlauben einem Cloud-Speichersysteme zu bestimmen, ob ein vernetztes Gerät berechtigt ist, auf eine Ressource auf dem Cloud-Speichersystem zuzugreifen, und wenn dies der Fall ist, das vernetzte Gerät für Meldungen, die als Reaktion auf Änderungen an der Ressource erzeugt werden, zu abonnieren.
  • In bestimmten Aspekten beziehen sich die hierin beschriebenen Systeme und Verfahren auf das Benachrichtigen eines vernetzten Geräts über eine Änderung an einer Ressource eines Cloud-basierten Dateisystem. Das Cloud-basierte Dateisystem erhält ein Abonnementanforderung, die einer Ressource zugeordnet ist und das abonnierende vernetzte Gerät identifiziert. In einigen Implementierungen wird die Abonnementanforderung von dem vernetzten Gerät empfangen. Als Reaktion auf die Bestimmung, dass das vernetzte Gerät zum Zugriff auf die Ressource berechtigt ist, trägt das Cloud-basierte Dateisystem ein Abonnement auf Basis der Abonnementanforderung ein. Ein Abonnement identifiziert eine Menge von einer oder mehreren Ressourcen, eine Menge von einer oder mehreren Änderungen und eine Menge von einem oder mehreren vernetzten Geräten, sodass, wenn eine Änderung von einer Menge von Änderungen an einer Ressource in der Menge von Ressourcen vorgenommen wird, das Abonnement eine Meldung an jedes vernetzte Gerät in der Menge von vernetzten Geräten erzeugt. In Reaktion auf eine solche Änderung, die von einem Benutzer, einer Anwendung oder einer anderen geeigneten Entität gemacht wird, übermittelt das Cloud-basierte Dateisystem eine Meldung bezüglich der Änderung an das vernetzte Gerät auf Basis des eingetragenen Abonnements. Die Meldung kann das Abonnement identifizieren, dem die Meldung zugeordnet ist, Informationen bereitstellen, welche die Änderung identifizieren, oder andere geeignete Informationen bereitstellen.
  • Kurzbeschreibung der Zeichnungen
  • Die hierin beschriebenen Systeme und Methoden werden in den angehängten Ansprüchen dargelegt. Für die Zwecke der Erläuterung sind jedoch verschiedene Ausführungsformen in den folgenden Zeichnungen dargelegt.
  • 1 ist ein Blockdiagramm eines Cloud-Speichersystems gemäß einer veranschaulichenden Implementierung;
  • 2 ist ein Blockdiagramm einer Cloud-Speicher-Funktionseinheit gemäß einer veranschaulichenden Implementierung;
  • 3 ist ein Flussdiagramm eines Prozesses für das Abonnieren im Push-Verfahren für Meldungen bezüglich Änderungen, die an Cloud-Rechnerressourcen vorgenommen werden, gemäß einer veranschaulichenden Implementierung;
  • 4 ist ein Flussdiagramm eines Prozesses zur Übermittlung von Push-Meldungen an einen Server, gemäß einer veranschaulichenden Implementierung;
  • 5 ist ein exemplarisches Prozessdiagramm, das ein vernetztes Gerät darstellt, das Push-Meldungen von einem Cloud-Speichersysteme abonniert, gemäß einer veranschaulichenden Implementierung; und
  • 6 ein Blockdiagramm eines Computergeräts, der sämtliche hier beschriebenen Prozesse durchführen kann, gemäß einer veranschaulichenden Implementierung.
  • Ausführliche Beschreibung
  • In der folgenden Beschreibung werden zum Zwecke der Erläuterung zahlreiche Einzelheiten dargelegt. Eine Fachkraft wird jedoch erkennen, dass die hierin beschriebenen Implementierungen eventuell ohne die Verwendung dieser spezifischen Einzelheiten ausgeführt werden können und dass die hierin beschriebenen Implementierungen eventuell abgeändert, ergänzt oder anderweitig geändert werden können, ohne vom Schutzumfang der hierin beschriebenen Systeme und Verfahren abzuweichen.
  • Die hierin beschriebenen Systeme und Verfahren beziehen sich auf die Übertragung von Push-Meldungen an ein vernetztes Gerät in Reaktion auf Änderungen an einer Ressource auf einem Cloud-Speichersystem. Wenn ein vernetztes Gerät berechtigt ist, auf eine Ressource auf dem Cloud-Speichersysteme zuzugreifen, dann kann das Cloud-Speichersystem dem vernetzten Gerät erlauben, Meldungen bezüglich Änderungen, die an der Ressource vorgenommen werden, zu abonnieren. Wenn in einem solchen Abonnement ein Benutzer, eine Anwendung oder eine andere geeignete Entität die Ressource ändert, kann das Cloud-Speichersystem eine Meldung im Push-Verfahren an die vernetzten Gerät senden.
  • 1 ist ein veranschaulichendes Blockdiagramm eines Cloud-Speichersystems 100, das Remote-Speicherung von und Zugang zu Ressourcen bereit stellt. Ressourcen können Ordner, Textdateien, Bilddateien, Audiodateien, Videodateien, Präsentationsdateien, Tabellen, Binärdatendateien, Computeranweisungen, Hypertext-Markup-Language-(HTML-)Dateien oder andere geeignete Computerressourcen beinhalten. Ressourcen werden auf Cloud-Speichergerät 102 gespeichert, die einen Server, einen Personal-Computer, einen Mainframe, einen Cluster von Computergeräten oder ein anderes geeignetes Computergerät beinhalten kann, und das detaillierter beschrieben wird in Bezug auf 2. Ressourcen können zu dem Cloud-Speichergerät 102 über das Netzwerk 104 hochgeladen werden oder es kann auf diese zugegriffen werden. Netzwerk 104 ist ein Computernetzwerk und kann in bestimmten Implementierungen das Internet sein. Wie dargestellt, kann ein vernetztes Gerät 106 mit Cloud-Speichergerät 102 über das Netzwerk 104 zusammenwirken. Bei bestimmten Implementierungen kann es eine unterschiedliche Anzahl von Cloud-Storage-Geräten 102 oder von vernetzten Geräten 106 geben als hier dargestellt ist.
  • Ein vernetztes Gerät 106 ist ein Computergerät, das verwendet werden kann, auf Cloud-Speichergerät 102 zuzugreifen, und kann ein Personal-Laptop-Computer, ein Personal-Desktop-Computer, ein Tablet-Computer, ein Smartphone, ein Server, ein Mainframe, ein Cluster von Computergeräten oder ein anderes geeignetes Computergerät sein. Ein Benutzer kann mit dem vernetzten Gerät 106 unter Verwendung einer Direkteingabe, wie beispielsweise einer Tastatur, Maus, einem Touchscreen oder einem anderen geeigneten Eingabegerät, oder über ein Remote-Computergerät umgehen. Das vernetzte Gerät 106 kann einem Benutzer erlauben, auf Ressourcen, die auf dem Cloud-Speichergerät 102 gespeichert sind, zugreifen oder diese abzuändern, und kann von dem Benutzer, dem Administrator des Cloud-Speichergeräts 102 oder von einem Dritten verwaltet werden. Das vernetzte Gerät 106 können berechtigt sein, Push-Meldungen bezüglich Ressourcen, die auf Cloud-Speichergerät 102 gespeichert sind, zu abonnieren. In einigen Implementierungen kann ein vernetztes Gerät 106 mit Cloud-Speichergerät 102 integriert sein. In bestimmten Implementierungen kann das vernetzte Gerät 106 Informationen speichern über einen oder mehrere Benutzer, die Datenverarbeitungskapazität des vernetzten Geräts 106, eine Liste der Ressourcen auf Cloud-Speichergerät 102, zu deren Zugriff der Benutzer berechtigt ist, oder andere geeignete Informationen bezüglich der Fähigkeit eines vernetzten Geräts 106, auf Dateien, die auf Cloud-Speichergerät 102 gespeichert sind, zuzugreifen. In solchen Implementierungen kann das vernetzte Gerät 106 ausgelegt sein, wenn es sich zuerst mit Cloud-Speichergerät 102 verbindet, als Antwort auf eine Anfrage von Cloud-Speichergerät 102 oder unter anderen geeigneten Umständen, einen Teil oder die Gesamtheit solcher Informationen zu übermitteln.
  • Das Cloud-Speichersystem 100 speichert Ressourcen und erlaubt es einem Benutzer, auf die Ressourcen über ein vernetztes Gerät 106 zuzugreifen. Ein vernetzte Gerät 106 verbindet sich mit Cloud-Speichergerät 102 über das Netzwerk 104. Eine Anwendung, die auf dem vernetzten Gerät 106 installiert ist oder auf die durch dieses zugegriffen wird, kann eine auf Cloud-Speichergerät 102 gespeicherte Ressource erzeugen, auf diese zugreifen, diese bearbeiten oder diese löschen. Wenn das vernetzte Gerät 106 zum Zugriff auf eine Ressource berechtigt ist, dann kann das Cloud-Speichergerät 102 dem vernetzten Gerät 106 erlauben, die Ressource zu abonnieren, in welchem Fall das Cloud-Speichergerät 102 Meldungen bezüglich an der Ressource vorgenommener Änderungen im Push-Verfahren an das vernetzte Gerät 106 senden.
  • 2 ist ein veranschaulichendes Blockdiagramm einer Cloud-Speicher-Funktionseinheit 200, die als das Cloud-Speichergerät 102 von 1 wirken kann. Die Cloud-Speicher-Funktionseinheit 200 ermöglicht es dem vernetzte Gerät 106, über das Netzwerk 104 auf Dateien zuzugreifen. Die Cloud-Speicher-Funktionseinheit 200 sendet und empfängt Daten über den Kommunikations-Port 202. Der Kommunikationsprozessor 204 identifiziert Benutzeranweisungen, die durch Kommunikations-Port 202 empfangen werden, und speichert oder übermittelt Informationen auf Basis der empfangenen Anweisungen. Der Inhalt und die Metadaten von Dateien können in der Ressourcendatenbank 206 gespeichert werden und die Benutzerinformationen können in der Benutzerdatenbank 208 gespeichert werden. Der Abonnementprozessor 210 kann Informationen über die berechtigten Abonnements in Abonnementdatenbank 212 eintragen und kann Abonnementmeldungen auf Basis von Kriterien, die in der Abonnementdatenbank 212 eingetragen sind, und von Ereignissen in der Ressourcendatenbank 206 oder der Benutzerdatenbank 208, erzeugen. Der Authentifizierungsprozessor 214 kann überprüfen, ob eine Anfrage, auf Informationen, die Cloud-Speicher-Funktionseinheit 200 zugewiesen sind, zuzugreifen oder diese zu bearbeiten, autorisiert ist.
  • Der dargestellte Kommunikations-Port 202 ist ein Netzwerk-Port, der Benutzerbefehle über das Netzwerk 104 empfängt und von Cloud-Speicher-Funktionseinheit 200 gesendete Informationen übermittelt. Der Kommunikations-Port 202 kann einen 100BASE-TX-Port, einen 1000BASE-T-Port, einen 10GBASE-T-Port, eine Wi-Fi-Antenne, eine Mobilfunkantenne oder andere geeigneten Netzwerk-Ports beinhalten. Bei bestimmten Implementierungen kann andere Anzahl von Ports geben als dargestellt. In bestimmten Implementierungen 202 kann der Kommunikations-Port eine sichere Kommunikation bereitstellen, beispielsweise unter Verwendung des Secure-Sockets-Layer-(SSL-)Protokolls, des Transport-Layer-Security-(TLS-)Protokolls oder eines anderen geeigneten Protokolls.
  • Der Kommunikationsprozessor 204 kann ein Computerprozessor sein, der Anweisungen identifiziert, die durch Kommunikations-Port 202 empfangen werden, und kann Informationen auf Basis dieser Anweisungen speichern oder übermitteln. Wenn sich ein vernetztes Gerät 106 mit der Cloud-Speicher-Funktionseinheit 200 verbindet, kann der Kommunikationsprozessor 204 in bestimmten Implementierungen einen Benutzer, der dieser Verbindung zugewiesen ist, identifizieren, indem er Anmeldedaten, die von dem Benutzer bereitgestellt werden, mit Informationen, die in der Benutzerdatenbank 208 gespeichert sind, vergleicht. Der Kommunikationsprozessor 204 kann ferner einen Benutzer, der einer eingehenden Kommunikation zugewiesen ist, aus Paket-Headern identifizieren, welche die Quelle der Kommunikation identifizieren, indem die Quelle der Kommunikation abfragt wird, oder durch ein anderes geeignetes Verfahren zur Identifizierung des Benutzers. Der Kommunikationsprozessor 204 kann auf einen Benutzerbefehl antworten, indem er Daten erzeugt, Zugang dazu bereitstellt, eine Ressource abändert oder löscht, Daten bezüglich einer Änderung an einer Ressource übermittelt, oder eine andere geeignete Maßnahme entsprechend dem Befehl ausführt. Der Kommunikationsprozessor 204 kann Befehle, die Abonnements zugewiesen sind, an Abonnementprozessor 210 weiterleiten und kann Abonnementmeldungen an ein abonniertes vernetztes Gerät 106 übertragen oder routen.
  • Die Ressourcendatenbank 206 kann ein computerlesbares und -schreibbares Medium sein, das mindestens eine Ressource speichert, die einem Cloud-Speichersysteme 100 zugewiesen ist. In einigen Implementierungen kann auf einen Teil der Ressourcendatenbank 206 über ein Remote-Netzwerk zugegriffen werden. Ein solcher Teil kann eine Drittanbieter-Datenbank sein. Ressourcen, die in Ressourcendatenbank 206 gespeichert sind, können Ordner, Textdateien, Bilddateien, Audiodateien, Videodateien, Präsentationsdateien, Tabellen, Binärdatendateien, Computeranweisungen, Hypertext-Markup-Language-(HTML-)Dateien oder andere geeignete Computerressourcen beinhalten. Die Ressourcendatenbank 206 kann auch Metadaten speichern, die jeder Ressource zugewiesen sind, welche einen Multipurpose-Internet-Mail-Extensions-(MIME-)Typ der Ressource, die Zeit, zu der die Ressource erzeugt wurde, einen oder mehrere der Ressource zugewiesene Benutzer, Client-Server 108, die zum Zugang auf die Ressource berechtigt sind, der Ressource zugewiesene Abonnements oder andere geeignete Metadaten beinhalten können. In einigen Implementierungen kann die Ressourcendatenbank 206 ferner die Menge von Änderungen aufzeichnen, die an einer Ressource vorgenommen wurden.
  • Die Benutzerdatenbank 208 kann ein computerlesbares und schreibbares Medium sein, das Informationen speichert, die zumindest einem Benutzer der Cloud-Speicher-Funktionseinheit 200 zugewiesen sind. Die Informationen können eines oder mehrere der Folgenden beinhalten: einem Benutzer zugewiesene Benutzernamen und Passwort, eine Liste der einem Benutzer zugewiesenen Ressourcen, eine Liste von zumindest einem Benutzer zugewiesenen vernetzten Gerät 106, eine Liste von zumindest einem vernetzten Gerät 106, das der Benutzer autorisiert hat, auf einem Benutzer zugewiesene Ressourcen zuzugreifen, vom Benutzer festgelegte Voreinstellungen oder andere geeignete Benutzerinformationen.
  • Der Abonnementprozessor 210 kann ein Computerprozessor sein, der gültige Abonnementanforderungen einträgt, die durch Kommunikations-Port 202 empfangen werden, und Meldungen bezüglich der Abonnements erzeugt. Wenn der Authentifizierungsprozessor 214 eine Abonnementanforderung validiert, trägt der Abonnementprozessor 210 das angeforderte Abonnement in die Abonnementdatenbank 212 ein. Der Abonnementprozessor 210 überwacht die Ressourcendatenbank 206 und die Benutzerdatenbank 208, um Ereignisse zu identifizieren, die Kriterien eines oder mehrerer Abonnements, die in der Abonnementdatenbank 212 getragen sind, erfüllen. Bei der Identifizierung eines solchen Ereignisses, erzeugt der Abonnementprozessor 210 eine Push-Meldung gemäß dem Abonnement, die von dem Kommunikationsprozessor 204 an ein oder mehrere vernetzte Geräte 106 geroutet werden kann, die von dem durch das Abonnement bestimmt werden. In einigen Implementierungen kann der Abonnementprozessor 210 über den Kommunikations-Port 202 eine Meldung direkt an ein oder mehrere vernetzte Geräte 106 übermitteln. Der Abonnementprozessor 210 kann ferner als Reaktion auf vorbestimmte Bedingungen, die das Verstreichen einer vorbestimmten Zeitdauer, das Versäumnis eines vernetzten Geräts 106, den Empfang einer Meldung, die einem Abonnement zugewiesen ist, zu bestätigen, oder andere geeignete Bedingungen beinhalten können, ein Abonnement von Abonnementdatenbank 212 löschen.
  • Die Abonnementdatenbank 212 kann ein computerlesbares und schreibbares Medium sein, das Informationen bezüglich Abonnements, die der Cloud-Speicher-Funktionseinheit 200 zugewiesen sind, speichert. Abonnementinformationen können eine Liste von vernetzten Geräten 106, die Aktualisierungen bezüglich einer Ressource abonniert haben, eine Liste der Eigenschaften von Ereignissen, die das Senden von Meldungen an die Abonnenten zur Folge haben, die Informationen, die in einer Abonnementmeldung enthalten sind, ob ein vernetztes Gerät 106 Aktualisierungen bezüglich einer Ressource oder einer Klasse von Ressourcen abonnieren darf, die Gültigkeitsdauer der einzelnen Abonnements oder andere geeignete Informationen beinhalten. Als veranschaulichendes Beispiel, wenn auf einem vernetzten Gerät 106 ein Cloud-Druckdienst läuft, der in einem bestimmten Ordner abgelegte Dokumente druckt, dann kann ein Abonnement, das in Abonnementdatenbank gespeichert 212 ist, anzeigen, dass eine Meldung an das vernetzte Gerät 106 gesendet werden soll, wenn eine Datei in dem festgelegten Ordner abgelegt wird. In ähnlicher Weise, wenn ein Abonnement identifiziert, dass ein vernetzte Gerät 106 sollte ein Update erhalten soll, wenn eine Bilddatei einem Benutzerkonto zugewiesen wird, kann eine Meldung 106 an das vernetzte Gerät gesendet werden, wenn ein Zeiger auf eine Bilddateiressource dem Benutzerkonto in Benutzerdatenbank 208 neu zugewiesen wird. In einigen Implementierungen kann die Abonnementdatenbank 212 ferner Regeln für Abonnements, welche die Kriterien für die Abonnementmeldungen, die Gültigkeitsdauer eines Abonnements auf Basis der Kriterien für Abonnementmeldungen, die Anzahl der Abonnements, die ein vernetztes Gerät 106 haben darf einschränken können, oder andere geeignete Regeln speichern.
  • Der Authentifizierungsprozessor 214 kann ein Computerprozessor sein, der unbefugten Zugriff auf, Bearbeitung von oder Abonnement von Ressourcen, die Cloud-Speicher-Funktionseinheit 200 zugewiesen sind, sperrt. Unbefugter Zugriff kann erkannt werden, indem eines oder mehrere von einer Benutzernamen- und Passwort-Kombination, Informationen zur Identifizierung eines vernetzten Geräts 106, geografischen Informationen in Verbindung mit dem vernetzten Gerät 106 oder anderen geeigneten Informationen mit entsprechenden Informationen, die in Ressourcendatenbank 206, Benutzerdatenbank 208 und Abonnementsdatenbank 212 gespeichert sind, verglichen werden. Wenn der Authentifizierungsprozessor 214 eine Anforderung, eine Ressource oder eine Klasse von Ressourcen zu abonnieren, nicht verifizieren kann, dann kann der Authentifizierungsprozessor 214 eine Meldung an den Benutzer oder einen Systemadministrator übermitteln, das vernetzte Gerät 106 sperren, das Benutzerkonto vorübergehend sperren oder eine andere vorbestimmte Maßnahme ergreifen. In bestimmten Implementierungen kann der Authentifizierungsprozessor 214 auch prüfen, ob ausgehende Meldungen an ein berechtigtes vernetztes Gerät 106 übermittelt werden. In solchen Implementierungen kann der Authentifizierungsprozessor 214 die Übertragung von Meldungen, die nicht zu einem berechtigten vernetzten Gerät 106 geroutet werden, sperren. Bei bestimmten Implementierungen, wenn ein vernetztes Gerät 106 nicht zuvor auf Ressourcen, die einem Benutzer zugewiesen sind, zugegriffen hat, dann kann der Authentifizierungsprozessor 214 Identifikationsinformationen erfordern, die eine Benutzernamen- und Passwort-Kombination, eine Identifikationsnummer, die dem Benutzer durch Senden einer Sprach- oder Textnachricht an eine zuvor von dem Benutzer bereitgestellte Telefonnummer bereitgestellt wird oder andere vorbestimmte Identifizierungsinformation beinhalten können. In einigen Implementierungen kann der Authentifizierungsprozessor 214 ein Sicherheitstoken, das von dem vernetzten Gerät 106 bereitgestellt wird, gegen Informationen verifizieren, die in einer oder mehreren von einer Dateidatenbank 206, Benutzerdatenbank 208 oder Abonnementdatenbank 212 gespeichert sind. Wenn ein vernetztes Gerät 106 nicht für den Zugriff auf Informationen berechtigt ist, dann kann der Authentifizierungsprozessor 214 verhindern, dass die Anwendung auf die Informationen zugreift, eine Meldung an den Benutzer oder einem Systemadministrator übermitteln oder eine andere geeignete Maßnahmen ergreifen. In bestimmten Implementierungen kann eine solche Meldung an den Benutzer fragen, ob der Benutzer das vernetzte Gerät 106 autorisieren möchte, auf die Informationen zuzugreifen. In bestimmten Implementierungen kann der Authentifizierungsprozessor 214 mit dem vernetzten Gerät 106 eine sichere Verbindung unter Verwendung eines Protokolls, wie beispielsweise den SSL- oder TLS-Protokollen, herstellen.
  • Die Cloud-Speicher-Funktionseinheit 200 empfängt Übermittlungen von vernetzten Geräten 106 an Kommunikations-Port 202 über das Netzwerk 104. Der Kommunikationsprozessor 204 kann eine Abonnementanforderung von einem vernetzten Gerät 106 an den Authentifizierungsprozessor 214 weiterleiten. Der Authentifizierungsprozessor 214 kann Informationen, die durch das vernetzte Gerät 106 bereitgestellt werden, mit Informationen, die in einem oder mehreren von der Ressourcendatenbank 206, Benutzerdatenbank 208 und Abonnementdatenbank 212 gespeichert sind, vergleichen, um zu bestimmen, ob das vernetzte Gerät 106 berechtigt ist, auf Informationen, die der Ressource, die in die Abonnementanforderung angegeben ist, zugewiesen sind, zuzugreifen. Wenn das vernetzte Gerät 106 erfolgreich verifiziert wird, dann kann der Authentifizierungsprozessor 214 dem Abonnementprozessor 210 erlauben, das angeforderte Abonnement in die Abonnementdatenbank 212 einzutragen. Basierend auf dem Abonnement, wenn eine Ressource erzeugt, geändert, gelöscht oder anderweitig auf diese zugegriffen wird, kann der Abonnementprozessor 210 Meldungen erstellen, die der Kommunikationsprozessor 204 gemäß den Regeln in der Abonnementdatenbank 212 im Push-Verfahren an ein oder mehrere vernetzte Geräten 106 senden kann.
  • 3 ist ein veranschaulichendes Flussdiagramm eines Meldungsabonnement-Ablaufs 300. Unter Bezugnahme auf 1, der Meldungsabonnement-Ablauf 300 trägt ein Abonnement eine oder mehrere Ressourcen auf Cloud-Storage-Gerät 102 durch ein vernetzten Geräts 106 ein, sodass das Cloud-Speichergerät 102 die vernetzten Gerät 106 entsprechend dem Abonnement über Handlungen benachrichtigt, die die Ressourcen betreffen. Unter Bezugnahme auf 2, der Meldungsabonnement-Ablauf 300 beginnt mit Schritt 301, in dem der Kommunikationsprozessor 204 eine Abonnementanforderung empfängt. Die Abonnementanforderung kann bestimmte Ressourcen, eine Klasse von Ressourcen oder eine Kombination davon identifizieren. Als veranschaulichende Beispiele kann eine Abonnementanforderung eine Benutzereinstellungsdatei, Bilddateien, die einem bestimmten Benutzer zugeordnet sind, oder Tabellen, die in einem bestimmten Ordner gespeichert sind, bestimmen. Die Abonnementanforderung identifiziert ferner die Handlungen, die eine Meldung auslösen sollen, wie beispielsweise die Erzeugung einer Ressource, die Änderung einer Ressource, einen Befehl, auf die Ressource zuzugreifen, die Löschung einer Ressource oder eine andere geeignete Handlungen. Die Abonnementanforderung gibt für Push-Meldungen, die in Übereinstimmung mit dem angeforderten Abonnement erzeugt werden können, auch eine Zieladresse an, die eine Hypertext-Transfer-Protocol-(HTTP-)Adresse sein kann, oder kann einen anderen geeigneten Lieferkanal für Meldungen bereitstellen. In einigen Implementierungen kann eine Abonnementanforderung in einer Anforderung enthalten sein, eine Ressource zu erzeugen, darauf zuzugreifen oder diese zu ändern.
  • In Schritt 302 bestimmt der Authentifizierungsprozessor 214, ob die Abonnementanforderung autorisiert ist. Eine Abonnementanforderung kann autorisiert sein, wenn sie von einem autorisierten Benutzer erzeugt wird oder wenn sie mit einem vernetzten Gerät 106 verbunden ist, das von einem solchen autorisierten Benutzer autorisiert wurde. Ein autorisierter Benutzer kann der Benutzer, der die Ressource erzeugt hat, ein Benutzer mit der Berechtigung die Ressource zu ändern oder löschen oder ein anderer Benutzer sein, der in geeigneter Weise der Ressource zugewiesen ist. Ein Computergerät kann von einem Benutzer autorisiert werden, wenn der Benutzer zuvor das Computergerät autorisiert hat, auf die Ressource zuzugreifen. Der Authentifizierungsprozessor 214 kann Schritt 302 durchführen, indem er bestimmt, ob die Abonnementanforderung ein Sicherheitstoken oder andere Informationen, die nachweisen, dass die Anfrage von einem autorisierten Benutzer genehmigt wurde, bereitstellt, ob die Quelle der Anforderung ein autorisiertes Computergerät ist, ob die Zieladresse, die der Anforderung zugewiesen ist, einem autorisierten Computergerät zugewiesen ist, oder auf Basis anderer geeigneter Kriterien durchführen. Wenn der Authentifizierungsprozessor 214 nicht bestimmen kann, dass die Anforderung vorgegebene Autorisierungskriterien erfüllt, endet der Ablauf 300 damit, dass der Kommunikationsprozessor 204 in Schritt 303 Korrekturmaßnahmen veranlasst. Die Korrekturmaßnahmen können das Ablehnen der Anfrage, das Sperren der Quelle der Anforderung für Zugriff auf die Cloud-Speicher-Funktionseinheit 200, das Benachrichtigen eines Systemadministrator oder eines Benutzers, der den Ressourcen, die in der Anfrage angegebenen wurde, zugewiesen ist, oder eine andere geeignete Maßnahme beinhalten. Wenn die Authentifizierung Prozessor 214 stattdessen bestätigt, dass die Anfrage autorisiert ist, dann schließt Meldungsabonnement-Ablauf 300 mit Schritt 304 ab.
  • In Schritt 304 trägt der Abonnementprozessor 210 das angeforderte Abonnement in die Abonnementdatenbank 212 ein. Der Kommunikationsprozessor 204 kann dann die Regeln konsultieren, die in Abonnementdatenbank 212 gespeichert sind, um Meldungen gemäß dem angeforderten Abonnement zu senden, wie beschrieben in Bezug auf 4. In einigen Implementierungen kann der Abonnementprozessor 210 auch eine Gültigkeitsdauer des angeforderten Abonnements bestimmen, sodass Meldungen auf Basis des Abonnements nicht mehr gesendet werden, wenn seine Gültigkeitsdauer abgelaufen ist. In solchen Implementierungen kann ein Abonnement-Gültigkeitsdauer auf der Art der Ressource, die der Ressource zugewiesen ist, der Art der Änderung, die der Ressource zugewiesen ist, oder auf anderen geeigneten Kriterien basiert sein. In einigen Implementierungen kann Schritt 304 gefolgt sein von der Übermittlung einer Abonnementmitteilung an die Adresse, die in der Abonnementanfrage angegeben ist, welche eine Abonnementkennung, die das Abonnement eindeutig identifiziert, eine erwartete Gültigkeitsdauer des Abonnements, eine Identifizierung der Ressource oder Ressourcen, die dem Abonnement zugewiesen sind, eine Angabe des aktuellen Status der Ressource oder eine andere geeignete Informationen beinhalten. Abonnements können ebenso oder alternativ von dem anfordernden vernetzten Gerät 106 als Antwort auf das Widerrufen einer Berechtigung, auf die zugewiesene Ressource zuzugreifen, von dem vernetzten Gerät 106 durch einen Benutzer oder auf Basis anderer geeigneter Kriterien gekündigt werden. In einigen Implementierungen kann im Falle einer Kündigung des Abonnements eine Meldung an die abonnierten Adresse gesendet werden. In einigen solchen Implementierungen kann Kündigungsmeldung unter Umständen nur gesendet werden, wenn die Kündigung als Antwort auf ein vorbestimmtes Kriterium erfolgt, wie beispielsweise das Widerrufen der Berechtigung des abonnierten Servers, auf die Ressource, die dem Abonnement zugewiesen ist, zuzugreifen.
  • 4 ist ein veranschaulichendes Flussdiagramm eines Push-Meldungsablaufs 400. Der Push-Meldungsablauf 400 erzeugt Push-Meldungen auf Basis von Abonnements, wie beispielsweise der in Meldungsabonnement-Ablauf 300 eingetragenen Abonnements. Unter Bezugnahme auf 2, Push-Meldungsablauf 400 kann intern auf Cloud-Speicher-Funktionseinheit 200 erfolgen und kann dadurch Latenz bei der Bereitstellung von Informationen bezüglich Ressourcenänderungen an das abonnierte vernetzten Gerät 106 reduzieren, ohne dass das vernetzte Gerät 106 häufig Informationen bezüglich einer Ressource verlangen braucht. Unter Bezugnahme auf 2, Push-Meldungsablauf 400 beginnt mit Schritt 401, in dem der Abonnementprozessor 210 eine vorbestimmte Änderung in der Ressourcendatenbank 206 oder der Benutzerdatenbank 208 erkennt. Die vorbestimmte Änderung kann die Erzeugung einer Ressource, die Änderung einer Ressource, das Löschen einer Ressource, eine Änderung der Dateien, die einem Benutzer durch Benutzerdatenbank 208 zugewiesen sind, oder eine andere geeignete Änderung sein, und kann erkannt werden, wenn der Kommunikationsprozessor 204 die Ressourcendatenbank 206 oder die Benutzerdatenbank 208 als Antwort auf einen Befehl ändert. In einigen Implementierungen kann vorbestimmten Änderung eine Änderung in den Metadaten, die einer Ressource zugewiesen sind beinhalten, welche eine Änderung, wann zuletzt auf die Ressource zugegriffen wurde, von wem zuletzt auf die Ressource zugegriffen wurde, eine Änderung der Gruppe von Benutzern, die autorisiert sind, die Ressource zu ändern, oder andere geeignete Kriterien beinhalten kann.
  • In Schritt 402 bestimmt der Abonnementprozessor 210, ob die in Schritt 401 erkannte Änderung die Kriterien eines Abonnements erfüllt, das in der Abonnementdatenbank 212 festgehalten ist. Wie im Zusammenhang mit 2 und 3 beschrieben, wenn die Änderung in Schritt 401 nicht alle Kriterien von zumindest einem Abonnement erfüllt, das in Abonnementdatenbank 212 festgehalten ist, dann endet der Push-Meldungsablauf 400, ohne dass eine Meldung übermittelt wird. Wenn jedoch die Änderung die Kriterien eines Abonnements erfüllt, enden Push-Meldungsablauf 400 mit Schritt 403. In Schritt 403 erzeugt Abonnementprozessor 210 eine Meldung an ein vernetztes Gerät 106 gemäß den Abonnementregeln: eine Meldung über die Änderung von Schritt 401 wird auf Basis des Abonnements erzeugt und wird an das vernetzte Gerät 106 gerichtet, das durch das Abonnement angegeben wird. Der Abonnementprozessor 210 kann die Meldung an Kommunikationsprozessor 204 zur Weiterleitung an die vernetzten Gerät 106 übermitteln oder kann in einigen Implementierungen die Meldung direkt an das vernetzte Gerät 106 übermitteln. In einigen Implementierungen kann der Abonnementprozessor 210 die Meldung an Authentifizierungsprozessor 214 übermitteln, sodass Authentifizierungsprozessor 214 bestätigen kann, dass die Meldung an ein autorisiertes vernetztes Gerät 106 adressiert ist, bevor die Mitteilung übermittelt wird. Die Meldung kann das Abonnement, das die Meldung ausgelöst hat, die Ressource, die der Meldung zugewiesen ist, die Art und Größe des Ereignisses, das die Meldung ausgelöst hat, oder andere geeignete Informationen identifizieren. Die Latenz zwischen eines Meldungsveranlassungs-Ereignisses und der Übermittlung einer Meldung kann basierend auf dem Übertragungskanal zwischen 40 und 150 ms betragen.
  • Die Mitteilung kann unter Verwendung von HTTP, Extensible Messaging and Presence Protocol (XMPP) oder einem anderen geeigneten Push-Lieferkanal übermittelt werden. In einigen Implementierungen können verschiedene Abonnements verschiedene Lieferkanäle verwenden. In einigen Implementierungen kann das vernetzte Gerät 106 auf eine Meldung mit einer Meldungsbestätigung antworten. In solchen Implementierungen kann, wenn innerhalb einer vorbestimmten Zeit nach der Übermittlung der Meldung keine solche Bestätigung empfangen wird, der Push-Meldungsablauf 400 versuchen, die Meldung unter vorgegebenen Bedingungen, welche den Ablauf einer vorgegebenen Zeitspanne, einen Hinweis, dass der Übertragungskanal an den abonnierenden Server wieder geöffnet ist, oder eine andere geeignete Bedingungen beinhalten kann, erneut zu übermitteln.
  • 5 ist ein exemplarisches Ablaufdiagramm, das einen Autorisierungs- und Meldungsablauf 500 darstellt, in dem ein Server berechtigt ist, Mitteilungen bezüglich einer Ressource auf einer Cloud-Speicher-Funktionseinheit zu abonnieren und solch eine Meldung empfängt. Wie dargestellt, stehen ein Benutzer 502, ein vernetztes Gerät 504, wie beispielsweise das vernetzte Gerät 106 von 1, und eine Cloud-Speicher-Funktionseinheit 506, wie beispielsweise Cloud-Speicher-Funktionseinheit 200 von 2, alle in Verbindung miteinander. Gemäß dem Meldungsabonnement-Ablauf 300, übermittelt Benutzer 502 eine Autorisierung 508 an Cloud-Speicher-Funktionseinheit 506. Die Autorisierung 508 ermöglicht es dem vernetzten Gerät 504, eine oder mehrere Ressourcen auf Cloud-Speicher-Funktionseinheit 506 zu abonnieren und kann verschlüsselte Benutzeridentifikationsinformationen, Informationen zur Identifizierung einer Ressource, die das vernetzte Gerät 504 abonnieren kann, oder andere geeignete Informationen zur Autorisierung des vernetzten Geräts 504, Meldungen bezüglich einer auf Cloud-Speicher-Funktionseinheit 506 gespeicherten Ressource zu abonnieren, beinhalten. Das vernetzte Gerät 504 übermittelt anschließend die Abonnementanforderung 510 an Cloud-Speicher-Funktionseinheit 506 zu Wolke, wie beschrieben in Bezug auf 3. In einigen Implementierungen kann die Autorisierung 508 stattdessen an das vernetzte Gerät 504 übermittelt werden, was wiederum die Autorisierungsinformationen in Abonnementanforderung 510 beinhalten kann. Die Cloud-Speicher-Funktionseinheit 506 stellt sicher, dass die Abonnementanforderung 510 von Autorisierung 508 autorisiert wurde und trägt das geprüfte Abonnement ein. Wie dargestellt, übermittelt Benutzer 502 dann eine Ressourcenänderung 512, welche die Kriterien des eingetragenen Abonnements von Cloud-Speicher-Funktionseinheit 506 erfüllt. Obwohl dargestellt wird, dass Benutzer 502 die Ressourcenänderung 512 übermittelt, kann die Ressourcenänderung 512 alternativ von einem zweiten Benutzer, einer Anwendung oder einer anderen geeigneten Entität übermittelt werden. Wie im Zusammenhang mit 4, die Ressourcenänderung 512 kann eine Ressource, die dem angeforderten Abonnement zugewiesen ist, erzeugen, löschen oder auf andere Weise ändern und kann unter Verwendung eines vernetzten Geräts 106 erzeugt werden. Das Implementieren der Ressourcenänderung 512 veranlasst die Cloud-Speicher-Funktionseinheit 506, eine Push-Meldung 514 an das vernetzte Gerät 504 zu übermitteln. In einigen Implementierungen kann die Push-Meldung 514 kleiner sein als eine vorbestimmte Grenze, um Bandbreite einzusparen. In solchen Implementierungen kann das vernetzte Gerät 504 die in Push-Meldung 514 bereitgestellten Informationen verwenden, um zu bestimmen, ob weitere Informationen bezüglich der angegebenen Änderung angefragt werden sollen.
  • In einigen Implementierungen 504 kann das vernetzte Gerät den Benutzer 502 veranlassen, ein Autorisierung 508 an Cloud-Speicher-Funktionseinheit 506 zu übermitteln. In einigen Implementierungen kann die Cloud-Speicher-Funktionseinheit 506 auf eine Abonnementanforderung 510 antworten, indem sie den Benutzer 502 auffordert, eine geeignete Autorisierung 508 zu übermitteln.
  • In einigen Implementierungen kann das vernetzte Gerät 504 auf eine Meldung 514 mit einer Bestätigungsmeldung antworten. In einigen solchen Implementierungen kann die Cloud-Speicher-Funktionseinheit 506 auf eine vorbestimmte Anzahl von vergeblichen Versuchen, eine Bestätigungsmeldung innerhalb einer vorgegebenen Zeitspanne zu empfangen, reagieren, indem das dem vernetzten Gerät 504 zugewiesene Abonnement gekündigt wird.
  • 6 ist ein Blockdiagramm eines Computergeräts, das verwendet werden kann, beliebige der Komponenten des Systems von 1 oder 2 zu implementieren und einen beliebigen der hierin beschriebenen Abläufe durchzuführen. Die Cloud-Speicher-Funktionseinheit 200 kann auf einem oder mehreren Computergeräten 600 mit geeigneten Schaltungsanordnungen implementiert werden, und das vernetzte Gerät 106 kann mit Cloud-Speichergerät 102 über ein oder mehrere Computergeräte 600 mit geeigneten Schaltungsanordnungen kommunizieren. In bestimmten Aspekten kann eine Vielzahl der Komponenten von Cloud-Speichersystem 100 in einem Computergerät 600 beinhaltet sein. Bei bestimmten Umsetzungen können eine Komponente und ein Speichergerät in mehreren Computern 600 implementiert werden.
  • Das Computergerät 600 umfasst mindestens eine Kommunikationsschnittstelleneinheit, einen Eingangs/Ausgangs-Controller 610, Systemspeicher und ein oder mehrere Datenspeichergeräte. Dies kann eine Netzwerkverbindung unterstützen, wie beispielsweise eine Verbindung zum Netzwerk 104, gezeigt in 1. Der Systemspeicher beinhaltet zumindest einen Direktzugriffsspeicher (RAM 602) und zumindest einen Nur-Lese-Speicher (ROM 604). RAM 602 kann beispielsweise die Dateidatenbank 206 von 2 unterstützen. All diese Elemente kommunizieren mit einer zentralen Verarbeitungseinheit (CPU 606), um den Betrieb des Computers 600 zu vereinfachen. Der Computer 600 kann auf diverse Weisen konfiguriert werden. Der Computer 600 kann z. B. ein konventioneller Standalone-Computer sein, oder als Alternative, können die Funktionen des Computers 600 über mehrere Computersysteme und Architekturen verteilt werden. In 6 kann der Computer 600 über ein Netzwerk oder ein lokales Netzwerk mit anderen Servern oder Systemen verbunden sein.
  • Das Computergerät 600 kann ein einer verteilten Architektur konfiguriert sein, worin Datenbanken und Rechner in separaten Einheiten oder an separaten Orten angeordnet sind. Manche Einheiten führen primäre Verarbeitungsfunktionen aus und beinhalten mindestens einen allgemeinen Controller oder einen Prozessor und einen Systemspeicher. Bei verteilten Architekturumsetzungen müssen alle Einheiten über die Kommunikationsschnittstelle 608 an einen Kommunikationsknotenpunkt oder -port (nicht gezeigt) angeschlossen sein, der die primäre Kommunikationsverknüpfung mit anderen Servern, Client- oder Benutzercomputern und anderen zugehörigen Geräten darstellt. Der Kommunikationsknotenpunkt oder -port kann selbst über eine minimale Verarbeitungskapazität verfügen und dient primär als Kommunikationsrouter. Verschiedene Kommunikationsprotokolle können ein Teil des Systems sein, einschließlich, aber nicht beschränkt auf: Ethernet, SAP, SASTM, ATP, BLUETOOTHTM, GSM und TCP/IP.
  • Die Zentraleinheit 606 umfasst einen Prozessor, wie beispielsweise einen oder mehrere herkömmliche Mikroprozessoren und einen oder mehrere zusätzliche Co-Prozessoren, wie beispielsweise Mathematik-Co-Prozessoren zum Outsourcen der Arbeitslast von Zentraleinheit 606. Der CPU 606 kommuniziert mit der Kommunikationsschnittstelle 608 und dem Eingangs-/Ausgangssteuergerät 610, über das der CPU 606 mit anderen Geräten, wie anderen Servern, Benutzerstationen und Geräten kommunizieren kann. Die Kommunikationsschnittstelleneinheit 608 und der Eingangs-/Ausgangs-Controller 610, können mehrere Kommunikationskanäle für simultane Kommunikation mit beispielsweise anderen Prozessoren, Servern, oder Client-Terminals beinhalten.
  • Die Zentraleinheit 606 kommuniziert ebenfalls mit dem Datenspeichergerät. Das Datenspeichergerät kann eine geeignete Kombination aus magnetischem, optischem oder Halbleiterspeicher umfassen und kann z. B. RAM 602, ROM 604, einen Flashdrive, oder ein optisches Laufwerk, wie ein CD-Laufwerk, oder eine Festplatte enthalten. Die Zentraleinheit 606 und das Datenspeichergerät können sich beispielsweise ausschließlich in einem einzigen Computer oder einem anderen Computergerät befinden, oder sie können über ein Kommunikationsmedium, wie beispielsweise einen USB-Port, ein serielles Anschlusskabel, ein Koaxialkabel, ein Ethernetkabel, eine Telefonleitung, einen Funkfrequenz-Transceiver oder über ein ähnliches drahtloses oder verdrahtetes Medium oder eine Kombination der obigen miteinander verbunden sein. So kann der CPU 606 z. B. über die Kommunikationsschnittstelle 608 mit dem Datenspeichergerät verbunden sein. Der CPU 606 kann zur Durchführung einer oder mehrerer bestimmter Verarbeitungsfunktionen konfiguriert werden.
  • Auf dem Datenspeichergerät können beispielsweise (i) ein Betriebssystem 612 für das Computergerät 600; (ii) eine oder mehrere Anwendungen 614 (z. B. Computerprogrammcode oder ein Computerprogrammprodukt), die im Einklang mit den hier beschriebenen Systemen und Verfahren und insbesondere im Einklang mit den hier im Einzelnen mit Bezug auf die Zentraleinheit 606 beschriebenen Vorgängen, angepasst sind, die Zentraleinheit 606 zu regeln; oder (iii) Datenbank(en) 616, so angepasst, Informationen zu speichern, die verwendet werden können, um vom Programm benötigte Informationen zu speichern, gespeichert werden. Die dargestellte Datenbank 616 kann ein beliebige geeignete Datenbanksystem sein und kann ein lokales oder verteiltes Datenbanksystem sein.
  • Das Betriebssystem 612 und die Anwendungen 614 können zum Beispiel in einem komprimierten, nicht-compilierten und verschlüsselten Format gespeichert werden und können Computerprogrammcode beinhalten. Die Anweisungen des Programms können von einem computerlesbaren Medium, außer dem Datenspeichergerät, in den Hauptspeicher des Prozessors eingelesen werden, wie beispielsweise von ROM 604 oder von RAM 602, oder von einem Computerdatensignal, das in einer Trägerwelle verkörpert ist, wie beispielsweise ein solches, das innerhalb der bekannten Webseiten, die unter mit dem Internet verbundenen Geräten übertragen werden, zu finden ist. Während die Durchführung von Sequenzen von Anweisungen im Programm dazu führt, dass der CPU 606 die hier beschriebenen Prozessschritte durchführt, können auch fest verdrahtete Kreise anstatt oder in Kombination mit Softwareanweisungen für die Umsetzung des Prozesses der vorliegenden Offenlegung verwendet werden. Daher sind die hier beschriebenen Systeme und Methoden nicht auf eine spezifische Kombination aus Hardware und Software beschränkt.
  • Es kann ein geeigneter Computerprogrammcode bereitgestellt werden, um eine oder mehrere Funktionen im Zusammenhang mit dem hierin beschriebenen Cloud-Speichersystem auszuführen. Das Programm kann auch Programmelemente, wie beispielsweise ein Betriebssystem 612, ein Datenbank-Verwaltungssystem und „Gerätetreiber“ beinhalten, die dem Prozessor erlauben mit Computer-Peripheriegeräten (z. B. eine Videoanzeige, eine Tastatur, eine Computermaus usw.) über den Eingangs-/Ausgangs-Controller 610 zu wechselwirken.
  • Der Begriff „computerlesbares Medium“, wie er hier verwendet wird, bezieht sich auf ein nicht-flüchtiges Medium, das Anweisungen an den Prozessor des Computergeräts 600 (oder an irgend einen anderen Prozessor eines hier beschriebenen Geräts) zur Ausführung bereitstellt oder an der Bereitstellung beteiligt ist. Dieses Medium kann viele Formen annehmen, einschließlich unter anderem nichtflüchtige und flüchtige Medien. Zu den nichtflüchtigen Medien gehören z. B. optische magnetische oder optomagnetische Disks oder integrierte Speicherschaltung, wie Flash-Speicher. Zu den flüchtigen Medien gehören dynamisches RAM (DRAM), welches gewöhnlich als Hauptspeicher dient. Allgemeine Formen der maschinenlesbaren Medien bzw. computerlesbaren Medien beinhalten z. B. Disketten, Floppy Disks, Festplatten, Magnetbänder, jegliche anderen magnetischen Datenträger, CD-ROMs, DVDs, jegliche andere optische Medien, Lochkarten, Lochstreifen, alle anderen physischen Medien mit Lochmustern, RAM-, PROM-, EPROM-Speicher, Flash-EPROM, jegliche anderen Speicherchips oder -kassetten oder jedes andere Medium, von dem ein Prozessor lesen kann.
  • Diverse Formen von computerlesbaren Medien können daran beteiligt sein, eine oder mehrere Sequenzen einer oder mehrerer Anweisungen an die Zentraleinheit 606 (oder einen anderen hierin beschriebenen Prozessor oder eine Einrichtung) zur Ausführung zu tragen. So können die Anweisungen zum Beispiel zunächst auf einer magnetischen Disk eines Ferncomputers getragen werden (ohne Abbildung). Der Ferncomputer kann diese Anweisungen in seinen dynamischen Speicher laden und die Anweisungen anschließend über eine Ethernet-Verbindung, ein Kabel oder sogar über eine Telefonleitung mit Modem senden. Ein ortsnah an einem Computergerät angeordnetes Kommunikationsgerät 600 (z. B. ein Server) kann die Daten über die entsprechende Kommunikationsleitung empfangen und die Daten für den Prozessor auf einem Systembus ablegen. Der Systembus transportiert die Daten dann an den Hauptspeicher, von dem der Prozessor die Anweisungen anschließend abruft und ausführt. Die vom Hauptspeicher empfangenen Anweisungen können optional entweder vor oder nach der Ausführung durch den Prozessor gespeichert werden. Darüber hinaus können Anweisungen über einen Kommmunikations-Port als elektrische, elektromagnetische oder optische Signale empfangen werden, welche exemplarische Formen von drahtlosen Kommunikationen oder Datenströme sind, die diverse Arten von Informationen tragen.
  • Einige Implementierungen des oben Beschriebenen können durch die Herstellung von anwendungsspezifischen integrierten Schaltungen oder durch Verbinden eines geeigneten Netzwerks von herkömmlichen Komponentenschaltungen implementiert werden, wie dem Fachmann auf dem Gebiet offensichtlich sein wird. Der Fachmann auf dem Gebiet würde verstehen, dass Informationen und Signale durch eine beliebige einer Vielzahl von unterschiedlichen Technologien und Techniken dargestellt werden können. Beispielsweise können Daten, Anweisungen, Anfragen, Informationen, Signale, Bits, Symbole und Chips, auf die in der obigen Beschreibung durchweg Bezug genommen werden kann, durch Spannungen, Ströme, elektromagnetische Wellen, magnetische Felder oder Partikel, optische Felder oder Partikel oder irgendeine Kombination davon dargestellt werden.
  • Auch wenn hierin verschiedene Ausführungsformen der vorliegenden Offenbarung gezeigt und beschrieben wurden, wird es dem Fachmann offensichtlich sein, dass diese Ausführungsformen lediglich als Beispiel dienen. Den Fachkräften werden zahlreiche Variationen, Abänderungen und Ersetzungen einfallen, ohne von der Veröffentlichung abzuweichen. Zum Beispiel können Abonnements an vernetzte Geräte oder an von den Administratoren des Cloud-Speicherdienstes verwaltete Dienste adressiert werden. Es sollte klar sein, dass diverse Alternativen zu den hier beschriebenen Ausführungen in der Praxis dieser Offenlegung angewandt werden können. Elemente einer Implementierung der hierin beschriebenen Systeme und Verfahren können unabhängig voneinander implementiert werden oder mit anderen Implementierungen kombiniert werden. Es ist beabsichtigt, dass die folgenden Ansprüche den Umfang der Veröffentlichung festlegen und dass Verfahren und Strukturen innerhalb des Umfangs dieser Ansprüche und deren Entsprechungen hiervon abgedeckt sind.

Claims (10)

  1. Cloud-Speichersystem, umfassend: einen Kommunikationsprozessor in Verbindung mit: einer Ressourcendatenbank zur Speicherung einer Vielzahl von Ressourcen, einer Abonnementdatenbank zur Speicherung einer Vielzahl von Abonnements, wobei ein Abonnement in der Vielzahl von Abonnements zumindest ein Ressourcenmerkmal, zumindest eine Art von Änderung und zumindest ein vernetztes Gerät identifiziert, und ein Abonnementprozessor, der ausgelegt ist: auf Basis einer Abonnementanforderung eine erste Abonnementanforderung in der Abonnementdatenbank zu speichern; eine Änderung an einer Ressource mit dem zumindest einem Ressourcenmerkmal, das von dem ersten Abonnement identifiziert wird, zu identifizieren; zu bestimmen, ob die Änderung zumindest eine Art von Änderung ist, die von dem ersten Abonnement identifiziert wird; und eine Meldung an das zumindest eine vernetzte Gerät, das von dem ersten Abonnement identifiziert wird, zu erzeugen; wobei der Kommunikationsprozessor ausgelegt ist: die Meldung an das zumindest eine vernetzte Gerät zu übermitteln.
  2. System nach Anspruch 1, wobei die Abonnementanforderung von dem zumindest einem vernetzten Gerät empfangen wird, das von dem ersten Abonnement identifiziert wird.
  3. System nach Anspruch 1, ferner umfassend das Löschen des Abonnements auf Basis von vorbestimmten Kriterien.
  4. System nach Anspruch 3, wobei die vorbestimmten Kriterien den Empfang einer Abonnement-Kündigunsanforderung von dem zumindest einem vernetzten Gerät, das von dem ersten Abonnement identifiziert wird, beinhalten.
  5. System nach Anspruch 3, wobei die vorbestimmten Kriterien das Verstreichen einer vorbestimmten Zeitdauer beinhalten.
  6. System nach Anspruch 3, wobei die vorbestimmten Kriterien einen vergeblichen Versuch, innerhalb einer vorbestimmten Zeitdauer von der Übermittlung einer Meldung an das vernetzte Gerät, das von dem ersten Abonnement identifiziert wird, eine vorbestimmte Meldung von dem vernetzten Gerät zu empfangen, das von dem ersten Abonnement identifiziert wird, beinhalten.
  7. System nach Anspruch 1, wobei die Meldung das erste Abonnement identifiziert.
  8. System nach Anspruch 1, wobei die Meldung die Änderung identifiziert.
  9. System nach Anspruch 1, wobei der Abonnementprozessor ferner ausgelegt ist, als Reaktion auf das Speichern des ersten Abonnements, eine Abonnementsmeldung an das zumindest eine vernetzte Gerät, das von dem ersten Abonnement identifiziert wird zu erzeugen.
  10. System nach Anspruch 9, wobei die Abonnementmeldung Informationen über den Status der Ressource beinhaltet.
DE202014010945.1U 2013-07-11 2014-07-11 Systeme zur Bereitstellung von Meldungen von Änderungen in einem Cloud-basierten Dateisystem Expired - Lifetime DE202014010945U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/939,819 US10476758B2 (en) 2013-07-11 2013-07-11 Systems and methods for providing notifications of changes in a cloud-based file system
US13/939,819 2013-07-11

Publications (1)

Publication Number Publication Date
DE202014010945U1 true DE202014010945U1 (de) 2017-01-27

Family

ID=51298954

Family Applications (1)

Application Number Title Priority Date Filing Date
DE202014010945.1U Expired - Lifetime DE202014010945U1 (de) 2013-07-11 2014-07-11 Systeme zur Bereitstellung von Meldungen von Änderungen in einem Cloud-basierten Dateisystem

Country Status (5)

Country Link
US (3) US10476758B2 (de)
EP (1) EP3019959A1 (de)
CN (1) CN105359106B (de)
DE (1) DE202014010945U1 (de)
WO (1) WO2015006718A1 (de)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9690785B1 (en) 2014-01-30 2017-06-27 Google Inc. Change notification routing based on original authorship of modified region
US9646022B2 (en) * 2014-06-06 2017-05-09 Panzura, Inc. Distributed change notifications for a distributed filesystem
US10356157B2 (en) 2015-04-16 2019-07-16 Google Llc Systems and methods for notifying users of changes to files in cloud-based file-storage systems
US10108688B2 (en) 2015-12-22 2018-10-23 Dropbox, Inc. Managing content across discrete systems
US10642844B2 (en) 2016-04-01 2020-05-05 Arista Networks, Inc. Non-materialized tables with standing queries
US10860568B2 (en) 2016-04-01 2020-12-08 Arista Networks, Inc. External data source linking to queries in memory
US10284673B2 (en) * 2016-04-01 2019-05-07 Arista Networks, Inc. Interface for a client of a network device
US10817512B2 (en) 2016-04-01 2020-10-27 Arista Networks, Inc. Standing queries in memory
US10783147B2 (en) 2016-04-01 2020-09-22 Arista Networks, Inc. Query result flow control in a network switch
US10783144B2 (en) 2016-04-01 2020-09-22 Arista Networks, Inc. Use of null rows to indicate the end of a one-shot query in network switch
US10492058B2 (en) * 2016-08-08 2019-11-26 Cox Communications, Inc. Integration system for communications networks
US10481960B2 (en) * 2016-11-04 2019-11-19 Microsoft Technology Licensing, Llc Ingress and egress of data using callback notifications
US10885114B2 (en) 2016-11-04 2021-01-05 Microsoft Technology Licensing, Llc Dynamic entity model generation from graph data
US11475320B2 (en) 2016-11-04 2022-10-18 Microsoft Technology Licensing, Llc Contextual analysis of isolated collections based on differential ontologies
WO2019040893A1 (en) 2017-08-24 2019-02-28 Voice. Vote Spc METHOD AND APPARATUS FOR DISCONNECTING USER ACTIONS AND USER IDENTITY
AU2018405227A1 (en) 2017-08-24 2020-04-02 Voice. Vote Spc Method and apparatus for obtaining responses from users via communication system
US10652037B2 (en) 2017-09-25 2020-05-12 Microsoft Technology Licensing, Llc Notifying affected users of feature changes in a software application
US11100053B2 (en) * 2018-11-06 2021-08-24 Dropbox, Inc. Technologies for integrating cloud content items across platforms
US12028430B2 (en) 2018-11-28 2024-07-02 Beijing Boe Technology Development Co., Ltd. Event notification method, server device, apparatus and computer storage medium
CN111245875B (zh) 2018-11-28 2022-03-04 京东方科技集团股份有限公司 事件通知方法、设备、装置和计算机存储介质
CN111262893B (zh) * 2018-11-30 2022-11-18 京东方科技集团股份有限公司 用于事件通知的方法、服务器设备、事件通知装置、介质
US11870805B2 (en) * 2019-04-08 2024-01-09 California Manufacturing Technology Consulting Systems and methods that perform filtering, linking, and rendering
CN112511579A (zh) 2019-09-16 2021-03-16 京东方科技集团股份有限公司 事件通知方法、***,服务器设备、计算机存储介质
US11470064B2 (en) * 2020-02-18 2022-10-11 Bank Of America Corporation Data integrity system for transmission of incoming and outgoing data
US20220337668A1 (en) * 2021-04-14 2022-10-20 Oracle International Corporation Systems and methods for real-time repository management for universal service deployment
US20220353263A1 (en) * 2021-04-28 2022-11-03 Verizon Patent And Licensing Inc. Systems and methods for securing network function subscribe notification process
CN114065277B (zh) * 2021-10-29 2024-07-16 北京百度网讯科技有限公司 一种账单推送方法、装置、电子设备及存储介质
US20230188591A1 (en) * 2021-12-14 2023-06-15 Sap Se Recorder for webgui application

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9565275B2 (en) * 2012-02-09 2017-02-07 Rockwell Automation Technologies, Inc. Transformation of industrial data into useful cloud information
EP1422622A3 (de) 2002-11-15 2007-07-11 Matsushita Electric Industrial Co., Ltd. Vorrichtung, Verfahren und Programm zur Konkurrenzarbitrierung
US8150959B1 (en) * 2003-11-17 2012-04-03 Rockwell Automation Technologies, Inc. Systems and methods for notifying multiple hosts from an industrial controller
SE528357C2 (sv) * 2004-03-12 2006-10-24 Ericsson Telefon Ab L M En metod och arrangemang för att tillhandahålla användarinformation till en telekommunikationsklient
US8713615B2 (en) * 2006-02-17 2014-04-29 Verizon Laboratories Inc. Systems and methods for providing a shared folder via television
CN101146243A (zh) * 2006-09-15 2008-03-19 华为技术有限公司 一种业务订阅的方法和***及相应的设备
JP2009059160A (ja) 2007-08-31 2009-03-19 Sony Corp サーバ装置、ネットワークシステム、コンテンツ発見通知方法、及びコンピュータ・プログラム
US20090164293A1 (en) * 2007-12-21 2009-06-25 Keep In Touch Systemstm, Inc. System and method for time sensitive scheduling data grid flow management
US7953808B2 (en) 2008-03-04 2011-05-31 Apple Inc. Automatic notification system and process
US8364713B2 (en) * 2009-01-20 2013-01-29 Titanium Fire Ltd. Personal data manager systems and methods
EP2533464A4 (de) * 2009-12-21 2014-02-26 Telefonica Sa Verfahren und system zur abonnierung von diensten über erweiterten upnp-standard und nass-tispan-authentifizierung
US20110197032A1 (en) * 2010-02-08 2011-08-11 Microsoft Corporation Cache coordination between data sources and data recipients
CN102255934B (zh) 2010-05-20 2015-10-21 中兴通讯股份有限公司 云服务发布方法及云服务中介
US9590849B2 (en) * 2010-06-23 2017-03-07 Twilio, Inc. System and method for managing a computing cluster
US8589952B2 (en) 2010-06-30 2013-11-19 Palm, Inc. Dual operating system operation and configuration
US8560554B2 (en) * 2010-09-23 2013-10-15 Salesforce.Com, Inc. Methods and apparatus for selecting updates to associated records to publish on an information feed using importance weights in an on-demand database service environment
EP2631801A1 (de) 2010-10-20 2013-08-28 Fujitsu Limited Informationsverarbeitungssystem, aufzeichnungsvorrichtung, informationsverarbeitungsvorrichtung und verfahren zur steuerung des informationsverarbeitungssystems
CN102594718A (zh) * 2011-01-12 2012-07-18 阿尔卡特朗讯 一种处理呈现信息的方法和装置
US20140069091A1 (en) * 2011-03-17 2014-03-13 Parker Hannifin Corporation Electro-hydraulic system for controlling multiple functions
WO2012134080A2 (ko) * 2011-03-30 2012-10-04 주식회사 케이티 사물 통신에서 원격 소프트웨어를 분리 업그레이드하는 방법 및 장치
US9165036B2 (en) * 2011-06-21 2015-10-20 Salesforce.Com, Inc. Streaming transaction notifications
EP2729877A4 (de) 2011-07-08 2015-06-17 Box Inc Desktopapplikation zum zugriff und zur interaktion mit arbeitsplätzen in einem cloud-basierten inhaltsverwaltungssystem und synchronisierungsmechanismen dafür
US9451383B2 (en) * 2011-10-21 2016-09-20 Nokia Technologies Oy Method and apparatus for maintaining one or more communication sessions
US9285800B2 (en) * 2011-11-11 2016-03-15 Rockwell Automation Technologies, Inc Systems and methods for asynchronous searching and filtering of data
KR101922985B1 (ko) * 2011-12-08 2018-11-29 삼성전자주식회사 연락처 정보의 구독을 초대하는 장치 및 방법
EP2620864B1 (de) * 2012-01-30 2018-10-03 Kyocera Document Solutions Inc. Ereignismeldungssystem, bei dem einem Endgerät Ereignisse über ein Netzwerk gemeldet werden, die in Vorrichtungen erzeugt wurden
US9622070B2 (en) * 2012-04-23 2017-04-11 Nokia Technologies Oy Updating subscription information
US9086937B2 (en) * 2012-05-16 2015-07-21 Apple Inc. Cloud-based application resource files
US20130311598A1 (en) * 2012-05-16 2013-11-21 Apple Inc. Cloud-based data item sharing and collaboration among groups of users
US9584234B2 (en) * 2012-05-23 2017-02-28 Iheartmedia Management Services, Inc. Schedule subscription system
US9374374B2 (en) * 2012-06-19 2016-06-21 SecureMySocial, Inc. Systems and methods for securing social media for users and businesses and rewarding for enhancing security
WO2014008143A1 (en) * 2012-07-04 2014-01-09 Ehsolution.Com, Llc Systems and methods for new location task completion and enterprise-wide project initiative tracking
IN2014DN10478A (de) * 2012-07-05 2015-08-21 Ericsson Telefon Ab L M
US8713633B2 (en) * 2012-07-13 2014-04-29 Sophos Limited Security access protection for user data stored in a cloud computing facility
WO2014027222A1 (en) * 2012-08-15 2014-02-20 Nokia Corporation Methods and apparatus for device information sharing
EP2888852A1 (de) * 2012-08-23 2015-07-01 Telefonaktiebolaget L M Ericsson (Publ) Handhabung eines gemeinsamen datenobjekts in einem kommunikationsnetz
US9641653B2 (en) * 2012-08-31 2017-05-02 Satyanarayana T. Method and apparatus for determining a synchronization of subscription-notification service subscriptions among multiple entities
US9253113B2 (en) * 2012-09-07 2016-02-02 Oracle International Corporation Customizable model for throttling and prioritizing orders in a cloud environment
US9596358B2 (en) * 2012-09-21 2017-03-14 Oncept, Inc System and method for corporate mobile subscription management
US9910895B2 (en) * 2013-06-07 2018-03-06 Apple Inc. Push subscriptions
US8989703B2 (en) * 2013-07-10 2015-03-24 Rogers Communications Inc. Methods and systems for electronic device status exchange

Also Published As

Publication number Publication date
WO2015006718A1 (en) 2015-01-15
US11411837B2 (en) 2022-08-09
US20220393954A1 (en) 2022-12-08
US11855858B2 (en) 2023-12-26
US20200092177A1 (en) 2020-03-19
US20150019701A1 (en) 2015-01-15
CN105359106A (zh) 2016-02-24
US10476758B2 (en) 2019-11-12
CN105359106B (zh) 2019-11-19
EP3019959A1 (de) 2016-05-18

Similar Documents

Publication Publication Date Title
DE202014010945U1 (de) Systeme zur Bereitstellung von Meldungen von Änderungen in einem Cloud-basierten Dateisystem
DE60130543T2 (de) Gesichertes netzwerkbetriebsmittelzugriffssystem
DE102007033615B4 (de) Verfahren und Vorrichtung zum Umwandeln von Authentisierungs-Token zur Ermöglichung von Interaktionen zwischen Anwendungen
DE602004012870T2 (de) Verfahren und system zur benutzerauthentifizierung in einer benutzer-anbieterumgebung
DE102016123651B4 (de) Authentisierungskooperationssystem
DE202017106594U1 (de) Bereitstellen von Zugriff auf eine in einem Datenspeichersystem gespeicherte Datei
DE102012214134B4 (de) Serversystem und steuerverfahren von diesem, sowie programm
DE60000822T2 (de) Proxy server zur erweiterung einer anfrage eines clients mit daten über den benutzer
DE69613948T2 (de) System und Verfahren zur Unterstützung verteilter Rechnermechanismen in einer Lokalbereichsnetz-Serverumgebung
DE202016107494U1 (de) Widerruf des Gerätezugriffs
DE102014214641A1 (de) Informationsverarbeitungsvorrichtung, Verfahren zur Steuerung der Vorrichtung und Speichermedium
DE202012013453U1 (de) Gehostete Speichersperrung
DE112015005024T5 (de) Öffnen lokaler Anwendungen von Browsern
DE202011110893U1 (de) Verwaltung mehrfacher Anmeldungen über einen Einzelbrowser
DE202014010930U1 (de) Zugriff auf Objekte in ausgelagerten Speichern
DE112011101357T5 (de) Dynamisches Token für den vorübergehenden Datenzugriff
DE112011102224B4 (de) Identitätsvermittlung zwischen Client- und Server-Anwendungen
DE102011077218A1 (de) Zugriff auf in einer Cloud gespeicherte Daten
DE112016002392T5 (de) Autorisierung in einem verteilten System unter Verwendung von Zugriffssteuerungslisten und Gruppen
DE112018002502T5 (de) Cloud-Basiertes Management von Zugriff auf ein Datenspeichersystem auf einem lokalen Netzwerk
DE112010003638T5 (de) Öffentliche BOT-Verwaltung in privaten Netzwerken
DE112021005026T5 (de) Persistente quellwerte für angenommene alternative identitäten
DE102018219067A1 (de) Transparenzmechanismus zur lokalen Komposition von personenbezogenen, verteilt gespeicherten Nutzerdaten
DE202020005753U1 (de) Verwalten von Benutzeridentitäten in einem verwalteten Multi-Tenant-Dienst
DE112012000780T5 (de) Verarbeiten von Berechtigungsprüfungsdaten

Legal Events

Date Code Title Description
R150 Utility model maintained after payment of first maintenance fee after three years
R207 Utility model specification
R081 Change of applicant/patentee

Owner name: GOOGLE LLC (N.D.GES.D. STAATES DELAWARE), MOUN, US

Free format text: FORMER OWNER: GOOGLE INC., MOUNTAIN VIEW, CALIF., US

R082 Change of representative

Representative=s name: MAIKOWSKI & NINNEMANN PATENTANWAELTE PARTNERSC, DE

R151 Utility model maintained after payment of second maintenance fee after six years
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017300000

Ipc: G06F0016178000

R152 Utility model maintained after payment of third maintenance fee after eight years