IP Library Granted Patent US 7,853,643
Granted Patent B1
US 7,853,643 · App. 10/387,197 · Granted Dec 14, 2010

Web services-based computing resource lifecycle management

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,853,643
App. No.
10/387,197
Granted
Dec 14, 2010
Kind
B1
Abstract

Particular embodiments facilitate life-cycle management and utilization of network resources, such as web or other application services. One embodiment provides instancing, virtualization, and dynamic provisioning functionality facilitating management and utilization of web services. One embodiment combines the virtualization and dynamic provisioning functionality to facilitate the development of client application code in routed web services network architectures. One embodiment provides a set of management functions that may be applied to management of computing resources in any IP-based network.

Claims (86)

1. An apparatus facilitating the virtualization of web services, comprising

a Web services network directory storing at least one web service operation identifier corresponding to an operation supported by a web service in association with information allowing for the routing of a request to an end system hosting the web service over a computer network, wherein the web services network directory associates an access control list with at least one web service identifier;

a Web services routing node comprising a Web services network module operative to cause the Web services routing node to:

receive a request including a web service operation identifier from a client;

access the Web services network directory to locate information associated with the web service operation identifier, wherein the information stored in the web services network directory comprises binding information identifying a connection protocol;

route the request to the end system hosting the web service using located information stored in the web services network directory by opening a connection, using the connection protocol identified in the binding information, to the end system hosting the web service, and transmitting the request to the end system hosting the web service; and

control access to the web service corresponding to the web service identifier by checking the client transmitting the request against the access control list.

2. The apparatus of claim 1 wherein the information stored in the web services network directory comprises an endpoint location.

3. The apparatus of claim 1 wherein the information stored in the web services network directory comprises binding information.

4. The apparatus of claim 1 wherein the web services network module is further operative to:

receive a response from the end system hosting the web service, and

forward the response to the client.

5. The apparatus of claim 1 wherein the web services network directory stores at least one web service identifier in association with one or more web service operation identifiers; and wherein the web services network module is operative to receive a request including a web service identifier and a web service operation identifier and access the web services network directory to locate information associated with the web service and web service operation identifiers.

6. A system allowing for dynamic provisioning of web services, comprising

a web services network infrastructure comprising one or more routing nodes, each operative to route service operation requests and responses over a computer network;

a web services network management platform operative to:

receive an interface description document associated with a web service;

identify one or more operations supported by the web service;

create, for one or more identified operations, routing entity information for routing service operation requests and responses associated with the web service;

configure one or more routing nodes of the web services network infrastructure with the routing entity information created for the one or more identified operations;

modify the interface description document to replace, for one or more identified operations, endpoint location information corresponding to the one or more identified operations in the received interface description document with location information of a first routing node of the one or more routing nodes of the web services network infrastructure, wherein the modified interface description document facilitates the development of application code operative to transmit requests invoking the web service over the web services network infrastructure; and

transmit the modified interface description document in response to a request for the interface description document.

7. The system of claim 6 wherein the web services network management platform is further operative to:

identify mutable elements in the interface description;

replace at least one mutable element in the interface description with information reflecting the current state of the web services network infrastructure.

8. The system of claim 6 wherein the routing entity information for the one or more identified operations includes unique operation identifiers corresponding to respective identified operations supported by the web service, wherein the unique operation identifiers map to binding information associated with the web service.

9. The system of claim 6 wherein the one or more routing nodes are operative to receive service action requests including unique operation identifiers, and access binding information corresponding to the unique operation identifiers to route the requests to the web service.

10. The system of claim 6 wherein the interface description document includes a first binding defining the endpoint location and protocols for accessing a web service;

wherein the web services network infrastructure supports a second binding type;

wherein the web services network management platform is operative to replace the first binding in the interface description document with a second binding defining the endpoint location of a routing node within the web services network infrastructure and the protocols for accessing the routing functionality of the routing node; and

wherein the routing node is operative to

receive a request identifying an operation associated with the web service, wherein the request is formatted according to the second binding,

open a connection to end system associated with web service using the first binding.

11. The system of claim 10 wherein the first binding is a SOAP binding.

12. The system of claim 11 wherein the second binding is a SOAP binding identifying a routing node associated with the web services network infrastructure and a web service operation.

