Mobil Cihazlarda RTMFP Protokolü ile P2P Görüntü İletimi



Benzer belgeler
BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

VERĠ HABERLEġMESĠ OSI REFERANS MODELĠ

Video Konferans ve Kurumsal İletişim Sistemi

İsimler : Köksal İçöz, Çağdaş Yürekli, Emre Uzun, Mustafa Ünsal Numaralar : , , , Grup No : E-1

Öğrencilerin Canlı derslere katılması, * Sisteme giriş

ULAKNET VoIP Servisi ve VoIP Çalışma Grubu

Değişen ve Gelişen Türkiye nin, Yenilikçi ve Atılımcı Elektronik Üreticisi

VOIP. Voice Over Internet Protocol (Internet Protokolü Üzerinden Ses) SEBAHAT111TİN GÜÇLÜ FIRAT ÜNİVERSİTESİ YAZILIM MÜHENDİSLİĞİ 1

Ağ Protokolleri. Aysel Aksu. Nisan, 2016

Computer Networks 5. Öğr. Gör. Yeşim AKTAŞ Bilgisayar Mühendisliği A.B.D.

Mobil Cihazlardan Web Servis Sunumu

İleri Düzey Bilgisayar Ağları

Elbistan Meslek Yüksek Okulu Güz Yarıyılı EKi Salı, Perşembe Öğr. Gör. Murat KEÇECĠOĞLU

Android e Giriş. Öğr.Gör. Utku SOBUTAY

01 WASTE Windows Linux ve macos (Sınırlı İşlevsellik)

Elbistan Meslek Yüksek Okulu Güz Yarıyılı

Protocol Mimari, TCP/IP ve Internet Tabanlı Uygulamalar

BİLGİSAYAR AĞLARI VE İLETİŞİM

PlaceCam Akademik İletişim Sistemi

Hızlı ve Güvenli Vale Hizmeti

Bilgi Teknolojisi Altyapısı. Tarihi Gelişim. Tarihi Gelişim. Bulut Servis Sağlayıcı. Bulut Bilişim

BİLGİ TEKNOLOJİSİ ALTYAPISI. Mustafa Çetinkaya

Prensipler Çoklu ortam uygulamalarının sınıflandırılması Uygulamaların ihtiyaç duyacağı ağ servislerini belirlemek Uygulamaların gerçek zamanlı

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2

BİLGİ TEKNOLOJİSİ ALTYAPISI. Mustafa Çetinkaya

Hızlı ve Güvenli Vale Hizmeti

Gazi Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Ağları Dersi Lab. 2. İçerik. IP ICMP MAC Tracert

BÖLÜM 7. Telekomünikasyon, İnternet ve, Kablosuz Teknoloji. Doç. Dr. Serkan ADA

PlaceCam Desktop Video Konferans

INTERNET PROGRAMCILIĞI. Kişisel Bağlantı. Neler Öğreneceğiz? Bağlantı Türleri. Gereksinimler. Modem

Bilgi güvenliği konusunda farkındalık yaratmak. Mobil cihazlardaki riskleri anlatmak. Mobil uygulamaların bilgi güvenliği açısından incelemek 2

Güvenli Doküman Senkronizasyonu

TC KİMLİK NO SMS GÖNDERİM XML API

BİLGİSAYAR AĞLARI. «Uygulama Katmanı»


Uygulama 6. Sunum 5. Oturum 4. Taşıma 3. Ağ 2. Veri iletim 1

Bölüm 9. İletişim ve Ağlar. Bilgisayarların. Discovering. Keşfi Computers Living in a Digital World Dijital Dünyada Yaşamak

O P C S T A N D A R D I

OSI REFERANS MODELI-II

Daha genişbantlı, tamamen mobil

03/03/2015. OSI ve cihazlar. Ağ Donanımları Cihazlar YİNELEYİCİ (REPEATER) YİNELEYİCİ (REPEATER) Yineleyici REPEATER

Karel Mobil. Kullanım Kılavuzu KULLANIM KILAVUZU

Hüseyin ÇIRAL

22/03/2016. OSI and Equipment. Networking Hardware YİNELEYİCİ (REPEATER) YİNELEYİCİ (REPEATER) Yineleyici. Hub

Bölüm 28 ve 29 : İstemci Sunucu Etkileşimi ve Soket API sine Giriş. Internet Protokolleri ve Ağ Uygulamaları. Internet Protokolleri Üzerinden İletişim

Kurumsal Güvenlik ve Web Filtreleme

Taşınabilir Teknolojiler

PHP 1. Hafta 1. Sunum

