Home

Configuring Calling Restriction on CUCM

Leave a comment

Pembahasan yg kadang yg ngajar juga bingung jelasinnya…wkwkw

Gw catet dulu disini biar ngerti alurnya…

Calling Restriction dalam Cisco CUCM (Appliance/Server) namanya CoS (Class of Service)

Sedangkan didalam Cisco CUCME (Voice Gateway Router) namanya CoR (Class of Restriction)

Best you remember that…

And by the way….CoS alias Class of Service ada 2 pembahasan

  • Buat QoS (IP Presedence dan DSCP)
  • Buat VoIP/Collaboration (kek ACL-nya Routing Switching…tapi buat Voice)

Yang kita bahas adalah yang kedua…untuk CUCM

———————————————–

The Theory

Ada 2 hal yang perlu kita setting untuk CoS in CUCM, Partition dan Calling Search Space

Partition: List Nomor2/Route Pattern/atau apapun yang ada NOMOR atawa DIAL NUMBER-nya yang BISA KITA AKSES (bisa kita call/telpon)

Calling Search Space: kumpulan dari partition2

Contohnya, di Line 1001 (ext. kita ceritanya) ditaro CSS_A, yang dimana CSS_A itu terdapat Partition A, Partition B, dst…

Artinya Line 1001 bisa akses partisi2 (nomor2 yang bisa diakses) mana saja tergantung dari CSS yang di assign ke Line/Nomor tersebut

Didalam Partition A itu ada dial-number2 yang BISA KITA AKSES, di partition B ada route_pattern2 yang bisa kita akses, dsb…

Kira2 begitu logicnya…

Nahhh…implementasinya malah kebalik….bikin dulu partitionnya…trus bikin CSS-nya…baru taro CSS itu di Line atau di Phone

Baru itu CSS kita bisa taro di Line (DN – Dial Number/Extension) atau taro di Phone (Physical)

*best case sih biasanya di Line, biar ga tumpang tindih…toh klo ada 2 CSS (1 di Line dan 1 di Phone), yang diakses yang Line dulu (Ext. Mobility juga ga bisa pake CSS di phone)

———————————————-

Simple Scenario

(pake CUCM beneran ya…ga bisa di packet tracer)

Contoh, kita pengen ext 1101 sampe 1103 bisa call satu sama lain, tapi ga bisa ke 1104

Sedangkan 1104 bisa call kesemua…

So…1101 – 1103 kita masukin ke Partisi Internal, sedangkan 1104 kita masukin ke Partision External

Configuring CSS

  1. Create Partition first (Call Routing > Class of Control > Partition)

Add new

Bikin 2 buah….external dan internal (yang jadi external adalah ext. 1104), abis dibikin jgn lupa klik Save

Partition sudah dibuat, saatnya masukin nomor2 itu ke partition (Device > Phone)

Masuk ke konfigurasi teleponnya (contoh ke ext 1101)

Masuk ke Line Configurationnya (click Line [1] – 1101)

***Alternatively (Call Routing > Directory Number > [number])

Nah, pilih partition-nya untuk 1101 (Route partition > PT_Internal), untuk nomor 1102 dan 1103 juga sama ke PT_Internal juga

Untuk ext 1104 pake yang PT_External

Sekarang kita bikin CSS-nya (Call Routing > Class of Control > Calling Search Space)

Add new

Heres where the magic happens…kita bikin 2 CSS, CSS_Local dan CSS_Global

Untuk CSS_Local, Selected Partition-nya kita kasih PT_Internal

Untuk CSS_Global, Selected Partition-nya kita kasih PT_Internal dan PT_External

Nah kita kasih itu CSS ke Phone-nya (less-recommended sih….) (Device > Phone)

On Calling Search Space drop-down box, select appropriate CSS (untuk ext 1101 sampe 1103, kita pake CSS_Local)

Save…restart IP Phone…coba call dari 1101 ke 1102 atau 1103 (vice versa)…it should be works, but not to ext 1104

Test calling from ext 1104 to other phones…it should works

*screenshot missing….maap >_<

