scapy.contrib.rtcp
RTCP (rfc 3550)
Use bind_layers(UDP, RTCP, dport=...) to start using it
- class scapy.contrib.rtcp.RTCP(_pkt, /, *, version=2, padding=0, count=0, packet_type=0, length=None, sourcesync=0, sender_info=<SenderInfo |>, report_blocks=[], sdes_chunks=[])[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |VER|P| COUNT | PACKET TYPE | LENGTH | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SOURCESYNC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SENDER INFO | REPORT BLOCKS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SDES CHUNKS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. RTCPRTCP fields version
BitField(2 bits)2padding
BitField(1 bit)0count
BitFieldLenField(5 bits)0packet_type
0length
Nonesourcesync
IntField(Cond)0sender_info
PacketField(Cond)<SenderInfo |>report_blocks
PacketListField(Cond)[]sdes_chunks
PacketListField(Cond)[]
- class scapy.contrib.rtcp.ReceptionReport(_pkt, /, *, sourcesync=None, fraction_lost=None, cumulative_lost=None, highest_seqnum_recv=None, interarrival_jitter=None, last_SR_timestamp=None, delay_since_last_SR=None)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SOURCESYNC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FRACTION LOST | CUMULATIVE LOST | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | HIGHEST SEQNUM RECV | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | INTERARRIVAL JITTER | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | LAST SR TIMESTAMP | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | DELAY SINCE LAST SR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | +-+-+-+-+-+-+-+-+ Fig. ReceptionReportReceptionReport fields sourcesync
Nonefraction_lost
Nonecumulative_lost
Nonehighest_seqnum_recv
Noneinterarrival_jitter
Nonelast_SR_timestamp
Nonedelay_since_last_SR
None
- class scapy.contrib.rtcp.SDESChunk(_pkt, /, *, sourcesync=None, items=[])[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SOURCESYNC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ITEMS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. SDESChunkSDESChunk fields sourcesync
Noneitems
[]
- class scapy.contrib.rtcp.SDESItem(_pkt, /, *, chunk_type=None, length=None, value=None)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CHUNK TYPE | LENGTH | VALUE | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. SDESItemSDESItem fields chunk_type
Nonelength
Nonevalue
None
- class scapy.contrib.rtcp.SenderInfo(_pkt, /, *, ntp_timestamp=None, rtp_timestamp=None, sender_packet_count=None, sender_octet_count=None)[源代码]
基类:
Packet- aliastypes
- fields_desc
Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NTP TIMESTAMP | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | RTP TIMESTAMP | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SENDER PACKET COUNT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SENDER OCTET COUNT | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. SenderInfoSenderInfo fields ntp_timestamp
Nonertp_timestamp
Nonesender_packet_count
Nonesender_octet_count
None