Akıllı telefonlar, avuçiçi bilgisayarlar ile taşınabilir (cep) telefonların özelliklerini birleştiren cihazlardır. Akıllı telefonlar kullanıcıların

Zilabs VoIP uygulaması için ADSL Ayarları

Kurumsal Güvenlik ve Web Filtreleme

AĞ HİZMETLERİ. Öğr.Gör.Volkan ALTINTAŞ. Version 4.0

IOT NEDİR? Bölüm 1. Internet of Things ekosistemi altında donanım, programlama, veri tabanı, veri analizi gibi alt yapılar yer almaktadır.

OG VE AG GENİŞBANT POWER LINE HABERLEŞME

Ağ Donanımları NIC. Hub. Ağ Cihazları (Aktif Cihazlar) Hub. Hub

Toplu İleti Gönderimi

Öğrenciler için Kablosuz İnternet Erişimi (Wi-Fi) Kullanım Kılavuzu

Đstanbul Teknik Üniversitesi Bilgi Đşlem Daire Başkanlığı. 9 Kasim 2007 INET-TR Ankara

BioAffix Ones Technology nin tescilli markasıdır.

Doç. Dr. Cüneyt BAYILMIŞ

TCP / IP NEDİR? TCP / IP SORUN ÇÖZME

Tümleşik TV Servisleri. Dr. Serkan Emek TTG, Teknoloji GMY Dijital Medya Sistemleri

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ

OSPF PROTOKOLÜNÜ KULLANAN ROUTER LARIN MALİYET BİLGİSİNİN BULANIK MANTIKLA BELİRLENMESİ

İnternet Programcılığı

Basit Mimari, Katmanlı Mimari ve doğrudan çalıştırma olarak üçe ayrılır.

Coslat Monitor (Raporcu)

Bilgisayar Programcılığı Uzaktan Eğitim Programı. e-bilg 121 AĞ TEKNOLOJİLERİNİN TEMELLERİ Öğr. Gör. Bekir Güler

Computer Networks 4. Öğr. Gör. Yeşim AKTAŞ Bilgisayar Mühendisliği A.B.D.

Bölüm 8 : PROTOKOLLER VE KATMANLI YAPI: OSI, TCP/IP REFERANS MODELLERİ.

2000 li yıllardan itibaren teknolojinin hızlı gelişiminden belki de en büyük payı alan akıllı telefon ve tabletler gibi kablosuz iletişim olanağı


TÜBİTAK UEKAE ULUSAL ELEKTRONİK ve KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ

Ipv6 Destekli Özgür Video Konferans Yazılımı: Fi6en

OG VE AG GENİŞBANT POWER LINE HABERLEŞME

Kablosuz Ağlar (WLAN)

Dünyanın bilgisine açılan pencere... Ya da sadece yeni çağın eğlencesi...

BİLGİSAYAR AĞLARI VE İLETİŞİM

Doç. Dr. Cüneyt BAYILMIŞ

Akıllı Kontrolde Teknoloji Devi SCADA YAZILIMI. Supervisory Control and Data Acquisition. ViewPLUS. Açık, Esnek, Ölçeklenebilir.

Bölüm 9. İletişim ve Ağlar. Bilgisayarların. Discovering. Keşfi Computers Living in a Digital World Dijital Dünyada Yaşamak

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Bilgisayar Ağları - 1 (BİL 403)

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları.

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

Dokunmatik Panel Ürün Ailesi. Eğitim Sunumu: Proje Uyarlama Kılavuzu

Sisteminiz Artık Daha Güvenli ve Sorunsuz...

SÜRE BAŞLAMA TARİHİ : 19/12/2018 BİTİŞ TARİHİ : 20/02/2019 KURS SÜRESİ : 144 Saat KURS NO :

Ağ Donanımları NIC. Modem. Modem. Ağ Cihazları (Aktif Cihazlar) Repeater (Yineleyici)

Bilgisayar Programcılığı

Veri İletişimi, Veri Ağları ve İnternet

Bütünleşik İletişim 9.0 İletişimde Yeni Çağ

DM-501 Tak-Çalıştır GPRS-UART Köprüsü

Antalya Tıp Bilişim Kongresi Kasım Can AKSOY IT Network (CTO / STL)

Kurum Personeli için Kablosuz İnternet Erişimi (Wi-Fi) Kullanım Kılavuzu

EC-485. Ethernet RS485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri

Ağ Temelleri. Murat Ozdemir Ondokuz Mayıs Üniversitesi Bilgi İşlem Daire Başkanı 15 Ocak Ref: HNet.23

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Ekin RED EAGLE (OS) GÜVENLİ ŞEHİR TEKNOLOJİLERİ YÖNETİM SİSTEMİ

