Zakres
W celu wymiany informacji pomiędzy klientem, a serwerem SIRI korzysta ze spójnego zbioru powszechnych protokołów komunikacyjnych. Taki sam wzór wymiany informacji może być stosowany w celu wdrażania różnych specyficznych interfejsów funkcjonalnych jako zbiorów konkretnych rodzajów zawartości wiadomości.
Dwa dobrze znane określone wzory interakcji pomiędzy klientem, a serwerem są stosowane przez SIRI do wymiany danych: Zapytanie/Odpowiedź (Request/Response) oraz Publikacja/Subskrypcja (Publish/Subscribe).
- Zapytanie/Odpowiedź pozwala na wymianę danych ad hoc na żądanie klienta.
- Publikacja/Subskrypcja pozwala na powtarzające się, niesynchronizowane przesyłanie powiadomień i danych do przekazywania informacji o zdarzeniach wykrytych przez usługę czasu rzeczywistego.
Korzystanie z wzoru Publikacja/Subskrypcja wymiany oparte jest na wzorze opisanym w specyfikacji „Powiadomienia o Publikacji-Subskrypcji dla Usług Internetowych (WS-PubSub)”, a gdzie to tylko możliwe SIRI posługuje się tym samym sposobem oddzielenia problemów oraz podobną terminologią dla pojęć Publikacji/Subskrypcji, jak w WS-PubSub. WS-PubSub dzieli część odpowiedzialną za serwer wzoru Publikacji/Subskrypcji na oddzielne, nazwane role i interfejsy (np. Subskrybent, Publikujący, Nadawca Powiadomienia i Odbiorca Powiadomienia): w obecnym procesie implementacji SIRI niektóre z tych interfejsów mogą być łączone, a następnie dostarczane przez daną jednostkę. Pomimo, że SIRI nie jest obecnie implementowana jako usługa internetowa w pełni oparta na WS-PubSub, wykorzystanie infrastruktury WS-PubSub umożliwi to w przyszłości.
Publikacja/Subskrypcja nie będzie na ogół stosowana do wspierania dużych ilości urządzeń przeznaczonych dla użytkownika końcowego. W przypadku dostarczania danych w odpowiedziach (zarówno dla zapytań, jak i subskrypcji), SIRI posługuje się dwoma wzorami wymiany wiadomości stosowanymi w ramach istniejących krajowych systemów:
- „Jednostopniowa” bezpośrednia dostawa, jak w klasycznym modelu klient-usługodawca, oraz normalna publikacja i subskrypcja WS-PubSub;
- „Dwustopniowa” dostawa typu „fetched”, która rozszerza dostarczanie wiadomości do sekwencji par wiadomości, aby najpierw powiadomić klienta, a następnie przesłać dane w momencie gdy jest gotów do ich odbioru.
Każdy wzór dostawy pozwala na różne odstępstwa w celu uskutecznienia procesu implementacji i dostosowania go do różnych środowisk-odbiorców.
Implementacja SIRI może obsługiwać inne metody dostawy, w celu jak najefektywniejszego wykorzystania dostępnych środków obliczeniowych i komunikacyjnych. Metoda dostawy może być uprzednio skonfigurowana oraz stała dla danego procesu implementacji, lub każde zapytanie lub subskrypcja mogą dynamicznie wskazywać na wymaganą przez klienta formę dostawy jako część polityki zapytań, a usługodawca może odmówić odpowiedzi jeśli nie korzysta z wymaganej metody, przesyłając jednocześnie odpowiedni kod błędu.
Wzory interakcji oraz wzory dostawy to niezależne aspekty protokołu SIRI, które mogą zostać użyte w dowolnej kombinacji w różnych procesach implementacji.
Dla danego typu Usługi Funkcjonalnej SIRI (Connection Monitoring, Stop Monitoring, itp.) nośność wiadomości jest niezmienna niezależnie od tego czy informacja wymieniana jest za pomocą wzoru Zapytanie/Odpowiedź czy Publikacja/Subskrypcja oraz od tego czy jest odsyłana za pomocą dostawy bezpośredniej czy dostawy typu „fetched”.
Protokół Publikacja/Subskrypcja SIRI przewiduje określone zachowania mediacyjne w celu ograniczenia ilości powiadomień oraz natężenia sieciowego będącego wynikiem subskrypcji.
Mediacja grupuje różne subskrypcje w jeden lub więcej Kanałów Subskrypcyjnych i ma możliwość zarządzania powiadomieniami i aktualizacjami dla danego zbioru.