Sygnalizacyjne ABC

Poniższy artykuł oparty jest na wspaniałej pozycji książkowej “System Sygnalizacji nr 7 G. Danielewicz, W.Kabaciński”. Gorąco zachęcam do lektury!!:)

Sterowanie

W wiekszości przypadków jeżeli coś działa dłużej niż okres potrzebny na zaparzenie herbaty to znaczy, że coś nim steruje. Podobnie jest w telekomunukacji, wszystko co dzieje sie w sieci wynika i jest oparte na przesyłaniu i wymianie informacji sterujących pomiędzu jej elementami. Siec telekomunikacyjna jest przykladem sieci zorientowanej polaczeniowo, tzn takiej w ktorej zanim dojdzie do wymiany danych, zarówno w fazie zestawiania jak i rozlaczania połaczenia, realizowana jest wymiana informacji sterujących. Proces za pomocą, którego przekazywane są informacje sterujące nazywamy sygnalizacja.

W telekomunikacji podstawowym zastosowaniem sygnalizacji jest zestawienie połaczenia pomiedzy dwoma abonentami. Nomenklatura nazywa abonenta inicjującego połacznie jako ‘abonenta wywołującego’ a abonenta do którego kierowanie jest połaczenie abonentem wywoływanym. Podobnie w przypadku central (punktów przyłaczenia do sieci) do których dołaczeni są abonenci, centrala wywołująca i wywoływaną. Nawiązanie połaczenia wymaga sygnalizacji pomiedzy:

  • abonentem wywołującym a cetrala wywołującą
  • abonentem wywoływanym a centralą wywoływaną
  • miedzy centrala wywołujacą i wywoływana bezpośrednio lub poprzez inne centrale

Funkcje i rodzaje sygnalizacji

Funkcje i rodzaje sygnalizacji zmieniały się na przestrzeni czasu wraz z rozwojem i ewolucja technologiczną. Niegdyś abonent chcąc nawiązać połaczenie podnosił sluchawke telefoniczną i krecił metalową korbką. To indukowało prąd, który powodował zapelenie się malej lampki w centrali ‘manualnej’ obsługiwanej przez grupę procesorów płci pięknej. Taka pani podłączała swoją sluchawkaę do drugiego konca przewodu i rozpoczynała “obsługę zgłoszenia w centrali”. Dowiadywała się od delikwenta gdzie chce się dodzwonić, po czym odłaczała swoją słuchawkę i za pomocą krótkiego drutu łaczyła dwa odpowiednie przewody.

Z pośród wielu różnych kryteriów za pomocą, których moglibyśmy sklasyfikować sygnalizacje dwa bezwątpienia najważniejsze to funkcje jakie realizuje w danym kontekscie oraz obszar ich zastosowania.

Funkcje

Sygnalizacja spełni trzy zasadnicze funckje:

  • adresową – jest odpowiedzialna za przekazywanie w sieci informacji adresowych dotyczących abonenta wywoływanego. Informacje adresowe zawierają wskazany przez abonenta wywołujacego identyfikator abonenta wywoływanego. Najcześciej identyfikator ten jest podstawą do kierowania sygnalizacji pomiedzy kolejnymi elementami w sieci.
  • nadzorczą – jest odpowiedzialna za kontrolowanie stanu łacza, wykrywa zmiany i przekazuje informacje z nimi związane
  • zarządzającą – jest odpowiedzialna za przesyłanie informacji służacej do zarządzania łączami

Obszar funkcjonowania

Z zależności od obaszaru funkcjonowania syganlizację dzieli się na:

  • abonencką – obejmuje wymianę informacji sterujących pomiędzy centralą i abonentem
  • międzycentrolową – obejmuje wymianę informacji sterujących pomiędzy centralami biorącymi udział w połaczeniu
  • wewnątrz centralowa – jest to wymiana informacji pomiędzy wewnętrznymi komponentami centrali

Zarówno sygnalizacja abonencka jak i między centralowa są objęte przez procesy standaryzacyjne na poziomie międzynarodowym i krajowym, natomiast sygnalizacja wewnątrz centralowa jest niezależnym rozwiązanie danego producenta.

Typy sygnalizacji

Biorąc pod uwagę inne aspekty sygnalizacji związane z jej własciwościami fizycznymi można dokonać ponownej klasyfikacji za pomocą dwóch kryteriów, rodzaju syganału oraz zależności pomiedzy informacjami sterujacymi a danymi.

Rodzaj sygnału

W zależności od tego kryterium możemy wyróżnić dwa rodzaje sygnałów analogowe i cyfrowe.

Sygnały analogowe do przesyłania informacji wykorzystują sygnał analogowy, który może być prądem stałym lub przemiennym o określonej czestotliowśći lub złożonym z większej liczby sygnałów o danych częstotliwościach. W przypadku sygnalizacji prądem stałym informacja może być przesyłana w postaci obecności lub braku prądu oraz poprzez kierunek jego przepływu. W przypadku sygnalizacji prądem przemiennym informacje mogą być przekazywane za pomocą obecności lub braku sygnału oraz jako jego częstotliwość lub kombinacja zbioru częstotliwości. Jeśli częstotliwość sygnalizacji mieści sie w pasmie sygnału danych to jest to tak zwana sygnalizacja w pasmie jeśli nie to poza pasmem.

W przypadku gdy sygnalizacja przyjmuje postać cyfrową jest ona przesyłana w postaci ciągów bitów. O systemach w których informacje przesyłane są w postaci cyfrowej mówimy systemy transmisji cyfrowej. W takich systemach dane transmitowane są w  określonej szczelinie czasowej, w której w zależności od szybkości łacza umieszczane są paczki bitów. Taka przydzieloną szczelinę nazywamy kanałem. Jeśli w ramach takiej szczeliny określona liczba bitów zarezerwowana jest dla informacji sygnalizacyjnych to mamy do czynienia z sygnalizacją w szczelinie natomiast jesli na potrzebę sygnalizacji rezerowana jest niezależna szczelina to mowimy o sygnalizacji poza szczeliną.

Media

Kluczowym aspektem sygnalizacji jest powiązanie pomiędzy przesyłanymi informacjami sygnalizacyjnymi a mediami czyli danymi.  Przesyłanie informacji sygnalizacyjnych może być skojarzone z łaczem danych lub nie. W zależności od charakterystyki skojarzenia sygnalizację dzielimy na skojarzona z kanałem lub we wspólnym kanale. W sygnalizacji skojarzonej z kanałem dla każdego kanału przydzielane są zasoby transmisyjne do przesyłania informacji sterujących związanych wyłacznie z tym łaczem. W sygnalizacji ze wspólnym kanałem zasoby dla informacji sygnalizacyjnych są współdzielone przez wiele kanałów danych. W przypadku gdy mamy do czynienia z całkowitym oddzieleniem sygnalizacji od danych mowimy, że sieć jest podzialona na dwie niezależne warstwy sterująca i transportu danych.

CD..?

W kolejnych postach dokładniej opisze poszczególne formy sygnalizacji ze względu na obszar funckjonowania.

You May Also Like

Private fields and methods are not private in groovy

I used to code in Java before I met groovy. Like most of you, groovy attracted me with many enhancements. This was to my surprise to discover that method visibility in groovy is handled different than Java!

Consider this example:

class Person {
private String name
public String surname

private Person() {}

private String signature() { "${name?.substring(0, 1)}. $surname" }

public String toString() { "I am $name $surname" }
}

How is this class interpreted with Java?

  1. Person has private constructor that cannot be accessed
  2. Field "name" is private and cannot be accessed
  3. Method signature() is private and cannot be accessed

Let's see how groovy interpretes Person:

public static void main(String[] args) {
def person = new Person() // constructor is private - compilation error in Java
println(person.toString())

person.@name = 'Mike' // access name field directly - compilation error in Java
println(person.toString())

person.name = 'John' // there is a setter generated by groovy
println(person.toString())

person.@surname = 'Foo' // access surname field directly
println(person.toString())

person.surname = 'Bar' // access auto-generated setter
println(person.toString())

println(person.signature()) // call private method - compilation error in Java
}

I was really astonished by its output:

I am null null
I am Mike null
I am John null
I am John Foo
I am John Bar
J. Bar

As you can see, groovy does not follow visibility directives at all! It treats them as non-existing. Code compiles and executes fine. It's contrary to Java. In Java this code has several errors, pointed out in comments.

I've searched a bit on this topic and it seems that this behaviour is known since version 1.1 and there is a bug report on that: http://jira.codehaus.org/browse/GROOVY-1875. It is not resolved even with groovy 2 release. As Tim Yates mentioned in this Stackoverflow question: "It's not clear if it is a bug or by design". Groovy treats visibility keywords as a hint for a programmer.

I need to keep that lesson in mind next time I want to make some field or method private!

Confitura 2013 afterthoughts

Confitura, the biggest free-of-charge Java conference in Europe, took place on the 6th of July in Warsaw. TouK's presence was heavy, with 5 separate talks, all chosen in call for papers, no sponsored bullshit. We were sponsoring deck chairs during the...Confitura, the biggest free-of-charge Java conference in Europe, took place on the 6th of July in Warsaw. TouK's presence was heavy, with 5 separate talks, all chosen in call for papers, no sponsored bullshit. We were sponsoring deck chairs during the...