Home Location Register, HLR (ang.) – Rejestr Abonentów Macierzystych – element infrastruktury telekomunikacyjnej, używany w sieciach telefonii komórkowej do przechowywania informacji o abonentach, które mogą przydać się podczas zestawiania i obsługi połączeń. Home Location Register przechowuje dane należące tylko do abonentów macierzystej sieci. Poza funkcjonalnością bazodanową, HLR oferuje również aplikacje zawierające logikę biorącą udział w komutacji łączy i pakietów.
Liczba HLR w sieci komórkowej zależy od ilości abonentów. Jeden HLR zawiera zazwyczaj dane dla kilkuset tysięcy do kilku milionów użytkowników. Ze względu na swoją ważną rolę w sieci komórkowej, dla każdego HLR zdefiniowany jest zazwyczaj drugi, redundantny odpowiednik, zawierający te same dane, mogący w razie awarii przejąć obsługę zarejestrowanych w nim użytkowników.
30pxPoniższy opis związany jest z HLR pracującym w sieciach zbudowanych w standardzie GSM i UMTS, niemniej na ogólnym poziomie odzwierciedla też dobrze miejsce w strukturze, rolę i sposób działania tego elementu w innych rodzajach sieci komórkowych.
HLR na tle infrastruktury sieci komórkowej Elementy infrastruktury komunikujące się z HLR 30pxPoniższy rozdział opisuje infrastrukturę sieci komórkowej w kontekście jej współpracy z HLR. W celu zapoznania się z dokładniejszym opisem poszczególnych jej elementów oraz ich współpracy podczas zestawiania połączeń zobacz rozdziały Architektura sieci GSM w artykule GSM i Architektura sieci GPRS w artykule GPRS. Plik:HLR Neighbourhood PL.svg
Wiele elementów infrastruktury telekomunikacyjnej jest przystosowanych do współpracy z HLR podczas zestawiania połączenia. W niektórych przypadkach wygląda to jak komunikacja ze zwykłą bazą danych, która udostępnia żądane informacje. W innych przypadkach HLR decyduje na podstawie dodatkowych ustawień jakie informacje zwrócić, komunikując się przy okazji z innymi elementami sieciowymi. Zdarza się też, że HLR działa jak router przekierowując operacje wysłane z sieci do innych elementów i (opcjonalnie) zwracane odpowiedzi. Mobile Switching Centre (MSC) to cyfrowe centrale telefoniczne zestawiająca połączenia głosowe w sieci komórkowej. MSC połączone jest z Visitor Location Register (VLR), bazą danych zawierającą informacje o abonentach przebywających na kontrolowanym przez nie obszarze. Gateway Mobile Switching Centre (GMSC) to centrale do których kierowane są wszystkie połączenia do abonentów danej sieci (nawet gdy w danym momencie znajdują się w roamingu). Flexible Number Register (FNR) to dodatkowy element w sieci komórkowej, który ułatwia kierowanie zapytań do HLR. SMS Center (SMSC) to element sieci komórkowej wspomagający przesyłanie SMS-ów. Authentication Centre (AuC) to element wspomagający uwierzytelnianie użytkownika włączającego się do sieci. W sieci pracują powiązane ze sobą pary HLR – AuC. Serving GPRS Support Node (SGSN) to element sieci odpowiedzialny za zarządzanie terminalami, które na kontrolowanym przez niego terenie nadają/odbierają dane w trybie transmisji pakietowej (GPRS/EDGE/przesyłanie danych w UMTS). Gateway GPRS Support Node (GGSN) jest elementem sieci działającym jak router łączący sieć komórkową przystosowaną do pakietowego przesyłania danych i zewnętrzną sieć (np. Internet). Service Control Point (SCP) to element platformy sieci inteligentnych na której uruchamiane są usługi dodane.
Przesyłanie informacji pomiędzy HLR a innymi elementami infrastruktury Elementy sieci komórkowej komunikują się ze sobą za pomocą sieci sygnalizacyjnej SS7 (ang. Signaling System 7). Każdy z takich elementów określany jest jako Signalling Point. Dodatkowo w skład sieci sygnalizacyjnej wchodzą Signaling Transfer Points, elementy sieci, które same w sobie nie zawierają funkcjonalności wspomagającej zestawianie połączenia, ale umożliwiają rutowanie operacji SS7 pomiędzy innymi elementami. Jednym z Signalling Pointów jest też HLR, a operacje przesyłane są pomiędzy nim a resztą sieci za pomocą protokołu Mobile Application Part (MAP)Specyfikacja 3GPP TS 29.02 Mobile Application Part (MAP) specification.
Każdy z HLR ma zarezerwowaną pewną pulę numerów IMSI (numery IMSI kart należących do obsługiwanych przez niego abonentów zaczynają się od tych samych cyfr). Gdy znany jest numer IMSI (na przykład gdy użytkownik loguje się do sieci i rejestrowany jest w pewnym MSC/VLR), jego pierwsze cyfry jednoznacznie określają kraj, sieć i odpowiedni HLR.
W niektórych sytuacjach numer IMSI nie jest znany, na przykład gdy zestawiane jest połączenie do jakiegoś abonenta znany jest tylko jego numer MSISDN. Połączenie kierowane jest do GMSC w jego macierzystej sieci, które na bazie tego numeru musi wysłać zapytanie (o lokalizacje abonenta) do odpowiedniego HLR. Najprostszy sposób aby znaleźć odpowiedni HLR, to rozdzielenie obsługiwanych numerów abonentów pomiędzy HLR-y w taki sposób, aby pierwsze cyfry numeru wskazywały na odpowiedni HLR. Nie jest to jednak rozwiązanie zbyt elastyczne, poza tym jest niemożliwe do zrealizowania, gdy w danym kraju operatorzy obsługują funkcjonalność przenoszenia numerów (ang. Mobile Number Portability) i numer z puli operatora może być obsługiwany przez HLR znajdujący się w konkurencyjnej sieci. Jednym z rozwiązań tego problemu jest Flexible Number Register (FNR), element sieci przechowujący informacje o numerach z puli danego operatora. Zapytanie z GMSC może trafić do niego, a FNR przekieruje je do odpowiedniego HLR lub zwróci informacje, że rozmowa powinna być przekierowana do innej sieci (ponieważ właściciel tego numeru przeniósł go do innego operatora).
Redundancja Niezawodność HLR jest bardzo ważna dla prawidłowego funkcjonowania sieci komórkowej. W wyniku awarii tego elementu, abonenci których dane są w nim przechowywane nie mogliby się zalogować do sieci, a do tych którym udałoby się to zrobić przed awarią nie można by zestawić połączenia (ponieważ ich lokalizacja w postaci adresu obsługującego ich MSC, jest przechowywana właśnie w HLR). Aby przeciwdziałać tego typu sytuacjom, dane o abonencie przechowywane są zazwyczaj w dwóch HLR-ach. Jeden bierze bezpośredni udział w obsłudze usług, z których korzysta zarejestrowany w nim abonent, a drugi przechowując te same dane i dokonując co jakiś czas (na przykład raz dziennie) automatycznego uaktualnienia, może w każdej chwili przejąć rolę tego pierwszego. Zazwyczaj stosuje się tak zwaną redundancję geograficzną – para HLR jest fizycznie rozdzielona dużą odległością (np. inne miasta), co zmniejsza ryzyko jednoczesnej awarii obu elementów.
W zależności od dostawcy infrastruktury telekomunikacyjnej i strategii przyjętej przez operatora stosuje się jedno z podanych poniżej rozwiązań: Zdefiniowane są pary HLR-ów, z czego jeden (HLR1) przechowuje dane o swoich abonentach (1) i jednocześnie bierze udział w obsłudze operacji z nimi związanych, a drugi (HLR2) przechowuje dane pierwszego (1') sam nie biorąc udziału w obsłudze połączeń, w każdej chwili może przejąć na siebie rolę tego "aktywnego". Automatycznie, ze zdefiniowaną częstotliwością dane z HLR1 są przesyłane do HLR2 w celu uaktualnienia ich w tym drugim elemencie.Plik:HLRRedundancyFirstCase.svg Zdefiniowane są pary HLR-ów. HLR1 przechowuje dane o swoich abonentach (1) oraz o abonentach drugiego HLR2 (2'), obsługuje jednak zapytania związane tylko ze swoimi abonentami. Analogiczna sytuacja jest w przypadku drugiego z HLR. Każdy z HLR obsługuje liczbę abonentów zdefiniowaną poniżej jego potencjalnych możliwości, tak aby w razie awarii drugiego móc przejąć obsługę zarejestrowanych w nim użytkowników. Automatycznie, ze zdefiniowaną częstotliwością oba HLR-y wymieniają się nawzajem swoimi danymi w celu ich uaktualnienia.Plik:HLRRedundancySecondCase.svg
Budowa HLR Plik:HomeLocationRegister PL.svg
Ze względu na bezpieczeństwo, wydajność i niezawodność systemu, w większości implementacji HLR część komutacyjna wydzielona jest jako niezależny element. W pamięci RAM przechowywane są w niej dane związane z subskrypcjami abonentów, informacje związane z sieciami komórkowymi z którymi operator ma podpisane umowy roamingowe, oraz dane konfiguracyjne związane z działaniem HLR. Działa tam też odpowiednie oprogramowanie, które wykorzystuje te dane do przetwarzania informacji przychodzących z sieci, generowania odpowiedzi na zapytania, lub przesyłania ich do innych elementów sieciowych. Część komutacyjna połączona jest z siecią telekomunikacyjną za pomocą kart SS7, a z pozostałą częścią systemu za pomocą kart IP.
Pozostała część systemu odpowiedzialna jest za operacje wejścia-wyjścia. Umożliwia generowanie kopii bezpieczeństwa danych zawartych w części komutacyjnej, oraz ich późniejsze przechowywanie na dyskach twardych i archiwizację na zewnętrznych mediach. Można za jej pomocą odtwarzać dane w części komutacyjnej (na przykład po jej nieplanowanym restarcie lub w przypadku ładowania dużej ilości danych z innego HLR-a) albo dokonywać automatycznej (lub zarządzonej manualnie) wymiany danych z redundantnym HLR-em. Zaimplementowana jest też tu logika związana z autoryzacją i uwierzytelnianiem pracowników centrum eksploatacji i utrzymania sieci, którzy mogą logując się do tej części systemu zmieniać ustawienia HLR-a oraz dane poszczególnych abonentów przechowywane w części komutacyjnej. Mają do niej również dostęp (niebezpośrednio) pracownicy punktów obsługi klienta dokonując zmian w profilach klientów operatora za pomocą odpowiedniego udostępnionego im w intranecie ograniczonego interfejsu graficznego. Generowane przez nich operacje przesyłane są do systemu wejścia-wyjścia, który zamieni je na komendy dla części komutacyjnej (związane ze zmianami w profilach poszczególnych abonentów).
Przechowywane dane HLR jest elementem wspomagającym zestawianie połączeń w sieciach komórkowych. Aby prawidłowo spełniać swoją rolę, przechowuje informacje o poszczególnych abonentach, o sieciach komórkowych w których mogą oni korzystać z usług wykupionych u swojego macierzystego operatora, oraz dane związane z własną konfiguracją.
Dane użytkowników Każdy z zarejestrowanych abonentów posiada swój profil, w którym przechowywane są informacje związane z wykupionymi usługami oraz z adresami węzłów sieci, na których terenie znajduje się jego terminal. Część danych nie może być zmieniana (np. numer MSISDN abonenta), część może być zmieniana przez operatora (np. subskrypcja dodatkowych usług), lub przez abonenta (np. numer na który przekierowane są połączenia), a część zmienia się dynamicznie (np. adres centrali MSC obsługującej aktualnie abonenta). Poniższa lista opisuje dane przechowywane w profilu abonenta: Informacje identyfikujące abonenta: numer MSISDN i IMSI. Usługi przenoszenia (ang. bearer services) – usługi, które mogą być wykorzystane do zestawienia połączenia od/do abonenta. teleservices (pol. teleusługi) – usługi, które sieć może zaoferować danemu abonentowi, na przykład zestawianie połączenia głosowego, możliwość wykonywania połączeń alarmowych, wysyłanie/odbieranie SMS, wysyłanie faxów. Supplementary services – usługi aktywowane dla danego abonenta, na przykład różne rodzaje przekierowania rozmowy (bezwarunkowe, w przypadku gdy abonent nie odpowiada, gdy jest zajęty, gdy jest poza zasięgiem sieci), zastrzeżenie prezentacji numeru, restrykcje na inicjowanie lub odbieranie połączeń gdy abonent jest w roamingu i inne). Numery związane z przekierowanie rozmów mogą być zdefiniowane niezależnie dla różnych rodzajów przekierowania i dodatkowo dla różnych teleusług (dla rozmowy, sms, faxu itp.). Informacje o usługach bazujących na platformie sieci inteligentnych (np. usługa Prepaid). Informacje związane z technologią CAMEL wykorzystywaną przez aplikacje bazujące na platformie sieci inteligentnych (np. dzięki tej technologii, możliwe jest naliczanie opłat dla użytkowników telefonów w systemie prepaid, którzy inicjują lub odbierają połączenia będąc w roamingu). Adres MSC i VLR kontrolującego połączenia na terenie na którym znajduje się abonent.