Ekin RED EAGLE (OS) GÜVENLİ ŞEHİR TEKNOLOJİLERİ YÖNETİM SİSTEMİ

Transkript:

Mobil Cihazlarda RTMFP Protokolü ile P2P Görüntü İletimi Yalçın ALBAYRAK 1, Batuhan BULUT 2, Özcan ASİLKAN 3 1 Akdeniz Üniversitesi, Elektrik-Elektronik Mühendisliği Bölümü, Antalya, yalbayrak@akdeniz.edu.tr 2 Akdeniz Üniversitesi, Elektrik-Elektronik Mühendisliği Bölümü, Antalya, bthn.bulut@gmail.com 3 Akdeniz Üniversitesi, Bilgisayar Mühendisliği Bölümü, Antalya, oasilkan@akdeniz.edu.tr Özet: Mobil cihazların yaygın olarak kullanılması ve internet erişimi çeşitliliklerinin artmasından dolayı günümüzde pek çok kişi bu cihazlar üzerinden haberleşmeyi tercih etmektedir. Bu haberleşme gerçek zamanlı bir iletim olduğundan dolayı birçok farklı protokoller geliştirilmiştir. Bu çalışmada, Adobe tarafından geliştirilen RTMPF protokolü kullanılarak bu tür sistemlerin hızlı bir şekilde mobil cihazlarda geliştirilebildiği gösterilmiştir. Anahtar Sözcükler: RTMFP, P2P, Gerçek-Zamanlı Görüntü İletimi Abstract: Due to widespread usage of mobile devices and increasing varieties of internet access, today many people prefer to communicate over these devices. Since this communication is a real-time streaming, many different protocols have been developed. In this study, it is shown that these kind of systems can be rapidly developed on mobile devices by using RTMPF protocol. Keywords: RTMFP, P2P, Real-Time Video Streaming 1. Giriş Günümüzde internetin band genişliğinin iyice artmış olması, WLAN, 3G, WIFI gibi çok çeşitli mobil teknolojilerden internete ulaşıyor olmamız ve mobil cihazların (özellikle de akıllı telefonların) çok yaygın ve etkin bir şekilde kullanılıyor olması nedeniyle normal veri iletiminden daha çok anlık görüntü, ses ve veri

iletimine ihtiyaç duyulmaktadır. Cisco Visual Network [1] verilerine göre mobil cihazlarda multimedya (çoklu ortam) trafiğinin 2015 yılında, bugün olduğundan 35 kat daha fazla olacağı öngörülmektedir. Bundan dolayı gerçek zamanlı veri iletimi sağlayan protokollerin gelişimine ihtiyaç vardır. İnternet ilk tasarlandığında gerçek zamanlı veri iletimi yapılacağı düşünülmediği için mevcut TCP ve UDP protokolleri bu işlem için yeterli olmamaktadır. Bundan dolayı 1996 yılında IETF tarafından RTP (Real Time Transfer) protokol gerçek zamanlı ses, görüntü ve veri akışını kontrol etmek için geliştirildi[2]. SIP (Session Initiation Protocol) ise mobil cihazların multimedya veri iletimi için oturum kurabilmesi amacıyla tasarlandı. Bu protokoller kullanılarak günümüzde birçok Anlık Mesajlaşma (Instant Messaging) sistemi geliştirildi. Birçok açık kaynaklı veya ticari SDK bu protokoller üzerine geliştirildi. Bunların sundukları API üzerinden anlık mesajlaşma sistemlerini programlamak mümkün hale gelmiştir. Ama veri akışı API yı sağlayan kişi ya da kurumların sunucuları üzerinden olmaktadır. Bu uygulamaları mobil cihazlara taşımak istediğimizde karşımızda farklı donanımlarda ve işletim sistemlerinde çok fazla cihazın olduğunu görmekteyiz. Farklı mobil işletim sistemlerinde farklı programlama dillerine göre programlama gerekmektedir. Örnek olarak; Android için Java, IOS için Object C ve Windows Mobile için C# bilen birilerine ihtiyaç olmaktadır. Bu da bu tür programların geliştirme maliyetlerini ve sürelerini etkilemektedir. Adobe tarafından geliştirilen Flash teknolojisi [3] bilgisayarların çoğunda zaten kuruludur. RTMPF (Secure Real Time Media Flow Protocol) geliştirilerek gerçek zamanlı görüntü, ses ve veri iletimi sağlanmıştır. Böylelikle tüm platformlarda uçtan uca (P2P, Peer to Peer) iletim (streaming) yapma imkânı sunmaktadır. 2. RTMFP Protokolü RTMP (Real Time Messaging Protokol) Adobe firması tarafından gerçek zamanlı veri iletimi için flash player ve sunucular arasında geliştirilmiştir. RTMP protokolü TCP üzerinde çalışan ve veri aktarımı içinde bir sunucuya ihtiyacı vardır [4]. Band genişliğini daha verimli kullanmak ve kullanıcıların kendi aralarında gerçek zamanlı veri iletimini sağlamak amacıyla Adobe firması tarafından geliştirilen RTMFP (Secure Real Time Media Flow Protocol), ilk olarak 2012 yılında açıklanan P2P gerçek zamanlı veri iletimi protokolüdür. RTMFP, UDP üzerinde çalışan bir protokoldür. Bilindiği üzere UDP de paket kontrolü yoktur. RTMFP ağ üzerinde kullanıcılar

