中文翻譯:pjsip教程(一)之PJNATH簡介


  在學習pjsip的過程中,發現只是單單的閱讀英文官方文檔,對於里邊概念的理解還是不夠透徹,並且苦於pjsip沒有發現全一點的中文版本,所以想盡自己所能為建設和諧社會而貢獻一份力量,文中定會有所疏漏,希望各位看客能夠不吝賜教。

  1:pjsip教程(一)之PJNATH簡介

  2:pjsip教程(二)之ICE穿越打洞:Interactive Connectivity Establishment簡介

  3:pjsip教程(三)之ICE stream transport的使用

  4:pjsip文檔(四)之ICE Session的使用方法

  原文地址:http://www.pjsip.org/docs/latest/pjnath/docs/html/index.htm

PJNATH - Open Source ICE, STUN, and TURN Library 

PJNATH (PJSIP NAT Helper)是一個開源的並且是使用標准協議(STUN,TURN,ICE)提供NAT設備穿越功能的庫.

Background

在現今的網絡中網絡地址轉換技術/設備(NAT)很常見,這種技術允許多台主機共享同一個公網地址從而接入網絡,其主要目的就是為了緩解IPv4地址的枯竭。 這種技術在普通的服務器/客戶端模式下並不存在問題,因為請求總是由客戶端發起,並且客戶端也不需要維持長時間的維持與服務器的連接。但是NAT技術最大的問題就是使得點對點通信不能進行,比如VoIP.

Introduction to PJNATH

PJNATH庫包含了NAT穿越的標准實現,它可以獨自應用或者與PJSUA-LIB共同使用,PJSUA-LIB庫將PJSIP, PJMEDIA, PJNATH很好的集成在一起,使用方便。.

PJNATH 具有以下特征:

  • STUNbis實現
    該實現遵照RFC 5389.它既提供了現成的STUN網絡接口,又提供了基於TURN和ICE的實現更高層次STUN的框架。
  • NAT 類型探測
    探測通信兩端的NAT設備類型,該實現依據 RFC 3489. 然而為了支持ICE,協助NAT穿越的NAT類型的探測已經不被推薦了,但是在故障排除的時候還是有用的,因此提供了NAT類型探測的功能.
  • TURN實現
    TURN 是使用中轉服務器進行中繼通信的協議,它聯合ICE提供了盡可能的高效的通信路徑。它的實現符合 draft-ietf-behave-turn-14 草案.
  • ICE實現
    ICE 是發現待通信兩端一條或多條可直接通信的路徑的協議。它的實現符合draft-ietf-mmusic-ice-19.txt 草案

在將來,我們會實現更多的協議(比如UPnP IGD、SOCKS5).

Library Organization

提供的主要組件如下:

  • STUN: Session Traversal Utilities for NAT
  • TURN: Traversal Using Relays around NAT
  • ICE: Interactive Connectivity Establishment
  • NAT Classification/Detection Tool

除了 NAT Classification/Detection Tool, 每個組件都進一步划分為兩個部分:

  • 傳輸對象
    傳輸對象是session對象加上指定的  傳輸/套接字(transport/sockets)  的實現,它給應用程序提供一個直接可以使用的對象。比如,STUN transport, TURN transport以及ICE stream transport

  傳輸無關/session 層
   session對象(比如 STUN session, TURN session, ICE session)是維護通信協議中session的核心對象,它是與傳輸無關的(意思是說它自己沒有專門用於傳輸數據的socket,它只有發送和接受數據的接口,至於發送和接收數據時用到的具體的協議它是不關心的)。這樣,不管傳輸層使用的什么協議,開發者都可以重用這個對象,比如使用UDP, TCP或者TLS或者是開發者自己實現的其他某種協議。

 

  轉載請注明:

  名稱:中文翻譯:pjsip教程(一)之PJNATH簡介

  作者:大雪先生

  鏈接:http://www.cnblogs.com/ishang/p/3413232.html 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM