WO2001026321A2 - Communication service architectures for netcentric computing systems - Google Patents

Communication service architectures for netcentric computing systems Download PDF

Info

Publication number
WO2001026321A2
WO2001026321A2 PCT/US2000/026693 US0026693W WO0126321A2 WO 2001026321 A2 WO2001026321 A2 WO 2001026321A2 US 0026693 W US0026693 W US 0026693W WO 0126321 A2 WO0126321 A2 WO 0126321A2
Authority
WO
WIPO (PCT)
Prior art keywords
services
communication
messaging
architecture
group
Prior art date
Application number
PCT/US2000/026693
Other languages
French (fr)
Other versions
WO2001026321A3 (en
Inventor
John K. Kaltenmark
Michael W. Alber
William M. Gilliland
Original Assignee
Accenture L.L.P.
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 Accenture L.L.P. filed Critical Accenture L.L.P.
Priority to AU78374/00A priority Critical patent/AU7837400A/en
Publication of WO2001026321A2 publication Critical patent/WO2001026321A2/en
Publication of WO2001026321A3 publication Critical patent/WO2001026321A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/959Network
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/964Database arrangement
    • Y10S707/966Distributed
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing

Definitions

  • the present invention relates generally to business computing systems, and more particularly to communication service architectures for netcentric computing systems.
  • this processing opened up the file of transactions found in batch transactions and allowed the user to submit them one at a time, receiving either immediate confirmation of the success of the transaction or else feedback on the nature of the transaction error.
  • the conceptually simple change of having the user interact with the computer on a transaction-at-a-time basis caused huge changes in the nature of business computing. More important, users saw huge changes in what they could do on a day-today basis. Customers were no longer forced to wait for a batch run to process the particular application. In essence, the computer had an impact on the entire work flow of the business user.
  • the systems provided a means for the business user to communicate with others in the business as the day-to-day business went along.
  • DBMS database management systems
  • Client/server computing is a style of computing involving multiple processors, one of which is typically a workstation, and across which a single business transaction is completed. Using the workstation, the transaction entered by the user could now be processed on a keystroke-by-keystroke basis. Furthermore, there was a change in the communications. With client/server, users could communicate with others in the work group via a local area network (LAN).
  • LAN local area network
  • the LAN permitted workstation-to-workstation communications at speeds of 100 to 1,000 times what was typically available on a WAN.
  • the LAN was a technology that could be grown and evolved in a local office with little need for direct interaction from the telecommunications group.
  • the present invention discloses a communication services architecture for a netcentric computing system.
  • the communication architecture includes a communication services layer, a transport services layer and a network media services layer.
  • the communication services layer includes communication services, communication security services, virtual resource services and directory services.
  • the transport services layer includes message transport services, packet forwarding/Internetworking services, circuit switching services, transport security services, network address allocation services and quality of service services.
  • the network media services layer includes media access services and physical media services.
  • the communication services of the communication services architecture includes core messaging services and specialized messaging services.
  • the core messaging services transfer information from one application to another application in the netcentric computing system.
  • the core messaging services may be selected from the group consisting of file transfer services, remote procedure call services, message-oriented services and streaming services.
  • the file transfer services may be selected from the group consisting of file transfer protocol services, hyper-text transfer protocol services, secure hyper-text transfer protocol services and file transfer and access management services.
  • the communication services also include specialized messaging services.
  • the specialized messaging services may be selected from the group consisting of E-mail messaging services, database access messaging services, object request broker messaging services, computer-telephone integration messaging services, electronic data interchange messaging services and legacy integration services.
  • the communication security services may be selected from the group consisting of encryption services, identification/authentication services and access control services.
  • the identification/authentication services may be selected from the group consisting of basic ID/authentication, ID/password encryption, digital certificates, digital signatures, hardware tokens, virtual tokens and biometric identification.
  • the directory services include name services and domain services.
  • the name services create a logical "pronounceable" name in place of a binary machine number on the client.
  • the name services and the domain services can be used by other communications services.
  • a network domain is a set of network nodes under common control (i.e., common security and logins, unified addressing, coordinated management, etc.). The domain services manage these types of activities for the network nodes in a domain.
  • the virtual resource services may be selected from the group consisting of fax services, file sharing services, paging services, phone services, terminal services, printing services and audio/ video services.
  • the terminal services may be selected from the group consisting of Telnet, 3270 emulation, tn3270, X Window System, remote control and rlogin.
  • Another aspect of the present invention discloses a method of providing a communication services architecture for a netcentric computing system.
  • the method includes sharing a communication services layer including communication services, communication security services, virtual resource services and directory services with at least one client and a web server.
  • the communication services can be broken down into core messaging services and specialized messaging services.
  • the client and the web server are interconnected with a network media services layer that includes media access services and physical media services.
  • the present invention discloses a communication services architecture that is used to create "virtual enterprises.” Although the netcentric computing system supports traditional types of data traffic, it also supports nontraditional types of data traffic (i.e. - video, sound, graphics, files) as well.
  • the preferred communication services architecture allows an enterprise to produce the final packaged product or service and interact with their suppliers or customers through a seamless information infrastructure.
  • the communication services architecture advantageously supports an ever-increasing base of the public that needs or desires to access the resources of the enterprise from remote locations.
  • Figure 1 illustrates a netcentric execution architecture for a netcentric computing system that includes a communication services architecture.
  • Figure 2 illustrates an representative illustration of a netcentric computing system.
  • Figure 3 illustrates a portion of the communication services architecture.
  • Figure 4 illustrates the preferred communications services layer.
  • Figure 5 illustrates an example of a preferred file transfer service.
  • Figure 6 illustrates an example of a remote procedure call service.
  • Figure 7 illustrates an example of message passing.
  • Figure 8 illustrates an example of message queuing.
  • Figure 9 illustrates an example of publish and subscribe messaging.
  • Figure 10 illustrates streaming services.
  • Figure 11 illustrates computer-telephone integration messaging services that may be incorporated into the preferred communication services architecture.
  • Figure 12 illustrates the preferred directory service of the communication services architecture.
  • Figure 13 illustrates a portion of the communication fabric layer that depicts the transport services and the network media services.
  • a communication services architecture 10 for a netcentric computing system 12 discloses a communication services architecture 10 for a netcentric computing system 12.
  • a business enterprise 18 includes at least one client 14, at least one database server 22, at least one firewall 24, at least one application server 26, at least one web server 28 and a local area network (LAN) connection 30 which are generally electrically connected as illustrated in Fig. 2.
  • LAN connections 30 are used to interconnect various components or computing devices that are located at a first enterprise location 32 within the business enterprise 18.
  • Those skilled in the art would recognize that various types of LAN connections 30 exist and may be used in the present invention.
  • firewall 24 is used to isolate internal systems from unwanted intruders.
  • firewalls 24 isolate web servers 28 from all Internet traffic that is not relevant to the netcentric computing system 12.
  • the only requests allowed through the firewall 24 are for services on the web servers 28. All requests for other applications (e.g., FTP, Telnet) and other IP addresses are blocked by the firewall 24.
  • the web servers 28 are the primary interface to the clients 14 for all interactions with the applications or services of the netcentric computing system 12. The main task of
  • the web servers 28 is to authenticate the clients 14, establish a secure connection from the clients 14 to the web servers 28 using encrypted messages, and allow applications the clients 14 are using to transparently access the resources of the netcentric computing system 12.
  • the web servers 28 are responsible for accepting incoming HTTP messages and fulfilling the requests.
  • requests are forwarded to the application servers 26.
  • static pages such as help pages, are preferably generated by the web servers 28.
  • client should be construed to include both remote clients and local clients.
  • the primary function of the application servers 26 is to provide a link through which the web servers 28 can interact with the clients 14, trigger business transactions, and send back resulting data to the clients 14.
  • a fundamental role of the application servers 26 is to manage the logical flow of the transactions and keep track of the state of sessions. For a given transaction, the application servers 26 and the web servers 28 are responsible for managing all aspects of sessions.
  • a session is a period of time in which a client 14 is interacting with, and using, a resource of the netcentric computing system 12.
  • the main purpose of the database servers 22 is to handle an application log, which stores all application related data. Audit trails are also logged in the application log. All requests sent to the web servers 28 and application servers 26, as well as their respective responses, can be logged in the application log if necessary. The audit trails are preferentially used for traceability. In the preferred embodiment, requests are logged in the application log directly by the application server 26. Those skilled in the art would recognize that any number of data items can be monitored and kept track of by the application log.
  • a second business enterprise location 34 may be connected with the first business enterprise location 32 using an intranet connection 36.
  • intranet connection 36 allows the computing resources of the second business enterprise location 34 to be shared or connected with the computing resources available at the first business enterprise location 32.
  • several other enterprise locations, each containing its own computing resources, may be connected with the netcentric computing system 12.
  • the firewall 24 of the first business enterprise location 32 is connected with a dedicated Internet connection 38 to a plurality of remote clients 14.
  • the remote clients 14 that are connected to the Internet connection 38 access data at the business enterprise 18 through the Internet connection 38 using a browser application.
  • the Internet connection 38 gives the remote clients 14 the ability to gain access to applications, information and data content that may be located on the database server 22, the application server 26 and the web server 28.
  • the present invention discloses a communication service architecture 10 for a netcentric execution architecture 40 that is used in a netcentric computing system 12.
  • the communications service architecture 10 includes a communication layer 42 and a communication fabric layer 44.
  • the communication layer 42 and the communications fabric layer 44 allow the clients 14 to communicate (i.e. - transfer data or messages) with the servers 22, 26, 28 of the netcentric computing system 12 during operation.
  • the communication services architecture 10 includes a communications services layer 46, a transport layer 48 and a network media layer 50.
  • Each layer 46, 48, 50 contains specific network-related devices and services that are needed to deliver the necessary functionality required by the preferred netcentric execution architecture 40 that drives the netcentric computing system 12.
  • the communication layers 42 on both the client 14 and server 22, 26, 28, includes the communication services layer 46 and the transport layer 48.
  • the communications fabric layer 44 includes the communication services layer 46, the transport layer 48, and the network media layer 50.
  • the preferred communication services architecture 10 require services from all three network layers 46, 48, 50 of the communication services architecture 10. Within each of the layers 46, 48, 50 individual services are provided that selectively deliver the necessary functionality of the preferred communication services
  • the services provided in communications services layer 46, the transport layer 48 and the network media layer 50 enable applications and higher-level services provided by the netcentric computing system 12 to be isolated from the intricacies of the low-level network (e.g., developing application interfaces directly with complex communications protocols).
  • the communication services layer 46 manages the interaction of distributed processes over the netcentric computing system 12.
  • the communications services layer 46 enables an application to interact transparently with other applications regardless of where the application resides or where the client 14 is located.
  • the communication services layer 46 performs four distinct functions: manages communications between applications; initiates and manages the transfer of information between processes over the netcentric computing system 12; provides specialized interface and communication management capabilities based on the type of resource accessed so that network nodes can intelligently interact with distributed resources; and provides interfacing and translation to ensure that information received is in a readable format for the local system.
  • the term node should be broadly interpreted to include both clients and servers as well as various other computing devices. As illustrated in Fig.
  • the communication services layer 46 makes up a part of the communication layer 42 and the communications fabric layer 44 in the preferred embodiment.
  • the transport layer 48 provides the capability of transferring data through the netcentric computing system 12 to the ultimate destination.
  • the primary function of the transport layer 48 includes transporting data (including reliability, security and quality of service) and transporting voice calls.
  • the transport layer 48 is the portion of the communication services architecture 10 that transfers information across the netcentric computing system 12 from clients 14 to servers 22, 26, 28, and vice versa.
  • a portion of the transport layer 48 is included in the communications layer 42 and the communications fabric layer 44.
  • the network media layer 50 performs the low-level transfer of data between network nodes, using physical media such as wiring.
  • the primary functions of the network media layer 50 include performing low-level transfer of data between network nodes (i.e., clients and servers), managing low-level signaling across physical media, physical wiring, cabling and radio frequency spectrum. In essence, without the network media layer 50, information would not be capable of traveling to its intended destinations. As such, as illustrated in Fig.
  • the network media services layer 50 is primarily used as a part of the communications fabric layer 44, but is also used to connect the clients 14 with the servers 22, 26, 28.
  • the communication services layer 46 enables applications to interact transparently with other applications, regardless of whether they reside on the same client 14 or on a remote server 22, 26, 28.
  • the preferred communication services layer 46 includes communication services 52, communication security services 64, virtual resource services 66 and directory services 68.
  • the communication services 52 include core messaging services 60 and specialized messaging services 62.
  • the communication services 52 perform the process of sending information or commands between two or more recipients.
  • Recipients may be clients, people, or processes within a client 14 that is connected with the netcentric computing system 12.
  • a protocol (or in come cases, multiple protocols) is used that both the sender and receiver can understand.
  • a protocol is a set of rules describing, in technical terms, how two end points should exchange information. Protocols exist at several levels during the exchange of information. Protocols facilitate transport of the message carrying the information. Both end points must recognize and observe the protocol.
  • TCP/IP protocol which is commonly used by the Internet.
  • the core messaging services 60 transfer formatted information from one process or application to another process or application.
  • applications can shield themselves from the complexity of the transport layer 48.
  • Store and forward messaging provides a deferred message processing.
  • store and forward messaging may use an e-mail infrastructure upon which to build applications. Common uses would be for forms routing and e-mail.
  • Synchronous messaging allows an application to send a message to another application and wait for a reply before continuing.
  • Synchronous messaging is typically used for update and general business transactions. It requires time-out processing to allow the application to reacquire control in the event of failure.
  • Asynchronous messaging allows an application to send a message to another application and continue processing before a reply is received.
  • Asynchronous messaging is typically used for larger retrieval-type processing, such as retrieval of larger lists of data than can be contained in one message. Messaging styles are important because they serve as the primary link to the application and business requirements.
  • interprocess messaging is typically implemented in one of two ways: 1) function based, which uses the subroutine model of programming in which the message interface is built upon the calling program passing the appropriate parameters and receiving the returned information and 2) message based, which uses a defined message format to exchange information between processes. While a portion of the message may be unstructured, a defined header component is normally included.
  • a message- based approach is not limited to the call/return structure of the function-based model and can be used in a conversational manner.
  • the core messaging services 60 include file transfer services 70, remote procedure call (RPC) services 72, message-oriented services 74 and streaming services 76.
  • RPC remote procedure call
  • the file transfer services 70 use applications to enable the copying and receiving of files or other large blocks of data between resources or devices of the netcentric computer system 12. As illustrated in Fig. 5, during this process a file is copied from one resource or node (client 14) to another resource or node (web server 28). As such, the file transfer services 70 transfer a copy of a file to the resulting resource receiving the file, which results in a copy of the file on both machines.
  • the file transfer services 70 include file transfer protocol (FTP) services, hyper-text transfer protocol (HTTP) services, secure hyper-text transfer protocol (S-HTTP) services, and file transfer and access management (FTAM) services.
  • FTP services allow users to upload and download files across the netcentric computing system 12.
  • FTP services also provide a mechanism to obtain file name, directory name, attributes and file size information.
  • NFS Network File System
  • HTTP services can be thought of as a lightweight file transfer protocol optimized for transferring small files. HTTP services reduce the inefficiencies of the FTP protocol. HTTP services run on top of TCP/IP and was developed specifically for the transmission of hypertext between client 14 and server 22, 26, 28.
  • S-HTTP services are a secure form of HTTP services, which would mostly used for financial transactions on the netcentric computing system 12. S-HTTP services are used because of the ability to conduct financial transactions (using credit card numbers or passing sensitive information) without the risk of unauthorized people intercepting this information. S-HTTP services incorporate various cryptographic message formats such as DSA and RSA standards into both the web client and the web server. FT AM services use the Open Systems Interconnection (OSI) standard, which may also be is used for file transfer, file access and file management across platforms.
  • OSI Open Systems Interconnection
  • Remote procedure call (RPC) services 72 is a type of transfer protocol by which an application sends a request to a remote system (i.e. - client or server) to execute a designated procedure using the supplied arguments and return the result to the application.
  • Fig. 6 depicts RPC messaging, in which the message originator stops processing while waiting for a reply.
  • RPCs emulate the function call mechanisms found in procedural languages (e.g., the C language). This means that control is passed from the main logic of a program to the called function, with control returning to the main program once the called function completes its task. Because RPC services 72 perform this mechanism across the network, they pass some element of control from one process to another, for example, from the client 14 to the server 22, 26, 28. Because the client 14 is dependent on the response from the server 22, 26, 28, it is normally blocked from performing any additional processing until a response is received. This type of synchronous data exchange is also referred to as blocking communications.
  • the message-oriented services 74 handle the process of distributing data and control through the exchange of records known as messages.
  • the message-oriented services 74 provide the application developer with a set of simple verbs (e.g., connect, send, receive, and disconnect) that are used to exchange information with other distributed applications on the netcentric computing system 12.
  • simple verbs e.g., connect, send, receive, and disconnect
  • the application developer uses a send verb. This verb, along with the appropriate parameters (e.g. , data to be sent and the process's logical name), are included as part of the application code.
  • the message-oriented services 74 are responsible for managing the interface to the underlying communications architecture via the communications protocol APIs and ensuring the delivery of the information to the remote process or application.
  • This interface may require that the message-oriented services 74 have the following capabilities: translating mnemonic or logical process names to operating system compatible format; opening a communications session and negotiating parameters for the session; translating data to the proper format; transferring data and control messages during the session; recovering any information if errors occur during transmission; and passing results information and status to the application.
  • the message-oriented services 74 implement a "non-blocking" messaging architecture.
  • message passing services a message passing service
  • message queuing services a message queuing service
  • publish and subscribe services a message passing services
  • the message passing services are a direct, application-to- application communication model.
  • An application request is sent in the form of a message from one application to another.
  • the communication method can be either synchronous (in this case, the sending application waits for a response back from the receiving application, like RPCs) or asynchronous (through call-back routines).
  • a message-passing model a direct link between two applications that participate in the message exchange is always maintained.
  • the message queuing services are an indirect application-to-application communication model that allows applications to communicate via message queues rather than by calling each other directly.
  • Message queuing is asynchronous by nature and connectionless, meaning that the recipient need not be directly available when the message is sent. Moreover, it provides support for reliable, guaranteed and assured (non-duplicate) message delivery.
  • the publish and subscribe services are a special type of data delivery mechanism that allows processes to register an
  • An application which may be on the client 14, then sends (publishes) a message, which is then forwarded to all processes that subscribe, which are typically servers.
  • the streaming services 76 use applications that transfer time-sensitive data streams (e.g., video and/or audio) in real time.
  • streaming differs from the other types of core messaging services 60 in that it delivers a continuous, one-way stream of data, rather than the relatively short messages of the other types of core messaging services 60.
  • the media stream is one-way from the server 22, 26, 28 to the client 14, the client 14 can issue stream controls to the server 22, 26, 28 as well.
  • the streaming services 76 can be used to deliver video, audio, and/or other real-time content across the Internet or within the netcentric computing system 12.
  • the streaming services 76 may be used by different types of applications and may transfer information in one of several different types of streaming protocols.
  • the streaming protocols are selected from the group including real-time streaming protocol (RTSP), real-time transport protocol (RTP) and realtime control protocol (RTCP).
  • RTSP is the proposed Internet protocol for establishing and controlling on-demand delivery of real-time data. For example, clients can use RTSP to request specific media from a media server, to issue commands such as play, record and pause, and to control media delivery speed. Because RTSP simply controls media delivery, it is layered on top of other protocols.
  • RTP Real-time protocols
  • RTP provides end-to-end data delivery for applications transmitting real-time data over multicast or unicast network services.
  • RTP conveys encoding, timing and sequencing information to allow receivers to properly reconstaict the media stream.
  • RTP is independent of the underlying transport service, but it is typically used with UDP. It may also be used with Multicast UDP, TCP/IP or IP Multicast.
  • RTP is augmented by the RTCP. RTCP allows nodes to identify stream participants and communicate about the quality of data delivery.
  • a key attribute of any streaming architecture is the adherence to a flow of time-sequenced data packets.
  • Each series of packets contains the necessary information to play the next segment in a sound or video clip.
  • Fig. 10 highlights the oneway, time-sequenced nature of the flow of data packets for a streaming architecture.
  • the specialized messaging services 62 extend the core messaging services 60 to provide additional functionality to the communication services 52.
  • the specialized messaging services 62 are designed to extend core messaging services 60 in the following general ways: providing messaging among specialized messaging systems by drawing upon basic messaging capabilities; defining specialized message layouts; defining specialized intersystem protocols; suggesting ways in which messaging draws upon director ⁇ ' and security services to deliver a complete messaging environment.
  • the specialized messaging services 62 preferentially include the following sub-services: E-mail messaging services 78, database access messaging services 80, object request broker messaging services 82, computer-telephone integration messaging services 84, electronic data interchange messaging services 86 and legacy integration messaging services 88.
  • the E-mail messaging services 88 exchange messages using the store-and-forward messaging style.
  • some E-mail messaging services 88 traditionally include a rudimentary form of directory services.
  • E-mail products known in the art use proprietary protocols, the following are examples of E-mail related standards that may be used by the present invention: X.400, Simple Mail Transfer Protocol (SMTP), Multi-Purpose Internet Mail Extensions (MIME), Post Office Protocol (POP) and Internet Message Access Protocol, Version 4 (IMAP4).
  • SMTP Simple Mail Transfer Protocol
  • MIME Multi-Purpose Internet Mail Extensions
  • POP Post Office Protocol
  • IMAP4 Internet Message Access Protocol, Version 4
  • the X-400 message handling system standard defines a platform independent standard for store-and-forward message transfers among mail servers.
  • X.400 is often used as a backbone e-mail service, with gateways providing interconnection with end-user systems.
  • SMTP is a UNIX/Internet standard for transferring e-mail among servers.
  • MIME is a protocol that enables Internet users to exchange multimedia e-mail messages.
  • POP or POP3 is used to distribute e-mail from an SMTP server to the actual
  • IMAP4 allows a client 14 to access and manipulate e-mail messages on a server 22, 26, 28. IMAP4 permits manipulation or remote message folders, called "mailboxes," in a way that is functionally equivalent to local mailboxes. EMAP4 also provides the capability for an off-line client 14 to resynchronize with the server 22, 26, 28. IMAP4 includes standards for message handling features that allow users to download message header information and then decide which e-mail message contents to download.
  • the database access messaging services 80 use applications to provide connectivity for clients 14 to access databases throughout the netcentric computing system 12. Database messaging applications draw upon basic inter-process messaging capabilities (e.g., RPCs) to support database connectivity. DBAM can be grouped into one of three categories: open;
  • Open database messaging services typically provide single applications seamless access to multiple data sources, both relational and non-relational, through a standard application programming interface (API) set. Examples include ODBX (Open Database Connectivity) and JDBC (Java Database Connectivity). ODBC is considered an industry de facto standard.
  • API application programming interface
  • gateway database messaging services can be used to facilitate migration of data from one environment to another. For example, if data in a DB2 environment needs to be integrated with data in a Sybase environment, Gateway DBAM can enable the integration.
  • the object request broker messaging services 82 enable objects to transparently make requests of and receive responses from other objects located locally or remotely. Objects communicate through an ORB.
  • An ORB enables client 14 objects to access server 22, 26, 28 objects either locally or remotely over a network and invoke operations (i.e., functions and methods) on the objects.
  • ORBs typically provide interoperability between heterogeneous client and server environments across languages and/or operating systems and/or network protocols. In that respect, some have said that ORBs will become a kind of "ultimate middleware" for truly distributed processing.
  • a standardized Interface Definition Language (IDL) defines the interfaces that applications must use to access the ORB services.
  • the two major Object Request Broker standards/implementations are Object Management Group's Common object Request Broker Architecture (CORBA) (www.omg.org): Microsoft's (Distributed) Component Object Model (COM/DCOM) (www.microsoft.com).
  • the computer-telephone integration (CTI) messaging services 84 use applications to integrate computer systems (i.e., client 14) and telephone systems, thereby coordinating data and telephony activities.
  • CTI messaging services 84 support communication among clients 14 and a CTI server 90, which then supports device specific communication, such as PBXs/ACDs 92, a plurality of networks and external telephony devices and hybrid systems (not illustrated).
  • CTI messaging services 84 rely upon proprietary PBX/ACD APIs, CTI vendor-specific APIs or message sets, and industry-standard APIs.
  • S telephone integration (CTI) messaging services 84 provide two primary functions: device- specific communication and message mapping.
  • Device-specific communication manages direct communications between telephony devices and data devices; allows applications to control PBXs, key telephone systems, ISDN, analog PSTN, cellular, Centrex, etc. and supports features such as address translation, call set-up, call answering, call dropping, and caller ID; provides interface to carrier networks for call delivery and call-related messaging.
  • Message mapping translates device-specific communication to generic API and/or message set.
  • CTI products can be divided into the following categories: CTI platform-specific products; CTI telephony-based API products; CTI server/workstation-based or host-based API products; CTI cross-platform vendors; CTI enabling solutions and CTI enterprise solutions.
  • CTI platform-specific products are only implemented on the hardware of a specific vendor.
  • CTI telephony-based API products include proprietary PBX/ACD-based messaging sets, which permit external devices to interface with the vendor's PBX/ACD call and station control logic.
  • CTI server/workstation-based or host-based API products operate on a particular computer vendor's hardware platform and provide call control and messaging functionality.
  • CTI cross-platform vendors are products that have been ported to multiple hardware platforms/operating systems.
  • CTI enabling solutions focus solely on call control and call/application synchronization functions.
  • CTI enterprise solutions provide all CTI business functions to varying degrees.
  • the electronic date interchange messaging services 86 use applications to support system-to-system messaging among business partners by defining standard message layouts. Companies typically use electronic data interchange messaging services 86 to streamline commercial transactions within their supply chains.
  • EDI standards e.g., EDIFACT, ANSI XI 2
  • EDI services include the generation and translation of EDI messages according to the various public message layout standards.
  • EDI messaging can be implemented via electronic mail or customized message-oriented architectures.
  • the legacy integration messaging services 88 use applications to provide gateways to mainframe legacy systems so that outdated messaging services can be integrated into the preferred embodiment of the present invention if required.
  • Design techniques for integration with the netcentric computing system 12 can be grouped into two broad categories: front-end access - access of information through screens/windows; and, back-end access - this approach tends to be used when existing data stores have information that is needed in the client/server environment, but accessing the information through existing screens or functions is not feasible.
  • the legacy integration messaging services 88 typically include remote data access through gateways.
  • a database gateway provides an interface between the client/server environment and the legacy system. The gateway provides an ability to access and manipulate the data in the legacy system.
  • the communication services layer 46 also includes communication security services 64.
  • the communication security services 64 use applications to control access to network-attached resources of the netcentric computing system 12. Combining communication security services 64 with security services in other parts of the netcentric computing system 12 (e.g., application and database layers) results in robust security.
  • the preferred communication security services 64 include encryption services 92, identification/authentication services 94 and access control services 96.
  • Encryption services 92 are applications that encrypt data prior to network transfer to prevent unauthorized interception.
  • the encryption services 92 may be used in conjunction with the communication services layer 46, the transport services layer 48 or the network media services layer 50. See Fig. 3. Within the communication services layer 46, encryption occurs at the top of the protocol stack and is typically performed in an application (e.g. - in an email application). This is an end-to-end approach that can leave the transport services layer 48 and the network media services layer 50 unaffected.
  • Several encryption services 92 exist that may be readily used in the preferred communication services architecture 10.
  • the identification/authentication services 94 verify network access requests by validating that users are who they claim to be.
  • one or more application can be used to validate authorized users and can be integrated with the access control services 96 to verify to which functions and data the users have access.
  • the identification/authentication services 94 are often included in directory services products like Novell's NDS (NetWare Directory Services) or Microsoft's Windows NT Domain Services. These products require the user to have an established account and supply a password before access is granted to resources through the directory.
  • Some of the preferred identification/authentication services 94 used in the communication services architecture 10 include basic ID/authentication, ID/password encryption, digital certificates or signatures, hardware tokens, virtual tokens and biometric identification. Basic ID/authentication requires the client 14 to supply a user name and
  • Basic ID/authentication does not encrypt the password in any way, and thus the password travels in the clear over the network where it could be detected with a network sniffer program or device.
  • Basic ID/authentication is not secure enough for banking applications or anywhere where there may be a financial incentive for someone to steal someone's account information.
  • ID/Password encryption offers a somewhat higher level of security by requiring that the user name and password be encrypted during transit.
  • the user name and password are transmitted as a scrambled message as part of each request because there is no persistent connection open between the client 140 and the web server 28.
  • Digital certificate or signatures are encrypted digital keys that are issued by a third party "trusted' organization (i.e., Verisign). They are used to verify a user's authenticity.
  • Hardware tokens are small physical devices that may generate a one-time password or that may be inserted into a card reader for ID/ Authentication purposes.
  • Virtual tokens are typically a file on a floppy or hard drive used for ID/ Authentication (e.g., Lotus Notes ID file).
  • Biometric identification involves the analysis of biological characteristics (such as fingerprints, voice recognition, or retinal scans) to verify an individual's identity. Those skilled in the art would recognize that other authentication services may be used in the present invention.
  • the access control services 96 use applications to verify network access requests by validating that users are who they claim to be. For secure netcentric computing systems 12, one or more authentication mechanisms can be used to validate authorized users and to verify which functions and data they have access to. When a user requests access to resources on the netcentric computing system 12, the access control services 96 determine if the user has the appropriate permission or privileges and either allows or disallows the access. (This occurs after the user has been properly identified and authenticated.)
  • An application-level proxy or application-level gateway, is a robust type of firewall.
  • a firewall is a system that enforces access control policy between a trusted internal network and an untrusted external network.
  • the application proxy acts at the application level rather than the network level.
  • the proxy acts as a go-between for the end user by completing the user-requested tasks on its own and then transferring the information to the user.
  • the proxy manages a database of allowed user actions, which it checks prior to performing the request.
  • World Wide Web filters can prevent users from accessing specified content or Internet addresses. Products can limit access based on keywords, network addresses, time- of-day, user categories, etc. Filters are typically implemented on a firewall. Servers, applications and databases can use authentication applications locally on a server to limit access to specific system resources or files. Applications and databases can also authorize users for specific levels of access within their control. (This functionality is within the Environment Services grouping in the execution architecture.) Those skilled in the art would recognize that other authentication services may be used in the present invention.
  • the directory services 68 manage information about resources on the netcentric computing system 12 and perform a variety of processes. The processes range from simple name-to-address resolution (e.g., when www.ac.com is typed in a browser connected to the Internet, that name resolves to IP address 204.167.146.195.) to the logical integration of heterogeneous systems to create a common view of resources.
  • the directory services 68 typically perform one or many of the following functions. Store information about network resources and users, and track relationships. Organize resource access information in order to aid in the location of and access to other resources throughout the network. Provide location transparency, because resources are accessed through a directory rather than based on their physical location.
  • Security services such as identification/authentication and access control services to maintain necessary access permissions and privileges.
  • the preferred directory services 68 are comprised of two subservices: name services 100 and domain services 102.
  • the name service 100 creates a logical "pronounceable" name in place of a binary machine number.
  • the name services 100 and the domain services 102 can be used by other communications services such as the file transfer services 70, the message services 60, and the terminal services 112 (described ⁇ later).
  • a name service 100 can be implemented on its own or as part of a full-featured directory service 68.
  • a network domain is a set of network nodes under common control (i.e., common security and logins, unified addressing, coordinated management, etc.).
  • the domain services 102 manage these types of activities for the network nodes in a domain.
  • Domain services 102 may be limited in their ability to support heterogeneous systems and in the ability to scale to support the enterprise.
  • seamless location of, and access to, resources, individuals, and applications is provided by the directory services 68.
  • Emerging directory service technologies such as the Lightweight Directory Access Protocol (LDAP) may also be used in the present invention.
  • LDAP Lightweight Directory Access Protocol
  • the virtual resource services 66 use applications to proxy or mimic the capabilities of specialized, network-connected resources. This allows a generic network node to emulate a specialized physical device. In this way, network users can interface with a variety of specialized resources.
  • the preferred virtual resource services 66 include fax services 104, file sharing services 106, paging services 108, phone services 110, terminal services 112, printing services 114 and audio/video services 116.
  • the fax services 104 use applications that provide for the management of both inbound and outboard fax transmissions. If fax is used as a medium for communicating with customers or remote employees, inbound fax services may be required for centrally receiving and electronically routing faxes to the intended recipient. Outbound fax services can be as simple as supporting the sharing on the network of a single fax machine or group of machines for sending faxes.
  • the functionality the fax services 104 provide the virtual resource services 66 include the following: managing incoming faxes; receiving faxes via the telephone network; queuing faxes; routing and distributing faxes; displaying or printing faxes; managing outgoing faxes; generating faxes; queuing faxes; and transferring faxes via the telephone network.
  • the fax services 104 can provide centrally managed faxing capabilities, thus eliminating the need for fax modems on every workstation.
  • a fax server generally provides fax services to clients 14 such as receiving, queuing and distributing incoming faxes and queuing and sending outgoing faxes.
  • Clients 14 can view faxes and generate faxes to be sent.
  • Applications may compose and transfer faxes as part of notifying users or delivering information.
  • an application may use the fax services 104 to add customer-specific information to a delivery receipt form and fax the form to a customer.
  • the file sharing services 106 use applications that allow users to view, manage, read, and write to files that may be located on a variety of platforms in a variety of locations. In operation, the file sharing services 106 enable a unified view of independent file systems.
  • the file sharing services 106 provide some or all of the following capabilities in the virtual resource services 66: transparent access, multi-user access, file access control, multi- platform access, integrated file directory, fault tolerance and scalability.
  • Transparent access provides the clients 14 with access to remote files as if they were local.
  • Multi-user access provides for distribution and synchronization of files among multiple users, including file locking to manage access requests by multiple users.
  • File access control provides for the use of security services (user authentication and authorization) to manage file system security.
  • Multi-platform access provides clients 14 access to files located on various platforms (e.g., UNIX, NT, etc.).
  • An integrated file directory provides clients 14 with a logical directory structure that combines all accessible file directories, regardless of the physical directory structure. Fault tolerance is handled by the use of primary and replica file servers to ensure high availability of file systems.
  • the file sharing services 106 are scalable because of the ability to integrate networks and distributed file systems of various sizes.
  • the paging services 108 use applications to provide the message formatting and display functionality that allows network nodes to interface with wireless paging systems. In operation, this service emulates the capabilities of one-way and two-way pagers.
  • the paging services 108 allow can allow pages to be generated in various ways: e-mail messages to a specified mailbox; DTMF (touch tone) signaling to a voice response system; encoded digital messages transferred to a paging provider gateway; and messages transferred to a locally attached two-way wireless page.
  • the phone services 110 use applications to extend telephony capabilities to the netcentric computing system 12. For example, an application on a client 14 can place and receive telephone calls for the user.
  • the phone services 110 may be used in customer care centers, help desks, or any other environment in which it is useful for a computer to replace a telephone handset.
  • the phone services 110 enable clients 14, servers 22, 26, 28, and specialized telephony nodes (PBXSs, ACDs, etc. (not illustrated)) to control the telephony environment through the following methods: call control; controls telephone features; controls recorded messages; manipulates real time call activities (e.g., make call, transfer, hold, conference, mute transfer, release, route call, call treatments, and digits collected); telephone status control; controls telephone status functions; logs in and out of the system; and sets ready, not ready, and make busy statuses for users.
  • PBXSs specialized telephony nodes
  • PC telephony products allow desktop computers to act as conduits for voice telephone calls.
  • Internet telephony products enable voice telephone calls (and faxing, voice mail retrieval, etc.) through the Internet.
  • an Internet telephony product can accept voice input into a workstation, translate it into an IP data stream, and route it through the Internet to a destination workstation, where the data is translated back into audio.
  • Various desktop voice mail products enable clients 14, 20 to manage voice mail messages using a desktop computer.
  • the terminal services 112 use applications to allow a client to connect to a non-local host via a network and to emulate the profile (e.g., the keyboard and screen characteristics) required by the host application.
  • Terminal services allow a client 14 to connect to a nonlocal host via a network and to emulate the profile (e.g. , the keyboard and screen characteristics) required by the host application. For example, when a client application logs on to a server, the client 14 functions as a dumb terminal.
  • the terminal services 112 receive user input and send data streams back to the host processor. If connecting from a PC to another PC, the client 14 might act as a remote control terminal (e.g., PC Anywhere).
  • Telnet a simple and widely-used terminal emulation protocol that is part of the TCP/IP communications protocol. Telnet operates establishing a TCP connection with the remotely located login server, minicomputer, or mainframe. The client's keyboard strokes are sent to the remote machine while the remote machine sends back the characters displayed on the local terminal screen.
  • 3270 emulation emulation of the 3270 protocol that is used by IBM mainframe terminals.
  • tn3270 a Telnet program that includes the 3270 protocol for logging onto IBM mainframes, which is part of the TCP/IP protocol suite.
  • X Window System allows users to simultaneous access applications on one or more UNIX servers and display results in multiple windows on a local display.
  • Recent enhancements to X Window System include integration with the Web and optimization of network traffic (caching, compression, etc.).
  • Remote control while terminal emulation is typically used in host-based environments, remote control is a sophisticated type of client/server Terminal services. Remote control allows a client computer to control the processing on a remote desktop computer. The GUI on the client computer looks as if it is the GUI on the remote desktop. This makes it appear as if the remote applications are running on the client.
  • Another terminal service that may be used is rlogin. rlogin is a remote terminal service implemented under BSD UNIX.
  • rlogin supports "trusted" hosts. This is accomplished by having a set of machines that share common file access rights and logins. The user controls access by authorizing remote login based on a remote hose and remote user name. This service is generally considered a security risk and avoided in most business system configurations.
  • the printing services 114 use applications to connect network workstations to shared printers so that various workstations can share printers.
  • the administration of the print services 114 is usually handled by a print server (not illustrated).
  • the print server may run on a dedicated machine or on a machine that performs other server functions.
  • Print servers queue print jobs sent to network printers, which are stored in the print server's print buffer and then sent to the appropriate network printer as it becomes available.
  • the print services 114 can also provide the client 14 with information, including print job status, and can manage in-progress print jobs.
  • the audio/video services 116 use applications that allow nodes to interact with multimedia data streams.
  • the audio/ video services 116 allow components to interface with audio streams such as the delivery of music or radio content over data networks.
  • Video services 116 allow components to interface with video streams such as video surveillance.
  • Video services 116 can add simple video monitor capabilities to a computer, or they can transform the computer into a sophisticated video platform with the ability to generate and manipulate video. 3
  • Video and audio content is often delivered simultaneously. This may be accomplished by transferring separate audio and video streams or by transferring a single interleaved stream. Examples include video conferencing and television (traditional or interactive).
  • the audio/ video services 116 can include the following functionality: streaming content (audio, video, or both) to end users; managing buffering of data stream to ensure uninterrupted viewing/listening; performing compression and decompression of data; managing communications protocols to ensure smooth delivery of content; and managing library of stored content and/or manages generation of live content.
  • Audio/Video services draw upon lower-level services such as streaming (see Streaming Messaging services) and IP Multicast (see Packet Forwarding/Internetworking services) to efficiently delivery content across the network.
  • Wireless short messaging i.e., paging
  • wireless systems such as paging networks, GSM voice/data networks, PCS voice/data networks, and dedicated wireless data networks.
  • the communication services layer 46 provides the foundation for netcentric applications enabling client/server and virtual resource communications. Selecting the appropriate communication services, services that meet the business and applications requirements of a particular enterprise, is a key step to ensuring a successful communication services architecture 10. In addition, ensuring the transport services layer 48 supports the selected communication services layer 46 is also important.
  • the transport services layer 48 is the portion of the communication services architecture 10 that provides the movement of information across a network. While the communications fabric layer 44 includes all the hardware, software, and service between the client 14 and servers 22, 26, 28, the transport services layer 48 plays a key role in performing network functions across the enterprise or between enterprises. As illustrated in Fig. 3, the transport services layer 48 operates across all platforms and plays an integral role in allowing the client 14, by means of the communications fabric layer 44, to communicate and share information with the servers 22, 26, 28, or vice versa.
  • the transport services layer 48 includes the following: message transport services 120, packet forwarding/Internetworking services 122, circuit switching services 124, transport security services 126, network address allocation services 128, and quality of service services 130.
  • the message transport services 120 are applications that are responsible for the end- to-end delivery of messages.
  • the message transport services 120 include functionalities such as end-to-end data transfer, connection control, reliable transfer, flow control, and multiplexing.
  • the message transport services 120 format messages for sending and confirms the integrity of received messages.
  • the message transport services 120 may establish end-to-end (client-server) connections and track addresses and other associated information for the connection.
  • the message transport service 120 may manage reliable delivery of messages through the use of acknowledgments and retransmissions.
  • the message transport services 120 may allow the client 14 to govern the rate at which the sender transfers data, thereby provided flow control.
  • the message transport services 120 may define multiple addresses or ports within a single network node, allowing multiple processes on the node to have their own communication paths.
  • UDP protocol does not offer connection control or reliable transfer.
  • SPX Sequenced Packet exchange
  • TCP Transmission Control Protocol
  • UDP User Datagram Protocol
  • NetBIOS/NetBEUI Network Basic Input Output System/NetBIOS Extended User Interface
  • APPC Advanced Program-to-Program Communications
  • Apple Talk is an example of protocols that provide message transport: SPX (Sequenced Packet exchange); TCP (Transmission Control Protocol); UDP (User Datagram Protocol); NetBIOS/NetBEUI (Network Basic Input Output System/NetBIOS Extended User Interface); APPC (Advanced Program-to-Program Communications); and Apple Talk.
  • the packet forwarding/Internetworking services 122 are applications that transfer data packets and manage the path that data takes through the netcentric computing system 10.
  • the services include functionalities such as fragmentation/reassembly, addressing, routing, switching and multicasting.
  • the packet forwarding/Internetworking service 122 divides an application message into multiple packets of a size suitable for network transmission.
  • the individual packets include information to allow the receiving node (i.e. - client or server) to reassemble them into the message.
  • the service also validates the integrity of received packets and buffers, reorders and reassembles packets into a complete message.
  • the packet forwarding/Internetworking service 122 encapsulates packets with addressing information.
  • the packet forwarding/Internetworking service 122 can maintain routing information (a view of the network topology) that is used to determine the best route for each packet. Routing decisions are made based on the cost, percent utilization, delay, reliability and similar factors for each possible route through the network.
  • Switching is the process of receiving a packet, selecting an appropriate outgoing path, and sending the packet. Switching is performed by routers and switches within the communications fabric. As known in the art, switching can be implemented in several ways. For some network protocols (e.g. , TCP/IP), routers draw upon dynamic routing information to switch packets to the appropriate path. This capability is especially important when connecting independent networks or subnets. For other network protocols (e.g., Ethernet, Token Ring), switching simply directs packets according to a table of physical addresses. The switch can build the table by "listening" to network traffic and determining which network nodes are connected to which switch port. Some protocols such as Frame Relay involve defining permanent routes (permanent virtual circuits, or PVCs) within the network. Because frame relay is switched based upon PVCs, routing functionality is not required.
  • PVCs permanent routes
  • the packet forwarding/Internetworking service 122 may support multicasting, which is the process of transferring a single message to multiple recipients at the same time. Multicasting allows a sender to transfer a single copy of the message to the communications fabric, which then distributes the message to multiple recipients.
  • IP Internet Protocol
  • IP Multicast emerging standard that uses a predefined set of IP addressed to instruct network routers to deliver each packet to all users involved in a multicast session
  • IPX Internetwork Packet Exchange
  • ATM Asynchronous Transfer Mode
  • Frame Relay and X.25.
  • routers The following are examples of common network components that perform packet forwarding/Internetworking services 122: routers; switches; ATM switches, Frame Relay switches, IP switches, Ethernet switches, etc.
  • protocols that maintain routing information tables within routers: distance vector protocols, link-state protocols and policy routing protocols.
  • distance vector protocols each router periodically informs neighboring routers as to the contents of routing table (destination addresses and routing metrics); routing decisions are made based on the total distance and other "costs" for each path: IP and IPX Routing Information Protocols (RIP); AppleTalk Routing Table Management Protocol (RTMP); Cicso's Interior Gateway Routing Protocol (IGRP) and Enhanced IGRP.
  • RIP IP and IPX Routing Information Protocols
  • RTMP AppleTalk Routing Table Management Protocol
  • IGRP Interior Gateway Routing Protocol
  • Enhanced IGRP Enhanced IGRP.
  • each router periodically broadcasts changes to the routers directly on adjacent networks: Open Shortest Path First (OSPF); ISO's Intermediate System to Intermediate System (IS-IS); Novell's NetWare Link Services Protocol (NLSP).
  • OSPF Open Shortest Path First
  • ISO ISO's Intermediate System to Intermediate System
  • NLSP Novell's NetWare Link Services Protocol
  • Policy routing protocols allow Internet backbone routers to accept routing information from neighboring backbone providers on the basis of contracts or other non-technical criteria; routing algorithms are distance vector: Border Gateway Protocol (BGR) and Interdomain Routing Protocol (IDR).
  • BGR Border Gateway Protocol
  • IDR Interdomain Routing Protocol
  • the circuit switching services 124 are applications that establish physical circuits for the transfer of such things as circuit-switched voice, fax, and video. Circuit switching services 124 use an end-to-end physical connection between the sender and the receiver that lasts for the duration of the "call" transferred through brief, temporary, logical connections between nodes.
  • the circuit switching services 124 provide the following functionality in the preferred embodiment of the invention: establishing an end-to-end path for circuits (may involve multiple intermediate nodes/ switches) and managing the end-to-end path (quality, billing, termination, etc.).
  • the following are examples of circuit switching devices that may be used in the present invention: analog dial-up telephone circuit; cellular telephone circuit; ISDN (Integrated Services Digital Network).
  • the transport security services 126 are applications and devices that perform encryption and filtering of traffic being passed over the transport services 48. Encryption within the transport security services 126 is performed by encrypting packets generated by higher level services (e.g., message transport 120) and encapsulating them in lower level packets (e.g., packet forwarding/Internetworking 122). Note that encryption can also occur within the communications services layer 46 or the network media services layer 50.
  • Encryption within the transport services layer 48 has the advantage of being independent of both the application and the transmission media, but it may make network monitoring and troubleshooting activities more difficult.
  • the following standards support transport-layer encryption: Point-to-Point Tunneling Protocol and Layer 2 Tunneling Protocol.
  • Network traffic can be controlled at the transport services layer 48 by filtering data packets based on source and/or destination addresses and network service in the transport security services 126. This ensures that only authorized data transfers can occur. This
  • a firewall is a system that enforces an access control policy between a trusted internal network and an untrusted external network.
  • the network address allocation services 128 are applications that manage the distribution of addresses to network nodes of the netcentric computing system 12. This provides more flexibility compared to having all nodes assigned static addresses. This service assigns addresses to nodes when they initially power on and connect to the network.
  • the following are examples of standards that implement network address allocation services 128 and allow a network node (i.e., client 14) to ask a central resource (i.e., server 22, 26, 28) for the node's network address (e.g., IP address): DHCP (Dynamic Host Configuration Protocol) and BootP (Bootstrap Protocol).
  • DHCP Dynamic Host Configuration Protocol
  • BootP BootP
  • the quality of service services 130 are applications designed to deliver a defined network throughout for designated traffic by allocating dedicated bandwidth, prioritizing data traffic, and managing traffic flow.
  • Different types of network traffic e.g., data, voice and video
  • quality of service requirements For example, data associate with video-conferencing sessions is useless if it is not delivered "on time.”
  • traditional best-effort data services such as file or e-mail transfer, are not affected by variations in latency.
  • ATM Asynchronous Transfer Mode
  • ATM is a connection-oriented wide area and local area networking protocol that delivers quality of service services 130 on a per- connection basis. Quality of service is negotiated as part of the initial connection set up and as network conditions change. Because of the small size of ATM data cells, quality of service can be better managed, compared to protocols such as Ethernet that have large frames that can tie up network components. For ATM to deliver quality of service to applications, ATM must be used end to end.
  • RSVP Resource Reservation Protocol
  • RSVP allows applications to reserve router bandwidth for delay-sensitive IP traffic.
  • quality of service is negotiated for each application connection. RSVP enables the network to reserve resources from end to end, using frame relay techniques on frame relay networks, ATM techniques on ATM, and so on. In this way, RSVP can achieve quality of service across a variety of network technologies, as long as all intermediate nodes are RSVP capable.
  • IP switching can increase network throughput for streams of data by combining IP routing software with ATM switching hardware.
  • IP switching an IP switch analyzes each stream of packets directed from a single source to a specific destination and classifies it as short- or long-lived.
  • Long-lived flows are assigned ATM virtual channels (VCs) that bypass the IP router and move through the switching fabric at the full ATM line speed.
  • Short-lived flows continue to be routed through traditional store-and-forward transfer.
  • tag-switching Like IP switching, tag-switching also improves network throughput for IP data streams.
  • Tag switching aggregates one or more data streams destined for the same location and assigns a single tag to all associated packets. This allows routers to more efficiently transfer the tagged data.
  • Tag switching is also known multi-protocol label switching.
  • Data prioritization improves network performance for prioritized application traffic, but does not guarantee quality of service.
  • various network components can be configured to prioritize their handling of specified types of traffic. For example, routers can be configured to handle legacy mainframe traffic (SNA) in front of other traffic (e.g., TCP/IP).
  • SNA legacy mainframe traffic
  • Prioritization techniques are of limited effectiveness if data must also pass through network components that are not configured for prioritization (e.g., network components run by third-party network providers).
  • the preferred network media services 50 of the communications fabric layer 44 includes media access services 132 and physical media services 134.
  • the network media services 50 provide final framing of data for interfacing with the client 14 or node and the ability to receive, interpret, and act on signals that are received by the communications fabric layer 44.
  • the network media services 50 are capable of transferring data throughout the netcentric computing system 12, as illustrated in Fig. 3.
  • the media access services 132 manage the low-level transfer of data between network nodes.
  • the media access services 132 include applications that perform functions such as physical addressing, packet transfer, shared access, flow control, error recovery, and encryption.
  • the media access services 132 encapsulate packets with physical address information used by the data link protocol (e.g. , Ethernet and Frame Relay).
  • the media access service 132 uses the data link communications protocol to frame packets and transfer them to another computer on the same network/subnetwork.
  • the media access services 132 provide a method for multiple network nodes to share access to a physical network.
  • Shared access schemes include CSMA/CD, token passing and multiplexing.
  • CSMA/CD Carrier Sense Multiple Access with Collision Detection
  • Token passing is a method of managing access to a shared physical media by circulating a token (a special control message) among nodes to designate which node has the right to transmit.
  • Multiplexing is a method of sharing physical media among nodes by consolidating multiple, independent channels into a single circuit.
  • the independent channels (assigned to nodes, applications or voice calls) can be combined by time-division multiplexing and frequency division multiplexing.
  • Time division multiplexing (TDM) is a method in which the use of a circuit is divided into a series of time slots, and each independent channel is assigned its own periodic slot.
  • frequency division multiplexing FDM
  • each independent channel is assigned its own frequency range, allowing all channels to be carried simultaneously.
  • the media access service 132 manages the flow of data to account for differing data transfer rates between devices. For example, flow control would have to limit outbound traffic if a receiving machine or intermediate node operates at a slower data rate, possibly due to the use of different network technologies and topologies or due to excess network traffic at a node.
  • the media access services 132 perform error recovery, which is the capability to detect and possibly resolve data corruption that occurs during transmission. Error recovery involves the use of checksums, parity bits, etc.
  • the media access service 132 may perform encryption. (Note that encryption can also occur within the communications services layer 46 or the transport services layer 48.) Within the network media services layer 50, encryption can occur as part of the data link protocol (e.g., Ethernet, frame O relay). In this case, all data is encrypted before it is placed on the wire. Such encryption tools are generally hardware products. Encryption at this level has the advantage of being transparent to higher-level services.
  • Ethernet Token Ring
  • FDDI Fiber Distributed Data
  • Portions of the ATM Asynchronous Transfer Mode
  • HDLC High- level Data Link Control
  • SDLC Serial Data Link Control
  • LAP-B Link Access Procedure - Balanced
  • T-carrier, E-carrier e.g., TI, T3, El, E3
  • TDM and FDM Time Division Multiplexing and Frequency Division Multiplexing; used on T-carriers, etc.
  • SONET Synchronous Optical Network
  • SDH SDH
  • PPP Point-to-Point Protocol
  • SLIP Serial Line Internet Protocol
  • RS-232, EIA-232 and TDMA and FDMA (Time Division Multiple Access and Frequency Division Multiple Access; used on wireless links).
  • Specialized services convert between addresses in the media access services 132 (i.e. , physical addresses like Ethernet) and the packet forwarding /Internet-working services 22 (i.e., network addresses like IP).
  • Address Resolution Protocol allows a node to obtain the physical address for another node when only the IP address is known.
  • Reverse Address Resolution Protocol (RARP) allows a node to obtain the IP address for another node when only the physical address is known.
  • the physical media services 134 include both the physical connectors and the physical media (wired or wireless) that are used by clients 14 to connect with, and use, the resources of the netcentric computing system 12.
  • the physical media services 134 are divided into two categories: physical connectors and physical media (wired or wireless).
  • wiring connectors used to connect network nodes to physical media RJ-11, RJ-45; BNC; DB-9, DB-25; and fiber optic connectors.
  • wired physical media twisted pair wiring; shielded twisted pair wiring; coaxial cable; fiber optic cable; and four-pair voice-grade wiring.
  • wireless physical media cellular antennas and the associated radio frequencies; wireless local area network antennas and the associated radio frequencies; and satellite antennas and the associated radio frequencies.

Abstract

A communication services architecture for a netcentric computing system is disclosed by the present invention. The communication services architecture includes a communication services layer that includes messaging services, specialized messaging services, communication security services, virtual resource services and directory services. In addition, the communication services architecture includes a transport services layer that includes message transport services, packet forwarding/Internetworking services, circuit switching services, transport security services, network address allocation services and quality of service services. A network media services layer is provided that includes media access services and physical media services.

Description

COMMUNICATION SERVICE ARCHITECTURES FOR NETCENTRIC COMPUTING SYSTEMS
This application claims the benefit under 35 U.S.C. § 119(e) of U.S. Provisional Application Serial No: 60/156,962, filed on October 1 , 1999.
Field of the Invention
The present invention relates generally to business computing systems, and more particularly to communication service architectures for netcentric computing systems.
Background of the Invention
Computer based business solutions have existed for various different types of transactions since the mid-to-late 1960s. During this time period, the technology focused on the use of batch technology. In batch processing, the business user would present a file of transactions to the application. The computer system would then run through the transactions, processing each one, essentially without user intervention. The system would provide reporting at some point in the batch processing. Typically, the reports would be batch printed, which in turn, would be used by the business user to correct the input transactions that were resubmitted along with the next batch of transactions. In the 1970s, businesses began a transition to on-line, interactive transactions. At a conceptual level, this processing opened up the file of transactions found in batch transactions and allowed the user to submit them one at a time, receiving either immediate confirmation of the success of the transaction or else feedback on the nature of the transaction error. The conceptually simple change of having the user interact with the computer on a transaction-at-a-time basis caused huge changes in the nature of business computing. More important, users saw huge changes in what they could do on a day-today basis. Customers were no longer forced to wait for a batch run to process the particular application. In essence, the computer had an impact on the entire work flow of the business user. Along with the advent of on-line interactive systems, it was equally significant that the systems provided a means for the business user to communicate with others in the business as the day-to-day business went along. This capability was provided on the backbone of a wide area network (WAN). The WAN was in itself a demanding technology during this time period and because of these demands telecommunications groups emerged within organizations, charged with the responsibility to maintain, evolve, and manage the network over a period of time.
The theme of the 1980s was database management systems (DBMSs). Organizations used and applied database technology in the 1970s, but in the 1980s they grew more confident in the application of DBMS technology. Because of the advances in network technology, the focus was now on the sharing of data across organizational and application boundaries. Curiously, database technology did not change the fundamental way in which business processing was done. DBMS made it more convenient to access the data and to ensure that it could be updated while maintaining the integrity of the data. In the 1990s, technology began to shift toward client/server computing.
Client/server computing is a style of computing involving multiple processors, one of which is typically a workstation, and across which a single business transaction is completed. Using the workstation, the transaction entered by the user could now be processed on a keystroke-by-keystroke basis. Furthermore, there was a change in the communications. With client/server, users could communicate with others in the work group via a local area network (LAN). The LAN permitted workstation-to-workstation communications at speeds of 100 to 1,000 times what was typically available on a WAN. The LAN was a technology that could be grown and evolved in a local office with little need for direct interaction from the telecommunications group.
During the late 1990s, the Internet began to receive widespread use by consumers and businesses. In the business world, the Internet has caused the concept of business users to expand greatly because of the way in which computers are now capable of being interconnected. In addition, the cost of computers has dropped to the point that it is affordable for almost every household to own a computer if they so desire. As such, a need to expand the reach of computing both within and outside the enterprise, and that enables the sharing of data and content between individuals and applications has developed.
Summary of the Invention The present invention discloses a communication services architecture for a netcentric computing system. The communication architecture includes a communication services layer, a transport services layer and a network media services layer. The communication services layer includes communication services, communication security services, virtual resource services and directory services. The transport services layer includes message transport services, packet forwarding/Internetworking services, circuit switching services, transport security services, network address allocation services and quality of service services. The network media services layer includes media access services and physical media services.
In the preferred embodiment of the present invention, the communication services of the communication services architecture includes core messaging services and specialized messaging services. The core messaging services transfer information from one application to another application in the netcentric computing system. The core messaging services may be selected from the group consisting of file transfer services, remote procedure call services, message-oriented services and streaming services. In one aspect of the present invention, the file transfer services may be selected from the group consisting of file transfer protocol services, hyper-text transfer protocol services, secure hyper-text transfer protocol services and file transfer and access management services. As previously set forth, the communication services also include specialized messaging services. The specialized messaging services may be selected from the group consisting of E-mail messaging services, database access messaging services, object request broker messaging services, computer-telephone integration messaging services, electronic data interchange messaging services and legacy integration services. The communication security services may be selected from the group consisting of encryption services, identification/authentication services and access control services. The identification/authentication services may be selected from the group consisting of basic ID/authentication, ID/password encryption, digital certificates, digital signatures, hardware tokens, virtual tokens and biometric identification. In the preferred communication services architecture, the directory services include name services and domain services. The name services create a logical "pronounceable" name in place of a binary machine number on the client. The name services and the domain services can be used by other communications services. A network domain is a set of network nodes under common control (i.e., common security and logins, unified addressing, coordinated management, etc.). The domain services manage these types of activities for the network nodes in a domain. In the preferred embodiment set forth above, the virtual resource services may be selected from the group consisting of fax services, file sharing services, paging services, phone services, terminal services, printing services and audio/ video services. The terminal services may be selected from the group consisting of Telnet, 3270 emulation, tn3270, X Window System, remote control and rlogin. Those skilled in the art would recognize that various other features and advantages of the present invention exist.
Another aspect of the present invention discloses a method of providing a communication services architecture for a netcentric computing system. The method includes sharing a communication services layer including communication services, communication security services, virtual resource services and directory services with at least one client and a web server. The communication services can be broken down into core messaging services and specialized messaging services. Transporting data between the client and the web server with a transport services layer that includes message transport services, packet forwarding/Internetworking services, circuit switching services, transport security services, network address allocation services and quality of service services. In addition, the client and the web server are interconnected with a network media services layer that includes media access services and physical media services.
The present invention discloses a communication services architecture that is used to create "virtual enterprises." Although the netcentric computing system supports traditional types of data traffic, it also supports nontraditional types of data traffic (i.e. - video, sound, graphics, files) as well. The preferred communication services architecture allows an enterprise to produce the final packaged product or service and interact with their suppliers or customers through a seamless information infrastructure. In addition, the communication services architecture advantageously supports an ever-increasing base of the public that needs or desires to access the resources of the enterprise from remote locations. Further objects and advantages of the present invention will be apparent from the following description, reference being made to the accompanying drawings wherein preferred embodiments of the present invention are clearly shown.
Brief Description of the Drawings
Figure 1 illustrates a netcentric execution architecture for a netcentric computing system that includes a communication services architecture.
Figure 2 illustrates an representative illustration of a netcentric computing system. Figure 3 illustrates a portion of the communication services architecture.
Figure 4 illustrates the preferred communications services layer.
Figure 5 illustrates an example of a preferred file transfer service.
Figure 6 illustrates an example of a remote procedure call service. Figure 7 illustrates an example of message passing.
Figure 8 illustrates an example of message queuing.
Figure 9 illustrates an example of publish and subscribe messaging.
Figure 10 illustrates streaming services.
Figure 11 illustrates computer-telephone integration messaging services that may be incorporated into the preferred communication services architecture.
Figure 12 illustrates the preferred directory service of the communication services architecture.
Figure 13 illustrates a portion of the communication fabric layer that depicts the transport services and the network media services.
Detailed Description of the Preferred Embodiments of the Invention
Referring to Figs. 1 and 2, the present invention discloses a communication services architecture 10 for a netcentric computing system 12. Referring to Fig. 2, the physical picture of an illustrative netcentric computing system 12 is illustrated. In this example, a business enterprise 18 includes at least one client 14, at least one database server 22, at least one firewall 24, at least one application server 26, at least one web server 28 and a local area network (LAN) connection 30 which are generally electrically connected as illustrated in Fig. 2. As known in the art, LAN connections 30 are used to interconnect various components or computing devices that are located at a first enterprise location 32 within the business enterprise 18. Those skilled in the art would recognize that various types of LAN connections 30 exist and may be used in the present invention.
For the purpose of the present invention, the firewall 24 is used to isolate internal systems from unwanted intruders. As known in the art, firewalls 24 isolate web servers 28 from all Internet traffic that is not relevant to the netcentric computing system 12. In the preferred embodiment, the only requests allowed through the firewall 24 are for services on the web servers 28. All requests for other applications (e.g., FTP, Telnet) and other IP addresses are blocked by the firewall 24.
The web servers 28 are the primary interface to the clients 14 for all interactions with the applications or services of the netcentric computing system 12. The main task of
.b" the web servers 28 is to authenticate the clients 14, establish a secure connection from the clients 14 to the web servers 28 using encrypted messages, and allow applications the clients 14 are using to transparently access the resources of the netcentric computing system 12. The web servers 28 are responsible for accepting incoming HTTP messages and fulfilling the requests. For dynamic HTML page generation, requests are forwarded to the application servers 26. During operation, static pages, such as help pages, are preferably generated by the web servers 28. As set forth below, for the purpose of the present invention, unless otherwise specified, the term client should be construed to include both remote clients and local clients. In the preferred embodiment, the primary function of the application servers 26 is to provide a link through which the web servers 28 can interact with the clients 14, trigger business transactions, and send back resulting data to the clients 14. A fundamental role of the application servers 26 is to manage the logical flow of the transactions and keep track of the state of sessions. For a given transaction, the application servers 26 and the web servers 28 are responsible for managing all aspects of sessions. A session is a period of time in which a client 14 is interacting with, and using, a resource of the netcentric computing system 12.
Further, in the preferred embodiment of the present invention, the main purpose of the database servers 22 is to handle an application log, which stores all application related data. Audit trails are also logged in the application log. All requests sent to the web servers 28 and application servers 26, as well as their respective responses, can be logged in the application log if necessary. The audit trails are preferentially used for traceability. In the preferred embodiment, requests are logged in the application log directly by the application server 26. Those skilled in the art would recognize that any number of data items can be monitored and kept track of by the application log.
As further illustrated in Fig. 2, a second business enterprise location 34 may be connected with the first business enterprise location 32 using an intranet connection 36. Those skilled in the art would recognize that various intranet connections 36 exist and may be used in the present invention. As those skilled in the art would recognize, the intranet connection 36 allows the computing resources of the second business enterprise location 34 to be shared or connected with the computing resources available at the first business enterprise location 32. Although not illustrated, several other enterprise locations, each containing its own computing resources, may be connected with the netcentric computing system 12.
In the embodiment illustrated in Fig. 2, the firewall 24 of the first business enterprise location 32 is connected with a dedicated Internet connection 38 to a plurality of remote clients 14. Preferentially, the remote clients 14 that are connected to the Internet connection 38 access data at the business enterprise 18 through the Internet connection 38 using a browser application. The Internet connection 38 gives the remote clients 14 the ability to gain access to applications, information and data content that may be located on the database server 22, the application server 26 and the web server 28. Referring back to Fig. 1, the present invention discloses a communication service architecture 10 for a netcentric execution architecture 40 that is used in a netcentric computing system 12. As illustrated, the communications service architecture 10 includes a communication layer 42 and a communication fabric layer 44. As illustrated in Fig. 3, the communication layer 42 and the communications fabric layer 44 allow the clients 14 to communicate (i.e. - transfer data or messages) with the servers 22, 26, 28 of the netcentric computing system 12 during operation. For a detailed discussion of the remaining elements of the netcentric execution architecture 40 as well as the netcentric computing system 12, refer to co-pending U.S. patent application Serial Number entitled
ARCHITECTURES FOR NETCENTRIC COMPUTING SYSTEMS, which was filed on September 29, 2000 and is hereby incorporated by reference, in its entirety.
Referring to Fig. 3, a breakdown of the network-specific layers of the preferred communication services architecture 10 is illustrated. The communication services architecture 10 includes a communications services layer 46, a transport layer 48 and a network media layer 50. Each layer 46, 48, 50 contains specific network-related devices and services that are needed to deliver the necessary functionality required by the preferred netcentric execution architecture 40 that drives the netcentric computing system 12. As illustrated in Fig. 3, the communication layers 42, on both the client 14 and server 22, 26, 28, includes the communication services layer 46 and the transport layer 48. The communications fabric layer 44 includes the communication services layer 46, the transport layer 48, and the network media layer 50.
In order to be fully functional, the preferred communication services architecture 10 require services from all three network layers 46, 48, 50 of the communication services architecture 10. Within each of the layers 46, 48, 50 individual services are provided that selectively deliver the necessary functionality of the preferred communication services
? architecture 10. As set forth in greater detail below, the services provided in communications services layer 46, the transport layer 48 and the network media layer 50 enable applications and higher-level services provided by the netcentric computing system 12 to be isolated from the intricacies of the low-level network (e.g., developing application interfaces directly with complex communications protocols).
In the preferred embodiment, the communication services layer 46 manages the interaction of distributed processes over the netcentric computing system 12. The communications services layer 46 enables an application to interact transparently with other applications regardless of where the application resides or where the client 14 is located. The communication services layer 46 performs four distinct functions: manages communications between applications; initiates and manages the transfer of information between processes over the netcentric computing system 12; provides specialized interface and communication management capabilities based on the type of resource accessed so that network nodes can intelligently interact with distributed resources; and provides interfacing and translation to ensure that information received is in a readable format for the local system. For the purpose of the present invention, the term node should be broadly interpreted to include both clients and servers as well as various other computing devices. As illustrated in Fig. 3, the communication services layer 46 makes up a part of the communication layer 42 and the communications fabric layer 44 in the preferred embodiment. The transport layer 48 provides the capability of transferring data through the netcentric computing system 12 to the ultimate destination. The primary function of the transport layer 48 includes transporting data (including reliability, security and quality of service) and transporting voice calls. As such, the transport layer 48 is the portion of the communication services architecture 10 that transfers information across the netcentric computing system 12 from clients 14 to servers 22, 26, 28, and vice versa. As illustrated in Fig. 3, a portion of the transport layer 48 is included in the communications layer 42 and the communications fabric layer 44.
The network media layer 50 performs the low-level transfer of data between network nodes, using physical media such as wiring. The primary functions of the network media layer 50 include performing low-level transfer of data between network nodes (i.e., clients and servers), managing low-level signaling across physical media, physical wiring, cabling and radio frequency spectrum. In essence, without the network media layer 50, information would not be capable of traveling to its intended destinations. As such, as illustrated in Fig.
2 3, the network media services layer 50 is primarily used as a part of the communications fabric layer 44, but is also used to connect the clients 14 with the servers 22, 26, 28.
The communication services layer 46 enables applications to interact transparently with other applications, regardless of whether they reside on the same client 14 or on a remote server 22, 26, 28. Referring to Fig. 4, the preferred communication services layer 46 includes communication services 52, communication security services 64, virtual resource services 66 and directory services 68. As illustrated, the communication services 52 include core messaging services 60 and specialized messaging services 62. Each of the services set forth above will be discussed in detail in the following sections. Those skilled in the art would recognize that the term service, as used herein, should be broadly construed to include software applications that are written to perform particular functions.
The communication services 52 perform the process of sending information or commands between two or more recipients. Recipients may be clients, people, or processes within a client 14 that is connected with the netcentric computing system 12. To send this message, a protocol (or in come cases, multiple protocols) is used that both the sender and receiver can understand. As known in the art, a protocol is a set of rules describing, in technical terms, how two end points should exchange information. Protocols exist at several levels during the exchange of information. Protocols facilitate transport of the message carrying the information. Both end points must recognize and observe the protocol. As an example, one of the most widely used protocols in today's networks is the TCP/IP protocol, which is commonly used by the Internet.
In the preferred embodiment, the core messaging services 60 transfer formatted information from one process or application to another process or application. By drawing upon the core messaging services 60, applications can shield themselves from the complexity of the transport layer 48. There are three key messaging styles used to support inter-process communication in the core messaging services 60: store and forward, synchronous and asynchronous messaging.
Store and forward messaging provides a deferred message processing. For example, store and forward messaging may use an e-mail infrastructure upon which to build applications. Common uses would be for forms routing and e-mail. Synchronous messaging allows an application to send a message to another application and wait for a reply before continuing. Synchronous messaging is typically used for update and general business transactions. It requires time-out processing to allow the application to reacquire control in the event of failure. Asynchronous messaging allows an application to send a message to another application and continue processing before a reply is received. Asynchronous messaging is typically used for larger retrieval-type processing, such as retrieval of larger lists of data than can be contained in one message. Messaging styles are important because they serve as the primary link to the application and business requirements. For example, suppose a business process requiring a series of processing steps needs to be automated. Additionally, each step needs to be performed in sequence at real time. Before continuing to the next step of the process, an application must know if the previous step was successful. Because of the send, receive, continue nature of the business process, the more appropriate messaging style for this application is synchronous messaging.
In addition to the messaging styles, interprocess messaging is typically implemented in one of two ways: 1) function based, which uses the subroutine model of programming in which the message interface is built upon the calling program passing the appropriate parameters and receiving the returned information and 2) message based, which uses a defined message format to exchange information between processes. While a portion of the message may be unstructured, a defined header component is normally included. A message- based approach is not limited to the call/return structure of the function-based model and can be used in a conversational manner. The core messaging services 60 include file transfer services 70, remote procedure call (RPC) services 72, message-oriented services 74 and streaming services 76. The file transfer services 70 use applications to enable the copying and receiving of files or other large blocks of data between resources or devices of the netcentric computer system 12. As illustrated in Fig. 5, during this process a file is copied from one resource or node (client 14) to another resource or node (web server 28). As such, the file transfer services 70 transfer a copy of a file to the resulting resource receiving the file, which results in a copy of the file on both machines.
In the present preferred embodiment of the invention, the file transfer services 70 include file transfer protocol (FTP) services, hyper-text transfer protocol (HTTP) services, secure hyper-text transfer protocol (S-HTTP) services, and file transfer and access management (FTAM) services. FTP services allow users to upload and download files across the netcentric computing system 12. FTP services also provide a mechanism to obtain file name, directory name, attributes and file size information. Remote file access protocols
1° such as Network File System (NFS) also use a block transfer method, but are optimized for on-line read/write paging of a file.
Within a Web-based environment, web servers 28 transfer HTML pages to clients 14 using HTTP. HTTP services can be thought of as a lightweight file transfer protocol optimized for transferring small files. HTTP services reduce the inefficiencies of the FTP protocol. HTTP services run on top of TCP/IP and was developed specifically for the transmission of hypertext between client 14 and server 22, 26, 28.
S-HTTP services are a secure form of HTTP services, which would mostly used for financial transactions on the netcentric computing system 12. S-HTTP services are used because of the ability to conduct financial transactions (using credit card numbers or passing sensitive information) without the risk of unauthorized people intercepting this information. S-HTTP services incorporate various cryptographic message formats such as DSA and RSA standards into both the web client and the web server. FT AM services use the Open Systems Interconnection (OSI) standard, which may also be is used for file transfer, file access and file management across platforms.
Remote procedure call (RPC) services 72 is a type of transfer protocol by which an application sends a request to a remote system (i.e. - client or server) to execute a designated procedure using the supplied arguments and return the result to the application. Fig. 6 depicts RPC messaging, in which the message originator stops processing while waiting for a reply. RPCs emulate the function call mechanisms found in procedural languages (e.g., the C language). This means that control is passed from the main logic of a program to the called function, with control returning to the main program once the called function completes its task. Because RPC services 72 perform this mechanism across the network, they pass some element of control from one process to another, for example, from the client 14 to the server 22, 26, 28. Because the client 14 is dependent on the response from the server 22, 26, 28, it is normally blocked from performing any additional processing until a response is received. This type of synchronous data exchange is also referred to as blocking communications.
The message-oriented services 74 handle the process of distributing data and control through the exchange of records known as messages. In operation, the message-oriented services 74 provide the application developer with a set of simple verbs (e.g., connect, send, receive, and disconnect) that are used to exchange information with other distributed applications on the netcentric computing system 12. For example, to send data to a remote n process or application, the application developer uses a send verb. This verb, along with the appropriate parameters (e.g. , data to be sent and the process's logical name), are included as part of the application code.
Once the verb is called, the message-oriented services 74 are responsible for managing the interface to the underlying communications architecture via the communications protocol APIs and ensuring the delivery of the information to the remote process or application. This interface may require that the message-oriented services 74 have the following capabilities: translating mnemonic or logical process names to operating system compatible format; opening a communications session and negotiating parameters for the session; translating data to the proper format; transferring data and control messages during the session; recovering any information if errors occur during transmission; and passing results information and status to the application.
An application continues processing after executing a message-oriented services verb, allowing the reply to arrive at a subsequent time. Thus, unlike the remote procedure call services 72, the message-oriented services 74 implement a "non-blocking" messaging architecture. In general, there are three types of message-oriented services 74 that may be implemented in the communication services architecture 10, which are: message passing services; message queuing services; and publish and subscribe services.
As illustrated in Fig. 7, the message passing services are a direct, application-to- application communication model. An application request is sent in the form of a message from one application to another. The communication method can be either synchronous (in this case, the sending application waits for a response back from the receiving application, like RPCs) or asynchronous (through call-back routines). In a message-passing model, a direct link between two applications that participate in the message exchange is always maintained.
Referring to Fig. 8, the message queuing services (also known as store and forward) are an indirect application-to-application communication model that allows applications to communicate via message queues rather than by calling each other directly. Message queuing is asynchronous by nature and connectionless, meaning that the recipient need not be directly available when the message is sent. Moreover, it provides support for reliable, guaranteed and assured (non-duplicate) message delivery.
As illustrated in Fig. 9, the publish and subscribe services (also known as Push messaging) are a special type of data delivery mechanism that allows processes to register an
(X interest in (i.e., subscribe to) certain messages or events. An application, which may be on the client 14, then sends (publishes) a message, which is then forwarded to all processes that subscribe, which are typically servers.
The streaming services 76 use applications that transfer time-sensitive data streams (e.g., video and/or audio) in real time. Referring to Fig. 10, streaming differs from the other types of core messaging services 60 in that it delivers a continuous, one-way stream of data, rather than the relatively short messages of the other types of core messaging services 60. While the media stream is one-way from the server 22, 26, 28 to the client 14, the client 14 can issue stream controls to the server 22, 26, 28 as well. In the preferred embodiment, the streaming services 76 can be used to deliver video, audio, and/or other real-time content across the Internet or within the netcentric computing system 12. During operation, the streaming services 76 may be used by different types of applications and may transfer information in one of several different types of streaming protocols. In the preferred embodiment, the streaming protocols are selected from the group including real-time streaming protocol (RTSP), real-time transport protocol (RTP) and realtime control protocol (RTCP). RTSP is the proposed Internet protocol for establishing and controlling on-demand delivery of real-time data. For example, clients can use RTSP to request specific media from a media server, to issue commands such as play, record and pause, and to control media delivery speed. Because RTSP simply controls media delivery, it is layered on top of other protocols.
In RTP actual delivery of streaming data occurs through real-time protocols such as RTP. RTP provides end-to-end data delivery for applications transmitting real-time data over multicast or unicast network services. RTP conveys encoding, timing and sequencing information to allow receivers to properly reconstaict the media stream. RTP is independent of the underlying transport service, but it is typically used with UDP. It may also be used with Multicast UDP, TCP/IP or IP Multicast. RTP is augmented by the RTCP. RTCP allows nodes to identify stream participants and communicate about the quality of data delivery.
As illustrated in Fig. 10, a key attribute of any streaming architecture is the adherence to a flow of time-sequenced data packets. Each series of packets contains the necessary information to play the next segment in a sound or video clip. Fig. 10 highlights the oneway, time-sequenced nature of the flow of data packets for a streaming architecture.
Referring once again to Fig. 4, the specialized messaging services 62 extend the core messaging services 60 to provide additional functionality to the communication services 52. Preferentially, the specialized messaging services 62 are designed to extend core messaging services 60 in the following general ways: providing messaging among specialized messaging systems by drawing upon basic messaging capabilities; defining specialized message layouts; defining specialized intersystem protocols; suggesting ways in which messaging draws upon director}' and security services to deliver a complete messaging environment.
In the preferred embodiment of the present invention, the specialized messaging services 62 preferentially include the following sub-services: E-mail messaging services 78, database access messaging services 80, object request broker messaging services 82, computer-telephone integration messaging services 84, electronic data interchange messaging services 86 and legacy integration messaging services 88. The E-mail messaging services 88 exchange messages using the store-and-forward messaging style. As known in the art, some E-mail messaging services 88 traditionally include a rudimentary form of directory services. Some E-mail products known in the art use proprietary protocols, the following are examples of E-mail related standards that may be used by the present invention: X.400, Simple Mail Transfer Protocol (SMTP), Multi-Purpose Internet Mail Extensions (MIME), Post Office Protocol (POP) and Internet Message Access Protocol, Version 4 (IMAP4). The X-400 message handling system standard defines a platform independent standard for store-and-forward message transfers among mail servers. X.400 is often used as a backbone e-mail service, with gateways providing interconnection with end-user systems. SMTP is a UNIX/Internet standard for transferring e-mail among servers. MIME is a protocol that enables Internet users to exchange multimedia e-mail messages. POP or POP3 is used to distribute e-mail from an SMTP server to the actual recipient.
IMAP4 allows a client 14 to access and manipulate e-mail messages on a server 22, 26, 28. IMAP4 permits manipulation or remote message folders, called "mailboxes," in a way that is functionally equivalent to local mailboxes. EMAP4 also provides the capability for an off-line client 14 to resynchronize with the server 22, 26, 28. IMAP4 includes standards for message handling features that allow users to download message header information and then decide which e-mail message contents to download. The database access messaging services 80 use applications to provide connectivity for clients 14 to access databases throughout the netcentric computing system 12. Database messaging applications draw upon basic inter-process messaging capabilities (e.g., RPCs) to support database connectivity. DBAM can be grouped into one of three categories: open;
M native; and gateway. Open database messaging services typically provide single applications seamless access to multiple data sources, both relational and non-relational, through a standard application programming interface (API) set. Examples include ODBX (Open Database Connectivity) and JDBC (Java Database Connectivity). ODBC is considered an industry de facto standard.
By contrast, native database messaging services are those services, usually proprietary, provided by the DBMS vendor. Examples include SQL*Net for Oracle DBMS and DB-LIB for Sybase DBMS. Additionally, gateway database messaging services can be used to facilitate migration of data from one environment to another. For example, if data in a DB2 environment needs to be integrated with data in a Sybase environment, Gateway DBAM can enable the integration.
The object request broker messaging services 82 enable objects to transparently make requests of and receive responses from other objects located locally or remotely. Objects communicate through an ORB. An ORB enables client 14 objects to access server 22, 26, 28 objects either locally or remotely over a network and invoke operations (i.e., functions and methods) on the objects.
ORBs typically provide interoperability between heterogeneous client and server environments across languages and/or operating systems and/or network protocols. In that respect, some have said that ORBs will become a kind of "ultimate middleware" for truly distributed processing. A standardized Interface Definition Language (IDL) defines the interfaces that applications must use to access the ORB services. The two major Object Request Broker standards/implementations are Object Management Group's Common object Request Broker Architecture (CORBA) (www.omg.org): Microsoft's (Distributed) Component Object Model (COM/DCOM) (www.microsoft.com). The computer-telephone integration (CTI) messaging services 84 use applications to integrate computer systems (i.e., client 14) and telephone systems, thereby coordinating data and telephony activities. As illustrated in Fig. 1 1, in the preferred embodiment of the present invention the CTI messaging services 84 support communication among clients 14 and a CTI server 90, which then supports device specific communication, such as PBXs/ACDs 92, a plurality of networks and external telephony devices and hybrid systems (not illustrated).
CTI messaging services 84 rely upon proprietary PBX/ACD APIs, CTI vendor-specific APIs or message sets, and industry-standard APIs. In the preferred embodiment, the computer-
S telephone integration (CTI) messaging services 84 provide two primary functions: device- specific communication and message mapping.
Device-specific communication manages direct communications between telephony devices and data devices; allows applications to control PBXs, key telephone systems, ISDN, analog PSTN, cellular, Centrex, etc. and supports features such as address translation, call set-up, call answering, call dropping, and caller ID; provides interface to carrier networks for call delivery and call-related messaging. Message mapping translates device-specific communication to generic API and/or message set.
CTI products can be divided into the following categories: CTI platform-specific products; CTI telephony-based API products; CTI server/workstation-based or host-based API products; CTI cross-platform vendors; CTI enabling solutions and CTI enterprise solutions. CTI platform-specific products are only implemented on the hardware of a specific vendor. CTI telephony-based API products include proprietary PBX/ACD-based messaging sets, which permit external devices to interface with the vendor's PBX/ACD call and station control logic.
CTI server/workstation-based or host-based API products operate on a particular computer vendor's hardware platform and provide call control and messaging functionality. CTI cross-platform vendors are products that have been ported to multiple hardware platforms/operating systems. CTI enabling solutions focus solely on call control and call/application synchronization functions. CTI enterprise solutions provide all CTI business functions to varying degrees.
The electronic date interchange messaging services 86 use applications to support system-to-system messaging among business partners by defining standard message layouts. Companies typically use electronic data interchange messaging services 86 to streamline commercial transactions within their supply chains. EDI standards (e.g., EDIFACT, ANSI XI 2) define record layouts for transactions such as "purchase orders." EDI services include the generation and translation of EDI messages according to the various public message layout standards. EDI messaging can be implemented via electronic mail or customized message-oriented architectures. The legacy integration messaging services 88 use applications to provide gateways to mainframe legacy systems so that outdated messaging services can be integrated into the preferred embodiment of the present invention if required. Design techniques for integration with the netcentric computing system 12 can be grouped into two broad categories: front-end access - access of information through screens/windows; and, back-end access - this approach tends to be used when existing data stores have information that is needed in the client/server environment, but accessing the information through existing screens or functions is not feasible. The legacy integration messaging services 88 typically include remote data access through gateways. A database gateway provides an interface between the client/server environment and the legacy system. The gateway provides an ability to access and manipulate the data in the legacy system.
As previously set forth, the communication services layer 46 also includes communication security services 64. The communication security services 64 use applications to control access to network-attached resources of the netcentric computing system 12. Combining communication security services 64 with security services in other parts of the netcentric computing system 12 (e.g., application and database layers) results in robust security. The preferred communication security services 64 include encryption services 92, identification/authentication services 94 and access control services 96. Encryption services 92 are applications that encrypt data prior to network transfer to prevent unauthorized interception. The encryption services 92 may be used in conjunction with the communication services layer 46, the transport services layer 48 or the network media services layer 50. See Fig. 3. Within the communication services layer 46, encryption occurs at the top of the protocol stack and is typically performed in an application (e.g. - in an email application). This is an end-to-end approach that can leave the transport services layer 48 and the network media services layer 50 unaffected. Several encryption services 92 exist that may be readily used in the preferred communication services architecture 10.
The identification/authentication services 94 verify network access requests by validating that users are who they claim to be. For secure netcentric computing systems 12, one or more application can be used to validate authorized users and can be integrated with the access control services 96 to verify to which functions and data the users have access. Within the corporate network, the identification/authentication services 94 are often included in directory services products like Novell's NDS (NetWare Directory Services) or Microsoft's Windows NT Domain Services. These products require the user to have an established account and supply a password before access is granted to resources through the directory. Some of the preferred identification/authentication services 94 used in the communication services architecture 10 include basic ID/authentication, ID/password encryption, digital certificates or signatures, hardware tokens, virtual tokens and biometric identification. Basic ID/authentication requires the client 14 to supply a user name and
I? password before the server 22, 26, 28 services a request. Basic ID/authentication does not encrypt the password in any way, and thus the password travels in the clear over the network where it could be detected with a network sniffer program or device. Basic ID/authentication is not secure enough for banking applications or anywhere where there may be a financial incentive for someone to steal someone's account information.
ID/Password encryption offers a somewhat higher level of security by requiring that the user name and password be encrypted during transit. The user name and password are transmitted as a scrambled message as part of each request because there is no persistent connection open between the client 140 and the web server 28. Digital certificate or signatures are encrypted digital keys that are issued by a third party "trusted' organization (i.e., Verisign). They are used to verify a user's authenticity.
Hardware tokens are small physical devices that may generate a one-time password or that may be inserted into a card reader for ID/ Authentication purposes. Virtual tokens are typically a file on a floppy or hard drive used for ID/ Authentication (e.g., Lotus Notes ID file). Biometric identification involves the analysis of biological characteristics (such as fingerprints, voice recognition, or retinal scans) to verify an individual's identity. Those skilled in the art would recognize that other authentication services may be used in the present invention.
The access control services 96 use applications to verify network access requests by validating that users are who they claim to be. For secure netcentric computing systems 12, one or more authentication mechanisms can be used to validate authorized users and to verify which functions and data they have access to. When a user requests access to resources on the netcentric computing system 12, the access control services 96 determine if the user has the appropriate permission or privileges and either allows or disallows the access. (This occurs after the user has been properly identified and authenticated.)
The following are examples of ways to implement access control services 96 within the communication security services 64. Network operation systems are bundled with all network operating systems to control user access to network resources and may be used in the present invention. An application-level proxy, or application-level gateway, is a robust type of firewall. (A firewall is a system that enforces access control policy between a trusted internal network and an untrusted external network.) The application proxy acts at the application level rather than the network level. The proxy acts as a go-between for the end user by completing the user-requested tasks on its own and then transferring the information to the user. The proxy manages a database of allowed user actions, which it checks prior to performing the request.
World Wide Web filters can prevent users from accessing specified content or Internet addresses. Products can limit access based on keywords, network addresses, time- of-day, user categories, etc. Filters are typically implemented on a firewall. Servers, applications and databases can use authentication applications locally on a server to limit access to specific system resources or files. Applications and databases can also authorize users for specific levels of access within their control. (This functionality is within the Environment Services grouping in the execution architecture.) Those skilled in the art would recognize that other authentication services may be used in the present invention.
Referring once again to Fig. 4, the directory services 68 manage information about resources on the netcentric computing system 12 and perform a variety of processes. The processes range from simple name-to-address resolution (e.g., when www.ac.com is typed in a browser connected to the Internet, that name resolves to IP address 204.167.146.195.) to the logical integration of heterogeneous systems to create a common view of resources. In the preferred communication services architecture 10, the directory services 68 typically perform one or many of the following functions. Store information about network resources and users, and track relationships. Organize resource access information in order to aid in the location of and access to other resources throughout the network. Provide location transparency, because resources are accessed through a directory rather than based on their physical location. Convert between logical resource names and physical resource addresses. Interact with Security services such as identification/authentication and access control services to maintain necessary access permissions and privileges. Provide single network logon to file and print resources; in certain cases, provide single network logon for network applications integrated with the directory services. Distribute and synchronize directory information throughout the environment (for reliability and location-independent access).
As illustrated in Fig. 12, the preferred directory services 68 are comprised of two subservices: name services 100 and domain services 102. The name service 100 creates a logical "pronounceable" name in place of a binary machine number. The name services 100 and the domain services 102 can be used by other communications services such as the file transfer services 70, the message services 60, and the terminal services 112 (described ή later). A name service 100 can be implemented on its own or as part of a full-featured directory service 68.
A network domain is a set of network nodes under common control (i.e., common security and logins, unified addressing, coordinated management, etc.). The domain services 102 manage these types of activities for the network nodes in a domain. Domain services 102 may be limited in their ability to support heterogeneous systems and in the ability to scale to support the enterprise. In the preferred netcentric computing system 12, seamless location of, and access to, resources, individuals, and applications is provided by the directory services 68. Emerging directory service technologies such as the Lightweight Directory Access Protocol (LDAP) may also be used in the present invention.
Referring back to Fig. 4, the virtual resource services 66 use applications to proxy or mimic the capabilities of specialized, network-connected resources. This allows a generic network node to emulate a specialized physical device. In this way, network users can interface with a variety of specialized resources. The preferred virtual resource services 66 include fax services 104, file sharing services 106, paging services 108, phone services 110, terminal services 112, printing services 114 and audio/video services 116.
The fax services 104 use applications that provide for the management of both inbound and outboard fax transmissions. If fax is used as a medium for communicating with customers or remote employees, inbound fax services may be required for centrally receiving and electronically routing faxes to the intended recipient. Outbound fax services can be as simple as supporting the sharing on the network of a single fax machine or group of machines for sending faxes.
The functionality the fax services 104 provide the virtual resource services 66 include the following: managing incoming faxes; receiving faxes via the telephone network; queuing faxes; routing and distributing faxes; displaying or printing faxes; managing outgoing faxes; generating faxes; queuing faxes; and transferring faxes via the telephone network. The fax services 104 can provide centrally managed faxing capabilities, thus eliminating the need for fax modems on every workstation. Although not illustrated, a fax server generally provides fax services to clients 14 such as receiving, queuing and distributing incoming faxes and queuing and sending outgoing faxes. Clients 14 can view faxes and generate faxes to be sent. Applications may compose and transfer faxes as part of notifying users or delivering information. For example, an application may use the fax services 104 to add customer-specific information to a delivery receipt form and fax the form to a customer.
The file sharing services 106 use applications that allow users to view, manage, read, and write to files that may be located on a variety of platforms in a variety of locations. In operation, the file sharing services 106 enable a unified view of independent file systems. The file sharing services 106 provide some or all of the following capabilities in the virtual resource services 66: transparent access, multi-user access, file access control, multi- platform access, integrated file directory, fault tolerance and scalability.
Transparent access provides the clients 14 with access to remote files as if they were local. Multi-user access provides for distribution and synchronization of files among multiple users, including file locking to manage access requests by multiple users. File access control provides for the use of security services (user authentication and authorization) to manage file system security. Multi-platform access provides clients 14 access to files located on various platforms (e.g., UNIX, NT, etc.). An integrated file directory provides clients 14 with a logical directory structure that combines all accessible file directories, regardless of the physical directory structure. Fault tolerance is handled by the use of primary and replica file servers to ensure high availability of file systems. In addition, the file sharing services 106 are scalable because of the ability to integrate networks and distributed file systems of various sizes. The paging services 108 use applications to provide the message formatting and display functionality that allows network nodes to interface with wireless paging systems. In operation, this service emulates the capabilities of one-way and two-way pagers. The paging services 108 allow can allow pages to be generated in various ways: e-mail messages to a specified mailbox; DTMF (touch tone) signaling to a voice response system; encoded digital messages transferred to a paging provider gateway; and messages transferred to a locally attached two-way wireless page.
The phone services 110 use applications to extend telephony capabilities to the netcentric computing system 12. For example, an application on a client 14 can place and receive telephone calls for the user. The phone services 110 may be used in customer care centers, help desks, or any other environment in which it is useful for a computer to replace a telephone handset.
-2 / During operation, the phone services 110 enable clients 14, servers 22, 26, 28, and specialized telephony nodes (PBXSs, ACDs, etc. (not illustrated)) to control the telephony environment through the following methods: call control; controls telephone features; controls recorded messages; manipulates real time call activities (e.g., make call, transfer, hold, conference, mute transfer, release, route call, call treatments, and digits collected); telephone status control; controls telephone status functions; logs in and out of the system; and sets ready, not ready, and make busy statuses for users.
The following are examples of some uses of the phone services 110 of the virtual resource services 66. PC telephony products allow desktop computers to act as conduits for voice telephone calls. Internet telephony products enable voice telephone calls (and faxing, voice mail retrieval, etc.) through the Internet. For example, an Internet telephony product can accept voice input into a workstation, translate it into an IP data stream, and route it through the Internet to a destination workstation, where the data is translated back into audio. Various desktop voice mail products enable clients 14, 20 to manage voice mail messages using a desktop computer.
The terminal services 112 use applications to allow a client to connect to a non-local host via a network and to emulate the profile (e.g., the keyboard and screen characteristics) required by the host application. Terminal services allow a client 14 to connect to a nonlocal host via a network and to emulate the profile (e.g. , the keyboard and screen characteristics) required by the host application. For example, when a client application logs on to a server, the client 14 functions as a dumb terminal. The terminal services 112 receive user input and send data streams back to the host processor. If connecting from a PC to another PC, the client 14 might act as a remote control terminal (e.g., PC Anywhere). The following are examples of terminal services that may be used in the present invention: Telnet: a simple and widely-used terminal emulation protocol that is part of the TCP/IP communications protocol. Telnet operates establishing a TCP connection with the remotely located login server, minicomputer, or mainframe. The client's keyboard strokes are sent to the remote machine while the remote machine sends back the characters displayed on the local terminal screen. 3270 emulation: emulation of the 3270 protocol that is used by IBM mainframe terminals. tn3270: a Telnet program that includes the 3270 protocol for logging onto IBM mainframes, which is part of the TCP/IP protocol suite.
«2A X Window System allows users to simultaneous access applications on one or more UNIX servers and display results in multiple windows on a local display. Recent enhancements to X Window System include integration with the Web and optimization of network traffic (caching, compression, etc.). Remote control: while terminal emulation is typically used in host-based environments, remote control is a sophisticated type of client/server Terminal services. Remote control allows a client computer to control the processing on a remote desktop computer. The GUI on the client computer looks as if it is the GUI on the remote desktop. This makes it appear as if the remote applications are running on the client. Another terminal service that may be used is rlogin. rlogin is a remote terminal service implemented under BSD UNIX. The concept behind rlogin is that it supports "trusted" hosts. This is accomplished by having a set of machines that share common file access rights and logins. The user controls access by authorizing remote login based on a remote hose and remote user name. This service is generally considered a security risk and avoided in most business system configurations.
The printing services 114 use applications to connect network workstations to shared printers so that various workstations can share printers. The administration of the print services 114 is usually handled by a print server (not illustrated). Depending on the size of the netcentric computing system 12 and the amount of resources the print server must manage, the print server may run on a dedicated machine or on a machine that performs other server functions. Print servers queue print jobs sent to network printers, which are stored in the print server's print buffer and then sent to the appropriate network printer as it becomes available. The print services 114 can also provide the client 14 with information, including print job status, and can manage in-progress print jobs. The audio/video services 116 use applications that allow nodes to interact with multimedia data streams. These services may be implemented as audio only, video only, or combined audio/ video. The audio/ video services 116 allow components to interface with audio streams such as the delivery of music or radio content over data networks. Video services 116 allow components to interface with video streams such as video surveillance. Video services 116 can add simple video monitor capabilities to a computer, or they can transform the computer into a sophisticated video platform with the ability to generate and manipulate video. 3 Video and audio content is often delivered simultaneously. This may be accomplished by transferring separate audio and video streams or by transferring a single interleaved stream. Examples include video conferencing and television (traditional or interactive). The audio/ video services 116 can include the following functionality: streaming content (audio, video, or both) to end users; managing buffering of data stream to ensure uninterrupted viewing/listening; performing compression and decompression of data; managing communications protocols to ensure smooth delivery of content; and managing library of stored content and/or manages generation of live content.
Audio/Video services draw upon lower-level services such as streaming (see Streaming Messaging services) and IP Multicast (see Packet Forwarding/Internetworking services) to efficiently delivery content across the network. Wireless short messaging (i.e., paging) can be implemented through wireless systems such as paging networks, GSM voice/data networks, PCS voice/data networks, and dedicated wireless data networks. Referring to Fig. 3, overall, the communication services layer 46 provides the foundation for netcentric applications enabling client/server and virtual resource communications. Selecting the appropriate communication services, services that meet the business and applications requirements of a particular enterprise, is a key step to ensuring a successful communication services architecture 10. In addition, ensuring the transport services layer 48 supports the selected communication services layer 46 is also important. The transport services layer 48 is the portion of the communication services architecture 10 that provides the movement of information across a network. While the communications fabric layer 44 includes all the hardware, software, and service between the client 14 and servers 22, 26, 28, the transport services layer 48 plays a key role in performing network functions across the enterprise or between enterprises. As illustrated in Fig. 3, the transport services layer 48 operates across all platforms and plays an integral role in allowing the client 14, by means of the communications fabric layer 44, to communicate and share information with the servers 22, 26, 28, or vice versa.
As illustrated in Fig. 13, which illustrates a portion of the communications fabric layer 44 depicted in Fig. 3, the transport services layer 48 includes the following: message transport services 120, packet forwarding/Internetworking services 122, circuit switching services 124, transport security services 126, network address allocation services 128, and quality of service services 130. The message transport services 120 are applications that are responsible for the end- to-end delivery of messages. In the preferred embodiment, the message transport services 120 include functionalities such as end-to-end data transfer, connection control, reliable transfer, flow control, and multiplexing. The message transport services 120 format messages for sending and confirms the integrity of received messages. In addition, the message transport services 120 may establish end-to-end (client-server) connections and track addresses and other associated information for the connection. The message transport service 120 may manage reliable delivery of messages through the use of acknowledgments and retransmissions. The message transport services 120 may allow the client 14 to govern the rate at which the sender transfers data, thereby provided flow control. The message transport services 120 may define multiple addresses or ports within a single network node, allowing multiple processes on the node to have their own communication paths.
It is important to note that some message transport services do not implement all of the listed functionalities. For example, the UDP protocol does not offer connection control or reliable transfer. The following are examples of protocols that provide message transport: SPX (Sequenced Packet exchange); TCP (Transmission Control Protocol); UDP (User Datagram Protocol); NetBIOS/NetBEUI (Network Basic Input Output System/NetBIOS Extended User Interface); APPC (Advanced Program-to-Program Communications); and Apple Talk.
The packet forwarding/Internetworking services 122 are applications that transfer data packets and manage the path that data takes through the netcentric computing system 10. The services include functionalities such as fragmentation/reassembly, addressing, routing, switching and multicasting. The packet forwarding/Internetworking service 122 divides an application message into multiple packets of a size suitable for network transmission. The individual packets include information to allow the receiving node (i.e. - client or server) to reassemble them into the message. The service also validates the integrity of received packets and buffers, reorders and reassembles packets into a complete message. During operation, the packet forwarding/Internetworking service 122 encapsulates packets with addressing information. The packet forwarding/Internetworking service 122 can maintain routing information (a view of the network topology) that is used to determine the best route for each packet. Routing decisions are made based on the cost, percent utilization, delay, reliability and similar factors for each possible route through the network.
Switching is the process of receiving a packet, selecting an appropriate outgoing path, and sending the packet. Switching is performed by routers and switches within the communications fabric. As known in the art, switching can be implemented in several ways. For some network protocols (e.g. , TCP/IP), routers draw upon dynamic routing information to switch packets to the appropriate path. This capability is especially important when connecting independent networks or subnets. For other network protocols (e.g., Ethernet, Token Ring), switching simply directs packets according to a table of physical addresses. The switch can build the table by "listening" to network traffic and determining which network nodes are connected to which switch port. Some protocols such as Frame Relay involve defining permanent routes (permanent virtual circuits, or PVCs) within the network. Because frame relay is switched based upon PVCs, routing functionality is not required.
The packet forwarding/Internetworking service 122 may support multicasting, which is the process of transferring a single message to multiple recipients at the same time. Multicasting allows a sender to transfer a single copy of the message to the communications fabric, which then distributes the message to multiple recipients. The following are examples of protocols that provide packet forwarding/Internetworking: IP (Internet Protocol); IP Multicast) (emerging standard that uses a predefined set of IP addressed to instruct network routers to deliver each packet to all users involved in a multicast session); IPX (Internetwork Packet Exchange); ATM (Asynchronous Transfer Mode); Frame Relay; and X.25. The following are examples of common network components that perform packet forwarding/Internetworking services 122: routers; switches; ATM switches, Frame Relay switches, IP switches, Ethernet switches, etc. The following are examples of protocols that maintain routing information tables within routers: distance vector protocols, link-state protocols and policy routing protocols. In distance vector protocols each router periodically informs neighboring routers as to the contents of routing table (destination addresses and routing metrics); routing decisions are made based on the total distance and other "costs" for each path: IP and IPX Routing Information Protocols (RIP); AppleTalk Routing Table Management Protocol (RTMP); Cicso's Interior Gateway Routing Protocol (IGRP) and Enhanced IGRP.
In link-state protocols each router periodically broadcasts changes to the routers directly on adjacent networks: Open Shortest Path First (OSPF); ISO's Intermediate System to Intermediate System (IS-IS); Novell's NetWare Link Services Protocol (NLSP). Policy routing protocols allow Internet backbone routers to accept routing information from neighboring backbone providers on the basis of contracts or other non-technical criteria; routing algorithms are distance vector: Border Gateway Protocol (BGR) and Interdomain Routing Protocol (IDR). The circuit switching services 124 are applications that establish physical circuits for the transfer of such things as circuit-switched voice, fax, and video. Circuit switching services 124 use an end-to-end physical connection between the sender and the receiver that lasts for the duration of the "call" transferred through brief, temporary, logical connections between nodes. The circuit switching services 124 provide the following functionality in the preferred embodiment of the invention: establishing an end-to-end path for circuits (may involve multiple intermediate nodes/ switches) and managing the end-to-end path (quality, billing, termination, etc.). The following are examples of circuit switching devices that may be used in the present invention: analog dial-up telephone circuit; cellular telephone circuit; ISDN (Integrated Services Digital Network). The transport security services 126 are applications and devices that perform encryption and filtering of traffic being passed over the transport services 48. Encryption within the transport security services 126 is performed by encrypting packets generated by higher level services (e.g., message transport 120) and encapsulating them in lower level packets (e.g., packet forwarding/Internetworking 122). Note that encryption can also occur within the communications services layer 46 or the network media services layer 50.
Encryption within the transport services layer 48 has the advantage of being independent of both the application and the transmission media, but it may make network monitoring and troubleshooting activities more difficult. The following standards support transport-layer encryption: Point-to-Point Tunneling Protocol and Layer 2 Tunneling Protocol. Network traffic can be controlled at the transport services layer 48 by filtering data packets based on source and/or destination addresses and network service in the transport security services 126. This ensures that only authorized data transfers can occur. This
11 filtering is one of the roles of a packet filtering firewall. As generally known in the art, a firewall is a system that enforces an access control policy between a trusted internal network and an untrusted external network.
The network address allocation services 128 are applications that manage the distribution of addresses to network nodes of the netcentric computing system 12. This provides more flexibility compared to having all nodes assigned static addresses. This service assigns addresses to nodes when they initially power on and connect to the network. The following are examples of standards that implement network address allocation services 128 and allow a network node (i.e., client 14) to ask a central resource (i.e., server 22, 26, 28) for the node's network address (e.g., IP address): DHCP (Dynamic Host Configuration Protocol) and BootP (Bootstrap Protocol).
The quality of service services 130 are applications designed to deliver a defined network throughout for designated traffic by allocating dedicated bandwidth, prioritizing data traffic, and managing traffic flow. Different types of network traffic (e.g., data, voice and video) have different quality of service requirements. For example, data associate with video-conferencing sessions is useless if it is not delivered "on time." On the other hand, traditional best-effort data services, such as file or e-mail transfer, are not affected by variations in latency.
Several specialized communications protocols may be used to provide guaranteed quality of service. Asynchronous Transfer Mode (ATM) is a connection-oriented wide area and local area networking protocol that delivers quality of service services 130 on a per- connection basis. Quality of service is negotiated as part of the initial connection set up and as network conditions change. Because of the small size of ATM data cells, quality of service can be better managed, compared to protocols such as Ethernet that have large frames that can tie up network components. For ATM to deliver quality of service to applications, ATM must be used end to end.
Resource Reservation Protocol (RSVP) allows applications to reserve router bandwidth for delay-sensitive IP traffic. With RSVP, quality of service is negotiated for each application connection. RSVP enables the network to reserve resources from end to end, using frame relay techniques on frame relay networks, ATM techniques on ATM, and so on. In this way, RSVP can achieve quality of service across a variety of network technologies, as long as all intermediate nodes are RSVP capable.
Z8 IP Stream Switching improves network performance, but does not guarantee quality of service. IP switching can increase network throughput for streams of data by combining IP routing software with ATM switching hardware. With IP switching, an IP switch analyzes each stream of packets directed from a single source to a specific destination and classifies it as short- or long-lived. Long-lived flows are assigned ATM virtual channels (VCs) that bypass the IP router and move through the switching fabric at the full ATM line speed. Short-lived flows continue to be routed through traditional store-and-forward transfer.
Like IP switching, tag-switching also improves network throughput for IP data streams. Tag switching aggregates one or more data streams destined for the same location and assigns a single tag to all associated packets. This allows routers to more efficiently transfer the tagged data. Tag switching is also known multi-protocol label switching. Data prioritization improves network performance for prioritized application traffic, but does not guarantee quality of service. Although not an example of end-to-end quality of service, various network components can be configured to prioritize their handling of specified types of traffic. For example, routers can be configured to handle legacy mainframe traffic (SNA) in front of other traffic (e.g., TCP/IP). A similar technique is the use of prioritized circuits within frame relay, in which the frame relay network vendor assigns different priorities to different permanent virtual circuits. Prioritization techniques are of limited effectiveness if data must also pass through network components that are not configured for prioritization (e.g., network components run by third-party network providers).
As illustrated in Fig. 13, the preferred network media services 50 of the communications fabric layer 44 includes media access services 132 and physical media services 134. The network media services 50 provide final framing of data for interfacing with the client 14 or node and the ability to receive, interpret, and act on signals that are received by the communications fabric layer 44. The network media services 50 are capable of transferring data throughout the netcentric computing system 12, as illustrated in Fig. 3. In the preferred embodiment, the media access services 132 manage the low-level transfer of data between network nodes. The media access services 132 include applications that perform functions such as physical addressing, packet transfer, shared access, flow control, error recovery, and encryption. In physical addressing the media access services 132 encapsulate packets with physical address information used by the data link protocol (e.g. , Ethernet and Frame Relay). During packet transfer, the media access service 132 uses the data link communications protocol to frame packets and transfer them to another computer on the same network/subnetwork.
The media access services 132 provide a method for multiple network nodes to share access to a physical network. Shared access schemes include CSMA/CD, token passing and multiplexing. CSMA/CD (Carrier Sense Multiple Access with Collision Detection) is a method by which multiple nodes can access a shared physical media by "listening" until no other transmissions are detected and then transmitting and checking to see if simultaneous transmission occurred. Token passing is a method of managing access to a shared physical media by circulating a token (a special control message) among nodes to designate which node has the right to transmit.
Multiplexing is a method of sharing physical media among nodes by consolidating multiple, independent channels into a single circuit. The independent channels (assigned to nodes, applications or voice calls) can be combined by time-division multiplexing and frequency division multiplexing. Time division multiplexing (TDM) is a method in which the use of a circuit is divided into a series of time slots, and each independent channel is assigned its own periodic slot. In frequency division multiplexing (FDM) - each independent channel is assigned its own frequency range, allowing all channels to be carried simultaneously.
The media access service 132 manages the flow of data to account for differing data transfer rates between devices. For example, flow control would have to limit outbound traffic if a receiving machine or intermediate node operates at a slower data rate, possibly due to the use of different network technologies and topologies or due to excess network traffic at a node.
The media access services 132 perform error recovery, which is the capability to detect and possibly resolve data corruption that occurs during transmission. Error recovery involves the use of checksums, parity bits, etc. In addition, the media access service 132 may perform encryption. (Note that encryption can also occur within the communications services layer 46 or the transport services layer 48.) Within the network media services layer 50, encryption can occur as part of the data link protocol (e.g., Ethernet, frame O relay). In this case, all data is encrypted before it is placed on the wire. Such encryption tools are generally hardware products. Encryption at this level has the advantage of being transparent to higher-level services.
The following are examples of media access protocols that may be used in the netcentric computing system. Ethernet; Token Ring; FDDI (Fiber Distributed Data
Interface); Portions of the ATM (Asynchronous Transfer Mode) standard; HDLC (High- level Data Link Control)/SDLC (Synchronous Data Link Control); LAP-B (Link Access Procedure - Balanced); T-carrier, E-carrier (e.g., TI, T3, El, E3); TDM and FDM (Time Division Multiplexing and Frequency Division Multiplexing; used on T-carriers, etc.); SONET (Synchronous Optical Network), SDH; PPP (Point-to-Point Protocol), SLIP (Serial Line Internet Protocol); V.32, V.34, V.34 bis, etc.; RS-232, EIA-232; and TDMA and FDMA (Time Division Multiple Access and Frequency Division Multiple Access; used on wireless links).
Specialized services convert between addresses in the media access services 132 (i.e. , physical addresses like Ethernet) and the packet forwarding /Internet-working services 22 (i.e., network addresses like IP). Address Resolution Protocol (ARP) allows a node to obtain the physical address for another node when only the IP address is known. Reverse Address Resolution Protocol (RARP) allows a node to obtain the IP address for another node when only the physical address is known. The physical media services 134 include both the physical connectors and the physical media (wired or wireless) that are used by clients 14 to connect with, and use, the resources of the netcentric computing system 12. The physical media services 134 are divided into two categories: physical connectors and physical media (wired or wireless). The following are examples of wiring connectors used to connect network nodes to physical media: RJ-11, RJ-45; BNC; DB-9, DB-25; and fiber optic connectors. The following are examples of wired physical media: twisted pair wiring; shielded twisted pair wiring; coaxial cable; fiber optic cable; and four-pair voice-grade wiring. The following are examples of wireless physical media: cellular antennas and the associated radio frequencies; wireless local area network antennas and the associated radio frequencies; and satellite antennas and the associated radio frequencies.
Without the network media services 50 (which was compared earlier to the interconnected train tracks, signals and switches), information would not be capable of
* traveling to its intended destinations. While this infrastructure is a complex network of numerous interconnected copper wires, fiber optics cables and radio antennas, continued change in network media services is likely to be slow. Those skilled in the art would recognize that various methods of conducting communication exist and will continue to develop. These methods may be readily incorporated into the preferred embodiment of the present invention.
While the invention has been described in its currently best known modes of operation and embodiments, other modes and embodiments of the invention will be apparent to those skilled in the art and are contemplated. For other features, advantages and combinations of the present invention refer to U.S. provisional application Serial No: 60/156,962, entitled NETCENTRIC AND CLIENT/SERVER COMPUTING, which is herein incorporated by reference, in its entirety.

