Java For Telco
-
Upload
ilkin-balkanay -
Category
Technology
-
view
303 -
download
0
Transcript of Java For Telco
Java for Telco C1 2
İçerik
1. Java Teknolojisi
2. Telekom Uygulamaları
3. Oksijen ARGE’de Java Teknolojisi Kullanılan Ürünler
Java for Telco C1 3
• 2002 Galatasaray Üniversitesi Bilgisayar Müh.
• 2004 İTÜ Elektrik Elektronik Fak. Bilg. Müh. Yüksek Lisans
• 2003 yılından beri Oksijen ARGE’de Akıllı Şebeke Uygulamaları bölümünde çalışıyorum.
hTp://ilkinbalkanay.blogspot.com
hTp://github.com/ilkinulas
hTp://www.twiTer.com/ilkinulas
Hakkımda İlkin Ulaş Balkanay
Java for Telco C1 5
• Basit ve Tanıdık • OO • Mul]-‐threaded
• Sağlam
• Yüksek Performanslı
• «Write Once Run Test Everywhere»
• Geriye Dönük Uyumlu
Java Programlama Dili Genel Özellikler
Java for Telco C1 6
• Basit ve Tanıdık
Java Programlama Dili Genel Özellikler
JAVA for ( int i=0; i<10; i++) { //System.out.println("Merhaba"); }
C++ for (int i=0; i<10; i++) { //cout << "Merhaba \n"; }
Java for Telco C1 7
Java Programlama Dili Genel Özellikler
• Basit ve Tanıdık • OO • Mul]-‐threaded
• Sağlam
• Yüksek Performanslı
• «Write Once Run Test Everywhere»
• Geriye Dönük Uyumlu
Java for Telco C1 8
Java Programlama Dili Genel Özellikler
• Basit ve Tanıdık • OO • MulI-‐threaded (java.util.concurrent)
• Sağlam
• Yüksek Performanslı
• «Write Once Run Test Everywhere»
• Geriye Dönük Uyumlu
Java for Telco C1 9
Java Programlama Dili Genel Özellikler
• Basit ve Tanıdık • OO • Mul]-‐threaded
• Sağlam
• Yüksek Performanslı
• «Write Once Run Test Everywhere»
• Geriye Dönük Uyumlu
Java for Telco C1 10
Java Programlama Dili Genel Özellikler
• Basit ve Tanıdık • OO • Mul]-‐threaded
• Sağlam
• Yüksek Performanslı
• «Write Once Run Test Everywhere»
• Geriye Dönük Uyumlu
Java for Telco C1 11
• Yüksek Performanslı
Java Programlama Dili Genel Özellikler
"Java programlama dili ile yazılmış uygulamalar, C/C++ ile yazılmış uygulamalara göre daha yavaş çalışırlar."
Java for Telco C1 12
• Basit ve Tanıdık • OO • Mul]-‐threaded
• Sağlam
• Yüksek Performanslı
• «Write Once Run Test Everywhere»
• Geriye Dönük Uyumlu
Java Programlama Dili Genel Özellikler
Java for Telco C1 14
• Basit ve Tanıdık • OO • Mul]-‐threaded
• Sağlam
• Yüksek Performanslı
• «Write Once Run Test Everywhere»
• Geriye Dönük Uyumlu (@deprecated)
Java Programlama Dili Genel Özellikler
Java for Telco C1 15
• Java Virtual Machine
• Java API’leri (Applica]on Programmer Interface)
1. Java SE : Java Pla[orm, Standart Edi]on
2. Java EE : Java Pla[orm, Enterprise Edi]on
3. Java ME : Java Pla[orm, Micro Edi]on
4. Java FX (Rich Internet Applica]ons) hTp://java.sun.com
hTp://www.oracle.com/us/technologies/java/
Java PlaYormu
Java for Telco C1 19
Telekom Uygulamaları
• Telekom uygulamaları deyince akla ne tür uygulamalar gelmeli?
• Telekom uygulamalarının genel özellikleri nelerdir?
• Telekom uygulamaları geliş]rirken nelere dikkat etmek gerekir?
Java for Telco C1 20
• Core Network Uygulamaları
• Faturalandırma ve Online Ücretlendirme Sistemleri
• Media]on
• Müşteri İlişkileri Yöne]m Sistemleri (CRM)
• DatawareHouse • IP Mul]media Subsystem (IMS)
Telekom Uygulamaları
Java for Telco C1 21
• Genişle]lebilir (Scalable) (Ölçeklenebilir) • Aksaklığa dayanıklı (Fault tolerant) • Dağıvk (Distributed) • Sürekli erişilebilir (High availability)
Telekom Uygulamaları Ortak Özellikler
Java for Telco C1 22
Telekom Uygulamaları Sürekli Erişilebilir
Erişilebilirlik Kesin] / Yıllık Kesin] / Aylık Kesin] / Hawalık
90% ("one nine")
36.5 gün 72 saat 16.8 saat
99% ("two nines")
3.65 gun 7.2 saat 1.68 saat
99.9% ("three nines")
8.76 saat 43.2 dakika 10.1 dakika
99.99% ("four nines")
52.56 dakika 4.32 dakika 1.01 dakika
99.999% ("five nines")
5.26 dakika 25.9 saniye 6.05 saniye
Java for Telco C1 23
• Sow Real]me
• Güvenli
Telekom Uygulamaları Ortak Özellikler (Devam)
Throughput Latency
Java for Telco C1 24
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Standart Protokoller • Önbellek Kullanımı (Caching)
• Asenkron vs Senkron • Zaman aşımı (Timeouts)
• Transac]ons • Connec]on Pooling
Java for Telco C1 25
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Standart Protokoller • Önbellek Kullanımı (Caching)
• Asenkron vs Senkron • Zaman aşımı (Timeouts)
• Transac]ons • Connec]on Pooling
Java for Telco C1 26
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Standart Protokoller • Önbellek Kullanımı (Caching)
• Asenkron vs Senkron (blocking vs non-‐blocking)
• Zaman aşımı (Timeouts)
• Transac]ons • Connec]on Pooling
Java for Telco C1 27
Telekom Uygulamaları Asenkron vs Senkron
A B
t1
t2
A B
Senkron Asenkron
t < t1 + t2
Java for Telco C1 28
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Standart Protokoller • Önbellek Kullanımı (Caching)
• Asenkron vs Senkron • Zaman aşımı (Timeouts)
• Transac]ons • Connec]on Pooling
Java for Telco C1 29
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Standart Protokoller • Önbellek Kullanımı (Caching)
• Asenkron vs Senkron • Zaman aşımı (Timeouts)
• TransacIons • Connec]on Pooling
Java for Telco C1 30
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Standart Protokoller • Önbellek Kullanımı (Caching)
• Asenkron vs Senkron • Zaman aşımı (Timeouts)
• Transac]ons • ConnecIon (Resource) Pooling
Java for Telco C1 31
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• JVM ayarları (Tuning)
• Logging
Ø Saniyede 500 işlem = SaaTe 1 milyon 800 bin işlem
Ø Milyonda bir meydana gelen bir hata yaklaşık olarak:
Ø 1 saaTe 2 defa Ø 1 günde 50 defa
Java for Telco C1 32
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Monitoring & AdministraIon
• Performans testleri & Profiling
• Hızlı Başlangıç • Ayarlar (Configura]on) • Kötüye kullanım belirleme (fraud detec]on)
Java for Telco C1 33
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Monitoring & Administra]on
• Performans testleri & Profiling
• Hızlı Başlangıç • Ayarlar (Configura]on) • Kötüye kullanım belirleme (fraud detec]on)
Java for Telco C1 34
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Monitoring & Administra]on
• Performans testleri & Profiling
• Hızlı Başlangıç • Ayarlar (Configura]on) • Kötüye kullanım belirleme (fraud detec]on)
Java for Telco C1 35
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Monitoring & Administra]on
• Performans testleri & Profiling
• Hızlı Başlangıç • Ayarlar (ConfiguraIon) • Kötüye kullanım belirleme (fraud detec]on)
Java for Telco C1 36
Telekom Uygulamaları Uygulama GelişIrirken Dikkat Edilmesi Gereken Konular
• Monitoring & Administra]on
• Performans testleri & Profiling
• Hızlı Başlangıç • Ayarlar (Configura]on) • Kötüye kullanım belirleme (fraud detecIon)
Java for Telco C1 37
• IN Uygulamaları (Akıllı Şebekeler) Intelligent Networks
• Online Charging System (OCS)
• Konum Tabanlı Servisler (Loca]on Based Services)
• SDF (Service Delivery Framework) ve Katma Değerli Servisler (VAS)
Oksijen ARGE’de Java ile GelişIrilen Ürünler
Java for Telco C1 39
Akıllı Şebekeler Prepaid (Faturasız Hatlar)
Santral Prepaid
0542 1231234 Numara analizi Hangi Prepaid?
A-‐>B araması var. Ne diyorsun?
60 saniye konuştur, sonra tekrar bana sor.
Çağrı bağlanır
?
Java for Telco C1 40
Akıllı Şebekeler Prepaid (Faturasız Hatlar)
• Abonelik ve hesap yöne]mi
• Tarifelendirme
• Aranan numara
• Zaman
• Konum
• Kullanım geçmişi
• Roaming
• IMEI (Cihaz ]pi)
• 3G / 2G, ses, video, data
• Kampanyalar, promosyonlar
• Raporlama
Java for Telco C1
Akıllı Şebekeler Virtual Private Network (VPN)
Yazılım Geliş]rme
İcra Kurulu
Savş & Pazarlama
GSM
VPN VPN VPN VPN DB
2201
905421232205 à 2201
• Arayan numara ve aranan numara aynı grupta mı?
• Arayan numaranın arama yapma yetkisi var mı?
• Arama indirimli mi? • Aramanın ücre]nin ne kadarını şirket ödeyecek?
905421232205 à 905421232201 bağla
Java for Telco C1
Akıllı Şebekeler 444 1 111
42
444 2 222
GSM VPN MPBX
DB
Mobile PBX (MPBX)
444 1 111
905421232201 à 444 1 111
Çağrı bağlanmadan önce “hun]ng” algoritması çalışvrılır. • En az/çok çağrı alan • En kısa/uzun süre konuşan • En uzun süre çağrı almadan
bekleyen (idle) • Sırayla • Günlere / saatlere göre
Java for Telco C1 43
Online Charging System Diameter Protocol
• Diameter Base Protocol (RFC-‐3588)
• Authen]ca]on • Authorisa]on • Accoun]ng
• Diameter Credit Control Applica]on (RFC-‐4006)
• Real-‐]me credit-‐control
Java for Telco C1 44
Online Charging System Diameter Credit Control ApplicaIon (DCCA)
Client Server
CCR Ini]al
CCA (10MB Granted)
CCR Update 7MB used
CCA (10MB Granted)
CCR Terminate 5MB used
Java for Telco C1 46
LocaIon Based Services
SUPL supl.vodafone.com
HLR
VLR
MSC
BSC
GMLC SMLC
Loca]o
n Clients
GMLC • Konum bilgisinin sağlanmasi için tüm modüllerin
koordinasyonunu yapar. • MSIDN ile konum sorguları kabul eder ve konum cevabı
döner. • A-‐GPS desteği olmayan cihazların konumlarını Network
elemanları sayesinde bulur. • A-‐GPS destekli cihazlarların konumunu SUPL (secure user
plane loca]on) protokolü ile bulur.
Java for Telco C1 47
LocaIon Based Services
SUPL supl.vodafone.com
HLR
VLR
MSC
BSC
GMLC SMLC
Loca]o
n Clients
SMLC • Abonelerin konum bilgisini hesaplar
• Konum bilgisinin hesaplanmasında kullanılan algoritmalar: • Bilinen konum hesaplama algoritmaları • Oksijen ARGE patentli algoritlamaları
Java for Telco C1 48
LocaIon Based Services LocaIon Enabler Server (LES)
Loca]on Based Applica]on GMLC
LES Privacy Checking
En]ty
Request (MLP)
Response (MLP)
Request (PCP) Response(PCP)
Java for Telco C1 50
Service Delivery Framework Katma Değerli Servisler (VAS : Value Added Services) • Temel ile]şim (ses, data) servislerinin dışında kalan servislerdir.
• Operatörlerin gelirlerinin önemli bir bölümünü oluşturur.
• Müzik içerik servisleri
• Hava durumu
• Fal
• Oyun
• Oylama
• Ödemeli arama
• Sohbet
• Mobil TV
• Mobil ödeme
• Konum bazlı servisler (Etra�mda ne var?)
• Mobil Ofis
Java for Telco C1 51
Service Delivery Framework SDF Bileşenleri
Java Virtual Machine
OSGi
Service Execu]on Environment
Policy Execu]on Environment
SBB SBB SBB SBB
Service Service
Service En
abler E
xecu]o
n En
vironm
ent
Network Enablers
Access Enablers
Charging Enablers
Suplementary Enablers
Service Crea]on Environment
OSS & BSS
Java for Telco C1 52
Service Delivery Framework Örnek Servis : “Etrakmda ne var?”
Etra�mda ne var?
SMSC
Eczane à 7777
SDF
SMS Enabler
RTC Chargıng Enabler
GMLC
Loca]on Enabler
GIS Server
GIS & Map Enabler