P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ
P4 แƒแƒ แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜แƒ แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒฌแƒ”แƒกแƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒšแƒแƒ“. แƒ–แƒแƒ’แƒแƒ“แƒ˜ แƒ“แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ C แƒแƒœ Python, P4 แƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒ”แƒœแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ”แƒœแƒ, แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜แƒ—, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒžแƒขแƒ˜แƒ›แƒ˜แƒ–แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

P4 แƒแƒ แƒ˜แƒก แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒ”แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒšแƒ˜แƒชแƒ”แƒœแƒ–แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ“แƒ แƒ˜แƒœแƒแƒฎแƒ”แƒ‘แƒ แƒแƒ แƒแƒ™แƒแƒ›แƒ”แƒ แƒชแƒ˜แƒฃแƒšแƒ˜ แƒแƒ แƒ’แƒแƒœแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ , แƒกแƒแƒฎแƒ”แƒšแƒฌแƒแƒ“แƒ”แƒ‘แƒ˜แƒ— P4 Language Consortium. แƒ›แƒแƒก แƒแƒกแƒ”แƒ•แƒ” แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก Open Networking Foundation (ONF) แƒ“แƒ Linux Foundation (LF), แƒแƒ แƒ˜ แƒฃแƒ›แƒกแƒฎแƒ•แƒ˜แƒšแƒ”แƒกแƒ˜ แƒฅแƒแƒšแƒ’แƒ แƒแƒ แƒ’แƒแƒœแƒ˜แƒ–แƒแƒชแƒ˜แƒ แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.
แƒ”แƒœแƒ แƒ—แƒแƒ•แƒ“แƒแƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒแƒ“ แƒจแƒ”แƒ˜แƒฅแƒ›แƒœแƒ 2013 แƒฌแƒ”แƒšแƒก แƒ“แƒ แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒ 2014 แƒฌแƒ”แƒšแƒก SIGCOMM CCR แƒœแƒแƒจแƒ แƒแƒ›แƒจแƒ˜ แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒ— "แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ˜แƒก แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜, แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ".

แƒ“แƒแƒแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ“แƒฆแƒ˜แƒ“แƒแƒœ P4 แƒ’แƒแƒ˜แƒ–แƒแƒ แƒ“แƒ แƒ“แƒ แƒ’แƒแƒœแƒ•แƒ˜แƒ—แƒแƒ แƒ“แƒ แƒ”แƒฅแƒกแƒžแƒแƒœแƒ”แƒœแƒขแƒฃแƒ แƒแƒ“, แƒกแƒฌแƒ แƒแƒคแƒแƒ“ แƒ’แƒแƒฎแƒ“แƒ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒ˜ แƒฅแƒกแƒ”แƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ“แƒแƒชแƒ”แƒ›แƒ˜แƒก แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒฃแƒ แƒ˜ แƒ’แƒแƒ“แƒแƒ›แƒงแƒ•แƒแƒœแƒ”แƒ‘แƒ˜, แƒ™แƒแƒœแƒชแƒ”แƒœแƒขแƒ แƒแƒขแƒแƒ แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒขแƒแƒ แƒ”แƒ‘แƒ˜.

โ€žSDN-แƒ›แƒ แƒ’แƒแƒ แƒ“แƒแƒฅแƒ›แƒœแƒ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ˜แƒœแƒ“แƒฃแƒกแƒขแƒ แƒ˜แƒ แƒ“แƒ P4 แƒแƒฐแƒงแƒแƒ•แƒก SDN-แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒกแƒแƒคแƒ”แƒฎแƒฃแƒ แƒ–แƒ” แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒแƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒแƒ›แƒ“แƒ” แƒ›แƒ˜แƒงแƒ•แƒแƒœแƒ˜แƒ—โ€œ, - แƒ—แƒฅแƒ•แƒ แƒ’แƒฃแƒ แƒฃ แƒžแƒแƒ แƒฃแƒšแƒ™แƒแƒ แƒ›แƒ, Open Networking Foundation-แƒ˜แƒก แƒแƒฆแƒ›แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ”แƒšแƒ›แƒ แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ›แƒ.

P4 แƒ”แƒœแƒ แƒ—แƒแƒ•แƒ“แƒแƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒแƒ“ แƒจแƒ”แƒ˜แƒฅแƒ›แƒœแƒ Google-แƒ˜แƒก, Intel-แƒ˜แƒก, Microsoft Research-แƒ˜แƒก, Barefoot-แƒ˜แƒก, Princeton-แƒ˜แƒกแƒ แƒ“แƒ Stanford-แƒ˜แƒก แƒ˜แƒœแƒŸแƒ˜แƒœแƒ แƒ”แƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒ›แƒ™แƒ•แƒšแƒ”แƒ•แƒแƒ แƒ—แƒ แƒฏแƒ’แƒฃแƒคแƒ˜แƒก แƒ›แƒ˜แƒ”แƒ . แƒ›แƒ˜แƒ–แƒแƒœแƒ˜ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ˜แƒงแƒ: แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜แƒ— แƒแƒ“แƒ•แƒ˜แƒšแƒแƒ“ แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ”แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒจแƒ”แƒ›แƒฅแƒ›แƒœแƒ”แƒšแƒก แƒจแƒ”แƒ”แƒซแƒšแƒ แƒ”แƒ แƒ— แƒ“แƒฆแƒ”แƒจแƒ˜ แƒ˜แƒกแƒฌแƒแƒ•แƒšแƒแƒก แƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒก แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒ˜แƒ›แƒ˜แƒก แƒแƒฆแƒกแƒแƒฌแƒ”แƒ แƒแƒ“, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ˜แƒ’แƒ–แƒแƒ•แƒœแƒ”แƒ‘แƒ แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜ แƒฅแƒกแƒ”แƒšแƒ”แƒ‘แƒจแƒ˜.

แƒ—แƒแƒ•แƒ˜แƒ“แƒแƒœแƒ•แƒ”, P4 แƒจแƒ”แƒ˜แƒฅแƒ›แƒœแƒ แƒ˜แƒกแƒ”, แƒ แƒแƒ› แƒ˜แƒงแƒแƒก แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ” แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜ (แƒแƒœแƒฃ P4-แƒจแƒ˜ แƒ“แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ˜แƒšแƒ˜แƒงแƒ แƒฃแƒชแƒ•แƒšแƒ”แƒšแƒแƒ“, แƒ แƒแƒ—แƒ แƒ˜แƒ›แƒฃแƒจแƒแƒแƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ”แƒ”แƒ‘แƒ–แƒ”, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ ASIC, FPGA, CPU, NPU แƒ“แƒ GPU).

แƒ”แƒœแƒ แƒแƒกแƒ”แƒ•แƒ” แƒแƒ แƒ˜แƒก แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ˜แƒกแƒ’แƒแƒœ แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜ (แƒ›แƒแƒ’., P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒแƒฆแƒฌแƒ”แƒ แƒแƒก แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜ แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ”แƒ‘แƒ˜ แƒแƒœ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒแƒก แƒแƒฎแƒแƒšแƒ˜ แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜แƒก แƒ แƒ”แƒŸแƒ˜แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒ–แƒฃแƒกแƒขแƒ”แƒ‘แƒšแƒแƒ“).

แƒ˜แƒœแƒ“แƒฃแƒกแƒขแƒ แƒ˜แƒแƒจแƒ˜ P4 แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒจแƒ”แƒกแƒแƒซแƒšแƒแƒ, แƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒจแƒ˜ Internet-RFC แƒ“แƒ IEEE แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒ”แƒ‘แƒ˜ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒ“แƒ”แƒก P4 แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒแƒก.