———————————————

CSS yang biasa dipake di enterprise itu minimal ada 4 buah:

  • CSS_Emergency: ada PT_Emergency
  • CSS_Local: ada PT_Emergency dan PT_Local
  • CSS_National: ada PT_Emergency, PT_Local, dan PT_National
  • CSS_International: ada PT_Emergency, PT_Local, PT_National, dan PT_International

Tinggal taro de…line 1001 pake CSS mana, klo pake CSS_Local artinya Cuma bisa nelpon 911 sama internal extension aja

Tapi klo pake CSS_International bisa semua

Nah, klo ga mau 1-1 add CSS-nya, tinggal pake Device Pool trus taro CSS-nya di Pool itu…jadi semua phone/extension ikut kena efeknya (kek bikin grouping lah)

Calculating Bandwidth for Voice Call

Leave a comment

Prerequisite:

  • Knowledge of Voice over IP (like CCNA Voice)

==========================

Pertanyaannya adalah:

Kalau gw mau membuat panggilan (calling) ke suatu tempat, berapa sih actual bandwidth yang dipake?

4 hal yang penting:

  • Codec: jenis format “kompresi” suara yang kita gunakan
  • Samples: seberapa banyak voice (analog) yang kita mau “digitalisasikan” per-packet
  • Overhead: kek IP, RTP, dan UDP Header
  • (Optional) Tunneling: klo punya tunneling protocol atau VPN…nambah overhead lagi

Wokeh…lets explore those topic in 1 by 1

==========================

Codec

Pertama2…apa sih Codec itu? Kalau gw mau kirim suara lewat medium digital (kek IP protocol), berarti harus ada teknik atau format untuk bagaimana caranya bikin data analog jadi data digital

Format kompresi alias encoding/decoding analog ke digital itulah yang disebut Codec

Dalam banyak hal format encoding/decoding ini di proses di supervisor-nya Router (CPU klo kata orang IT Support bilang)

Ada yang proses formatting-nya detail banget (jadi menghasilkan suara digital semirip mungkin analog voice) dengan konsekuensi makan bandwidth per-streaming voice (kbps – KiloBit Per Second)

Ada juga dengan proses dibuat sedemikian rupa sehingga ga makan bandwidth per-streaming, tapi dengan konsekuensi high CPU/supervisor processing (compressing)

Nah, yang proses encoding/decoding yang paling umum (dan detail) untuk VoIP adalah Codec G.711 yang menghasilkan Voice Streaming sebesar 64 kbps

Itu baru 1 call, klo 10 call?? 64 x10 = 640 kbps, klo bandwidth WAN kita Cuma 1mbps (1024 kbps)…sisa Cuma setengah-nya aja, itu aja kurang…ouch

Akhirnya para akademisi (ya…Akademisi, bukan Engineer yang cuma bisa implementasi, Akademisi yang nge-riset) bikin beberapa variant Codec

Contohnya:

  • G.729: teknik kompresi yang sangat bagus, bisa menghasilkan voice call sebesar 8 kbps (wew…kecil bener), dengan konsekuensi High CPU Processing, yang artinya semakin lama call berarti semakin delay (1 packet belum selesai di compress, packet yang laen udah antri dibelakang (Queue), plus karena dikompress sedemikian rupa…jenis Codec ini ga cocok untuk nganterin Rich and High Quality Voice (contohnya?? Music)
  • Atau G.726: aga sedikit diatas G.729 untuk soal voice call (yang skrg bisa 16 kbps), tapi lebih more CPU/supervisor friendly
  • Dan list codec2 yang lain (now you know why codec variant exist so many)

Berikut adalah list codec yang disupport Router C3640-IK9O3S-M dengan versi update 12.4(25a))

Klo ada codec yang ga ada disitu? Ya update IOS-nya…klo ga bisa ya pake Server Call Manager, klo ga bisa juga…update Router-nya (yang paling ampuh sih ini hahaha)

Trus klo “digitizing” analog voice ini makan resource CPU, berarti riskan dong diimplementasikan? There’s a hero named DSP (Digital Signaling Processor)

klo prosessing voice ini di router supervisor ternyata makan resource…why don’t we move it to specialized CPU for Voice processing?!”

Itulah DSP…ini gambarnya (taken from cisco.com)

kasusnya kek kita pake PC, CPU intel (yang di motherboard) bisa mengolah grafis, tapi akan lebih baik klo grafis pake CPU tersendiri (GPU – graphics processing unit) sendiri, kek nVidia atau AMD ATi, supaya bisa offload CPU processing Intel-nya

DSP ini bisa ditaro di module…yang module nya di pasang di router (klo diamati…DSP ini mirip RAM yah aha)

nah, klo kita liat…tipe DSP pun banyak, kok bisa? Sama seperti tipe graphic card…kok bisa macem2? Jawabannya tergantung kebutuhan kan?

Begitu pula DSP…semakin bagus DSP, semakin banyak call processing yang bisa dia handle

Trus tipe DSP apa yang bagus untuk perusahaan saya? Well, ada beberapa hal yang harus diperhatikan…seperti mau pake codec apa…high atau low complexity (baca: kompresi codec…G.711 itu low sedangkan G.729 itu high) trus berapa banyak call yang mau keluar masuk router…dsb

LUCKILY…THERE IS…A DSP CALCULATOR (in Cisco), cocok buat elu2 yang jadi voice network engineer terutama pre-sales nya

(lo harus punya CCO login dulu baru bisa masuk) Caranya:

  • Pertama, pilih model router-nya
  • Kedua, pilih model IOS-nya
  • *Ketiga, lo mau pasang langsung DSP-nya (Interface Card)
  • *Keempat, atau lo mau pasang di Network Modules
  • Note: step ke 3 dan ke 4 tergantung tipe/model router-nya

Nah, abis itu baru klik next…

Disini kita diminta memasukkan akan ada berapa banyak call processing yang mau di transcoding (NAT versi voice…contohnya dari G.711 dijadiin G.729)

Trus ada voice conference kaga, pake Enkripsi kaga itu voice (Secure IP Services)

Next lagi…

Ada berapa banyak profile untuk Conference dan Transcoding-nya, next…

Yaks…kata Cisco, klo Cuma butuh buat 10 call pake G.711 dan ga ada fitur2 lain….pake DSP module yang PVDM3-16: 1 aja (“:1” maksudnya 1 buah aja)

*Note: PVDM3 (Packet-to-Voice Digital Signal) sudah bisa transcoding dan conferencing (yang PVDM2 kaga), dan hanya di support di ISR G2 Router Series (29XX dan 39XX), PVDM3-16…16 artinya hanya 16 channel (call) yang disupport

(sorry guys…gw ga bahas teknik kompresi G.711 yang make Pulse Code Modulation, atau teknik2 lain, atau macem2 format codec, terlalu banyak dan out of my scope)

=========================

Voice Samples

Okeh…contoh kita fix pake G.711, seberapa banyak voice yang mau kita transmisikan per packet (this called Sampling)

Penjelasan:

  • Klo kita Cuma ketik codec g711 <enter>, default voice payload-nya (bytes per frame) 160 bytes
  • G.711 ada yang tipe u-law dan tipe a-law (beda teknik pensinyalan aja, u-law dipake di US dan a-law di eropa dan rest of the world)
  • Codec G.711 support 3 voice payload (80, 160, dan 240)

Apa hubungannya voice payload dengan sampling?  voice payload inilah yang menentukan hasil sampling, tau ga hasil sampling dari payload ini berapa? engga..wkwkw

Ini artinya kita harus ngitung lagi !!

Hmph…fine

Rumusnya: Bytes per sample = (sample size x codec bandwidth in bps) /8

  • Kita tau Bytes per-sample nya (contoh gw pake 240)
  • Kita tau pake codec apa (G.711 = 64kbps = 64000 bps)
  • Dibagi 8 (/8) karena kita pake bytes bukan bit (1 bytes = 8 bit), so…

Jadi dalam 1 packet terdapat voice yang “berdurasi” 30ms

Klo pake 160 bytes per sample? 20ms, pake 80 bytes? 10ms

Berarti klo gw punya suara “berdurasi” 90ms dengan sampling 30ms, berarti itu voice packet dipecah 3 kali alias ada 3 packet yang dikirim, klo pake sampling 10ms? 9 packet yang dikirim…lebih banyak makan bandwidth

Kok bisa? Bukannya semakin kecil size-nya semakin ga makan bandwidth? Lha iki piye toh…sampling di”carry” pake apa?? IP, UDP, dan RTP (semuanya total 40 bytes)

Klo kita dikirim 3 packet berarti 3×40 alias 120 kbytes, coba klo 9 packet yang dikirim 360 kbytes

Oooo

Kesimpulannya = more sampling, more bandwidth saving….but more processing delay (klo bisa semua dianterin pake truk, ngapain make motor, buang2 tenaga)

=========================

L2, L3, dan L4 Overhead

Well, Header Ethernet berapa bytes? 18 bytes

Header IP? 20 bytes

Header UDP? 8 bytes

Header RTP? 12 bytes

Lets say kita pake PPP bukan ethernet (mau ke WAN ceritanya), berapa bytes? 6 bytes

Now lets calculate some of this header

note: kita juga bisa pake cRTP (compress RTP) yang bisa bikin L3+L4 overhead dari 40 bytes jadi 2-4 bytes

berikut contohnya:

cRTP

 

sadly, gw ga pernah nemu command buat cRTP di ethernet (disaraninnya pake QoS aja klo ga ada cRTP)

*Tunneling Overhead

Bisa engga bisa iya, tapi anggeplah kita pake juga…biar lebih real gituh loh…

MPLS = 4 bytes

GRE/L2TP = 24 bytes

IPSec = 50-57 bytes (depend on encryption and hashing used)

So…lets say kita pake VPN (common IPSec – 50 bytes)…berarti 286 +50 = 336 bytes

So…ACTUAL Voice Packet Size nya sebesar 336 bytes

==========================

PPS (Packet Per Second)

Now, we’re getting near here…the question is…how much EXACTLY pps for voice payload

Packets….per….second, alias dalam 1 detik, berapa banyak packet yang dikirim

Itung2annya adalah:

PPS = 1000 ms / voice sample

Karena 1 detik itu 1000 ms dan kita pake 30ms sample (240 voice payload) berarti: 1000ms / 30ms = 33.3 pps

Nah, ACTUAL pps-nya berapa…tinggal Packet Size x PPS

336 x 33.3 = 11,188.8 bytes per second

Itu kan dalam bytes…klo dalam bit? Tinggal x8

11,188.8 x8 = 89,510.4 bps alias 90 kbps (gw bulletin keatas)

90 kbps…for 1 call ONLY (udah plus IPSec VPN ituh), Klo pake MPLS…pake GRE juga…ya tambahin sendiri…

Makanya…biasanya untuk call dengan requirement normal, ekspektasi kita siapin 100kbps (1 call)

10 call….1 mpbs, klo dipikir2 dari codec yang tadinya “Cuma” 64kbps trus bengkak jadi 100kbps, lu-manyun juga (bukan lumayan lagi)

=========================

Reference:

Codec @http://en.wikipedia.org/wiki/Codec

G.711 codec @http://en.wikipedia.org/wiki/G.711

Digital Signaling Processor @http://en.wikipedia.org/wiki/Digital_signal_processor

Jeremy Ciohara #11747 CBt Nuggets CVOICE video

Cisco Docs, PVDM @http://www.cisco.com/c/en/us/products/collateral/interfaces-modules/voice-modules-interface-cards/qa_c67_553073.html

Cisco Docs, Voice over IP – Per Call Bandwidth Consumption @http://www.cisco.com/c/en/us/support/docs/voice/voice-quality/7934-bwidth-consume.html

RFC 2508 – cRTP @http://www.ietf.org/rfc/rfc2508.txt?number=2508

 

Older Entries