Омӯзиши муҳаррики Mediastreamer2 VoIP. Қисми 8

Материали макола аз ман гирифта шудааст канали zen.

Омӯзиши муҳаррики Mediastreamer2 VoIP. Қисми 8

Сохтори бастаи RTP

Дар охир мақола истифода мебарем TShark бастаҳои гирифташудаи RTP, ки байни қабулкунанда ва интиқолдиҳандаи мо мубодила шудаанд. Хуб, дар ин як мо унсурҳои бастаро бо рангҳои гуногун ранг мекунем ва дар бораи ҳадафи онҳо сӯҳбат мекунем.

Биёед ба ҳамон баста назар андозем, аммо бо майдонҳои ранга ва қайдҳои фаҳмондадиҳӣ:
Омӯзиши муҳаррики Mediastreamer2 VoIP. Қисми 8

Дар поёни листинг байтҳое ҳастанд, ки бастаи RTP-ро ташкил медиҳанд, ки дар навбати худ бори пурборкунандаи бастаи UDP мебошад (сарлавҳаи он бо ранги сиёҳ нишон дода шудааст). Заминаҳои ранга байтҳои сарлавҳаи RTP-ро нишон медиҳанд ва сабз блоки маълумотро, ки сарбории бастаи RTP-ро дар бар мегирад, нишон медиҳад. Маълумот дар формати шонздаҳӣ пешниҳод карда мешавад. Дар ҳолати мо, ин сигнали аудиоест, ки мувофиқи қонуни u-қонун фишурда шудааст (mu-law), яъне. як намуна ба андозаи 1 байт аст. Азбаски мо суръати интихобкунии пешфарзро (8000 Гц) бо суръати бастаи 50 Гц истифода мебарем, ҳар як бастаи RTP бояд 160 байт бори пурбор дошта бошад. Мо инро бо шумориши байтҳо дар майдони сабз мебинем, бояд 10 сатр бошад.

Тибқи стандарт, ҳаҷми маълумот дар бори пурбор бояд чандкаратаи чор бошад ё ба ибораи дигар бояд шумораи бутуни калимаҳои чаҳор байтро дар бар гирад. Агар рӯй диҳад, ки сарбории шумо ин қоидаро риоя намекунад, ба шумо лозим аст, ки байтҳоро бо арзиши сифр ба охири бор илова кунед ва бит Padding -ро муқаррар кунед. Ин бит дар байти аввали сарлавҳаи RTP ҷойгир аст ва фирӯзии ранга аст. Аҳамият диҳед, ки ҳама байтҳои борбардор арзиши 0xFF доранд - ҳамин тавр хомӯшӣ дар формати u-law ба назар мерасад.

Сарлавҳаи бастаи RTP аз 12 байти зарурӣ иборат аст, аммо дар ду ҳолат он метавонад дарозтар бошад:

  • Вақте ки пакет сигнали аудиоиро, ки тавассути омезиши сигналҳо аз якчанд манбаъҳо (ҷараёни RTP) ба даст омадааст, интиқол медиҳад, пас пас аз 12 байти аввали сарлавҳа ҷадвал бо рӯйхати идентификаторҳои манбаъ мавҷуд аст, ки сарбории онҳо барои эҷоди сарбории ин баста истифода шудааст. Дар ин ҳолат, дар чор битҳои поёнии байти аввали сарлавҳа (майдон Ҳисоби идентификаторҳои манбаъ) шумораи манбаъхо нишон дода шудааст. Андозаи майдон 4 бит аст, аз ин рӯ ҷадвал метавонад то 15 идентификатори манбаъро дар бар гирад. Ҳар яке аз онҳо 4 байт мегирад. Ин ҷадвал ҳангоми ташкили занги конфронс истифода мешавад.

  • Вақте ки сарлавҳа тамдид дорад. Дар ин ҳолат, бит дар байти аввали сарлавҳа муқаррар карда мешавад X. Дар сарлавҳаи васеъ пас аз ҷадвали иштирокчиён (агар вуҷуд дошта бошад) сарлавҳаи яккалима ва пас аз он калимаҳои васеъшавӣ мавҷуд аст. Васеъ маҷмӯи байтҳоест, ки шумо метавонед барои интиқоли маълумоти иловагӣ истифода баред. Стандарт формати ин маълумотро муайян намекунад - он метавонад ҳама чиз бошад. Масалан, инҳо метавонанд баъзе танзимоти иловагӣ барои дастгоҳе бошанд, ки бастаҳои RTP-ро қабул мекунанд. Аммо барои баъзе барномаҳо, стандартҳои васеътари сарлавҳа таҳия шудаанд. Ин, масалан, барои таҷҳизоти алоқа дар стандарт анҷом дода мешавад ED-137 (Стандартҳои ҳамоҳангсозӣ барои ҷузъҳои банкоматҳои VoIP).