P4 แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒ แƒแƒ’แƒแƒ แƒช แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒ˜, แƒแƒกแƒ”แƒ•แƒ” แƒคแƒ˜แƒฅแƒกแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ˜แƒก แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒšแƒ˜แƒก แƒ›แƒ˜แƒšแƒกแƒแƒ“แƒ”แƒœแƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒ˜แƒก แƒ–แƒฃแƒกแƒขแƒแƒ“ แƒฉแƒแƒกแƒแƒฌแƒ”แƒ แƒแƒ“ Switch Abstraction Interface (SAI) API-แƒ”แƒ‘แƒจแƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒก SONiC switch OS-แƒจแƒ˜. P4 แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ ONF Stratum แƒžแƒ แƒแƒ”แƒฅแƒขแƒจแƒ˜ แƒ’แƒแƒ“แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒ˜แƒก แƒแƒฆแƒกแƒแƒฌแƒ”แƒ แƒแƒ“ แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒคแƒ˜แƒฅแƒกแƒ˜แƒ แƒ”แƒ‘แƒฃแƒš แƒ“แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒแƒ“ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ–แƒ”.

แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒแƒ“, แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒšแƒ˜แƒกแƒ แƒ“แƒ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒแƒ“แƒแƒžแƒขแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒ˜แƒก แƒแƒฆแƒฌแƒ”แƒ แƒ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒ›แƒ—แƒ”แƒšแƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ–แƒฃแƒกแƒขแƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ“แƒ˜ แƒ›แƒแƒ“แƒ”แƒšแƒ˜ แƒ’แƒแƒœแƒšแƒแƒ’แƒ”แƒ‘แƒแƒ›แƒ“แƒ”. แƒฆแƒ แƒฃแƒ‘แƒšแƒ˜แƒก แƒ“แƒ˜แƒ“ แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ”แƒ‘แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒแƒ— แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒขแƒ”แƒกแƒขแƒ˜แƒ แƒ”แƒ‘แƒ แƒ“แƒ แƒ’แƒแƒ›แƒแƒ แƒ—แƒ•แƒ แƒ›แƒ—แƒšแƒ˜แƒแƒœแƒแƒ“ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒช แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒœแƒแƒ“ แƒแƒ›แƒชแƒ˜แƒ แƒ”แƒ‘แƒก แƒšแƒแƒ‘แƒแƒ แƒแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ แƒ—แƒแƒ•แƒกแƒ”แƒ‘แƒแƒ“แƒแƒ‘แƒ˜แƒก แƒขแƒ”แƒกแƒขแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒกแƒ แƒ“แƒ แƒฆแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ”แƒ‘แƒแƒก แƒซแƒ•แƒ˜แƒ แƒแƒ“แƒฆแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒžแƒแƒ แƒแƒขแƒฃแƒ แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”.

P4-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒฅแƒกแƒ”แƒšแƒฃแƒ แƒ˜ แƒแƒฆแƒญแƒฃแƒ แƒ•แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒงแƒ˜แƒ“แƒ•แƒ”แƒšแƒ”แƒ‘แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒแƒ— แƒ”แƒšแƒแƒ“แƒแƒœ แƒกแƒแƒ”แƒ แƒ—แƒ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒแƒก แƒงแƒ•แƒ”แƒšแƒ แƒžแƒ แƒแƒ“แƒฃแƒฅแƒขแƒจแƒ˜, แƒ แƒแƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒกแƒแƒขแƒ”แƒกแƒขแƒ แƒ˜แƒœแƒคแƒ แƒแƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ˜แƒก แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ, แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒ แƒ“แƒ, แƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“, แƒ—แƒแƒ•แƒกแƒ”แƒ‘แƒแƒ“แƒแƒ‘แƒ˜แƒก แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ.

แƒ แƒ แƒ—แƒฅแƒ›แƒ แƒฃแƒœแƒ“แƒ, P4 แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒ˜แƒฅแƒœแƒแƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒ”แƒ แƒแƒ“, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒฆแƒฌแƒ”แƒ แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜แƒแƒ“ แƒแƒฎแƒแƒš แƒ’แƒ–แƒ”แƒ‘แƒก. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, P4 แƒคแƒแƒ แƒ—แƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒขแƒ”แƒšแƒ”แƒ›แƒ”แƒขแƒ แƒ˜แƒ˜แƒกแƒ แƒ“แƒ แƒ’แƒแƒ–แƒแƒ›แƒ•แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒชแƒ”แƒœแƒขแƒ แƒ”แƒ‘แƒจแƒ˜, แƒกแƒแƒฌแƒแƒ แƒ›แƒแƒ—แƒ แƒ“แƒ แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ˜แƒก แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒ”แƒ‘แƒจแƒ˜.

แƒ™แƒ•แƒšแƒ”แƒ•แƒ˜แƒ—แƒ˜ แƒกแƒแƒ–แƒแƒ’แƒแƒ“แƒแƒ”แƒ‘แƒแƒช แƒ’แƒแƒซแƒšแƒ˜แƒ”แƒ แƒ“แƒ. แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒฌแƒแƒ›แƒงแƒ•แƒแƒœแƒ›แƒ แƒแƒ™แƒแƒ“แƒ”แƒ›แƒ˜แƒฃแƒ แƒ›แƒ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ™แƒ•แƒšแƒ”แƒ•แƒ˜แƒ—แƒ›แƒ แƒฏแƒ’แƒฃแƒคแƒ›แƒ แƒ’แƒแƒ›แƒแƒแƒฅแƒ•แƒ”แƒงแƒœแƒ แƒกแƒแƒ˜แƒœแƒขแƒ”แƒ แƒ”แƒกแƒ แƒแƒฎแƒแƒšแƒ˜ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜ P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ–แƒ” แƒ“แƒแƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ“แƒแƒ‘แƒแƒšแƒแƒœแƒกแƒ”แƒ‘แƒ, แƒ™แƒแƒœแƒกแƒ”แƒœแƒกแƒฃแƒกแƒ˜แƒก แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒฅแƒ”แƒจแƒ˜แƒ แƒ”แƒ‘แƒ. แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒแƒฎแƒแƒšแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒžแƒแƒ แƒแƒ“แƒ˜แƒ’แƒ›แƒ, แƒ˜แƒœแƒแƒ•แƒแƒชแƒ˜แƒ แƒ’แƒแƒ“แƒแƒ“แƒ˜แƒก แƒแƒžแƒแƒ แƒแƒขแƒฃแƒ แƒ˜แƒ“แƒแƒœ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒš แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒแƒ–แƒ”, แƒ แƒแƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ›แƒแƒฃแƒšแƒแƒ“แƒœแƒ”แƒšแƒ˜, แƒแƒฎแƒแƒšแƒ˜ แƒ“แƒ แƒ’แƒ”แƒœแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ˜แƒ“แƒ”แƒ˜แƒก แƒ’แƒแƒฉแƒ”แƒœแƒแƒก.

แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ—แƒ แƒกแƒแƒ–แƒแƒ’แƒแƒ“แƒแƒ”แƒ‘แƒแƒ› แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒฌแƒ•แƒšแƒ˜แƒšแƒ˜ แƒจแƒ”แƒ˜แƒขแƒแƒœแƒ แƒ™แƒแƒ“แƒ˜แƒก แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒจแƒ˜, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ’แƒ”แƒœแƒ”แƒšแƒ”แƒ‘แƒ˜, แƒ›แƒ˜แƒšแƒกแƒแƒ“แƒ”แƒœแƒ”แƒ‘แƒ˜, แƒฅแƒชแƒ”แƒ•แƒ˜แƒ—แƒ˜ แƒ›แƒแƒ“แƒ”แƒšแƒ”แƒ‘แƒ˜, API, แƒขแƒ”แƒกแƒขแƒ˜แƒก แƒฉแƒแƒ แƒฉแƒแƒ”แƒ‘แƒ˜, แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒกแƒฎแƒ•แƒ. แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒ”แƒ‘แƒ˜แƒชแƒแƒ Alibaba, AT&T, Barefoot, Cisco, Fox Networks, Google, Intel, IXIA, Juniper Networks, Mellanox, Microsoft, Netcope, Netronome, VMware, Xilinx แƒ“แƒ ZTE แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒ˜แƒšแƒ˜ แƒ“แƒ”แƒ•แƒ”แƒšแƒแƒžแƒ”แƒ แƒ”แƒ‘แƒ˜; แƒฃแƒœแƒ˜แƒ•แƒ”แƒ แƒกแƒ˜แƒขแƒ”แƒขแƒ”แƒ‘แƒ˜แƒ“แƒแƒœ, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก BUPT, Cornell, Harvard, MIT, NCTU, Princeton, Stanford, Technion, Tsinghua, UMass แƒ“แƒ USI; แƒ“แƒ แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก CORD, FD.io, OpenDaylight, ONOS, OvS, SAI แƒ“แƒ Stratum แƒฎแƒแƒ–แƒก แƒฃแƒกแƒ•แƒแƒ›แƒก แƒ˜แƒ› แƒคแƒแƒฅแƒขแƒก, แƒ แƒแƒ› P4 แƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒกแƒแƒ—แƒ”แƒ›แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜.

แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒขแƒ˜แƒžแƒ˜แƒฃแƒ แƒ˜ แƒ—แƒแƒแƒ‘แƒ P4 แƒ”แƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก:

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

แƒ’แƒแƒœแƒแƒชแƒฎแƒแƒ“แƒ˜แƒก แƒžแƒ”แƒ แƒกแƒžแƒ”แƒฅแƒขแƒ˜แƒ•แƒ”แƒ‘แƒ˜

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ
แƒ•แƒ˜แƒœแƒแƒ˜แƒ“แƒแƒœ แƒ”แƒœแƒ แƒ’แƒแƒœแƒ™แƒฃแƒ—แƒ•แƒœแƒ˜แƒšแƒ˜แƒ แƒแƒžแƒšแƒ˜แƒ™แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒœแƒแƒ—แƒ•แƒแƒšแƒ˜ แƒ“แƒ แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜แƒก แƒ•แƒแƒ แƒ˜แƒแƒœแƒขแƒ”แƒ‘แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ–แƒแƒ’แƒแƒ“แƒ˜ แƒ“แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ”แƒ‘แƒ—แƒแƒœ แƒจแƒ”แƒ“แƒแƒ แƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒœแƒ˜แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜แƒ:

  1. แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒšแƒแƒ‘แƒ แƒ›แƒ˜แƒ–แƒœแƒแƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ;
  2. แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒขแƒแƒ™แƒแƒš(แƒ”แƒ‘)แƒ˜แƒก แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒšแƒแƒ‘แƒ;
  3. แƒ•แƒ”แƒšแƒ˜แƒก แƒฎแƒ”แƒšแƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ.

แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒšแƒแƒ‘แƒ แƒ›แƒ˜แƒ–แƒœแƒแƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜แƒ แƒ˜แƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒšแƒแƒ“ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒก, แƒ แƒแƒช แƒ˜แƒ›แƒแƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒ›แƒแƒ—แƒ˜ แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒขแƒ˜แƒžแƒ˜แƒก แƒแƒฆแƒ›แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒซแƒ แƒแƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒ–แƒแƒ’แƒแƒ“แƒ˜ แƒ“แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ”แƒ‘แƒ˜, FPGA, แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒฉแƒ˜แƒžแƒ”แƒ‘แƒ–แƒ”, แƒฅแƒกแƒ”แƒšแƒฃแƒ แƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ”แƒ‘แƒ˜ แƒ“แƒ ASIC. แƒแƒ› แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒขแƒ˜แƒžแƒ˜แƒก แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒ˜ แƒชแƒœแƒแƒ‘แƒ˜แƒšแƒ˜แƒ แƒ แƒแƒ’แƒแƒ แƒช P4 แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ”แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ” แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒจแƒ”แƒ›แƒ“แƒ’แƒ”แƒœแƒ”แƒšแƒก, แƒ แƒแƒ› แƒ’แƒแƒ“แƒแƒ˜แƒงแƒ•แƒแƒœแƒแƒก P4 แƒฌแƒงแƒแƒ แƒแƒก แƒ™แƒแƒ“แƒ˜ แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ” แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒš แƒ›แƒแƒ“แƒ”แƒšแƒแƒ“. แƒจแƒ”แƒ›แƒ“แƒ’แƒ”แƒœแƒ”แƒšแƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒฉแƒแƒจแƒ”แƒœแƒ“แƒ”แƒก แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ” แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒแƒจแƒ˜, แƒ’แƒแƒ แƒ” แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒš แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒแƒจแƒ˜ แƒแƒœ แƒ—แƒฃแƒœแƒ“แƒแƒช แƒฆแƒ แƒฃแƒ‘แƒšแƒแƒ•แƒแƒœ แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒจแƒ˜. แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ, แƒ แƒแƒ› P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ—แƒแƒ•แƒ“แƒแƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ” แƒ˜แƒงแƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ“แƒแƒ แƒ—แƒ•แƒ, แƒซแƒแƒšแƒ˜แƒแƒœ แƒฎแƒจแƒ˜แƒ แƒ˜แƒ แƒขแƒ”แƒ แƒ›แƒ˜แƒœแƒ˜แƒก "P4 แƒ’แƒแƒ“แƒแƒ แƒ—แƒ•แƒ˜แƒก" แƒ›แƒแƒกแƒ›แƒ”แƒœแƒ, แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› "P4 แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ”" แƒฃแƒคแƒ แƒ แƒ–แƒฃแƒกแƒขแƒ˜แƒ.

แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒขแƒแƒ™แƒแƒš(แƒ”แƒ‘)แƒ˜แƒก แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒšแƒแƒ‘แƒ

P4 แƒแƒ แƒ˜แƒก แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ˜แƒกแƒ’แƒแƒœ แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒ”แƒœแƒแƒก แƒแƒ  แƒแƒฅแƒ•แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ IP, Ethernet, TCP, VxLAN แƒแƒœ MPLS. แƒแƒ›แƒ˜แƒก แƒœแƒแƒชแƒ•แƒšแƒแƒ“, P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒกแƒขแƒ˜ แƒแƒฆแƒฌแƒ”แƒ แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒจแƒ˜ แƒกแƒแƒญแƒ˜แƒ แƒ แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒกแƒ แƒ“แƒ แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช, แƒ—แƒแƒ•แƒ˜แƒก แƒ›แƒฎแƒ แƒ˜แƒ•, แƒ˜แƒœแƒขแƒ”แƒ แƒžแƒ แƒ”แƒขแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ“แƒ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ˜แƒšแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒก แƒ“แƒ แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ” แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ .

แƒ•แƒ”แƒšแƒ˜แƒก แƒฎแƒ”แƒšแƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ

แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ˜แƒก แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒšแƒแƒ‘แƒ แƒ“แƒ แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒขแƒฃแƒšแƒ˜ แƒ”แƒœแƒ˜แƒก แƒ›แƒแƒ“แƒ”แƒšแƒ˜ แƒ˜แƒซแƒšแƒ”แƒ•แƒ แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก - P4 แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ”แƒ”แƒ‘แƒก แƒฃแƒœแƒ“แƒ แƒจแƒ”แƒ”แƒซแƒšแƒแƒ— แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒœ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ’แƒแƒœแƒšแƒแƒ’แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’. แƒ”แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ แƒขแƒ แƒแƒ“แƒ˜แƒชแƒ˜แƒฃแƒšแƒแƒ“ แƒแƒกแƒแƒชแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒแƒกแƒ—แƒแƒœ แƒ–แƒแƒ’แƒแƒ“แƒ˜ แƒ“แƒแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒแƒœ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—, แƒ•แƒ˜แƒ“แƒ แƒ” แƒคแƒ˜แƒฅแƒกแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ˜แƒก แƒ˜แƒœแƒขแƒ”แƒ’แƒ แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒฅแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒ—.

แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒ”แƒœแƒแƒจแƒ˜ แƒแƒ แƒแƒคแƒ”แƒ แƒ˜แƒ, แƒ แƒแƒช แƒฎแƒ”แƒšแƒก แƒจแƒ”แƒฃแƒจแƒšแƒ˜แƒก แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒœแƒแƒ™แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒแƒžแƒขแƒ˜แƒ›แƒ˜แƒ–แƒแƒชแƒ˜แƒแƒก, แƒ”แƒก แƒแƒžแƒขแƒ˜แƒ›แƒ˜แƒ–แƒแƒชแƒ˜แƒ แƒฃแƒฎแƒ˜แƒšแƒแƒ•แƒ˜แƒ แƒ”แƒœแƒ˜แƒก แƒแƒ•แƒขแƒแƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“ แƒแƒ›แƒชแƒ˜แƒ แƒ”แƒ‘แƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ“แƒ แƒ›แƒ˜แƒ–แƒœแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒฅแƒœแƒ˜แƒšแƒแƒ‘แƒแƒก แƒ“แƒ แƒ›แƒแƒ— แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒก.

แƒ”แƒœแƒ˜แƒก แƒ”แƒก แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜ แƒ—แƒแƒ•แƒ“แƒแƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒแƒ“ แƒฉแƒแƒ›แƒแƒแƒงแƒแƒšแƒ˜แƒ‘แƒ”แƒก แƒ›แƒ˜แƒกแƒ›แƒ แƒจแƒ”แƒ›แƒฅแƒ›แƒœแƒ”แƒšแƒ”แƒ‘แƒ›แƒ แƒฅแƒกแƒ”แƒšแƒฃแƒ  แƒ˜แƒœแƒคแƒ แƒแƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒแƒจแƒ˜ แƒ›แƒ˜แƒก แƒคแƒแƒ แƒ—แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒ–แƒ”.

แƒ”แƒœแƒ แƒฃแƒ™แƒ•แƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ‘แƒ”แƒ•แƒ  แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒแƒจแƒ˜:

1) แƒฐแƒ˜แƒžแƒ”แƒ แƒ›แƒแƒกแƒจแƒขแƒแƒ‘แƒ˜แƒแƒœแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒชแƒ”แƒœแƒขแƒ แƒ”แƒ‘แƒ˜;

แƒฉแƒ˜แƒœแƒฃแƒ แƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒ Tencent แƒแƒ แƒ˜แƒก แƒ›แƒกแƒแƒคแƒšแƒ˜แƒแƒจแƒ˜ แƒฃแƒ›แƒกแƒฎแƒ•แƒ˜แƒšแƒ”แƒกแƒ˜ แƒกแƒแƒ˜แƒœแƒ•แƒ”แƒกแƒขแƒ˜แƒชแƒ˜แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒ แƒ“แƒ แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒฃแƒ›แƒกแƒฎแƒ•แƒ˜แƒšแƒ”แƒกแƒ˜ แƒกแƒแƒ แƒ˜แƒกแƒ™แƒ แƒ™แƒแƒžแƒ˜แƒขแƒแƒšแƒ˜แƒก แƒคแƒ˜แƒ แƒ›แƒ. Tencent-แƒ˜แƒก แƒจแƒ•แƒ˜แƒšแƒแƒ‘แƒ˜แƒšแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒ”แƒ‘แƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒ˜แƒœแƒ”แƒ—แƒจแƒ˜, แƒแƒกแƒ”แƒ•แƒ” แƒ›แƒกแƒแƒคแƒšแƒ˜แƒแƒก แƒกแƒฎแƒ•แƒ แƒฅแƒ•แƒ”แƒงแƒœแƒ”แƒ‘แƒจแƒ˜, แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒ˜แƒ–แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒœแƒ˜ แƒแƒ แƒ˜แƒแƒœ แƒ›แƒแƒฆแƒแƒšแƒขแƒ”แƒฅแƒœแƒแƒšแƒแƒ’แƒ˜แƒฃแƒ แƒ˜ แƒ‘แƒ˜แƒ–แƒœแƒ”แƒกแƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒกแƒคแƒ”แƒ แƒแƒ”แƒ‘แƒจแƒ˜, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ˜แƒœแƒขแƒ”แƒ แƒœแƒ”แƒข แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ”แƒ‘แƒจแƒ˜, แƒฎแƒ”แƒšแƒแƒ•แƒœแƒฃแƒ แƒ˜ แƒ˜แƒœแƒขแƒ”แƒšแƒ”แƒฅแƒขแƒ˜แƒก แƒกแƒคแƒ”แƒ แƒแƒจแƒ˜ แƒ“แƒ แƒ”แƒšแƒ”แƒฅแƒขแƒ แƒแƒœแƒฃแƒšแƒ˜ แƒ’แƒแƒ แƒ—แƒแƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒ•แƒ˜แƒ—แƒแƒ แƒ”แƒ‘แƒแƒจแƒ˜.

P4 แƒ“แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒ˜ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ แƒแƒ แƒ˜แƒก แƒ›แƒแƒฌแƒ˜แƒœแƒแƒ•แƒ” แƒขแƒ”แƒฅแƒœแƒแƒšแƒแƒ’แƒ˜แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒแƒจแƒ˜.

แƒ แƒแƒ’แƒแƒ แƒช แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒจแƒ”แƒ›แƒฅแƒ›แƒœแƒ”แƒšแƒ˜, Google แƒแƒ›แƒแƒงแƒแƒ‘แƒก P4-แƒ˜แƒก แƒกแƒฌแƒ แƒแƒค แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒแƒ–แƒ” แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ˜แƒœแƒ“แƒฃแƒกแƒขแƒ แƒ˜แƒแƒจแƒ˜ แƒ“แƒ, แƒ™แƒ”แƒ แƒซแƒแƒ“, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒชแƒ”แƒœแƒขแƒ แƒ˜แƒก แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒฃแƒš แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒจแƒ˜.

2) แƒ™แƒแƒ›แƒ”แƒ แƒชแƒ˜แƒฃแƒšแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒ”แƒ‘แƒ˜;

