เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ”เบžเบฒเบชเบฒเบเบฃเบฑเปˆเบ‡เปเบญเบชเบ›เบฒเป‚เบเบ™

OnWorks favicon

flowgrind - เบญเบญเบ™เบฅเบฒเบเปƒเบ™เบ„เบฅเบฒเบง

เป€เบ›เบตเบ”เปƒเบŠเป‰ flowgrind เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเบœเปˆเบฒเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ flowgrind เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป„เบ”เป‰เบขเบนเปˆเปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเป‚เบ”เบเปƒเบŠเป‰เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบญเบญเบ™เป„เบฅเบ™เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เป‚เบ„เบ‡เบเบฒเบ™:

NAME


flowgrind - เป€เบ„เบทเปˆเบญเบ‡เบเปเบฒเป€เบ™เบตเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ TCP เบ‚เบฑเป‰เบ™เบชเบนเบ‡เบชเปเบฒเบฅเบฑเบš Linux, FreeBSD, เปเบฅเบฐ Mac OS X

เบชเบฐเบซเบผเบธเบšเบชเบฑเบ‡เบฅเบงเบก


flowgrind [เบ—เบฒเบ‡เป€เบฅเบทเบญเบ] ...

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”


flowgrind เป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบเปเบฒเป€เบ™เบตเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ TCP เบ‚เบฑเป‰เบ™เบชเบนเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบฅเบฐ benchmarking Linux,
FreeBSD, เปเบฅเบฐ Mac OS X TCP/IP stacks. เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบกเบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบญเบทเปˆเบ™เป†เบกเบฑเบ™
เบกเบตเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบ—เบตเปˆเปเบˆเบเบขเบฒเบ, เบšเปˆเบญเบ™เบ—เบตเปˆเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบœเปˆเบฒเบ™เปเบฅเบฐเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบญเบทเปˆเบ™เป†
เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ server flowgrind arbitrary, flowgrind daemon flowgrindd(1).

เบกเบฒเบ”เบ•เบฐเบเบฒเบ™ Flowgrind เบ™เบญเบเบˆเบฒเบ goodput (throughput), เป„เบฅเบเบฐเป€เบงเบฅเบฒ interarrival layer เบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™
(IAT) เปเบฅเบฐเป€เบงเบฅเบฒเป„เบ›-เบเบฑเบš (RTT), blockcount เปเบฅเบฐเบ—เบธเบฅเบฐเบเปเบฒเป€เบ„เบทเบญเบ‚เปˆเบฒเบ/s. เบšเปเปˆโ€‹เบ„เบทโ€‹เบเบฑเบ™โ€‹เบเบฑเบšโ€‹เบ—เบตเปˆโ€‹เบชเบธเบ”
เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป€เบงเบ—เบต, flowgrind เป€เบเบฑเบšเบเปเบฒเปเบฅเบฐเบฅเบฒเบเบ‡เบฒเบ™ TCP metrics เบเบฑเบšเบ„เบทเบ™เบกเบฒเป‚เบ”เบ
เบ•เบปเบงเป€เบฅเบทเบญเบเป€เบ•เบปเป‰เบฒเบฎเบฑเบš TCP_INFO, เป€เบŠเบดเปˆเบ‡เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเปเบกเปˆเบ™เบขเบนเปˆเบžเบฒเบเปƒเบ™เบ‚เบญเบ‡ TCP/IP stack. เปƒเบ™ Linux เปเบฅเบฐ
FreeBSD เบ™เบตเป‰เบฅเบงเบกเป€เบ–เบดเบ‡เบเบฒเบ™เบ›เบฐเป€เบกเบตเบ™เปเบเปˆเบ™เบ‚เบญเบ‡ Kernel เบ‚เบญเบ‡ RTT end-to-end, เบ‚เบฐเบซเบ™เบฒเบ”.
เบ‚เบญเบ‡ TCP congestion window (CWND) เปเบฅเบฐ threshold เป€เบฅเบตเปˆเบกเบŠเป‰เบฒ (SSTHRESH).

Flowgrind เบกเบตเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบ—เบตเปˆเปเบˆเบเบขเบฒเบ. เบกเบฑเบ™เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบชเบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš: flowgrind
เป€เบ”เบกเบญเบ™, flowgrindd(1), เปเบฅเบฐ flowgrind เบ•เบปเบงเบ„เบงเบšเบ„เบธเบก. เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเบ„เบงเบšเบ„เบธเบก, เป„เบซเบผเบฅเบฐเบซเบงเปˆเบฒเบ‡
เบชเบญเบ‡เบฅเบฐเบšเบปเบšเบ—เบตเปˆเปเบฅเปˆเบ™ daemon flowgrind เบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป„เบ”เป‰ (เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบžเบฒเบเบชเปˆเบงเบ™เบ—เบตเบชเบฒเบก). เป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด
เป„เบฅ เบเบฐ เป€เบง เบฅเบฒ เปƒเบ™ เบฅเบฐ เบซเบงเปˆเบฒเบ‡ เบเบฒเบ™ เบ—เบปเบ” เบชเบญเบš เบœเบนเป‰ เบ„เบงเบš เบ„เบธเบก เป€เบเบฑเบš เบเปเบฒ เปเบฅเบฐ เบชเบฐ เปเบ”เบ‡ เบœเบปเบ™ เป„เบ”เป‰ เบฎเบฑเบš เบเบฒเบ™ เบงเบฑเบ” เปเบ—เบ เบˆเบฒเบ
daemon เป„เบ”เป‰. เบกเบฑเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เบเบฒเบ™โ€‹เบซเบผเบฒเบโ€‹เบเบฐโ€‹เปเบชโ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบซเบผเบทโ€‹เบ—เบตเปˆโ€‹เปเบ•เบโ€‹เบ•เปˆเบฒเบ‡โ€‹เบเบฑเบ™โ€‹เปเบฅเบฐโ€‹
เบˆเบฑเบ”เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบ•เปˆเบฅเบฐเบญเบฑเบ™. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš เปเบฅเบฐเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ
เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™.

เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡เปเบกเปˆเบ™เบเบฒเบ™เป‚เบญเบ™เป€เบ›เบฑเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบ, เบญเบฑเบ”เบ•เบฒเบˆเปเบฒเบเบฑเบ”, เบซเบผเบทเบ„เบงเบฒเบกเบŠเบฑเบšเบŠเป‰เบญเบ™
เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เบชเบญเบšโ€‹เบเบฒเบ™โ€‹เบฎเป‰เบญเบ‡โ€‹เบ‚เป / เบเบฒเบ™โ€‹เบ•เบญเบšโ€‹เบชเบฐโ€‹เบซเบ™เบญเบ‡โ€‹. Flowgrind เปƒเบŠเป‰ libpcap เป€เบžเบทเปˆเบญเบ›เบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”
เบเบฒเบ™โ€‹เบงเบดโ€‹เป€เบ„เบฒเบฐโ€‹เบ„เบธเบ™โ€‹เบ™เบฐโ€‹เบžเบฒเบšโ€‹.

OPTIONS


เบžเบงเบเป€เบ‚เบปเบฒเป€เบ›เบฑเบ™เบชเบญเบ‡เบเบธเปˆเบกเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™: เบ•เบปเบงเป€เบฅเบทเบญเบเบ„เบงเบšเบ„เบธเบกเปเบฅเบฐเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบเบฒเบ™เป„เบซเบผ. เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš
เบŠเบทเปˆเบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™, เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบ—เบปเปˆเบงเป‚เบฅเบเปเบฅเบฐเบญเบฒเบ”เบˆเบฐเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบ—เบฑเบ‡เบซเบกเบปเบ”, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ
เบ•เบปเบงเป€เบฅเบทเบญเบเบชเบฐเป€เบžเบฒเบฐเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเปƒเบŠเป‰เบเบฑเบšเบŠเบธเบ”เบเปˆเบญเบเบ‚เบญเบ‡เบเบฐเปเบชเบ—เบตเปˆเป€เบฅเบทเบญเบเป‚เบ”เบเปƒเบŠเป‰ -F เบ—เบฒเบ‡เป€เบฅเบทเบญเบ.

เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบšเบฑเบ‡เบ„เบฑเบšเบ•เปเปˆเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบเบฒเบงเปเบกเปˆเบ™เบšเบฑเบ‡เบ„เบฑเบšเบชเปเบฒเบฅเบฑเบšเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเบฑเป‰เบ™เป€เบเบตเบ™เป„เบ›.

เป‚เบ”เบโ€‹เบ—เบปเปˆเบงโ€‹เป„เบ› เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™
-h, - เบŠเปˆเบงเบ[=เปเบกเปˆเบ™โ€‹เบซเบเบฑเบ‡]
เบชเบฐเปเบ”เบ‡เบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเปเบฅเบฐเบญเบญเบ. เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเบดเปˆเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™ 'เป€เบ•เบปเป‰เบฒเบฎเบฑเบš' เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเปƒเบ™เป€เบ•เบปเป‰เบฒเบฎเบฑเบš
เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบซเบผเบท 'เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™' เบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบŠเปˆเบงเบ

-v, - เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡
เบžเบดเบกเบ‚เปเป‰เบกเบนเบ™เบชเบฐเบšเบฑเบšเปเบฅเบฐเบญเบญเบ