Claims

What is claimed is:
1. A communication services architecture for a netcentric computing system, comprising: a communication services layer including communication services, communication security services, virtual resource services and directory services; a transport services layer including message transport services, packet forwarding/Internetworking services, circuit switching services, transport security services, network address allocation services and quality of service services; and a network media services layer including media access services and physical media services.
2. The communication services architecture of claim 1, wherein said communication services include core messaging services and specialized messaging services.
3. The communication services architecture of claim 2, wherein said core messaging services transfer information from one application to another application in said netcentric computing system.
4. The communication services architecture of claim 2, wherein said core messaging services may be selected from the group consisting of file transfer services, remote procedure call services, message-oriented services and streaming services.
5. The communication services architecture of claim 4, wherein said file transfer services may be selected from the group consisting of file transfer protocol services, hyper-text transfer protocol services, secure hyper-text transfer protocol services and file transfer and access management services.
6. The communication services architecture of claim 4, wherein said streaming services may use a streaming protocol that may be selected from the group consisting of real-time streaming protocol , real-time transport protocol and real-time control protocol.
7. The communication services architecture of claim 2, wherein said specialized messaging services may be selected from the group consisting of E-mail messaging services, database access messaging services, object request broker messaging services, computer-telephone integration messaging services, electronic data interchange messaging services and legacy integration services.
8. The communication services architecture of claim 1, wherein said communication security services may be selected from the group consisting of encryption services, identification/authorization services and access control services.
9. The communication services architecture of claim 8, wherein said identification/authorization services may be selected from the group consisting of basic
ID/authentication, ID/password encryption, digital certificates, digital signatures, hardware tokens, virtual tokens and biometric identification.
10. The communication services architecture of claim 1, wherein said directory services include name services and domain services.
11. The communication services architecture of claim 1 , wherein said virtual resource services may be selected from the group consisting of fax services, file sharing services, paging services, phone services, terminal services, printing services and audio/ video services.
12. The communication services architecture of claim 11, wherein said terminal services may be selected from the group consisting of Telnet, 3270 emulation, tn3270, X Window System, remote control and rlogin.
13. A method of providing a communication services architecture for a netcentric computing system, comprising: sharing a communication services layer including communication services, communication security services, virtual resource services and directory services with at least one client and a web server; transporting data between said client and said web server with a transport services layer that includes message transport services, packet forwarding/Internetworking services, circuit switching services, transport security services, network address allocation services and quality of service services; and
-5Y interconnecting said client with said web server with a network media services layer including media access services and physical media services.
14. The method of claim 13, wherein said communication services include core messaging services and specialized messaging services.
15. The method of claim 14, wherein said core messaging services transfer information from one application to another application in said netcentric computing system.
16. The method of claim 14, wherein said core messaging services may be selected from the group consisting of file transfer services, remote procedure call services, message-oriented services and streaming services.
17. The method of claim 16, wherein said file transfer services may be selected from the group consisting of file transfer protocol services, hyper- text transfer protocol services, secure hyper-text transfer protocol services and file transfer and access management services.
18. The method of claim 16, wherein said streaming services may use a streaming protocol that is selected from the group consisting of real-time streaming protocol, real-time transport protocol and real-time control protocol.
19. The method of claim 14, wherein said specialized messaging services may be selected from the group consisting of E-mail messaging services, database access messaging services, object request broker messaging services, computer-telephone integration messaging services, electronic data interchange messaging services and legacy integration services.
20. The method of claim 13, wherein said communication security services may be selected from the group consisting of encryption services, identification/authorization services and access control services.
21. The method of claim 20, wherein said identification/authentication services may be selected from the group consisting of basic ID/authentication, ID/password
9S encryption, digital certificates, digital signatures, hardware tokens, virtual tokens and biometric identification.
22. The method of claim 13, wherein said directory services include name services and domain services.
23. The method of claim 13, wherein said virtual resource services may be selected from the group consisting of fax services, file sharing services, paging services, phone services, terminal services, printing services and audio/video services.
24. The method of claim 23, wherein said terminal services may be selected from the group consisting of Telnet, 3270 emulation, tn3270, X Window System, remote control and rlogin.
25. A communication services architecture for a netcentric computing system, comprising: a web server connected with at least one client; a communication layer located on said client and said web server, wherein said communication layer includes a communication services layer and a transport layer; a communication fabric layer located on said client and said web server, wherein said communication fabric layer includes said communication services layer, said transport layer and a network media layer; wherein said communication services layer includes communication services, communication security services, virtual resource services and directory services; wherein said transport layer includes message transport services, packet forwarding/Internetworking services, circuit switching services, transport security services, network address allocation services and quality of service services and wherein said network media services; and wherein said network media layer includes media access services and physical media services.
-U
26. The communication services architecture of claim 25, wherein said communication services include core messaging services and specialized messaging services.
27. The communication services architecture of claim 26, wherein said core messaging services may be selected from the group consisting of file transfer services, remote procedure call services, message-oriented services and streaming services.
28. The communication services architecture of claim 27 wherein said file transfer services may be selected from the group consisting of file transfer protocol, hypertext transfer protocol, secure hyper-text transfer protocol and file transfer and access management.
29. The communication services architecture of claim 27, wherein said streaming services may use a streaming protocol that may be selected from the group of protocols consisting of real-time streaming protocol, real-time transport protocol and real-time control protocol.
30. The communication services architecture of claim 26, wherein said specialized messaging services may be selected from the group consisting of E-mail messaging services, database access messaging services, object request broker messaging services, computer-telephone integration messaging services, electronic data interchange messaging services and legacy integration messaging services.
31. The communication services architecture of claim 25, wherein said communication security services may be selected from the group consisting of encryption services, identification/authentication services and access control services.
32. The communication services architecture of claim 31, wherein said identification/authentication services may be selected from the group consisting of basic ID/authentication, ID/password encryption, digital certificates, digital signatures, hardware tokens, virtual tokens and biometric identification.
J?
33. The communication services architecture of claim 25, wherein said directory services include name services and domain services.
34. The communication services architecture of claim 25, wherein said virtual resource services may be selected from the group consisting of fax services, file sharing services, paging services, phone services, terminal services, printing services and audio/ video services.
35. The communication services architecture of claim 34, wherein said terminal services may be selected from the group consisting of Telnet, 3270 emulation, tn3270, X
Window System, remote control and rlogin.
PCT/US2000/026693 1999-10-01 2000-09-29 Communication service architectures for netcentric computing systems WO2001026321A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU78374/00A AU7837400A (en) 1999-10-01 2000-09-29 Communication service architectures for netcentric computing systems

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15696299P 1999-10-01 1999-10-01
US60/156,962 2009-03-03