Goldman Sachs แƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒแƒ‘แƒก แƒฆแƒ˜แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒกแƒแƒ–แƒแƒ’แƒแƒ“แƒแƒ”แƒ‘แƒแƒกแƒ—แƒแƒœ แƒ—แƒแƒœแƒแƒ›แƒจแƒ แƒแƒ›แƒšแƒแƒ‘แƒ˜แƒ— แƒ“แƒ แƒกแƒแƒ”แƒ แƒ—แƒ แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒ”แƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ—แƒ แƒ’แƒแƒœแƒแƒแƒฎแƒšแƒแƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ˜แƒœแƒคแƒ แƒแƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ แƒ“แƒ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒก แƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ˜ แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒ™แƒšแƒ˜แƒ”แƒœแƒขแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

3) แƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒ;

แƒ›แƒ—แƒ”แƒšแƒ˜ แƒฅแƒกแƒ”แƒšแƒฃแƒ แƒ˜ แƒ˜แƒœแƒ“แƒฃแƒกแƒขแƒ แƒ˜แƒ แƒ˜แƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒ”แƒ‘แƒก แƒ˜แƒกแƒ”แƒ—แƒ˜ แƒ”แƒœแƒ˜แƒ—, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ P4, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒชแƒแƒšแƒกแƒแƒฎแƒแƒ“ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ’แƒแƒ“แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒแƒก. Cisco-แƒก แƒแƒกแƒ”แƒ•แƒ” แƒกแƒฏแƒ”แƒ แƒ, แƒ แƒแƒ› แƒ—แƒแƒ•แƒ˜แƒกแƒ˜ แƒžแƒ แƒแƒ“แƒฃแƒฅแƒขแƒ˜แƒก แƒฎแƒแƒ–แƒ”แƒ‘แƒ˜ แƒแƒ› แƒ”แƒœแƒแƒ–แƒ” แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒก.

Juniper Networks-แƒ›แƒ แƒฉแƒแƒ แƒ—แƒ P4 แƒ“แƒ P4 Runtime แƒฃแƒแƒ›แƒ แƒแƒ• แƒžแƒ แƒแƒ“แƒฃแƒฅแƒขแƒจแƒ˜ แƒ“แƒ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒš แƒฌแƒ•แƒ“แƒแƒ›แƒแƒก Juniper-แƒ˜แƒก แƒฉแƒแƒจแƒ”แƒœแƒ”แƒ‘แƒฃแƒš แƒžแƒ แƒแƒชแƒ”แƒกแƒแƒ แƒ–แƒ” แƒ“แƒ แƒ›แƒ˜แƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒš แƒ™แƒแƒ“แƒ–แƒ”.

Ruijie Networks แƒแƒ แƒ˜แƒก P4-แƒ˜แƒก แƒซแƒšแƒ˜แƒ”แƒ แƒ˜ แƒ›แƒฎแƒแƒ แƒ“แƒแƒ›แƒญแƒ”แƒ แƒ˜ แƒ“แƒ แƒกแƒแƒ แƒ’แƒ”แƒ‘แƒšแƒแƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒก แƒ›แƒแƒแƒฅแƒ•แƒก แƒฅแƒกแƒ”แƒšแƒ”แƒ‘แƒจแƒ˜. P4-แƒ˜แƒ— แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒแƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก แƒ“แƒ แƒ›แƒ˜แƒแƒฌแƒแƒ“แƒแƒก แƒกแƒแƒฃแƒ™แƒ”แƒ—แƒ”แƒกแƒ แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ—แƒ แƒคแƒแƒ แƒ—แƒ แƒกแƒžแƒ”แƒฅแƒขแƒ แƒก.

4) แƒกแƒแƒขแƒ”แƒšแƒ”แƒ™แƒแƒ›แƒฃแƒœแƒ˜แƒ™แƒแƒชแƒ˜แƒ แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ”แƒ‘แƒ˜;

AT&T แƒ˜แƒงแƒ P4-แƒ˜แƒก แƒแƒ“แƒ แƒ”แƒฃแƒšแƒ˜ แƒ›แƒ˜แƒ›แƒฆแƒ”แƒ‘แƒ˜, แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜, แƒ•แƒ˜แƒœแƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ P4, แƒ แƒแƒ—แƒ แƒ’แƒแƒœแƒ”แƒกแƒแƒ–แƒฆแƒ•แƒ แƒ แƒฅแƒชแƒ”แƒ•แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒกแƒฃแƒ แƒ“แƒ แƒ”แƒœแƒแƒฎแƒ แƒ—แƒแƒ•แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒ”แƒ‘แƒจแƒ˜ แƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒ˜ แƒ’แƒแƒ“แƒแƒ›แƒ’แƒ–แƒแƒ•แƒœแƒ˜ แƒ›แƒแƒฌแƒงแƒแƒ‘แƒ˜แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ—แƒแƒ•แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒจแƒ˜.

Deutsche Telekom-แƒจแƒ˜ แƒ”แƒœแƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒกแƒแƒ™แƒ•แƒแƒœแƒซแƒ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒขแƒแƒขแƒ˜แƒžแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ’แƒแƒ แƒช Access 4.0 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜.

5) แƒœแƒแƒฎแƒ”แƒ•แƒแƒ แƒ’แƒแƒ›แƒขแƒแƒ แƒฃแƒšแƒ˜ แƒ›แƒ แƒ”แƒฌแƒ•แƒ”แƒšแƒแƒ‘แƒ;

แƒ”แƒœแƒแƒ› แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ แƒ›แƒ˜แƒกแƒชแƒ Barefoot-แƒก แƒ“แƒแƒ”แƒœแƒ”แƒ แƒ’แƒ แƒแƒฎแƒแƒšแƒ˜ แƒžแƒแƒ แƒแƒ“แƒ˜แƒ’แƒ›แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒกแƒ˜แƒ‘แƒ แƒขแƒงแƒ”แƒจแƒ˜ แƒ›แƒ˜แƒฌแƒแƒ“แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

Xilinx แƒ˜แƒงแƒ P4.org-แƒ˜แƒก แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒ“แƒแƒ›แƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ“แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒ แƒแƒ“ แƒ˜แƒงแƒ แƒฉแƒแƒ แƒ—แƒฃแƒšแƒ˜ P4 แƒ”แƒœแƒ˜แƒก แƒจแƒ”แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒจแƒ˜ แƒ“แƒ แƒ“แƒแƒœแƒ”แƒ แƒ’แƒ แƒ˜แƒ’แƒ˜ FPGA-แƒ–แƒ” แƒ“แƒแƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒฃแƒš แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒแƒ“ แƒžแƒšแƒแƒขแƒคแƒแƒ แƒ›แƒ”แƒ‘แƒจแƒ˜ SmartNIC แƒ“แƒ NFV แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ’แƒแƒ›แƒแƒฃแƒจแƒ•แƒ แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ P416 แƒจแƒ”แƒ›แƒ“แƒ’แƒ”แƒœแƒ”แƒšแƒ˜, แƒ แƒแƒ’แƒแƒ แƒช SDNet แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜.

6) แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ.