เบเบฒเบ™เบ„เบงเบšเบ„เบธเบก เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™
-c, --show-colon=TYPE[,TYPE] ...
เบชเบฐเปเบ”เบ‡เบ–เบฑเบ™เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เป„เบฅเบเบฐเบเบฒเบ‡ TYPE เปƒเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš. เบ„เปˆเบฒเบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เบชเปเบฒเบฅเบฑเบš
เบ›เบฐเป€เบžเบ”เปเบกเปˆเบ™: 'เป„เบฅเบเบฐเบซเปˆเบฒเบ‡', 'เบœเปˆเบฒเบ™', 'transac', 'iat', 'kernel' (เบชเบฐเปเบ”เบ‡เบ—เบฑเบ‡เปเบปเบ”เบ•เปเปˆเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™),
เปเบฅเบฐ 'เบšเบฅเบฑเบญเบ', 'rtt', 'เบŠเบฑเบเบŠเป‰เบฒ' (เบ—เบฒเบ‡เป€เบฅเบทเบญเบ)

-d, --debug
เป€เบžเบตเปˆเบกเบเบฒเบ™เบ”เบตเบšเบฑเบ verbosity. เป€เบžเบตเปˆเบกเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบซเบผเบฒเบเบ„เบฑเป‰เบ‡เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เปˆเบญเบ‡เปเบ„เป‰เบง

-e, --dump-prefix=PRE
prepend เบ„เปเบฒเบ™เปเบฒเบซเบ™เป‰เบฒ PRE เป€เบžเบทเปˆเบญ dump เบŠเบทเปˆเป„เบŸเบฅเปŒ (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: "flowgrind-")

-i, --report-interval=#.#
เป„เบฅเบเบฐเบเบฒเบ™เบฅเบฒเบเบ‡เบฒเบ™, เป€เบ›เบฑเบ™เบงเบดเบ™เบฒเบ—เบต (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: 0.05s)

--log-file[=เป€เบญเบเบฐเบชเบฒเบ™]
เบ‚เบฝเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปƒเบชเปˆ logfile FILE (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: flowgrind-'timestamp'.log)

-m เบฅเบฒเบเบ‡เบฒเบ™เบเบฒเบ™เบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เปƒเบ™ 2**20 bytes/s (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: 10**6 bit/s)

-n, --flows=#
เบˆเบณเบ™เบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: 1)

-o เบ‚เบฝเบ™เบ—เบฑเบšเป„เบŸเบฅเปŒเบšเบฑเบ™เบ—เบถเบเบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: เบขเปˆเบฒเป€เบฎเบฑเบ”)

-p เบขเปˆเบฒเบžเบดเบกเบ„เปˆเบฒเบชเบฑเบ™เบเบฒเบฅเบฑเบ (เป€เบŠเบฑเปˆเบ™ INT_MAX) เปเบ—เบ™เบ•เบปเบงเป€เบฅเบ

-q, --เบ‡เบฝเบš
เบ‡เบฝเบš, เบขเปˆเบฒเป€เบ‚เบปเป‰เบฒเบชเบนเปˆเบฅเบฐเบšเบปเบšเบซเบ™เป‰เบฒเบˆเป (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: เบ›เบดเบ”)

-s, --tcp-stack=TYPE
เบšเปเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เบซเบปเบงเปœเปˆเบงเบเบ‚เบญเบ‡เปเบซเบผเปˆเบ‡ TCP stacks เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”. เบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบซเบปเบงเปœเปˆเบงเบเป„เบ› TYPE, เบšเปˆเบญเบ™เบ—เบตเปˆ
TYPE เปเบกเปˆเบ™ 'segment' เบซเบผเบท 'byte'

-w เบ‚เบฝเบ™ output เบเบฑเบš logfile (เบ„เบทเบเบฑเบ™เบเบฑเบš --log-file)

เบเบฒเบ™เป„เบซเบผ เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™
เบเบฐเปเบชเบ—เบฑเบ‡เปเบปเบ”เบกเบตเบชเบญเบ‡เบˆเบธเบ”, เปเบซเบผเปˆเบ‡เบ—เบตเปˆเบกเบฒ เปเบฅเบฐเบˆเบธเบ”เปเบฒเบเบ›เบฒเบเบ—เบฒเบ‡. เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡เปเบซเบผเปˆเบ‡
เปเบฅเบฐเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เบˆเบธเบ”เบซเบกเบฒเบเบ›เบฒเบเบ—เบฒเบ‡เบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบฑเป‰เบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ. เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เป„เบซเบผ
เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ›เบฒเบเบ—เบฒเบ‡เบˆเบฐเบŸเบฑเบ‡เบขเบนเปˆเปƒเบ™เป€เบ•เบปเป‰เบฒเบฎเบฑเบš เปเบฅเบฐเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบซเบฒเบกเบฑเบ™. เบชเปเบฒโ€‹เบฅเบฑเบš
เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ•เบปเบงเบˆเบดเบ‡เบ™เบตเป‰เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เบ—เบฑเบ‡เบชเบญเบ‡เบˆเบธเบ”เบชเบธเบ”เบ—เป‰เบฒเบเบกเบตเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ”เบฝเบงเบเบฑเบ™เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡.
เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ–เบทเบโ€‹เบชเบปเปˆเบ‡โ€‹เป„เบ›โ€‹เปƒเบ™โ€‹เบ—เบดเบ”โ€‹เบ—เบฒเบ‡โ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบผเบฒเบโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบชเปˆเบงเบ™โ€‹เบšเบธเบโ€‹เบ„เบปเบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹
เปเบ•เปˆเบฅเบฐเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”.

เบšเบฒเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป€เบญเบปเบฒเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบเบฒเบ™เป„เบซเบผเป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡, เบชเบฐเปเบ”เบ‡เบ”เป‰เบงเบ 'x' เปƒเบ™เบ•เบปเบงเป€เบฅเบทเบญเบ
syntax. 'x' เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบ 's' เบชเปเบฒเบฅเบฑเบšเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡, 'd' เบชเปเบฒเบฅเบฑเบš
เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ›เบฒเบเบ—เบฒเบ‡ เบซเบผเบท 'b' เบชเปเบฒเบฅเบฑเบšเบ—เบฑเบ‡เบชเบญเบ‡เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”. เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ„เบปเบ™
เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”, เปเบเบเบžเบงเบเบกเบฑเบ™เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเบธเบ”. เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡ -W s=8192,d=4096 เบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป‚เบ„เบชเบฐเบ™เบฒ
เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเป„เบ›เบซเบฒ 8192 เบขเบนเปˆเปเบซเบผเปˆเบ‡เปเบฅเบฐ 4096 เบขเบนเปˆเบ›เบฒเบเบ—เบฒเบ‡.

-A x เปƒเบŠเป‰เบ‚เบฐเบซเบ™เบฒเบ”เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆ RTT
(เบ„เบทโ€‹เบเบฑเบ™โ€‹เบเบฑเบš -G s=p,C,40)

-B x=# เบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบเบฒเบ™เบชเบปเปˆเบ‡ buffer, เปƒเบ™ bytes

-C x เบขเบธเบ”เบเบฒเบ™เป„เบซเบผเบ–เป‰เบฒเบกเบฑเบ™เบ›เบฐเบชเบปเบšเบเบฑเบšเบ„เบงเบฒเบกเปเบญเบญเบฑเบ”เปƒเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™

-D x=DSCP
เบ„เปˆเบฒ DSCP เบชเปเบฒเบฅเบฑเบšเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ (TOS) IP header byte

-E enumerate bytes เปƒเบ™ payload เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบชเบปเปˆเบ‡เบชเบนเบ™

-F #[,#] ...
เบ•เบปเบงเป€เบฅเบทเบญเบเบเบฒเบ™เป„เบซเบผเบ•เบฒเบกเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ™เบตเป‰เบ™เบณเปƒเบŠเป‰เบเบฑเบš Flow IDs เบ—เบตเปˆเปƒเบซเป‰เบกเบฒเป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เบกเบตเบ›เบฐเป‚เบซเบเบ”เปƒเบ™
เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบเบฑเบš -n เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป„เบซเบผเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™. เบ•เบปเบงเป€เบฅเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบ”เป‰เบงเบ 0, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ -F 1 เบซเบกเบฒเบเป€เบ–เบดเบ‡เบเบฒเบ™เป„เบซเบผเบ—เบตเบชเบญเบ‡. เบ”เป‰เบงเบ -1 เบเบฒเบ™เป„เบซเบผเบ—เบฑเบ‡เบซเบกเบปเบ”เบชเบฒเบกเบฒเบ”เบญเป‰เบฒเบ‡เบญเบตเบ‡

-G x=(q|p|g):(C|U|E|N|L|P|W):#1:[#2]
เบเบฐเบ•เบธเป‰เบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ stochastic เปเบฅเบฐเบเปเบฒเบ™เบปเบ”เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ•เบฒเบกเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰
เบเบฒเบ™โ€‹เปเบœเปˆโ€‹เบเบฐโ€‹เบˆเบฒเบโ€‹. เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป€เบšเบดเปˆเบ‡เบžเบฒเบ 'เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™'

-H x=เบ—เบตเปˆเบชเบธเบ”[/เบเบฒเบ™เบ„เบงเบšเบ„เบธเบก[:PORT]]
เบ—เบปเบ”เบชเบญเบšเบˆเบฒเบ/เป„เบ›เบซเบฒ HOST. เบญเบฒเบเบดเบงเป€เบกเบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปเบกเปˆเบ™เบ—เบตเปˆเบขเบนเปˆ เปเบฅเบฐเบžเบญเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบงเบšเบ„เบธเบก
เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเป€เบˆเบปเป‰เบฒเบžเบฒเบšเบ”เบฝเบงเบเบฑเบ™. เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบฅเบฐเบšเบธเปเบกเปˆเบ™เบชเบปเบกเบกเบธเบ”เบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™
localhost