arasında doğrudan gerçek zamanlı iletişim yapmak için tasarlanmıştır. RTMFP ile gönderilen her paket AES-128 standardına göre şifrelenmiştir. Bu protokolü kullanan herhangi bir Flash Player 10.0 veya üzeri AIR 1.5 veya üzeri kullanarak çalıştırılabilinir. 2. Uygulama Geliştirdiğimiz uygulamada tarafların birbirlerine bağlanması için belirli bir senaryo mevcuttur. IP lerin değişimini sağlamak için bir sunucu (Şekil 1) gerekir. Birinci kişi öncelikle sunucuya giderek IP adresini bırakır. Sunucu, gelen IP adresini kendi oluşturduğu anahtar kod ile saklar. Bu anahtar kodu kendisine bağlantı yapmış ve IP adresinin sahibi olan birinci kişiye verir. Bu kişiye bağlanmak isteyen ikinci bir kişi bağlantıyı sağlamak için öncelikle birinci kişinin izlediği yolu izleyerek kendi anahtar koduna sahip olur. Ardından birinci kişiyle bağlantı yapmak için birinci kişinin anahtar koduna ihtiyaç duyar. Bu kodu RTMFP sisteminin dışında bir sistemle değişmek gerekir çünkü RTMFP sisteminde bu kodu iletmek için bir mekanizma yer almamaktadır. Tercihen web servisi kullanılabilir. Web servisinde kaydol ve id.bul isminde iki metot tanımlandı. Birinci metot sisteme kayıt olmak için gereklidir. Diğer metot ise haberleşmek istediğimiz kişinin id sini (kimlik no sunu) bize döndürmek için kullanılmaktadır. Anahtar kod, tercih edilen şekilde taraflar arasında iletilir. Artık birinci kişi ikinci kişinin; ikinci kişi de birinci kişinin anahtar koduna sahiptir. Taraflar tekrar sunucuya gider ve bu anahtar kodlara karşılık gelen IP adreslerini sunucudan talep eder. Sunucu istenen IP adreslerini talep eden taraflara gönderir. Bu aşamada da birinci kişi ikinci kişinin; ikinci kişi de birinci kişinin IP adresine sahiptir. Ardından taraflar arasında doğrudan bağlantı kurulur. Taraflar artık birbirlerinin akışlarını takip edebilir durumdadırlar. Bu senaryoda akla gelebilecek en önemli soru; neden web servisi üzerinden IP adreslerinin değişilemediği? dir. Kurulan standart bir sistemde elbette ki bu mümkündür, fakat bu durumda özel RTMFP sunucularının özelliklerinden faydalanılamaz. Adobe un randevu servisi adını verdiği bu sunucuların özelliği; IP adreslerinde olabilecek olası değişikliklerde ve kısa süreli internet düşüşlerinde bağlantının devam etmesini sağlamaktır. Bu Şekil : Sistem Mimarisi