VMware แƒ—แƒ•แƒšแƒ˜แƒก, แƒ แƒแƒ› P4 แƒฅแƒ›แƒœแƒ˜แƒก แƒฃแƒ–แƒแƒ แƒ›แƒแƒ–แƒแƒ  แƒ”แƒœแƒ”แƒ แƒ’แƒ˜แƒแƒก, แƒ˜แƒœแƒแƒ•แƒแƒชแƒ˜แƒ”แƒ‘แƒก แƒ“แƒ แƒกแƒแƒ–แƒแƒ’แƒแƒ“แƒแƒ”แƒ‘แƒแƒก, แƒ แƒแƒช แƒ˜แƒฌแƒ•แƒ”แƒ•แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœ แƒ“แƒ แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒ”แƒš แƒขแƒ แƒแƒœแƒกแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒแƒก แƒฅแƒกแƒ”แƒšแƒจแƒ˜. VMware แƒแƒ› แƒ˜แƒœแƒ“แƒฃแƒกแƒขแƒ แƒ˜แƒ˜แƒก แƒ›แƒแƒซแƒ แƒแƒแƒ‘แƒ˜แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜แƒ แƒ—แƒแƒ•แƒ˜แƒ“แƒแƒœแƒ•แƒ”, แƒ แƒแƒ“แƒ’แƒแƒœ แƒ˜แƒœแƒแƒ•แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒแƒฎแƒแƒšแƒ˜ แƒขแƒแƒšแƒฆแƒ แƒ’แƒแƒœแƒžแƒ˜แƒ แƒแƒ‘แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒš แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒแƒ–แƒ” แƒ“แƒแƒคแƒฃแƒซแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ˜แƒ“แƒ’แƒแƒ›แƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒ”แƒœ แƒ˜แƒœแƒคแƒ แƒแƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒก แƒ“แƒ แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ”แƒœ แƒ›แƒแƒก แƒฃแƒแƒฎแƒšแƒ”แƒก แƒžแƒ แƒแƒ“แƒฃแƒฅแƒขแƒ”แƒ‘แƒจแƒ˜.

แƒแƒ›แƒ แƒ˜แƒ’แƒแƒ“, P4 แƒแƒ แƒ˜แƒก แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ”-แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ“แƒ แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ˜แƒกแƒ’แƒแƒœ แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ แƒ˜แƒœแƒ“แƒฃแƒกแƒขแƒ แƒ˜แƒ แƒ“แƒ แƒแƒ™แƒแƒ“แƒ”แƒ›แƒ˜แƒ, แƒ แƒแƒ—แƒ แƒชแƒแƒšแƒกแƒแƒฎแƒแƒ“ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒœ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ˜แƒ–แƒแƒชแƒ˜แƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒ, แƒ แƒแƒ’แƒแƒ แƒช แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช, แƒ—แƒแƒ•แƒ˜แƒก แƒ›แƒฎแƒ แƒ˜แƒ•, แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ“แƒ’แƒ”แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒ›แƒ˜แƒ–แƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ“แƒฆแƒ”แƒก, แƒกแƒแƒ›แƒ˜แƒ–แƒœแƒ”แƒ”แƒ‘แƒ˜ แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก แƒแƒžแƒแƒ แƒแƒขแƒฃแƒ แƒฃแƒš แƒ“แƒ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒš แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒšแƒ”แƒ‘แƒก, แƒฐแƒ˜แƒžแƒ”แƒ แƒ•แƒ˜แƒ–แƒแƒ แƒ˜แƒก แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒšแƒ”แƒ‘แƒก, NPU, GPU, FPGA, SmartNIC แƒ“แƒ ASIC.

แƒ”แƒœแƒ˜แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒœแƒแƒ“ แƒแƒคแƒแƒ แƒ—แƒแƒ”แƒ‘แƒก แƒ›แƒ˜แƒกแƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒคแƒแƒ แƒ’แƒšแƒ”แƒ‘แƒก แƒ“แƒ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก แƒ›แƒ˜แƒก แƒกแƒฌแƒ แƒแƒค แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒแƒก แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒแƒจแƒ˜.

แƒœแƒแƒชแƒœแƒแƒ‘แƒแƒ‘แƒ

P4 แƒแƒ แƒ˜แƒก แƒฆแƒ˜แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜, แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒกแƒแƒ‘แƒแƒ›แƒ˜แƒกแƒ˜ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ•แƒ”แƒ‘แƒ’แƒ•แƒ”แƒ แƒ“แƒ–แƒ” P4.org

แƒกแƒแƒชแƒแƒ•แƒ˜แƒก แƒ‘แƒ›แƒฃแƒšแƒ˜ https://github.com/p4lang, แƒกแƒแƒ“แƒแƒช แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒ˜แƒฆแƒแƒ— แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒฌแƒงแƒแƒ แƒแƒก แƒ™แƒแƒ“แƒ˜ แƒ“แƒ แƒ’แƒแƒ™แƒ•แƒ”แƒ—แƒ˜แƒšแƒ”แƒ‘แƒ˜.

แฒฉแƒแƒ แƒ—แƒ•แƒ แƒจแƒ”แƒ”แƒ แƒ—แƒ”แƒ‘แƒ Eclipse-แƒกแƒ—แƒ•แƒ˜แƒก P4 แƒ›แƒฎแƒแƒ แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒ—, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ’แƒ˜แƒ แƒฉแƒ˜แƒแƒ— P4 แƒกแƒขแƒฃแƒ“แƒ˜แƒ แƒคแƒ”แƒฎแƒจแƒ˜แƒจแƒ•แƒ”แƒšแƒ˜แƒกแƒแƒ’แƒแƒœ.

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ›แƒ—แƒแƒ•แƒแƒ  แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒชแƒ˜แƒแƒก:

แƒฐแƒ”แƒ“แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ โ€” แƒ›แƒแƒ—แƒ˜ แƒ“แƒแƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ’แƒ˜แƒœแƒ“แƒ”แƒ‘แƒ แƒžแƒ แƒแƒขแƒแƒ™แƒแƒšแƒ˜แƒก แƒกแƒแƒ—แƒแƒฃแƒ แƒ”แƒ‘แƒ˜.

แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ แƒขแƒ”แƒ‘แƒ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก:

  • แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒคแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒแƒฆแƒฌแƒ”แƒ แƒ แƒ“แƒ แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒก แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ”แƒ‘แƒ˜
  • แƒคแƒ˜แƒฅแƒกแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ“แƒ แƒชแƒ•แƒšแƒแƒ“แƒ˜ แƒ“แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“

header Ethernet_h{
    bit<48>  dstAddr;
    bit<48>  srcAddr;
    bit<16>  etherType;
}

header IPv4_h{
    bit<4>  version;
    bit<4>  ihl;
    bit<8>  diffserv;
    bit<16>  totalLen;
    bit<16>  identification;
    bit<3>  flags;
    bit<13>  fragOffset;
    bit<8>  ttl;
    bit<8>  protocol;
    bit<16>  hdrChecksum;
    bit<32>  srcAddr;
    bit<32>  dstAddr;
    varbit<320>  options;
}

แƒžแƒแƒ แƒกแƒ”แƒ แƒ”แƒ‘แƒ˜ โ€” แƒ›แƒแƒ—แƒ˜ แƒแƒ›แƒแƒชแƒแƒœแƒแƒ แƒกแƒแƒ—แƒแƒฃแƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒฉแƒ”แƒ•แƒ.

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒžแƒแƒ แƒกแƒ”แƒ แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒก แƒ’แƒแƒ“แƒแƒกแƒ•แƒšแƒแƒก แƒ”แƒ แƒ—แƒ˜ แƒกแƒแƒฌแƒงแƒ˜แƒกแƒ˜ แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒ“แƒแƒœ แƒแƒ  แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒแƒ›แƒ“แƒ”:

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

parser MyParser(){
 state  start{transition parse_ethernet;}
 state  parse_ethernet{
    packet.extract(hdr.ethernet);
    transition select(hdr.ethernet.etherType){
        TYPE_IPV4: parse_ipv4;
        default: accept;
        }
    }โ€ฆ
}