-J # เปƒเบŠเป‰เปเบเปˆเบ™เปเบšเบšเบชเบธเปˆเบก # (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: เบญเปˆเบฒเบ™ / dev / urandom)

-I เป€เบ›เบตเบ”โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹เบเบฒเบ™โ€‹เบ„เบดเบ”โ€‹เป„เบฅเปˆโ€‹เบเบฒเบ™โ€‹เบŠเบฑเบโ€‹เบŠเป‰เบฒโ€‹เบ—เบฒเบ‡โ€‹เบ”เบฝเบง (เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™ synchronization เป‚เบกเบ‡โ€‹)

-L call connect() on test socket เบ—เบฑเบ™เบ—เบตเบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเป€เบฅเบตเปˆเบกเบชเบปเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™ (late
เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ). เบ–เป‰เบฒเบšเปเปˆเป„เบ”เป‰เบฅเบฐเบšเบธ, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ•เบฑเป‰เบ‡เบ‚เบถเป‰เบ™เปƒเบ™เบเบฒเบ™เบเบฐเบเบฝเบก
เป„เบฅเบเบฐเบเปˆเบญเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™

-M x dump เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เป‚เบ”เบเปƒเบŠเป‰ libpcap. flowgrindd(1โ€‹) เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เบเบฒเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบฎเบฒเบโ€‹

-N shutdown() เปเบ•เปˆเบฅเบฐเบ—เบดเบ”เบ—เบฒเบ‡เบ‚เบญเบ‡เป€เบ•เบปเป‰เบฒเบฎเบฑเบšเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เป„เบซเบผเบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš

-O x=OPT
เบ•เบฑเป‰เบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเป€เบ•เบปเป‰เบฒเบฎเบฑเบš OPT เปƒเบ™เป€เบ•เบปเป‰เบฒเบฎเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš. เบชเปเบฒเบฅเบฑเบšเบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป€เบšเบดเปˆเบ‡เบžเบฒเบ
'เบ•เบปเบงเป€เบฅเบทเบญเบเป€เบ•เบปเป‰เบฒเบชเบฝเบš'

-P x เบขเปˆเบฒเป€เบฎเบฑเบ”เบŠเป‰เบณเบœเปˆเบฒเบ™ select() เป€เบžเบทเปˆเบญเบชเบทเบšเบ•เปเปˆเบชเบปเปˆเบ‡เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบ‚เบฐเปœเบฒเบ”เบšเบผเบฑเบญเบเบšเปเปˆเป„เบ”เป‰
เบžเบฝเบ‡โ€‹เบžเปโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบ•เบทเปˆเบกโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เปƒเบชเปˆโ€‹เปเบ–เบงโ€‹เบชเบปเปˆเบ‡ (pushyโ€‹)

-Q เบชเบฐเบซเบผเบธเบšเบžเบฝเบ‡เปเบ•เปˆ, เบšเปเปˆเบกเบตเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เป„เบฅเบเบฐเบเบฒเบ‡เป„เบ”เป‰เบ–เบทเบเบ„เบดเบ”เป„เบฅเปˆ (เบ‡เบฝเบš)

-R x=#.#(z|k|M|G)(b|B)
เบชเบปเปˆเบ‡เปƒเบ™เบญเบฑเบ”เบ•เบฒเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบ•เปเปˆเบงเบดเบ™เบฒเบ—เบต, เบšเปˆเบญเบ™เบ—เบตเปˆ: z = 2**0, k = 2**10, M = 2**20, G =
2**30, เปเบฅเบฐ b = bits/s (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™), B = bytes/s

-S x=# เบเปเบฒเบ™เบปเบ”เบ‚เบฐเบซเบ™เบฒเบ” block (เบ‚เปเป‰เบ„เบงเบฒเบก), เปƒเบ™ bytes (เบ„เบทเบเบฑเบ™เบเบฑเบš -G s=q,C,#)

-T x=#.#
เบเปเบฒเบ™เบปเบ”เป„เบฅเบเบฐเป€เบงเบฅเบฒเบเบฒเบ™เป„เบซเบผ, เป€เบ›เบฑเบ™เบงเบดเบ™เบฒเบ—เบต (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: s=10,d=0)

-U # เบเปเบฒเบ™เบปเบ”เบ‚เบฐเบซเบ™เบฒเบ” buffer เบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™, เปƒเบ™ bytes (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: 8192) เบ•เบฑเบ”เบ„เปˆเบฒเบ–เป‰เบฒเปƒเบŠเป‰เบเบฑเบš
เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ stochastic

-W x=# เบ•เบฑเป‰เบ‡ buffer เบœเบนเป‰เบฎเบฑเบšเบ—เบตเปˆเบฎเป‰เบญเบ‡เบ‚เป (เบ›เปˆเบญเบ‡เบขเป‰เบฝเบกเป‚เบ„เบชเบฐเบ™เบฒ), เปƒเบ™ bytes

-Y x=#.#
เบ•เบฑเป‰เบ‡เบ„เบงเบฒเบกเบฅเปˆเบฒเบŠเป‰เบฒเปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบเปˆเบญเบ™เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบžเบฒเบšเบˆเบฐเป€เบฅเบตเปˆเบกเบชเบปเปˆเบ‡, เปƒเบ™เบงเบดเบ™เบฒเบ—เบต

เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ เบเบฒเบ™เบœเบฐเบฅเบดเบ” เบ—เบฒเบ‡เป€เบฅเบทเบญเบ


เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹ -G flowgrind เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ stochastic, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™
เบ™เบญเบโ€‹เบˆเบฒเบโ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹เบซเบผเบฒเบโ€‹เบเบฑเบ‡โ€‹เบ‚เบฑเป‰เบ™โ€‹เบชเบนเบ‡โ€‹เบญเบฑเบ”โ€‹เบ•เบฒโ€‹เบเบฒเบ™โ€‹เบˆเปเบฒโ€‹เบเบฑเบ”โ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบชเบปเปˆเบ‡โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบเบฒเบ™โ€‹เบ•เบญเบšโ€‹เบชเบฐโ€‹เบซเบ™เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบฎเป‰เบญเบ‡โ€‹เบ‚เปโ€‹.

เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ stochastic -G เป€เบญเบปเบฒเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบเบฒเบ™เป„เบซเบผเป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡, เบซเบกเบฒเบเป€เบ–เบดเบ‡
เป‚เบ”เบ 'x' เปƒเบ™ syntax เบ—เบฒเบ‡เป€เบฅเบทเบญเบ. 'x' เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบ 's' เบชเปเบฒเบฅเบฑเบšเปเบซเบผเปˆเบ‡
เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”, 'd' เบชเปเบฒเบฅเบฑเบšเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ›เบฒเบเบ—เบฒเบ‡ เบซเบผเบท 'b' เบชเปเบฒเบฅเบฑเบšเบ—เบฑเบ‡เบชเบญเบ‡เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบเบฐเบฅเบธเบ™เบฒเบชเบฑเบ‡เป€เบเบ”
เบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบชเบญเบ‡เบ—เบดเบ”เบ—เบฒเบ‡เบชเบฒเบกเบฒเบ”เบ™เปเบฒเป„เบ›เบชเบนเปˆเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเบšเปเปˆเบ„เบฒเบ”เบ„เบดเบ”. เป€เบžเบทเปˆเบญโ€‹เบฅเบฐโ€‹เบšเบธโ€‹เบ—เบตเปˆโ€‹เปเบ•เบโ€‹เบ•เปˆเบฒเบ‡โ€‹เบเบฑเบ™โ€‹
เบ„เปˆเบฒเบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”, เปเบเบเบžเบงเบเบกเบฑเบ™เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเบธเบ”.

-G x=(q|p|g):(C|U|E|N|L|P|W):#1:[#2]

เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เป„เบซเบผ:

q เบ‚เบฐเปœเบฒเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป (เป€เบ›เบฑเบ™เป„เบšเบ•เปŒ)

p เบ‚เบฐเปœเบฒเบ”เบ•เบญเบšเบชเบฐเปœเบญเบ‡ (เป€เบ›เบฑเบ™เป„เบšเบ•เปŒ)

g เบฎเป‰เบญเบ‡เบ‚เปเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡ interpacket (เปƒเบ™เบงเบดเบ™เบฒเบ—เบต)

เบเบฒเบ™เปเบˆเบเบขเบฒเบ:

