BAB III PEMODELAN DAN SIMULASI III.1
Tahap-tahap perancangan Tahapan perancangan yang dilakukan dalam pemodelan dan simulasi Softswitch
ini seperti ditunjukkan pada Gambar 3.1 berikut :
Mulai
Deskripsi permasalahan
Pemodelan
Penulisan program
Jalankan simulasi
Berfungsi ? Y
Perbaiki
T
Valid ? Y Selesai
T
Perbaiki
Gambar 3.1 Tahap-tahap perancangan simulator
III.2
Deskripsi Permasalahan
Dalam pembentukan hubungan, Softswitch merupakan bagian (komponen) dalam jaringan yang memberikan kontribusi terhadap akumulasi PDD dimana delay pada Softswitch tidak boleh melampaui budget waktu yang telah ditentukan berdasarkan standar umum (internasional). Dalam tesis ini permasalahan yang dibahas adalah, bagaimana menyimulasikan proses kerja Softswitch dalam melayani panggilan pada jaringan dan melakukan pencatatan waktu (timing) untuk tiap tahapannya guna dianalisis karakteristik lamanya proses dalam Softswitch dimana lama proses tersebut merupakan fungsi dari variabel masukan (laju kedatangan) yang dimasukkan saat inisiasi ketika akan menjalankan program simulasi.
III.2.1 Delay Budget Untuk Softswitch Seperti yang sudah dijelaskan pada BAB II, menurut ITU-T standar PDD pada jaringan IP < 800 msec[22]. Standar waktu tersebut dialokasikan untuk tiap elemen jaringan yang dilaluinya dalam hubungan user-to-user antara lain berupa terminal equipment, gateway router dan lain-lain termasuk Softswitch itu sendiri. Namun sejauh ini lembaga standar dunia belum menstandarkan angka yang pasti untuk budget delay pada Softswitch. Sebagai referensi, delay call setup untuk Softswitch, menurut Telica, suatu vendor pembuat Softswitch, mensyaratkan call setup delay pada Softswitch < 400 msec[23], dan menurut standar Telecordia, call setup delay < 350 msec[22] , call clearing delay < 100 msec[22] dan menurut KT-BcN, provider jaringan di Korea Selatan, yang telah melakukan penelitian dalam implementasi NGN, dengan pembatasan bandwidth diperoleh call setup delay pada Softswitch rata-rata 472 msec[24]
III.2.2 Komponen Delay Pada Softswitch
46
Dalam melayani permintaan panggilan telepon, terdapat beberapa tahapan proses yang dalam Softswitch, dimana masing-masing tahapan merupakan komponen delay yang secara akumulasi akan memberikan total waktu pemrosesan untuk tiap panggilan dan disebut occupancy seperti diperlihatkan pada Gambar 3.2 Softswitch
Call request
1 Receive/reject Destination address (digits)
2 Call setup (media control & signaling)
- Check A-subscriber originating restriction
Call admission delay
- Analyse destination zoning and compare to A-subscriber category - Check media resources (bandwidth) - Check B-subscriber status (idle/busy) - Setup connection - Update : A & B Subscriber status - Update bandwidth
a
Call setup delay
Call setup (media control & signaling)
Softswitch a+b = occupancy
Conversation (media streaming)
Call clearing (media control & signaling)
3
Call clearing (media control & signaling) - disconnect call - update A & B Subscriber status - updat bandwidth
Call clearing delay b
Gambar 3.2 Tahapan proses panggilan dan komponen delay pada Softswitch Tahapan-tahapan proses pada Softswitch inilah yang diteliti dan dianalisis serta dilakukan verifikasi komponen delay-nya yang terdiri dari : 1.
Call admission delay
2.
Call setup delay
3.
Call clearing delay
4.
Call occupation
47
Adapun pendefinisian komponen delay tersebut (untuk masing-masing Skenario I, II, III) secara grfis dapat dilihat pada Lampiran-F. Dari keempat komponen delay tersebut perhatian khusus ditujikan pada call setup delay karena komponen delay ini yang menentukan spesifikasi (kapasitas) Softswitch yakni Busy Hour Call Attempt ( BHCA).
III.3
Batasan (ruang lingkup) Simulasi dan Metodologi
Untuk maksud tersebut dirancang simulator yang mensimulasikan proses panggilan pada jaringan (Gambar 3.4) mulai dari adanya permintaan panggilan dari pelanggan (user), pemrosesan pada tiap elemen jaringan, proses komunikasi antar komponen jaringan dengan menggunakan protokol standar, sampai dengan pembubaran hubungan pembicaraan dimana pada setiap tahapan proses dilakukan pencatatan (recording) datadata kejadian (pesan), disertai keterangan waktu/saat terjadinya hingga ketelitian mili detik, identitas pengguna (nomor telepon/alamat URI) dan identitas elemen jaringan (Point Code, IP address/network address). Proses tersebut dijalankan oleh bahasa pemrograman Java2 dan semua data yang diperlukan telah didefinisikan dan tersimpan dalam sistem basis data MySQL.
III.3.1 Konfigurasi Jaringan Simulasi dan Bagian-Bagian yang Disimulasikan Adapun konfigurasi jaringan Softswitch yang disimulasikan diperlihatkan pada Gambar 3.4 berikut
48
Gambar 3.4 Konfigurasi jaringan simulasi[5] Dari berbagai kemungkinan panggilan yang terjadi (berdasarkan asal panggilan dan tujuan), dalam simulasi dibatasi hanya tiga skenario, yaitu : •
Skenario I : panggilan dari pelanggan analog (user A) yang tersambung ke Access Gateway 1 (AG A ) ke pelanggan (user B) yang tersambung ke Access Gateway 2 (AG B )
•
Skenario II : panggilan dari pelanggan analog (user A) yang tersambung ke sentral konvensional (PSTN A ) melalui Signaling Gateway A (SG A ) ke pelanggan analog (user B) yang tersambung ke sentral konvensional (PSTN B ) melalui Signaling Gateway B (SG B )
•
Skenario III : panggilan dari pelanggan IP Phone (user A) yang tersambung ke Local Area Network A (LAN A ) ke pelanggan IP Phone (user B) yang tersambung ke Local Area Network B (LAN B )
III.3.2 Bagian-Bagian yang Disimulasikan dan Pemodelan
49
Dari Gammbar 3.4 tersebut,
bagian-bagian yang disimulasikan diperlihatkan pada
Gambar 3.5.a, 3.5.b, dan 3.5.c, yakni : 1.
Pada Gambar 3.5.a mengilustrasikan bagian-bagian yang disimulasikan : •
Pembangkitan sumber trafik panggilan dari Skenario I, Skenario II dan Skenario III
•
Pembuatan basis data yang terdiri dari : o Data permanent, seperti nomor telepon/alamat URI, alamat IP, dll o Data semi permanent, seperti klas layanan (CoS), kategori zona dll o Data transient, seperti kondisi bebas/sibuk, ringing dll
•
Proses kerja internal pada masing-masing komponen jaringan, yaitu pada Softswitch, Access Gateway, Signaling Gateway, dan Trunk Gateway.
Gambar 3.5.a Bagian yang disimulasikan (1) : Pembangkitan trafik panggilan, pembuatan basis data, dan proses internal pada tiap komponen jaringan
50
2.
Pada Gambar 3.5.b mengilustrasikan bagian dari simulasi, yaitu proses komunikasi antar elemen jaringan saat pembangunan hubungan dengan menggunakan protokol tertentu, yakni komunikasi antara : •
Access Gateway dengan Softswitch, menggunakan protokol Megaco
•
PSTN/jaringan SS7 dengan Signaling Gateway, menggunakan protokol SS7
•
Signaling Gateway dengan Softswitch, menggunakan protokol SigTran
•
Trunk Gateway dengan Softswitch menggunakan protokol Megaco
•
IP Phone dengan Softswitch menggunakan protokol SIP
Gambar 3.5.b Bagian yang disimulasikan (2) : Proses komunikasi (signaling) antar komponen dalam jaringan 3.
Pada Gambar 3.5.c memberikan ilustrasi pengontrolan penggunaan kanal bicara (bandwidth), meliputi :
51
•
Pengecekan ketersediaan bandwidth saat akan dibangun hubungan
•
Updating ketersediaan bandwidth setiap saat selama proses komunikasi o Ketersediaan bandwidth akan berkurang sebesar 26 Kbps jika ada pemakaian (mulai digunakan untuk bicara) o Ketersediaan bandwidth akan bertambah sebesar 26 Kbps jika ada pembebasan (ada yang selesai bicara).
Gambar 3.5.c Bagian yang disimulasikan (3) : Pengendalian pemakaian bandwidth (updating selama proses panggilan) Pada sub bab berikut dibahas proses perancangan : pemodelan, metoda, dan algoritma tiap bagian simulator yang telah disebutkan pada sub bab 3.4.
52
III.3.2.1 Pembangkitan Sumber Panggilan (Traffic Generator) Sumber trafik panggilan merupakan pembangkit kedatangan permintaan panggilan. Masing-masing skenario dibuat sumber trafiknya secara independen. Karakteristik sumber trafik yang disimulasikan mengikuti pola kedatangan model Poisson. Dalam tesis ini pembangkitan trafik dari ketiga skenario diilustrasikan seperti pada Gambar 3.6 (a) dan 3.6 (b)[17] berikut
TRAFFIC GENERATOR AG1 Scenario I
Po
i
PSTN1 (SG1) Scenario II LAN1
ss λ1 on
SOFTSWITCH
λ2
Poisson
Poisson
λ1+λ2+λ3
λ3
Queuing (buffer)
n sso
i
Scenario III
Po
Server
Gambar 3.6 (a) Model pembangkitan trafik dari ketiga skenario
53
random t12 t13
t11
Skenario I
T11
Skenario II
T21
t1
T23
T32 random
t2 t3 t4 T1 T2 T3
t34
t33
t32 T31
TOTAL
t24
T22
t31
Skenario III
T13
T12
exponentially distributed t23
t22
t21
t14
t6 t7
t5 T4
T5
T33 t8
T6 T7
t9 T8
t11 t12
t10 T9
T10
T11
t
exponentially distributed
Gambar 3.6 (b) Pola waktu antar kedatangan dari sumber trafik[18] Untuk pembuatan generator trafik, data waktu antar kedatangan direpresentasikan oleh pembangkitan bilangan acak (random) pada masing-masing skenario secara independen. Karakteristiknya mengikuti model Poisson seperti dibahas pada Bab II, yaitu : ▪
Pertama, pola distribusi peluang terjadinya k panggilan selama perioda t[18] mengikuti kurva Poisson Pk (t ) =
▪
( λ t ) k − λt e k!
Kedua pola distribusi waktu antar kedatangan mengikuti kurva eksponensial negatif [17] f (t ) = λe
− λt
Dalam simulasi, generator trafik ini menggunakan paket program yang telah ada. Namun dalam Bab IV keluaran generator trafik tersebut diverifikasi dari segi waktu antar kedatangannya.
III.3.2.2 Pembuatan Basis Data
54
Basis data merupakan sumber data yang diakses oleh elemen jaringan dalam pemprosesan permintaan panggilan telepon. Pembuatan basis data menggunakan MySQL, terdiri dari data-data sebagai berikut: 1. Basis data untuk Softswitch : a. Data pelanggan, total 400.000, terdiri dari : 1) Pelanggan AG : •
AG (A) : 60.000 pelanggan, dengan sistem penomoran 2100000 – 2159999.
•
AG (B) : 60.000 pelanggan, dengan sistem penomoran 2200000 – 2259999.
2) Pelanggan PSTN : •
PSTN (A) : 100.000 pelanggan, dengan sistem penomoran 2300000 – 2399999.
•
PSTN (B) : 100.000 pelanggan, dengan sistem penomoran 2400000 – 2499999.
3) Pelanggan SIP Phone : •
SIP
phone
(A)
:
40.000
pelanggan,
dengan
sistem
penomoran
sistem
penomoran
[email protected] –
[email protected]. •
SIP
phone
(B)
:
40.000
pelanggan,
dengan
[email protected] –
[email protected]. b. Data zone, dilihat berdasarkan Code Point (identitas node dalam jaringan) : 1) Code Point 2 = Zone 1. 2) Code Point 0 = Zone 2. 3) Code Point 00 = Zone 3 Untuk proses simulasi, semua pelanggan diasumsikan mendial digit dengan Code Point 1 (hubungan lokal). Artinya hanya mendial nomor dengan prefik (awalan) 2. c. Data kategori tujuan, terdiri dari : 1) Kategori 1, dapat melakukan panggilan ke tujuan hanya sampai area Lokal. 2) Kategori 2, dapat menghubungi ke tujuan Lokal dan SLJJ. 3) Kategori 3, dapat menghubungi ke tujuan Lokal, SLJJ, dan SLI
55
d. Data Class of Service yang berhubungan dengan Call Restriction (pembatasan panggilan) berdasarkan kategori tujuan. Untuk proses simulasi, semua pelanggan diasumsikan memiliki kategori 3. Sehingga dapat menghubungi ke tujuan Lokal, SLJJ, dan SLI. e. Data status pelanggan tujuan, yang terdiri dari : 1) Status bebas. 2) Status sibuk. 3) Status bicara. f. Data link bandwidth 1) Untuk menentukan kapasitas bandwidth, diambil dari jumlah panggilan tertinggi, yaitu : 26,4 Kbps × 36 panggilan = 950,4 Kbps ≤ 1 Mbps Ket : 26,4 Kbps merupakan bandwidth rata-rata yang dibutuhkan dalam pengiriman suara untuk 1 pelanggan. Dalam simulasi ini dibulatkan 26 Kbps. 2) Kapasitas link bandwidth untuk masing-masing skenario adalah : Link bandwidth untuk skenario I =
3 × 1 Mbps = 0,3 Mbps 10
Link bandwidth untuk skenario II =
5 × 1 Mbps = 0,5 Mbps 10
Link bandwidth untuk skenario III =
2 × 1 Mbps = 0,2 Mbps 10
3) Lama bicara dari masing-masing sesi panggilan diset secara random pada rentang waktu 1 sampai 3 menit g. Data domain untuk pelanggan SIP phone, yaitu : 1) Domain dari pelanggan SIP phone (A) adalah stttelkom.ac.id 2) Domain dari pelanggan SIP phone (B) adalah ittelkom.ac.id 2. Basis data untuk AG : a. AG (A)
56
1) Data pelanggan yang terdiri dari 60.000 pelanggan, dengan sistem penomoran 2100000 – 2159999. 2) Data status pelanggan, yang terdiri dari : a) Dial Tone. b) Ringing Tone. c) Busy Tone. b. AG (B) 1) Data pelanggan yang terdiri dari 60.000 pelanggan, dengan sistem penomoran 2200000 – 2259999. 2) Data status pelanggan, yang terdiri dari : a) Ringing Current. 3. Basis data untuk SG : a. SG (A) 1) Data pelanggan yang terdiri dari 100.000 pelanggan, dengan sistem penomoran 2300000 – 2399999. b. SG (B) 1) Data pelanggan yang terdiri dari 100.000 pelanggan, dengan sistem penomoran 2400000 – 2499999. 4. Basis data untuk PSTN (B) : a. Data pelanggan yang terdiri dari 100.000 pelanggan, dengan sistem penomoran 2400000 – 2499999. b. Data status pelanggan, yang terdiri dari : 1) Status bebas. 2) Status sibuk. 5. Basis data untuk SIP phone (B) : a. Data pelanggan yang terdiri dari 40.000 pelanggan, dengan sistem penomoran
[email protected] –
[email protected]. b. Data status pelanggan, yang terdiri dari : 1) Status bebas.
57
2) Status sibuk.
III.3.2.3 Pemodelan dan Simulasi Proses Panggilan Dalam perancangan simulasi, untuk memudahkan penyusunan program, maka proses panggilan yang merupakan mekanisme kerja jaringan dalam menangani permintaan panggilan mulai dari pelanggan mengangkat handset (off-hook) hingga pembubaran panggilan (selesai bicara), dibagi menjadi dua bagian, yaitu : 1.
Proses komunikasi antar elemen jaringan.
2.
Proses internal pada masing-masing elemen.
III.3.2.3.1 Proses Komunikasi Antar Elemen Jaringan Antar elemen jaringan berkomunikasi dengan menggunakan protokol. Protokol yang digunakan disesuaikan dengan elemen jaringan yang sedang berkomunikasi. Protokol yang digunakan pada simulasi ini yaitu : 1. Skenario I : •
Komunikasi antara Softswitch dengan AG menggunakan protokol Megaco
2. Skenario II : •
Komunikasi antara PSTN dengan SG menggunakan protokol SS7
•
Komunikasi antara Softswitch dengan SG menggunakan protokol Sigtran
•
Komunikasi antara Softswitch dengan TG menggunakan protokol Megaco
3. Skenario III : •
Komunikasi antara Softswitch dengan SIP phone menggunakan protokol SIP
Untuk pemodelan proses komunikasi digunakan diagram call flow seperti pada Gambar 3.9. Proses komunikasi diawali dengan pembangkitan pesan yang dipicu oleh adanya suatu kejadian (event), misal ada pelanggan yang mengakhiri pembicaraan, adanya pengiriman sinyal digit (DTMF) dsb. Setiap kejadian (yang ditandai dengan indikasi adanya pesan) dicatat nama kejadiannya (berdasarkan nama pesan), waktu terjadinya (sampai ketelitian mili detik) serta keterangan-keterangan lainnya yang dianggap perlu seperti halnya hasil pencatatan protocol analyzer di lapangan untuk bahan analisis.
58
Untuk memberikan gambaran perancangan simulasi dalam proses komunikasi ini diambil proses komunikasi Skenario I sebagai sampel yang diperlihatkan pada Gambar 3.9 beserta penjelasannya. Untuk skenario II dan III terdapat pada Lampiran A Skenario panggilan terdiri dari dua bagian, yaitu jika pelanggan yang dituju bebas dan jika pelanggan yang dituju sibuk.
III.3.2.3.1.1 Skenario Panggilan Jika Pelanggan Yang Dituju Bebas Call flow untuk pelanggan yang dituju bebas diperlihatkan pada Gambar 3.12. Proses pembangunan hubungannya terdiri dari : 1. User (A) mengangkat hand set untuk meminta pembangunan hubungan 2. AG (A) : a. Mendeteksi port user (A) dan memapingkannya ke nomor telepon b. Memapingkan informasi nomor telepon user (A) ke format IP c. Mengirimkan command Notify ke Softswitch yang mengandung informasi nomor telepon user (A) 3. Softswitch : a. Menerima command Notify dan mengirimkan command Reply ke AG (A) untuk mengkonfirmasikan bahwa command Notify telah diterima dengan baik b. Mengecek di data base, tentang informasi data pelanggan user (A) c. Menentukan user (A) boleh melakukan panggilan atau tidak d. Jika boleh, mengirimkan command Modify ke AG (A) untuk memerintahkan AG (A) agar mengirimkan dial tone kepada user (A) e. Mengubah status user (A) ke kondisi sibuk 4. AG (A) : a. Menerima command Modify dan mengirimkan command Reply ke Softswitch untuk mengkonfirmasikan bahwa command Modify telah diterima dengan baik b. Mengirimkan dial tone kepada user (A) 5. User (A) mendial nomor telepon tujuan
59
User (A)
Access Gateway (A)
Softswitch
Access Gateway (B)
User (B)
0222100000
172.16.0.2
172.16.0.1
172.16.0.3
0222200000
1
5
Off hook
2
Dial Tone Digits
4
6
Notify Reply Modify Reply
Notify Reply Add Reply
Ringing Tone
10
Modify Reply
3
7 8 9 11
15
18
Modify Reply
17
Add Reply
Modify Reply
Notify Reply Modify Reply
12
Ringing Current
14
Answer
13
16
RTP Stream
19
On hook
20
Notify Reply Subtract Reply
Modify Reply
21 22 23 24
Subtract Reply
Modify Reply
MEGACO
Gambar 3.7 Call flow proses komunikasi Skenario I jika pelanggan yang dituju bebas [14] [15] [25] 6. AG (A) : a. Menerima informasi nomor telepon user (B) dan memapingkannya ke format IP b. Mengirimkan command Notify ke Softswitch yang mengandung informasi nomor telepon user (B)
60
7. Softswitch : a. Menerima command Notify dan mengirimkan command Reply ke AG (A) untuk mengkonfirmasikan bahwa command Notify telah diterima dengan baik b. Mengecek di data base, tentang zone tujuan (zone 1/2/3) berdasarkan prefix/awalan nomor telepon user (B) c. Mengecek di data base, tentang kategori tujuan (lokal/SLJJ/SLI) d. Menentukan user (A) boleh melakukan panggilan ke tujuan tersebut atau tidak, berdasarkan zone dan kategori e. Jika boleh, selanjutnya mengecek ketersediaan bandwidth pada AG (A) dan AG (B) f. Jika tersedia, selanjutnya mengecek status pelanggan user (B), dalam keadaan bebas atau sibuk/bicara g. Jika bebas, selanjutnya mengirimkan command Add ke AG (A) untuk memerintahkan AG (A) agar menyiapkan port RTP 8. Softswitch mengirimkan command Add ke AG (B) untuk memerintahkan AG (B) agar menyiapkan port RTP 9. Softswitch mengirimkan command Modify ke AG (A) untuk memerintahkan AG (A) agar mengirimkan ringing tone kepada user (A) 10.
AG (A) :
a. Menerima command Modify dan mengirimkan command Reply ke Softswitch untuk mengkonfirmasikan bahwa command Modify telah diterima dengan baik b. Mengirimkan ringing tone kepada user (A) 11.Softswitch : a. Mengirimkan command Modify ke AG (B) untuk memerintahkan AG (B) agar mengirimkan ringing current kepada user (B) b. Mengubah status user (B) ke kondisi sibuk 12.AG (B) : a. Menerima command Modify dan mengirimkan command Reply ke Softswitch untuk mengkonfirmasikan bahwa command Modify telah diterima dengan baik
61
b. Mengirimkan ringing current kepada user (B) 13.User (B) mengangkat hand set untuk menjawab panggilan telepon 14.AG (B) : a. Mendeteksi jawaban pada port user (B) dan memapingkannya ke format IP b. Mengirimkan command Notify ke Softswitch yang mengandung informasi jawaban user (B) 15.Softswitch : a. Menerima command Notify dan mengirimkan command Reply ke AG (B) untuk mengkonfirmasikan bahwa command Notify telah diterima dengan baik b. Mengirimkan command Modify ke AG (B) untuk memerintahkan AG (B) agar menghentikan pengiriman ringing current dan mengaktifkan port RTP c. Mengubah status user (B) ke kondisi bicara d. Meng-update bandwidth AG (B) 16.AG (B) a. Menerima command Modify dan mengirimkan command Reply ke Softswitch untuk mengkonfirmasikan bahwa command Modify telah diterima dengan baik b. Menghentikan pengiriman ringing current kepada user (B) 17. Softswitch : a. Mengirimkan command Modify ke AG (A) untuk memerintahkan AG (A) agar menghentikan pengiriman ringing tone dan mengaktifkan port RTP b. Mengubah status user (A) ke kondisi bicara c. Meng-update bandwidth AG (A) TIDAK ADA PROSES 18.AG (A) a. Menerima command Modify dan mengirimkan command Reply ke Softswitch untuk mengkonfirmasikan bahwa command Modify telah diterima dengan baik b. Menghentikan pengiriman ringing tone kepada user (A)
Setelah selesai pembangunan hubungan, user (A) dan user (B) melakukan pembicaraan selama 1-3 menit.
62
Proses pembubaran hubungannya terdiri dari : 19.User A menutup hand set untuk mengakhiri panggilan telepon 20.AG (A) : a. Mendeteksi pembubaran panggilan pada port user (A) dan memapingkannya ke nomor telepon b. Memapingkan informasi pembubaran panggilan oleh user (A) ke format IP c. Mengirimkan command Notify ke Softswitch yang mengandung informasi pembubaran panggilan dari user (A) 21.Softswitch : a. Menerima command Notify dan mengirimkan command Reply ke AG (A) untuk mengkonfirmasikan bahwa command Notify telah diterima dengan baik b. Mengirimkan command Subtract ke AG (A) untuk memerintahkan AG (A) agar menonaktifkan port RTP c. Mengubah status user (A) ke kondisi bebas 22.Softswitch : a. Mengirimkan command Subtract ke AG (B) untuk memerintahkan AG (B) agar menonaktifkan port RTP b. Mengubah status user (B) ke kondisi bebas 23.Softswitch : a. Mengirimkan command Modify ke AG (A) untuk memerintahkan AG (A) agar menormalkan port RTP b. Meng-update bandwidth AG (A) 24.Softswitch : a. Mengirimkan command Modify ke AG (B) untuk memerintahkan AG (B) agar menormalkan port RTP b. Meng-update bandwidth AG (B) TIDAK ADA PROSES
III.3.2.3.1.2
Skenario Panggilan Jika Pelanggan Yang Dituju Sibuk
63
Call flow untuk pelanggan yang dituju sibuk diperlihatkan pada Gambar 3.10.
User (A) 0222100000 1
5
Access Gateway (A) 172.16.0.2 Off hook
2
4
Dial Tone Digits
6
Softswitch 172.16.0.1
Notify Reply Modify Reply
Notify Reply Modify Reply
Busy Tone
Access Gateway (B) 172.16.0.3
User (B) 0222200000
3
7
8 MEGACO
Gambar 3.8 Call flow proses komunikasi Skenario I jika pelanggan yang dituju sibuk [14] [15] [25]
Proses pembangunan hubungannya terdiri dari : 1. User (A) mengangkat hand set untuk meminta pembangunan hubungan 2. AG (A) : a. Mendeteksi port user (A) dan memapingkannya ke nomor telepon b. Memapingkan informasi nomor telepon user (A) ke format IP c. Mengirimkan command Notify ke Softswitch yang mengandung informasi nomor telepon user (A) 3. Softswitch : a. Menerima command Notify dan mengirimkan command Reply ke AG (A) untuk mengkonfirmasikan bahwa command Notify telah diterima dengan baik b. Mengecek di data base, tentang informasi data pelanggan user (A) c. Menentukan user (A) boleh melakukan panggilan atau tidak
64
d. Jika boleh, mengirimkan command Modify ke AG (A) untuk memerintahkan AG (A) agar mengirimkan dial tone kepada user (A) e. Mengubah status user (A) ke kondisi sibuk 4. AG (A) : a. Menerima command Notify dan mengirimkan command Reply ke Softswitch untuk mengkonfirmasikan bahwa command Notify telah diterima dengan baik b. Mengirimkan dial tone kepada user (A) 5. User (A) mendial nomor telepon tujuan 6. AG (A) : a. Menerima informasi nomor telepon user (B) dan memapingkannya ke format IP b. Mengirimkan command Notify ke Softswitch yang mengandung informasi nomor telepon user (B) 7. Softswitch : a. Menerima command Notify dan mengirimkan command Reply ke AG (A) untuk mengkonfirmasikan bahwa command Notify telah diterima dengan baik b. Mengecek di data base, tentang zone tujuan (zone 1/2/3) berdasarkan prefix/awalan nomor telepon user (B) c. Mengecek di data base, tentang kategori tujuan (lokal/SLJJ/SLI) d. Menentukan user (A) boleh melakukan panggilan ke tujuan tersebut atau tidak, berdasarkan zone dan kategori e. Jika boleh, selanjutnya mengecek ketersediaan bandwidth pada AG (A) dan AG (B) f. Jika tersedia, selanjutnya mengecek status pelanggan user (B), dalam keadaan bebas atau sibuk g. Jika sibuk, selanjutnya mengirimkan command Modify ke AG (A) untuk memerintahkan AG (A) agar mengirimkan busy tone kepada user (A) h. Mengubah status user (A) ke kondisi bebas 8. AG (A) :
65
a. Menerima command Modify dan mengirimkan command Reply ke Softswitch untuk mengkonfirmasikan bahwa command Modify telah diterima dengan baik b. Mengirimkan busy tone kepada user (A)
III.3.2.3.2 Proses Internal Tiap Elemen Jaringan III.3.2.3.2.1
Access Gateway
Menurut standar ISC, fungsional AG terdiri dari AGS-F dan MG-F. AG-F melakukan fungsi pensinyalan, sedangkan MG-F melakukan fungsi pengiriman media. Pada simulator, AG hanya difungsikan untuk pensinyalan, yaitu melakukan pemapingan antara : 1. Nomor port ke nomor telepon, dan sebaliknya 2. Nomor telepon ke format IP (protokol), dan sebaliknya 3. Informasi jawaban ke format IP (protokol), dan sebaliknya 4. Informasi pembubaran ke format IP (protokol), dan sebaliknya Proses internal AG diperlihatkan pada Gambar 3.11. Access Gateway Signaling Function (AGS-F)
Telepon Analog
Format TDM
Maping
Format IP
Access Gateway MULAI Off Hook Deteksi Port
Maping Port ke Nomor Telepon
Paketisasi Notify SELESAI
Gambar 3.9 Proses internal Access Gateway
66
Softswitch
III.3.2.3.2.2
Signaling Gateway
Menurut standar ISC, SG melakukan SG-F yaitu fungsi pensinyalan, dalam melakukan maping (protokol) dari jaringan circuit switch seperti PSTN ke format IP, dan sebaliknya. Signaling Gateway Function (SG-F)
Switch
Format TDM
Maping
Format IP
PSTN (A) Signaling Gateway MULAI IAM Deteksi Port IAM SELESAI
Gambar 3.10 Proses Internal Signaling Gateway
III.3.2.3.2.3
Softswitch
67
Softswitch
MULAI
Megaco
Call Agent Function (CA-F) Admission Control User Profile
Service Profile
Notify (off-hook)
Megaco
Cek Data Pelanggan User (A) – Call Restriction
Terminal Profile
Access Gateway (A)
Access Gateway (B)
Tidak
User (A) Boleh Memanggil?
Routing Function (R-F)
Ya
Address Translation
Perintah AG (A) Kirim Dial Tone
Ubah Status User (A) k e Kondisi Sibuk
Media Gateway Controller (MGC-F)
Modify SELESAI
Resource Allocation
Softswitch
Gambar 3.11 (a) Proses internal Softswitch untuk Skenario I
MULAI
Sigtran
Call Agent Function (CA-F) Admission Control User Profile
Service Profile
IAM (terima digit)
Sigtran
Cek Zone Tujuan
Terminal Profile
Cek Kategori User(A)
Signaling Gateway (A)
Signaling Gateway (B) Tidak
Routing Function (R-F)
User (A) Boleh Memanggil Ke Tujuan?
Address Translation
Ya - Cek Bandwidth TG1 - Cek Bandwidth TG2
Megaco
Media Gateway Controller (MGC-F)
Megaco
Tidak Tersedia ?
Resource Allocation Ya
Trunk Gateway (A)
Trunk Gateway (B)
IAM SELESAI
Softswitch
Gambar 3.11 (b) Proses internal Softswitch untuk Skenario II
68
Authentication / Authorization Module
SIP Phone (A
Resource Negotiation Module
SIP Location Database
SIP Transaction Management
69
softswitchsimulator::Main +start() mengeksekusi
utils::GeneratorTrafic -call +setCallInTime() +getCall() : long
dieksekusi form::mainSimulatorForm
an sik ula sim
buat simulasi
m
en
get Info
an
lasik
simu
get INfo
men
read data se aba
base
data
dat
ad
bac
raad
base
bac a
se
DB::AccessGateway2
-port : int -no_telp : string baca database +setPort(in no_telp : int) +getPort() : int +setNoTelp(in no_telp : string) +getNoTelp() : string +setRingingCurrentStatus()
End3
baca database
ba
+bebas : int = 1 +sibuk : int = 2 +bicara : int = 3 +getStatus() : int +setStatus() e bas ata
ata
DB::sip_phone
DB::pstn +bebas : int = 1 +sibuk : int = 2 +bicara : int = 3 +getStatus() : int +setStatus()
DB::AccessGateway1
ad d
e
re
as
tab
da
-no_telp : string +bebas : int = 1 +sibuk : int = 2 +bicara : int = 3 +getStatus() : int +setStatus() +getBatasanPanggilan() : int +getKategori() : int +getDomain() : string bac +isNumberExist() a da : bool taba se
ad
base read data
an
read database ase datab DB::softswitch
-port : int -no_telp : string +setPort(in no_telp : int) +getPort() : int +setNoTelp(in no_telp : string) +getNoTelp() : string +setDialToneStatus() +setRingingtoneStatus()
thread::processSIP -notelpSource : string -notelpDest : string -domainDest +setNoTelpSource() +setNoTelpDest() +getNoTelpSource() : string +getNoTelpDest() : string +start() +setDomainDest() +getDomainDest() : string
re
read
get Call Time
lasik
thread::processSignalingGateway -notelpSource : string -notelpDest : string +setNoTelpSource() +setNoTelpDest() +getNoTelpSource() : string +getNoTelpDest() : string get Info +start()
set Call Time
simu
-TypeAccessGateWay : int = 1 -TypeSignalingGateWay : int = 2 -TypeSIP : int = 3 +maxBandwidthAG : double = 520 +maxBandwidthSG : double = 520 +maxBandwidthSIP : double = 520 -usebandwidthAG : double -usebandwidthSG : double -usebandwidthSIP : double -Buffer -callLoss : int -callBusy : int -totalCall : int +inisialisasi() +ContinueNextQueue() +addBuffer() +run() +removeBuffer()
men
thread::processAccessGateway -portSource : int -portDest : int -notelpSource : string -notelpDest : string +setPortSource() +setPortDest() +getPortSource() : int +getPortDest() : int +setNoTelpSource() +setNoTelpDest() +getNoTelpSource() : string +getNoTelpDest() : string +start()
DB::Connection -user : string -pass : string -server : string +getConnectionSource()
Gambar 3.12 Class diagram dalam proses panggilan
70
III.3.3.4
Usecase Diagram
Usecase mendeskripsikan interaksi tipikal antara pengguna sistem dengan sistem itu sendiri dengan memberi sebuah narasi tentang bagaimana sistem tersebut digunakan. Dalam hal in sesuai dengan pengoperasian simulator, maka usecase diagram mendeskripsikan interaksi pengguna dengan simulator, yakni : ▪
Saat inisiasi (mengisikan nilai jumlah panggilan dan perioda) pada traffic generator serta menampilkan distribusi eksponensial negatif sebelum program dijalankan dengan menekan button View (lihat pula pada Bab IV, sub bab IV.2 dan Gambar 4.3)
▪
Saat menjalankan simulator dengan menekan button Start Simulation (lihat pula Gambar 4.4)
Maka gambar usecase nya nampak seperti pada Gambar :
Create Generator Traffic
«uses»
«uses»
start Accessgateway
«uses»
«uses»
start Signaling Gateway
User
start SIP
Gambar 3.13 Usecase diagram simulator
71
III.3.3.3
Activity Diagram
Activity diagram digunakan untuk menggambarkan logika prosedural dan jalur kerja dari sistem. Penggunaannya seperti diagram alir (flow chart), bedanya dalam activity diagram mendukung bihavior paralel. Dalam simulator ini logika urutan dalam simulator adalah seperti ditunjukkan pada Gambar 3.14, dimana bihavior paralel atau dalam hal ini disebut multi threading diperlihatkan pada tiga proses : run Access Gateway, run Signaling Gateway dan run SIP.
Check Exponensial
Create Generator Traffic
check schenario
run Access Gateway
run Signaling Gateway
run SIP
Gambar 3.14 Activity diagram urutan kerja bagian-bagian simulator
III.3.3.4
Seuence Diagram
Sequence diagram merupakan penjabaran skenario dari sistem. Dalam hal ini untuk ketiga skenario panggilan (Skenario I, II dan III) digambarkan pada sequence diagram seperti Gambar 3.14
72
Gambar 3.15 Sequence diagram urutan kerja Skenario I, II dan III
III.3.3.5
Source Code
Sebagai sampel program (source code) dapat dilihat pada Lampiran-H
73