เจ
เฉฑเจ, เจเจฆเจพเจนเจฐเจจ เจฒเจ, IP(TS) เจฆเฉ เจชเฉเจฐเจตเจพเจน เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจเจฐเจจ เจฒเจ เจคเจฟเจเจฐ เจเฉเจคเฉ (เจฎเจพเจฒเจเฉเจ
เจค) เจนเฉฑเจฒ เจนเจจ
TSDuck เจฌเจพเจฐเฉ เจฌเจนเฉเจค เจธเฉฐเจเฉเจช เจตเจฟเฉฑเจ
TSDuck เจเฉฑเจ เจเจชเจจ เจธเฉเจฐเจธ (2-เจเจฒเจพเจเจผ BSD เจฒเจพเจเจธเฉเจเจธ) เจธเฉเจซเจเจตเฉเจ เจฐ เจนเฉ (เจเฉฐเจธเฉเจฒ เจเจชเจฏเฉเจเจคเจพเจตเจพเจ เจฆเจพ เจเฉฑเจ เจธเฉเฉฑเจ เจ เจคเฉ เจคเฉเจนเจพเจกเฉเจเจ เจเจชเจฃเฉเจเจ เจเจชเจฏเฉเจเจคเจพเจตเจพเจ เจเจพเจ เจชเจฒเฉฑเจเจเจจเจพเจ เจจเฉเฉฐ เจตเจฟเจเจธเจค เจเจฐเจจ เจฒเจ เจเฉฑเจ เจฒเจพเจเจฌเฉเจฐเฉเจฐเฉ) TS เจธเจเฉเจฐเฉเจฎเจพเจ เจจเฉเฉฐ เจนเฉเจฐเจพเจซเฉเจฐเฉ เจเจฐเจจ เจฒเจเฅค เจเฉฑเจ เจเฉฐเจชเฉเฉฑเจ เจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ, เจเจน IP (เจฎเจฒเจเฉเจเจพเจธเจ/เจฏเฉเจจเฉเจเจพเจธเจ), http, hls, dvb เจเจฟเจเจจเจฐ, dektec dvb-asi demodulator เจจเจพเจฒ เจเฉฐเจฎ เจเจฐ เจธเจเจฆเจพ เจนเฉ, เจเฉฑเจ เจ เฉฐเจฆเจฐเฉเจจเฉ TS เจธเจเฉเจฐเฉเจฎ เจเจจเจฐเฉเจเจฐ เจนเฉ เจ เจคเฉ เจซเจพเจเจฒเจพเจ เจคเฉเจ เจฐเฉเจกเจฟเฉฐเจ เจนเฉเฅค เจเจเจเจชเฉเฉฑเจ เจเฉฑเจ เจซเจพเจเจฒ, IP (เจฎเจฒเจเฉเจเจพเจธเจ/เจฏเฉเจจเฉเจเจพเจธเจ), hls, dektec dvb-asi เจ เจคเฉ HiDes เจฎเฉเจกเจฟเจเจฒเฉเจเจฐ, เจชเจฒเฉเจ เจฐ (mplayer, vlc, xine) เจ เจคเฉ เจกเฉเจฐเฉเจช เจฒเจ เจฐเจฟเจเจพเจฐเจกเจฟเฉฐเจ เจนเฉ เจธเจเจฆเฉ เจนเฉเฅค เจเจจเจชเฉเจ เจ เจคเฉ เจเจเจเจชเฉเฉฑเจ เจฆเฉ เจตเจฟเจเจเจพเจฐ, เจคเฉเจธเฉเจ เจตเฉฑเจ-เจตเฉฑเจ เจเฉเจฐเฉเจซเจฟเจ เจชเฉเจฐเฉเจธเฉเจธเจฐเจพเจ เจจเฉเฉฐ เจธเจฎเจฐเฉฑเจฅ เจเจฐ เจธเจเจฆเฉ เจนเฉ, เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจชเฉเจเจเจกเฉ เจจเฉเฉฐ เจฐเฉเจฎเฉเจช เจเจฐเจจเจพ, เจธเจเฉเจฐเฉเจเจฌเจฒเจฟเฉฐเจ/เจกเฉเจธเจเฉเจฐเฉเจเจฌเจฒเจฟเฉฐเจ เจเจฐเจจเจพ, เจธเฉเจธเฉ เจเจพเจเจเจเจฐเจพเจ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจเจพ, เจฌเจฟเฉฑเจเจฐเฉเจ เจฆเฉ เจเจฃเจจเจพ เจเจฐเจจเจพ เจ เจคเฉ TS เจธเจเฉเจฐเฉเจฎเจพเจ เจฒเจ เจเจพเจธ เจนเฉเจฐ เจเจพเจฐเจตเจพเจเจเจเฅค
เจเจธ เจฒเฉเจ เจตเจฟเฉฑเจ, IP เจธเจเฉเจฐเฉเจฎเจเจผ (เจฎเจฒเจเฉเจเจพเจธเจ) เจจเฉเฉฐ เจเจจเจชเฉเจ เจฆเฉ เจคเฉเจฐ 'เจคเฉ เจตเจฐเจคเจฟเจ เจเจพเจตเฉเจเจพ, เจฌเจฟเฉฑเจเจฐเฉเจ_เจฎเฉเจจเฉเจเจฐ เจชเฉเจฐเฉเจธเฉเจธเจฐ (เจจเจพเจฎ เจคเฉเจ เจเจน เจธเจชเฉฑเจธเจผเจ เจนเฉ เจเจฟ เจเจน เจเฉ เจนเฉ) เจ เจคเฉ เจจเจฟเจฐเฉฐเจคเจฐเจคเจพ (CC เจเจพเจเจเจเจฐ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ) เจชเฉเจฐเฉเจธเฉเจธเจฐเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเฉเจคเฉ เจเจพเจตเฉเจเฉเฅค เจฌเจฟเจจเจพเจ เจเจฟเจธเฉ เจธเจฎเฉฑเจธเจฟเจ เจฆเฉ, เจคเฉเจธเฉเจ IP เจฎเจฒเจเฉเจเจพเจธเจ เจจเฉเฉฐ TSDuck เจฆเฉเจเจฐเจพ เจธเจฎเจฐเจฅเจฟเจค เจเจฟเจธเฉ เจนเฉเจฐ เจเจจเจชเฉเจ เจเจฟเจธเจฎ เจจเจพเจฒ เจฌเจฆเจฒ เจธเจเจฆเฉ เจนเฉเฅค
เจเจชเจฒเฉฑเจฌเจง
เจ เฉฑเจเฉ, TSDuck เจธเฉฐเจธเจเจฐเจฃ 3.19-1520 เจตเจฐเจคเจฟเจ เจเจพเจเจฆเจพ เจนเฉ, เจฒเฉเจจเจเจธ เจจเฉเฉฐ OS เจตเจเฉเจ เจตเจฐเจคเจฟเจ เจเจพเจเจฆเจพ เจนเฉ (เจกเฉเจฌเฉเจ เจจ 10 เจนเฉฑเจฒ เจคเจฟเจเจฐ เจเจฐเจจ เจฒเจ เจตเจฐเจคเจฟเจ เจเจฟเจ เจธเฉ, CentOS 7 เจ เจธเจฒ เจตเจฐเจคเฉเจ เจฒเจ เจตเจฐเจคเจฟเจ เจเจฟเจ เจธเฉ)
TSDuck เจ เจคเฉ OS เจฆเฉ เจคเจฟเจเจฐเฉ
เจ เจธเจฒ เจตเจนเจพเจ เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจเจฐเจจ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ เจเจฟ TSDuck เจธเจนเฉ เจขเฉฐเจ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ เจเจน เจฌเฉเฉฐเจฆเจพเจ เจจเฉเฉฑเจเจตเจฐเจ เจเจพเจฐเจก เจเจพเจ OS (เจธเจพเจเฉเจ) เจชเฉฑเจงเจฐ 'เจคเฉ เจจเจนเฉเจ เจเจเจเจฆเฉเจเจ เจนเจจเฅค เจเจน เจเจธ เจฒเจ เจฒเฉเฉเฉเจเจฆเจพ เจนเฉ เจคเจพเจ เจเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจฌเจพเจ เจฆ เจตเจฟเฉฑเจ เจเจน เจ เฉฐเจฆเจพเจเจผเจพ เจฒเจเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจจเจพ เจชเจตเฉ เจเจฟ เจฌเฉเฉฐเจฆเจพเจ เจเจฟเฉฑเจฅเฉ เจเจเจเจ - เจจเฉเฉฑเจเจตเจฐเจ 'เจคเฉ เจเจพเจ "เจธเจฐเจตเจฐ เจฆเฉ เจ เฉฐเจฆเจฐเฅค" เจคเฉเจธเฉเจ ethtool -S ethX เจเจฎเจพเจเจก เจจเจพเจฒ เจจเฉเฉฑเจเจตเจฐเจ เจเจพเจฐเจก เจชเฉฑเจงเจฐ 'เจคเฉ เจฌเฉเฉฐเจฆเจพเจ เจฆเฉ เจเจพเจเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ, เจเจฟเจเจจเจฟเฉฐเจ เจเจธเฉ เจเจฅเจเฉเจฒ เจฆเฉเจเจฐเจพ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ (เจเจฎ เจคเฉเจฐ 'เจคเฉ เจคเฉเจนเจพเจจเฉเฉฐ RX เจฌเจซเจฐ (-G) เจตเจงเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ เจ เจคเฉ เจเจ เจตเจพเจฐ เจเฉเจ เจเจซเจฒเฉเจก (-K) เจจเฉเฉฐ เจ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจเจฃเจพ เจนเฉเฉฐเจฆเจพ เจนเฉ)เฅค เจเฉฑเจ เจเจฎ เจธเจฟเจซเจผเจพเจฐเจธเจผ เจฆเฉ เจคเฉเจฐ 'เจคเฉ, เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเฉเจคเฉ เจเฉเจฐเฉเจซเจฟเจ เจจเฉเฉฐ เจชเฉเจฐเจพเจชเจค เจเจฐเจจ เจฒเจ เจเฉฑเจ เจตเฉฑเจเจฐเฉ เจชเฉเจฐเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเฉ เจธเจฒเจพเจน เจฆเจฟเฉฑเจคเฉ เจเจพเจเจฆเฉ เจนเฉ, เจเฉเจเจฐ เจธเฉฐเจญเจต เจนเฉเจตเฉ, เจคเจพเจ เจเจน เจเจธ เจคเฉฑเจฅ เจฆเฉ เจเจพเจฐเจจ เจเจฒเจค เจธเจเจพเจฐเจพเจคเจฎเจเจคเจพ เจจเฉเฉฐ เจเฉฑเจ เจเจฐเฉเจเจพ เจเจฟ เจฆเฉเจเฉ เจเฉเจฐเฉเจซเจฟเจ เจฆเฉ เจฎเฉเจเฉเจฆเจเฉ เจฆเฉ เจเจพเจฐเจจ เจตเจฟเจธเจผเจฒเฉเจธเจผเจ เจชเฉเจฐเจ 'เจคเฉ เจเฉฑเจเฉ เจธเจฎเฉเจ เจตเจฟเฉฑเจ เจเจฟเจฐเจพเจตเจ เจเจ เจนเฉเฅค เจเฉ เจเจน เจธเฉฐเจญเจต เจจเจนเฉเจ เจนเฉ (เจคเฉเจธเฉเจ เจเฉฑเจ เจชเฉเจฐเจ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจฎเจฟเฉฐเจจเฉ-เจเฉฐเจชเจฟเจเจเจฐ/NUC เจตเจฐเจค เจฐเจนเฉ เจนเฉ), เจคเจพเจ เจเจน เจฌเจนเฉเจค เจธเจฒเจพเจน เจฆเจฟเฉฑเจคเฉ เจเจพเจเจฆเฉ เจนเฉ เจเจฟ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเฉเจคเฉ เจเฉเจฐเฉเจซเจฟเจ เจฆเฉ เจคเจฐเจเฉเจน เจจเฉเฉฐ เจเจธ เจกเจฟเจตเจพเจเจธ เจฆเฉ เจฌเจพเจเฉ เจฆเฉ เจธเจฌเฉฐเจง เจตเจฟเฉฑเจ เจเฉเจเจซเจฟเจเจฐ เจเจฐเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจตเจฟเจธเจผเจฒเฉเจธเจผเจ เจเจจเฉเจเจ เจเฉเจคเจพ เจเจฟเจ เจนเฉเฅค เจตเจฐเจเฉเจ เจฒ เจตเจพเจคเจพเจตเจฐเจจ เจฆเฉ เจธเฉฐเจฌเฉฐเจง เจตเจฟเฉฑเจ, เจเฉฑเจฅเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจธเจพเจตเจงเจพเจจ เจฐเจนเจฟเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ เจ เจคเฉ เจญเฉเจคเจฟเจ เจชเฉเจฐเจ เจคเฉเจ เจธเจผเฉเจฐเฉ เจนเฉ เจเฉ เจ เจคเฉ เจตเจฐเจเฉเจ เจฒ เจฎเจธเจผเฉเจจ เจฆเฉ เจ เฉฐเจฆเจฐ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฆเฉ เจจเจพเจฒ เจเจคเจฎ เจนเฉเจฃ เจตเจพเจฒเฉ เจชเฉเจเฉเจ เจฌเฉเฉฐเจฆเจพเจ เจจเฉเฉฐ เจฒเฉฑเจญเจฃ เจฆเฉ เจฏเฉเจ เจนเฉเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค
เจนเฉเจธเจ เจฆเฉ เจ เฉฐเจฆเจฐ เจเฉฑเจ เจธเจเฉเจฐเฉเจฎ เจคเจฟเจเจฐ เจเจฐเจจเจพ เจ เจคเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเจจเจพ
TSDuck เจจเฉเฉฐ เจคเจฟเจเจฐ เจเจฐเจจ เจฆเฉ เจชเจนเจฟเจฒเฉ เจเจฆเจฎ เจตเจเฉเจ, เจ เจธเฉเจ netns เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเฉฑเจ เจนเฉเจธเจ เจฆเฉ เจ เฉฐเจฆเจฐ เจเฉเจฐเฉเจซเจฟเจ เจคเจฟเจเจฐ เจ เจคเฉ เจชเฉเจฐเจพเจชเจค เจเจฐเจพเจเจเฉเฅค
เจตเจพเจคเจพเจตเจฐเจฃ เจฆเฉ เจคเจฟเจเจฐเฉ:
ip netns add P #ัะพะทะดะฐัะผ netns P, ะฒ ะฝัะผ ะฑัะดะตั ะฟัะพะธัั
ะพะดะธัั ะฐะฝะฐะปะธะท ััะฐัะธะบะฐ
ip link add type veth #ัะพะทะดะฐัะผ veth-ะฟะฐัั - veth0 ะพััะฐะฒะปัะตะผ ะฒ netns ะฟะพ ัะผะพะปัะฐะฝะธั (ะฒ ััะพั ะธะฝัะตััะตะนั ะฑัะดะตั ะณะตะฝะตัะธัะพะฒะฐัััั ััะฐัะธะบ)
ip link set dev veth1 netns P #veth1 - ะฟะพะผะตัะฐะตะผ ะฒ netns P (ะฝะฐ ััะพะผ ะธะฝัะตััะตะนัะต ะฑัะดะตั ะฟัะธัะผ ััะฐัะธะบะฐ)
ip netns exec P ifconfig veth1 192.0.2.1/30 up #ะฟะพะดะฝะธะผะฐะตะผ IP ะฝะฐ veth1, ะฝะต ะธะผะตะตั ะทะฝะฐัะตะฝะธั ะบะฐะบะพะน ะธะผะตะฝะฝะพ
ip netns exec P ip ro add default via 192.0.2.2 #ะฝะฐัััะฐะธะฒะฐะตะผ ะผะฐััััั ะฟะพ ัะผะพะปัะฐะฝะธั ะฒะฝัััะธ nents P
sysctl net.ipv6.conf.veth0.disable_ipv6=1 #ะพัะบะปััะฐะตะผ IPv6 ะฝะฐ veth0 - ััะพ ะดะตะปะฐะตััั ะดะปั ัะพะณะพ, ััะพะฑั ะฒ ัััััะธะบ TX ะฝะต ะฟะพะฟะฐะดะฐะป ะฟะพััะพัะพะฝะฝะธะน ะผััะพั
ifconfig veth0 up #ะฟะพะดะฝะธะผะฐะตะผ ะธะฝัะตััะตะนั veth0
ip route add 239.0.0.1 dev veth0 #ัะพะทะดะฐัะผ ะผะฐััััั, ััะพะฑั ะะก ะฝะฐะฟัะฐะฒะปัะปะฐ ััะฐัะธะบ ะบ 239.0.0.1 ะฒ ััะพัะพะฝั veth0
เจตเจพเจคเจพเจตเจฐเจฃ เจคเจฟเจเจฐ เจนเฉเฅค เจเฉเจฐเฉเจซเจฟเจ เจเจจเจพเจฒเจพเจเจเจผเจฐ เจฒเจพเจเจ เจเจฐเฉ:
ip netns exec P tsp --realtime -t
-I ip 239.0.0.1:1234
-P continuity
-P bitrate_monitor -p 1 -t 1
-O drop
เจเจฟเฉฑเจฅเฉ "-p 1 -t 1" เจฆเจพ เจฎเจคเจฒเจฌ เจนเฉ เจเจฟ เจคเฉเจนเจพเจจเฉเฉฐ เจนเจฐ เจธเจเจฟเฉฐเจ เจฌเจฟเฉฑเจเจฐเฉเจ เจฆเฉ เจเจฃเจจเจพ เจเจฐเจจ เจ
เจคเฉ เจนเจฐ เจธเจเจฟเฉฐเจ เจฌเจฟเฉฑเจเจฐเฉเจ เจฌเจพเจฐเฉ เจเจพเจฃเจเจพเจฐเฉ เจฆเจฟเจเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ
เจ
เจธเฉเจ 10 Mbit/s เจฆเฉ เจธเจชเฉเจก เจจเจพเจฒ เจเฉฑเจ เจเฉเจฐเฉเจซเจฟเจ เจเจจเจฐเฉเจเจฐ เจฒเจพเจเจ เจเจฐเจฆเฉ เจนเจพเจ:
tsp -I craft
-P regulate -b 10000000
-O ip -p 7 -e --local-port 6000 239.0.0.1:1234
เจเจฟเฉฑเจฅเฉ "-p 7 -e" เจฆเจพ เจฎเจคเจฒเจฌ เจนเฉ เจเจฟ เจคเฉเจนเจพเจจเฉเฉฐ 7 TS เจชเฉเจเฉเจเจพเจ เจจเฉเฉฐ 1 IP เจชเฉเจเฉเจ เจตเจฟเฉฑเจ เจชเฉเจ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ เจ เจคเฉ เจเจธเจจเฉเฉฐ เจธเจเจผเจค (-e), เจฏเจพเจจเฉ. เจเฉฑเจ IP เจชเฉเจเฉเจ เจฌเจฃเจพเจเจฃ เจคเฉเจ เจชเจนเจฟเจฒเจพเจ เจนเจฎเฉเจธเจผเจพ เจเจเจฐเฉ เจชเฉเจฐเฉเจธเฉเจธเจฐ เจคเฉเจ 7 TS เจชเฉเจเฉเจเจพเจ เจฆเฉ เจเจกเฉเจ เจเจฐเฉเฅค
เจตเจฟเจธเจผเจฒเฉเจธเจผเจ เจเจฎเฉเจฆ เจเฉเจคเฉ เจธเฉฐเจฆเฉเจธเจผเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจเจฐเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐเจฆเจพ เจนเฉ:
* 2020/01/03 14:55:44 - bitrate_monitor: 2020/01/03 14:55:44, TS bitrate: 9,970,016 bits/s
* 2020/01/03 14:55:45 - bitrate_monitor: 2020/01/03 14:55:45, TS bitrate: 10,022,656 bits/s
* 2020/01/03 14:55:46 - bitrate_monitor: 2020/01/03 14:55:46, TS bitrate: 9,980,544 bits/s
เจเจ เจนเฉเจฃ เจเฉเจ เจฌเฉเฉฐเจฆเจพเจ เจเฉเฉเฉเจ:
ip netns exec P iptables -I INPUT -d 239.0.0.1 -m statistic --mode random --probability 0.001 -j DROP
เจ เจคเฉ เจเจธ เจคเจฐเฉเจนเจพเจ เจฆเฉ เจธเฉฐเจฆเฉเจธเจผ เจฆเจฟเจเจพเจ เจฆเจฟเฉฐเจฆเฉ เจนเจจ:
* 2020/01/03 14:57:11 - continuity: packet index: 80,745, PID: 0x0000, missing 7 packets
* 2020/01/03 14:57:11 - continuity: packet index: 83,342, PID: 0x0000, missing 7 packets
เจเจฟเจธ เจฆเฉ เจเจฎเฉเจฆ เจนเฉเฅค เจ เจธเฉเจ เจชเฉเจเฉเจ เจจเฉเจเจธเจพเจจ (ip netns exec P iptables -F) เจจเฉเฉฐ เจ เจฏเฉเจ เจเจฐเจฆเฉ เจนเจพเจ เจ เจคเฉ เจเจจเจฐเฉเจเจฐ เจฌเจฟเฉฑเจเจฐเฉเจ เจจเฉเฉฐ 100 Mbit/s เจคเฉฑเจ เจตเจงเจพเจเจฃ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐเจฆเฉ เจนเจพเจเฅค เจตเจฟเจธเจผเจฒเฉเจธเจผเจ 75 เจฆเฉ เจฌเจเจพเจ CC เจเจฒเจคเฉเจเจ เจ เจคเฉ เจฒเจเจญเจ 100 Mbit/s เจฆเฉ เจฐเจฟเจชเฉเจฐเจ เจเจฐเจฆเจพ เจนเฉเฅค เจ เจธเฉเจ เจเจน เจชเจคเจพ เจฒเจเจพเจเจฃ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐ เจฐเจนเฉ เจนเจพเจ เจเจฟ เจเฉเจฃ เจฆเฉเจธเจผเฉ เจนเฉ - เจเจจเจฐเฉเจเจฐ เจเจพเจฒเฉ เจจเจนเฉเจ เจเจฐ เจฐเจฟเจนเจพ เจนเฉ เจเจพเจ เจธเจฎเฉฑเจธเจฟเจ เจเจธ เจตเจฟเฉฑเจ เจจเจนเฉเจ เจนเฉ, เจ เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ เจ เจธเฉเจ เจเฉฑเจ เจฌเจฃเจพเจเจฃเจพ เจธเจผเฉเจฐเฉ เจเจฐเจฆเฉ เจนเจพเจเฅค เจชเฉเจเฉเจเจพเจ เจฆเฉ เจธเจฅเจฟเจฐ เจธเฉฐเจเจฟเจ (700000 TS เจชเฉเจเฉเจ = 100000 IP เจชเฉเจเฉเจ):
# ifconfig veth0 | grep TX
TX packets 151825460 bytes 205725459268 (191.5 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
# tsp -I craft -c 700000 -P regulate -b 100000000 -P count -O ip -p 7 -e --local-port 6000 239.0.0.1:1234
* count: PID 0 (0x0000): 700,000 packets
# ifconfig veth0 | grep TX
TX packets 151925460 bytes 205861259268 (191.7 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
เจเจฟเจตเฉเจ เจเจฟ เจคเฉเจธเฉเจ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ, เจฌเจฟเจฒเจเฉเจฒ 100000 IP เจชเฉเจเฉเจ เจคเจฟเจเจฐ เจเฉเจคเฉ เจเจ เจธเจจ (151925460-151825460)เฅค เจเจธ เจฒเจ เจ เจธเฉเจ เจเจน เจชเจคเจพ เจฒเจเจพเจเจเจฆเฉ เจนเจพเจ เจเจฟ เจตเจฟเจธเจผเจฒเฉเจธเจผเจ เจจเจพเจฒ เจเฉ เจนเฉ เจฐเจฟเจนเจพ เจนเฉ, เจ เจเจฟเจนเจพ เจเจฐเจจ เจฒเจ เจ เจธเฉเจ veth1 'เจคเฉ RX เจเจพเจเจเจเจฐ เจจเจพเจฒ เจเจพเจเจ เจเจฐเจฆเฉ เจนเจพเจ, เจเจน veth0 'เจคเฉ TX เจเจพเจเจเจเจฐ เจฆเฉ เจฌเจฐเจพเจฌเจฐ เจนเฉ, เจซเจฟเจฐ เจ เจธเฉเจ เจฆเฉเจเจฆเฉ เจนเจพเจ เจเจฟ เจธเจพเจเจ เจชเฉฑเจงเจฐ 'เจคเฉ เจเฉ เจนเฉ เจฐเจฟเจนเจพ เจนเฉ:
# ip netns exec P cat /proc/net/udp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode ref pointer drops
133: 010000EF:04D2 00000000:0000 07 00000000:00000000 00:00000000 00000000 0 0 72338 2 00000000e0a441df 24355
เจเฉฑเจฅเฉ เจคเฉเจธเฉเจ เจฌเฉเฉฐเจฆเจพเจ เจฆเฉ เจธเฉฐเจเจฟเจ = 24355 เจฆเฉเจ เจธเจเจฆเฉ เจนเฉเฅค TS เจชเฉเจเฉเจ เจตเจฟเฉฑเจ เจเจน 170485 เจเจพเจ 24.36 เจฆเจพ 700000% เจนเฉ, เจเจธ เจฒเจ เจ เจธเฉเจ เจฆเฉเจเจฆเฉ เจนเจพเจ เจเจฟ เจเจนเฉ 25% เจเฉเฉฐเจฎ เจนเฉเจ เจฌเจฟเฉฑเจเจฐเฉเจ UDP เจธเจพเจเจ เจตเจฟเฉฑเจ เจคเฉเจชเจเฉ เจนเจจเฅค UDP เจธเจพเจเจ 'เจคเฉ เจคเฉเจชเจเฉ เจเจฎ เจคเฉเจฐ 'เจคเฉ เจฌเจซเจฐ เจฆเฉ เจเจพเจ เจเจพเจฐเจจ เจนเฉเฉฐเจฆเฉ เจนเจจ, เจเจ เจฆเฉเจเฉเจ เจเจฟ เจกเจฟเจซเจพเจฒเจ เจธเจพเจเจ เจฌเจซเจฐ เจฆเจพ เจเจเจพเจฐ เจ เจคเฉ เจตเฉฑเจง เจคเฉเจ เจตเฉฑเจง เจธเจพเจเจ เจฌเจซเจฐ เจเจเจพเจฐ เจเฉ เจนเจจ:
# sysctl net.core.rmem_default
net.core.rmem_default = 212992
# sysctl net.core.rmem_max
net.core.rmem_max = 212992
เจเจธ เจคเจฐเฉเจนเจพเจ, เจเฉเจเจฐ เจเจชเจฒเฉเจเฉเจธเจผเจจ เจธเจชเฉฑเจธเจผเจ เจคเฉเจฐ 'เจคเฉ เจฌเจซเจฐ เจธเจพเจเจเจผ เจฆเฉ เจฌเฉเจจเจคเฉ เจจเจนเฉเจ เจเจฐเจฆเฉ เจนเจจ, เจคเจพเจ เจธเจพเจเจ 208 KB เจฌเจซเจฐ เจจเจพเจฒ เจฌเจฃเจพเจ เจเจพเจเจฆเฉ เจนเจจ, เจชเจฐ เจเฉเจเจฐ เจเจน เจนเฉเจฐ เจฌเฉเจจเจคเฉ เจเจฐเจฆเฉ เจนเจจ, เจคเจพเจ เจตเฉ เจเจน เจชเฉเจฐเจพเจชเจค เจจเจนเฉเจ เจเจฐเจจเจเฉ เจเฉ เจเจนเจจเจพเจ เจจเฉ เจฌเฉเจจเจคเฉ เจเฉเจคเฉ เจนเฉเฅค เจเจฟเจเจเจเจฟ tsp เจตเจฟเฉฑเจ เจคเฉเจธเฉเจ IP เจเฉฐเจชเฉเฉฑเจ (--buffer-size) เจฒเจ เจฌเจซเจฐ เจธเจพเจเจเจผ เจธเฉเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ, เจ เจธเฉเจ เจกเจฟเจซเจพเจฒเจ เจธเจพเจเจ เจธเจพเจเจเจผ เจจเฉเฉฐ เจจเจนเฉเจ เจเฉเจนเจพเจเจเฉ, เจชเจฐ เจธเจฟเจฐเจซ เจตเฉฑเจง เจคเฉเจ เจตเฉฑเจง เจธเจพเจเจ เจฌเจซเจฐ เจธเจพเจเจเจผ เจธเฉเฉฑเจ เจเจฐเจพเจเจเฉ เจ เจคเฉ tsp เจเจฐเจเฉเจฎเฉเจเจเจธ เจฆเฉเจเจฐเจพ เจธเจชเฉฑเจธเจผเจ เจคเฉเจฐ 'เจคเฉ เจฌเจซเจฐ เจธเจพเจเจเจผ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจพเจเจเฉ:
sysctl net.core.rmem_max=8388608
ip netns exec P tsp --realtime -t -I ip 239.0.0.1:1234 -b 8388608 -P continuity -P bitrate_monitor -p 1 -t 1 -O drop
เจธเจพเจเจ เจฌเจซเจฐ เจฆเฉ เจเจธ เจเจฟเจเจจเจฟเฉฐเจ เจฆเฉ เจจเจพเจฒ, เจฐเจฟเจชเฉเจฐเจ เจเฉเจคเฉ เจเจ เจฌเจฟเฉฑเจเจฐเฉเจ เจนเฉเจฃ เจฒเจเจญเจ 100Mbps เจนเฉ, เจเฉเจ CC เจเจฒเจคเฉเจเจ เจจเจนเฉเจ เจนเจจเฅค
tsp เจเจชเจฒเฉเจเฉเจธเจผเจจ เจฆเฉเจเจฐเจพ เจเฉเจฆ CPU เจฆเฉ เจเจชเจค 'เจคเฉ เจ เจงเจพเจฐเจคเฅค เจเฉฑเจ เจเฉเจฐ i5-4260U CPU @ 1.40GHz เจฆเฉ เจธเจฌเฉฐเจง เจตเจฟเฉฑเจ, เจเฉฑเจ 10Mbit/s เจชเฉเจฐเจตเจพเจน เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจฒเจ, CPU เจฆเฉ 3-4% เจฆเฉ เจฒเฉเฉ เจนเฉเจตเฉเจเฉ, 100Mbit/s - 25%, 200Mbit/s - 46%เฅค เจเจฆเฉเจ % เจชเฉเจเฉเจ เจจเฉเจเจธเจพเจจ เจธเฉเฉฑเจ เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ, เจคเจพเจ CPU เจฒเฉเจก เจ เจฎเจฒเฉ เจคเฉเจฐ 'เจคเฉ เจจเจนเฉเจ เจตเจงเจฆเจพ (เจชเจฐ เจเจ เจธเจเจฆเจพ เจนเฉ)เฅค
เจตเจงเฉเจฐเฉ เจเจคเจชเจพเจฆเจ เจนเจพเจฐเจกเจตเฉเจ เจฐ 'เจคเฉ, เจฌเจฟเจจเจพเจ เจเจฟเจธเฉ เจธเจฎเฉฑเจธเจฟเจ เจฆเฉ 1Gb/s เจคเฉเจ เจตเฉฑเจง เจฆเฉเจเจ เจธเจเฉเจฐเฉเจฎเจพเจ เจจเฉเฉฐ เจฌเจฃเจพเจเจฃเจพ เจ เจคเฉ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจเจพ เจธเฉฐเจญเจต เจธเฉเฅค
เจ เจธเจฒเฉ เจจเฉเฉฑเจเจตเจฐเจ เจเจพเจฐเจก 'เจคเฉ เจเฉเจธเจเจฟเฉฐเจ
เจตเฉเจฅ เจเฉเฉเจพ 'เจคเฉ เจเฉเจธเจ เจเจฐเจจ เจคเฉเจ เจฌเจพเจ เจฆ, เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฑเจ เจนเฉเจธเจ เจฆเฉ เจฆเฉ เจนเฉเจธเจ เจเจพเจ เจฆเฉ เจชเฉเจฐเจเจพเจ เจฒเฉเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ, เจชเฉเจฐเจเจพเจ เจจเฉเฉฐ เจเฉฑเจ เจฆเฉเจเฉ เจจเจพเจฒ เจเฉเฉเจจเจพ, เจเฉฑเจ 'เจคเฉ เจเจจเจฐเฉเจเจฐ เจเจฒเจพเจเจฃเจพ, เจ เจคเฉ เจฆเฉเจเฉ 'เจคเฉ เจตเจฟเจธเจผเจฒเฉเจธเจผเจ. เจเฉฑเจฅเฉ เจเฉเจ เจนเฉเจฐเจพเจจเฉ เจจเจนเฉเจ เจธเฉ, เจชเจฐ เจ เจธเจฒ เจตเจฟเฉฑเจ เจเจน เจธเจญ เจนเจพเจฐเจกเจตเฉเจ เจฐ 'เจคเฉ เจจเจฟเจฐเจญเจฐ เจเจฐเจฆเจพ เจนเฉ, เจเจน เจเจฟเฉฐเจจเจพ เจเจฎเจเจผเฉเจฐ เจนเฉ, เจเจจเจพ เจนเฉ เจฆเจฟเจฒเจเจธเจช เจนเฉเจตเฉเจเจพ.
เจฎเจพเจจเฉเจเจฐเจฟเฉฐเจ เจธเจฟเจธเจเจฎ (เจเจผเฉเจฌเจฟเจเจธ) เจฆเฉเจเจฐเจพ เจชเฉเจฐเจพเจชเจค เจเฉเจคเฉ เจกเฉเจเจพ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเจพ
tsp เจเฉเจฒ เจเฉเจ เจตเฉ เจฎเจธเจผเฉเจจ-เจชเฉเฉเจนเจจ เจฏเฉเจ API เจจเจนเฉเจ เจนเฉ เจเจฟเจตเฉเจ เจเจฟ SNMP เจเจพเจ เจธเจฎเจพเจจเฅค CC เจธเฉเจจเฉเจนเจฟเจเจ เจจเฉเฉฐ เจเฉฑเจ เจธเจฎเฉเจ เจตเจฟเฉฑเจ เจเฉฑเจเฉ-เจเฉฑเจ 1 เจธเจเจฟเฉฐเจ เจเจเฉฑเจ เฉ เจเฉเจคเฉ เจเจพเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ (เจชเฉเจเฉเจ เจฆเฉ เจจเฉเจเจธเจพเจจ เจฆเฉ เจเฉฑเจ เจชเฉเจฐเจคเฉเจธเจผเจคเจคเจพ เจฆเฉ เจจเจพเจฒ, เจฌเจฟเฉฑเจเจฐเฉเจ เจฆเฉ เจเจงเจพเจฐ 'เจคเฉ, เจธเฉเจเจเฉเฉ/เจนเจเจผเจพเจฐเจพเจ/เจนเจเจผเจพเจฐเจพเจ เจชเฉเจฐเจคเฉ เจธเจเจฟเฉฐเจ เจนเฉ เจธเจเจฆเฉ เจนเจจ)เฅค
เจเจธ เจคเจฐเฉเจนเจพเจ, เจเจพเจฃเจเจพเจฐเฉ เจจเฉเฉฐ เจฌเจเจพเจเจฃ เจ เจคเฉ CC เจเจฒเจคเฉเจเจ เจ เจคเฉ เจฌเจฟเฉฑเจเจฐเฉเจ เจฒเจ เจเฉเจฐเจพเจซ เจเจฟเฉฑเจเจฃ เจ เจคเฉ เจนเฉเจฐ เจฆเฉเจฐเจเจเจจเจพเจตเจพเจ เจเจฐเจจ เจฒเจ, เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจตเจฟเจเจฒเจช เจนเฉ เจธเจเจฆเฉ เจนเจจ:
- tsp เจเจเจเจชเฉเฉฑเจ เจจเฉเฉฐ เจชเจพเจฐเจธ เจ เจคเฉ เจเจเจฐเฉเจเฉเจ (CC เจฆเฉเจเจฐเจพ) เจเจฐเฉ, i.e. เจเจธ เจจเฉเฉฐ เจฒเฉเฉเฉเจเจฆเฉ เจฐเฉเจช เจตเจฟเฉฑเจ เจฌเจฆเจฒเฉ.
- tsp เจเจชเจฃเฉ เจเจช เจ เจคเฉ/เจเจพเจ bitrate_monitor เจ เจคเฉ เจจเจฟเจฐเฉฐเจคเจฐเจคเจพ เจชเฉเจฐเฉเจธเฉเจธเจฐ เจชเจฒเฉฑเจเจเจจ เจธเจผเจพเจฎเจฒ เจเจฐเฉ เจคเจพเจ เจเจฟ เจจเจคเฉเจเจพ เจจเจฟเจเจฐเจพเจจเฉ เจชเฉเจฐเจฃเจพเจฒเฉ เจฒเจ เจขเฉเจเจตเฉเจ เจฎเจธเจผเฉเจจ-เจชเฉเฉเจนเจจ เจฏเฉเจ เจฐเฉเจช เจตเจฟเฉฑเจ เจเจเจเจชเฉเฉฑเจ เจนเฉเจตเฉเฅค
- เจเจชเจฃเฉ เจ เจฐเจเจผเฉ tsduck เจฒเจพเจเจฌเฉเจฐเฉเจฐเฉ เจฆเฉ เจธเจฟเจเจฐ 'เจคเฉ เจฒเจฟเจเฉเฅค
เจธเจชเฉฑเจธเจผเจ เจคเฉเจฐ 'เจคเฉ, เจฒเฉเจฌเจฐ เจฆเฉ เจฒเจพเจเจค เจฆเฉ เจฎเจพเจฎเจฒเฉ เจตเจฟเฉฑเจ, เจตเจฟเจเจฒเจช 1 เจธเจญ เจคเฉเจ เจธเจฐเจฒ เจนเฉ, เจเจพเจธ เจคเฉเจฐ 'เจคเฉ เจเจน เจงเจฟเจเจจ เจตเจฟเฉฑเจ เจฐเฉฑเจเจฆเฉ เจนเฉเจ เจเจฟ tsduck เจเจชเจฃเฉ เจเจช เจจเฉเฉฐ เจเฉฑเจ เจเฉฑเจ-เจชเฉฑเจงเจฐ (เจเจงเฉเจจเจฟเจ เจฎเจฟเจเจฐเจพเจ เจฆเฉเจเจฐเจพ) เจญเจพเจธเจผเจพ (C++) เจตเจฟเฉฑเจ เจฒเจฟเจเจฟเจ เจเจฟเจ เจนเฉเฅค
เจฌเฉเจธเจผ เจตเจฟเฉฑเจ เจเฉฑเจ เจชเจพเจฐเจธเจฐ + เจเจเจฐเฉเจเฉเจเจฐ เจฆเฉ เจเฉฑเจ เจธเจงเจพเจฐเจจ เจชเฉเจฐเฉเจเฉเจเจพเจเจช เจจเฉ เจฆเจฟเจเจพเจเจ เจเจฟ 10 Mbit/s เจฆเฉ เจเฉฑเจ เจชเฉเจฐเจตเจพเจน เจ เจคเฉ 50% เจชเฉเจเฉเจ เจจเฉเจเจธเจพเจจ (เจธเจญ เจคเฉเจ เจฎเจพเฉเฉ เจธเจฅเจฟเจคเฉ) 'เจคเฉ, bash เจชเฉเจฐเจเจฟเจฐเจฟเจ เจจเฉ tsp เจชเฉเจฐเจเจฟเจฐเจฟเจ เจจเจพเจฒเฉเจ 3-4 เจเฉเจฃเจพ เจเจผเจฟเจเจฆเจพ CPU เจฆเฉ เจเจชเจค เจเฉเจคเฉเฅค เจเจน เจฆเฉเจฐเจฟเจธเจผ เจ เจธเจตเฉเจเจพเจฐเจจเจฏเฉเจ เจนเฉเฅค เจ เจธเจฒ เจตเจฟเฉฑเจ เจเจธ เจชเฉเจฐเฉเจเฉเจเจพเจเจช เจฆเจพ เจเฉฑเจ เจเฉเจเฉเจพ เจนเฉเจ เจพเจ เจนเฉ
เจฌเจพเจธเจผเจพ 'เจคเฉ เจจเฉเจกเจฒเจเจผ
#!/usr/bin/env bash
missingPackets=0
ccErrorSeconds=0
regexMissPackets='^* (.+) - continuity:.*missing ([0-9]+) packets$'
missingPacketsTime=""
ip netns exec P tsp --realtime -t -I ip -b 8388608 "239.0.0.1:1234" -O drop -P bitrate_monitor -p 1 -t 1 -P continuity 2>&1 |
while read i
do
#line example:* 2019/12/28 23:41:14 - continuity: packet index: 6,078, PID: 0x0100, missing 5 packets
#line example 2: * 2019/12/28 23:55:11 - bitrate_monitor: 2019/12/28 23:55:11, TS bitrate: 4,272,864 bits/s
if [[ "$i" == *continuity:* ]]
then
if [[ "$i" =~ $regexMissPackets ]]
then
missingPacketsTimeNew="${BASH_REMATCH[1]}" #timestamp (seconds)
if [[ "$missingPacketsTime" != "$missingPacketsTimeNew" ]] #new second with CC error
then
((ccErrorSeconds += 1))
fi
missingPacketsTime=$missingPacketsTimeNew
packets=${BASH_REMATCH[2]} #TS missing packets
((missingPackets += packets))
fi
elif [[ "$i" == *bitrate_monitor:* ]]
then
: #...
fi
done
เจเจธ เจคเฉฑเจฅ เจคเฉเจ เจเจฒเจพเจตเจพ เจเจฟ เจเจน เจ
เจธเจตเฉเจเจพเจฐเจจเจฏเฉเจ เจคเฉเจฐ 'เจคเฉ เจนเฉเจฒเฉ-เจนเฉเจฒเฉ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉ, bash เจตเจฟเฉฑเจ เจเฉเจ เจเจฎ เจฅเฉเจฐเฉเฉฑเจก เจจเจนเฉเจ เจนเจจ, bash เจจเฉเจเจฐเฉเจเจ เจธเฉเจคเฉฐเจคเจฐ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจนเจจ เจ
เจคเฉ เจฎเฉเจจเฉเฉฐ เจธเจพเจเจก เจเจซเฉเจเจ (เจเจฆเฉเจ เจฌเจฟเฉฑเจเจฐเฉเจ เจธเฉเจจเฉเจนเฉ เจชเฉเจฐเจพเจชเจค เจนเฉเฉฐเจฆเฉ เจนเจจ เจเฉ เจนเจฐ เจธเจเจฟเฉฐเจ เจตเจฟเฉฑเจ เจเจเจเจฆเฉ เจนเจจ) 'เจคเฉ เจเฉฑเจ เจธเจเจฟเฉฐเจ เจตเจฟเฉฑเจ เจเฉฑเจ เจตเจพเจฐ เจเฉเฉฐเจฎ เจชเฉเจเฉเจ เจฎเฉเฉฑเจฒ เจฒเจฟเจเจฃเจพ เจชเฉเจเจฆเจพ เจธเฉเฅค เจจเจคเฉเจเฉ เจตเจเฉเจ, เจฌเจพเจธเจผ เจจเฉเฉฐ เจเจเฉฑเจฒเจพ เจเฉฑเจก เจฆเจฟเฉฑเจคเจพ เจเจฟเจ เจ
เจคเฉ เจเฉเจฒเฉฐเจ เจตเจฟเฉฑเจ เจเฉฑเจ เจฐเฉเจชเจฐ (เจชเจพเจฐเจธเจฐ + เจเจเจฐเฉเจเฉเจเจฐ) เจฒเจฟเจเจฃ เจฆเจพ เจซเฉเจธเจฒเจพ เจเฉเจคเจพ เจเจฟเจเฅค เจเฉเจฒเจพเจเจ เจตเจฟเฉฑเจ เจธเจฎเจพเจจ เจเฉเจก เจฆเฉ CPU เจเจชเจค tsp เจชเฉเจฐเจเจฟเจฐเจฟเจ เจคเฉเจ 4-5 เจเฉเจฃเจพ เจเฉฑเจ เจนเฉเฅค เจฌเฉเจธเจผ เจจเฉเฉฐ เจเฉเจฒเฉฐเจ เจจเจพเจฒ เจฌเจฆเจฒ เจเฉ เจฐเฉเจชเจฐ เจฆเจพ เจชเฉเจฐเจตเฉเจ เจฒเจเจญเจ 16 เจเฉเจฃเจพ เจธเฉ เจ
เจคเฉ เจเฉเฉฑเจฒ เจฎเจฟเจฒเจพ เจเฉ เจจเจคเฉเจเจพ เจธเจตเฉเจเจพเจฐเจฏเฉเจ เจนเฉ (เจธเจญ เจคเฉเจ เจฎเจพเฉเฉ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ CPU เจเจตเจฐเจนเฉเฉฑเจก 25%)เฅค เจเฉเจฒเฉฐเจ เจธเจฐเฉเจค เจซเจพเจเจฒ เจธเจฅเจฟเจค เจนเฉ
เจฐเฉเจชเจฐ เจฒเจพเจเจ เจเฉเจคเจพ เจเจพ เจฐเจฟเจนเจพ เจนเฉ
เจฐเฉเจชเจฐ เจจเฉเฉฐ เจฒเจพเจเจ เจเจฐเจจ เจฒเจ, systemd เจฒเจ เจเฉฑเจ เจธเจงเจพเจฐเจจ เจธเฉเจตเจพ เจเฉเจเจชเจฒเฉเจ เจฌเจฃเจพเจเจ เจเจฟเจ เจธเฉ (
เจเฉฑเจ เจธเฉเจตเจพ เจเจฆเจพเจนเจฐเจจ เจฌเจฃเจพเจเจฃ เจฒเจ เจคเฉเจนเจพเจจเฉเฉฐ systemctl enable เจเจฎเจพเจเจก เจเจฒเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ [เจเจฎเฉเจฒ เจธเฉเจฐเฉฑเจเจฟเจ เจค]:1234, เจซเจฟเจฐ systemctl เจธเจเจพเจฐเจ เจจเจพเจฒ เจเจฒเจพเจ [เจเจฎเฉเจฒ เจธเฉเจฐเฉฑเจเจฟเจ เจค]: 1234
เจเจผเฉเจฌเจฟเจเจธ เจคเฉเจ เจเฉเจ
เจคเจพเจ เจเฉ เจเจผเฉเจฌเจฟเจเจธ เจเฉฑเจฒ เจฐเจนเฉเจเจ เจธเฉเจตเจพเจตเจพเจ เจฆเฉ เจเฉเจ เจเจฐ เจธเจเฉ,
เจเจผเฉเจฌเจฟเจเจธ เจเฉเจฎเจชเจฒเฉเจ
เจเฉฑเจ เจเฉเจเฉ เจเฉเจเจฒเจฟเจธเจ (เจเฉ เจนเฉเจตเฉเจเจพ เจเฉเจเจฐ เจเฉเจ เจเจธเจจเฉเฉฐ เจตเจฐเจคเจฃ เจฆเจพ เจซเฉเจธเจฒเจพ เจเจฐเจฆเจพ เจนเฉ)
- เจเจน เจธเฉเจจเจฟเจธเจผเจเจฟเจค เจเจฐเฉ เจเจฟ tsp "เจเจฆเจฐเจธเจผ" เจธเจฅเจฟเจคเฉเจเจ (เจเจจเจฐเฉเจเจฐ เจ เจคเฉ เจตเจฟเจธเจผเจฒเฉเจธเจผเจ เจธเจฟเฉฑเจงเฉ เจเฉเฉเฉ เจนเฉเจ เจนเจจ) เจฆเฉ เจ เจงเฉเจจ เจชเฉเจเฉเจเจพเจ เจจเฉเฉฐ เจจเจนเฉเจ เจเฉฑเจกเจฆเจพ, เจเฉเจเจฐ เจฌเฉเฉฐเจฆเจพเจ เจนเจจ, เจคเจพเจ เจชเฉเจเจเฉฐเจ 2 เจเจพเจ เจเจธ เจฎเจพเจฎเจฒเฉ 'เจคเฉ เจฒเฉเจ เจฆเจพ เจชเจพเจ เจตเฉเจเฉเฅค
- เจตเฉฑเจง เจคเฉเจ เจตเฉฑเจง เจธเจพเจเจ เจฌเจซเจฐ เจฆเฉ เจเจฟเจเจจเจฟเฉฐเจ เจเจฐเฉ (net.core.rmem_max=8388608)เฅค
- เจเฉฐเจชเจพเจเจฒ tsduck-stat.go (go build tsduck-stat.go)เฅค
- เจธเจฐเจตเจฟเจธ เจเฉเจเจชเจฒเฉเจ เจจเฉเฉฐ /lib/systemd/system เจตเจฟเฉฑเจ เจฐเฉฑเจเฉเฅค
- systemctl เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจธเฉเจตเจพเจตเจพเจ เจธเจผเฉเจฐเฉ เจเจฐเฉ, เจเจพเจเจ เจเจฐเฉ เจเจฟ เจเจพเจเจเจเจฐ เจฆเจฟเจเจพเจ เจฆเฉเจฃ เจฒเฉฑเจเฉ เจนเจจ (grep "" /dev/shm/tsduck-stat/*)เฅค เจฎเจฒเจเฉเจเจพเจธเจ เจธเจเฉเจฐเฉเจฎ เจฆเฉ เจธเฉฐเจเจฟเจ เจฆเฉเจเจฐเจพ เจธเฉเจตเจพเจตเจพเจ เจฆเฉ เจธเฉฐเจเจฟเจเฅค เจเฉฑเจฅเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจฎเจฒเจเฉเจเจพเจธเจ เจธเจฎเฉเจน เจฒเจ เจเฉฑเจ เจฐเฉเจ เจฌเจฃเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ เจธเจเจฆเฉ เจนเฉ, เจธเจผเจพเจเจฆ rp_filter เจจเฉเฉฐ เจ เจฏเฉเจ เจเจฐเฉ เจเจพเจ เจธเจฐเฉเจค ip เจฒเจ เจเฉฑเจ เจฐเฉเจ เจฌเจฃเจพเจเฅค
- Discovery.sh เจเจฒเจพเจ, เจฏเจเฉเจจเฉ เจฌเจฃเจพเจ เจเจฟ เจเจน json เจคเจฟเจเจฐ เจเจฐเจฆเจพ เจนเฉเฅค
- เจเจผเฉเจฌเจฟเจเจธ เจเจเฉฐเจ เจธเฉฐเจฐเจเจจเจพ เจฐเฉฑเจเฉ, เจเจผเฉเจฌเจฟเจเจธ เจเจเฉฐเจ เจจเฉเฉฐ เจฎเฉเฉ เจเจพเจฒเฉ เจเจฐเฉเฅค
- เจเฉเจเจชเจฒเฉเจ เจจเฉเฉฐ เจเจผเฉเจฌเจฟเจเจธ 'เจคเฉ เจ เจชเจฒเฉเจก เจเจฐเฉ, เจเจธ เจจเฉเฉฐ เจนเฉเจธเจ 'เจคเฉ เจฒเจพเจเฉ เจเจฐเฉ เจเจฟเจธ 'เจคเฉ เจจเจฟเจเจฐเจพเจจเฉ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ เจ เจคเฉ เจเจผเฉเจฌเจฟเจเจธ-เจเจเฉฐเจ เจธเจฅเจพเจชเจค เจเฉเจคเจพ เจเจพเจเจฆเจพ เจนเฉ, เจฒเจเจญเจ 5 เจฎเจฟเฉฐเจ เจเจกเฉเจ เจเจฐเฉ, เจฆเฉเจเฉ เจเจฟ เจจเจตเฉเจ เจกเฉเจเจพ เจคเฉฑเจค, เจเฉเจฐเจพเจซ เจ เจคเฉ เจเจฐเจฟเจเจฐ เจฆเจฟเจเจพเจ เจฆเจฟเฉฑเจคเฉ เจนเจจเฅค
เจเจธ เจฆเจพ เจจเจคเฉเจเจพ
เจชเฉเจเฉเจ เจฆเฉ เจจเฉเจเจธเจพเจจ เจฆเฉ เจชเจเจพเจฃ เจเจฐเจจ เจฆเฉ เจเฉฐเจฎ เจฒเจ, เจเจน เจฒเจเจญเจ เจเจพเจซเจผเฉ เจนเฉ, เจเฉฑเจเฉ เจเฉฑเจ เจเจน เจฌเจฟเจจเจพเจ เจจเจฟเจเจฐเจพเจจเฉ เจคเฉเจ เจฌเจฟเจนเจคเจฐ เจนเฉ.
เจตเจพเจธเจคเจต เจตเจฟเฉฑเจ, CC "เจจเฉเจเจธเจพเจจ" เจเจฆเฉเจ เจนเฉ เจธเจเจฆเจพ เจนเฉ เจเจฆเฉเจ เจตเจฟเจกเฉเจ เจฆเฉ เจเฉเจเฉเจฟเจเจ เจจเฉเฉฐ เจตเฉฐเจกเจฟเจ เจเจพเจเจฆเจพ เจนเฉ (เจเจฟเฉฑเจฅเฉเจ เจคเฉฑเจ เจฎเฉเจจเฉเฉฐ เจชเจคเจพ เจนเฉ, เจฐเฉเจธเฉ เจซเฉเจกเจฐเฉเจธเจผเจจ เจตเจฟเฉฑเจ เจธเจฅเจพเจจเจ เจเฉเจฒเฉเจตเจฟเจเจผเจจ เจเฉเจเจฆเจฐเจพเจ เจตเจฟเฉฑเจ เจเจธ เจคเจฐเฉเจนเจพเจ เจธเฉฐเจฎเจฟเจฒเจจ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเจจ, เจญเจพเจต CC เจเจพเจเจเจเจฐ เจฆเฉ เจฎเฉเฉ เจเจฃเจจเจพ เจเฉเจคเฉ เจฌเจฟเจจเจพเจ), เจเจธ เจจเฉเฉฐ เจฏเจพเจฆ เจฐเฉฑเจเจฃเจพ เจเจพเจนเฉเจฆเจพ เจนเฉเฅค เจฎเจฒเจเฉเจ เจค เจฆเฉ เจนเฉฑเจฒเจพเจ เจตเจฟเฉฑเจ, เจเจธ เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจ เฉฐเจธเจผเจ เจคเฉเจฐ 'เจคเฉ SCTE-35 เจเฉเจเจธ (เจเฉ เจเจน เจธเจเฉเจฐเฉเจฎ เจเจจเจฐเฉเจเจฐ เจฆเฉเจเจฐเจพ เจเฉเฉเจฟเจ เจเจฟเจ เจนเฉ) เจฆเจพ เจชเจคเจพ เจฒเจเจพ เจเฉ เจฐเฉเจเจฟเจ เจเจพเจเจฆเจพ เจนเฉเฅค
เจเจตเจพเจเจพเจ เจฆเฉ เจเฉเจฃเจตเฉฑเจคเจพ เจฆเฉ เจจเจฟเจเจฐเจพเจจเฉ เจฆเฉ เจฆเฉเจฐเจฟเจธเจผเจเฉเจเฉเจฃ เจคเฉเจ, เจเจฟเจเจฐ เจจเจฟเจเจฐเจพเจจเฉ (เจเจเจเจเฉ) เจเจพเจซเจผเฉ เจจเจนเฉเจ เจนเฉ, เจเจฟเจเจเจเจฟ เจเฉเจตเฉ เจธเจพเจเจผเฉ-เจธเจพเจฎเจพเจจ (เจญเจพเจตเฉเจ เจฎเฉเจกเจฟเจเจฒเฉเจเจฐ เจเจพเจ เจ เฉฐเจคเจฎ เจเจชเจเจฐเจฃ) เจฒเจ เจเจธ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจฒเจ เจฒเฉเฉเจพเจ เจนเฉเฉฐเจฆเฉเจเจ เจนเจจ เจ เจคเฉ เจเฉเจคเจฌเจซเจฐ เจจเฉเฉฐ เจ เจฃเจฎเจฟเฉฑเจฅเฉ เจธเจฎเฉเจ เจฒเจ เจตเจงเจพเจเจฃเจพ เจนเจฎเฉเจธเจผเจพ เจธเฉฐเจญเจต เจจเจนเฉเจ เจนเฉเฉฐเจฆเจพเฅค เจ เจคเฉ เจเจฟเจเจฐ เจซเจฒเฉเจ เจนเฉ เจธเจเจฆเจพ เจนเฉ เจเจฆเฉเจ เจเฉเจฐเจพเจเจเจผเจฟเจ เจตเฉฑเจกเฉ เจฌเจซเจฐเจพเจ เจตเจพเจฒเฉ เจธเจพเจเจผเฉ-เจธเจพเจฎเจพเจจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเจพ เจนเฉ เจ เจคเฉ QoS เจจเฉเฉฐ เจธเฉฐเจฐเจเจฟเจค เจจเจนเฉเจ เจเฉเจคเจพ เจเจฟเจ เจนเฉ เจเจพเจ เจ เจเจฟเจนเฉ เจฐเฉเจ เจฒเจเจพเจเจฎ เจเฉเจฐเฉเจซเจฟเจ เจจเฉเฉฐ เจธเฉฐเจเจพเจฐเจฟเจค เจเจฐเจจ เจฒเจ เจเฉฐเจเฉ เจคเจฐเฉเจนเจพเจ เจเฉเจเจซเจฟเจเจฐ เจจเจนเฉเจ เจเฉเจคเจพ เจเจฟเจ เจนเฉเฅค
เจธเจฐเฉเจค: www.habr.com