IPテレフォニヌ銅線からデゞタル信号凊理たで



ある日、VoIPvoice over IPずは䜕か、これらのワむルドな略語が䜕を意味するのかを敎理する必芁がある堎合、このマニュアルが圹立぀こずを願っおいたす。 ここでは、远加の皮類のテレフォニヌサヌビス通話転送、ボむスメヌル、電話䌚議などの構成の問題が考慮されおいないこずにすぐに気付きたす。



したがっお、カットの䞋で察凊するもの
  1. テレフォニヌの基本抂念デバむスの皮類、接続スキヌム
  2. SIP / SDP / RTPプロトコルバンドル仕組み
  3. 抌されたボタンに関する情報の送信方法
  4. 音声ずファックスの送信方法
  5. IPテレフォニヌにおけるデゞタル信号凊理ず音質保蚌


1.テレフォニヌの基本抂念


䞀般的に、ロヌカル加入者を通垞の電話回線を介しお電話プロバむダヌに接続するためのスキヌムは次のずおりです。




FXSForeign eXchange Subscriberポヌトを備えた電話モゞュヌルは、プロバむダヌ偎​​PBXにむンストヌルされたす。 自宅たたはオフィスでは、電話たたはFAXがFXOポヌトForeign eXchange Officeずダむダラヌモゞュヌルずずもにむンストヌルされたす。



倖芳䞊、FXSポヌトずFXOポヌトは同じで、通垞の6ピンRJ11コネクタです。 ただし、電圧蚈を䜿甚しおそれらを区別するのは非垞に簡単です。FXSポヌトには垞に䜕らかの電圧がありたす。ハンドセットがオンのずきは48/60 V、通話䞭は6〜15 Vです。 FXOでは、回線に接続されおいない堎合、電圧は垞に0です。



プロバむダヌ偎​​の電話回線を介しおデヌタを転送するには、SLICモゞュヌル加入者回線むンタヌフェむス回路およびDAAモゞュヌルダむレクトアクセスアレンゞメントを䜿甚しお加入者偎に実装できる远加のロゞックが必芁です。



ワむダレスDECT電話ペヌロッパのデゞタルコヌドレステレコミュニケヌションは珟圚非垞に人気がありたす。 このデバむスは埓来の電話機に䌌おいたす。FXOポヌトずダむダラモゞュヌルも備えおいたすが、1.9 GHzの呚波数のステヌションずハンドセットのワむダレスモゞュヌルも远加されおいたす。



加入者はPSTNネットワヌク公衆亀換電話網-公衆電話網に接続されたす。これはPSTN、PSTNでもありたす。 PSTNネットワヌクは、ISDN、光孊、POTS、むヌサネットなどのさたざたなテクノロゞヌを䜿甚しお線成できたす。 埓来のアナログ/銅線を䜿甚する堎合のPSTNの特殊なケヌス-POTSPlain Old Telephone Serviceは、単玔な叀い電話システムです。



むンタヌネットの発展に䌎い、電話は新しいレベルに移行したした。 固定電話は、䞻にビゞネスニヌズのために、たすたす䜿甚されおいたせん。 DECT電話はもう少し䟿利ですが、家の呚蟺に限られおいたす。 GSM電話はさらに䟿利ですが、囜の境界によっお制限されたすロヌミングは高䟡です。 しかし、IP電話の堎合、それらは゜フトフォンSoftPhoneであり、むンタヌネットぞのアクセス以倖の制限はありたせん。



Skypeは、゜フトフォンの最も有名な䟋です。 それは倚くのこずをするこずができたすが、2぀の重芁な欠点がありたすクロヌズドアヌキテクチャず盗聎はどの圓局によっお知られおいたす。 最初の理由により、独自の電話マむクロネットワヌクを䜜成する方法はありたせん。 たた、2番目の理由により、特に個人的および商業的な䌚話で、圌らがあなたをスパむするこずはあたり楜しくありたせん。



幞いなこずに、通信ネットワヌクを䜜成するためのオヌプンなプロトコルがありたす-これらはSIPずH.323です。 SIPプロトコルには、H.323よりもやや倚くの゜フトフォンがありたす。これは、比范的単玔で柔軟性があるこずで説明できたす。 しかし、この柔軟性により、倧きなスティックをホむヌルに挿入できる堎合がありたす。 SIPずH.323はどちらもRTPプロトコルを䜿甚しおメディアを送信したす。



2人のサブスクラむバがどのように接続するかを理解するには、SIPプロトコルの基本原則を考慮しおください。



2. SIP / SDP / RTPプロトコルバンドルの説明


SIPセッション開始プロトコル-セッション確立プロトコル電話だけでなく-UDP䞊のテキストプロトコルです。 SIP over TCPを䜿甚するこずもできたすが、これらはたれなケヌスです。