Publications (2)

Publication Number Publication Date
WO2001026321A2 true WO2001026321A2 (en) 2001-04-12
WO2001026321A3 WO2001026321A3 (en) 2001-11-01

Family

ID=22561807

Family Applications (10)

Application Number Title Priority Date Filing Date
PCT/US2000/026692 WO2001025914A2 (en) 1999-10-01 2000-09-29 Operations architectures for netcentric computing systems
PCT/US2000/026693 WO2001026321A2 (en) 1999-10-01 2000-09-29 Communication service architectures for netcentric computing systems
PCT/US2000/026987 WO2001025954A2 (en) 1999-10-01 2000-09-29 Information service architectures for netcentric computing systems
PCT/US2000/026941 WO2001025965A2 (en) 1999-10-01 2000-09-29 Data management for netcentric computing systems
PCT/US2000/027173 WO2001025919A2 (en) 1999-10-01 2000-09-29 Architectures for netcentric computing systems
PCT/US2000/026917 WO2001025964A2 (en) 1999-10-01 2000-09-29 Base service architectures for netcentric computing systems
PCT/US2000/027036 WO2001025908A2 (en) 1999-10-01 2000-09-29 Presentation service architectures for netcentric computing systems
PCT/US2000/026914 WO2001025917A2 (en) 1999-10-01 2000-09-29 Environment service architectures for netcentric computing systems
PCT/US2000/027066 WO2001025918A2 (en) 1999-10-01 2000-09-29 Frameworks for methods and systems of providing netcentric computing
PCT/US2000/027123 WO2001025909A2 (en) 1999-10-01 2000-10-02 Development architectures for netcentric computing systems