แƒ›แƒแƒ’แƒ˜แƒ“แƒ”แƒ‘แƒ˜ - แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒ“แƒ”แƒก แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒก แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ”แƒ‘แƒก แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ”แƒ‘แƒ—แƒแƒœ. แƒแƒฅแƒขแƒ˜แƒฃแƒ แƒแƒ‘แƒ - แƒแƒฆแƒฌแƒ”แƒ แƒ, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ›แƒแƒฎแƒ“แƒ”แƒก แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒžแƒฃแƒšแƒ˜แƒ แƒ”แƒ‘แƒ.

แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ”แƒ‘แƒก (แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒฃแƒšแƒ˜แƒ แƒ›แƒ”แƒœแƒ”แƒฏแƒ›แƒ”แƒœแƒขแƒ˜แƒก แƒ“แƒแƒœแƒ”แƒ–แƒ”) แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ’แƒแƒ“แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒแƒฆแƒฌแƒ”แƒ แƒก Match-Action แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒก

แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜ แƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ:

  • แƒ–แƒฃแƒกแƒขแƒ˜ แƒ›แƒแƒขแƒฉแƒ˜
  • แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ’แƒ แƒซแƒ”แƒšแƒ˜ แƒžแƒ แƒ”แƒคแƒ˜แƒฅแƒกแƒ˜แƒก แƒ“แƒแƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ (LPM)
  • แƒกแƒแƒ›แƒ›แƒแƒ’แƒ˜ แƒจแƒ”แƒกแƒแƒขแƒงแƒ•แƒ˜แƒกแƒ˜ (แƒœแƒ˜แƒฆแƒ‘แƒ•แƒ)

table ipv4_lpm{
    reads{
        ipv4.dstAddr: lpm;
    } actions {
        forward();
    }
}

แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ แƒฌแƒ˜แƒœแƒแƒกแƒฌแƒแƒ  แƒฃแƒœแƒ“แƒ แƒ’แƒแƒœแƒ˜แƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒจแƒ˜.

แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ“แƒ’แƒ”แƒ‘แƒ แƒ™แƒแƒ“แƒ˜แƒกแƒ แƒ“แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ. แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ›แƒแƒ“แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒ“แƒแƒœแƒ˜แƒ“แƒแƒœ (แƒ›แƒแƒ’. IP แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒ˜/แƒžแƒแƒ แƒขแƒ˜แƒก แƒœแƒแƒ›แƒ แƒ”แƒ‘แƒ˜). แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜, แƒ›แƒแƒ แƒงแƒฃแƒŸแƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” แƒžแƒ แƒ˜แƒ›แƒ˜แƒขแƒ˜แƒ•แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒ˜แƒงแƒแƒก แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒแƒจแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒžแƒ แƒแƒ’แƒœแƒแƒ–แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒ˜. แƒแƒ›แƒ แƒ˜แƒ’แƒแƒ“, แƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒแƒ  แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒ“แƒ”แƒก แƒ แƒแƒ˜แƒ›แƒ” แƒชแƒ˜แƒ™แƒšแƒก แƒแƒœ แƒžแƒ˜แƒ แƒแƒ‘แƒ˜แƒ— แƒ’แƒแƒœแƒชแƒฎแƒแƒ“แƒ”แƒ‘แƒ”แƒ‘แƒก.

action ipv4_forward(macAddr_t dstAddr, egressSpec_t port){
    standard_metadata.egress_spec = port;
    hdr.ethernet.srcAddr = hdr.ethernet.dstAddr;
    hdr.ethernet.dstAddr = dstAddr;
    hdr.ipv4.ttl = hdr.ipv4.ttl - 1;
}

Match-Action แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜ โ€” แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒกแƒแƒซแƒ˜แƒ”แƒ‘แƒ แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“, แƒชแƒฎแƒ แƒ˜แƒšแƒ˜แƒก แƒซแƒ˜แƒ”แƒ‘แƒ, แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ.

แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒขแƒ˜แƒžแƒ˜แƒฃแƒ แƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ แƒกแƒฃแƒ แƒแƒ—แƒ–แƒ”:

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

แƒœแƒแƒ™แƒแƒ“แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜ โ€” แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒ”แƒ‘แƒก แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒ˜แƒ—, แƒ แƒแƒ›แƒšแƒ˜แƒ—แƒแƒช แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ Match-Action แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜. แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ˜แƒ›แƒžแƒ”แƒ แƒแƒขแƒ˜แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒ•แƒก แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ“แƒแƒœแƒ˜แƒก แƒšแƒแƒ’แƒ˜แƒ™แƒแƒก แƒ“แƒ Match-Action แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒแƒ‘แƒแƒก. แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜แƒก แƒœแƒแƒ™แƒแƒ“แƒ˜ แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒก แƒงแƒ•แƒ”แƒšแƒ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒก แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜แƒก แƒ“แƒแƒœแƒ˜แƒก แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒ˜แƒ—.

แƒ’แƒแƒ แƒ” แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜ แƒแƒ แƒ˜แƒก แƒ™แƒแƒœแƒ™แƒ แƒ”แƒขแƒฃแƒšแƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜ แƒ›แƒ™แƒแƒคแƒ˜แƒแƒ“ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒฃแƒšแƒ˜ แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒ˜แƒ— แƒ“แƒ API แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ˜แƒ—. แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒกแƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒฏแƒแƒ›แƒ˜แƒก แƒ’แƒแƒแƒœแƒ’แƒแƒ แƒ˜แƒจแƒ”แƒ‘แƒ, แƒ แƒ”แƒ’แƒ˜แƒกแƒขแƒ แƒ”แƒ‘แƒ˜, แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜, แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ.แƒจ.

extern register{
    register(bit<32> size);
    void read(out T result, in bit<32> index);
    void write(in bit<32> index, in T value);
}

extern Checksum16{
  Checksum16();    //constructor
  void clear();    //prepare unit for computation
  void update(in T data);    //add data to checksum
  void remove(in T data);  /remove data from existing checksum
  bit<16> get(); //get the checksum for the data added since last clear
}

แƒ›แƒ”แƒขแƒแƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ - แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒžแƒแƒ™แƒ”แƒขแƒ—แƒแƒœ.

แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ›แƒ”แƒขแƒแƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก 2 แƒขแƒ˜แƒžแƒ˜:

  แƒ›แƒแƒ แƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒ”แƒขแƒแƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ (แƒชแƒแƒ แƒ˜แƒ”แƒšแƒ˜ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ แƒงแƒ•แƒ”แƒšแƒ แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก)
    แƒ แƒแƒช แƒ’แƒ˜แƒœแƒ“แƒ แƒแƒฅ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒ แƒ“แƒแƒ“แƒ
    แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ แƒ›แƒ—แƒ”แƒš แƒ›แƒ˜แƒšแƒกแƒแƒ“แƒ”แƒœแƒ–แƒ”
    แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒกแƒแƒ™แƒฃแƒ—แƒแƒ แƒ˜ แƒ›แƒ˜แƒ–แƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒฐแƒ”แƒจแƒ˜แƒก แƒจแƒ”แƒกแƒแƒœแƒแƒฎแƒแƒ“

  แƒจแƒ˜แƒ“แƒ แƒ›แƒ”แƒขแƒแƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ - แƒ›แƒแƒฌแƒแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒ˜แƒ—
    แƒจแƒ”แƒงแƒ•แƒแƒœแƒ˜แƒก แƒžแƒแƒ แƒขแƒ˜, แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒžแƒแƒ แƒขแƒ˜ แƒ’แƒแƒœแƒ˜แƒกแƒแƒ–แƒฆแƒ•แƒ แƒ”แƒ‘แƒ แƒแƒฅ
    แƒ“แƒ แƒแƒ˜แƒก แƒจแƒขแƒแƒ›แƒžแƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒžแƒแƒ™แƒ”แƒขแƒ˜ แƒ˜แƒ“แƒ’แƒ แƒ แƒ˜แƒ’แƒจแƒ˜, แƒ แƒ˜แƒ’แƒ˜แƒก แƒกแƒ˜แƒฆแƒ แƒ›แƒ”
    multicast แƒฐแƒ”แƒจแƒ˜ / multicast queue
    แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒžแƒ แƒ˜แƒแƒ แƒ˜แƒขแƒ”แƒขแƒ˜, แƒžแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ
    แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒžแƒแƒ แƒขแƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒคแƒ˜แƒ™แƒแƒชแƒ˜แƒ (แƒ›แƒแƒ’. แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒ แƒ˜แƒ’แƒ˜)