SDPセッション蚘述プロトコル-送信されるデヌタのタむプをネゎシ゚ヌトするためのプロトコルオヌディオずビデオの堎合、これらはコヌデックずそのフォヌマット、FAX、送信速床、゚ラヌ蚂正ず宛先アドレスIPずポヌトをネゎシ゚ヌトしたす。 たた、テキストプロトコルです。 SDPパラメヌタは、SIPパケットの本䜓で送信されたす。



RTPリアルタむム転送プロトコル-オヌディオ/ビデオデヌタを送信するためのプロトコル。 これはUDP䞊のバむナリプロトコルです。



SIPパケットの䞀般的な構造



次に、1぀の䞀般的な手順であるコヌルセットアップ甚の2぀のSIPパケットの䟋を瀺したす。





SIP INVITEパケットの内容は巊偎に衚瀺され、それに察する答えは右偎にSIP 200 OKです。



䞻なフィヌルドの抂芁は次のずおりです。



SDPメッセヌゞは、FIELD = VALUEのペアを含む行で構成されたす。 䞻なフィヌルドから次のこずに泚意できたす。



RTPパケットには、特定の圢匏で゚ンコヌドされたオヌディオ/ビデオデヌタが含たれたす。 この圢匏は、PTペむロヌドタむプフィヌルドに瀺されおいたす。 このフィヌルドの倀ず特定の圢匏ずの察応衚は、 https // jaで提䟛されたす 。 りィキペディア org / wiki / RTP _ オヌディオ _ ビデオ _ プロフィヌル 。



たた、RTPパケットでは、䞀意のSSRC識別子RTPストリヌムの゜ヌスを定矩ずタむムスタンプタむムスタンプ、サりンドたたはビデオを均等に再生するために䜿甚が瀺されたす。



SIPサヌバヌアスタリスクを介した2人のSIPサブスクラむバヌの察話の䟋





SIP電話機が起動するずすぐに、最初に登録するのはリモヌトサヌバヌSIP Registarで、SIP REGISTERメッセヌゞを送信したす。


加入者が電話をかけるず、SIP INVITEメッセヌゞが送信され、その本文にSDPメッセヌゞが埋め蟌たれ、そこにオヌディオ/ビデオ送信パラメヌタヌが瀺されたすどのコヌデックがサポヌトされおいるか、どのIPずポヌトがサりンドを送信するかなど。


リモヌトサブスクラむバヌが電話をピックアップするず、SDP 200 OKメッセヌゞも受信したす。これには、リモヌトサブスクラむバヌのみが含たれたす。 送受信されたSDPパラメヌタを䜿甚しお、オヌディオ/ビデオ䌝送のRTPセッションたたはFAX䌝送のT.38セッションを蚭定できたす。



受信したSDPパラメヌタが私たちに合わなかった堎合、たたは䞭間SIPサヌバヌがRTPトラフィックを自身に通過させないこずにした堎合、SDP調敎手順、いわゆるREINVITEが実行されたす。 ちなみに、この手順のために、無料のSIPプロキシサヌバヌには1぀の欠点がありたす。䞡方のサブスクラむバヌが同じロヌカルネットワヌクにあり、プロキシサヌバヌがNATの背埌にある堎合、RTPトラフィックをリダむレクトした埌、サブスクラむバヌのいずれも別の声を聞きたす。



䌚話が終了するず、電話を切った加入者はSIP BYEメッセヌゞを送信したす。


3.抌されたボタンに関する情報の送信


セッションを確立した埌、䌚話䞭に、远加の皮類のサヌビスDVOぞのアクセスが必芁な堎合がありたす-通話保持、転送、ボむスメヌルなど -抌されたボタンの特定の組み合わせに応答したす。



したがっお、通垞の電話回線では、番号をダむダルするには2぀の方法がありたす。



䌚話䞭、パルス方匏は、抌されたボタンを送信するには䞍䟿です。 したがっお、「0」を送信するには、玄1秒100ミリ秒の10パルス60ミリ秒-改行、40ミリ秒-回線閉鎖に加えお、桁間の䌑止に200ミリ秒が必芁です。 さらに、パルスダむダル䞭に特城的なクリック音が頻繁に聞こえたす。 したがっお、埓来の電話では、DVOぞのアクセスのトヌンモヌドのみが䜿甚されたす。



VoIPテレフォニヌでは、抌されたボタンに関する情報を次の3぀の方法で送信できたす。


  1. DTMFむンバンド-サりンドトヌンを生成し、オヌディオデヌタ珟圚のRTPチャネル内で送信するこずは、䞀般的なトヌンセットです。
  2. RFC2833-抌されたキヌ、音量、持続時間に関する情報を含む特別な電話むベントRTPパケットが生成されたす。 DTMF RFC2833パケットが送信されるRTP圢匏の番号は、SDPメッセヌゞの本文に瀺されおいたす。 䟋a = rtpmap98 telephone-event / 8000。
  3. SIP INFO-抌されたキヌ、ボリュヌム、および持続時間に関する情報を含むSIP INFOパケットが生成されたす。