C เบ„เบปเบ‡เบ—เบตเปˆ (#1: เบกเบนเบ™โ€‹เบ„เปˆเบฒโ€‹, #2: เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰)

U เป€เบญเบเบฐเบžเบฒเบš (#1: เบ™เบ—, #2: เบชเบนเบ‡เบชเบธเบ”)

E เป€เบฅเบเบเบณเบฅเบฑเบ‡ (#1: lamba - เบ•เบฐโ€‹เบซเบผเบญเบ”โ€‹เบŠเบตโ€‹เบงเบดเบ”โ€‹, #2: เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰)

N เบ›เบปเบเบเบฐเบ•เบด (#1: mu - เบ„เปˆเบฒโ€‹เบ„เบงเบฒเบกโ€‹เบซเบกเบฒเบโ€‹, #2: sigma_square - เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡)

L เบ›เบปเบเบเบฐเบ•เบด (#1: zeta - เบซเบกเบฒเบโ€‹เบ„เบงเบฒเบกโ€‹เบงเปˆเบฒโ€‹, #2: sigma - std dev)

P pareto (#1: k - เบฎเบนเบšโ€‹เบฎเปˆเบฒเบ‡โ€‹, #2: x_min - เบ‚เบฐเบซเบ™เบฒเบ”)

W weibull (#1: lambda - เบ‚เบฐเบซเบ™เบฒเบ”, #2: k - เบฎเบนเบšโ€‹เบฎเปˆเบฒเบ‡

เบเบฒเบ™เปเบˆเบเบขเบฒเบเปเบšเบšเบžเบดเป€เบชเบ”เป€เบŠเบฑเปˆเบ™ weibull เปเบกเปˆเบ™เบกเบตเบžเบฝเบ‡เปเบ•เปˆเบ–เป‰เบฒ flowgrind เบ–เบทเบเบฅเบงเบšเบฅเบงเบก
เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ libgsl.

-U # เบฅเบฐเบšเบธเบ•เบปเบงเบžเบดเบกเปƒเบซเบเปˆเบชเบณเบฅเบฑเบšเบ„เปˆเบฒเบ—เบตเปˆเบ„เบณเบ™เบงเบ™เปเบฅเป‰เบงเบชเบณเบฅเบฑเบšเบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป เปเบฅเบฐเบ‚เบฐเปœเบฒเบ”เบ•เบญเบšเบชเบฐเปœเบญเบ‡, เบ•เป‰เบญเบ‡เบเบฒเบ™
เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบกเบนเบ™เบ„เปˆเบฒเบเบฒเบ™เปเบˆเบเบขเบฒเบเปเบšเบšเบžเบดเป€เบชเบ”เปเบกเปˆเบ™เบšเปเปˆเบกเบตเบ‚เบญเบšเป€เบ‚เบ”, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบฎเบนเป‰เบงเปˆเบฒ
buffersize (เบกเบฑเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆเบซเบผเบทเบเบฒเบ™เปเบˆเบเบขเบฒเบเป€เบ›เบฑเบ™เป€เบญเบเบฐเบžเบฒเบš). เบ„เบธเบ™เบ„เปˆเบฒ
เบขเบนเปˆเบ™เบญเบเบ‚เบญเบšเป€เบ‚เบ”เปเบกเปˆเบ™เบ–เบทเบเบ„เบดเบ”เป„เบฅเปˆเบ„เบทเบ™เปƒเบซเบกเปˆเบˆเบปเบ™เบเปˆเบงเบฒเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เป€เบเบตเบ”เบ‚เบทเป‰เบ™เปเบ•เปˆเบขเปˆเบฒเบ‡เบซเบ™เป‰เบญเบ 10
เป€เบงเบฅเบฒ (เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบนเบ™เบ„เปˆเบฒเบœเบนเบเบกเบฑเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰)

เบเบฐเป€เบ›เบปเบฒ เบ—เบฒเบ‡เป€เบฅเบทเบญเบ


Flowgrind เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบเปเบฒเบ™เบปเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบ socket เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบฅเบฐเบšเปเปˆเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เป‚เบ”เบเบœเปˆเบฒเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ
-O.

เบ•เบปเบงเป€เบฅเบทเบญเบเบŠเบฑเบญเบเป€เบเบฑเบ”เบ—เบฑเบ‡เปเบปเบ”เป€เบญเบปเบฒเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบเบฒเบ™เป„เบซเบผเป€เบ›เบฑเบ™เบญเบฒเบเบดเบงเป€เบกเบฑเบ™, เบชเบฐเปเบ”เบ‡เบ”เป‰เบงเบ 'x' เปƒเบ™เบ•เบปเบงเป€เบฅเบทเบญเบ
syntax. 'x' เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบ 's' เบชเปเบฒเบฅเบฑเบšเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡, 'd' เบชเปเบฒเบฅเบฑเบš
เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ›เบฒเบเบ—เบฒเบ‡ เบซเบผเบท 'b' เบชเปเบฒเบฅเบฑเบšเบ—เบฑเบ‡เบชเบญเบ‡เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”. เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบ„เบปเบ™
เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”, เปเบเบเบžเบงเบเบกเบฑเบ™เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเบธเบ”. เบเบดเปˆเบ‡เป„เบ›เบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบŠเป‰เปเบฒเบญเบตเบเบ„เบฑเป‰เบ‡เบ”เบฝเบงเบเบฑเบ™
endpoint เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบ socket เบซเบผเบฒเบ.

เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ socket เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™
-O x=TCP_CONGESTION=ALG
เบ•เบฑเป‰เบ‡เบฅเบฐเบšเบปเบšเบ„เบงเบšเบ„เบธเบกเบ„เบงเบฒเบกเปเบญเบญเบฑเบ” ALG เบขเบนเปˆเปƒเบ™เป€เบ•เบปเป‰เบฒเบฎเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš

-O x=TCP_CORK
เบ•เบฑเป‰เบ‡ TCP_CORK เปƒเบ™เบŠเบฑเบญเบเป€เบเบฑเบ”เบ—เบปเบ”เบชเบญเบš

-O x=TCP_NODELAY
เบ›เบดเบ”โ€‹เบเบฒเบ™โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™ nagle เบขเบนเปˆโ€‹เปƒเบ™โ€‹เป€เบ•เบปเป‰เบฒโ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เบชเบญเบšโ€‹

-O x=SO_DEBUG
เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ SO_DEBUG เปƒเบ™เบŠเบฑเบญเบเป€เบเบฑเบ”เบ—เบปเบ”เบชเบญเบš

-O x=IP_MTU_DISCOVER
เบ•เบฑเป‰เบ‡ IP_MTU_DISCOVER เป€เบ—เบดเบ‡เบŠเบฑเบญเบเป€เบเบฑเบ”เบ—เบปเบ”เบชเบญเบš เบ–เป‰เบฒเบšเปเปˆเป„เบ”เป‰เป€เบ›เบตเบ”เปƒเบŠเป‰เปเบฅเป‰เบงเป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบฅเบฐเบšเบปเบš

-O x=ROUTE_RECORD
เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ ROUTE_RECORD เปƒเบ™เบŠเบฑเบญเบเป€เบเบฑเบ”เบ—เบปเบ”เบชเบญเบš

เบšเปเปˆเป„เบ”เป‰เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ socket เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™
-O x=TCP_MTCP
เบ•เบฑเป‰เบ‡ TCP_MTCP (15) เปƒเบ™เบŠเบฑเบญเบเป€เบเบฑเบ”เบ—เบปเบ”เบชเบญเบš

-O x=TCP_ELCN
เบ•เบฑเป‰เบ‡ TCP_ELCN (20) เบขเบนเปˆเปƒเบ™เป€เบ•เบปเป‰เบฒเบฎเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš

-O x=TCP_LCD
เบ•เบฑเป‰เบ‡ TCP_LCD (21) เบขเบนเปˆเปƒเบ™เป€เบ•เบปเป‰เบฒเบฎเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš

เบ•เบปเบงเบขเปˆเบฒเบ‡


flowgrind
เบ—เบปเบ”เบชเบญเบšเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡ localhost IPv4 TCP เบ”เป‰เบงเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ„เบทเบเบฑเบ™เบเบฑเบš flowgrind -H
b=127.0.0.1 โˆ’T s=10,d=0. daemon flowgrind เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบขเบนเปˆเปƒเบ™ localhost

flowgrind -H b=::1/127.0.0.1
เบ„เบทเบเบฑเบ™เบเบฑเบšเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เปเบ•เปˆเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบ‚เบญเบ‡ localhost IPv6 TCP เบ”เป‰เบงเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™

flowgrind -H s=host1,d=host2
เบเบฒเบ™เป‚เบญเบ™ TCP เบซเบผเบฒเบเบฅเบฐเบซเบงเปˆเบฒเบ‡ host1 เปเบฅเบฐ host2. Host1 เป€เบฎเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เปเบซเบผเปˆเบ‡, host2 as
เบˆเบธเบ”โ€‹เบซเบกเบฒเบโ€‹เบ›เบฒเบโ€‹เบ—เบฒเบ‡โ€‹. เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ—เบฑเบ‡เบชเบญเบ‡เบˆเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเปเบฅเปˆเบ™ daemon flowgrind. เป„เบ”เป‰
เบ•เบปเบงเป€เบฅเบทเบญเบเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ–เบทเบเปƒเบŠเป‰, เป‚เบ”เบเบกเบตเป„เบฅเบเบฐเป€เบงเบฅเบฒเบเบฒเบ™เป„เบซเบผเบ‚เบญเบ‡ 10 เบงเบดเบ™เบฒเบ—เบต เปเบฅเบฐเบเบฐเปเบชเบ‚เปเป‰เบกเบนเบ™
เบˆเบฒเบ host1 เบซเบฒ host2

flowgrind -H s=host1,d=host2 -T s=0,d=10
เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบ•เปˆเปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบกเบต flow เบชเบปเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš 10 เบงเบดเบ™เบฒเบ—เบตเบˆเบฒเบ host2 เบซเบฒ
เป€เบˆเบปเป‰เบฒเบžเบฒเบš 1

flowgrind -n 2 -F 0 -H s=192.168.0.1,d=192.168.0.69 -F 1 -H s=10.0.0.1,d=10.0.0.2
เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบชเบญเบ‡เบเบฐเปเบชเบ‚เบฐเปœเบฒเบ™, เบเบฒเบ™เป„เบซเบผเบ—เบณเบญเบดเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡ 192.168.0.1 เปเบฅเบฐ 192.168.0.69, เบ—เบตเบชเบญเบ‡
เป„เบซเบผเบฅเบฐเบซเบงเปˆเบฒเบ‡ 10.0.0.1 เบซเบฒ 10.0.0.2

flowgrind -p -H s=10.0.0.100/192.168.1.100,d=10.0.0.101/192.168.1.101 -A s
เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ‚เบฑเป‰เบ™เบ•เบญเบ™เปœเบถเปˆเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡ 10.0.0.100 เปเบฅเบฐ 10.0.0.101 เปเบฅเบฐเปƒเบŠเป‰เบ—เบตเปˆเบขเบนเปˆ IP 192.168.1.x
เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™. เป€เบ›เบตเบ”เปƒเบŠเป‰เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆ RTT

flowgrind -i 0.001 -T s = 1 | เบ•เบปเบงเบขเปˆเบฒเบ‡ ^S | gnuplot - เบ„เบปเบ‡เบขเบนเปˆ -e 'เบ”เบดเบ™เบ•เบญเบ™ "-" เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ 3:5 เบเบฑเบš เบชเบฒเบ
เบซเบปเบงเบ‚เปเป‰ "เบœเปˆเบฒเบ™" '
เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เป„เบซเบผเบ”เบฝเบงเบœเปˆเบฒเบ™เบญเบธเบ›เบฐเบเบญเบ™ loopback เปเบฅเบฐเบงเบฒเบ‡เปเบœเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบœเบนเป‰เบชเบปเปˆเบ‡เบ”เป‰เบงเบเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญ
เบ‚เบญเบ‡ gnuplot

flowgrind -G s=q,C,400 -G s=p,N,2000,50 -G s=g,U,0.005,0.01 -U 32000
-G s=q,C,400: เปƒเบŠเป‰เบ‚เบฐเปœเบฒเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ„เบปเบ‡เบ—เบตเปˆเบ‚เบญเบ‡ 400 bytes
-G s=p,N,2000,50โ€‹: เปƒเบŠเป‰โ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เบ•เบญเบšโ€‹เบชเบฐโ€‹เบซเบ™เบญเบ‡โ€‹เบเบฒเบ™โ€‹เปเบˆเบโ€‹เบขเบฒเบโ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹เป‚เบ”เบโ€‹เบชเบฐโ€‹เป€เบฅเปˆเบ 2000 bytes เปเบฅเบฐ
เบ„เบงเบฒเบกโ€‹เปเบ•เบโ€‹เบ•เปˆเบฒเบ‡ 50
-G s=g,U,0.005,0.01โ€‹: เปƒเบŠเป‰โ€‹เบŠเปˆเบญเบ‡โ€‹เบซเบงเปˆเบฒเบ‡ interpacket เปเบˆเบโ€‹เบขเบฒเบโ€‹เป€เบ›เบฑเบ™โ€‹เป€เบญโ€‹เบเบฐโ€‹เบžเบฒเบšโ€‹เบ—เบตเปˆโ€‹เบกเบต min 0.005s เปเบฅเบฐ
เปเบฅเบฐเบชเบนเบ‡เบชเบธเบ” 10ms
-U 32000โ€‹: เบ•เบฑเบ”โ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เบ‚เบญเบ‡โ€‹เบ•เบฑเบ™โ€‹เบ—เบตเปˆ 32 kbytes (เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เปเบœเปˆโ€‹เบเบฐโ€‹เบˆเบฒเบโ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹)

เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™ เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™


เบ•เบปเบงเบขเปˆเบฒเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ‚เบญเบ‡ flowgrind เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เปเบ™เบงเปƒเบ”
เปƒเบŠเป‰. เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ flowgrind เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบžเบดเบชเบนเบ”เปเบฅเป‰เบง
เบกเบตเบ„เบงเบฒเบกเปเบฒเบ. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ—เบฒเบ‡เบญเบดเบ™เป€เบ•เบตเป€เบ™เบฑเบ”เบกเบตเบ„เบงเบฒเบกเบซเบผเบฒเบเบซเบผเบฒเบ, เบšเปเปˆเบกเบตเบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒเบชเบดเปˆเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™
เบ—เบตเปˆโ€‹เป€เบซเบกเบฒเบฐโ€‹เบชเบปเบกโ€‹เปƒเบ™โ€‹เบ—เบธเบโ€‹เบชเบฐโ€‹เบ–เบฒโ€‹เบ™เบฐโ€‹เบเบฒเบ™โ€‹.

เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡ เปเบšเบš (HTTP)
เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™
http://www.3gpp2.org/Public_html/specs/C.R1002-0_v1.0_041221.pdf.

flowgrind -M s -G s=q,C,350 -G s=p,L,9055,115.17 -U 100000
-M s: dump traffic เบ‚เป‰เบฒเบ‡เบœเบนเป‰เบชเบปเปˆเบ‡
-G s=q,C,350: เปƒเบŠเป‰เบ‚เบฐเปœเบฒเบ”เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบ„เบปเบ‡เบ—เบตเปˆ 350 bytes
-G s=p,L,9055,115: เปƒเบŠเป‰เบเบฒเบ™เปเบˆเบเบขเบฒเบเบ•เบฒเบกเบ›เบปเบเบเบฐเบ•เบดเบเบฑเบšเบ„เปˆเบฒเบชเบฐเป€เบฅเปˆเบ 9055 เปเบฅเบฐเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡ 115 เบชเปเบฒเบฅเบฑเบš
เบ‚เบฐเบซเบ™เบฒเบ”เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡
-U 100000: เบ•เบฑเบ”เบ„เบณเบ•เบญเบšเบ—เบตเปˆ 100 kbytes

เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบชเบธเบกเปƒเบชเปˆ RTT (เบ„เปˆเบฒเบ•เปˆเปเบฒเปเบกเปˆเบ™เบ”เบตเบเบงเปˆเบฒ) เปเบฅเบฐเป€เบ„เบทเบญเบ‚เปˆเบฒเบ
เบ—เบธเบฅเบฐเบเปเบฒ / s เป€เบ›เบฑเบ™ metric (เบกเบนเบ™เบ„เปˆเบฒเบชเบนเบ‡เบเบงเปˆเบฒเปเบกเปˆเบ™เบ”เบตเบเบงเปˆเบฒ).

Interactive เบเบญเบ‡เบ›เบฐเบŠเบธเบก (เป‚เบ—เป€เบ™เบฑเบ”)
เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰เบˆเปเบฒเบฅเบญเบ‡เป€เบŠเบ”เบŠเบฑเบ™ telnet.

flowgrind -G s=q,U,40,10000 -G s=q,U,40,10000 -O b=TCP_NODELAY
-G s=q,U,40,10000 -G s=q,U,40,10000: เปƒเบŠเป‰เบ„เบณเบฎเป‰เบญเบ‡เบ‚เปเปเบฅเบฐเบเบฒเบ™เบ•เบญเบšเบชเบฐเปœเบญเบ‡เปเบšเบšเปเบˆเบเบขเบฒเบเปเบšเบšเป€เบญเบเบฐเบžเบฒเบš
เบ‚เบฐเบซเบ™เบฒเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡ 40B เปเบฅเบฐ 10kB
-O b=TCP_NODELAY: เบ•เบฑเป‰เบ‡เบ•เบปเบงเป€เบฅเบทเบญเบเบŠเบฑเบญเบเป€เบเบฑเบ” TCP_NODELAY เบ•เบฒเบกเบ—เบตเปˆเปƒเบŠเป‰เป‚เบ”เบเปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ telnet

เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰ RTT (เบ•เปˆเปเบฒเบเบงเปˆเบฒเปเบกเปˆเบ™เบ”เบตเบเบงเปˆเบฒ) เปเบฅเบฐเบ—เบธเบฅเบฐเบเปเบฒเป€เบ„เบทเบญเบ‚เปˆเบฒเบ / s เปเบกเปˆเบ™เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”
(เบชเบนเบ‡เบเบงเปˆเบฒเปเบกเปˆเบ™เบ”เบตเบเบงเปˆเบฒ).

เบญเบฑเบ”เบ•เบฒเบเบฒเบ™ เบˆเปเบฒเบเบฑเบ” (เบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ” เบชเบทเปˆ)
เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰เบˆเบณเบฅเบญเบ‡เบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”เบงเบดเบ”เบตเป‚เบญเบ”เป‰เบงเบเบญเบฑเบ”เบ•เบฒเบšเบดเบ”เบ‚เบญเบ‡ 800 kbit/s.

flowgrind -G s=q,C,800 -G s=g,N,0.008,0.001
เปƒเบŠเป‰เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡ interpacket เบ—เบตเปˆเปเบˆเบเบขเบฒเบเบ›เบปเบเบเบฐเบ•เบดเป‚เบ”เบเบชเบฐเป€เบฅเปˆเบ 0.008 เปเบฅเบฐเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบ
(0.001). เป‚เบ”เบเบชเบปเบกเบ—เบปเบšเบเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป 800 bytes เบญเบฑเบ”เบ•เบฒเบšเบดเบ”เบชเบฐเป€เบฅเปˆเบเบ›เบฐเบกเบฒเบ™ 800
kbit/s เปเบกเปˆเบ™เบšเบฑเบ™เบฅเบธเป„เบ”เป‰. เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบ•เบฒเบกเบญเบฑเบ”เบ•เบฒเบšเบดเบ”เบ—เบตเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เบ„เบทเบเบฑเบšเบกเบฑเบ™
เปƒเบŠเป‰เปƒเบ™เบ•เบปเบงเปเบ›เบ‡เบชเบฑเบ™เบเบฒเบ™เบงเบดเบ”เบตเป‚เบญเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™.

เบชเปเบฒเบฅเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ™เบตเป‰ IAT (เบ•เปˆเปเบฒเบเบงเปˆเบฒเปเบกเปˆเบ™เบ”เบตเบเบงเปˆเบฒ) เปเบฅเบฐเบเบฒเบ™เบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เบซเบ™เป‰เบญเบเบ—เบตเปˆเบชเบธเบ” (เบชเบนเบ‡เบเบงเปˆเบฒเปเบกเปˆเบ™เบ”เบตเบเบงเปˆเบฒ) เปเบกเปˆเบ™
metrics เบ—เบตเปˆเบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆ.

OUTPUT เบชเบต


เบเบฐเปเบช/เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ” เบ•เบปเบงเบฅเบฐเบšเบธเบ•เบปเบงเบ•เบปเบ™
# flow endpoint, เบ—เบฑเบ‡ 'S' เบชเปเบฒเบฅเบฑเบšเปเบซเบผเปˆเบ‡เบซเบผเบท 'D' เบชเปเบฒเบฅเบฑเบšเบ›เบฒเบเบ—เบฒเบ‡

ID เบ•เบปเบงเบฅเบฐเบšเบธเบเบฒเบ™เป„เบซเบผเบ‚เบญเบ‡เบ•เบปเบงเป€เบฅเบ

เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ เปเบฅเบฐ เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบ
เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เป„เบฅเบเบฐเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเป€เบ›เบฑเบ™เบงเบดเบ™เบฒเบ—เบต. เป€เบงเบฅเบฒเบ—เบตเปˆเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เปเบกเปˆเบ™เบœเปˆเบฒเบ™เป„เบ›
เป€เบงเบฅเบฒเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเป„เบ”เป‰เบฎเบฑเบšเบ‚เปเป‰เบ„เบงเบฒเบก RPC เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบˆเบฒเบเบˆเบธเบ” daemons เบ‚เบญเบ‡
เป€เบšเบดเปˆเบ‡

เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ เบŠเบฑเป‰เบ™ เบเบฒเบ™เบงเบฑเบ”เปเบ—เบ
เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™
เบชเบปเปˆเบ‡เบœเบปเบ™เบ”เบตเบ‚เบญเบ‡เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เป„เบฅเบเบฐเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบ™เบตเป‰,
เบงเบฑเบ”เปเบ—เบเป€เบ›เบฑเบ™ Mbit/s (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™) เบซเบผเบท MB/s (-m)

เบ—เบธเบฅเบฐเบเปเบฒ
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ•เบญเบšโ€‹เบชเบฐโ€‹เบซเบ™เบญเบ‡โ€‹เบœเบปเบ™โ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ” blocks เบ•เปเปˆโ€‹เบงเบดโ€‹เบ™เบฒโ€‹เบ—เบต (เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป€เบญเบตเป‰เบ™โ€‹เบงเปˆเบฒโ€‹เป€เบ„เบทเบญโ€‹เบ‚เปˆเบฒเบโ€‹
เบ—เบธเบฅเบฐเบเบณ/s)

requ/resp
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ•เบญเบšโ€‹เบชเบฐโ€‹เบซเบ™เบญเบ‡โ€‹เบ—เบตเปˆโ€‹เบชเบปเปˆเบ‡โ€‹เป„เบ›โ€‹เปƒเบ™โ€‹เป„เบฅโ€‹เบเบฐโ€‹เบเบฒเบ™โ€‹เบงเบฑเบ”โ€‹เปเบ—เบโ€‹เบ™เบตเป‰ (เบ–เบฑเบ™โ€‹
เบ›เบดเบ”โ€‹เปƒเบŠเป‰โ€‹เบ‡เบฒเบ™โ€‹เป‚เบ”เบโ€‹เบ„เปˆเบฒโ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹)

IAT เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เป€เบงเบฅเบฒเบกเบฒเบฎเบญเบ” (IAT). เบฎเปˆเบงเบกเบเบฑเบ™เบเบฑเบšเบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเปเบฅเบฐเบชเบนเบ‡เบชเบธเบ”เป„เบ”เป‰
เบชเบฐโ€‹เป€เบฅเปˆเบโ€‹เป€เบฅเบโ€‹เบ„เบฐโ€‹เบ™เบดเบ”โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เป„เบฅโ€‹เบเบฐโ€‹เบเบฒเบ™โ€‹เบงเบฑเบ”โ€‹เปเบ—เบโ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เบ™เบฑเป‰เบ™โ€‹เปเบกเปˆเบ™โ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹. เบ–เป‰เบฒเบšเปเปˆเบกเบตเบ•เบฑเบ™
เป„เบ”เป‰เบฎเบฑเบšเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เป„เบฅเบเบฐเบเบฒเบ™เบฅเบฒเบเบ‡เบฒเบ™, 'inf' เบˆเบฐเบ–เบทเบเบชเบฐเปเบ”เบ‡.

DLY เปเบฅเบฐ RTT
1-way เปเบฅเบฐ 2-way block delay เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš latency เบ•เบฑเบ™ เปเบฅเบฐ block เป„เบ›-เบเบฑเบš
เป€เบงเบฅเบฒ (RTT). เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบŠเบฑเบเบŠเป‰เบฒเบ—เบฑเบ‡เบชเบญเบ‡เบ„เปˆเบฒเบ•เปˆเปเบฒเบชเบธเบ”เปเบฅเบฐเบชเบนเบ‡เบชเบธเบ”เบ—เบตเปˆเบžเบปเบšเปƒเบ™เบ™เบฑเป‰เบ™
เป„เบฅเบเบฐเบเบฒเบ™เบงเบฑเบ”เปเบ—เบเปเบกเปˆเบ™เบชเบฐเปเบ”เบ‡เบžเป‰เบญเบกเบเบฑเบšเบ„เปˆเบฒเบชเบฐเป€เบฅเปˆเบเป€เบฅเบเป€เบฅเบ. เบ–เป‰เบฒเบšเปเปˆเบกเบตเบšเบฅเบฑเบญเบ,
เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบšเบเบฒเบ™เบฎเบฑเบšเบฎเบนเป‰เบ•เบฑเบ™เปเบกเปˆเบ™เบกเบฒเบฎเบญเบ”เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เป„เบฅเบเบฐเป€เบงเบฅเบฒเบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ™เบฑเป‰เบ™, 'inf' เปเบกเปˆเบ™
เบชเบฐเปเบ”เบ‡. เบ—เบฑเบ‡เบชเบญเบ‡, เบเบฒเบ™เบฅเปˆเบฒเบŠเป‰เบฒเบ—เบฒเบ‡เบ•เบฑเบ™ 1 เบ—เบฒเบ‡ เปเบฅเบฐ 2 เบ—เบฒเบ‡เปเบกเปˆเบ™เบ–เบทเบเบ›เบดเบ”เปƒเบŠเป‰เบ‡เบฒเบ™เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ (เป€เบšเบดเปˆเบ‡
เบ—เบฒเบ‡เป€เบฅเบทเบญเบ -I เปเบฅเบฐ -A).

เปเบเปˆเบ™ เบเบฒเบ™เบงเบฑเบ”เปเบ—เบ (TCP_INFO)
เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบชเบฐเป€เบžเบฒเบฐ TCP เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบ—เบฑเบ‡เปเบปเบ”เปเบกเปˆเบ™เป„เบ”เป‰เบกเบฒเบˆเบฒเบ kernel เบœเปˆเบฒเบ™ TCP_INFO
เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ socket เบขเบนเปˆโ€‹เบ—เบตเปˆ เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบ เบ‚เบญเบ‡เปเบ•เปˆเบฅเบฐเป„เบฅเบเบฐเบเบฒเบ™เบฅเบฒเบเบ‡เบฒเบ™. เบญเบฑเบ”เบ•เบฒเบเบฒเบ™เป€เบเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡เบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เป‚เบ”เบเบœเปˆเบฒเบ™
เบ—เบฒเบ‡เป€เบฅเบทเบญเบ -i.

cwnd (tcpi_cwnd)
เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡ TCP congestion window (CWND) เปƒเบ™เบˆเปเบฒเบ™เบงเบ™ segments (Linux) เบซเบผเบท bytes
(FreeBSD)

ssth (tcpi_snd_sshresh)
เบ‚เบฐเปœเบฒเบ”เบ‚เบญเบ‡เป€เบเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบŠเป‰เบฒเปƒเบ™เบˆเบณเบ™เบงเบ™เบ‚เบญเบ‡เบžเบฒเบเบชเปˆเบงเบ™ (Linux) เบซเบผเบท bytes (FreeBSD)

เบญเบนเบ (tcpi_unacked)
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰โ€‹เปƒเบ™โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹, เป€เบŠเบฑเปˆเบ™โ€‹, เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบšเบดเบ™โ€‹
(FlightSize) (Linux เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™)

เบ–เบปเบ‡ (tcpi_sacked)
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เบ—เบตเปˆโ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰โ€‹เบ„เบฑเบ”โ€‹เป€เบฅเบทเบญเบ (Linux เป€เบ—เบปเปˆเบฒโ€‹เบ™เบฑเป‰เบ™โ€‹)

เบเบฒเบ™เบชเบนเบ™เป€เบชเบ (tcpi_lost)
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เบชเบปเบกโ€‹เบกเบธเบ”โ€‹เบงเปˆเบฒโ€‹เบชเบนเบ™โ€‹เป€เบชเบ (Linux เป€เบ—เบปเปˆเบฒโ€‹เบ™เบฑเป‰เบ™โ€‹)

เบ”เบถเบ‡เป€เบญเบปเบฒ (tcpi_retrans)
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰ retransmitted (Linux เป€เบ—เบปเปˆเบฒโ€‹เบ™เบฑเป‰เบ™โ€‹)

tret (tcpi_retransmits)
เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡ retransmissions เบเบฐเบ•เบธเป‰เบ™เป‚เบ”เบเบเบฒเบ™เบซเบกเบปเบ”เป€เบงเบฅเบฒ retransmission (RTO) (Linux เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™)

fack (tcpi_fackets)
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เบฅเบฐโ€‹เบซเบงเปˆเบฒเบ‡ SND.UNA เปเบฅเบฐโ€‹เบชเบนเบ‡โ€‹เบชเบธเบ”โ€‹เบ—เบตเปˆโ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰โ€‹เบ„เบฑเบ”โ€‹เป€เบฅเบทเบญเบโ€‹
เปเบฒเบเป€เบฅเบเบฅเบณเบ”เบฑเบš (SND.FACK) (Linux เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™)

reor (tcpi_reordering)
เป€เบกเบ•เบฃเบดเบเบˆเบฑเบ”เบฎเบฝเบ‡เบฅเบณเบ”เบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบ„เบทเบ™เปƒเปเปˆ. Linux kernel เบชเบฒเบกเบฒเบ”เบเบงเบ”เบซเบฒเปเบฅเบฐเบฎเบฑเบšเบกเบทเบเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบฅเปเบฒเบ”เบฑเบšเปƒเบซเบกเปˆ
เป‚เบ”เบโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบชเบนเบ™โ€‹เป€เบชเบ sigificat เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เป„เบฅโ€‹เบเบฐโ€‹เบซเปˆเบฒเบ‡โ€‹เบ‚เบญเบ‡โ€‹เบžเบฒเบโ€‹เบชเปˆเบงเบ™โ€‹เบ—เบตเปˆโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเบปเบโ€‹เบเป‰เบฒเบโ€‹เป€เบฎเบฑเบ”
เบšเปเปˆเป€เบเบตเบ™ metric เบเบฒเบ™เบˆเบฑเบ”เบฅเปเบฒเบ”เบฑเบš (Linux เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™)

rtt (tcpi_rtt) เปเบฅเบฐ rttvar (tcpi_rttvar)
เป€เบงเบฅเบฒเป„เบ›เบเบฑเบš TCP เปเบฅเบฐเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบ‚เบญเบ‡เบกเบฑเบ™เบขเบนเปˆเปƒเบ™ ms

rto (tcpi_rto)
เบเบฒเบ™เปเบปเบ”เป€เบงเบฅเบฒเบ‚เบญเบ‡ retransmission เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเปƒเบ™ ms

bkof (tcpi_backoff)
เบˆเปเบฒโ€‹เบ™เบงเบ™ RTO backoffs (Linux เป€เบ—เบปเปˆเบฒโ€‹เบ™เบฑเป‰เบ™โ€‹)

ca เบฅเบฑเบ” (tcpi_ca_state)
เบชเบฐเบ–เบฒเบ™เบฐเบžเบฒเบเปƒเบ™เบ‚เบญเบ‡ TCP congestion เบ„เบงเบšเบ„เบธเบกเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบ‚เบญเบ‡เบฅเบฑเบ”เบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบขเบนเปˆเปƒเบ™
Linux kernel. เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™ เป€เบ›เบตเบ”, เบšเปเปˆเป€เบ›เบฑเบ™เบฅเบฐเบšเบฝเบš, cwr, เบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบน or เบเบฒเบ™เบชเบนเบ™เป€เบชเบ (Linux เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™)

เป€เบ›เบตเบ” เปเบกเปˆเบ™เบชเบฐเบ–เบฒเบ™เบฐเบ›เบปเบเบเบฐเบ•เบด. เบกเบฑเบ™เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบšเปเปˆเบกเบตเบเบฒเบ™เบฎเบฑเบšเบฎเบนเป‰เบ—เบตเปˆเบŠเป‰เปเบฒเบเบฑเบ™ (ACK) เปเบกเปˆเบ™
เป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเบšเปเปˆเบกเบตเบชเปˆเบงเบ™เปเบกเปˆเบ™เบ–เบทเบงเปˆเบฒเบชเบนเบ™เป€เบชเบ

เบšเปเปˆเป€เบ›เบฑเบ™เบฅเบฐเบšเบฝเบš
เป„เบ”เป‰เบ–เบทเบเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบฒเบ™เบ•เป‰เบญเบ™เบฎเบฑเบšเบ‚เบญเบ‡ ACK เบ—เบตเปˆเบŠเป‰เปเบฒเบเบฑเบ™เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เบ•เบดเบ”เบ•เปเปˆเบเบฑเบ™เบซเบผเบท
เบเบฒเบ™โ€‹เบฎเบฑเบšโ€‹เบฎเบนเป‰โ€‹เบ„เบฑเบ”โ€‹เป€เบฅเบทเบญเบ (SACKโ€‹)

CWR เบ–เบทเบเบ›เป‰เบญเบ™เป€เบกเบทเปˆเบญเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบˆเบฒเบเบเบฒเบ™เปเบˆเป‰เบ‡เป€เบ•เบทเบญเบ™เบ„เบงเบฒเบกเปเบญเบญเบฑเบ”เบ—เบตเปˆเบˆเบฐเปเบˆเป‰เบ‡ (ECN)
เปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบš

Recovery
เบ–เบทเบเบ›เป‰เบญเบ™เป€เบกเบทเปˆเบญเบชเบฒเบก ACKs เบŠเป‰เปเบฒเบเบฑเบ™เบซเบผเบทเบˆเปเบฒเบ™เบงเบ™ SACK เบ—เบฝเบšเป€เบ—เบปเปˆเบฒ
เป„เบ”เป‰เบฎเบฑเบš. เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบ„เบงเบšโ€‹เบ„เบธเบก congestion เบฅเบฑเบ”โ€‹เบ™เบตเป‰โ€‹เปเบฅเบฐโ€‹เบ‚เบฑเป‰เบ™โ€‹เบ•เบญเบ™โ€‹เบเบฒเบ™โ€‹เบŸเบทเป‰เบ™โ€‹เบ•เบปเบงโ€‹เบเบฒเบ™โ€‹เบชเบนเบ™โ€‹เป€เบชเบโ€‹เป€เบŠเบฑเปˆเบ™โ€‹:โ€‹
เบเบฒเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™เป„เบงเปเบฅเบฐเบเบฒเบ™เบŸเบทเป‰เบ™เบ•เบปเบงเป„เบง (RFC 5861) เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”

เบเบฒเบ™เบชเบนเบ™เป€เบชเบ เบ–เบทเบเปƒเบชเปˆเบ–เป‰เบฒ RTO เปเบปเบ”เบญเบฒเบเบธ. เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡เบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบ„เบงเบฒเบกเปเบญเบญเบฑเบ”เปเบฅเบฐเบเบฒเบ™เบŸเบทเป‰เบ™เบŸเบนเบเบฒเบ™เบชเบนเบ™เป€เบชเบ
เบ‚เบฑเป‰เบ™โ€‹เบ•เบญเบ™โ€‹เบเบฒเบ™โ€‹เปเบกเปˆเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹

smss เปเบฅเบฐ เป‚เบกเบ‡เปเบฅเบ‡
เบ‚เบฐเปœเบฒเบ”เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡เบœเบนเป‰เบชเบปเปˆเบ‡ เปเบฅเบฐเปœเปˆเบงเบเบชเบปเปˆเบ‡เบชเบนเบ‡เบชเบธเบ”เบ‚เบญเบ‡เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป€เบ›เบฑเบ™เป„เบšเบ•เปŒ

เบžเบฒเบเปƒเบ™ flowgrind เบฅเบฑเบ” (เบžเบฝเบ‡เปเบ•เปˆ เป€เบ›เบตเบ”เปƒเบซเป‰เปƒเบŠเป‰เบ‡เบฒเบ™ in debug เบชเป‰เบฒเบ‡)
เบชเบฐเบ–เบฒเบ™เบฐเบžเบฒเบš เบชเบฐเบžเบฒเบšเบ‚เบญเบ‡เบเบฐเปเบชเบžเบฒเบเปƒเบ™ flowgrind เบชเปเบฒเบฅเบฑเบšเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบเบฒเบ™เบงเบดเบ™เบดเบ”เป„เบช. เบกเบฑเบ™เป€เบ›เบฑเบ™ tuple เบ‚เบญเบ‡เบชเบญเบ‡
เบ„เปˆเบฒ, เบญเบฑเบ™เบ—เปเบฒเบญเบดเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเบปเปˆเบ‡เปเบฅเบฐเบ—เบตเบชเบญเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฎเบฑเบš. เป‚เบ”เบเบซเบฅเบฑเบเบเบฒเบ™เปเบฅเป‰เบงเบฅเบฑเบ”เบ‚เบญเบ‡
เบ—เบฑเบ‡เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡เบ—เบตเปˆเบกเบฒ เปเบฅเบฐเบˆเบธเบ”เปเบฒเบเบ›เบฒเบเบ—เบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบ„เบงเบ™เบˆเบฐเบกเบตเบ„เบงเบฒเบกเบชเบปเบกเบกเบฒเบ”เปเบ•เปˆเบ•เบฑเป‰เบ‡เปเบ•เปˆเบ™เบฑเป‰เบ™เบกเบฒ
เบžเบงเบเบกเบฑเบ™เบšเปเปˆเป„เบ”เป‰เบ–เบทเบ synchronized เบžเบงเบเป€เบ‚เบปเบฒเบญเบฒเบ”เบˆเบฐเบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™. เบ„เบธเบ™เบ„เปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰
เปเบกเปˆเบ™:

c เบ—เบดเบ”เบ—เบฒเบ‡เบชเบณเป€เบฅเบฑเบ”เบเบฒเบ™เบชเบปเปˆเบ‡/เบฎเบฑเบš

d เบฅเปเบ–เป‰เบฒเบ„เบงเบฒเบกเบฅเปˆเบฒเบŠเป‰เบฒเปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™

f เบชเบฐเบ–เบฒเบ™เบฐเบ„เบงเบฒเบกเบœเบดเบ”

l เบชเบฐเบ–เบฒเบ™เบฐเบ—เบตเปˆเป€เบ„เบทเปˆเบญเบ™เป„เบซเบง, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ–เบทเบเบชเบปเปˆเบ‡ เบซเบผเบทเป„เบ”เป‰เบฎเบฑเบšเป€เบ—เบทเปˆเบญ

n เบเบดเบ”เบˆเบฐเบเปเบฒเบ›เบปเบเบเบฐเบ•เบด, เบ‚เปเป‰เบกเบนเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”เบซเบผเบทเป„เบ”เป‰เบฎเบฑเบš

o เบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบกเบตเป„เบฅเบเบฐเป€เบงเบฅเบฒเบชเบนเบ™เปƒเบ™เบ—เบดเบ”เบ—เบฒเบ‡เบ™เบฑเป‰เบ™, เบšเปเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™เปƒเบ”เป†เบˆเบฐเบ–เบทเบเปเบฅเบเบ›เปˆเบฝเบ™

AUTHORS


Flowgrind เปเบกเปˆเบ™เบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ”เบ Daniel Schaffrath. เบเบฒเบ™เบงเบฑเบ”เปเบ—เบเบเบฒเบ™เปเบˆเบเบขเบฒเบ
เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเปเบฅเบฐเบเบฒเบ™เบœเบฐเบฅเบดเบ”เบเบฒเบ™เบˆเบฐเบฅเบฒเบˆเบญเบ™เบ—เบตเปˆเบเป‰เบฒเบงเบซเบ™เป‰เบฒเบ•เปเปˆเบกเบฒเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป‚เบ”เบ Tim Kosse เปเบฅเบฐ
เบ„เบฃเบดเบชเบ•เบฝเบ™ เปเบŠเบกเป€เบŠเบฅ. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, flowgrind เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบฅเบฐเบฎเบฑเบเบชเบฒ Arnd Hannemann เปเบฅเบฐ
Alexander Zimmermann.

เปƒเบŠเป‰ flowgrind เบญเบญเบ™เป„เบฅเบ™เปŒเป‚เบ”เบเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™ onworks.net


เป€เบŠเบตเบšเป€เบงเบต เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบŸเบฃเบต

เบ”เบฒเบงเป‚เบซเบผเบ”เปเบญเบฑเบš Windows เปเบฅเบฐ Linux

  • 1
    unitedrpms
    unitedrpms
    เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเบเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเปƒเบ™ Gitter!
    https://gitter.im/unitedrpms-people/Lobby
    เป€เบ›เบตเบ”เปƒเบŠเป‰ URPMS repository เปƒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™
    เบฅเบฐเบšเบปเบš -
    https://github.com/UnitedRPMs/unitedrpms.github.io/bl...
    เบ”เบฒเบงเป‚เบซเบฅเบ” unitedrpms
  • 2
    เป€เบžเบตเปˆเบกเบซเป‰เบญเบ‡เบชเบฐCเบธเบ” C ++
    เป€เบžเบตเปˆเบกเบซเป‰เบญเบ‡เบชเบฐCเบธเบ” C ++
    Boost เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™ Portable เบŸเบฃเบต
    เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ” C++ เบ—เบตเปˆเป„เบ”เป‰เบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™เป‚เบ”เบเปเบนเปˆ. เป„เบ”เป‰
    เป€เบ™เบฑเป‰เบ™เปœเบฑเบเปƒเบชเปˆเบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เปเบšเบšเป€เบ„เบทเปˆเบญเบ™เบ—เบตเปˆ
    เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบ”เบตเบเบฑเบšเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C ++.
    เป€เบšเบดเปˆเบ‡ http://www.bo...
    เบ”เบฒเบงเป‚เบซเบฅเบ” Boost C++ Libraries
  • 3
    VirtualGL
    VirtualGL
    VirtualGL เบ›เปˆเบฝเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡ 3D เบˆเบฒเบ a
    เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™ Unix/Linux OpenGL เปƒเบชเปˆ a
    GPU เบ‚เป‰เบฒเบ‡เป€เบŠเบตเบšเป€เบงเบตเปเบฅเบฐเปเบ›เบ‡
    rendered เบฎเบนเบš 3D เป€เบ‚เบปเป‰เบฒโ€‹เป„เบ›โ€‹เปƒเบ™โ€‹เบชเบฐโ€‹เบ•โ€‹เบฃเบตเบกโ€‹เบงเบดโ€‹เบ”เบตโ€‹เป‚เบญโ€‹
    เบ—เบตเปˆ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” VirtualGL
  • 4
    libusb
    libusb
    เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เปƒเบŠเป‰เบžเบทเป‰เบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰
    เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เป€เบžเบทเปˆเบญโ€‹เบ•เบดเบ”โ€‹เบ•เปเปˆโ€‹เบžเบปเบงโ€‹เบžเบฑเบ™โ€‹เบเบฑเบšโ€‹
    เบญเบธเบ›เบฐเบเบญเบ™ USB. เบœเบนเป‰เบŠเบปเบก: เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ, เบชเบดเป‰เบ™เบชเบธเบ”
    เบœเบนเป‰เปƒเบŠเป‰/เป€เบ”เบฑเบชเบ—เบฑเบญเบš. เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฃเปเบเบฃเบก: C.
    เปเบงเบ”เปเบนเปˆ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” libusb
  • 5
    SWIG
    SWIG
    SWIG เป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบžเบฑเบ”เบ—เบฐเบ™เบฒเบŠเบญเบšเปเบง
    เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบšเบฑเบ™เบ”เบฒเป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบ‚เบฝเบ™เปƒเบ™ C เปเบฅเบฐ
    C ++ เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบซเบฅเบฒเบเบซเบฅเบฒเบเบ‚เบญเบ‡เบฅเบฐเบ”เบฑเบšเบชเบนเบ‡
    เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบก. SWIG เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš
    เปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” SWIG
  • 6
    WooCommerce Nextjs React Theme
    WooCommerce Nextjs React Theme
    React WooCommerce เบซเบปเบงเบ‚เปเป‰, เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบ”เป‰เบงเบ
    JS เบ•เปเปˆเป„เบ›, Webpack, Babel, Node, เปเบฅเบฐ
    เบ”เปˆเบงเบ™, เปƒเบŠเป‰ GraphQL เปเบฅเบฐ Apollo
    เบฅเบนเบโ€‹เบ„เป‰เบฒ. เบฎเป‰เบฒเบ™ WooCommerce เปƒเบ™ React(
    เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบโ€‹: เบœเบฐโ€‹เบฅเบดเบ”โ€‹เบ•เบฐโ€‹เบžเบฑเบ™ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” WooCommerce Nextjs React Theme
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Linux เบ„เบณ เบชเบฑเปˆเบ‡

  • 1
    ac++
    ac++
    เปƒเบŠเป‰ ac++ เบญเบญเบ™เบฅเบฒเบเป‚เบ”เบเปƒเบŠเป‰ onworks.net
    เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™. ...
    เปเบฅเปˆเบ™ ac++
  • 2
    เบญเบฒเบเบฒเบ•
    เบญเบฒเบเบฒเบ•
    atool - script เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบˆเบฑเบ”เบเบฒเบ™เป„เบŸเบฅเปŒ
    เบฎเบงเบšเบฎเบงเบกเบ‚เบญเบ‡เบ›เบฐเป€เบžเบ”เบ•เปˆเบฒเบ‡เป† ...
    เปเบฅเปˆเบ™ acat
  • 3
    cpants_lintp
    cpants_lintp
    cpants_lint - commandline frontend เบเบฑเบš
    เป‚เบกเบ”เบนเบ™::CPANTS::เบงเบดเป€เบ„เบฒเบฐ...
    เปเบฅเปˆเบ™ cpants_lintp
  • 4
    cpbm
    cpbm
    cpbm - เบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบŠเบญเบšเปเบง
    (เบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš: CPROVER benchmarking
    เบเบญเบš)...
    เปเบฅเปˆเบ™ cpbm
  • 5
    เปเบเบกเบˆเบต
    เปเบเบกเบˆเบต
    gamgi - เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเบ—เบปเปˆเบงเป„เบ›
    เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฎเบนเบšเบžเบฒเบš ...
    เปเบฅเปˆเบ™ gamgi
  • 6
    gamgi.real
    gamgi.real
    gamgi - เบเบฒเบ™เบชเป‰เบฒเบ‡เปเบšเบšเบˆเปเบฒเบฅเบญเบ‡เบ›เบฐเบฅเปเบฒเบกเบฐเบ™เบนเบ—เบปเปˆเบงเป„เบ›
    เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบฎเบนเบšเบžเบฒเบš ...
    เปเบฅเปˆเบ™ gamgi.real
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Ad