Family Applications Before (1)

Application Number Title Priority Date Filing Date
PCT/US2000/026692 WO2001025914A2 (en) 1999-10-01 2000-09-29 Operations architectures for netcentric computing systems

Family Applications After (8)

Application Number Title Priority Date Filing Date
PCT/US2000/026987 WO2001025954A2 (en) 1999-10-01 2000-09-29 Information service architectures for netcentric computing systems
PCT/US2000/026941 WO2001025965A2 (en) 1999-10-01 2000-09-29 Data management for netcentric computing systems
PCT/US2000/027173 WO2001025919A2 (en) 1999-10-01 2000-09-29 Architectures for netcentric computing systems
PCT/US2000/026917 WO2001025964A2 (en) 1999-10-01 2000-09-29 Base service architectures for netcentric computing systems
PCT/US2000/027036 WO2001025908A2 (en) 1999-10-01 2000-09-29 Presentation service architectures for netcentric computing systems
PCT/US2000/026914 WO2001025917A2 (en) 1999-10-01 2000-09-29 Environment service architectures for netcentric computing systems
PCT/US2000/027066 WO2001025918A2 (en) 1999-10-01 2000-09-29 Frameworks for methods and systems of providing netcentric computing
PCT/US2000/027123 WO2001025909A2 (en) 1999-10-01 2000-10-02 Development architectures for netcentric computing systems

