Mediastreamer2 VoIP motorra arakatzen. 8. zatia

Artikuluaren materiala niretik hartua da zen kanala.

Mediastreamer2 VoIP motorra arakatzen. 8. zatia

RTP paketeen egitura

Azkenean Artikulu erabiltzen ari gara TShark gure hargailuaren eta igorlearen artean trukatu ziren RTP paketeen harrapaketa egin zuen. Bada, honetan paketearen elementuak kolore ezberdinez margotuko ditugu eta haien helburuaz hitz egingo dugu.

Ikus dezagun pakete bera, baina koloretako ertzak eta etiketa argigarriak dituena:
Mediastreamer2 VoIP motorra arakatzen. 8. zatia

Zerrendaren behealdean, RTP paketea osatzen duten byteak tindatuta daude, eta hau, aldi berean, UDP paketearen karga da (bere goiburua beltzez inguratuta dago). Koloretako hondoek RTP goiburuko byteak adierazten dituzte, eta RTP paketearen karga duen datu-blokea berdez nabarmentzen da. Datuak hamaseitar formatuan aurkezten dira. Gure kasuan, hau u-legearen (mu-legearen) arabera konprimitutako audio-seinalea da, hau da. lagin batek 1 byte-ko tamaina du. Laginketa-tasa lehenetsia (8000 Hz) erabili genuenez, 50 Hz-ko pakete-abiadurarekin, RTP pakete bakoitzak 160 byte karga eduki beharko luke. Berdeguneko byteak kontatuz ikusiko dugu hori, 10 lerro egon beharko lirateke.

Estandarraren arabera, kargaren datu kopurua lauren multiploa izan behar da, edo bestela esanda, lau byteko hitzen zenbaki oso bat eduki behar du. Gertatzen bada zure karga ez datorrela bat arau honekin, orduan zero balioko byteak gehitu behar dituzu kargaren amaieran eta Betegarri bit-a ezarri. Bit hau RTP goiburuko lehen bytean dago eta turkesa kolorekoa da. Kontuan izan karga-byte guztiak 0xFF direla, hau da, u-law isiltasunak itxura duena.

RTP paketeen goiburuak derrigorrezko 12 byte ditu, baina bi kasutan luzeagoa izan daiteke:

  • Pakete batek hainbat iturritako seinaleak (RTP korronteak) nahasiz lortutako audio-seinalea daramanean, goiburuko lehen 12 byteen ondoren, pakete honen karga sortzeko erabili diren iturri-identifikatzaileen zerrenda duen taula bat dago. Kasu honetan, goiburuko lehen bytearen beheko lau bitetan (eremua Iturburu-identifikatzaile laguntzaileak zenbatzen dira) iturri kopurua adierazten du. Eremuaren tamaina 4 bitekoa da, beraz, taulak 15 iturburu-identifikatzaile izan ditzake gehienez. Horietako bakoitzak 4 byte hartzen ditu. Taula hau konferentzia dei bat konfiguratzerakoan erabiltzen da.

  • Izenburuak luzapena duenean . Kasu honetan, bit-a goiburuko lehen bytean ezartzen da X. Goiburu hedatuan, parte-hartzaileen taularen ondoren (baldin badago), hitz bakarreko luzapenaren goiburua dago, eta ondoren luzapen hitzak. Luzapena datu gehigarriak transferitzeko erabil dezakezun byte bilduma da. Estandarrak ez du datu horien formatua zehazten - edozer izan daiteke. Adibidez, RTP paketeak jasotzen dituen gailuaren ezarpen gehigarri batzuk izan daitezke. Aplikazio batzuetarako, ordea, goiburuko estandar hedatuak garatu dira. Hau egiten da, adibidez, estandarrean dauden komunikazioetarako ED-137 (VoIP kutxazain automatikoaren osagaietarako elkarreragingarritasun-arauak).