13. The system of claim 6 wherein the location information of the first routing node comprises an IP address.

14. The system of claim 6 wherein the location information of the first routing node comprises an IP address of the routing node in an encoded URL that further includes an operation identifier that maps to an identified operation of the web service.

15. An apparatus allowing for dynamic provisioning of web services, comprising

a web services network infrastructure comprising

at least one Web services network routing node comprising a Web services network directory storing at least one routing entry, the at least one routing entry comprising a web service operation identifier corresponding to a web service stored in association with location information allowing for the routing of a request to an end system hosting the web service over a computer network, wherein the at least one web services network routing node is a web services network gateway and wherein the at least one web services network routing node is operative to:

receive a request including a web service operation identifier,

access the Web services network directory to locate information associated with the web service operation identifier, and

route the request using location information stored in the web services network directory;

a web services network management platform operative to:

receive an interface description document associated with a web service, wherein the interface description document describes at least one operation and at least one endpoint location,

identify the at least one endpoint location(s) associated with the web service in the interface description document,

modify the interface description document by replacing the at least one endpoint location with a computer network address associated with a web services network routing node,

associate a web service operation identifier to the at least one operation in the interface description document,

add a routing entry to the web services network directory including the web service operation identifier and the at least one endpoint location associated with the web service, and

transmit the modified interface description document in response to a request for the interface description document.

16. The apparatus of claim 15 wherein the web services network routing node is a web services network broker.

17. The apparatus of claim 15 wherein the web services network infrastructure comprises a plurality of routing nodes arranged in a distributed hierarchy, and wherein at least one routing node is a web services network engine, and at least one routing node is a web services network switch.

18. The apparatus of claim 15 wherein the web services network infrastructure utilizes a network bus.

19. The apparatus of claim 15 wherein the web services network infrastructure is a message queuing architecture.

20. The apparatus of claim 15 wherein the web services network routing node is incorporated into the functionality of an IP network device.

21. A web services network system, comprising

a web services network infrastructure comprising at least one Web services network directory storing at least one routing entry, the at least one routing entry comprising a web service operation identifier corresponding to a web service stored in association with information allowing for the routing of a request to an end system hosting the web service over a computer network,

wherein the web services network infrastructure comprises one or more Web services routing nodes comprising a Web services network module operative to cause the one or more Web services routing nodes to:

receive a request including a web service operation identifier,

access the at least one Web services network directory to locate information associated with the web service operation identifier, and

route the request using location information stored in the at least one web services network directory; and

a web services network management platform comprising a web services network registry, wherein the web services network management platform is operative to:

receive an interface description document associated with a web service, wherein the interface description document describes at least one operation and at least one endpoint location,

store the interface description document in the web services network registry,

identify the at least one endpoint location(s) associated with the web service in the interface description document,

modify the interface description document by replacing the at least one endpoint location with a computer network address associated with a web services network infrastructure,

associate a web service operation identifier to the at least one operation in the interface description document,

add a routing entry to the web services network directory, the routing entry including the web service operation identifier and the at least one endpoint location associated with the web service,

allow users to configure an access control list for a given web service, and

transmit the modified interface description document in response to a request for the interface description document.

22. The system of claim 21 wherein the interface description document is a WSDL document.

23. The system of claim 21 wherein the web services network platform allows users to modify the interface description document stored in the web services network registry.

24. The system of claim 21 wherein the web services network platform allows users to add descriptive data to a web service stored in the web services network registry.

25. The system of claim 21 wherein the web services network platform allows users to change the at lest one endpoint location associated with a web service maintained in the web services network registry.

26. The system of claim 21 wherein the web services network infrastructure comprises a reporting node operative to log data associated with service operation requests and responses; and wherein the web services network platform is operative to

access the reporting node for usage data relating to a web service;

associated the usage data to the web service, and

allow for discovery of the usage data in the web services network registry.

27. A method comprising:

by one or more computing devices,

receiving an interface description document associated with a web service;

identifying, in the interface description document, one or more operations supported by the web service;

creating, for one or more identified operations, routing entity information for routing service operation requests and responses associated with the web service;

configuring one or more routing nodes of a web services network infrastructure with the routing entity information created for the one or more identified operations;

