Peer-to-Peer (P2P) — bu, cihazların mərkəzi server olmadan birbaşa əlaqə qurduğu şəbəkə arxitekturasıdır. Mobil tətbiq inkişafında P2P bağlantıları müştərilər arasında birbaşa məlumat ötürülməsini təmin edir — səsli zənglərdən fayl sinxronizasiyasına qədər. Statista (2025) məlumatlarına görə, WebRTC və mərkəzləşdirilməmiş tətbiqlərin yayılması sayəsində mobil şəbəkələrdə P2P trafikinin həcmi ayda 15 ekzabaytı keçir. Belə arxitektura server infrastrukturuna çəkilən xərcləri azaldır və iştirakçıların sayı artdıqca sistemin dayanıqlığını yüksəldir.
Əsas məqamlar
Peer-to-Peer (P2P) — hər bir şəbəkə iştirakçısının eyni anda resurs təminatçısı və istehlakçısı olduğu mərkəzləşdirilməmiş şəbəkə arxitekturasıdır. Müştərilərin sorğularını emal edən xüsusi serverin olduğu ənənəvi müştəri-server modelindən fərqli olaraq, P2P şəbəkəsində hər bir düyün bərabər hüquqludur.
Mərkəzləşdirilməmiş şəbəkə termini vahid nasazlıq nöqtəsinin olmaması deməkdir — istənilən düyün şəbəkəni tərk edə və ya sıradan çıxa bilər və bu, ümumi iş qabiliyyətinə təsir etmir. Bu xüsusiyyət P2P-ni mərkəzləşdirilmiş arxitekturalardan əsaslı şəkildə fərqləndirir və onu paylanmış tətbiqlər üçün cəlbedici edir.
P2P-nin əsas ideyası hələ Napster və Gnutella kimi erkən fayl mübadiləsi şəbəkələrində reallaşdırılmışdı, lakin müasir tətbiqlər daha mürəkkəb mexanizmlərdən istifadə edir. Bu gün peerlər təkcə faylları deyil, həm də real vaxt rejimində media axınlarını, mesajları və mərkəzləşdirilməmiş tətbiqlər üçün məlumatları mübadilə edir.
P2P arxitekturasının əsas xüsusiyyəti ölçeklənmədir — hər yeni iştirakçının əlavə edilməsi şəbəkənin ümumi ötürmə qabiliyyətini və hesablama gücünü artırır. Mərkəzləşdirilmiş sistemlərdə yük artımı serverin üzərinə düşür, P2P-də isə bütün düyünlər arasında paylanır.
P2P şəbəkəsinin işinin əsasında iştirakçılar arasında birbaşa əlaqə prinsipi dayanır. Bir peer digərinə məlumat göndərmək istədikdə, əvvəlcə şəbəkədə onun ünvanını tapır. Peerləri axtarmaq üçün mərkəzləşdirilmiş trekerlərdən (trackers) tutmuş tamamilə mərkəzləşdirilməmiş protokollara qədər müxtəlif mexanizmlər istifadə olunur.
Əlaqə qurulduqdan sonra məlumatlar aralıq serverləri keçərək birbaşa ötürülür. Bu, bütün trafikin server infrastrukturundan keçdiyi bulud arxitekturalarından əsas fərqdir. Birbaşa ötürmə gecikmələri qısaldır və tərtibatçılar üçün əməliyyat xərclərini azaldır.
P2P şəbəkələrinin bir neçə topologiyası mövcuddur. Tam əlaqəli topologiyada hər bir peer bütün digərləri ilə əlaqə qurur — bu maksimum sürəti təmin edir, lakin şəbəkə böyüdükdə çox sayda əlaqə tələb edir. Hibrid topologiyada koordinasiya üçün birbaşa əlaqələr və köməkçi serverlərin kombinasiyası istifadə olunur.
Mobil P2P tətbiqləri üçün ən populyar topologiya DHT (Distributed Hash Table)-dir. DHT məlumatların yerləşməsi haqqında informasiyanı şəbəkənin bütün düyünləri arasında paylayaraq, mərkəzi kataloq olmadan lazım olan peeri tapmağa imkan verir. Bu, şəbəkəni ayrı-ayrı düyünlərin sıradan çıxmasına qarşı dayanıqlı edir.
Mobil şəbəkələrdə P2P-nin əsas texniki problemi NAT (Network Address Translation) məhdudiyyətləridir. Əksər mobil cihazlar daxili IP ünvanlarını gizlədən və daxil olan əlaqələri bloklayan marşrutlaşdırıcılar arxasında yerləşir. Xüsusi mexanizmlər olmadan, müxtəlif NAT arxasında olan iki cihaz birbaşa P2P əlaqəsi qura bilməz.
Bu problemi həll etmək üçün STUN (Session Traversal Utilities for NAT) protokolu istifadə olunur. STUN serveri cihazın internetə açıq olan xarici IP ünvanını və portunu təyin etməyə kömək edir. Bu məlumatı aldıqdan sonra peer onu siqnal kanalı vasitəsilə digər iştirakçıya göndərir.
STUN birbaşa əlaqə qura bilmədikdə (simmetrik NAT), TURN (Traversal Using Relays around NAT) protokolu köməyə gəlir. TURN serveri peerlər arasında trafiki retranslyasiya edərək müvəqqəti vasitəçi rolunu oynayır. Bu, gecikmələri artırır, lakin istənilən şəbəkə şəraitində əlaqəni təmin edir.
WebRTC (Web Real-Time Communication) — P2P vasitəsilə real vaxt rejimində audio, video və məlumat ötürülməsi üçün açıq standartdır. WebRTC, optimal əlaqə yolunu tapmaq üçün STUN və TURN-i birləşdirən ICE (Interactive Connectivity Establishment) vasitəsilə NAT Traversal üçün daxili dəstəyi ehtiva edir.
WebRTC vasitəsilə P2P əlaqəsinin qurulması prosesi belədir: təşəbbüs edən peer öz imkanlarının təsviri ilə offer SDP yaradır, sonra siqnal serveri (WebSocket və ya HTTP) vasitəsilə onu digər iştirakçıya göndərir. İkinci peer answer SDP yaradır və ICE namizədləri mübadiləsindən sonra birbaşa əlaqə qurulur.
JavaScript-də əsas WebRTC əlaqəsinin inisiallaşdırılması nümunəsi:
const config = {
iceServers: [
{ urls: 'stun:stun.l.google.com:19302' }
]
};
const pc = new RTCPeerConnection(config);
pc.onicecandidate = (event) => {
if (event.candidate) {
// namizədi siqnal kanalı vasitəsilə irəli göndər
}
};
const channel = pc.createDataChannel('p2p-chat');
pc.createOffer().then((offer) => pc.setLocalDescription(offer));
Əlaqə qurulduqdan sonra Data Channel istənilən məlumatları — mətn, ikili fayllar, media axınlarını ötürməyə imkan verir. WebRTC avtomatik olaraq optimal kodeki seçir və keyfiyyəti kanalın ötürmə qabiliyyətinə uyğunlaşdırır.
Mobil tətbiq inkişafı P2P arxitekturasını məlumat ötürmə sürəti və məxfilik önəmli olan ssenarilərdə fəal şəkildə istifadə edir. Əsas tətbiq sahələrinə səsli və video zənglər, fayl mübadiləsi, mərkəzləşdirilməmiş messencerlər və cihazlar arasında məlumat sinxronizasiyası daxildir.
Müasir mobil messencerlər server infrastrukturuna yükü azaltmaq və ötürmə gecikmələrini qısaltmaq üçün səsli və video zənglər üçün P2P bağlantılarından istifadə edir. İki istifadəçi arasında zəng zamanı Signal Protocol sona qədər şifrələməni təmin edir, WebRTC isə birbaşa media axını yaradır.
WhatsApp, Telegram və Signal kimi məşhur tətbiqlər media rabitəsi üçün P2P-dən istifadə edir. NAT məhdudiyyətləri səbəbindən birbaşa P2P əlaqəsi mümkün olmadıqda, sistem avtomatik olaraq röle serverinə (TURN) keçir. Belə hibrid yanaşma istənilən şəraitdə əlaqəni təmin edir.
P2P zənglərinin mühüm üstünlüyü gecikmələrin azaldılmasıdır (latency). Məlumatlar məlumat mərkəzlərindəki serverləri keçərək birbaşa cihazlar arasında ötürülür ki, bu da səsli rabitə və videokonfranslar üçün xüsusilə vacibdir, belə ki, 200 ms-dən yuxarı gecikmə istifadəçi üçün nəzərə çarpır.
P2P vasitəsilə fayl mübadiləsi mobil tətbiqlərdə ən çox tələb olunan funksiyalardan biri olaraq qalır. BitTorrent protokolundan və ya onun mobil tətbiqlərindən istifadə edərək, cihazlar böyük faylları bulud serverinə yükləmədən birbaşa ötürə bilər. Bu, saxlama xərclərini azaldır və ötürməni sürətləndirir.
Bir istifadəçinin cihazları arasında məlumat sinxronizasiyası üçün IPFS (InterPlanetary File System) protokolu tətbiq olunur. IPFS faylları məzmununa görə müəyyənləşdirir (content addressing), bu da mərkəzi bulud anbarı olmadan telefon, planşet və noutbuk arasında məlumatların effektiv sinxronizasiyasına imkan verir.
P2P sinxronizasiyası həmçinin birgə işdə istifadə olunur — real vaxt rejimində sənəd və qeydlərin redaktəsi üçün tətbiqlər. CRDT (Conflict-free Replicated Data Types) əməliyyatları bir neçə iştirakçıya mərkəzi server olmadan eyni anda məlumatları redaktə etməyə imkan verir.
P2P arxitekturası mərkəzləşdirilmiş modellərlə müqayisədə bir neçə əhəmiyyətli üstünlük təklif edir. Nasazlığa davamlılıq — əsas üstünlüklərdən biridir: vahid serverin olmaması, hər hansı düyünün sıradan çıxmasının bütün şəbəkənin işini bloklamaması deməkdir. Mobil tətbiqlər üçün bu xüsusilə vacibdir, çünki cihazlar istənilən anda əlaqəni itirə bilər.
İkinci üstünlük iqtisadi səmərəlilikdir. Tərtibatçılar media trafikinin ötürülməsi üçün bahalı server infrastrukturunu ödəməli deyillər. Bunun əvəzinə serverlər yalnız siqnalizasiya və koordinasiya üçün istifadə olunur, əsas məlumat axını isə birbaşa istifadəçilər arasında gedir.
Məxfilik — digər vacil amildir. Cihazlar arasında birbaşa məlumat ötürülməsi zamanı trafiki ələ keçirə və ya analiz edə biləcək aralıq server yoxdur. Sona qədər şifrələmə ilə birlikdə P2P istifadəçilər üçün yüksək məxfilik səviyyəsi təmin edir.
Bununla belə, P2P-nin məhdudiyyətləri də var. Əsas məhdudiyyət — real şəbəkə şəraitində əlaqənin qurulmasının çətinliyidir. Mobil operatorlar və korporativ şəbəkələr tez-tez P2P trafikini bloklayır ki, bu da miqyaslanma zamanı bahalı ola biləcək röle serverlərinin (TURN) istifadəsini tələb edir.
Digər problem qeyri-bərabər yükdür. P2P şəbəkəsində bəzi düyünlər daha güclü prosessora və ya geniş rabitə kanalına malik ola bilər, digərləri isə zəif əlaqəyə sahibdir. Bu, sürətli düyünlərin qeyri-mütənasib şəkildə çox trafik emal etdiyi balanssızlıq yaradır.
Nəhayət, P2P şəbəkələrinin təhlükəsizliyi əlavə diqqət tələb edir. Mərkəzləşdirilməmiş şəbəkədə hansı məlumatların ötürüldüyünü və kimin iştirakçı olduğunu nəzarət etmək daha çətindir. Mobil tətbiqlər üçün autentifikasiya və məlumat bütövlüyünün yoxlanılması mexanizmlərini tətbiq etmək lazımdır.
Tez-tez verilən suallar
P2P arxitekturasında hər bir şəbəkə iştirakçısı həm müştəri, həm də server funksiyalarını yerinə yetirir, məlumatları birbaşa mübadilə edir. Müştəri-server modelində bütün sorğular resursları idarə edən və girişi təmin edən mərkəzi serverdən keçir. P2P infrastruktur yükünü azaldır və nasazlığa davamlılığı artırır.
WebRTC — audio, video və məlumat ötürülməsi üçün protokolları özündə birləşdirən real vaxt rejimində P2P rabitəsi üçün standartdır. O, ICE, STUN və TURN vasitəsilə brauzerlər və mobil tətbiqlər arasında birbaşa əlaqə qurulmasını təmin edir, NAT Traversal problemini həll edir.
Əsas protokollar: media və məlumat ötürülməsi üçün WebRTC, fayl mübadiləsi üçün BitTorrent, mərkəzləşdirilməmiş saxlama üçün IPFS, şifrələmə üçün Signal Protocol. NAT Traversal üçün STUN və TURN, əlaqələrin koordinasiyası üçün isə WebSocket üzərindən siqnal protokolları tətbiq olunur.
P2P bağlantıları düzgün tətbiq edildikdə təhlükəsiz ola bilər. Bütün ötürülən məlumatlar üçün sona qədər şifrələmə (end-to-end encryption), siqnal serveri vasitəsilə iştirakçıların autentifikasiyası və mesaj bütövlüyünün yoxlanılması tövsiyə olunur. WebRTC defolt olaraq media axınlarını şifrələyir (DTLS və SRTP).
P2P səsli və video zənglər, cihazlar arasında fayl mübadiləsi, mərkəzləşdirilməmiş tətbiqlər və məlumat sinxronizasiyası üçün üstünlük təşkil edir. Bulud arxitekturası məlumatların saxlanması, biznes məntiqi və mərkəzləşdirilmiş idarəetmə və audit tələb edən ssenarilər üçün daha uyğundur.
Nəticə
Açar təslim mobil tətbiq hazırlayacağıq
IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.