spesifik özelliklerden dolayı sunucuyla aynı algoritmayı paylaşan uygulamalardan veya eski adıyla Stratus olan Adobe servisi Cirrus u kullanmak gerekir. Sunucuya bağlantı UDP tanımlı 1935 portu üzerinden gerçekleşir[5]. Adobe firmasına bağlı kalmak istenilmezse, kapalı bir sistem oluşturmak da mümkündür. Zaten yazılımı oluşturduğumuz Flex, Apache tarafından açık kaynaklı dağıtılmakta olan bir SDK dır. Sunucu için de açık kaynaklı alternatifler bulunmaktadır. Bunlardan ilk sırada gelen olan Cumulus, C++ ile yazılmıştır. Diğer alternatifler NodeJS ile geliştirilen ArcusNode ve Python ile geliştirilen rtmfp.py dir[6]. Cirrus un adresi rtmfp://p2p.rtmfp.net şeklindedir. Program içinden bu adrese bağlanılmak istendiğinde kullanılması gereken spesifik bir geliştirici kodu gerekmektedir. Bu kod Adobe üyeliği alarak elde edinilebilir. Kodu aldıktan sonra Cirrus için şu kullanımla bağlantı sağlanabilir: rtmfp://p2p.rtmfp.net/developer_ke y Cumulus derlendikten sonra doğrudan çalıştırılabilir. Arayüzünde kaç istemcinin bağlı olduğu şekil 2 de görülmektedir. Cumulus a bağlantı şekli Cirrus tan küçük bir farklılıkla ayrılır: rtmfp://specific_ip_address/? =developer_key. Görüldüğü üzere kurulu olduğu makinanın global IP adresi, özel istemcilerimiz için bağlantı yoludur. Normalinden farklı olarak geliştirici kodundan önce?= karakterleri mevcuttur Şekil : Cumulus İstemci-Sunucu Bağlantıları AIR üzerinde çalıştığı için AIR çalıştırabilen tüm işletim sistemlerinde (MacOS, Windows, Linux, ios, Android vb.) çalışacaktır ve genellikle yazılacak tek kod hepsi için geçerli olacaktır [7]. Uygulamamızda kullanıcılar şekil 3a daki gibi tasarlanan bir ara yüzde belirledikleri bir nick ile sisteme kayıt olabilirler. a) kayıt ekranı

Şekil 3: Uygulama Ekranı b) kişi arama ekranı Daha sonra nick ini bildiği kişinin sistemde şekil 3b deki ara yüzde tasarlanan ekranda arama yaparak, görüntülü olarak şekil 4 de görüldüğü gibi görüşmeye başlar. gecikmelerin TCP üzerinden yapılanlara oranla büyük miktarda azalmasıdır. Veriler doğrudan taraflar arasında aktarılır. Sunucu bu uygulamada veri aktarımı için değil sadece tarafların id lerini değişmek için kullanılmıştır. Bu durumda RTMP de olduğu gibi güçlü bir sunucuya ihtiyaç gerek duyulmamaktadır. Üzerinden bir medya akışı olmadığı için yüksek bant genişlikli bir internet gerekmemektedir. Böylece sunucunun kurulumu ve çalışma masrafları asgari düzeye inmektedir. Taraflar doğrudan medya paylaşımı yaptığından dolayı aktarım süresi de kısalmaktadır. Tarafların medyayı iletirken üçüncü bir tarafa ihtiyaç duymaması iletişimin güvenliğini de artırmaktadır. Şekil 4: Uygulamanın ekran görüntüsü 4. Sonuç ve Öneriler Sistemde ses için görüntüden daha büyük bir öncelik tanınmıştır. Böylelikle bağlantıda zayıflama yaşandığında az bant genişliği kaplayan sesin, görüntü tarafından bloke edilmesi engellenir. RTMFP, UDP kullandığından dolayı paket kontrolü yapılmamaktadır. Bunun avantajı canlı video görüşmelerinde Sistemdeki sunucu sayesinde IP değişikliklerinde veya internetteki kısa süreli düşüşlerde bağlantının yeniden oluşturulması otomatik olarak sağlanmaktadır. Bu da taşınabilirliği büyük oranda artırır ve mobil cihazlarda rahatlıkla kullanılabileceği anlamına gelir. Bu uygulama ile başka bir ortam sunucusuna gerek kalmadan ihtiyaca yönelik gerçek zamanlı iletişimin kısa zamanda geliştirilebileceği gösterilmiştir. 5. Kaynaklar

[1] X. Lei, X. Jiang, C.Wang, Design and Implementation of Streaming Media Processing Software based on RTMP, 2012 5th International Congress on Image and Signal Processing [2] Anatol Badach. Voice over IP Die Technik Grundlagenund Protokolle für Multimedia. ISBN:3-446-22697-4 [3] ElyGreenfield, The internal mechanism of the Flash Player, Adobe Flash Platform Summit, 2010 [4] P.Zhao,J.Li, J.Xi, X. Gou. A Mobile Real-time Video System Using RTMP 2012 Fourth International Conference on Computational Intelligence and Communication Networks [5] Erişim Tarihi:10.12.2013, http://www.adobe.com/tr/products/a dobe-media-server-extended/rtmfpfaq.html [6] Erişim Tarihi:10.12.2013, https://github.com/openrtmfp/cu mulus [7] Erişim Tarihi:10.12.2013, http://labs.adobe.com/technologies/ flashruntimes/air/