オヌディオデヌタむンバンド内のDTMF送信にはいく぀かの欠点がありたす-トヌンの生成/埋め蟌み時およびトヌンの怜出時のオヌバヌヘッド、DTMFコヌドを歪める可胜性のある䞀郚のコヌデックの制限、および送信信頌性の䜎䞋䞀郚のパケットが倱われた堎合、怜出が発生する可胜性がありたす同じキヌをダブルクリックしたす。



DTMF RFC2833ずSIP INFOの䞻な違いサヌバヌ自䜓をバむパスするサブスクラむバヌ間でRTPを盎接転送する機胜がSIPプロキシサヌバヌで有効になっおいる堎合たずえば、アスタリスクのcanreinvite = yes、サヌバヌはDVOサヌビスが利甚できなくなるため、RFC2833パケットに気付きたせん。 SIPパケットは垞にSIPプロキシを介しお送信されるため、VTRは垞に機胜したす。


4.音声およびファックス送信


すでに述べたように、RTPプロトコルはメディアの送信に䜿甚されたす。 RTPパケットでは、送信デヌタコヌデックの圢匏が垞に瀺されたす。



音声䌝送の堎合、ビットレヌト/品質/耇雑さのさたざたな比率を持぀さたざたなコヌデックがあり、オヌプンずクロヌズがありたす。 どの゜フトフォンでも、G.711 alaw / ulawコヌデックのサポヌトは垞にあり、その実装は非垞に簡単で、音質は悪くありたせんが、64 kbpsの垯域幅が必芁です。 たずえば、G.729コヌデックは8 kbit / sのみを必芁ずしたすが、プロセッサに非垞に倚くの負荷をかけたす。さらに、無料ではありたせん。



通垞、G.711コヌデックたたはT.38プロトコルのいずれかがFAX送信に䜿甚されたす。 G.711コヌデックを䜿甚したファックス送信は、T.30プロトコルを䜿甚したファックス送信に察応したす。たるでファックスが通垞の電話回線を介しお送信されたすが、回線からのアナログ信号はalaw / ulaw法に埓っおデゞタル化されたす。 これは、むンバンドT.30ファックス送信ずも呌ばれたす。



T.30プロトコルに埓ったファックスは、パラメヌタの調敎を実行したす䌝送速床、デヌタグラムのサむズ、゚ラヌ蚂正のタむプ。 T.38プロトコルはT.30プロトコルに基づいおいたすが、むンバンド送信ずは異なり、生成および受信されたT.30コマンドが分析されたす。 この方法では、生デヌタは送信されたせんが、ファックス制埡コマンドが認識されたす。



T.38コマンドの送信にはUDPTLプロトコルが䜿甚されたす。これはUDPベヌスのプロトコルであり、T.38にのみ䜿甚されたす。 TCPおよびRTPプロトコルを䜿甚しおT.38コマンドを転送するこずもできたすが、䜿甚頻床ははるかに䜎くなりたす。



T.38の䞻な利点は、むンバンドファックス送信ず比范しおネットワヌク負荷が軜枛され、信頌性が高いこずです。





T.38モヌドでのファックス送信手順は次のずおりです。


  1. 通垞の音声接続は、コヌデックを䜿甚しお確立されたす。
  2. 送信FAXに甚玙がセットされるず、T.30信号CNG呌び出しトヌンが定期的に送信されたす。これは、FAXを送信する準備ができたこずを意味したす。
  3. 受信偎では、T.30 CED着信端末識別信号が生成されたす-これは、ファックスを受信する意思です。 この信号は、[ファックスの受信]ボタンを抌すか、ファックスが自動的に送信した埌に送信されたす。
  4. 送信偎では、CED信号が怜出され、SIP REINVITE手順が実行され、T.38タむプがSDPメッセヌゞで瀺されたす。m= image 39164 udptl t38。

T.38では、むンタヌネット経由のファックスが掚奚されおいたす。 オフィス内たたは接続が安定しおいるオブゞェクト間でFAXを送信する必芁がある堎合は、むンバンドT.30 FAX送信を䜿甚できたす。 この堎合、FAXを送信する前に、゚コヌキャンセル手順をオフにしお、远加の歪みが発生しないようにする必芁がありたす。



FAX送信に関する非垞に詳现な情報は、David HanesずGonzalo Salgueiroの著曞「Fax、Modem、and Text for IP Telephony」に蚘茉されおいたす。



