Richard Fuchs
b9d1509244
MT#55283 rename module
Change-Id: I81f5370655af00d3a99593eb17cb1d62d961370c
1 week ago
Richard Fuchs
b324647699
MT#55283 create and delete native nftables rule
Adds option to fall back to legacy XT target.
Change-Id: Ieda628313d42159df9a6e6281a50d4b289ab8a0c
1 week ago
Matteo Brancaleoni
e9fd1f89e3
MT#55283 Add inbound-peer, outbound-peer and peer flags for automatic interface selection
Introduce three new NG protocol flags that automatically select the matching
configured rtpengine interface based on the system's routing table:
- inbound-peer=<ip>: resolves to interface for inbound (from) direction
- outbound-peer=<ip>: resolves to interface for outbound (to) direction
- peer=<ip> resolves to interface when only one interface is required
When these flags are used, the system:
- Uses a temporary UDP socket to determine the local address assigned by routing
- Finds the first configured rtpengine interface matching that local address
- Uses that interface for the media stream
This allows dynamic interface selection based on network topology without
requiring explicit interface names in the signaling.
Closes #2033
Change-Id: I211806b9cef9d028fdb689d90ea3fe627bdf5d0d
1 week ago
Richard Fuchs
d279b14a99
MT#55283 export poller thread stats
Change-Id: I5b8b2e6c791d27a1d29e982c72005aff38e7cd6d
2 weeks ago
Harsh Daga
d45a29e3cd
MT#55283 adaptive jitter buffer
closes #2018
Change-Id: I94d4eb08e96fe33e149a03a647c6b13c814d7469
1 month ago
Richard Fuchs
15682312b7
MT#55283 convert extmap to iqueue
Change-Id: Ib2cd22fe5e004fadd30d44d91fd9ad344e4b9b74
4 weeks ago
Richard Fuchs
f68e614709
MT#55283 convert slp to iqueue
Change-Id: I7afc869810917f05a08d0147b225d3162720e430
4 weeks ago
Richard Fuchs
ef8967dafe
MT#55283 convert packets_out to iqueue
Change-Id: Iff72ab45cd3d4f6579180b5ed121a1779ee8285b
4 weeks ago
Richard Fuchs
914f6dfa1a
MT#55283 use intrusive list
Change-Id: I53c561dcc781f5cbd367ccb0df7b6900241f5e24
2 months ago
Richard Fuchs
4f5d013640
MT#55283 introduce socket use counter
Change-Id: I2468f4faedd195c9ea52d6ee6c99eabf37b7e73e
2 months ago
Richard Fuchs
1fdf5cf2ea
MT#55283 add TCP keepalives for Redis connections
Change-Id: Id16f7f0f547f45cbef95bc98ede67a30f01cf3b9
1 month ago
Richard Fuchs
6b785e77a2
MT#55283 make arg non null
Change-Id: Ia30ab70c0a520b6469146bdb60fcd112f56673b3
2 months ago
Richard Fuchs
37813ddf86
MT#63317 rework port opening mechanics
Instead of opening local sockets directly during call setup, just create
the appropriate objects first, and then open the actual sockets in a
second step.
Move the opening step down, after the bundle logic has run. This way we
can avoid opening sockets that aren't needed.
Removes an intermediate step of obtaining consecutive ports.
Change-Id: Ib94c871ed6b3a433872afd23cb1aebbd9910b33e
2 months ago
Richard Fuchs
0ea27e9193
MT#63317 split apart ICE startup
Gather candidates in one step, and create candidate pairings against
local sockets in a second step.
Change-Id: I85bba7fe95af14d7f77a14d5baad4ea072a83bd3
2 months ago
Richard Fuchs
0ebc75d229
MT#63317 rework endpoint_map hunting
Store the current (last) used endpoint map in the media object. This can
then be directly used when port latching is requested.
Remove and close sockets from endpoint map if fewer ports are needed.
Change-Id: I58aab82f82ecc3b0a7fc7a781394c8d77e715ecf
2 months ago
Richard Fuchs
ec61501298
MT#63317 amend WebRTC flag with BUNDLE option
Change-Id: I01eaa8a9e23a72e98be70091706ef367285ae08d
2 months ago
Richard Fuchs
a3f5246bdb
MT#63317 separate ICE init from ICE start
Change-Id: Idf600bce7306b2e0f808b14c3b853fb93fd05d4a
3 months ago
Richard Fuchs
e1cfefc07e
MT#55283 disable kernel RTCP FW if filtering
Change-Id: I9488b444d413d227153b2e73a3efe2facce98d26
3 months ago
Richard Fuchs
4aa3641cad
MT#63317 avoid mismatched extmap IDs
Change-Id: I7489ebaf9dbcb4ebb0c0bf469872433c25a0acb4
3 months ago
Richard Fuchs
429c7b5c71
MT#63317 support bundle offer
Change-Id: Ibb271535c38654c4fa4d52026d6a4ce41535e3cb
3 months ago
Richard Fuchs
44deb79faa
MT#63317 remove unused hash table
Not needed as it turns out
Change-Id: I5236d32b6a0a6c0d51e3e0e9445dd5efeca73536
3 months ago
Richard Fuchs
4c78949654
MT#63317 associate SSRC with media
Change-Id: I0fba8f0a2c98c4b80b1688c85768efdf4410abe8
3 months ago
Richard Fuchs
cc48a89c41
MT#63317 set correct output media w bundle
Change-Id: I8e4e2514a6f779d9fcedfe1593b228d336cf5c2a
3 months ago
Richard Fuchs
3b0496979a
MT#63317 extmap parsing in kernel
Change-Id: I2d4b0f0ba08d0dd793bd4e9716731dfe96ee155a
3 months ago
Richard Fuchs
7ce5b7660e
MT#63317 typedef for kernelize_state
Change-Id: I1b712ccc049b13bc6e1aef41ef2cd13dafddc99d
3 months ago
Richard Fuchs
8cf038e4fa
MT#63317 rework kernel output grouping
Change-Id: I3e798e5f1e5ae2f4af247819e3d323cdbf56b36b
3 months ago
Richard Fuchs
78f9c0147a
MT#63317 generalise functions
Change-Id: I4ed802c755b6faab0fcba311b7b1fe617e2dd669
3 months ago
Richard Fuchs
12f69abbc3
MT#63317 share ports/sockets among bundle groups
Change-Id: I951f3690e7b795fdc08f0e37a1efb48a1a2630ca
3 months ago
Richard Fuchs
871c4c0579
MT#63317 support BUNDLE flags
Change-Id: Iddc7f5b8394cdd2c2543775163f8867a1d88b14a
4 months ago
Richard Fuchs
3ef034a675
MT#63317 track extensions by known ID
Change-Id: I17f20bc8be60d779d1a3d18616bb518062f74e6b
3 months ago
Richard Fuchs
774834d0c7
MT#63317 set media from RTP ext
Change-Id: Id71e219a57decd409f4e8a7620c9809c9b577ae7
4 months ago
Richard Fuchs
bc779d0913
MT#63317 PT tracking
Change-Id: Ic354f62cef4cb37e3d65648a2f953cf9995e60b2
4 months ago
Richard Fuchs
1f91ce4c37
MT#63317 support bundle groups
Change-Id: Iff961283f77986c6df7147149e058286fbc91ca6
4 months ago
Richard Fuchs
16780ac17d
MT#63317 support multiple a=group attrs
Change-Id: Icb2c00e1ca46fafbc8862fe6b9cf2aae4a62fbfa
4 months ago
Richard Fuchs
5853dcb41b
MT#63317 move confirmed/kernel flags to stream_fd
The key for an in-kernel stream is a local port, so it is really the
socket (port) that gets pushed into the kernel, not the packet_stream.
Similar to the "confirmed" state, as we expect each socket to only have
one peer address/port.
Change-Id: I34fef771cd8b01701196ffb77e17fcd229c86550
3 months ago
Richard Fuchs
de6e8e3763
MT#55283 use embedded array
Change-Id: I85330fb38b041d83a93e3c329cc3fc592290fdf3
3 months ago
Richard Fuchs
61103a2ac5
MT#63317 remove unused struct member
Change-Id: I2e0fa7ad49e8e0280bc2c7b1b305fcc7d6c8c5e8
3 months ago
Richard Fuchs
1b05cb043e
MT#63317 support ext filter in kernel
Change-Id: Ic98dde266c7707dd3350d651032d989511ee3bee
3 months ago
Richard Fuchs
ab8c7a82cb
MT#63317 support sending mixed rtpext
Change-Id: Ic504cfd9dea09eeccfc07e524aad14f87ca72692
3 months ago
Richard Fuchs
a87889b35a
MT#63317 initial support for allow-mixed
Adapt affected tests
Change-Id: I2a5dc1249a9a7dbab20b6022e20572a36d9520a9
3 months ago
Richard Fuchs
f934f7737d
MT#63317 support long form extension printing
Change-Id: Ib1f1d51dcf6ac0c74fdeb92311bd04d72bf7e7c2
3 months ago
Richard Fuchs
5c03188d5b
MT#63317 abstract extmap printing
Change-Id: Ia1d8622a1c5ccf358ee573fb8747f3129dc790e8
3 months ago
Richard Fuchs
57bc6b1e95
MT#63317 abstract packet copy
Change-Id: I0ea082a4fad138c25cd710dd82020d4f4d192485
3 months ago
Richard Fuchs
8828b176c8
MT#63317 introduce extmap_ops abstraction
Change-Id: Icffa6f618270d2e7c10695bf1bade00ad8a49894
3 months ago
Richard Fuchs
4fbef39425
MT#63317 add rtpext printing abstraction
Change-Id: I50b4bc3feef4445ccd87f4296504ec196bb8083a
3 months ago
Richard Fuchs
c216b51260
MT#63317 parse out extensions
Change-Id: I33965782836782790e6b0872b97818717f2b9949
3 months ago
Richard Fuchs
dba2386c60
MT#63317 support extmap-mask
Change-Id: Ib8ca6d4ada4a0bc1e67f5c02522eb9fe7f6ba2ce
4 months ago
Richard Fuchs
b98e14631d
MT#63317 update marker flags to bool
Use a struct to pass marker flags to functions
Change-Id: I05b0fe0f9f37e9ff3675f59c7cb98abda3cfe300
4 months ago
Richard Fuchs
b2721c5abc
MT#63317 update payload lengths to size_t
Change-Id: Ib00570198103f93416c1b639777e30755a93646c
4 months ago
Richard Fuchs
42f7e40545
MT#63317 support extmap-strip for SDP
Change-Id: Iaa38fa3c24d69abbfdb8f0e457d406ccf0c6d5bd
4 months ago