{"id":260125,"date":"2015-06-25T16:55:02","date_gmt":"2015-06-25T12:55:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=260125"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=260125","title":{"rendered":"\u0417\u0430\u0445\u0432\u0430\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 Linux \u043d\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0434\u0435\u0441\u044f\u0442\u043a\u0438 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a"},"content":{"rendered":"<p>     \t\u041c\u043e\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u0442 \u0412\u0430\u043c \u043a\u0430\u043a \u043f\u0440\u0438\u043d\u044f\u0442\u044c 10 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u043a\u0430\u043a Netmap, PF_RING, DPDK \u0438 \u043f\u0440\u043e\u0447\u0438\u0435. \u0414\u0435\u043b\u0430\u0442\u044c \u043c\u044b \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u043c \u0441\u0438\u043b\u0430\u043c\u0438 \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u041b\u0438\u043d\u0443\u043a\u0441 \u044f\u0434\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u0438 3.16 \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u0434\u0430 \u043d\u0430 \u0421 \u0438 \u0421++. <\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/0a7\/541\/d6f\/0a7541d6ffe84bcbb881752bd97b6d27.JPG\"\/><\/p>\n<p>  \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u043f\u0430\u0440\u043e\u0439 \u0441\u043b\u043e\u0432 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 pcap \u2014 \u043e\u0431\u0449\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432. \u041e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0442\u0430\u043a\u0438\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0443\u0442\u0438\u043b\u0438\u0442\u0430\u0445 \u043a\u0430\u043a iftop, tcpdump, arpwatch. \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u043e\u043d \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u043d\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u0412\u044b \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0438\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438 \u0436\u0434\u0435\u0442\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043e\u0442 \u043d\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u2014 bind\/recv. \u042f\u0434\u0440\u043e \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u044f\u0434\u0440\u0430, \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043e\u043d\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0445\u043e\u0447\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u0432 \u044e\u0437\u0435\u0440 \u0441\u043f\u0435\u0439\u0441\u0435 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b recv, \u0430\u0434\u0440\u0435\u0441 \u0431\u0443\u0444\u0435\u0440\u0430 \u043a\u0443\u0434\u0430 \u044d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c. \u042f\u0434\u0440\u043e \u043f\u043e\u043a\u043e\u0440\u043d\u043e \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 (\u0443\u0436\u0435 \u0432\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437!). \u0412\u044b\u0445\u043e\u0434\u0438\u0442 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0441\u043b\u043e\u0436\u043d\u043e, \u043d\u043e \u044d\u0442\u043e \u043d\u0435 \u0432\u0441\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b pcap.<\/p>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e recv \u2014 \u044d\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 \u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043c\u044b \u0435\u0433\u043e \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u043f\u0430\u043a\u0435\u0442 \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u044b, \u043d\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 10GE \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 (\u0434\u043e 14.6 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u0432\u044b\u0437\u043e\u0432\u043e\u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443) \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0434\u0430\u0436\u0435 \u043b\u0435\u0433\u043a\u0438\u0439 \u0432\u044b\u0437\u043e\u0432 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u0437\u0430\u0442\u0440\u0430\u0442\u043d\u044b\u043c \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0432\u044b\u0437\u043e\u0432\u043e\u0432.<\/p>\n<p>  \u0422\u0430\u043a\u0436\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0431\u043e\u043b\u0435\u0435 2\u0445 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044f\u0434\u0435\u0440. \u0418 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u043b\u0435\u0442\u0435\u0442\u044c \u043d\u0430 \u043b\u044e\u0431\u043e\u0435 \u0438\u0445 \u043d\u0438\u0445! \u0410 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u0438\u043b\u0430\u043c\u0438 pcap \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043e\u0434\u043d\u043e \u044f\u0434\u0440\u043e. \u0412\u043e\u0442 \u0442\u0443\u0442 \u0443 \u043d\u0430\u0441 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u044f\u0434\u0440\u0430 \u0438 \u043a\u0430\u0440\u0434\u0438\u043d\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u044e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u2014 \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u043c\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438\/\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0430 \u0436\u0434\u0435\u043c \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043e\u043a, \u0437\u0430\u043d\u044f\u0442\u044b\u0445 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u044f\u0434\u0440\u0430\u043c\u0438. \u041f\u043e\u0432\u0435\u0440\u044c\u0442\u0435, \u043d\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u0443\u0439\u0442\u0438 \u0434\u043e 90% \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0432\u0441\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430.<\/p>\n<p>  \u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u0447\u0435\u043a \u043f\u0440\u043e\u0431\u043b\u0435\u043c? \u0418\u0442\u0430\u043a, \u043c\u044b \u0438\u0445 \u0432\u0441\u0435 \u0433\u0435\u0440\u043e\u0439\u0441\u043a\u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0440\u0435\u0448\u0438\u0442\u044c!<br \/>  <a name=\"habracut\"><\/a><br \/>  \u0418\u0442\u0430\u043a, \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0441\u0442\u0438 \u0437\u0430\u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u043c, \u0447\u0442\u043e \u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430 \u0437\u0435\u0440\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u043e\u0440\u0442\u0430\u0445 (\u0447\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u043e\u0442\u043a\u0443\u0434\u0430-\u0442\u043e \u0438\u0437\u0432\u043d\u0435 \u0441\u0435\u0442\u0438 \u043d\u0430\u043c \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043a\u043e\u043f\u0438\u044f \u0432\u0441\u0435\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430). \u041d\u0430 \u043d\u0438\u0445 \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0438\u0434\u0435\u0442 \u0442\u0440\u0430\u0444\u0438\u043a \u2014 SYN \u0444\u043b\u0443\u0434 \u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u043d\u0430 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 14.6 mpps\/7.6GE.<\/p>\n<p>  \u0421\u0435\u0442\u0435\u0432\u044b\u0435 ixgbe, \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b \u0441 SourceForge 4.1.1, Debian 8 Jessie. \u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0434\u0443\u043b\u044f: modprobe ixgbe RSS=8,8 (\u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e!). \u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0443 \u043c\u0435\u043d\u044f i7 3820, \u0441 8\u044e \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u044f\u0434\u0440\u0430\u043c\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0435\u0437\u0434\u0435, \u0433\u0434\u0435 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e 8 (\u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u0432 \u043a\u043e\u0434\u0435) \u0412\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0442\u043e \u0447\u0438\u0441\u043b\u043e \u044f\u0434\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0435\u0441\u0442\u044c \u0443 \u0412\u0430\u0441.<\/p>\n<h2>\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043f\u043e \u0438\u043c\u0435\u044e\u0449\u0438\u043c\u0441\u044f \u044f\u0434\u0440\u0430\u043c<\/h2>\n<p>  \u041e\u0431\u0440\u0430\u0449\u0430\u044e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0430 \u043f\u043e\u0440\u0442 \u043f\u0440\u0438\u043b\u0435\u0442\u0430\u044e\u0442 \u043f\u0430\u043a\u0435\u0442\u044b, \u0446\u0435\u043b\u0435\u0432\u044b\u0435 MAC \u0430\u0434\u0440\u0435\u0441\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435 \u0441\u043e\u0432\u043f\u0430\u0434\u0430\u044e\u0442 \u0441 MAC \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u043d\u0430\u0448\u0435\u0439 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b. \u0412 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u0441\u044f \u0432 \u0440\u0430\u0431\u043e\u0442\u0443 TCP\/IP \u0441\u0442\u0435\u043a Linux \u0438 \u043c\u0430\u0448\u0438\u043d\u0430 \u043f\u043e\u0434\u0430\u0432\u0438\u0442\u0441\u044f \u0442\u0440\u0430\u0444\u0438\u043a\u043e\u043c. \u042d\u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u043e\u0447\u0435\u043d\u044c \u0432\u0430\u0436\u0435\u043d, \u043c\u044b \u0441\u0435\u0439\u0447\u0430\u0441 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u0435\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0445\u0432\u0430\u0442 \u0447\u0443\u0436\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430, \u0430 \u043d\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0442\u0440\u0430\u0444\u0438\u043a\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u0442\u0441\u044f \u0434\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435 (\u0445\u043e\u0442\u044f \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u0439 \u043c\u0435\u0442\u043e\u0434 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u0441 \u043b\u0435\u0433\u043a\u043e\u0441\u0442\u044c\u044e).<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u0438\u043d\u044f\u0442\u044c, \u0435\u0441\u043b\u0438 \u043d\u0430\u0447\u043d\u0435\u043c \u0441\u043b\u0443\u0448\u0430\u0442\u044c \u0432\u0435\u0441\u044c \u0442\u0440\u0430\u0444\u0438\u043a.<\/p>\n<p>  \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c promisc \u0440\u0435\u0436\u0438\u043c \u043d\u0430 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u0435:  <\/p>\n<pre><code class=\"bash\">ifconfig eth6 promisc <\/code><\/pre>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0432 htop \u043c\u044b \u0443\u0432\u0438\u0434\u0438\u043c \u043e\u0447\u0435\u043d\u044c \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u0443\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u0443 \u2014 \u043f\u043e\u043b\u043d\u0443\u044e \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u043a\u0443 \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u044f\u0434\u0435\u0440:<\/p>\n<pre> 1  [||||||||||||||||||||||||||||||||||||||||||||||||||||||||||100.0%]      2  [                                                            0.0%]      3  [                                                            0.0%]      4  [                                                            0.0%]      5  [                                                            0.0%] 6  [                                                            0.0%] 7  [                                                            0.0%] 8  [                                                            0.0%] <\/pre>\n<p>  \u0414\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u0441\u044f \u0441\u043f\u0435\u0446-\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c pps.sh: <a href=\"https:\/\/gist.github.com\/pavel-odintsov\/bc287860335e872db9a5\">gist.github.com\/pavel-odintsov\/bc287860335e872db9a5<\/a><\/p>\n<p>  \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0430\u044f \u2014 4 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443:<br \/>  bash \/root\/pps.sh eth6  <\/p>\n<pre> TX eth6: 0 pkts\/s RX eth6: 3882721 pkts\/s TX eth6: 0 pkts\/s RX eth6: 3745027 pkts\/s <\/pre>\n<p>  \u0427\u0442\u043e\u0431\u044b \u0440\u0435\u0448\u0438\u0442\u044c \u044d\u0442\u0443 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u043f\u043e \u0432\u0441\u0435\u043c \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0434\u0440\u0430\u043c (\u0443 \u043c\u0435\u043d\u044f \u0438\u0445 8) \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0441\u043a\u0440\u0438\u043f\u0442: <a href=\"https:\/\/gist.github.com\/pavel-odintsov\/9b065f96900da40c5301\">gist.github.com\/pavel-odintsov\/9b065f96900da40c5301<\/a> \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442 \u043f\u0440\u0435\u0440\u044b\u0432\u0430\u043d\u0438\u044f \u043e\u0442 \u0432\u0441\u0435\u0445 8 \u043e\u0447\u0435\u0440\u0435\u0434\u0435\u0439 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u043f\u043e \u0432\u0441\u0435\u043c \u0438\u043c\u0435\u044e\u0449\u0438\u043c\u0441\u044f \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u044f\u0434\u0440\u0430\u043c. <\/p>\n<p>  \u041f\u0440\u0435\u043a\u0440\u0430\u0441\u043d\u043e, \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0441\u0440\u0430\u0437\u0443 \u0432\u044b\u043b\u0435\u0442\u0435\u043b\u0430 \u0434\u043e 12mpps (\u043d\u043e \u044d\u0442\u043e \u043d\u0435 \u0437\u0430\u0445\u0432\u0430\u0442, \u044d\u0442\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u0440\u043e\u0447\u0435\u0441\u0442\u044c \u0442\u0440\u0430\u0444\u0438\u043a \u043d\u0430 \u0442\u0430\u043a\u043e\u0439 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0438\u0437 \u0441\u0435\u0442\u0438):  <\/p>\n<pre>  bash \/root\/pps.sh eth6 TX eth6: 0 pkts\/s RX eth6: 12528942 pkts\/s TX eth6: 0 pkts\/s RX eth6: 12491898 pkts\/s TX eth6: 0 pkts\/s RX eth6: 12554312 pkts\/s <\/pre>\n<p>  \u0410 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u044f\u0434\u0440\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043b\u0430\u0441\u044c:  <\/p>\n<pre> 1  [|||||                                                       7.4%]      2  [|||||||                                                     9.7%]      3  [||||||                                                      8.9%]     4  [||                                                          2.8%]      5  [|||                                                         4.1%] 6  [|||                                                         3.9%] 7  [|||                                                         4.1%] 8  [|||||                                                       7.8%] <\/pre>\n<p>  \u0421\u0440\u0430\u0437\u0443 \u043e\u0431\u0440\u0430\u0449\u0430\u044e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u0432 \u0442\u0435\u043a\u0441\u0442\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u0432\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0430 \u043a\u043e\u0434\u0430, \u0432\u043e\u0442 \u043e\u043d\u0438:<br \/>  AF_PACKET, AF_PACKET + FANOUT: <a href=\"https:\/\/gist.github.com\/pavel-odintsov\/c2154f7799325aed46ae\">gist.github.com\/pavel-odintsov\/c2154f7799325aed46ae<\/a><br \/>  AF_PACKET RX_RING, AF_PACKET + RX_RING + FANOUT: <a href=\"https:\/\/gist.github.com\/pavel-odintsov\/15b7435e484134650f20\">gist.github.com\/pavel-odintsov\/15b7435e484134650f20<\/a><\/p>\n<p>  \u042d\u0442\u043e \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u043d\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0443\u0440\u043e\u0432\u043d\u0435\u043c \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0439. \u041f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 (\u0437\u0430\u0432\u0435\u0434\u043e\u043c\u043e \u0431\u043e\u043b\u0435\u0435 \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u043e\u0434\u0430) \u044f \u043d\u0435 \u043f\u0440\u0438\u0432\u043e\u0436\u0443 \u2014 \u043d\u043e \u0432\u0441\u0435 \u0444\u043b\u0430\u0436\u043a\u0438 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u043c\u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f\u043c\u0438 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u0438 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u044b \u0432 \u043a\u043e\u0434\u0435 \u043a\u0430\u043a bool \u2014 \u043c\u043e\u0436\u0435\u0442\u0435 \u043b\u0435\u0433\u043a\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u043c\u043e\u0439 \u043f\u0443\u0442\u044c \u0443 \u0441\u0435\u0431\u044f.<\/p>\n<h2>\u041f\u0435\u0440\u0432\u0430\u044f \u043f\u043e\u043f\u044b\u0442\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 AF_PACKET \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u0431\u0435\u0437 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0439<\/h2>\n<p>  \u0418\u0442\u0430\u043a, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043f\u043e \u0437\u0430\u0445\u0432\u0430\u0442\u0443 \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0441\u0438\u043b\u0430\u043c\u0438 AF_PACKET:  <\/p>\n<pre> We process: 222048 pps We process: 186315 pps <\/pre>\n<p>  \u0418 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0432 \u043f\u043e\u0442\u043e\u043b\u043e\u043a:  <\/p>\n<pre> 1  [||||||||||||||||||||||||||||||||||||||||||||||||||||||||   86.1%]      2  [||||||||||||||||||||||||||||||||||||||||||||||||||||||     84.1%]      3  [||||||||||||||||||||||||||||||||||||||||||||||||||||       79.8%]      4  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||  88.3%]      5  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||    83.7%] 6  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||  86.7%] 7  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 89.8%] 8  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||90.9%] <\/pre>\n<p>  \u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u044f\u0434\u0440\u043e \u0443\u0442\u043e\u043d\u0443\u043b\u043e \u0432 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u0445, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0442\u0440\u0430\u0442\u0438\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f:  <\/p>\n<pre> Samples: 303K of event 'cpu-clock', Event count (approx.): 53015222600   59.57%  [kernel]        [k] _raw_spin_lock    9.13%  [kernel]        [k] packet_rcv    7.23%  [ixgbe]         [k] ixgbe_clean_rx_irq    3.35%  [kernel]        [k] pvclock_clocksource_read    2.76%  [kernel]        [k] __netif_receive_skb_core    2.00%  [kernel]        [k] dev_gro_receive    1.98%  [kernel]        [k] consume_skb    1.94%  [kernel]        [k] build_skb    1.42%  [kernel]        [k] kmem_cache_alloc    1.39%  [kernel]        [k] kmem_cache_free    0.93%  [kernel]        [k] inet_gro_receive    0.89%  [kernel]        [k] __netdev_alloc_frag    0.79%  [kernel]        [k] tcp_gro_receive <\/pre>\n<h2>\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f AF_PACKET \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e FANOUT<\/h2>\n<p>  \u0418\u0442\u0430\u043a, \u0447\u0442\u043e \u0436\u0435 \u0434\u0435\u043b\u0430\u0442\u044c? \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u0443\u043c\u0430\u0442\u044c \ud83d\ude42 \u0411\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u0432\u043e\u0437\u043d\u0438\u043a\u0430\u044e\u0442 \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432 \u043f\u044b\u0442\u0430\u044e\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0434\u0438\u043d \u0440\u0435\u0441\u0443\u0440\u0441. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u043e\u0434\u0438\u043d \u0441\u043e\u043a\u0435\u0442 \u0438 \u0435\u0433\u043e \u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0434\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0447\u0442\u043e \u0432\u044b\u043d\u0443\u0436\u0434\u0430\u0435\u0442 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 8 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432 \u0441\u0442\u043e\u044f\u0442\u044c \u0432 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u043c \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u0438.<\/p>\n<p>  \u0422\u0443\u0442 \u043d\u0430\u043c \u043d\u0430 \u043f\u043e\u043c\u043e\u0449\u044c \u043f\u0440\u0438\u0434\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u043d\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u2014 FANOUT, \u0430 \u0435\u0441\u043b\u0438 \u043f\u043e-\u0440\u0443\u0441\u0441\u043a\u0438 \u2014 \u0440\u0430\u0437\u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u044f. \u0414\u043b\u044f AF_PACKET \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e (\u0440\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f, \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0431\u0443\u0434\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432 \u0440\u0430\u0432\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u0443 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044f\u0434\u0435\u0440). \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0437\u0430\u0434\u0430\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0442\u044c\u0441\u044f \u043f\u043e \u044d\u0442\u0438\u043c \u0441\u043e\u043a\u0435\u0442\u0430\u043c. \u042f \u0432\u044b\u0431\u0440\u0430\u043b \u0440\u0435\u0436\u0438\u043c PACKET_FANOUT_CPU, \u0442\u0430\u043a \u043a\u0430\u043a \u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0447\u0435\u043d\u044c \u0440\u0430\u0432\u043d\u043e\u043c\u0435\u0440\u043d\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e \u043e\u0447\u0435\u0440\u0435\u0434\u044f\u043c \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0438 \u044d\u0442\u043e, \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434, \u043d\u0430\u0438\u043c\u0435\u043d\u0435\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0435\u043c\u043a\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 (\u0445\u043e\u0442\u044f \u0442\u0443\u0442 \u043d\u0435 \u0440\u0443\u0447\u0430\u044e\u0441\u044c \u2014 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u044e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u043a\u043e\u0434\u0435 \u044f\u0434\u0440\u0430).<\/p>\n<p>  \u041a\u043e\u0440\u0440\u0435\u043a\u0442\u0438\u0440\u0443\u0435\u043c \u0432 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043a\u043e\u0434\u0430 bool use_multiple_fanout_processes = true;<\/p>\n<p>  \u0418 \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/p>\n<p>  \u041e \u0447\u0443\u0434\u043e! 10 \u043a\u0440\u0430\u0442\u043d\u043e\u0435 \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u0435:  <\/p>\n<pre> We process: 2250709 pps We process: 2234301 pps We process: 2266138 pps <\/pre>\n<p>  \u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u044b, \u043a\u043e\u043d\u0435\u0447\u043d\u043e, \u043f\u043e \u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u044b \u043f\u043e \u043f\u043e\u043b\u043d\u043e\u0439:  <\/p>\n<pre> 1  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||92.6%]      2  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||93.1%]      3  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||93.2%]      4  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||93.3%]      5  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||93.1%] 6  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||93.7%] 7  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||93.7%] 8  [|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||93.2%] <\/pre>\n<p>  \u041d\u043e \u043a\u0430\u0440\u0442\u0430 perf top \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0443\u0436\u0435 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u043e \u0438\u043d\u0430\u0447\u0435 \u2014 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043b\u043e\u043a\u043e\u0432 \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435\u0442:  <\/p>\n<pre> Samples: 1M of event 'cpu-clock', Event count (approx.): 110166379815   17.22%  [ixgbe]         [k] ixgbe_clean_rx_irq                                                                                                        7.07%  [kernel]        [k] pvclock_clocksource_read                                                                                                  6.04%  [kernel]        [k] __netif_receive_skb_core                                                                                                  4.88%  [kernel]        [k] build_skb                                                                                                                 4.76%  [kernel]        [k] dev_gro_receive                                                                                                           4.28%  [kernel]        [k] kmem_cache_free                                                                                                           3.95%  [kernel]        [k] kmem_cache_alloc                                                                                                         3.04%  [kernel]        [k] packet_rcv                                                                                                                2.47%  [kernel]        [k] __netdev_alloc_frag                                                                                                       2.39%  [kernel]        [k] inet_gro_receive                                                                                                          2.29%  [kernel]        [k] copy_user_generic_string                                                                                                  2.11%  [kernel]        [k] tcp_gro_receive                                                                                                           2.03%  [kernel]        [k] _raw_spin_unlock_irqrestore           <\/pre>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u0443 \u0441\u043e\u043a\u0435\u0442\u043e\u0432 (\u0445\u043e\u0442\u044f \u044f \u043d\u0435 \u0443\u0432\u0435\u0440\u0435\u043d \u043f\u0440\u043e AF_PACKET) \u0435\u0441\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u0434\u0430\u0442\u044c \u0431\u0443\u0444\u0435\u0440 \u043f\u0440\u0438\u0435\u043c\u0430, SO_RCVBUF, \u043d\u043e \u043d\u0430 \u043c\u043e\u0435\u043c \u0442\u0435\u0441\u0442-\u0441\u0442\u0435\u043d\u0434\u0435 \u044d\u0442\u043e \u043d\u0435 \u0434\u0430\u043b\u043e \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432.<\/p>\n<h2>\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f AF_PACKET \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e RX_RING \u2014 \u043a\u043e\u043b\u044c\u0446\u0435\u0432\u043e\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430<\/h2>\n<p>  \u0427\u0442\u043e \u0436\u0435 \u0434\u0435\u043b\u0430\u0442\u044c \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e? \u041e\u0442\u0432\u0435\u0442 \u0442\u0443\u0442 \u0432 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 build_skb, \u043e\u043d\u0430 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u044f\u0434\u0440\u0430 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0434\u0432\u0430 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u043c\u044f\u0442\u0438!<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0441 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438 \u0437\u0430 \u0441\u0447\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f RX_RING.<\/p>\n<p>  \u0418 \u0443\u0440\u0430 4 MPPS \u0432\u0435\u0440\u0448\u0438\u043d\u0430 \u0432\u0437\u044f\u0442\u0430!!!  <\/p>\n<pre> We process: 3582498 pps We process: 3757254 pps We process: 3669876 pps We process: 3757254 pps We process: 3815506 pps We process: 3873758 pps <\/pre>\n<p>  \u0422\u0430\u043a\u043e\u0439 \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0431\u044b\u043b \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d \u0442\u0435\u043c, \u0447\u0442\u043e \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043b\u0438\u0448\u044c \u043e\u0434\u043d\u0430\u0436\u0434\u044b. \u0418 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435\u0439 \u0438\u0437 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u044f\u0434\u0440\u0430 \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f. \u042d\u0442\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0437\u0430 \u0441\u0447\u0435\u0442 \u043e\u0431\u0449\u0435\u0433\u043e \u0431\u0443\u0444\u0435\u0440\u0430 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0432 \u044f\u0434\u0440\u0435 \u0438 \u043f\u0440\u043e\u043f\u0443\u0449\u0435\u043d\u043d\u043e\u0433\u043e \u0432 user space.<\/p>\n<p>  \u0422\u0430\u043a\u0436\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0445\u043e\u0434 \u0441 \u0440\u0430\u0431\u043e\u0442\u043e\u0439 \u2014 \u043d\u0430\u043c \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0435\u043b\u044c\u0437\u044f \u0432\u0438\u0441\u0435\u0442\u044c \u0438 \u0441\u043b\u0443\u0448\u0430\u0442\u044c \u043a\u043e\u0433\u0434\u0430 \u043f\u0440\u0438\u0434\u0435\u0442 \u043f\u0430\u043a\u0435\u0442 (\u043f\u043e\u043c\u043d\u0438\u0442\u0435 \u2014 \u044d\u0442\u043e \u043e\u0432\u0435\u0440\u0445\u0435\u0434!), \u0442\u0435\u043f\u0435\u0440\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u044b\u0437\u043e\u0432\u0430 poll \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043e\u0436\u0438\u0434\u0430\u0442\u044c \u0441\u0438\u0433\u043d\u0430\u043b\u0430, \u043a\u043e\u0433\u0434\u0430 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d \u0446\u0435\u043b\u044b\u0439 \u0431\u043b\u043e\u043a! \u0418 \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0442\u044c \u0435\u0433\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443.<\/p>\n<h2>\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f AF_PACKET \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e RX_RING \u0441\u0438\u043b\u0430\u043c\u0438 FANOUT<\/h2>\n<p>  \u041d\u043e \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u0443 \u043d\u0430\u0441 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0441 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u043c\u0438! \u041a\u0430\u043a \u0436\u0435 \u0438\u0445 \u043f\u043e\u0431\u0435\u0434\u0438\u0442\u044c? \u0421\u0442\u0430\u0440\u044b\u043c \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u2014 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c FANOUT \u0438 \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0431\u043b\u043e\u043a \u043f\u0430\u043c\u044f\u0442\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430-\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430!  <\/p>\n<pre> Samples: 778K of event 'cpu-clock', Event count (approx.): 87039903833   74.26%  [kernel]       [k] _raw_spin_lock    4.55%  [ixgbe]        [k] ixgbe_clean_rx_irq    3.18%  [kernel]       [k] tpacket_rcv    2.50%  [kernel]       [k] pvclock_clocksource_read    1.78%  [kernel]       [k] __netif_receive_skb_core    1.55%  [kernel]       [k] sock_def_readable    1.20%  [kernel]       [k] build_skb    1.19%  [kernel]       [k] dev_gro_receive    0.95%  [kernel]       [k] kmem_cache_free    0.93%  [kernel]       [k] kmem_cache_alloc    0.60%  [kernel]       [k] inet_gro_receive    0.57%  [kernel]       [k] kfree_skb    0.52%  [kernel]       [k] tcp_gro_receive    0.52%  [kernel]       [k] __netdev_alloc_frag <\/pre>\n<p>  \u0418\u0442\u0430\u043a, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c FANOUT \u0440\u0435\u0436\u0438\u043c \u0434\u043b\u044f RX_RING \u0432\u0435\u0440\u0441\u0438\u0438!<\/p>\n<p>  \u0423\u0420\u0410! \u0420\u0415\u041a\u041e\u0420\u0414!!! 9 MPPS!!!  <\/p>\n<pre> We process: 9611580 pps We process: 8912556 pps We process: 8941682 pps We process: 8854304 pps We process: 8912556 pps We process: 8941682 pps We process: 8883430 pps We process: 8825178 pps <\/pre>\n<p>  perf top:  <\/p>\n<pre> Samples: 224K of event 'cpu-clock', Event count (approx.): 42501395417   21.79%  [ixgbe]              [k] ixgbe_clean_rx_irq    9.96%  [kernel]             [k] tpacket_rcv    6.58%  [kernel]             [k] pvclock_clocksource_read    5.88%  [kernel]             [k] __netif_receive_skb_core    4.99%  [kernel]             [k] memcpy    4.91%  [kernel]             [k] dev_gro_receive    4.55%  [kernel]             [k] build_skb    3.10%  [kernel]             [k] kmem_cache_alloc    3.09%  [kernel]             [k] kmem_cache_free    2.63%  [kernel]             [k] prb_fill_curr_block.isra.57 <\/pre>\n<p>  \u041a \u0441\u043b\u043e\u0432\u0443, \u0441\u043f\u0440\u0430\u0432\u0435\u0434\u043b\u0438\u0432\u043e\u0441\u0442\u0438 \u0440\u0430\u0434\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043d\u0430 \u044f\u0434\u0440\u043e 4.0.0 \u0432\u0435\u0442\u043a\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u043d\u0435 \u0434\u0430\u043b\u043e. \u0421\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0434\u0435\u0440\u0436\u0430\u043b\u0430\u0441\u044c \u0432 \u0442\u0435\u0445 \u0436\u0435 \u043f\u0440\u0435\u0434\u0435\u043b\u0430\u0445. \u041d\u043e \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430 \u044f\u0434\u0440\u0430 \u0443\u043f\u0430\u043b\u0430 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e!   <\/p>\n<pre> 1  [|||||||||||||||||||||||||||||||||||||                       55.1%]      2  [|||||||||||||||||||||||||||||||||||                         52.5%]      3  [||||||||||||||||||||||||||||||||||||||||||                  62.5%]      4  [||||||||||||||||||||||||||||||||||||||||||                  62.5%]      5  [|||||||||||||||||||||||||||||||||||||||                     57.7%] 6  [||||||||||||||||||||||||||||||||                            47.7%] 7  [|||||||||||||||||||||||||||||||||||||||                     55.9%] 8  [|||||||||||||||||||||||||||||||||||||||||                   61.4%] <\/pre>\n<p>  \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u043c\u044b\u0435 \u043a \u043f\u0440\u043e\u0447\u0442\u0435\u043d\u0438\u044e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b:<br \/>  <a href=\"https:\/\/www.kernel.org\/doc\/Documentation\/networking\/packet_mmap.txt\">www.kernel.org\/doc\/Documentation\/networking\/packet_mmap.txt<\/a><br \/>  <a href=\"http:\/\/man7.org\/linux\/man-pages\/man7\/packet.7.html\">man7.org\/linux\/man-pages\/man7\/packet.7.html<\/a>     \t<\/p>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/261161\/\"> http:\/\/habrahabr.ru\/post\/261161\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>     \t\u041c\u043e\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u0442 \u0412\u0430\u043c \u043a\u0430\u043a \u043f\u0440\u0438\u043d\u044f\u0442\u044c 10 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u043a\u0438\u0445 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u043a\u0430\u043a Netmap, PF_RING, DPDK \u0438 \u043f\u0440\u043e\u0447\u0438\u0435. \u0414\u0435\u043b\u0430\u0442\u044c \u043c\u044b \u044d\u0442\u043e \u0431\u0443\u0434\u0435\u043c \u0441\u0438\u043b\u0430\u043c\u0438 \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u041b\u0438\u043d\u0443\u043a\u0441 \u044f\u0434\u0440\u0430 \u0432\u0435\u0440\u0441\u0438\u0438 3.16 \u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u043e\u0434\u0430 \u043d\u0430 \u0421 \u0438 \u0421++. <\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/0a7\/541\/d6f\/0a7541d6ffe84bcbb881752bd97b6d27.JPG\"\/><\/p>\n<p>  \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u043f\u0430\u0440\u043e\u0439 \u0441\u043b\u043e\u0432 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 pcap \u2014 \u043e\u0431\u0449\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432. \u041e\u043d \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 \u0442\u0430\u043a\u0438\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u0443\u0442\u0438\u043b\u0438\u0442\u0430\u0445 \u043a\u0430\u043a iftop, tcpdump, arpwatch. \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u043e\u043d \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u043d\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u0412\u044b \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0438\u043c \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438 \u0436\u0434\u0435\u0442\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043e\u0442 \u043d\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u2014 bind\/recv. \u042f\u0434\u0440\u043e \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u0432 \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0435 \u044f\u0434\u0440\u0430, \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043e\u043d\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0438\u0432\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0445\u043e\u0447\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u0432 \u044e\u0437\u0435\u0440 \u0441\u043f\u0435\u0439\u0441\u0435 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442 \u0447\u0435\u0440\u0435\u0437 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u044b recv, \u0430\u0434\u0440\u0435\u0441 \u0431\u0443\u0444\u0435\u0440\u0430 \u043a\u0443\u0434\u0430 \u044d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c. \u042f\u0434\u0440\u043e \u043f\u043e\u043a\u043e\u0440\u043d\u043e \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 (\u0443\u0436\u0435 \u0432\u0442\u043e\u0440\u043e\u0439 \u0440\u0430\u0437!). \u0412\u044b\u0445\u043e\u0434\u0438\u0442 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0441\u043b\u043e\u0436\u043d\u043e, \u043d\u043e \u044d\u0442\u043e \u043d\u0435 \u0432\u0441\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b pcap.<\/p>\n<p>  \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e, \u0432\u0441\u043f\u043e\u043c\u043d\u0438\u043c, \u0447\u0442\u043e recv \u2014 \u044d\u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 \u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u043c\u044b \u0435\u0433\u043e \u043d\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u043f\u0430\u043a\u0435\u0442 \u043f\u0440\u0438\u0445\u043e\u0434\u044f\u0449\u0438\u0439 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0432\u044b\u0437\u043e\u0432\u044b \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u044b, \u043d\u043e \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 10GE \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 (\u0434\u043e 14.6 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432 \u0432\u044b\u0437\u043e\u0432\u043e\u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443) \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442 \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u0434\u0430\u0436\u0435 \u043b\u0435\u0433\u043a\u0438\u0439 \u0432\u044b\u0437\u043e\u0432 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043e\u0447\u0435\u043d\u044c \u0437\u0430\u0442\u0440\u0430\u0442\u043d\u044b\u043c \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0435 \u0447\u0430\u0441\u0442\u043e\u0442\u044b \u0432\u044b\u0437\u043e\u0432\u043e\u0432.<\/p>\n<p>  \u0422\u0430\u043a\u0436\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0442\u043c\u0435\u0442\u0438\u0442\u044c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u0431\u043e\u043b\u0435\u0435 2\u0445 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u044f\u0434\u0435\u0440. \u0418 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0433\u0443\u0442 \u043f\u0440\u0438\u043b\u0435\u0442\u0435\u0442\u044c \u043d\u0430 \u043b\u044e\u0431\u043e\u0435 \u0438\u0445 \u043d\u0438\u0445! \u0410 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u0441\u0438\u043b\u0430\u043c\u0438 pcap \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043e\u0434\u043d\u043e \u044f\u0434\u0440\u043e. \u0412\u043e\u0442 \u0442\u0443\u0442 \u0443 \u043d\u0430\u0441 \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0442\u0441\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u044f\u0434\u0440\u0430 \u0438 \u043a\u0430\u0440\u0434\u0438\u043d\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u044e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u0445\u0432\u0430\u0442\u0430 \u2014 \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u044b \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u043c\u0441\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438\/\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0430 \u0436\u0434\u0435\u043c \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043e\u043a, \u0437\u0430\u043d\u044f\u0442\u044b\u0445 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u044f\u0434\u0440\u0430\u043c\u0438. \u041f\u043e\u0432\u0435\u0440\u044c\u0442\u0435, \u043d\u0430 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0438 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0447\u0430\u0441\u0442\u0443\u044e \u0443\u0439\u0442\u0438 \u0434\u043e 90% \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u044b\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0432\u0441\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430.<\/p>\n<p>  \u0425\u043e\u0440\u043e\u0448\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u0447\u0435\u043a \u043f\u0440\u043e\u0431\u043b\u0435\u043c? \u0418\u0442\u0430\u043a, \u043c\u044b \u0438\u0445 \u0432\u0441\u0435 \u0433\u0435\u0440\u043e\u0439\u0441\u043a\u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0440\u0435\u0448\u0438\u0442\u044c!  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-260125","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/260125","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=260125"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/260125\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=260125"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=260125"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=260125"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}