Акнун биёед ба майдонҳои сарлавҳа муфассалтар назар андозем. Дар зер як тасвири каноникӣ бо сохтори сарлавҳаи RTP мавҷуд аст, ки ман низ натавонистам муқобилат кунам ва бо ҳамон рангҳо ранг кунам.

Омӯзиши муҳаррики Mediastreamer2 VoIP. Қисми 8
VER — рақами версияи протокол (версияи ҷорӣ 2);

P — парчам, ки дар ҳолатҳое гузошта мешавад, ки бастаи RTP дар охир бо байтҳои холӣ пурра карда мешавад;

X — парчам, ки сарлавҳа васеъ карда шудааст;

CC — дорои шумораи идентификаторҳои CSRC пас аз сарлавҳаи доимӣ (пас аз калимаҳои 1..3), ҷадвал дар расм нишон дода нашудааст;

M — маркери оғози кадр ё мавҷудияти нутқ дар канал (агар детектори таваққуфи сухан истифода шавад). Агар қабулкунанда детектори таваққуфи нутқ надошта бошад, пас ин бит бояд доимӣ гузошта шавад;

PTYPE — формати боркаширо нишон медихад;

Рақами пайдарпай — рақами маҷмӯа, ки барои барқарор кардани тартиби бозикунии бастаҳо истифода мешавад, зеро вазъияти воқеӣ он аст, ки бастаҳо метавонанд ба қабулкунанда бо тартиби дигаре, ки фиристода шуда буданд, дастрас шаванд. Арзиши ибтидоӣ бояд тасодуфӣ бошад; ин барои он анҷом дода мешавад, ки агар рамзгузории ҷараёни RTP истифода шавад, шикастани он душвор хоҳад буд. Ин майдон инчунин ба шумо имкон медиҳад, ки тарки пакетҳоро ошкор кунед;

Вақтсанҷ — тамғаи вақт. Вақт дар намунаҳои сигнал чен карда мешавад, яъне. агар баста 160 намуна дошта бошад, он гоҳ тамғаи вақти бастаи навбатӣ аз 160 зиёдтар хоҳад буд. Қимати ибтидоии тамғаи вақт бояд тасодуфӣ бошад;

SSRC — муайянкунандаи манбаи баста, он бояд беназир бошад. Пеш аз оғози ҷараёни RTP, онро ба таври тасодуфӣ тавлид кардан беҳтар аст.

Агар шумо интиқолдиҳанда ё қабулкунандаи бастаҳои RTP-и худро таҳия кунед, шумо бояд ба бастаҳои худ зиёда аз як маротиба назар андозед, аз ин рӯ барои баланд бардоштани ҳосилнокӣ, ман тавсия медиҳам, ки истифодаи филтркунии бастаҳоро дар TShark азхуд кунед, он ба шумо имкон медиҳад, ки танҳо он бастаҳоро сабт кунед. ки ба шумо таваҷҷӯҳ доранд. Дар шароите, ки дар шабака даҳҳо дастгоҳҳои RTP кор мекунанд, ин хеле арзишманд аст. Дар сатри фармони TShark, параметрҳои филтр бо имконоти "-f" муайян карда мешаванд. Вақте ки мо мехостем пакетҳоро аз порти 8010 гирем, ин хосиятро истифода бурдем:
-f "udp port 8010"
Параметрҳои филтр аслан маҷмӯи меъёрҳое мебошанд, ки бастаи "сайдшуда" бояд мувофиқат кунад. Шарт метавонад суроға, порт ё арзиши байти мушаххасро дар баста тафтиш кунад. Шартҳоро метавон бо истифода аз амалиёти мантиқии "VA", "OR" ва ғайра муттаҳид кард. Воситаи хеле пурқувват.

Агар шумо хоҳед, ки динамикаи тағирёбии майдонҳоро дар гурӯҳҳо бинед, шумо бояд баромадро такрор кунед TShark ба файл, тавре ки дар мақолаи қаблӣ нишон дода шуда буд, бо истифода аз интиқоли баромад TShark дар даромадгоҳ Тием. Баъдан, бо истифода аз файли сабтро кушоед камтар, vim ё асбоби дигаре, ки метавонад бо файлҳои бузурги матнӣ зуд кор кунад ва сатрҳоро ҷустуҷӯ кунад, шумо метавонед тамоми нозукиҳои рафтори майдонҳои пакетиро дар ҷараёни RTP пайдо кунед.

Агар ба шумо лозим аст, ки сигнали тавассути ҷараёни RTP интиқолшударо гӯш кунед, пас шумо бояд версияро истифода баред TShark бо интерфейси визуалӣ Виршарк. Тавассути амалҳои оддии муш, шумо метавонед осциллограммаи сигналро гӯш кунед ва бубинед. Аммо бо як шарт - агар он дар формати u-law ё a-low рамзгузорӣ шуда бошад.

Баъдӣ мақола Мо бо шумо домофони дуплекс месозем. Якчанд гӯшмонак ва як ҳамсӯҳбатро захира кунед.

Манбаъ: will.com

Илова Эзоҳ