5.デゞタル信号凊理DSP。 IPテレフォニヌの音質保蚌、テスト䟋


䌚話セッションSIP / SDPを確立するプロトコルず、RTPチャネルを介しお音声を送信する方法により、私たちは理解したした。 1぀の重芁な問題が残っおいたす-音質です。 䞀方では、音質は遞択したコヌデックによっお決たりたす。 しかし、䞀方で、远加のDSPDSP-デゞタル信号凊理手順が䟝然ずしお必芁です。 これらの手順では、VoIPテレフォニヌの機胜を考慮したす。高品質のヘッドセットが垞に䜿甚されるずは限らず、むンタヌネット䞊でパケットが倱われたり、パケットが䞍均等に入ったり、ネットワヌク垯域幅もゎムではありたせん。



音質を改善する基本手順



VAD 音声アクティビティ怜出噚-音声アクティブな音声フレヌムたたは無音非アクティブな音声フレヌムを含むフレヌムを決定する手順。 この分離により、無音に関する情報の送信に必芁なデヌタがはるかに少なくなるため、ネットワヌクの負荷を倧幅に削枛できたすノむズレベルを送信するか、䜕も送信しないので十分です。


䞀郚のコヌデックにはすでにVADプロシヌゞャGSM、G.729が含たれおいたすが、他のコヌデックG.711、G.722、G.726には実装が必芁です。



VADがノむズレベルに関する情報を送信するように蚭定されおいる堎合、13m RTPフォヌマットCNComfort Noiseの特別なSIDパケット無音挿入蚘述子が送信されたす。



SIDパケットはSIPプロキシによっおドロップされる可胜性があるため、怜蚌のためにSIPサヌバヌを通過するRTPトラフィックの送信を構成するこずをお勧めしたす。





CNG comfort noise generation-SIDパケットからの情報に基づいお快適なノむズを生成する手順。 したがっお、VADずCNGは連動しお動䜜したすが、CNGの動䜜は、特に少量でCNGの動䜜に垞に気付くこずができるずは限らないため、需芁がはるかに少なくなりたす。



PLC パケット損倱隠蔜-パケット損倱䞭にオヌディオストリヌムを埩元する手順。 50のパケット損倱があっおも、優れたPLCアルゎリズムは蚱容可胜な音声品質を実珟できたす。 もちろん、歪みがありたすが、蚀葉を出すこずができたす。





Linuxでパケット損倱を゚ミュレヌトする最も簡単な方法は、 netemモゞュヌルでiprouteパッケヌゞのtcナヌティリティを䜿甚するこずです 。 発信トラフィックのみをシェヌピングしたす。



パケットの50の損倱でネットワヌク゚ミュレヌションを開始する䟋

tc qdisc change dev eth1 root netem loss 50% 

゚ミュレヌションを無効にする

 tc qdisc del dev eth1 root 



ゞッタバッファは、受信パケット間の間隔が倧きく倉動し、最悪の堎合は受信パケットの順序が正しくない堎合に、ゞッタ効果を取り陀くための手順です。 たた、この効果は音声の䞭断に぀ながりたす。 ゞッタ効果を排陀するには、受信偎で、指定された間隔で元のパケット送信順序を埩元するのに十分なサむズのパケットバッファを実装する必芁がありたす。





tcナヌティリティを䜿甚しおゞッタ効果を゚ミュレヌトするこずもできたすパケットの予想到着時間ず実際の到着時間の間隔は500ミリ秒に達する可胜性がありたす。


 tc qdisc add dev eth1 root netem delay 500ms reorder 99% 


LEC Line Echo Canceller-リモヌト加入者が自分の声を聞き始めたずきにロヌカル゚コヌを陀去する手順。 その本質は、特定の係数を䜿甚しお送信信号から受信信号を枛算するこずです。





゚コヌはいく぀かの理由で発生する可胜性がありたす。



理由音響゚コヌたたは電気゚コヌを芋぀けるこずは難しくありたせん。゚コヌが生成されおいる偎のサブスクラむバヌは、マむクを切断する必芁がありたす。 それでも゚コヌが発生する堎合は、電気的です。


VoIPおよびDSP手順の詳现に぀いおは、「VoIP音声およびFAX信号凊理」を参照しおください。 Googleブックスでプレビュヌできたす。



これで、VoIPの衚面理論の抂芁は終わりです。 興味がある堎合は、次の蚘事で実際のハヌドりェアプラットフォヌムでのPBXの実甚的な実装䟋を怜蚎できたす。



[]質問やコメントを歓迎したす。 Promwad Electronics Design Centerの゜フトりェア゚ンゞニアであるDmitry Valentoの蚘事の著者が回答したす。

Source: https://habr.com/ru/post/J188336/


All Articles