SE521504C2 - Arrangement and method in a network where transactions create events stored in interserver messages - Google Patents
Arrangement and method in a network where transactions create events stored in interserver messagesInfo
- Publication number
- SE521504C2 SE521504C2 SE9804189A SE9804189A SE521504C2 SE 521504 C2 SE521504 C2 SE 521504C2 SE 9804189 A SE9804189 A SE 9804189A SE 9804189 A SE9804189 A SE 9804189A SE 521504 C2 SE521504 C2 SE 521504C2
- Authority
- SE
- Sweden
- Prior art keywords
- server
- message
- network
- resource
- client
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 10
- 238000004891 communication Methods 0.000 claims abstract description 34
- 230000009471 action Effects 0.000 claims abstract description 10
- 230000011664 signaling Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 230000015556 catabolic process Effects 0.000 claims description 3
- 238000006731 degradation reaction Methods 0.000 claims description 3
- 238000012790 confirmation Methods 0.000 claims 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 15
- 238000007726 management method Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000005192 partition Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/10015—Access to distributed or replicated servers, e.g. using brokers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
20 25 30 521 504 2 styr specifika rutiner, omkopplingsfunktioner etc. som tillhör den första kategorin, och utskriftstjänster, nätverksfaxar, CD-ROM-ställ / jukeboxar, kommunikationsportar / kort/ Sökvägar etc. som tillhör den andra kategorin. 20 25 30 521 504 2 controls specific routines, switching functions, etc. belonging to the first category, and printing services, network faxes, CD-ROM stands / jukeboxes, communication ports / cards / Paths, etc. belonging to the second category.
Sammanfattning av uppfinningen Det finns behov av ett arrangemang inom kommunikationsnätverk, som kan överbrygga det ovan nämnda problemet och introducerar ett enkelt sätt att hantera meddelandetrafik, speciellt meddelanden mellan servrar i nätverket.Summary of the Invention There is a need for an arrangement within communication networks which can overcome the above-mentioned problem and introduces a simple way of handling message trays, especially messages between servers in the network.
Vad som behövs är ett arrangemang som tillåter servrarna i nätverket att undvika att lagra infonnation i tabeller eller databaser som innehåller pågående begäran från klienterna. Därför är det också ett ändamål för uppfinningen att presentera ett arrangemang som tillåter enkel tilldelning av resurser för hantering av meddelanden genom att antingen placera begäranmeddelanden i köer för läsning av meddelanden eller att behandla dem.What is needed is an arrangement that allows the servers in the network to avoid storing information in tables or databases that contain ongoing requests from clients. Therefore, it is also an object of the invention to present an arrangement which allows easy allocation of resources for handling messages by either placing request messages in queues for reading messages or processing them.
Det finns också ett behov av ett arrangemang som tillhandahåller säker hantering av meddelanden utan risk för förlust av information.There is also a need for an arrangement that provides secure handling of messages without the risk of loss of information.
Av detta skäl genererar transaktionen i enlighet med inledningen ytterligare minst en händelse i åtminstone en server, och information om denna händelse lagras åtminstone i nämnda meddelanden från server till server. Företrädesvis är nämnda händelse en tilldelning av en resurs och meddelanden innefattar en begäran om resurs. Dessutom innefattar informationen information om kontext som innefattar information om i vilken server de olika resurserna finns.For this reason, according to the preamble, the transaction generates at least one more event in at least one server, and information about this event is stored at least in said messages from server to server. Preferably, said event is an allocation of a resource and messages include a request for a resource. In addition, the information includes contextual information that includes information about in which server the various resources are located.
I ett föredraget utförande innefattar nätverket ytterligare en del, företrädesvis en klient-API, ordnad för att styra kommunikationen mellan klienten och servern. Denna del innefattar en databas som kan uppdateras (XSCU Context) för att lagra infonnation åtminstone om nämnda resurs / tjänst och motsvarande server. Dessutom innefattar det, för att tillhandahålla ett robust nätverk, felhantering som bygger på paradigmet "graceful degradation", i vilket ett fel endast påverkar den funktionalitet som ligger nära felet. 10 15 20 25 D) (D 521 504 3 Resursen / tjänsten specificeras och identifieras företrädesvis med en Globalt Unik Identifikator (GUID). F öreträdesvis innehåller nämnda databas information om alla resurser som används av samtliga klienter och även deras läge.In a preferred embodiment, the network comprises an additional part, preferably a client API, arranged to control the communication between the client and the server. This part includes a database that can be updated (XSCU Context) to store information at least about said resource / service and the corresponding server. In addition, in order to provide a robust network, it includes error handling based on the "graceful degradation" paradigm, in which an error only affects the functionality that is close to the error. 10 15 20 25 D) (D 521 504 3 The resource / service is specified and preferably identified with a Global Unique Identifier (GUID). Preferably, said database contains information about all resources used by all clients and also their location.
Uppfinningen hänför sig också till ett kommunikationsnätverk, företrädesvis ett datorbaserat nätverk, t. ex. för att tillhandahålla distribuerad och redundant funktionalitet för omkoppling, styming och samordning av olika kommunikationsprotokoll som sammankopplar externa och / eller interna nätverk. Kommunikationsnätverket innefattar åtminstone en uppsättning serverenheter och medel för klientstationer som sammankopplar serverenheterna.The invention also relates to a communication network, preferably a computer-based network, e.g. to provide distributed and redundant functionality for switching, controlling and coordinating different communication protocols that interconnect external and / or internal networks. The communication network includes at least one set of server units and means for client stations that interconnect the server units.
Kommunikationsnätverket innefattar dessutom ett arrangemang för sändning och mottagning av meddelanden. En klient ordnas för att sända ett meddelande för åtkomst av åtminstone en server för att utföra olika typer av händelser. Varje server är ordnad för att kommunicera med en annan server med hjälp av meddelanden från server till server. Klientmeddelandet sätter igång en transaktion mellan servrama och nämnda transaktion åstadkommer dessutom åtminstone en händelse i åtminstone en server, där information om denna händelse lagras åtminstone i nämnda meddelanden från server till server. Företrädesvis innefattar nämnda händelse en tilldelning av en tjänst och / eller en resurs. Meddelandena innefattar begäran om tjänst och / eller resurs och meddelandena innehåller information om kontexten i vilken begäran har gjorts.The communication network also includes an arrangement for sending and receiving messages. A client is arranged to send a message for access by at least one server to perform various types of events. Each server is arranged to communicate with another server using server-to-server messaging. The client message initiates a transaction between the servers and said transaction further causes at least one event in at least one server, where information about this event is stored at least in said messages from server to server. Preferably, said event comprises an assignment of a service and / or a resource. The messages include requests for service and / or resources and the messages contain information about the context in which the request has been made.
Med fördel är varje server ordnad för att skicka klientbegäran vidare mellan sig utan att spara någon information som hänför sig till den aktuella begäran. Varje serverenhet tar emot ett meddelande från en annan serverenhet och vidtar lämpliga åtgärder beroende på meddelandets kontext som innefattas i sj älva meddelandet. En identifiering av händelser och kopplingar, lokalt och/ eller fördelat i nätverket, representeras av motsvarande Globalt Unika Identifikatorer.Advantageously, each server is arranged to forward the client request between them without saving any information relating to the current request. Each server unit receives a message from another server unit and takes appropriate action depending on the context of the message contained in the message itself. An identification of events and connections, locally and / or distributed in the network, is represented by the corresponding Globally Unique Identifiers.
Resursmodulema innefattar åtminstone en ISDN resursmodul, för att hantera ISDN (Integrated Services Digital Network) -protokoll, S-Connect resursmodul, för att hantera analogt operatörsgränssnitt, (S-Connect) DSP resursmodul, för att hantera DSP (Digital Signal Processing) för signalering och sändning och mottagning av meddelanden, och en konferensresursmodul för att hantera konferensanordningar för konferensomkopplin g. I det mest föredragna utiörandet är nätverket ett oinkopplingssystem.The resource modules include at least one ISDN resource module, for managing ISDN (Integrated Services Digital Network) protocol, S-Connect resource module, for managing analogue operator interface, (S-Connect) DSP resource module, for managing DSP (Digital Signal Processing) for signaling and sending and receiving messages, and a conference resource module for managing conference devices for conference switching. In the most preferred embodiment, the network is a disconnection system.
I enlighet med en metod för att utföra en händelse som begärs av en klient i ett kommunikationsnätverk, vilket innefattar servrar som hanterar nämnda händelser, innefattar 10 15 20 25 30 504 4 521 metoden stegen att: överföra ett meddelande till servrama genom att nämnda klient begär nämnda händelse, vilken genererar transaktioner som innefattar meddelanden från server till server mellan nämnda servrar med avseende på händelser som utförs av nämnda servrar, ordna åtminstone nämnda meddelanden från server till server med en tabell, som innefattar information om nämnda transaktioner och att uppdatera tabellen åtminstone med hjälp av varje server som tar emot meddelandena, och att leda meddelandet från server till server till dess att den begärda händelsen har utförts. Dessutom resulterar ett meddelande från server till server i ett antal olika händelser: meddelandet kommer att tas emot och behandlas av en server, varigenom en meddelandealstrande server kommer att ta emot en bekräftelse; om en server misslyckas med att läsa ett meddelande kommer meddelandekön att generera ett avbrott, vilken kommer att hanteras av den server som sände meddelandet; om ett kösystem som tar emot ett meddelande är felaktigt kan meddelandet inte sändas och den sändande servem kommer att underrättas av meddelandekötjänsten, och kommer att fortsätta med en lämplig händelse.According to a method for performing an event requested by a client in a communication network, which comprises servers handling said events, the method comprises the steps of: transmitting a message to the servers by said client requesting said event, which generates transactions comprising messages from server to server between said servers with respect to events performed by said servers, arranging at least said messages from server to server with a table, which includes information about said transactions and updating the table at least with using each server that receives the messages, and to route the message from server to server until the requested event is executed. In addition, a server-to-server message results in a number of different events: the message will be received and processed by a server, whereby a message-generating server will receive an acknowledgment; if a server fails to read a message, the message queue will generate an interrupt, which will be handled by the server that sent the message; if a queuing system receiving a message is faulty, the message cannot be sent and the sending server will be notified by the message queuing service, and will continue with an appropriate event.
Kort beskrivning av ritningarna Den föreliggande uppfinningen kommer som helhet att framstå klarare utifrån kraven och beskrivningen allteftersom denna framskrider i samband med ritningarna, i vilka: Fig. 1 är ett mycket schematiskt blockdiagram som visar huvudelementen i ett nätverk som innefattar ett arrangemang i enlighet med uppfinningen; Fi g. 2 illustrerar schematiskt ett nätverksutförande som innefattar uppfinningen; F ig. 3 är en mer detaljerad men fortfarande schematisk illustration av elementen i nätverksarrangemanget i enlighet med F ig. 2; F ig. 4 illustrerar systemarkitekturen för det utförande som visas i Fig. 2; och Fig. 5 är en schematisk bild av ett exempel på upprättande av en anslutning.Brief Description of the Drawings The present invention as a whole will become more apparent from the claims and the description as it proceeds in connection with the drawings, in which: Fig. 1 is a highly schematic block diagram showing the main elements of a network incorporating an arrangement in accordance with the invention; ; Fig. 2 schematically illustrates a network embodiment embodying the invention; F ig. 3 is a more detailed but still schematic illustration of the elements of the network arrangement in accordance with FIGS. 2; F ig. Fig. 4 illustrates the system architecture of the embodiment shown in Fig. 2; and Fig. 5 is a schematic view of an example of establishing a connection.
Detaljerad beskrivning av ett utförande I enlighet med ett föredraget utförande, som visas i F ig. 1, sänder, i ett komrnunikationsnätwferk 10, företrädesvis en multiklient 11 / multiserver 12 -miljö, en klient (station) 11 som begär en specifik resurs 13 ett meddelande som hänvisar till nämnda specifika resurs, vilken företrädesvis är identifierad med hjälp av en Global Unik Identifikator (GUID). F öreträdesvis hänvisar inte 10 15 20 25 30 521 504 5 begäran till någon specifik server 12 i nätverket. Företrädesvis köas meddelandena kösystemen för meddelanden 14. Kösystemen 14 kommer att beskrivas senare.Detailed Description of an Embodiment According to a preferred embodiment, shown in Figs. 1, in a communication network 10, preferably a multi-client 11 / multiserver 12 environment, a client (station) 11 requesting a specific resource 13 sends a message referring to said specific resource, which is preferably identified by a Global Unique Identifier (GUID). Preferably, the request does not refer to any specific server 12 in the network. Preferably, the messages queue systems for messages 14. Queue systems 14 will be described later.
I enlighet med uppfinningen innefattar, i ett nätverk, företrädesvis ett nätverk som bygger på meddelandeköer, ett meddelande som sänds från en klient till en eller flera servrar en begäran om någon händelse eller tjänst. Företrädesvis innefattar meddelandet information om typen av begäran och några parameter eller en uppsättning av data. Klientens begäran resulterar antagligen i ett antal meddelanden från server till server (interservermeddelanden). För att undvika implementering av komplex meddelandehantering i servrarna är åtminstone interservenneddelandena ordnade för att innefatta information om begäran, tilldelade resurser/ tjänster och servertransaktioner som orsakats av den mottagna begäran. Följaktligen behöver servrarna inte innehålla några tabeller över pågående begäran. Alla föreliggande begäran finns antingen i en meddelandekö där de väntar på att bli behandlade eller i en server där de behandlas.In accordance with the invention, in a network, preferably a network based on message queues, a message sent from a client to one or your servers comprises a request for an event or service. Preferably, the message includes information about the type of request and some parameters or a set of data. The client's request probably results in a number of messages from server to server (interserver messages). To avoid implementing complex message management in the servers, at least the inter-server partitions are arranged to include information about the request, allocated resources / services and server transactions caused by the received request. Consequently, the servers do not need to contain any tables of current requests. All present requests are either in a message queue where they are waiting to be processed or in a server where they are being processed.
Ett interservermeddelande urrnynnar i ett antal olika händelser: - meddelandet kommer att tas emot och behandlas av en server, varigenom den alstrande servern kommer att ta emot en bekräftelse; - om en server misslyckas med att läsa ett meddelande kommer meddelandekön att generera en timeout vilken kommer att hanteras av den server som sände meddelandet; - om en mottagande meddelandekö är felaktig kan meddelandet inte sändas och den sändande servern kommer att underrättas av meddelandekötjänsten och fortsätta på annat sätt Följaktligen lagras, när ett meddelande tas emot, all information som behövs för att behandla begäran i meddelandet tillsammans med begäran. Därför behöver ingen information lagras i en extem tabell eller databas.An interserver message hums in a number of different events: - the message will be received and processed by a server, whereby the generating server will receive an acknowledgment; - if a server fails to read a message, the message queue will generate a timeout which will be handled by the server that sent the message; - if a receiving message queue is incorrect, the message can not be sent and the sending server will be notified by the message queue service and continue in another way. Therefore, no information needs to be stored in an external table or database.
I det följ ande kommer uppfinningen att beskrivas mera i detalj i samband med ett icke begränsande utförande vilket används uteslutande för att underlätta en bättre förståelse av uppfinningen. iörandet, som visas schematiskt i Fig. 2, hänför sig till ett Växelsystem (XS) 20, vilket är en datorbaserad kommunikationsplattforrn som tillhandahåller distribuerade och redundanta funktionaliteter för ornkoppling, styrning och samordning av olika kommunikationsprotokoll som sammankopplar de externa (eller interna) nätverken 21. De externa nätverken kan till exempel 10 15 20 25 521 504 a , » f - » 6 vara vilket som helst av PLMN (Private Land Mobile Network), PSDN (Public Switched Data Network) eller PSTN (Public Switched Telephone Network) etc.In the following, the invention will be described in more detail in connection with a non-limiting embodiment which is used exclusively to facilitate a better understanding of the invention. The implementation, shown schematically in Fig. 2, relates to an Exchange System (XS) 20, which is a computer-based communication platform that provides distributed and redundant functionalities for interconnection, control and coordination of various communication protocols that interconnect the external (or internal) networks 21. The external networks may be, for example, any of PLMN (Private Land Mobile Network), PSDN (Public Switched Data Network) or PSTN (Public Switched Telephone Network), etc.
Arkitekturen i ett XS är i huvudsak ett decentraliserat distribuerat system och kan vara baserad på ett varierande antal XS-servrar 12 som står i förbindelse med varandra, till exempel via ett IP- nätverk såsom ett ethernet LAN (Local Area Network) 22.The architecture of an XS is essentially a decentralized distributed system and may be based on a varying number of interconnected XS servers 12, for example via an IP network such as an Ethernet LAN (Local Area Network) 22.
XS-servrarna 12 kan också vara kopplade till varandra via ett nätverk 23 till exempel via MCl- buss för att åstadkomma omkoppling mellan servrarna.The XS servers 12 can also be connected to each other via a network 23, for example via the MCl bus, in order to effect switching between the servers.
XS 20 kan vara konfigurerat för att använda en XS-server med ett varierande antal klienter 11, eller som ett distribuerat multiserversystem som försörjer ett varierande antal klienter, som ska kopplas till ett varierande antal server-servrar.The XS 20 may be configured to use an XS server with a varying number of clients 11, or as a distributed multi-server system that supplies a varying number of clients to be connected to a varying number of server servers.
I systemet hanteras hårdvaru (HW) -gränssnitten som resurser, och kan kapslas in under en generiskt XS resurshanterare för resursgränssnitt inom en XS-server 12. F öreträdesvis kapslas olika, d. v. s. protokollspecifika, resursmoduler in och hanteras som undersystem under resursgränssnittet. XS kan därför utsträckas till att hantera nya typer av resurser, t. ex. kommunikationsprotokoll och nätverk i framtida versioner, till exempel IP-telefoni och protokoll för olika radiosystem.The system handles hardware (HW) interfaces as resources, and can be encapsulated under a generic XS resource manager for resource interfaces within an XS server 12. Preferably, various, i.e. protocol specific, resource modules are encapsulated and managed as subsystems under the resource interface. XS can therefore be extended to handle new types of resources, e.g. communication protocols and networks in future versions, such as IP telephony and protocols for different radio systems.
I huvudsak har XS följande fimktioner - Omkoppling, vilken täcker den generiska protokollsoberoende omkopplingen.Essentially, the XS has the following - mctions - Switching, which covers the generic protocol-independent switching.
- Anropsstyrning, vilken täcker protokollsoberoende funktionalitet för anropsstyrning - Signalering, vilken täcker signaloberoende sändning/ mottagning av ton.- Call control, which covers protocol-independent functionality for call control - Signaling, which covers signal-independent transmission / reception of tones.
- Hantering av meddelanden, vilken täcker oberoende hantering av meddelanden, såsom avspelning / inspelning.- Message handling, which covers independent handling of messages, such as playback / recording.
För att uppnå dessa funktioner finns det några ytterligare funktionsområden: - Uppkoppling av server, vilken hanterar uppkopplingen mellan CL (klienter) och XS.To achieve these functions, there are some additional functional areas: - Connection of server, which handles the connection between CL (clients) and XS.
- Resurshantering, vilken hanterar tilldelning av resurser, t. ex. konferenstilldelning.- Resource management, which handles the allocation of resources, e.g. conference assignment.
- Statusunderrättning, vilken hanterar icke synkron statusinformation från XS och externt nätverk till klienterna. 10 15 20 25 30 521 504 7 - Systemhantering som hanterar konfigurering av XS, övervakning, styrning etc.Status notification, which handles non-synchronous status information from XS and external network to clients. 10 15 20 25 30 521 504 7 - System management that handles XS configuration, monitoring, control, etc.
XS är baserat på implementering av ett antal resursmoduler, såsom: - ISDN resursmodulen, som hanterar ISDN (Integrated Services Digital Network) -protokollet.XS is based on the implementation of a number of resource modules, such as: - the ISDN resource module, which handles the ISDN (Integrated Services Digital Network) protocol.
- S-Connect resursmodulen, vilken hanterar det analoga gränssnittet mot operatören (S- connect).- S-Connect resource module, which handles the analog interface to the operator (S-connect).
- DSP resursmodulen, vilken hanterar DSP (Digital Signal Processing) -hanteringen av signalering och meddelanden.- DSP resource module, which handles DSP (Digital Signal Processing) management of signaling and messages.
- Modul för konferensresurser, vilken hanterar konferensanordningarna för konferensomkoppling.- Module for conference resources, which manages the conference devices for conference switching.
En DSP är en resurs som kan tilldelas / tas bort och användas för att sända och ta emot toner och meddelanden. En konferensresurs tillhandahåller funktionalitet för att sätta upp en uppsättning deltagare, representerade i form av stolar, till ett forum i vilket deltagama är sammankopplade.A DSP is a resource that can be assigned / deleted and used to send and receive tones and messages. A conference resource provides functionality for setting up a set of participants, represented in the form of chairs, into a forum in which the participants are connected.
Uppkopplingen till en konferensresurs kan vara i form av en simplex- eller duplexuppkoppling.The connection to a conference resource can be in the form of a simplex or duplex connection.
XS-kommunikationsenhets (XSCU) -API:n 24 är namnet på åtkomstpunkten för XS-tjänsten.The XS Communication Device (XSCU) API 24 is the name of the access point for the XS service.
Den implementeras företrädesvis som en distribuerad asynkron telegrambaserad klient-API.It is preferably implemented as a distributed asynchronous telegram-based client API.
XSCU API innefattar bland andra konfigurationen för XS-servem och tillåter omkoppling av multinodtyp, belastningsdelning och felhantering, till exempel baserad på paradigmet graceful degradation", i vilket ett fel endast påverkar den funktionalitet som befinner sig nära felet.The XSCU API includes, among other things, the configuration of the XS server and allows multi-node switching, load sharing and error handling, for example based on the "graceful degradation" paradigm, in which an error only affects the functionality that is close to the error.
Klientens logiska (CL) gränssnitt till XS är XSCU API, vilken innefattas i kommunikationsapplikationen. XSCU hanterar kommunikationen mellan klienten och XS och innefattar funktionalitet för att fördela klientens begäran till XS-servrama, genom att hantera information om klientkontext.The client's logical (CL) interface to XS is the XSCU API, which is included in the communication application. XSCU handles the communication between the client and XS and includes functionality to distribute the client's request to the XS servers, by handling client context information.
Fig. 3 visar komponentema som ingåri systemet. hanteringsenhet för begäran (XSRMU) 30, XS omkopplingshanterare (XSSM) 31, XS resurshanterare (XSRM) 32, XS huvudhanterare (XSMM) 33 och resurskoppling 34. I XS-servern 12 tas klientens ll begäran emot av XSRMU 30 som hanterar serverns kommunikationsdel. 10 15 20 25 30 521 504 8 Beroende på typen av begäran kommer XSRMU 30 att fördela begäran till XSSM 31 eller XSRM 32 via en huvudkö som synkroniseras av XSMM 33. Resurskopplingen 34 kopplar samman resurser såsom en ISDN-resurs, DSP-resurs, S-connect-resurs, konferensresurs etc.Fig. 3 shows the components included in the system. request management unit (XSRMU) 30, XS switching manager (XSSM) 31, XS resource manager (XSRM) 32, XS main manager (XSMM) 33 and resource switching 34. In the XS server 12 the client's request is received by the XSRMU 30 communication server as the handler. Depending on the type of request, the XSRMU 30 will distribute the request to the XSSM 31 or XSRM 32 via a main queue synchronized by the XSMM 33. The resource link 34 connects resources such as an ISDN resource, DSP resource, S -connect resource, conference resource etc.
Det funktionella blocket XSRM 32 tillhandahåller funktionalitet för att hantera, synkronisera och samordna hårdvaruresurser. Det tillhandahåller ett generiskt gränssnitt på hög nivå till hårdvaruresurserna. Företrädesvis sammanfattar det hanteringen och konfigureringen av hårdvarukort, som sammankopplar kommunikationsnätverken. Icke synkrona händelser från hårdvarugränssnitten vidarebefordras till XSRMU 30 via huvudkön som synkroniseras av XSMM 33. Denna har till exempel mekanismer för tilldelning, borttagning och översättning av omkopplingsinforrnation som hänför sig till hårdvaruresurser. XSRM 32 tillhandahåller även ett gränssnitt på hög nivå till hårdvaran och är en ensam tj änsteåtkomstpunkt till det externa kommunikationsnätverkets gränssnitt. XSRM 32 hanterar den fysiska omkopplingen och sainordningen av hårdvaran.The XSRM 32 functional block provides functionality for managing, synchronizing, and coordinating hardware resources. It provides a high-level generic interface to the hardware resources. Preferably, it summarizes the handling and configuration of hardware cards, which interconnect the communication networks. Non-synchronous events from the hardware interfaces are transmitted to the XSRMU 30 via the main queue synchronized by the XSMM 33. This has, for example, mechanisms for allocating, removing and translating switching information relating to hardware resources. XSRM 32 also provides a high-level interface to the hardware and is a single service access point to the external communications network interface. XSRM 32 handles the physical switching and arrangement of the hardware.
XSSM 31 hanterar resurserna inom en logisk nivå. Den hanterar relationerna mellan resurserna och använder XSRM 32 för att komma åt dem. Den använder även XSRMU 30 för att Vidarebefordra begäran till andra XS-servrar i systemet beträffande hantering av resurser utanför en lokal maskin. Omkopplingen av enkelnodtyp löses enbart genom att använda den lokala XSRM.XSSM 31 manages resources within a logical level. It manages the relationships between the resources and uses XSRM 32 to access them. It also uses XSRMU 30 to Forward requests to other XS servers in the system for managing resources outside a local machine. The single-node type switching is solved only by using the local XSRM.
XSMM 33 är det huvudsakliga funktionella blocket i XS. Den innehåller huvudapplikationen och den startar och synkroniserar andra enheter i systemet, till exempel genom att hantera en multitrådbaserad arkitektur. Den tillhandahåller funktionalitet för att för att sända och ta emot meddelanden mellan de olika funktionella blocken, t. ex. genom att styra en trådsäkert synkroniserad kö, och anropar varje funktionellt blocks begäran i den ordning som köposterna tas emot.XSMM 33 is the main functional block in XS. It contains the main application and it starts and synchronizes other devices in the system, for example by managing a multi-thread-based architecture. It provides functionality to send and receive messages between the various functional blocks, e.g. by controlling a wire-synchronized synchronized queue, and invokes the request of each functional block in the order in which the queue items are received.
De huvudsakliga funktionema hos XS SM 31 är att: 0 utföra uppkoppling^r och "tirkopplirig-ar, 0 tilldela, frigöra och återställa specifika resurser, 0 eliminera uppkopplingar som ett resultat av vissa händelser, såsom en yttre blockering. 10 15 20 25 30 », < . i _ .The main functions of the XS SM 31 are to: 0 perform connections and "trip connections", 0 allocate, release and restore specific resources, 0 eliminate connections as a result of certain events, such as an external blocking. », <. I _.
F öreträdesvis använder XSSM resurstabeller för att ytföra sina uppgifter. Begäran från XSRMU 30 sänds till XSSM genom en kö som sköts av XSMM. För att utföra en uppgift, till exempel att göra en uppkoppling, arbetar XS SM 31 och XSRM mycket nära tillsammans. Uppgifterna delas på så sätt att XSSM 31 hanterar den logiska delen av omkopplingen, vilket innebär den delen där information om resurser t. ex. en Busstabell, Kopplingstabell och Konferenstabell måste uppdateras för att tillhandahålla korrekt information om de verkliga fysiska kopplingama. Med andra ord kopplar XSSM 31 logiskt samman två kopplingspunkter, vilka representerar en tillträdespunkt till ett anrop, en konferens, en DSP eller en logisk adress, med varandra (genom en kopplingstabell, företrädesvis ordnad i XSSM 31) och skickar kommandon till XSRM 32 för att åstadkomma den fysiska sammankopplingen.Preferably, XSSM uses resource tables to perform its tasks. The request from XSRMU 30 is sent to XSSM through a queue handled by XSMM. To perform a task, such as making a connection, the XS SM 31 and XSRM work very closely together. The information is divided in such a way that XSSM 31 handles the logical part of the switching, which means the part where information about resources e.g. a Bus Table, Coupling Table and Conference Table must be updated to provide accurate information about the actual physical connections. In other words, XSSM 31 logically connects two access points, which represent an access point to a call, a conference, a DSP or a logical address, to each other (through a connection table, preferably arranged in XSSM 31) and sends commands to XSRM 32 to achieve the physical interconnection.
Den distribuerade omkopplingen använder MCl-bussen för att föra över mediaflöden mellan XS- SCTVIEIITIÉI.The distributed switching uses the MCl bus to transfer media fates between XS-SCTVIEIITIÉI.
F unktionsblocket XSRMU 32 tillhandahåller funktionalitet för att hantera kommunikationen i den distribuerade miljön. Kommunikationsvägama är: 0 kommunikation från XSCU (klient) till XS-server; v kommunikation från XS-server till XSCU (klient); och 0 kommunikation från XS-server till XS-server.The XSRMU 32 function block provides functionality for managing communication in the distributed environment. The communication paths are: 0 communication from XSCU (client) to XS server; v communication from XS server to XSCU (client); and 0 communication from XS server to XS server.
Omkopplingen av multinodtyp tillhandahålles i en trestegsprocess: - det första steget innefattar tilldelning av en MCl-bussresurs och sändning av ett XS- servernieddelande (XSMSG) till den andra servern med begäran om exekvering av en tjänst tillsammans med all information som den andra servern behöver för att fullgöra sin del av omkopplingen. XSMSG är gränssnittsmeddelandet från en XS-server till en annan, vilket innehåller data om begäran och underrättelser från en XS-server till en annan.The multi-node switching is provided in a three-step process: the first step involves allocating an MCl bus resource and sending an XS server allocation (XSMSG) to the second server requesting execution of a service along with all the information the other server needs for to fulfill its part of the switch. XSMSG is the interface message from one XS server to another, which contains data about requests and notifications from one XS server to another.
- Det andra steget är när en annan server tar emot ett XSMSG. Vid mottagandet kommer den att koppla inmatningen från MCl-bussen till utmatningen på den relevanta kopplingspunkten via den interna telefonibussen. När detta är gjort kommer den att sända ett XSMSG som irinehåller ett meddclmde om tj änstexekvering tillsammans med all information som behövs av den alstrande servern för att fullgöra den andra delen av omkopplingen. 10 15 20 25 30 521 504 10 - Det tredje steget är när den alstrande servern tar emot meddelandet om tj änstexekvering.- The second step is when another server receives an XSMSG. Upon receipt, it will connect the input from the MCl bus to the output at the relevant connection point via the internal telephony bus. When done, it will send an XSMSG containing a service execution message along with all the information needed by the generating server to complete the second part of the switch. 10 15 20 25 30 521 504 10 - The third step is when the generating server receives the service execution message.
Den kommer då att koppla samman kopplingspunkten för inmatning till utmatningen på MCl-bussen via den interna telefonibussen. Om detta skulle misslyckas kommer den att sända en avrullningsbegäran till den andra servern och be den att ta bort den tidigare kopplingen.It will then connect the input connection point to the output on the MCl bus via the internal telephony bus. Should this fail, it will send a roll-off request to the other server and ask it to remove the previous connection.
XS består dessutom av en uppsättning meddelandeköer och köhanterare. XSCU är den del som exponerar XS API för klient och kommunicerar med XS-servrama. Varje CL 35 kommunicerar med XS genom XSCU-gränssnittet med användande av XS API 24.XS also consists of a set of message queues and queue managers. XSCU is the part that exposes the XS API to the client and communicates with the XS servers. Each CL 35 communicates with the XS through the XSCU interface using the XS API 24.
I huvudsak har varje exempel på XSCU information om i stort sett alla resurser som används av alla CL och dessutom deras lokalisering (koppling till en viss XS-server eller servrar). XSCU tar emot information från varje XS-server när en resurs påbörjas eller tas bort. Med ledning av nämnda information kan begäran ledas via den XS-server som lämpar sig bäst för att hantera en begäran Denna information är också användbar när en XS-server inte fungerar eller inte kan nås. I det följande kallas denna infonnation XSCU systemkontext (XSSC).Essentially, each instance of XSCU has information about virtually all resources used by all CLs and also their location (connection to a particular XS server or servers). XSCU receives information from each XS server when a resource is started or deleted. Based on the said information, the request can be managed via the XS server that is best suited to handle a request. This information is also useful when an XS server is not working or cannot be accessed. In the following, this information is called XSCU System Context (XSSC).
Begäran som skapar nya resurser (till exempel Gör Anrop, Tilldela Konferens eller Tilldela DSP) arrangeras i en slumpmässigt utvald serverkö för att fördela arbetsbelastningen över XS-servrama.Requests that create new resources (for example, Make Calls, Assign Conference, or Assign DSP) are arranged in a randomly selected server queue to distribute the workload across the XS servers.
Om denna begäran innehåller en "pekare" kommer begäran att föras över till en server som pekats ut av pekaren. Begäran som hänför sig till hela XS (t. ex. kommandon som Utloggning, Äterställning, Avstängning) sänds till alla servrar.If this request contains a "pointer", the request will be transferred to a server pointed out by the pointer. Requests that relate to the entire XS (eg commands such as Logout, Reset, Shutdown) are sent to all servers.
XS-servem sänder underrättelser till den XSCU-enhet som har sänt begäran. Om en resurs skapas eller tas bort sänds en underrättelse med resursinformation till alla andra XSCU for att uppdatera deras XSSC. Vissa underrättelser kan även sändas till CL.The XS server sends notifications to the requesting XSCU device. If a resource is created or deleted, a resource information notification is sent to all other XSCUs to update their XSSC. Some notifications can also be sent to CL.
Om begäran är en operation på två resurser som finns på olika ställen (apparater), kommer XSCU att sända begäran till en av dessa och fylla i den logiska adressen för den andra resursen från dess XSSC ( om den representeras av an GULD och inte red^n ^v en logisk adress). De logiska adresserna identifierar en kopplingspunkt på låg nivå inom XS-servem, vilken tillåter en inrnatningskoppling och åtskilliga utmatningskopplingar. 10 15 20 25 30 521 504 ll Företrädesvis innefattar varje XSCU-enhet information om i huvudsak alla resurserna och till vilken XS-server de är knutna. Informationen innefattar alla anrop, kopplingar, konferenser, DSP som skapats av vilken som helst CL och deras identitet (GUID), vilket uttryckligen pekar ut på vilket ställe de finns. Varje XS CU har gränssnitt mot sin klient och mot XS-servrama. Vissa meddelanden rör sig transparent genom XSCU och vissa är intema XS-server / XSCU -meddelanden som inte når CL.If the request is an operation on two resources located in different places (devices), XSCU will send the request to one of these and fill in the logical address of the other resource from its XSSC (if it is represented by a GOLD and not red ^ n ^ v a logical address). The logical addresses identify a low level access point within the XS server, which allows an input connection and multiple output connections. Preferably, each XSCU unit includes information on substantially all of the resources and to which XS server they are attached. The information includes all calls, connections, conferences, DSPs created by any CL and their identity (GUID), which explicitly points out where they are. Each XS CU has an interface to its client and to the XS servers. Some messages move transparently through XSCU and some are internal XS server / XSCU messages that do not reach CL.
Klientbegäran på en resurs i form av ett XS-meddelande sänds från CL till XSCU. F öreträdesvis innehåller XS-meddelandena inte någon information om den server som meddelandet skall sändas till. Detta sköts i praktiken av API. När klienten sänder ett meddelande kommer XSCU att söka upp vilken som helst resursreferens i XSSC för att ta reda på i vilken server resurserna finns. Om begäran innefattar resurser i olika servrar kommer information att läggas till i XS-meddelandet, vilken hjälper den mottagande servern att hantera begäran. Meddelandena till XSCU som tas emot från XS-servem analyseras och XSSC uppdateras i enlighet med analysresultatet.The client request for a resource in the form of an XS message is sent from CL to XSCU. Preferably, the XS messages do not contain any information about the server to which the message is to be sent. This is handled in practice by the API. When the client sends a message, XSCU will look up any resource reference in XSSC to find out in which server the resources are located. If the request includes resources in different servers, information will be added to the XS message, which will help the receiving server handle the request. The messages to the XSCU received from the XS server are analyzed and the XSSC is updated according to the analysis result.
XSSC innehåller med fördel tabeller för samtliga resurser och metoder för att lägga till, ta bort och hitta resurser.XSSC advantageously contains tables for all resources and methods for adding, deleting and finding resources.
XSCU tillhandahåller funktioner för att hantera gränssnittet mot systemet av XS-servrar genom en distribuerad API. Denna funktionalitet bygger på hantering av olika meddelandeinstanser, XS- meddelande vilket är, som beskrivs ovan, det XSCU API meddelande som innehåller data om begäran från CL till XS eller underrättelsedata från XS till CL. XS-meddelandet innehåller i huvudsak alla API. Denna hantering innefattar instansiering, sändning och mottagning av XS- meddelandeinstanser. XSCU kan vara den fullständiga API och den enda åtkomstpunkten för tjänster till XS. Det allmänna API-begreppet är en asynkron telegrambaserad lösning. Den fysiska ltårdvarukonfigurationen för servem är inte synlig för klienten. Systemet Microsoft® Message Queue (MSMQ) är till exempel inte synligt för nätverkskommunikation. Uppenbarligen kan andra system för nätverkskommunikation användas.XSCU provides features for managing the interface to the system of XS servers through a distributed API. This functionality is based on the handling of various message instances, XS message which is, as described above, the XSCU API message which contains data on request from CL to XS or notification data from XS to CL. The XS message contains essentially all APIs. This handling includes instantiation, sending and receiving XS message instances. XSCU can be the complete API and the only access point for services to XS. The general API concept is an asynchronous telegram-based solution. The physical hardware configuration of the server is not visible to the client. For example, the Microsoft® Message Queue (MSMQ) system is not visible for network communication. Obviously, other network communication systems can be used.
Strukturen -ör XSCU API delas in i nera logiska delar, till exempel: - Serverkoppling: hanterar systemrelaterad funktionalitet, t. ex. kopplingen mellan CL och XS-serversystemet; - Omkoppling: hanterar kopplingar mellan XS-kopplingspunkter inom XS-servrarna; 10 15 20 25 30 12 - Resurs: hanterar tilldelning och borttagning av specificerade resurser inom XS-servrarna; - Anropskontroll: hanterar funktioner för styrning av anrop inom XS-servrarna; - Status: asynkront sända meddelanden från XS till CL som informerar den berörda CL om förändringar i status; - Signalering: sändning av meddelanden och mottagning av signaler med användande av en DSP; och - Meddelande: till exempel att spela upp och spela in meddelanden med hjälp av en DSP.The structure of the XSCU API is divided into lower logical parts, for example: - Server connection: handles system-related functionality, e.g. the connection between the CL and the XS server system; - Switching: manages connections between XS access points within the XS servers; 10 15 20 25 30 12 - Resource: handles the allocation and removal of specified resources within the XS servers; - Call control: manages call control functions within the XS servers; - Status: asynchronously sent messages from XS to CL informing the concerned CL about changes in status; - Signaling: sending messages and receiving signals using a DSP; and - Message: for example, to play and record messages using a DSP.
Meddelanden kan läsas, tas bort och även delas mellan konkurrerande CL.Messages can be read, deleted and even shared between competing CLs.
XS innefattar även ett gränssnitt 36 mot yttre nätverk, t. ex PSTN, vilka till exempel använder ISDN-protokollet. Gränssnittet för ISDN implementeras i resursmodulen för ISDN i XS-servern.XS also includes an interface 36 to external networks, such as PSTN, which use the ISDN protocol, for example. The ISDN interface is implemented in the ISDN resource module in the XS server.
Systemet kan också innefatta gränssnitt mot telefonioperatörer som bygger på ett analogt telefongränssnitt. Detta gränssnitt kallas även S-Connect, och det implementeras i resursmodulen för S-Connect i XS-servem.The system may also include interfaces to telephony operators based on an analogue telephone interface. This interface is also called S-Connect, and it is implemented in the S-Connect resource module in the XS server.
XS tillhandahåller grundläggande kontakt mellan klient och server via inloggning / utloggning, där varje klient har sin egen specificerade ID (CLID).XS provides basic contact between client and server via login / logout, where each client has its own specified ID (CLID).
Kommunikationema mellan server och klient, vilken bygger på utväxling av XS-meddelanden delas in i begäran och underrättelser, där begäran representerar meddelandena från CL till XS och underrättelserna representerar meddelandena från XS till CL.The communication between server and client, which is based on the exchange of XS messages, is divided into request and notifications, where the request represents the messages from CL to XS and the notifications represent the messages from XS to CL.
För att erhålla förbindelse till en server måste CL göra en instans av XSCU API som hanterar den asynkrona kommunikationen mellan klienten och XS-servem lokalt eller över ett nätverk, t. ex.To obtain a connection to a server, CL must make an instance of the XSCU API that handles the asynchronous communication between the client and the XS server locally or over a network, e.g.
LAN.LAN.
En begäran om inloggning kommer att leda till att underrättelse tas emot om samtliga inkommande anrop som tas emot av XS, och kommer att göra det möjligt för klienten att sända begäran till XS. Om inloggningen misslyckas kommer ett negativt statusmeddelande att tas emot.A login request will result in notification of all incoming calls received by XS, and will enable the client to send the request to XS. If the login fails, a negative status message will be received.
På grund av att XS kan hantera en situation i vilken en XS-server är ur funktion, vilken kommer att orsaka förlust av resurser och möjligen förlust av icke behandlade begäran, kan XSCU underrätta klienterna om vilka resurser som gått förlorade. 10 15 20 25 30 521 504 13 XS tillhandahåller funktionalitet för att tilldela och ta bort definierade XS-resurser: till exempel Konferens och DSP.Because XS can handle a situation in which an XS server is down, which will cause a loss of resources and possibly a loss of unprocessed requests, XSCU can notify clients of the lost resources. 10 15 20 25 30 521 504 13 XS provides functionality for allocating and deleting defined XS resources: for example Conference and DSP.
För att minimera belastningen på nätverket implementeras mekanismen med "pekare", vilket betyder att resursen kan tilldelas i samma XS-server och samma XS-gränssnittskort som XS- kopplingspunkten till vilken den kommer att kopplas till, under förutsättning att den frivilliga kopplingspunkten för XS är satt i ett meddelande om tilldelning av resurs.To minimize the load on the network, the "pointer" mechanism is implemented, which means that the resource can be allocated in the same XS server and the same XS interface card as the XS access point to which it will be connected, provided that the optional XS access point is put in a resource allocation notice.
E konferensresurs kan tilldelas med ett garanterat (fast eller varierande) antal deltagare. En konferensdeltagare representeras av en XS-kopplingspunkt, vilken kan vara en resurs kopplad via en simplex- eller duplexuppkoppling.E conference resource can be allocated with a guaranteed (fixed or varying) number of participants. A conference participant is represented by an XS access point, which can be a resource connected via a simplex or duplex connection.
En DSP kan samtidigt endast vara antingen en mottagare eller en sändare. En koppling till en DSP kan vara duplex, men man kan endast använda DSP i en riktning i taget.A DSP can at the same time only be either a receiver or a transmitter. A connection to a DSP can be duplex, but you can only use DSP in one direction at a time.
Dessutom tillhandahåller XS funktionalitet för att hantera situationer i vilka en eller många av systemets komponenter ligger nere. Grunden för denna funktionalitet är en fullständigt fördelad och decentraliserad arkitektur. Systemet har förmågan att hantera en situation i vilken en XS- server ligger nere eller inte kan nås. Denna situation kommer att resultera i förlust av resurser och möjligen förlust av icke behandlade begäran. Denna förlust kommer att begränsas till de resurser som är direkt kopplade till den nod som inte fungerar. XS infomierar klienterna om vilka resurser som har förlorats.In addition, XS provides functionality to handle situations in which one or many of the system components are down. The basis for this functionality is a fully distributed and decentralized architecture. The system has the ability to handle a situation in which an XS server is down or unreachable. This situation will result in a loss of resources and possibly a loss of unprocessed requests. This loss will be limited to the resources that are directly connected to the node that is not working. XS informs clients about which resources have been lost.
Arkitekturen för det distribuerad systemet visas närmare i Fig. 4i vilken alla nodelement har kopplats till varandra i en decentraliserad struktur. I ritningen betecknas samma delar med samma referenstecken som i föregående ritningar. AUX hänvisar tilldelar som kan utföras beroende på de olika applikationerna.The architecture of the distributed system is shown in more detail in Fig. 4i, which all node elements have been connected to each other in a decentralized structure. In the drawing, the same parts are denoted by the same reference numerals as in the previous drawings. AUX refers to assignments that can be performed depending on the different applications.
För att åstadkomma denna helt decentraliserade struktur och arkitektur tillämpas paradigmet "fire and forget" i kombination med ett "context" -paradigm i systemets konstruktion. Det '^'r emellertid uppenbart att båda paradigmen kan implementeras separat. 10 15 20 25 30 521 504 14 Paradigmen och systemarkitekturen är meddelandehändelsema mellan XSCU 24 och XS- servrama 12, och internt mellan XS-servrarna 12.To achieve this completely decentralized structure and architecture, the paradigm "fire and forget" is applied in combination with a "context" paradigm in the construction of the system. However, it is obvious that both paradigms can be implemented separately. 10 15 20 25 30 521 504 14 The paradigm and system architecture are the messaging events between the XSCU 24 and the XS servers 12, and internally between the XS servers 12.
Meddelandetrafiken mellan XSCU 24 och XS-servrarna 12 löses genom att XSCU har kontextsinformation som innefattar information om i vilken XS-server de olika resursema finns.The message trait between the XSCU 24 and the XS servers 12 is solved by the XSCU having context information which includes information about in which XS server the various resources are located.
Denna mekanism underlättar fördelningen av klienternas begäran.This mechanism facilitates the distribution of clients' requests.
Meddelandetrafiken mellan XS-servrarna bygger på paradigmet "Fire & Forget", vilket betyder att meddelandet innehåller kontextsinforrnation om begäran. Denna mekanism tillåter XS-servrama att skicka klientbegäran mellan sig utan att spara någon information som hänför sig till den faktiska begäran. XS-servern hämtar ett meddelande från en annan XS-server och vidtar lämpliga åtgärder beroende på detta meddelandekontext som är innefattat i själva meddelandet.The message traffic between the XS servers is based on the "Fire & Forget" paradigm, which means that the message contains contextual request information. This mechanism allows the XS servers to send the client request between them without saving any information relating to the actual request. The XS server retrieves a message from another XS server and takes appropriate action depending on this message context contained in the message itself.
En identifiering av resurser och kopplingar, lokala och distribuerade, i XS-miljön krävs. Därför representeras varje resurs t. ex. ett anrop, konferensanordning eller en DSP, och varje koppling, som representerar förhållandet mellan resurserna av en GUID.An identification of resources and connections, local and distributed, in the XS environment is required. Therefore, each resource is represented e.g. a call, conference device or DSP, and each connection, which represents the relationship between the resources of a GUID.
I ett utförande hanterar XSSM 30 även konferenstilldelning. Om XS-servem inte har några lediga resurser för konferens tillgängliga, kommer den att vidarebefordra begäran till nästa XS-server i systemet. "Nästa" server väljs ut av den som inte läst meddelandet från sin kö. Denna process kommer att upphöra när vilken som helst XS-server tar hand om begäran eller om det inte finns någon XS-server kvar att sända till (som inte hat läst meddelandet från sin egen kö). Om det inte finns några resurser för konferens lediga i hela systemet kommer den sista servern att sända ett meddelande "misslyckades" till den begärande CL.In one embodiment, the XSSM 30 also handles conference assignment. If the XS server does not have any available conference resources available, it will forward the request to the next XS server in the system. The "next" server is selected by the person who did not read the message from their queue. This process will stop when any XS server takes care of the request or if there is no XS server left to send to (who has not read the message from their own queue). If there are no conference free resources in the entire system, the last server will send a "failed" message to the requesting CL.
I allmänhet upprättas kopplingen genom följande process: - CL gör en begäran om XS-koppling via XSCU, vilken vidarebefordrar den till den lämpliga XS-servem.In general, the connection is established by the following process: - CL makes a request for XS connection via XSCU, which forwards it to the appropriate XS server.
- XS-servem gör en lokal tilldelning av en resurs, och överför begäran inklusive en ímnatningsadress och resursadress till nästa berörda .tS=server.- The XS server makes a local allocation of a resource, and transmits the request including a feed address and resource address to the next affected .tS = server.
- Denna XS-server utför den lokala omkopplingen och överför begäran i form av en underrättelse, inklusive en utmatningsadress, tillbaka till den första XS-servern. 10 15 20 25 30 521 504 15 - - ; , , .- This XS server performs the local switching and transmits the request in the form of a notification, including an output address, back to the first XS server. 10 15 20 25 30 521 504 15 - -; ,,.
- Den första XS-servern utför nu den lokala omkopplingen och sänder en underrättelse till CL via XSCU.- The first XS server now performs the local switching and sends a notification to CL via XSCU.
Med hänvisning tillbaka till Fig. 1 tillhandahåller en köhanterare for meddelanden funktionalitet för att sända och ta emot meddelanden till / från meddelandeköer och för att hitta, skapa och förstöra meddelandeköer. En köhanterare för meddelanden har sin egen kö i vilken alla inkommande meddelanden läses. Alla utgående meddelanden sänds till andra köer, som är associerade med köhanterare för meddelanden. En köhanterare för meddelanden kan användas av en klient eller av en server i XS. Klientanvändama är då XSCU och serveranvändama är XS- begäranshanterama.Referring back to Fig. 1, a message queue manager provides functionality for sending and receiving messages to / from message queues and for finding, creating and destroying message queues. A queue manager for messages has its own queue in which all incoming messages are read. All outgoing messages are sent to other queues, which are associated with queue manager for messages. A queue manager for messages can be used by a client or by a server in XS. The client users are then XSCU and the server users are the XS request handlers.
Köema 14 delas in i två kategorier, serverköer och klientköer, och härigenom tillhandahålls ett enkelt sätt att avgöra om köema är associerade med en server eller med en klient.The queues 14 are divided into two categories, server queues and client queues, thereby providing an easy way to determine if the queues are associated with a server or with a client.
Följande icke begränsande exempel, lästa tillsammans med ovan beskrivna ritningar och Fig. 5, beskriver tilldelning av resurser och kopplingssteg, och ges för att underlätta en bättre förståelse av uppfinningen: I det första exemplet begär CL1 att få göra en koppling mellan två punkter A och B i XS- systemet. Kopplingen kan vara mellan två abonnenter (A, B) eller mellan en abonnent och en konferensresurs eller vilken som helst annan resurs. Nämnda två punkter kan vara i samma server eller i två olika servrar (som i det föreliggande fallet).The following non-limiting examples, read in conjunction with the drawings described above and Fig. 5, describe the allocation of resources and connection steps, and are provided to facilitate a better understanding of the invention: In the first example, CL1 requests to make a connection between two points A and B in the XS system. The connection can be between two subscribers (A, B) or between a subscriber and a conference resource or any other resource. The two points may be in the same server or in two different servers (as in the present case).
Om de är i samma server kopplas de av XSSM med hjälp av kommandon i XSRM, och om de befinner sig i olika servrar används interserverkopplingen. XSSM skapar en ny koppling, fyller den med detaljerad information om de två punkterna och lagrar den i en kopplingstabell i XSSM och skickar en underrättelse till CLl.If they are in the same server, they are disconnected from XSSM using commands in XSRM, and if they are on different servers, the interser link is used. XSSM creates a new connection, fills it with detailed information about the two points and stores it in a connection table in XSSM and sends a notification to CL1.
Om punktema befinner sig i olika servrar kommer XSSM i den mottagande servem att tilldela en MCl-bussresurs, skapa ett XSMSG för Server som Utför Tj änsteBegäran, förse det med relevant information och sända det till den andra servem (server 2) som är inblandad i kopplingen och be den att göra sin del av uppkopplingen. 10 15 20 25 30 521 504 16 = - v » . , När meddelandet tas emot kommer XSSM i den andra servern till exempel att tilldela en intern bussresurs från kort till kort, göra en koppling från intembussen till dess punkt med hjälp av XSRM, göra en koppling från den tidigare tilldelade MCl-bussen till den interna bussen med hjälp av XSRM, tilldela MCl-buss, t. ex. för en duplexkoppling, om så krävs, göra kopplingen, skapa en (eller två när det gäller duplex) ny koppling, förse denna med detaljerad information om de två ändpunkterna, lagra den i kopplingstabellen, fylla XSMSG med ny information och slutligen sända tillbaks det till den alstrande servern, d. v. s. server l.If the points are located in different servers, XSSM in the receiving server will allocate an MCl bus resource, create an XSMSG for Server Executing the Service Request, provide it with relevant information and send it to the other server (server 2) involved in the connection and ask it to do its part of the connection. 10 15 20 25 30 521 504 16 = - v ». When the message is received, the XSSM in the other server will, for example, allocate an internal bus resource from card to card, make a connection from the internal bus to its point using XSRM, make a connection from the previously assigned MCl bus to the internal bus using XSRM, assign MCl bus, e.g. for a duplex connector, if required, make the connector, create one (or two for duplex) new connector, provide it with detailed information about the two endpoints, store it in the connector table, fill XSMSG with new information and finally send it back to the generating server, i.e. server l.
När underrättelsemeddelandet tas emot med status Utfört, kommer XSSM att utföra den andra halvan av kopplingen och sända en underrättelse till CLl. Om underrättelsemeddelandet har status Misslyckades kommer en underrättelse att sändas till CL med misslyckandestatus.When the notification message is received with the status Completed, XSSM will execute the other half of the connection and send a notification to CL1. If the notification message has the status Failed, a notification will be sent to CL with failure status.
Om denna server misslyckas med sin hälft av kopplingen kommer en avrullningsbegäran att sändas till den andra servern om att ta bort sin halva av kopplingen.If this server fails with one half of the connection, a rollout request will be sent to the other server to remove its half of the connection.
Vid urkoppling kopplar XSSM, om punkterna är i samma server, ur kopplingen med hjälp av XSRM, frigör intema resurser som eventuellt används, tar bort kopplingen från kopplingstabellen, och skickar en underrättelse till klienten. Om de befinner sig på olika servrar kommer XSSM att skapa ett XSMSG, fylla det med relevant information och sända det till den andra servern som är inblandad i kopplingen och begära at den kopplar ur sin halva av kopplingen.When disconnected, XSSM, if the points are in the same server, disconnects the connection using XSRM, frees up any internal resources that may be used, removes the connection from the connection table, and sends a notification to the client. If they are on different servers, XSSM will create an XSMSG, fill it with relevant information and send it to the other server involved in the connection and request that it disconnect half of the connection.
När begäran tas emot kommer XSSM i den andra servern att ta bort sin halva av kopplingen, frigöra inre och MCI-resurser, ta bort kopplingen från kopplingstabellen och fylla XSMSG med nu infonnation och sätta typen till underrättelsemeddelande och slutligen sända servenneddelandet tillbaka till den alstrande servern.When the request is received, XSSM in the other server will remove its half of the connection, free up internal and MCI resources, remove the connection from the connection table and fill XSMSG with now information and set the type to notification message and finally send the server partition back to the generating server .
Vid mottagande av underrättelsemeddelandet med status Utfört kommer XS SM att koppla ur den andra halvan av kopplingen och skicka en underrättelse till CL. Om underrättelsemeddelandet har status Misslyckades kommer en underrättelse att sändas till CL med misslyckandestatus.Upon receipt of the notification message with the status Completed, XS SM will disconnect the other half of the connection and send a notification to CL. If the notification message has the status Failed, a notification will be sent to CL with failure status.
Om denna server skulle misslyckas med sin halva av kopplingen kommer ingen avrullningsförfrågan att sändas till den andra servern om att återställa sin halva av kopplingen. 10 15 20 25 30 521 504 17 - u » . . , K , I det följande exemplet beskrivs en konferenskoppling.Should this server fail with its half of the connection, no unrolling request will be sent to the other server to restore its half of the connection. 10 15 20 25 30 521 504 17 - u ». . , K, The following example describes a conference connection.
För att skapa en konferens måste CL först tilldela en konferensresurs. Med konferenstilldelning menas att XS-servern försäkrar klienten att en konferensresurs är reserverad vilken kan hantera ett antal deltagare. Formen för deltagande kan vara simplex eller duplex.To create a conference, CL must first allocate a conference resource. By conference assignment is meant that the XS server assures the client that a conference resource is reserved which can handle a number of participants. The form of participation can be simplex or duplex.
CL ger en unik identifierare tillsammans med information om det maximala antalet deltagare i sin begäran.CL provides a unique identifier along with information on the maximum number of participants in its request.
När XSSM ta emot en begäran om tilldelning av konferens kommer den att leta efter en ledig konferens i sin konferenstabell. Om en ledig konferens hittas, kommer den att tilldelas och en underrättelse om tilldelad konferens sänds till CL.When XSSM receives a conference assignment request, it will look for a free conference in its conference table. If a vacant conference is found, it will be assigned and a notification of assigned conference will be sent to CL.
Om XSSM inte kan hitta några lediga konferenser i servern kommer den att skapa ett XSMSG av typen tj änstebegäran, fylla det med relevant information och sända det till nästa server och be denna att försöka tilldela en konferens.If XSSM cannot find any free conferences in the server, it will create an XSMSG of the service request type, fill it with relevant information and send it to the next server and ask it to try to assign a conference.
När XSSM misslyckas med att sända XSMSG till andra servrar betyder det antingen att servern är ensam i systemet eller att alla andra servrar redan har tagit emot detta meddelande och inte lyckats utföra begäran. I detta fall kommer en underrättelse om konferenstilldelning att sändas till CL tillsammans med en misslyckandestatus, för att informera klienten om att inga lediga konferenser fanns tillgängliga.When XSSM fails to send XSMSG to other servers, it either means that the server is alone in the system or that all other servers have already received this message and failed to execute the request. In this case, a conference assignment notification will be sent to CL along with a failure status, to inform the client that no free conferences were available.
Vid mottagandet av tj änstebegäran försöker XSSM att tilldela en konferens. Om operationen lyckas kommer en underrättelse att sändas till CL.Upon receipt of the service request, XSSM attempts to assign a conference. If the operation is successful, a notification will be sent to CL.
Om CL begär att få lägga till en kopplings punkt till en konferens kan kopplingspunkten representeras av en logisk adress, eller i de fall då en resurs är inblandad som en GUID. CL kan även ge en ny kopplingsidentitet för kopplingen mellan abonnenten och konferensen.If CL requests to add an access point to a conference, the access point can be represented by a logical address, or in cases where a resource is involved as a GUID. CL can also provide a new connection identity for the connection between the subscriber and the conference.
Klientbegäran kommer alltid att sändas till den server på. vilken konierensen är tilldelad. XSSM undersöker det mottagna XSMSG för att ta reda på om kopplingspunkten som vill bli kopplad till konferensen finns i en annan server. Om så inte är fallet försöker XSSM att hitta en tom stol i konferensen. Om en tom stol hittas kommer abonnenten att kopplas till denna stol. Om 10 15 521 504 18 .. i = ef ; s a kopplingen lyckades sänds en underrättelse till CL. Om kopplingspunkten är i en annan server kommer XSSM att skapa ett XSMSG av typen Tjänsteförfrågan, fylla detta med relevant information och sända det till den andra servem och be denna att koppla abonnenten till MCl- bussen.The client request will always be sent to the server on. which the concierge is assigned. XSSM examines the received XSMSG to find out if the access point that wants to be connected to the conference is on another server. If not, XSSM will try to find an empty chair in the conference. If an empty chair is found, the subscriber will be connected to this chair. Om 10 15 521 504 18 .. i = ef; If the connection was successful, a notification is sent to CL. If the connection point is in another server, XSSM will create an XSMSG of the Service Request type, fill it with relevant information and send it to the other server and ask it to connect the subscriber to the MCl bus.
För att frigöra en konferens gör CL en begäran om att frigöra en tilldelad konferens. XS- meddelandet som sänds från CL-klienten till XS innehåller information om klientens identitet och konferensens identitet. XSSM kontrollerar att konferensen inte har några deltagare kopplade till sig. Om så är fallet frigörs konferensen (en statusflagga för konferensen ändras till ledig).To release a conference, CL makes a request to release an assigned conference. The XS message sent from the CL client to XS contains information about the client's identity and the conference identity. XSSM checks that the conference has no participants connected. If so, the conference is released (a status ga agga for the conference is changed to free).
Uppenbarligen är uppfinningen inte begränsad till det ovan beskrivna nätverksarrangemanget, utan vilket som helst nätverk, såsom datomätverk, (mobila) telekommunikationsnätverk etc. kan utnyttja fördelarna i uppfinningen.Obviously, the invention is not limited to the network arrangement described above, but any network, such as data networks, (mobile) telecommunication networks, etc. can utilize the advantages of the invention.
Uppfinningen är inte begränsad till det visade utförandet, utan kan varieras på ett antal olika sätt utan att avvika från omfattningen av de bifogade kraven, och arrangemanget och metoden kan utföras på olika sätt beroende på tillämpning, funktionella enheter, behov och krav etc.The invention is not limited to the embodiment shown, but can be varied in a number of different ways without departing from the scope of the appended claims, and the arrangement and method may be performed in various ways depending on application, functional units, needs and requirements, etc.
Claims (1)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9804189A SE521504C2 (en) | 1998-12-01 | 1998-12-01 | Arrangement and method in a network where transactions create events stored in interserver messages |
PCT/SE1999/002241 WO2000033154A1 (en) | 1998-12-01 | 1999-12-01 | Method and arrangement relating to message handling in communications networks |
AU20154/00A AU2015400A (en) | 1998-12-01 | 1999-12-01 | Method and arrangement relating to message handling in communications networks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9804189A SE521504C2 (en) | 1998-12-01 | 1998-12-01 | Arrangement and method in a network where transactions create events stored in interserver messages |
Publications (2)
Publication Number | Publication Date |
---|---|
SE9804189D0 SE9804189D0 (en) | 1998-12-01 |
SE521504C2 true SE521504C2 (en) | 2003-11-04 |
Family
ID=20413537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE9804189A SE521504C2 (en) | 1998-12-01 | 1998-12-01 | Arrangement and method in a network where transactions create events stored in interserver messages |
Country Status (3)
Country | Link |
---|---|
AU (1) | AU2015400A (en) |
SE (1) | SE521504C2 (en) |
WO (1) | WO2000033154A1 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5101348A (en) * | 1988-06-23 | 1992-03-31 | International Business Machines Corporation | Method of reducing the amount of information included in topology database update messages in a data communications network |
JP2532148B2 (en) * | 1990-01-19 | 1996-09-11 | 富士通株式会社 | Database management method for intelligent network |
CA2048306A1 (en) * | 1990-10-02 | 1992-04-03 | Steven P. Miller | Distributed configuration profile for computing system |
US5548723A (en) * | 1993-12-17 | 1996-08-20 | Taligent, Inc. | Object-oriented network protocol configuration system utilizing a dynamically configurable protocol stack |
US5796952A (en) * | 1997-03-21 | 1998-08-18 | Dot Com Development, Inc. | Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database |
-
1998
- 1998-12-01 SE SE9804189A patent/SE521504C2/en not_active IP Right Cessation
-
1999
- 1999-12-01 AU AU20154/00A patent/AU2015400A/en not_active Abandoned
- 1999-12-01 WO PCT/SE1999/002241 patent/WO2000033154A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
AU2015400A (en) | 2000-06-19 |
WO2000033154A1 (en) | 2000-06-08 |
SE9804189D0 (en) | 1998-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6785380B2 (en) | Network-centric self-administered call center with intelligent mobile agent terminals | |
US5999965A (en) | Automatic call distribution server for computer telephony communications | |
EP1654873B1 (en) | Distributed mcu | |
CA2477868C (en) | Management of queues in contact centres | |
BG100473A (en) | METHOD AND TELECOMMUNICATIONS SWITCH FOR IMPLEMENTATION OF PROGRAMMABLE NETWORK PROTOCOLS AND COMMUNICATION SERVICES | |
US20060069723A1 (en) | System and method for concentration and load-balancing of requests | |
WO2010077431A1 (en) | Distributed audio conferencing architecture with optimum resource utilization and seamless scalability | |
US5960178A (en) | Queue system and method for point-to-point message passing having a separate table for storing message state and identifier of processor assigned to process the message | |
CN107528891B (en) | Websocket-based automatic clustering method and system | |
CN1158041A (en) | Method for distributing checked communication network free agency communication terminal equipment | |
EP0382715A1 (en) | Switch path reservation arrangement. | |
EP1008056A1 (en) | Certified message delivery and queuing in multipoint publish/subscribe communications | |
JPH04100497A (en) | Exchange controlling system using multiprocessor | |
CA2317146C (en) | Multimedia communications resource management control system and method | |
US7088812B1 (en) | Call management implemented using call routing engine | |
US20030204642A1 (en) | System and method for creating a communication connection | |
SE521504C2 (en) | Arrangement and method in a network where transactions create events stored in interserver messages | |
JP4729174B2 (en) | Programming call processing applications in switching systems | |
CN101083543A (en) | Server equipment | |
US7079481B2 (en) | Redundant network controller management system | |
SE523204C2 (en) | Arrangement, communication network and method where a device of clients includes a database of information on resources of servers, controls communication between clients and servers | |
EP1161843B1 (en) | Providing supplementary services by executing a supplementary services layer ssl application in a switching node of an expandable telecommunications system | |
JPH09114759A (en) | Communication function controller | |
EP1213902A2 (en) | Telecommunications call processing | |
US6072799A (en) | Scalable ATM signaling message processing based on per session dispatch |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NUG | Patent has lapsed |