Country Status (3)

Country Link
US (3) US7403946B1 (en)
AU (10) AU7841100A (en)
WO (10) WO2001025914A2 (en)

Families Citing this family (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7814198B2 (en) 2007-10-26 2010-10-12 Microsoft Corporation Model-driven, repository-based application monitoring system
US6636857B2 (en) * 2001-12-18 2003-10-21 Bluecurrent, Inc. Method and system for web-based asset management
KR20030066942A (en) * 2002-02-06 2003-08-14 (주) 자이오넥스 System Integration And Communication Method On The Network
US7286999B2 (en) 2002-05-09 2007-10-23 International Business Machines Corporation Integrated project management and development environment for determining the time expended on project tasks
GB0211644D0 (en) 2002-05-21 2002-07-03 Wesby Philip B System and method for remote asset management
KR20050026929A (en) * 2002-06-18 2005-03-16 컴퓨터 어소시에이츠 싱크, 인코포레이티드 Methods and systems for managing enterprise assets
US7340508B1 (en) * 2002-09-18 2008-03-04 Open Invention Network, Llc Exposing process flows and choreography controllers as web services
US20040098483A1 (en) * 2002-11-14 2004-05-20 Engel Glenn R. Triggering communication from devices that self-initiate communication
CA2431454A1 (en) * 2003-06-06 2004-12-06 Wrapped Apps Corporation Method and system for managing online applications
GB0314800D0 (en) * 2003-06-25 2003-07-30 Hyfinity Ltd System and associated methods for software assembly
WO2005010650A2 (en) * 2003-07-03 2005-02-03 Ebay Inc. Method and system for managing data transaction requests
US8453196B2 (en) 2003-10-14 2013-05-28 Salesforce.Com, Inc. Policy management in an interoperability network
US20050091346A1 (en) * 2003-10-23 2005-04-28 Brijesh Krishnaswami Settings management infrastructure
ES2525527T3 (en) 2004-01-07 2014-12-26 Intellinx Ltd. Apparatus and procedure to control and audit the activity of an inherited environment
US7818387B1 (en) * 2004-02-09 2010-10-19 Oracle America, Inc. Switch
US7457874B2 (en) * 2004-02-20 2008-11-25 Microsoft Corporation Architecture for controlling access to a service by concurrent clients
US7523088B2 (en) * 2004-03-31 2009-04-21 International Business Machines Corporation Method for increasing system resource availability in database management systems
JP4286736B2 (en) * 2004-07-12 2009-07-01 富士通株式会社 Internet protocol telephone number guidance system
US7627328B2 (en) * 2004-08-03 2009-12-01 At&T Mobility Ii Llc Auditing of wireless network node databases
JP2006072432A (en) * 2004-08-31 2006-03-16 Onkyo Corp Peer-to-peer type content delivery system
EP1647898A1 (en) * 2004-10-12 2006-04-19 IMS Innovation Management Services GmbH Serverless replication of databases
US20060168230A1 (en) * 2005-01-27 2006-07-27 Caccavale Frank S Estimating a required number of servers from user classifications
US8745199B1 (en) * 2005-06-01 2014-06-03 Netapp, Inc. Method and apparatus for management and troubleshooting of a processing system
US8340077B2 (en) * 2005-06-15 2012-12-25 At&T Intellectual Property I, Lp Providing operation services for networks via operations service servers
US7788401B2 (en) * 2005-06-15 2010-08-31 At&T Intellectual Property I, L.P. Operations switches and systems for providing operations service for networks
US7895295B1 (en) 2006-01-19 2011-02-22 Sprint Communications Company L.P. Scoring data flow characteristics to assign data flows to storage systems in a data storage infrastructure for a communication network
US7797395B1 (en) 2006-01-19 2010-09-14 Sprint Communications Company L.P. Assignment of data flows to storage systems in a data storage infrastructure for a communication network
US7752437B1 (en) 2006-01-19 2010-07-06 Sprint Communications Company L.P. Classification of data in data flows in a data storage infrastructure for a communication network
US7788302B1 (en) 2006-01-19 2010-08-31 Sprint Communications Company L.P. Interactive display of a data storage infrastructure for a communication network
US7801973B1 (en) 2006-01-19 2010-09-21 Sprint Communications Company L.P. Classification of information in data flows in a data storage infrastructure for a communication network
US10180809B2 (en) * 2006-05-17 2019-01-15 Richard Fetik Secure application acceleration system, methods and apparatus
US20080005115A1 (en) * 2006-06-30 2008-01-03 International Business Machines Corporation Methods and apparatus for scoped role-based access control
US8326296B1 (en) 2006-07-12 2012-12-04 At&T Intellectual Property I, L.P. Pico-cell extension for cellular network
US8122111B2 (en) * 2006-07-25 2012-02-21 Network Appliance, Inc. System and method for server configuration control and management
US8156082B2 (en) * 2006-10-06 2012-04-10 Sybase, Inc. System and methods for temporary data management in shared disk cluster
CN101192227B (en) * 2006-11-30 2011-05-25 阿里巴巴集团控股有限公司 Log file analytical method and system based on distributed type computing network
US8108413B2 (en) * 2007-02-15 2012-01-31 International Business Machines Corporation Method and apparatus for automatically discovering features in free form heterogeneous data
US8996587B2 (en) 2007-02-15 2015-03-31 International Business Machines Corporation Method and apparatus for automatically structuring free form hetergeneous data
US20080215664A1 (en) * 2007-03-01 2008-09-04 Microsoft Corporation Occasionally connected edge application architecture
US8352450B1 (en) * 2007-04-19 2013-01-08 Owl Computing Technologies, Inc. Database update through a one-way data link
US8024396B2 (en) 2007-04-26 2011-09-20 Microsoft Corporation Distributed behavior controlled execution of modeled applications
US7768944B2 (en) * 2007-05-18 2010-08-03 International Business Machines Corporation Technique for defining and dynamically enabling service level requirements in a service oriented architecture
US7970892B2 (en) 2007-06-29 2011-06-28 Microsoft Corporation Tuning and optimizing distributed systems with declarative models
US8239505B2 (en) 2007-06-29 2012-08-07 Microsoft Corporation Progressively implementing declarative models in distributed systems
WO2009051877A1 (en) * 2007-07-30 2009-04-23 Air Routing International, L.P. Air travel coordination, communication and documentation system, method and computer program
US8230386B2 (en) 2007-08-23 2012-07-24 Microsoft Corporation Monitoring distributed applications
EP2210227A2 (en) * 2007-10-25 2010-07-28 Markport Limited Modification of service delivery infrastructure in communication networks
US7974939B2 (en) 2007-10-26 2011-07-05 Microsoft Corporation Processing model-based commands for distributed applications
US7926070B2 (en) 2007-10-26 2011-04-12 Microsoft Corporation Performing requested commands for model-based applications
US8225308B2 (en) 2007-10-26 2012-07-17 Microsoft Corporation Managing software lifecycle
US8099720B2 (en) 2007-10-26 2012-01-17 Microsoft Corporation Translating declarative models
US8181151B2 (en) 2007-10-26 2012-05-15 Microsoft Corporation Modeling and managing heterogeneous applications
US8375073B1 (en) 2007-11-12 2013-02-12 Google Inc. Identification and ranking of news stories of interest
US8700574B2 (en) * 2008-03-21 2014-04-15 Omnitracs, Llc Pourover journaling
US8626223B2 (en) 2008-05-07 2014-01-07 At&T Mobility Ii Llc Femto cell signaling gating
US8719420B2 (en) 2008-05-13 2014-05-06 At&T Mobility Ii Llc Administration of access lists for femtocell service
US8094551B2 (en) 2008-05-13 2012-01-10 At&T Mobility Ii Llc Exchange of access control lists to manage femto cell coverage
US8743776B2 (en) 2008-06-12 2014-06-03 At&T Mobility Ii Llc Point of sales and customer support for femtocell service and equipment
US8275116B2 (en) 2008-08-29 2012-09-25 8X8, Inc. Networked contact center
US8243913B2 (en) 2008-08-29 2012-08-14 8×8, Inc. Limiting contact in a networked contact center environment
CN101686251A (en) * 2008-09-26 2010-03-31 中国银联股份有限公司 Centralized standby system of remote isomorphism real-time system and standby method
US7822853B2 (en) * 2008-09-30 2010-10-26 Microsoft Corporation Stabilization of distributed systems
GB0906004D0 (en) * 2009-04-07 2009-05-20 Omnifone Ltd MusicStation desktop
US20140222758A1 (en) * 2009-08-14 2014-08-07 Ic Manage, Inc. Coherent File State Maintained Among Confederated Repositories By Distributed Workspace Apparatuses Backed Up By a File State Ledgerdemain Store
US8271434B2 (en) * 2009-10-01 2012-09-18 Verizon Patent And Licensing Inc. Central data store process configuration
US8510801B2 (en) 2009-10-15 2013-08-13 At&T Intellectual Property I, L.P. Management of access to service in an access point
US20110202909A1 (en) * 2010-02-12 2011-08-18 Microsoft Corporation Tier splitting for occasionally connected distributed applications
US8380889B2 (en) 2010-03-31 2013-02-19 Oki Data Americas, Inc. Distributed peripheral device management system
US9589253B2 (en) * 2010-06-15 2017-03-07 Microsoft Technology Licensing, Llc Workflow authoring environment and runtime
TWI420339B (en) 2010-11-10 2013-12-21 Ind Tech Res Inst Software authorization system and method
JP5800685B2 (en) * 2010-11-26 2015-10-28 キヤノン株式会社 Information processing apparatus and server, control method, program, and recording medium
US9710344B1 (en) 2010-12-13 2017-07-18 Amazon Technologies, Inc. Locality based quorum eligibility
US8473775B1 (en) * 2010-12-14 2013-06-25 Amazon Technologies, Inc. Locality based quorums
US9081520B2 (en) * 2010-12-22 2015-07-14 Owl Computing Technologies, Inc. Remote print file transfer and spooling application for use with a one-way data link
US8458348B2 (en) * 2011-04-22 2013-06-04 Oracle International Corporation Multiprocessing of data sets
US9454543B1 (en) * 2011-05-05 2016-09-27 Jason Bryan Rollag Systems and methods for database records management
US10078755B2 (en) 2011-05-27 2018-09-18 Apple Inc. Private and public applications
US9081951B2 (en) * 2011-09-29 2015-07-14 Oracle International Corporation Mobile application, identity interface
WO2013086124A1 (en) * 2011-12-09 2013-06-13 Kubisys Inc. Hybrid virtual computing environments
EP2803006B1 (en) * 2012-01-10 2019-09-25 Memeo Inc. Cloud-based distributed data system
US9100330B1 (en) * 2012-07-13 2015-08-04 Emc Corporation Introduction of read delay or write delay in servers of a geographically distributed data processing system so that clients read up-to-date data
US8943198B2 (en) * 2012-11-13 2015-01-27 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Automatically addressing performance issues in a distributed database
CN103455556B (en) * 2013-08-08 2017-06-23 成都市欧冠信息技术有限责任公司 Memory cell data method of cutting out
US9621424B2 (en) 2013-10-04 2017-04-11 Microsoft Technologies Licensing, LLC Providing a common interface for accessing and presenting component configuration settings
US20150336005A1 (en) * 2014-05-20 2015-11-26 Cadillac Jack Electronic gaming system with central game licensing
US9087012B1 (en) * 2014-06-04 2015-07-21 Pure Storage, Inc. Disaster recovery at high reliability in a storage cluster
US9575987B2 (en) 2014-06-23 2017-02-21 Owl Computing Technologies, Inc. System and method for providing assured database updates via a one-way data link
US9811677B2 (en) 2014-07-03 2017-11-07 Pure Storage, Inc. Secure data replication in a storage grid
US10462249B2 (en) * 2014-08-25 2019-10-29 Super Micro Computer, Inc. Globally distributed virtual cache for worldwide real-time data access
US11762989B2 (en) 2015-06-05 2023-09-19 Bottomline Technologies Inc. Securing electronic data by automatically destroying misdirected transmissions
US9734000B2 (en) 2015-06-18 2017-08-15 Microsoft Technology Licensing, Llc Seamless transitions between applications and devices
US10454943B2 (en) 2015-08-17 2019-10-22 The Toronto-Dominion Bank Augmented and virtual reality based process oversight
KR102317716B1 (en) * 2015-11-09 2021-10-26 에스케이텔레콤 주식회사 Method and apparatus for scheduling deployment of software based on resource usages
US20170163664A1 (en) 2015-12-04 2017-06-08 Bottomline Technologies (De) Inc. Method to secure protected content on a mobile device
US10540340B2 (en) 2016-02-09 2020-01-21 International Business Machines Corporation Performing conflict analysis of replicated changes among nodes in a network
CA3058204C (en) * 2016-03-31 2023-10-17 Cae Inc. Method and systems for anticipatorily updating a remote repository
US20170286575A1 (en) 2016-03-31 2017-10-05 Cae Inc. Method and systems for anticipatorily updating a remote repository
CA3019439C (en) * 2016-03-31 2021-12-07 Cae Inc. Method and systems for updating a remote repository based on data-types
US10115320B2 (en) 2016-03-31 2018-10-30 Cae Inc. Method and systems for updating a remote repository based on data-types
US9734184B1 (en) 2016-03-31 2017-08-15 Cae Inc. Method and systems for removing the most extraneous data record from a remote repository
EP3453009A4 (en) * 2016-03-31 2019-12-25 CAE Inc. Method and systems for removing the most extraneous data record from a remote repository
US11163955B2 (en) 2016-06-03 2021-11-02 Bottomline Technologies, Inc. Identifying non-exactly matching text
GB2556924A (en) * 2016-11-25 2018-06-13 Infosum Ltd Accessing databases
US10339931B2 (en) 2017-10-04 2019-07-02 The Toronto-Dominion Bank Persona-based conversational interface personalization using social network preferences
US10460748B2 (en) 2017-10-04 2019-10-29 The Toronto-Dominion Bank Conversational interface determining lexical personality score for response generation with synonym replacement
CN108696588B (en) * 2018-05-14 2021-06-25 平安科技(深圳)有限公司 Information sending method and equipment
US11416713B1 (en) 2019-03-18 2022-08-16 Bottomline Technologies, Inc. Distributed predictive analytics data set
US11042555B1 (en) 2019-06-28 2021-06-22 Bottomline Technologies, Inc. Two step algorithm for non-exact matching of large datasets
US11269841B1 (en) 2019-10-17 2022-03-08 Bottomline Technologies, Inc. Method and apparatus for non-exact matching of addresses
US11449870B2 (en) 2020-08-05 2022-09-20 Bottomline Technologies Ltd. Fraud detection rule optimization
US11694276B1 (en) 2021-08-27 2023-07-04 Bottomline Technologies, Inc. Process for automatically matching datasets
US11544798B1 (en) 2021-08-27 2023-01-03 Bottomline Technologies, Inc. Interactive animated user interface of a step-wise visual path of circles across a line for invoice management
US20230254301A1 (en) * 2022-02-07 2023-08-10 Elasticsearch B.V. Auto-Configuration of Security Features in Distributed System with Minimal User Interaction

Family Cites Families (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4809170A (en) 1987-04-22 1989-02-28 Apollo Computer, Inc. Computer device for aiding in the development of software system
US5495610A (en) 1989-11-30 1996-02-27 Seer Technologies, Inc. Software distribution system to build and distribute a software release
JP2797698B2 (en) 1990-11-14 1998-09-17 株式会社日立製作所 Software reuse support method
WO1992020022A1 (en) * 1991-05-08 1992-11-12 Digital Equipment Corporation Management interface and format for license management system
US5311424A (en) * 1991-06-28 1994-05-10 International Business Machines Corporation Method and system for product configuration definition and tracking
JP3408548B2 (en) 1991-08-21 2003-05-19 株式会社日立製作所 Specification creation process control device
US5619716A (en) * 1991-11-05 1997-04-08 Hitachi, Ltd. Information processing system having a configuration management system for managing the software of the information processing system
CA2101864A1 (en) 1992-08-27 1994-02-28 Claudia Carpenter Customizable program control interface for a computer system
US5860012A (en) 1993-09-30 1999-01-12 Intel Corporation Installation of application software through a network from a source computer system on to a target computer system
US5999916A (en) * 1994-02-28 1999-12-07 Teleflex Information Systems, Inc. No-reset option in a batch billing system
US5564002A (en) * 1994-08-01 1996-10-08 International Business Machines Corporation Method and apparatus for implementing a virtual desktop through window positioning
US5922054A (en) * 1994-08-19 1999-07-13 Canon Kabushiki Kaisha System for managing external applications and files
JP3946275B2 (en) 1995-01-10 2007-07-18 富士通株式会社 Remote installation system and method
US5745753A (en) 1995-01-24 1998-04-28 Tandem Computers, Inc. Remote duplicate database facility with database replication support for online DDL operations
US5933582A (en) * 1995-02-24 1999-08-03 Ricoh Company, Ltd. Printing manager method and system for a copying machine in a network
US5742829A (en) 1995-03-10 1998-04-21 Microsoft Corporation Automatic software installation on heterogeneous networked client computer systems
AU7360896A (en) * 1995-09-15 1997-04-17 Cable & Wireless, Inc. System and method for quality management
US5758150A (en) 1995-10-06 1998-05-26 Tele-Communications, Inc. System and method for database synchronization
US5805889A (en) * 1995-10-20 1998-09-08 Sun Microsystems, Inc. System and method for integrating editing and versioning in data repositories
US5737533A (en) 1995-10-26 1998-04-07 Wegener Internet Projects Bv System for generating a virtual reality scene in response to a database search
US5956479A (en) 1995-11-13 1999-09-21 Object Technology Licensing Corporation Demand based generation of symbolic information
US5799297A (en) 1995-12-15 1998-08-25 Ncr Corporation Task workflow management system and method including an external program execution feature
US5710915A (en) 1995-12-21 1998-01-20 Electronic Data Systems Corporation Method for accelerating access to a database clustered partitioning
WO1997027553A1 (en) 1996-01-29 1997-07-31 Futuretense, Inc. Distributed electronic publishing system
US5805785A (en) 1996-02-27 1998-09-08 International Business Machines Corporation Method for monitoring and recovery of subsystems in a distributed/clustered system
JP2000506650A (en) 1996-03-15 2000-05-30 エイ・ティ・アンド・ティ・コーポレーション Network resource detection method and method using resource evaluation information extracted from electronic message
US6018748A (en) * 1996-05-28 2000-01-25 Sun Microsystems, Inc. Dynamic linkable labels in a network browser page
US5781732A (en) 1996-06-20 1998-07-14 Object Technology Licensing Corp. Framework for constructing shared documents that can be collaboratively accessed by multiple users
US6115712A (en) * 1996-07-12 2000-09-05 International Business Machines Corporation Mechanism for combining data analysis algorithms with databases on the internet
US5956400A (en) 1996-07-19 1999-09-21 Digicash Incorporated Partitioned information storage systems with controlled retrieval
US5761071A (en) 1996-07-27 1998-06-02 Lexitech, Inc. Browser kiosk system
US5911071A (en) 1996-09-13 1999-06-08 Sun Microsystems, Inc. Persistent programming system and method for deploying self-containing executable applications
JP2968733B2 (en) * 1996-09-13 1999-11-02 日本電気アイシーマイコンシステム株式会社 Serial bus controller
US5892909A (en) 1996-09-27 1999-04-06 Diffusion, Inc. Intranet-based system with methods for co-active delivery of information to multiple users
US6067577A (en) 1996-09-30 2000-05-23 Apple Computer, Inc. Dynamic method resolution for native methods in a dynamic object-oriented programming language
US5870759A (en) 1996-10-09 1999-02-09 Oracle Corporation System for synchronizing data between computers using a before-image of data
US5835090A (en) 1996-10-16 1998-11-10 Etma, Inc. Desktop manager for graphical user interface based system with enhanced desktop
US5930512A (en) 1996-10-18 1999-07-27 International Business Machines Corporation Method and apparatus for building and running workflow process models using a hypertext markup language
US6385655B1 (en) 1996-10-24 2002-05-07 Tumbleweed Communications Corp. Method and apparatus for delivering documents over an electronic network
US5923885A (en) * 1996-10-31 1999-07-13 Sun Microsystems, Inc. Acquisition and operation of remotely loaded software using applet modification of browser software
US6023698A (en) 1996-12-05 2000-02-08 International Business Machines Corporation System and method for transparently registering and updating information over the internet
US6061695A (en) 1996-12-06 2000-05-09 Microsoft Corporation Operating system shell having a windowing graphical user interface with a desktop displayed as a hypertext multimedia document
US5892905A (en) 1996-12-23 1999-04-06 International Business Machines Corporation Computer apparatus and method for providing a common user interface for software applications accessed via the world-wide web
US5877759A (en) 1997-03-26 1999-03-02 Netscape Communications Corporation Interface for user/agent interaction
US6026500A (en) * 1997-05-13 2000-02-15 Electronic Data Systems Corporation Method and system for managing computer systems
US6157706A (en) 1997-05-19 2000-12-05 E-Centric, Incorporated Method and apparatus for enabling a facsimile machine to be an e-mail client
WO1998053396A1 (en) * 1997-05-19 1998-11-26 Electronic Data Systems Corporation Distributed help desk system and method
US6038560A (en) 1997-05-21 2000-03-14 Oracle Corporation Concept knowledge base search and retrieval system
SE9702015L (en) * 1997-05-28 1998-11-29 Ericsson Telefon Ab L M Method for distributed database, as well as a system adapted to operate according to the method
AU8065698A (en) * 1997-06-13 1998-12-30 True Software, Inc. Systems and methods for scanning and modeling dependencies in software applications
US5905868A (en) 1997-07-22 1999-05-18 Ncr Corporation Client/server distribution of performance monitoring data
US6006171A (en) 1997-07-28 1999-12-21 Vines; Caroline J. Dynamic maintenance management system
US6112304A (en) 1997-08-27 2000-08-29 Zipsoft, Inc. Distributed computing architecture
US6385644B1 (en) 1997-09-26 2002-05-07 Mci Worldcom, Inc. Multi-threaded web based user inbox for report management
US5924096A (en) 1997-10-15 1999-07-13 Novell, Inc. Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand
US5999931A (en) * 1997-10-17 1999-12-07 Lucent Technologies Inc. Concurrency control protocols for management of replicated data items in a distributed database system
EP0915422B1 (en) * 1997-11-06 2006-03-01 Hewlett-Packard Company Expert system
US6457066B1 (en) 1997-11-10 2002-09-24 Microsoft Corporation Simple object access protocol
US5960406A (en) * 1998-01-22 1999-09-28 Ecal, Corp. Scheduling system for use between users on the web
US6401097B1 (en) 1998-01-23 2002-06-04 Mccotter Thomas M. System and method for integrated document management and related transmission and access
US6366912B1 (en) 1998-04-06 2002-04-02 Microsoft Corporation Network security zones
US6185573B1 (en) 1998-04-22 2001-02-06 Millenium Integrated Systems, Inc. Method and system for the integrated storage and dynamic selective retrieval of text, audio and video data
US6144975A (en) 1998-05-05 2000-11-07 Fmr Corporation Computer system for intelligent document management
US6321263B1 (en) 1998-05-11 2001-11-20 International Business Machines Corporation Client-based application availability
US6598046B1 (en) 1998-09-29 2003-07-22 Qwest Communications International Inc. System and method for retrieving documents responsive to a given user's role and scenario
US6584466B1 (en) 1999-04-07 2003-06-24 Critical Path, Inc. Internet document management system and methods
US6721713B1 (en) 1999-05-27 2004-04-13 Andersen Consulting Llp Business alliance identification in a web architecture framework
US6442547B1 (en) 1999-06-02 2002-08-27 Andersen Consulting System, method and article of manufacture for information service management in a hybrid communication system
US6707812B1 (en) 1999-06-02 2004-03-16 Accenture Llp System, method and article of manufacture for element management in a hybrid communication system
US6195697B1 (en) 1999-06-02 2001-02-27 Ac Properties B.V. System, method and article of manufacture for providing a customer interface in a hybrid network
US6426948B1 (en) 1999-06-02 2002-07-30 Accenture Llp Video conferencing fault management in a hybrid network
US6449588B1 (en) 1999-06-02 2002-09-10 Accenture Llp Customer-driven QOS in hybrid communication system
US6704303B1 (en) 1999-06-02 2004-03-09 Accenture Llp IP/telephony user interface for a hybrid communication system
US6081518A (en) 1999-06-02 2000-06-27 Anderson Consulting System, method and article of manufacture for cross-location registration in a communication system architecture
US6147975A (en) 1999-06-02 2000-11-14 Ac Properties B.V. System, method and article of manufacture of a proactive threhold manager in a hybrid communication system architecture
US6556659B1 (en) 1999-06-02 2003-04-29 Accenture Llp Service level management in a hybrid network architecture
US6542593B1 (en) 1999-06-02 2003-04-01 Accenture Llp Rules database server in a hybrid communication system architecture
US6122630A (en) 1999-06-08 2000-09-19 Iti, Inc. Bidirectional database replication scheme for controlling ping-ponging
US6418430B1 (en) 1999-06-10 2002-07-09 Oracle International Corporation System for efficient content-based retrieval of images
US6523027B1 (en) * 1999-07-30 2003-02-18 Accenture Llp Interfacing servers in a Java based e-commerce architecture
US6434568B1 (en) 1999-08-31 2002-08-13 Accenture Llp Information services patterns in a netcentric environment
US6256773B1 (en) 1999-08-31 2001-07-03 Accenture Llp System, method and article of manufacture for configuration management in a development architecture framework
US6601192B1 (en) 1999-08-31 2003-07-29 Accenture Llp Assertion component in environment services patterns
US6529948B1 (en) * 1999-08-31 2003-03-04 Accenture Llp Multi-object fetch component
US6615199B1 (en) 1999-08-31 2003-09-02 Accenture, Llp Abstraction factory in a base services pattern environment
US6324647B1 (en) 1999-08-31 2001-11-27 Michel K. Bowman-Amuah System, method and article of manufacture for security management in a development architecture framework
US6289382B1 (en) * 1999-08-31 2001-09-11 Andersen Consulting, Llp System, method and article of manufacture for a globally addressable interface in a communication services patterns environment
US6438594B1 (en) 1999-08-31 2002-08-20 Accenture Llp Delivering service to a client via a locally addressable interface
US6427132B1 (en) 1999-08-31 2002-07-30 Accenture Llp System, method and article of manufacture for demonstrating E-commerce capabilities via a simulation on a network
US6615253B1 (en) 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US6339832B1 (en) 1999-08-31 2002-01-15 Accenture Llp Exception response table in environment services patterns
US6715145B1 (en) 1999-08-31 2004-03-30 Accenture Llp Processing pipeline in a base services pattern environment
US6529909B1 (en) 1999-08-31 2003-03-04 Accenture Llp Method for translating an object attribute converter in an information services patterns environment
US6662357B1 (en) 1999-08-31 2003-12-09 Accenture Llp Managing information in an integrated development architecture framework
US6601234B1 (en) 1999-08-31 2003-07-29 Accenture Llp Attribute dictionary in a business logic services environment
US6442748B1 (en) 1999-08-31 2002-08-27 Accenture Llp System, method and article of manufacture for a persistent state and persistent object separator in an information services patterns environment
US6578068B1 (en) 1999-08-31 2003-06-10 Accenture Llp Load balancer in environment services patterns
US6606660B1 (en) 1999-08-31 2003-08-12 Accenture Llp Stream-based communication in a communication services patterns environment
US6477580B1 (en) 1999-08-31 2002-11-05 Accenture Llp Self-described stream in a communication services patterns environment
US6539396B1 (en) 1999-08-31 2003-03-25 Accenture Llp Multi-object identifier system and method for information service pattern environment
US6477665B1 (en) 1999-08-31 2002-11-05 Accenture Llp System, method, and article of manufacture for environment services patterns in a netcentic environment
US6571282B1 (en) 1999-08-31 2003-05-27 Accenture Llp Block-based communication in a communication services patterns environment
US6549949B1 (en) 1999-08-31 2003-04-15 Accenture Llp Fixed format stream in a communication services patterns environment
US6370573B1 (en) 1999-08-31 2002-04-09 Accenture Llp System, method and article of manufacture for managing an environment of a development architecture framework
US6697824B1 (en) 1999-08-31 2004-02-24 Accenture Llp Relationship management in an E-commerce application framework
US6345239B1 (en) 1999-08-31 2002-02-05 Accenture Llp Remote demonstration of business capabilities in an e-commerce environment
US6640244B1 (en) 1999-08-31 2003-10-28 Accenture Llp Request batcher in a transaction services patterns environment
US7139999B2 (en) * 1999-08-31 2006-11-21 Accenture Llp Development architecture framework
US6405364B1 (en) 1999-08-31 2002-06-11 Accenture Llp Building techniques in a development architecture framework
US6640238B1 (en) 1999-08-31 2003-10-28 Accenture Llp Activity component in a presentation services patterns environment
US6434628B1 (en) 1999-08-31 2002-08-13 Accenture Llp Common interface for handling exception interface name with additional prefix and suffix for handling exceptions in environment services patterns
US6502213B1 (en) 1999-08-31 2002-12-31 Accenture Llp System, method, and article of manufacture for a polymorphic exception handler in environment services patterns
US6611867B1 (en) 1999-08-31 2003-08-26 Accenture Llp System, method and article of manufacture for implementing a hybrid network
US6636242B2 (en) 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
US6550057B1 (en) 1999-08-31 2003-04-15 Accenture Llp Piecemeal retrieval in an information services patterns environment
US6640249B1 (en) 1999-08-31 2003-10-28 Accenture Llp Presentation services patterns in a netcentric environment
US6742015B1 (en) 1999-08-31 2004-05-25 Accenture Llp Base services patterns in a netcentric environment
US6496850B1 (en) 1999-08-31 2002-12-17 Accenture Llp Clean-up of orphaned server contexts
US6332163B1 (en) 1999-09-01 2001-12-18 Accenture, Llp Method for providing communication services over a computer network system
US7068680B1 (en) 1999-10-01 2006-06-27 Accenture Llp Communication service architectures for netcentric computing systems
US6988249B1 (en) 1999-10-01 2006-01-17 Accenture Llp Presentation service architectures for netcentric computing systems
US7020697B1 (en) 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
US6874010B1 (en) 1999-10-01 2005-03-29 Accenture Llp Base service architectures for netcentric computing systems
US6606744B1 (en) 1999-11-22 2003-08-12 Accenture, Llp Providing collaborative installation management in a network-based supply chain environment
US7899721B2 (en) 2001-02-27 2011-03-01 Accenture Global Services Gmbh E-commerce system, method and computer program product
US6745209B2 (en) * 2001-08-15 2004-06-01 Iti, Inc. Synchronization of plural databases in a database replication system
US7734793B2 (en) 2001-11-27 2010-06-08 Accenture Global Services Gmbh Service control framework for seamless transfer of a multimedia conference over different media
AU2002352955A1 (en) 2001-11-27 2003-06-10 Accenture Llp Context sensitive advertisement delivery framework
AU2002346574A1 (en) 2001-11-27 2003-06-10 Accenture Llp Service control architecture

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TANENBAUM A: "Computer Networks - Third Edition" 1996 , PRENTICE HALL, INC. , USA XP002161723 page 28 -page 39 *

Also Published As

Publication number Publication date
WO2001025914A2 (en) 2001-04-12
WO2001025954A3 (en) 2002-01-10
WO2001025964A2 (en) 2001-04-12
WO2001025954A2 (en) 2001-04-12
AU7843900A (en) 2001-05-10
WO2001025965A3 (en) 2002-03-07
AU7841100A (en) 2001-05-10
WO2001025917A2 (en) 2001-04-12
US7415509B1 (en) 2008-08-19
US20050283518A1 (en) 2005-12-22
WO2001025965A2 (en) 2001-04-12
AU7746300A (en) 2001-05-10
US7403946B1 (en) 2008-07-22
WO2001026321A3 (en) 2001-11-01
WO2001025919A2 (en) 2001-04-12
AU7624200A (en) 2001-05-10
WO2001025908A3 (en) 2002-03-14
WO2001025909A2 (en) 2001-04-12
WO2001025919A3 (en) 2002-01-17
WO2001025914A3 (en) 2002-01-17
WO2001025918A2 (en) 2001-04-12
AU7848200A (en) 2001-05-10
AU7837400A (en) 2001-05-10
US7734687B2 (en) 2010-06-08
WO2001025918A3 (en) 2002-03-07
AU7742000A (en) 2001-05-10
WO2001025964A3 (en) 2001-11-29
WO2001025909A3 (en) 2002-01-10
AU7740300A (en) 2001-05-10
AU7743600A (en) 2001-05-10
WO2001025908A2 (en) 2001-04-12
WO2001025917A3 (en) 2001-11-29
AU7837300A (en) 2001-05-10

Similar Documents

Publication Publication Date Title
US7068680B1 (en) Communication service architectures for netcentric computing systems
WO2001026321A2 (en) Communication service architectures for netcentric computing systems
US6466574B1 (en) Quality of service improvement of internet real-time media transmission by transmitting redundant voice/media frames
US6178453B1 (en) Virtual circuit switching architecture
JP4444518B2 (en) A distributed system that establishes intelligent sessions between anonymous users over various networks
CA2249841C (en) Pots/packet bridge
US6778494B1 (en) Label switched media gateway and network
US6940864B2 (en) Network access traffic sorter
US20020186683A1 (en) Firewall gateway for voice over internet telephony communications
US8230079B2 (en) Method and apparatus for communicating data between two hosts
US20030169730A1 (en) Method and process for signaling, communication and administration of networked objects
US7366792B2 (en) Method and system for proxying telephony messages
US7248575B2 (en) Communications engine architecture
US20050086358A1 (en) Method and apparatus for communicating data between two hosts
US8914480B1 (en) Method and device for transparent interception of socket connections
US20120269196A1 (en) Method and Device for Transparent Interception of Socket Connections
US7408926B1 (en) Method and apparatus for accessing voice over internet protocol connection
US20030050060A1 (en) Communications architecture utilizing local satellite processors
KR100430910B1 (en) Group-independent message transfer method and system lending specified application module
Hussain Active and programmable networks for adaptive architectures and services
Akujuobi et al. Introduction to broadband communication systems
US7921213B1 (en) Ring content distribution system
Acharya TCP/IP & Distributed System
Martin COMPUTER MULTIMEDIA AND NETWORKING HARDWARE SYSTEM
Sarabi Multimedia Networks

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP