Professional Documents
Culture Documents
Dosen Pembimbing:
A. Subhan KH, ST
NIP. 19770120 200801 1010
Dosen Pembimbing:
A. Subhan KH, ST
NIP. 19770120 200801 1010
i
RANCANG BANGUN RTP PACKET-CHUNK
DE-ENCAPSULATOR DATA AV STREAM FORMAT RTP SEBAGAI
TERMINAL ACCESS MULTI-SOURCE STREAMING SERVER
Oleh :
AHMAD BUDI SETIYAWAN
NRP.7206.040.045
Disetujui oleh :
Tim Penguji Proyek Akhir : Dosen Pembimbing :
ENGESAHAN
1. Tri Budi Santoso, ST, MT 1. A Subhan KH, ST
NIP. 19700105 199502 1001 NIP. 19770120 200801 1010
Mengetahui,
Ketua Jurusan Teknik Telekomunikasi
Arifin, ST. MT
NIP. 19600503 198803 1004
ABSTRAK
ii
ABSTRAK
iii
ABSTRACT
iv
KATA PENGANTAR
الحمد ﷲ رب العا لمين
Penyusun
v
UCAPAN TERIMAKASIH
vi
9. Dan seluruh pihak yang namanya tidak mungkin saya sebutkan satu
per satu di sini. Terima kasih telah membantu saya dalam
menyelesaikan studi dan proyek akhir ini.
vii
DAFTAR ISI
HALAMAN JUDUL ....................................................................... i
LEMBAR PENGESAHAN............................................................. ii
ABSTRAK ....................................................................................... iii
ABSTRACT ..................................................................................... iv
KATA PENGANTAR ..................................................................... v
UCAPAN TERIMA KASIH ........................................................... vi
DAFTAR ISI .................................................................................... viii
DAFTAR GAMBAR ....................................................................... xi
DAFTAR TABEL............................................................................ xv
BAB I PENDAHULUAN ................................................................ 1
1.1 Latar Belakang ................................................................... 1
1.2 Rumusan Masalah .............................................................. 2
1.3 Batasan Masalah................................................................. 2
1.4 Tujuan ................................................................................ 2
1.5 Metodologi ......................................................................... 2
1.5.1 Studi Literatur .......................................................... 2
1.5.2 Observasi .................................................................. 2
1.5.3 Mendisain dan Merancang Sistem ........................... 3
1.5.4 Implementasi De-enkapsulasi pada MSS ................. 3
1.5.5 Pengujian .................................................................. 5
1.6 Sistematika Pembahasan .................................................... 5
BAB II TEORI PENUNJANG ....................................................... 7
2.1 Model Referensi OSI .......................................................... 7
2.2 Aplikasi Multimedia Networking ....................................... 8
viii
2.2.1 Contoh Aplikasi Multimedia Networking ................ 8
2.3 Konsep Streaming .............................................................. 10
2.3.1 Proses Transmisi pada Proses Video Streaming ...... 11
2.3.2 Pengaksesan Data Streaming dari Web Server ........ 12
2.3.3 Real Time Streaming Protokol (RTSP) .................... 13
2.3.4 QoS Audio/Video Streaming ................................... 15
2.3.5 Menghilangkan Delay Jitter ..................................... 18
2.3.6 Memperbaiki Packet Loss ........................................ 20
2.4 Protokol Streaming ............................................................. 20
2.4.1 RTP (Real Time Protocol)........................................ 21
2.4.2 RTCP (Real Time Control Protocol) ........................ 23
2.5 De-enkapsulasi ................................................................... 24
2.6 Pemrograman Socket .......................................................... 25
2.6.1 Jenis-jenis Socket ..................................................... 27
2.7 ORTP ................................................................................. 28
2.8 Demultiplxing .................................................................... 43
BAB III PERANCANGAN SISTEM ............................................. 45
3.1 Deskripsi Umum Sistem..................................................... 45
3.1.1 Tahap Perencanaan Flowchart ................................. 45
3.2 Perencanaan Perangkat Pendukung .................................... 47
3.2.1 Perancangan Perangkat Keras (hardware) ................ 47
3.2.2 Perancangan Perangkat Lunak (software) ................ 47
3.3 Implementasi Sistem .......................................................... 47
3.3.1 Instalasi Perangkat Keras (Hardware) ...................... 48
3.3.2 Instalasi Perangkat Lunak (Software) ...................... 48
ix
3.3.2.1 Instalasi oRTP-0.16.3 ................................... 48
3.3.2.2 Instalasi dan Konfigurasi Wireshark ............ 51
3.3.2.3 Kompile dan Jalankan oRTP 0.16.3 ............ 53
3.4 Tempat dan Waktu Pelaksanaan......................................... 53
3.5 Metode Pengukuran Parameter QoS .................................. 54
BAB IV IMPLEMENTASI DAN PENGUJIAN ........................... 55
4.1 Pengujian Demultiplexing Pengiriman packet RTP ........... 55
4.2 Analisa MTU dan Penambahan RTP Header ..................... 58
4.3 Pengukuran Time Eksekusi Demultiplexer ........................ 64
4.4 Pengukuran QoS Audio/Video Streaming.......................... 67
4.4.1 Packet Loss .............................................................. 68
4.4.2 Delay ........................................................................ 71
4.4.3 Jitter.......................................................................... 81
4.4.3 Throughput ............................................................... 84
BAB V PENUTUP ........................................................................... 89
5.1 Kesimpulan ........................................................................ 89
5.1 Saran................................................................................... 90
DAFTAR PUSTAKA ...................................................................... 91
LAMPIRAN ..................................................................................... 93
x
DAFTAR GAMBAR
xi
Gambar 3.4 Konfigurasi oRTP 0.16.3 ............................................... 49
Gambar 3.5 Kompile paket oRTP 0.16.3 .......................................... 49
Gambar 3.6 Menjalankan contoh program oRTP 0.16.3 ................... 50
Gambar 3.7 Install program dan file pendukung oRTP 0.16.3 .......... 51
Gambar 3.8 Wireshark ...................................................................... 51
Gambar 3.9 Menu capture interface .................................................. 52
Gambar 3.10 Analisa protokol streaming menggunakan wireshark .. 52
Gambar 3.11 Hasil packet capture oleh wireshark ............................ 53
Gambar 4.1 Capture paket pertama yang diterima demultiplexer ..... 55
Gambar 4.2 Capture paket pertama yang dikirim demultiplexer ...... 55
Gambar 4.3 Capture paket kedua yang diterima demultiplexer ........ 56
Gambar 4.4 Capture paket kedua yang dikirim demultiplexer .......... 56
Gambar 4.5 Capture paket ketiga yang diterima demultiplexer ........ 56
Gambar 4.6 Capture paket ketiga yang dikirim demultiplexer.......... 57
Gambar 4.7 Capture paket keempat yang diterima demultiplexer .... 57
Gambar 4.8 Capture paket keempat yang dikirim demultiplexer ...... 57
Gambar 4.9 Video dengan ukuran paket kirim 172 bytes ................. 59
Gambar 4.10 Video dengan ukuran paket kirim 332 bytes ............... 59
Gambar 4.11 Video dengan ukuran paket kirim 492 bytes ............... 60
Gambar 4.12 Video dengan ukuran paket kirim 652 bytes ............... 60
Gambar 4.13 Video dengan ukuran paket kirim 812 bytes ............... 61
Gambar 4.14 Video dengan ukuran paket kirim 972 bytes ............... 61
Gambar 4.15 Video dengan ukuran paket kirim 1132 bytes ............. 62
Gambar 4.16 Video dengan ukuran paket kirim 1292 bytes ............. 62
Gambar 4.17 Video dengan ukuran paket kirim 1452 bytes ............. 63
xii
Gambar 4.18 Video dengan ukuran paket kirim 1500 bytes ............. 63
Gambar 4.19 Video dengan ukuran paket kirim 1501 bytes ............. 64
Gambar 4.20 Grafik nilai time eksekusi pada demultiplexer ............ 67
Gambar 4.21 Topologi sesi komunikasi peer to peer ........................ 67
Gambar 4.22 Topologi sesi komunikasi student PENS ..................... 68
Gambar 4.23 Grafik nilai packet loss pada demultiplexer untuk
komunikasi peer to peer ............................................... 69
Gambar 4.24 Grafik nilai packet loss pada demultiplexer untuk
komunikasi student PENS ........................................... 70
Gambar 4.25 Grafik nilai delay paket RTP menuju port 5000
untuk komunikasi peer to peer ..................................... 72
Gambar 4.26 Grafik nilai delay paket RTP menuju port 5001
untuk komunikasi peer to peer ..................................... 73
Gambar 4.27 Grafik nilai delay paket RTP menuju port 5002
untuk komunikasi peer to peer ..................................... 74
Gambar 4.28 Grafik nilai delay paket RTP menuju port 5003
untuk komunikasi peer to peer ..................................... 75
Gambar 4.29 Grafik nilai delay paket RTP menuju port 5000
untuk komunikasi jaringan student PENS ................... 78
Gambar 4.30 Grafik nilai delay paket RTP menuju port 5001
untuk komunikasi jaringan student PENS ................... 79
Gambar 4.31 Grafik nilai delay paket RTP menuju port 5002
untuk komunikasi jaringan student PENS ................... 80
Gambar 4.32 Grafik nilai delay paket RTP menuju port 5003
untuk komunikasi jaringan student PENS ................... 81
xiii
Gambar 4.33 Grafik nilai jitter pada demultiplexer untuk
komunikasi peer to peer ............................................... 82
Gambar 4.34 Grafik nilai jitter pada demultiplexer untuk
komunikasi jaringan student PENS ............................. 84
Gambar 4.35 Grafik nilai throughput pada demultiplexer untuk
komunikasi peer to peer ............................................... 85
Gambar 4.36 Grafik nilai throughput pada demultiplexer untuk
komunikasi jaringan student PENS ............................. 87
xiv
DAFTAR TABEL
xv
Tabel 4.11 Delay paket RTP menuju port 5002 untuk sesi komunikasi
jaringan student PENS ...................................................... 79
Tabel 4.12 Delay paket RTP menuju port 5003 untuk sesi komunikasi
jaringan student PENS ...................................................... 80
Tabel 4.13 Perbandingan jitter pada masing-masing port untuk
komunikasi peer to peer .................................................... 82
Tabel 4.14 Perbandingan jitter pada masing-masing port untuk
komunikasi jaringan student PENS ................................... 83
Tabel 4.15 Perbandingan throughput pada masing-masing port untuk
komunikasi peer to peer .................................................... 84
Tabel 4.16 Perbandingan jitter pada masing-masing port untuk
komunikasi jaringan student PENS ................................... 86
xvi
BAB I
PENDAHULUAN
1
2
1.4 Tujuan
Penelitian pada proyek akhir ini bertujuan sebagai berikut :
a. Merancang dan mengimplementasikan RTP packet-chunk de-
encapsulator data AV stream format RTP sebagai terminal
access multi-source video streaming.
b. Mengimplementasikan multi-source video dalam arsitektur IPTV
peer-to-peer (P2P).
1.5 Metodologi
Untuk meyelesaikan desain dan perancangan ini, maka dilakukan
langkah-langkah yang meliputi : mendesain dan merancang sistem,
mendesain demultiplexser dan de-encapsulasi, Implementasi
demultiplexer dan de-encapsulator pada multi- source video streaming,
analisa packet loss, delay jitter, end-to-end delay dan kesimpulan.
Rincian tahapan yang akan ditempuh adalah sebagai berikut
1.5.2 Observasi
Sambil melakukan studi pustaka atau literatur akan dilakukan
3
Sistem yang akan dirancang secara umum adalah sesuai Gambar 1.1
berikut :
Gambar 1.1. Blok diagram sistem
C 3.3
C 3.2
C 3.1
C 2.3
C 2.2
C 2.1
C 1.3
C 1.2
C 1.1
C 4.3
C 4.2
C 4.1
Gambar 1.2. Blok diagram de-enkapsulator
1.5.5 Pengujian
Pada tahap ini akan menganalisa hal-hal berikut ini :
5
¾ Bab 1 Pendahuluan
Menguraikan latar belakang, rumusan masalah, batasan masalah,
tujuan, metodologi dan sistematika pembahasan.
¾ Bab 2 Teori Penunjang
Berisikan dasar teori untuk menunjang penyelesaian masalah dan
dijelaskan landasan teori dari poin – poin penting yang digunakan
dalam proyek akhir ini.
¾ Bab 3 Perancangan Sistem
Membahas tentang proses perencanaan sistem secara keseluruhan
dan konfigurasi setiap perangkat yang digunakan baik server
maupun client. Serta metode pengumpulan data dan analisa.
¾ Bab 4 Implementasi, Hasil dan Pembahasan
Memuat implementasi sistem, hasil pengujian dan analisa terhadap
hasil yang didapat sesuai dengan tujuan yang ditetapkan.
¾ Bab 5 Penutup
Berisi tentang kesimpulan dari pembahasan bab – bab sebelumnya
dan saran – saran serta beberapa kemungkinan pengembangan
proyek akhir ini.
6
7
8
2. End-to-End Delay
End-to-end delay adalah akumulasi pengolahan dan
keterlambatan queueing di router, delay propagasi, dan proses
delay end-system. Untuk aplikasi audio yang interaktif, seperti
telepon internet, end-to-end delay lebih kecil dari 150 milidetik.
Dengan delay kurang dari 150 milidetik maka tidak akan dirasakan
oleh pendengaran manusia. Delay antara 150 dan 400 milidetik
dapat masih diterima namun itu tidaklah ideal dan delay melebihi
400 milidetik menghasilkan suara percakapan yang terputus-putus.
Aplikasi penerima Internet telephony biasanya akan mengabaikan
semua paket tertunda yang lebih dari batasan tertentu, misalnya,
lebih dari 400 milidetik. Dengan demikian, paket-paket tertunda
lebih dari ambang batasnya secara efektif akan hilang. Tabel 2.3
adalah tabel tentang kategori delay :
17
3. Delay jitter
Jitter merupakan variasi delay yang terjadi akibat adanya
selisih waktu atau interval antar kedatangan paket di penerima.
Salah satu komponen end-to-end delay adalah keterlambatan
queueing acak di router. Karena keterlambatan queueing acak
dalam jaringan ini, mengakibatkan waktu yang dibutuhan ketika
sebuah paket yang dihasilkan pada sumbernya untuk sampai
diterima di penerima dapat berfluktuasi dari paket satu ke paket
selanjutnya. Fenomena ini disebut jitter. Untuk mengatasi jitter
maka paket data yang datang dikumpulkan dulu dalam jitter buffer
selama waktu yang telah ditentukan sampai paket dapat diterima
pada sisi penerima dengan urutan yang benar.
Sebagai contoh, ketika 2 paket berturut-turut dikirim. Pengirim
mengirimkan paket kedua 20 milidetik setelah mengirim paket
pertama. Tetapi pada penerima selisih waktu paket-paket tersebut
dapat menjadi lebih besar dari 20 milidetik. Untuk membuktikan
ini, misalkan paket pertama tiba ke antrian yang kosong pada
sebuah router, tapi sebelum paket kedua tiba ke antrian ada
beberapa paket yang lain dari sumber tiba diantrian yang sama.
Karena paket kedua mengalami penundaan queueing besar, paket
pertama dan kedua selisih waktunya lebih dari 20 milidetik. (Pada
kenyataannya, jarak antara dua paket berturut-turut dapat menjadi
satu detik atau lebih). Jarak antara urutan paket juga dapat
menjadi kurang dari 20 milidetik. Pada Gambar 2.6 menjelaskan
bagaimana proses terjadiya delay jitter dan pada Tabel 2.4
merupakan kategori peak jitter.
4. Throughput
Throughput, yaitu kecepatan (rate) transfer data efektif,
yang diukur dalam bps. Troughput merupakan jumlah total
kedatangan paket yang sukses yang diamati pada destination selama
interval waktu tertentu dibagi oleh durasi interval waktu tersebut.
1) V, Version. 2 bits.
Versi dari RTP. Selalu diatur 2.
2) P, Padding. 1 bit.
Jika diatur adanya padding, maka paket ini berisi satu atau
lebih byte padding tambahan yang terletak di akhir tetapi bukan
bagian dari payload. Padding mungkin diperlukan oleh
beberapa algoritma enkripsi dengan ukuran blok tetap atau
pembawa paket RTP pada layer protokol yang lebih rendah.
3) X. Extensions. 1 bit.
Jika diatur adanya extensions, maka header diikuti dengan satu
ekstensi header tetap.
4) M, Marker. 1 bit.
Penafsiran marker didefinisikan oleh profil. Ini dimaksudkan
agar ada batas bingkai yang ditandai dalam aliran paket, Profil
dapat menentukan bit penanda tambahan (marker) atau
menetapkan tidak adanya marker dengan mengubah jumlah bit
dibidang jenis payload.
5) PT, Payload Type. 7 bits.
Mengidentifikasi format payload RTP dan menentukan
penafsiran oleh aplikasi. Secara default profil menentukan
pemetaan statis terhadap kode jenis payload untuk format
payload. Tambahan kode jenis payload kemungkinan
didefiisikan secara dinamis oleh non-RTP. Sebuah pengirim
RTP mengirimkan jenis single RTP payload pada waktu
tertentu; bidang ini dimaksudkan untuk multiplexing dengan
media stream yang terpisah.
6) Sequence Number. 16 bits.
Sequence number merupakan nomor urutan paket setiap data
paket RTP terkirim, dan dapat digunakan oleh penerima
sebagai pendeteksi packet loss dan untuk mengembalikan
urutan paket. Nilai awal nomor urutan paket adalah acak.
23
7) Timestamp. 32 bits.
Timestamp mencerminkan sampling dari octet pertama dalam
data paket RTP. Sampling harus berasal dari peningkatan jam
yang monoton dan linier untuk memungkinkan sinkronisasi dan
perhitungan jitter. Sebagai contoh, untuk audio fixed-rate
kemungkinan timestamp akan naik per satu untuk setiap
periode sampling. Jika suatu aplikasi audio yang membaca blok
mencakup periode sampling 160 dari input, timestamp akan
meningkat 160 untuk setiap blok tersebut.
8) SSRC, Synchronization source. 32 bits
Mengidentifikasi sumber sinkronisasi. Nilai dipilih secara acak,
dengan maksud bahwa tidak ada sumber kedua dalam sesi RTP
yang sama yang akan memiliki SSRC sama. Meskipun
kemungkinan berbagai sumber memilih identifier yang sama
rendah, semua implementasi RTP harus siap untuk mendeteksi
dan menyeleseikan collisions. Jika alamat transport sumber
berubah, SSRC juga harus memilih SSRC baru untuk
menghindari penafsiran sumber yang berulang.
2.5 De-enkapsulasi
De-enkapsulasi, terjadi saat client tujuan menerima paket data.
Data mengalir ke atas dari layer yang lebih rendah ke layer yang lebih
tinggi dari TCP/IP protocol. Setiap layer membuka header yang cocok
dan menggunakan informasi yang dikandungnya untuk disampaikan ke
layer di atasnya sampai pada layer tertinggi atau layer aplikasi
mendapatkan data dalam jaringan sesungguhnya.
file yang akan diakses. Kemudian aplikasi tersebut memanggil read atau
write untuk membaca data dari pada file atau menuliskan data ke file.
Setelah itu close dijalankan untuk mengakhiri aplikasi yang digunakan.
Interface soket dalam berkomunikasi bisa dilihat pada gambar 2.17
berikut :
2.7 ORTP
ORTP merupakan library untuk Real-time Transport Protocol
(RTP,RFC3550). Fitur-fitur oRTP meliputi :
1. Pemrograman bahasa C yang bekerja dibawah Linux
(beberapa Unix) dan Windows.
2. Mengimplementasikan RFC 3550 (RTP).
3. Mendukung untuk multiple profile, secara default AV
profile menggunakan (RFC 3551).
4. Termasuk sebuah packet scheduler untuk mengirimkan
dan menerima paket secara “on time”, menurut
timestampnya.
29
session : RtpSession
milisec : interval waktu dalam milisec untuk jitter yang dapat
dikompensasi
Mengatur jenis payload untuk paket yang masuk. Jika jenis payload
paket yang masuk tidak sesuai harapan, maka akan mengirimkan
sinyal "payload_type_changed".
21. mblk_t* rtp_session_recvm_with_ts (RtpSession *session,
uint32_t user_ts);
Socket flushes dipakai bila ada paket masuk yang tertunda. Hal ini
dapat berguna jika penerima tidak dapat menerima stream
sementara ingin mulai menerima lagi.
Nilai default adalah 65535 bytes, nilai yang besar untuk dikerjakan.
Namun jika aplikasi dapat membuat asumsi tentang MTU, dapat
diatur ke nilai yang lebih rendah untuk menghemat memori.
prof :
prof :
name :
prof :
index : nomor jenis payload
pt: gambaran jenis payload (obyek PayloadType)
5. #define rtp_profile_clear_payload (profile, index)
rtp_profile_set_payload (profile, index,NULL)
Makro test jika _session adalah bagian dari _set. 1 jika true, 0 false.
ss : pengaturan sesi
rtpsession : sesi RTP
43
Fungsi ini mirip sebagai libc fungsi select (), tetapi dilakukan pada
RtpSession bukan file descriptor. Session_set_select () menunda
proses komunikasi sampai beberapa peristiwa terjadi di salah satu
dari tiga set argumen. Dua set dapat NULL. Argumen pertama recvs
diartikan sebagai kumpulan RtpSession yang menunggu untuk
menerima peristiwa: buffer baru (mungkin kosong) ada pada satu
atau lebih pengaturan sesi, atau menerima operasi terakhir dengan
rtp_session_recv_with_ts () akan selesai jika berada dalam modus
blocking. Argumen kedua ditafsirkan sebagai satu pengaturan
RtpSession yang menunggu untuk mengirim peristiwa, contoh
komunikasi terakhir rtp_session_send_with_ts () pada sesi itu akan
selesai jika berada dalam modus blocking.
2.8 Demultiplexing
Pada jaringan protokol biasanya memerlukan demultiplexing
hirarkis untuk mengirimkan paket sampai ke tujuan. Sebagai contoh,
ketika sebuah paket tiba di adapter ethernet, maka ethernet akan
menentukan apakah jenis paket ini, misalnya paket IP atau sebuah
paket ARP. Jika sebuah paket IP, maka perlu mencari lagi header apa
yang di tambahkan pada paket tersebut, untuk menentukan apakah
sebuah paket tersebut UDP atau TCP dan seterusnya. Penggolongan
paket (classifier paket) dapat dilustrasikan pada Gambar 2.14.
44
BAB III
PERANCANGAN SISTEM
Pada bab perencanaan sistem ini, akan dijelaskan tentang
langkah pembuatan sistem, bahan dan alat yang diperlukan, cara kerja
sistem, installasi, tempat dan waktu pengerjaan.
C 3.3
C 3.2
C 3.1
C 2.3
C 2.2
C 2.1
C 1.3
C 1.2
C 1.1
C 4.3
C 4.2
C 4.1
Gambar 3.1 Blok diagram de-encapsulator
45
46
enkapsulasi paket RTP. Pada tujuan, bit stream ini kemudian diubah
menjadi frame. Header frame kemudian dilepas (de-enkapsulasi ethernet
frame) dan dikirim ke layer-3 sebagai paket. Paket selanjutnya melepas
IP header (De-enkapsulai IP header) dan mengirim data tersebut ke
layer-4 sebagai segment. Segment kemudian melepas header (de-
enkapsulasi UDP header) dan memberikan data ke layer-5,6,7 sebagai
paket RTP. Paket RTP yang diterima akan dipisah-pisah menurut video
sumbernya. Flowchart sistem ditunjukan pada Gambar 3.2.
Gambar 3.2 Flowchart sistem
47
1) PC Multiplexer
Menggabungkan dan mengenkapsulasi data streaming multi
source menjadi paket RTP.
2) PC Demultiplexer
Mendekapsulasi dan memisahkan data streaming multi source
menurut bagian-bagian video yang sesuai, yang kemudian
dikirim ke terminal access (displayer).
3) PC terminal access (Displayer)
Menampilkan data video.
4) Kabel RJ45
Kabel RJ 45 / UTP digunakan untuk menghubungkan satu
komputer dengan komputer yang lain.
Gambar 3.3 Desain sistem
1. Ekstrak ortp-0.16.3.tar.gz
# tar -xvf ortp-0.16.3.tar.gz
# make check
Gambar 3.6 Menjalankan contoh program oRTP 0.16.3
# make install
51
2) Jalankan program
# ./rtprecv4 9999
Keterangan :
9999 adalah nomor yang digunakan untuk menerima paket
RTP yang dikirimkan oleh multiplexer.
BAB IV
IMPLEMENTASI DAN PENGUJIAN
55
56
sendiri. Hal ini dapat dibuktikan dengan melihat ujung yang dilingkari
garis merah dari payload, disini terlihat bahwa ujung akhir dari setiap
payload saat diterima maupun dikirim selalu sama. Sedangkan untuk
ujung atas yang tidak dilingkari garis merah terlihat berbeda. Perubahan
ini terjadi karena header paket yang ditambahkan oleh multiplexer
dihapus dan diganti dengan yang baru oleh demultiplexer (diisi dengan
timestamp dan sequence number yang berbeda).
Tabel 4.1 Pengaruh ukuran data, RTP header dan paket yang dikirimkan
terhadap kondisi video
Ukuran Ukuran Data RTP header Paket kirim
Kondisi Video
Buffer (Bytes) (Bytes) (Bytes)
160 160 12 172 Baik
320 320 12 332 Baik
480 480 12 492 Baik
640 640 12 652 Baik
800 800 12 812 Baik
960 960 12 972 Baik
1120 1120 12 1132 Baik
1280 1280 12 1292 Baik
1440 1440 12 1452 Baik
1488 1488 12 1500 Baik
1489 1489 12 1501 Rusak
1600 1600 12 1612 Rusak
Dari data Tabel 4.2 maka dapat dibuat grafik seperti Gambar 4.20.
Dari kedua data tersebut diperoleh informasi bahwa maksimal waktu
yang dibutuhkan untuk melakukan demultiplexing adalah 0.070736
milidetik, sedangkan waktu minimal yang dibutuhkan adalah 0.030242
milidetik. Sedangkan rata-rata time eksekusi dalam interval 1 menit
adalah 0.050401567 milidetik. Karena time eksekusi masih di bawah 150
milidetik yang merupakan delay maksimal untuk QoS audio/video
streaming, maka algoritma yang digunakan sudah memenuhi untuk QoS
Audio/Video Streaming.
67
Terminal Access
Multiplexer Demultiplexer
Gambar 4.21 Topologi sesi komunikasi peer to peer
68
Server Student
PENS
Network
Tabel 4.3 Packet loss pada demultiplexer untuk sesi komunikasi peer to
peer
Pengukur- Port Port Port Port Port
an 9999(%) 5000(%) 5001(%) 5002(%) 5003(%)
1 0 0 0 0 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0
5 0 0 0 0 0
69
Tabel 4.3 Packet loss pada demultiplexer untuk sesi komunikasi peer
to peer (lanjutan)
Pengukur- Port Port Port Port Port
an 9999(%) 5000(%) 5001(%) 5002(%) 5003(%)
6 0 0 0 0 0
7 0 0 0 0 0
8 0 0 0 0 0
9 0 0 0 0 0
10 0 0 0 0 0
rata - rata 0 0 0 0 0
4.4.2 Delay
a. Komunikasi Peer to Peer
Komunikasi pada port 9999 merupakan pengiriman paket RTP yang
dilakukan oleh multiplexer dan kemudian diterima oleh demultiplexer.
Paket yang dikirimkan oleh multiplexer ini merupakan paket RTP yang
telah di-multiplexing. Sedangkan komunikasi pada port 5000 merupakan
pengiriman paket RTP ke displayer oleh demultiplexer setelah paket
dilakukan demultiplexing.
Tabel 4.5 Delay paket RTP menuju port 5000 untuk sesi komunikasi
peer to peer
Delay Port Delay Port Total Delay ke Port
Pengukuran
9999 (ms) 5000 (ms) 5000 (ms)
1 10.00041 39.98681 49.98722
2 10.00004 39.98636 49.9864
3 9.999704 39.98631 49.986014
4 10.00003 39.98432 49.98435
5 9.999869 39.98634 49.986209
6 10.00009 39.98804 49.98813
7 9.999857 39.98808 49.987937
8 10.00007 39.98641 49.98648
9 9.998864 39.98025 49.979114
10 10.00033 39.98643 49.98676
rata - rata 9.9999264 39.985935 49.9858614
72
Gambar 4.25 Grafik nilai delay paket RTP menuju port 5000 untuk
komunikasi peer to peer
Dari Tabel 4.5 maka dapat dibuat grafik seperti Gambar 4.25 yang,
menampilkan delay paket yang dikirimkan menuju displayer dari video
pertama.
Tabel 4.6 Delay paket RTP menuju port 5001 untuk sesi komunikasi
peer to peer
Delay Port Delay Port Total Delay ke Port
Pengukuran
9999 (ms) 5001 (ms) 5001 (ms)
1 10.00041 39.98643 49.98684
2 10.00004 39.98636 49.9864
3 9.999704 39.98636 49.986064
4 10.00003 39.98636 49.98639
5 9.999869 39.98771 49.987579
6 10.00009 39.98681 49.9869
7 9.999857 39.98648 49.986337
8 10.00007 39.98777 49.98784
9 9.998864 39.98407 49.982934
10 10.00033 39.98648 49.98681
rata - rata 9.9999264 39.986483 49.9864094
73
Gambar 4.26 Grafik nilai delay paket RTP menuju port 5001 untuk
komunikasi Peer to Peer
Dari Tabel 4.6 maka dapat dibuat grafik seperti Gambar 4.26 yang,
menampilkan delay paket yang dikirimkan menuju displayer dari video
kedua.
Tabel 4.7 Delay paket RTP menuju port 5002 untuk sesi komunikasi
peer to peer
Delay Port Delay Port Total Delay ke Port
Pengukuran
9999 (ms) 5002 (ms) 5002 (ms)
1 10.00041 39.98636 49.98677
2 10.00004 39.98108 49.98112
3 9.999704 39.98674 49.986444
4 10.00003 39.9866 49.98663
5 9.999869 39.98654 49.986409
6 10.00009 39.9868 49.98689
7 9.999857 39.98809 49.987947
8 10.00007 39.98647 49.98654
9 9.998864 39.98684 49.985704
10 10.00033 39.98635 49.98668
rata - rata 9.9999264 39.986187 49.986113
74
Gambar 4.27 Grafik nilai delay paket RTP menuju Port 5002 untuk
komunikasi peer to peer
Dari Tabel 4.7 maka dapat dibuat grafik seperti Gambar 4.27 yang,
menampilkan delay paket yang dikirimkan menuju displayer dari video
ketiga.
Tabel 4.8 Delay paket RTP menuju port 5003 untuk sesi komunikasi
peer to peer
Delay Port Delay Port Total Delay ke Port
Pengukuran
9999 (ms) 5003 (ms) 5003 (ms)
1 10.00041 39.98638 49.98679
2 10.00004 39.98504 49.98508
3 9.999704 39.98628 49.985984
4 10.00003 39.9803 49.98033
5 9.999869 39.98682 49.986689
6 10.00009 39.98653 49.98662
7 9.999857 39.98645 49.986307
8 10.00007 39.98781 49.98788
9 9.998864 39.98677 49.985634
10 10.00033 39.9865 49.98683
rata - rata 9.9999264 39.985888 49.985814
75
Gambar 4.28 Grafik nilai delay paket RTP menuju port 5003 untuk
komunikasi peer to peer
Dari Tabel 4.8 maka dapat dibuat grafik seperti Gambar 4.28 yang
menampilkan delay paket yang dikirimkan menuju displayer dari video
keempat.
Nilai delay yang jadi bahan analisa ini merupakan rata-rata selisih
waktu saat paket mulai dikirimkan hingga diterima client dalam durasi
pengukuran 2 menit.
Pengukuran yang dilakukan dalam proses komunikasi ini
menggunakan software wireshark yang diletakkan pada demultiplexer
(penerima). Berdasarkan data diatas dapat diamati bahwa total delay
tertinggi berada pada pengukuran keenam pada port 5000, sebesar
49.98813 milidetik sedangkan total delay terendah pada pengukuran
kesembilan pada port 5000 sebesar 49.979114 milidetik. Sehingga pada
sistem pengiriman paket RTP multi-source ini, waktu yang dibutuhkan
dari multiplexer mengirimkan paket sampai diterima oleh displayer
adalah nilai total delay dalam setiap port ditambah dengan time eksekusi
yang dilakukan demultiplexer untuk memecah video sesuai sumber
video. Berikut adalah rata-rata waktu yang dibutuhkan sejak multiplexer
mengirimkan paket untuk RTP untuk sampai di displayer di setiap port :
76
Port 5000 :
Port 5001 :
Port 5002 :
Port 5003 :
Keterangan :
Tabel 4.9 Delay paket RTP menuju port 5000 untuk sesi komunikasi
jaringan student PENS
Delay Port Delay Port Total Delay ke Port
Pengukuran
9999 (ms) 5000 (ms) 5000 (ms)
1 9.999196 40.23982 50.239016
2 9.999133 39.33962 49.338753
3 9.998967 40.93987 50.938837
4 9.999037 40.03992 50.038957
5 9.999074 40.23982 50.238894
6 9.999396 40.22983 50.229226
7 9.99945 40.75984 50.75929
8 9.999196 40.33882 50.338016
9 10.01456 40.29882 50.31338
10 10.02498 40.98978 51.01476
rata - rata 10.003299 40.341614 50.344913
78
Gambar 4.29 Grafik nilai delay paket RTP menuju port 5000 untuk
komunikasi jaringan student PENS
Dari Tabel 4.9 maka dapat dibuat grafik seperti Gambar 4.29, yang
menampilkan delay paket yang dikirimkan menuju displayer dari video
pertama.
Tabel 4.10 Delay paket RTP menuju port 5001 untuk sesi komunikasi
jaringan student PENS
Delay Port Delay Port Total Delay ke Port
Pengukuran
9999 (ms) 5001 (ms) 5001 (ms)
1 9.999196 40.82029 50.819486
2 9.999133 40.77115 50.770283
3 9.998967 40.37782 50.376787
4 9.999037 40.77314 50.772177
5 9.999074 40.37125 50.370324
6 9.999396 39.77335 49.772746
7 9.99945 40.27125 50.2707
8 9.999196 40.76216 50.761356
9 10.01456 40.74114 50.7557
10 10.02498 39.86308 49.88806
rata - rata 10.003299 40.452463 50.455762
79
Gambar 4.30 Grafik nilai delay paket RTP menuju port 5001 untuk
komunikasi jaringan student PENS
Dari Tabel 4.10 maka dapat dibuat grafik seperti Gambar 4.30, yang
menampilkan delay paket yang dikirimkan menuju displayer dari video
kedua.
Tabel 4.11 Delay paket RTP menuju port 5002 untuk sesi komunikasi
jaringan student PENS
Delay Port Delay Port Total Delay ke Port
Pengukuran 9999 (ms) 5002 (ms) 5002 (ms)
1 9.999196 40.65059 50.649786
2 9.999133 40.55153 50.550663
3 9.998967 40.45152 50.450487
4 9.999037 40.75152 50.750557
5 9.999074 40.45153 50.450604
6 9.999396 40.35154 50.350936
7 9.99945 40.35257 50.35202
8 9.999196 40.45151 50.450706
9 10.01456 40.45019 50.46475
10 10.02498 40.23241 50.25739
rata - rata 10.003299 40.469491 50.47279
80
Gambar 4.31 Grafik nilai delay paket RTP menuju port 5002 untuk
komunikasi jaringan student PENS
Dari Tabel 4.11 maka dapat dibuat grafik seperti Gambar 4.31, yang
menampilkan delay paket yang dikirimkan menuju displayer dari video
ketiga.
Tabel 4.12 Delay paket RTP menuju port 5003 untuk sesi komunikasi
jaringan student PENS
Delay Port Delay Port Total Delay ke Port
Pengukuran
9999 (ms) 5003 (ms) 5003 (ms)
1 9.999196 41.55021 51.549406
2 9.999133 40.16122 50.160353
3 9.998967 40.34024 50.339207
4 9.999037 40.96026 50.959297
5 9.999074 41.86081 51.859884
6 9.999396 41.36323 51.362626
7 9.99945 41.46122 51.46067
8 9.999196 41.16222 51.161416
9 10.01456 40.26132 50.27588
10 10.02498 40.62012 50.6451
rata - rata 10.003299 40.974085 50.977384
81
Gambar 4.32 Grafik nilai delay paket RTP menuju port 5003 untuk
komunikasi jaringan student PENS
Dari Tabel 4.12 maka dapat dibuat grafik seperti Gambar 4.32, yang
menampilkan delay paket yang dikirimkan menuju displayer dari video
keempat.
Data yang diperoleh dari pengukuran delay pada jaringan student
PENS, delay yang diperoleh tidak beda jauh dengan delay pada jaringan
peer to peer.
4.4.3 Jitter
a. Komunikasi Peer to Peer
Pengukuran jitter yang dilakukan tidak berbeda dengan pengukuran
delay, karena pengukuran dilakukan secara bersama – sama. Pada saat
uji coba jitter yang diukur merupakan rata-rata jitter beberapa paket
video yang ter-capture pada wireshark. Hasil pengukuran jitter adalah
pada Tabel 4.13 sebagai berikut :
82
Gambar 4.33 Grafik nilai jitter pada demultiplexer untuk komunikasi
peer to peer.
83
Berdasarkan Tabel 4.14 dan grafik Gambar 4.34, nilai jitter pada
sesi komunikasi jaringan student PENS lebih fluktuatif dibandingkan
dengan sesi komunikasi jaringan peer to peer. Hal ini terjadi karena
pada jaringan student PENS, ada trafik paket data selain sistem ini.
Tinggi rendahnya trafik paket data dalam jaringan tersebut berpengaruh
pada nilai jitter dalam pengiriman paket RTP.
4.4.4 Throughput
a. Komunikasi Peer to Peer
Pada pengukuran throughput ini, data pengukuran diambil dari
paket-paket video yang dibawa oleh protokol RTP melalui UDP.
Dibawah ini merupakan data hasil pengukuran throughput pada
demultiplexer jaringan komunikasi peer to peer :
Dari Tabel 4.15 maka dapat dibuat grafik seperti Gambar 4.35, dari
kedua informasi tersebut terlihat bahwa besar throughput untuk paket
video berada pada range 1187.53 kbps pada port 9999, range 302.75
pada port 5000, range 302.73 pada port 5001, range 302.79 pada port
5002 dan 302.72 pada port 5003. Perbedaan mencolok throughput pada
port 9999 dengan port yang lain disebabkan karena pada port 9999 tidak
mengalami pembagian bandwidth dalam satu kanal. Sebaliknya dengan
86
port 5000, port 5001, port 5002 dan port 5003 yang mengalami
pembagian bandwidth dalam satu kanal. Karena ada pembagian kanal
untuk 4 port, mengakibatkan throughput yang diperoleh 4 kali lebih
kecil. Tetapi jumlah nilai throughput dari keempat port tersebut akan
lebih besar dibandingkan dengan nilai throughput port 9999. Hal ini
dikarenakan adanya penambahan header dibawah layer RTP disetiap
port untuk pengiriman paket RTP.
Dari Tabel 4.16 dan grafik Gambar 4.36, terlihat bahwa besar
throughput untuk paket video berada pada range 1202.48 kbps pada port
9999, range 35.04 pada port 5000, range 32.69 pada port 5001, range
38.79 pada port 5002 dan 33.17 pada port 5003. Dengan hasil
pengukuran diatas maka dapat disimpulkan bahwa trafik jaringan sangat
berpengaruh pada nilai throughput yang diperoleh. Pada jaringan peer to
peer, throughput yang diperoleh masih layak untuk mengirimkan paket
video streaming sedangkan pada jaringan student PENS pada port 5000,
5001, 5002 dan 5003 yang digunakan untuk komunikasi antara
demultiplexer dan displayer tidak layak untuk mengirimkan paket video
streaming. Hal ini dikarenakan untuk komunikasi antara demultiplexer
dan displayer pada port tersebut memperoleh throughput yang sangat
kecil. Sehingga tidak memungkinkan untuk mengirimkan paket video
dengan kualitas yang baik. Perolehan throughput yang kecil ini,
disebabkan oleh adanya bandwidth limiter yang ditanamkan pada
jaringan student PENS.
88
BAB V
PENUTUP
5.1 Kesimpulan
Setelah dilakukan pengujian sistem ini, maka diperoleh kesimpulan
dan yang diharapkan berguna untuk perbendaharaan ilmu dan teknologi
serta bagi kelanjutan dalam penyempurnaan sistem ini.
Dari hasil pengujian dan analisa diperoleh beberapa kesimpulan
sebagai berikut :
1. Proses demultiplexer bisa dilakukan dengan cara pemisahan
setiap blok paket data dengan ukuran buffer yang sama antara
pengirim dan penerima..
2. Paket yang dikirmkan melebihi MTU sebesar 1500 byte akan
mengalami kerusakan saat diterima receiver.
3. Rata-rata packet loss yang terjadi pada jaringan peer to peer
dan jaringan student PENS adalah 0% yang sudah memenuhi
standar ITU-T Recommendation G.1010 yaitu dibawah 1%.
4. Rata-rata nilai delay yang terukur pada jaringan peer to peer
dan jaringan student PENS adalah 50 milidetik, sehingga sudah
memenuhi standar ITU-T Recommendation G.1010 yaitu
dibawah 150 milidetik.
5. Rata–rata nilai jitter pada jaringan peer to peer dan jaringan
student PENS untuk komunikasi antara multiplexer dan
demultiplexer sebesar 2 milidetik sedangkan komunikasi antara
demultiplexer dan displayer lebih kecil, yaitu sebesar 0.7
milidetik. Dengan nilai jitter yang diperoleh maka masih dalam
kategori bagus, seperti yang dicantumkan pada Tabel 2.4
6. Rata–rata nilai throughput pada jaringan peer to peer untuk
komunikasi antara multiplexer dan demultiplexer sebesar 1187
kbps sedangkan komunikasi antara demultiplexer dan displayer
lebih kecil, yaitu sebesar 302 kbps. Nilai throughput pada
jaringan student PENS untuk komunikasi antara multiplexer
dan demultiplexer sebesar 1202 kbps sedangkan komunikasi
antara demultiplexer dan displayer lebih kecil, yaitu sebesar 35
kbps.
89
90
5.2 Saran
Karena adanya kelemahan pada sistem demultiplexer pada proyek
akhir ini, maka diperlukan pengembangan lebih lanjut. Dan saran-saran
untuk proyek akhir ini adalah :
1. Menggunakan IPv6 sebagai sistem alamat IP yang bekerja pada
jaringan streaming yang dibuat. Mengingat di masa yang akan
datang IPv6 akan menjadi standar umum penggunaan alamat
IP.
2. Proses demultiplexer multi-source video streaming sebaiknya
menggunakan adaptive jitter, sehingga keterlambatan paket
bisa ditangani dan mengurangi packet loss.
3. Proses demultiplexer multi-source video streaming sebaiknya
menggunakan error checking untuk mengurangi kerusakan
video.
DAFTAR PUSTAKA
91
92
LAMPIRAN
#include <ortp/ortp.h>
#include <signal.h>
#include <stdlib.h>
#include <unistd.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/time.h>
char buffer_send4[1450];
int prog4();
uint32_t user_ts=0;
RtpSession *session1;
RtpSession *session2;
RtpSession *session3;
RtpSession *session4;
ortp_init();
ortp_scheduler_init();
ortp_set_log_level_mask(ORTP_DEBUG|ORTP_ME
SSAGE|ORTP_WARNING|ORTP_ERROR);
signal(SIGINT,stop_handler);
session=rtp_session_new(RTP_SESSION_RECVON
LY);
rtp_session_set_scheduling_mode(session,1)
;
rtp_session_set_blocking_mode(session,1);
rtp_session_set_local_addr(session,"0.0.0.
0",atoi(argv[5]));
rtp_session_set_connected_mode(session,TRU
E);
rtp_session_set_symmetric_rtp(session,TRUE
);
rtp_session_enable_adaptive_jitter_compens
ation(session,adapt);
95
rtp_session_set_jitter_compensation(sessio
n,jittcomp);
rtp_session_set_payload_type(session,0);
rtp_session_signal_connect(session,"ssrc_c
hanged",(RtpCallback)ssrc_cb,0);
rtp_session_signal_connect(session,"ssrc_c
hanged",(RtpCallback)rtp_session_reset,0);
a=1;
//sesi program kirim
session1=rtp_session_new(RTP_SESSION_SENDO
NLY);
session2=rtp_session_new(RTP_SESSION_SENDO
NLY);
session3=rtp_session_new(RTP_SESSION_SENDO
NLY);
session4=rtp_session_new(RTP_SESSION_SENDO
NLY);
while(cond)
{
have_more=1;
while (have_more){
if (a==5) a=1;
err=rtp_session_recv_with_ts(session,buffe
r,1450,ts,&have_more);
if (err>0) stream_received=1;
if ((stream_received) && (err>0));
if (a==1){
memmove(buffer_send1,buffer,1450);
prog1();
}
if (a==2){
memmove(buffer_send2,buffer,1450);
prog2();
}
96
if (a==3){
memmove(buffer_send3,buffer,1450);
prog3();
}
if (a==4){
memmove(buffer_send4,buffer,1450);
prog4();
}
a+=1;
}
ts+=80;
}
rtp_session_destroy(session);
ortp_exit();
ortp_global_stats_display();
return 0;
}
ortp_init();
ortp_scheduler_init();
ortp_set_log_level_mask(ORTP_MESSAGE|ORTP_
WARNING|ORTP_ERROR);
97
rtp_session_set_scheduling_mode(session1,1
);
rtp_session_set_blocking_mode(session1,1);
rtp_session_set_connected_mode(session1,TR
UE);
rtp_session_set_remote_addr(session1,argv[
2],atoi(argv[3]));
rtp_session_set_payload_type(session1,0);
ssrc=getenv("SSRC");
if (ssrc!=NULL) {
printf("using
SSRC=%i.\n",atoi(ssrc));
rtp_session_set_ssrc(session1,atoi(ssrc));
}
signal(SIGINT,stophandler);
if( ((i=strlen(buffer))>0) && (runcond) )
{
rtp_session_send_with_ts(session1,buffer,i
,user_ts);
user_ts+=80;
if (clockslide!=0 &&
user_ts%(80*50)==0){
ortp_message("Clock sliding of
%i miliseconds now",clockslide);
rtp_session_make_time_distorsion(session1,
clockslide);
}
/*this will simulate a burst of late
packets */
if (jitter && (user_ts%(8000)==0)) {
struct timespec pausetime,
remtime;
ortp_message("Simulating late
packets now (%i milliseconds)",jitter);
98
pausetime.tv_sec=jitter/1000;
pausetime.tv_nsec=(jitter%1000)*1000000;
while(nanosleep(&pausetime,&remtime)==-1
&& errno==EINTR){
pausetime=remtime;
}
}
}
ortp_init();
ortp_scheduler_init();
ortp_set_log_level_mask(ORTP_MESSAGE|ORTP_
WARNING|ORTP_ERROR);
rtp_session_set_scheduling_mode(session2,1
);
rtp_session_set_blocking_mode(session2,1);
99
rtp_session_set_connected_mode(session2,TR
UE);
rtp_session_set_remote_addr(session2,argv[
2],atoi(argv[3]));
rtp_session_set_payload_type(session2,0);
ssrc=getenv("SSRC");
if (ssrc!=NULL) {
printf("using
SSRC=%i.\n",atoi(ssrc));
rtp_session_set_ssrc(session2,atoi(ssrc));
}
signal(SIGINT,stophandler);
if( ((i=strlen(buffer))>0) && (runcond) )
{
rtp_session_send_with_ts(session2,buffer,i
,user_ts);
user_ts+=80;
if (clockslide!=0 &&
user_ts%(80*50)==0){
ortp_message("Clock sliding of
%i miliseconds now",clockslide);
rtp_session_make_time_distorsion(session2,
clockslide);
}
/*this will simulate a burst of late
packets */
if (jitter && (user_ts%(8000)==0)) {
struct timespec pausetime,
remtime;
ortp_message("Simulating late
packets now (%i milliseconds)",jitter);
pausetime.tv_sec=jitter/1000;
pausetime.tv_nsec=(jitter%1000)*1000000;
100
while(nanosleep(&pausetime,&remtime)==-1
&& errno==EINTR){
pausetime=remtime;
}
}
}
printf("Program send 2 ts= %d\n",
user_ts);
printf("Kirim %d byte ke %s port %d\n",
strlen (buffer),argv[2],atoi(argv[3]));
//rtp_session_destroy(session2);
//ortp_exit();
//ortp_global_stats_display();
//return 0;
}
ortp_init();
ortp_scheduler_init();
ortp_set_log_level_mask(ORTP_MESSAGE|ORTP_
WARNING|ORTP_ERROR);
rtp_session_set_scheduling_mode(session3,1
);
rtp_session_set_blocking_mode(session3,1);
rtp_session_set_connected_mode(session3,TR
UE);
rtp_session_set_remote_addr(session3,argv[
2],atoi(argv[3]));
101
rtp_session_set_payload_type(session3,0);
ssrc=getenv("SSRC");
if (ssrc!=NULL) {
printf("using
SSRC=%i.\n",atoi(ssrc));
rtp_session_set_ssrc(session3,atoi(ssrc));
}
signal(SIGINT,stophandler);
if( ((i=strlen(buffer))>0) && (runcond) )
{
rtp_session_send_with_ts(session3,buffer,i
,user_ts);
user_ts+=80;
if (clockslide!=0 &&
user_ts%(80*50)==0){
ortp_message("Clock sliding of
%i miliseconds now",clockslide);
rtp_session_make_time_distorsion(session3,
clockslide);
}
/*this will simulate a burst of late
packets */
if (jitter && (user_ts%(8000)==0)) {
struct timespec pausetime,
remtime;
ortp_message("Simulating late
packets now (%i milliseconds)",jitter);
pausetime.tv_sec=jitter/1000;
pausetime.tv_nsec=(jitter%1000)*1000000;
while(nanosleep(&pausetime,&remtime)==-1
&& errno==EINTR){
pausetime=remtime;
102
}
}
}
printf("Program send 3 ts= %d\n",
user_ts);
printf("Kirim %d byte ke %s port %d\n",
strlen (buffer),argv[2],atoi(argv[3]));
//rtp_session_destroy(session3);
//ortp_exit();
//ortp_global_stats_display();
//return 0;
}
ortp_init();
ortp_scheduler_init();
ortp_set_log_level_mask(ORTP_MESSAGE|ORTP_
WARNING|ORTP_ERROR);
rtp_session_set_scheduling_mode(session4,1
);
rtp_session_set_blocking_mode(session4,1);
rtp_session_set_connected_mode(session4,TR
UE);
rtp_session_set_remote_addr(session4,argv[
2],atoi(argv[3]));
rtp_session_set_payload_type(session4,0);
ssrc=getenv("SSRC");
if (ssrc!=NULL) {
103
printf("using
SSRC=%i.\n",atoi(ssrc));
rtp_session_set_ssrc(session4,atoi(ssrc));
}
signal(SIGINT,stophandler);
if( ((i=strlen(buffer))>0) && (runcond) )
{
rtp_session_send_with_ts(session4,buffer,i
,user_ts);
user_ts+=80;
if (clockslide!=0 &&
user_ts%(80*50)==0){
ortp_message("Clock sliding of
%i miliseconds now",clockslide);
rtp_session_make_time_distorsion(session4,
clockslide);
}
/*this will simulate a burst of late
packets */
if (jitter && (user_ts%(8000)==0)) {
struct timespec pausetime,
remtime;
ortp_message("Simulating late
packets now (%i milliseconds)",jitter);
pausetime.tv_sec=jitter/1000;
pausetime.tv_nsec=(jitter%1000)*1000000;
while(nanosleep(&pausetime,&remtime)==-1
&& errno==EINTR){
pausetime=remtime;
}
}
}
104
...:::BIODATA PENULIS:::…
RIWAYAT PENDIDIKAN
Tahun Pendidikan
1994 – 2000 SDN 2 Kalipucung - Blitar
2000 – 2003 SMPN 9 Blitar
2003 – 2006 SMAN 1 Srengat – Blitar
2006 – 2010 Politeknik Elektronika Negeri Surabaya- ITS