Orain ikus ditzagun goiburuko eremuak xehetasun gehiagorekin. Jarraian, RTP goiburuaren egitura duen argazki kanoniko bat dago, eta hori ere ezin izan nuen eutsi eta kolore berdinez margotu nuen.

Mediastreamer2 VoIP motorra arakatzen. 8. zatia
VER β€” protokoloaren bertsioaren zenbakia (uneko 2. bertsioa);

P - amaieran RTP paketea byte hutsekin gehitzen den kasuetan ezartzen den bandera;

X - goiburua hedatuta dagoela adierazi;

CC β€” goiburu konstantearen ondorengo CSRC identifikatzaile kopurua dauka (1..3 hitzen ondoren), taula ez da irudian agertzen;

M β€” fotograma baten hasierako markatzailea edo kanalean hizketaren presentzia (hizketa-pauso-detektagailua erabiltzen bada). Hartzaileak ez badu hizketa-pauso-detektagailurik, bit hori betiko ezarriko da;

PTYPE - kargaren formatua zehazten du;

Sekuentzia zenbakia - pakete-zenbakia, paketeak erreproduzitzen diren ordena berrezartzeko erabiltzen dena, benetako egoera paketeak bidalitako ordena okerrean hartzailera irits daitezkeela baita. Hasierako balioa ausazkoa izan behar da, hau egiten da, RTP korrontea enkriptatzen bada, zaila izango da hackeatzea. Gainera, eremu honek galdutako paketeak detektatzeko aukera ematen du;

Timestamp - denbora-zigilua. Denbora seinale-laginetan neurtzen da, hau da. Leherketa batek 160 lagin baditu, hurrengo leherketaren denbora-zigilua 160 gehiago izango da. Denbora-zigiluaren hasierako balioa ausazkoa izan behar da;

SSRC β€” pakete-iturriaren identifikatzailea, bakarra izan behar du. Hobe da ausaz sortzea RTP korrontea hasi aurretik.

Zure RTP pakete-igorlea edo hargailua garatzen baduzu, zure paketeak behin baino gehiagotan begiratu beharko dituzu produktibitatea areagotzeko, TShark-en paketeen iragazketa nola erabiltzen ikastea gomendatzen dizut, pakete horiek bakarrik harrapatzeko aukera ematen dizu. zuretzako interesgarriak dira. Dozenaka RTP gailu sarean funtzionatzen duten ingurune batean, hau oso baliotsua da. TShark komando-lerroan, iragazteko aukerak "-f" aukerarekin zehazten dira. Aukera hau erabili dugu 8010 atakatik paketeak harrapatu nahi genituenean:
-f "udp port 8010"
Iragazte-parametroak "harrapatutako" pakete batek bat etorri behar dituen irizpide multzo bat dira funtsean. Baldintzak paketeko byte jakin baten helbidea, ataka eta balioa egiazta ditzake. Baldintzak "ETA", "OR" eta abar eragiketa logikoekin konbina daitezke. Oso tresna indartsua.

Eremu aldaketen dinamika loteka ikusi nahi baduzu, irteera bikoiztu beharko duzu TShark fitxategi batera, azken artikuluan erakusten den moduan, irteera pasatuz TShark sarreran tee. Ondoren, ireki log fitxategia honekin gutxiago, vim edo testu-fitxategi erraldoiekin azkar lan egin dezakeen beste tresna bat eta kateak bilatzeko, pakete-eremuen portaeraren Γ±abardura guztiak ezagutu ditzakezu RTP korronte batean.

RTP korronteak igorritako seinalea entzun behar baduzu, bertsioa erabili behar duzu TShark interfaze bisualarekin Wireshark. Saguaren manipulazio sinpleekin, seinalearen uhin forma entzun eta ikus dezakezu. Baina baldintza batekin - u-law edo a-low formatuan kodetuta badago.

Hurrengoa Artikulu interfono duplex bat egingo dugu zurekin. Sortu entzungailu pare bat eta solaskide bat.

Iturria: www.habr.com

Gehitu iruzkin berria