modifying the interface description document to replace, for one or more identified operations, endpoint location information corresponding to the one or more identified operations in the received interface description document with location information of a first routing node of the one or more routing nodes of the web services network infrastructure and

transmitting the modified interface description document in response to a request for the interface description document.

Assignments (16)
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Aug 7, 2019
From: BRIGHTWOOD LOAN SERVICES LLC, AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
To: AKANA, INC.; ROGUE WAVE SOFTWARE, INC.; PERFORCE SOFTWARE, INC.
Reel/Frame 049996/0115 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Jul 22, 2019
From: ANTARES CAPITAL LP, AS COLLATERAL AGENT
To: AKANA, INC.
Reel/Frame 049823/0685 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jul 22, 2019
From: PERFORCE SOFTWARE, INC.; PERFORCE INTERMEDIATE HOLDINGS, LLC; AKANA, INC.; GLIFFY, INC.; KLOCWORK INC.; OPENLOGIC, INC.; ROGUE WAVE HOLDING CORP.; ROGUE WAVE HOLDINGS, INC.; ROGUE WAVE SOFTWARE, INC.; RWS, INC.; TOTALVIEW TECHNOLOGIES, INC.; TOTALVIEW TECHNOLOGIES LLC; VISUAL NUMERICS, INC.; ZEROTURNAROUND USA, INC.; ZEROTURNAROUND, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 049823/0752 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 8, 2019
From: AKANA, INC.
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 049688/0800 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Feb 8, 2019
From: AKANA, INC.
To: ANTARES CAPITAL LP, AS COLLATERAL AGENT
Reel/Frame 049859/0124 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Feb 8, 2019
From: FIRST EAGLE PRIVATE CREDIT, LLC (F/K/A/ NEWSTAR FINANCIAL, LLC (NEWSTAR FINANCIAL, LLC F/K/A NEWSTAR FINANCIAL, INC.))
To: ROGUE WAVE SOFTWARE, INC.; ROGUE WAVE HOLDINGS, INC.; KLOCWORK INC.; TOTALVIEW TECHNOLOGIES, INC.; TOTALVIEW TECHNOLOGIES LLC; RWS, INC.; OPENLOGIC, INC.; VISUAL NUMERICS, INC.; AKANA, INC.
Reel/Frame 048289/0928 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Feb 8, 2019
From: AKANA, INC.; ROGUE WAVE SOFTWARE, INC.; PERFORCE SOFTWARE, INC.
To: BRIGHTWOOD LOAN SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 048290/0223 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Feb 8, 2019
From: AKANA, INC.; ROGUE WAVE SOFTWARE, INC.; PERFORCE SOFTWARE, INC.
To: BRIGHTWOOD LOAN SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 048290/0241 →
RELEASE OF SECURITY INTEREST Recorded Dec 6, 2016
From: MULTIPLIER CAPITAL, LP
To: AKANA, INC.
Reel/Frame 040842/0358 →
SECURITY INTEREST Recorded Nov 29, 2016
From: AKANA, INC.
To: NEWSTAR FINANCIAL, INC.
Reel/Frame 040456/0699 →
SECURITY AGREEMENT Recorded Apr 7, 2016
From: AKANA, INC.
To: MULTIPLIER CAPITAL, LP
Reel/Frame 038381/0780 →
CHANGE OF NAME Recorded May 1, 2015
From: SOA SOFTWARE, INC.
To: AKANA, INC.
Reel/Frame 035566/0196 →
RELEASE OF SECURITY INTEREST Recorded Jun 23, 2014
From: VENTURE LENDING & LEASING V, INC.
To: SOA SOFTWARE, INC.
Reel/Frame 033217/0035 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2014
From: BLUE TITAN SOFTWARE, INC.
To: SOA SOFTWARE INC.
Reel/Frame 033070/0604 →
SECURITY INTEREST Recorded Aug 18, 2008
From: SOA SOFTWARE, INC.
To: VENTURE LENDING & LEASING V, INC.
Reel/Frame 021411/0393 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 12, 2003
From: MARTINEZ, FRANK; TOTH, PAUL KEVIN; DARUGAR, PARAND TONY
To: BLUE TITAN SOFTWARE, INC.
Reel/Frame 013866/0617 →