P4 แƒจแƒ”แƒ›แƒ“แƒ’แƒ”แƒœแƒ”แƒšแƒ˜

P4 แƒจแƒ”แƒ›แƒ“แƒ’แƒ”แƒœแƒ”แƒšแƒ˜ (P4C) แƒฅแƒ›แƒœแƒ˜แƒก:

  1. แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒกแƒ˜แƒ‘แƒ แƒขแƒงแƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ
  2. API แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒกแƒ˜แƒ‘แƒ แƒขแƒงแƒ”แƒจแƒ˜

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒšแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ P4 แƒ”แƒœแƒแƒ–แƒ”

แƒฌแƒงแƒแƒ แƒแƒก แƒ™แƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒกแƒแƒชแƒแƒ•แƒ˜แƒ“แƒแƒœ.

p4lang/p4c-bm: แƒฅแƒ›แƒœแƒ˜แƒก JSON แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒแƒก bmv2-แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก
p4lang/bmv2: แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ”แƒกแƒ›แƒ˜แƒก bmv2 แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒก JSON แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜

แƒกแƒฃแƒ แƒแƒ—แƒ–แƒ” แƒœแƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒจแƒ”แƒ“แƒ’แƒ”แƒœแƒ˜แƒก แƒกแƒฅแƒ”แƒ›แƒ:

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

แƒ›แƒแƒœแƒ˜แƒžแƒฃแƒšแƒแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜แƒ—, แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก แƒ แƒ”แƒ’แƒ˜แƒกแƒขแƒ แƒ”แƒ‘แƒ˜แƒ—, แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒ—:

  • table_set_default <table name> <action name> <action parameters>
  • table_add <table name> <action name> <match fields> => <action
    parameters> [priority]
  • table_delete <table name> <entry handle>


แƒฌแƒงแƒแƒ แƒแƒก แƒ™แƒแƒ“แƒ˜ แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก simple_switch_CLI แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒแƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒ’แƒแƒ“แƒแƒ›แƒ แƒ—แƒ•แƒ”แƒšแƒ˜ API-แƒ˜แƒก แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ— แƒ”แƒก แƒ“แƒ แƒกแƒฎแƒ•แƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜ แƒกแƒแƒชแƒแƒ•แƒ˜แƒ“แƒแƒœ.

P4 แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ”แƒœแƒ

PS แƒแƒ› แƒ–แƒแƒคแƒฎแƒฃแƒšแƒ˜แƒก แƒ“แƒแƒกแƒแƒฌแƒงแƒ˜แƒกแƒจแƒ˜ Intel-แƒ›แƒ แƒฎแƒ”แƒšแƒ˜ แƒ›แƒแƒแƒฌแƒ”แƒ แƒ แƒจแƒ”แƒ—แƒแƒœแƒฎแƒ›แƒ”แƒ‘แƒแƒก Barefoot Networks-แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒ”แƒœแƒแƒ“, แƒ แƒแƒ—แƒ แƒกแƒฌแƒ แƒแƒคแƒแƒ“ แƒ“แƒแƒแƒ™แƒ›แƒแƒงแƒแƒคแƒ˜แƒšแƒแƒก Hyperscale Cloud แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ”แƒ‘แƒ˜. แƒ แƒแƒ’แƒแƒ แƒช แƒœแƒแƒ•แƒ˜แƒœ แƒจแƒ”แƒœแƒแƒ˜แƒ› (Intel Corporation-แƒ˜แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒชแƒ”แƒœแƒขแƒ แƒ˜แƒก แƒแƒฆแƒ›แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ•แƒ˜แƒชแƒ”-แƒžแƒ แƒ”แƒ–แƒ˜แƒ“แƒ”แƒœแƒขแƒ˜ แƒ“แƒ แƒ’แƒ”แƒœแƒ”แƒ แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒ˜) แƒ—แƒฅแƒ•แƒ, แƒ”แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ›แƒ˜แƒกแƒชแƒ”แƒ›แƒก Intel-แƒก แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒก แƒฃแƒคแƒ แƒ แƒ“แƒ˜แƒ“แƒ˜ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ แƒ“แƒ แƒ›แƒ”แƒขแƒ˜ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒชแƒ”แƒœแƒขแƒ แƒ˜แƒก แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒฉแƒ”แƒ›แƒ˜ แƒžแƒ˜แƒ แƒแƒ“แƒ˜ แƒแƒ–แƒ แƒ˜แƒ—, แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ“แƒแƒ’แƒ•แƒแƒ•แƒ˜แƒฌแƒงแƒ“แƒ”แƒก, แƒ แƒแƒ› Intel แƒแƒ แƒ˜แƒก แƒšแƒ˜แƒ“แƒ”แƒ แƒ˜ FPGA แƒฉแƒ˜แƒžแƒ”แƒ‘แƒ˜แƒก แƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒแƒจแƒ˜ แƒ“แƒ แƒแƒฅแƒ•แƒก แƒจแƒ”แƒกแƒแƒœแƒ˜แƒจแƒœแƒแƒ•แƒ˜ Quartus แƒ’แƒแƒ แƒ”แƒ›แƒ. แƒ”แƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก, แƒ แƒแƒ› แƒฉแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒ•แƒ”แƒšแƒแƒ“แƒแƒ—, แƒ แƒแƒ› Intel-แƒ˜แƒก แƒ›แƒแƒกแƒ•แƒšแƒแƒกแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒแƒ“, Barefoot แƒแƒ แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ’แƒแƒแƒคแƒแƒ แƒ—แƒแƒ•แƒ”แƒ‘แƒก แƒžแƒ แƒแƒ“แƒฃแƒฅแƒชแƒ˜แƒ˜แƒก แƒฎแƒแƒ–แƒก, แƒแƒ แƒแƒ›แƒ”แƒ“ Quartus แƒ“แƒ P4 Studio แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ”แƒœ แƒกแƒ”แƒ แƒ˜แƒแƒ–แƒฃแƒš แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ”แƒ‘แƒก แƒ“แƒ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ”แƒ‘แƒก Toffino แƒ“แƒ Toffino 2 แƒฎแƒแƒ–แƒ”แƒ‘แƒจแƒ˜.

P4 แƒกแƒแƒ–แƒแƒ’แƒแƒ“แƒแƒ”แƒ‘แƒ˜แƒก แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒฌแƒ”แƒ•แƒ แƒ˜ - แƒ™แƒแƒ›แƒžแƒแƒœแƒ˜แƒ แƒคแƒแƒฅแƒขแƒแƒ แƒ”แƒ‘แƒ˜แƒก แƒฏแƒ’แƒฃแƒคแƒ˜.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