P4 پروگرامنگ زبان

P4 پروگرامنگ زبان
P4 ایک پروگرامنگ زبان ہے جو پیکٹ روٹنگ کے قواعد کو پروگرام کرنے کے لیے ڈیزائن کی گئی ہے۔ عام مقصد کی زبان جیسے کہ C یا Python کے برعکس، P4 ایک ڈومین کے لیے مخصوص زبان ہے جس کے متعدد ڈیزائن نیٹ ورک روٹنگ کے لیے موزوں ہیں۔

P4 ایک اوپن سورس لینگویج ہے جو P4 لینگویج کنسورشیم کہلانے والی ایک غیر منافع بخش تنظیم کے ذریعے لائسنس یافتہ اور دیکھ بھال کرتی ہے۔ اسے اوپن نیٹ ورکنگ فاؤنڈیشن (ONF) اور لینکس فاؤنڈیشن (LF) کی طرف سے بھی تعاون حاصل ہے، جو اوپن سورس نیٹ ورکنگ پروجیکٹس کے لیے سب سے بڑی چھتری تنظیموں میں سے دو ہیں۔
یہ زبان اصل میں 2013 میں بنائی گئی تھی اور اسے 2014 کے SIGCOMM CCR پیپر میں بیان کیا گیا تھا جس کا عنوان تھا "پروٹوکول انڈیپنڈنٹ، پیکٹ روٹنگ پروسیسر پروگرامنگ۔"

اپنے آغاز کے بعد سے، P4 تیزی سے بڑھتا اور تیار ہوا ہے، جو نیٹ ورک ڈیوائسز، بشمول نیٹ ورک اڈاپٹر، سوئچز اور راؤٹرز کے ذریعے پیکٹ کی ترسیل کو بیان کرنے کے لیے تیزی سے ایک معیار بن گیا ہے۔

اوپن نیٹ ورکنگ فاؤنڈیشن کے ایگزیکٹیو ڈائریکٹر گرو پارولکر نے کہا، "SDN نے نیٹ ورکنگ انڈسٹری کو تبدیل کر دیا ہے، اور P4 روٹنگ میں پروگرام کی اہلیت لا کر SDN کو اگلے درجے پر لے جاتا ہے۔"

P4 زبان کو اصل میں گوگل، انٹیل، مائیکروسافٹ ریسرچ، ننگے پاؤں، پرنسٹن اور سٹینفورڈ کے انجینئروں اور محققین کے ایک گروپ نے بنایا تھا۔ مقصد آسان تھا: استعمال میں آسان زبان بنائیں جسے ایک سافٹ ویئر ڈویلپر ایک دن میں سیکھ سکتا ہے اور اسے درست طریقے سے بیان کرنے کے لیے استعمال کرتا ہے کہ نیٹ ورکس پر پیکٹ کیسے بھیجے جاتے ہیں۔

شروع ہی سے، P4 کو ہدف سے آزاد ہونے کے لیے ڈیزائن کیا گیا تھا (یعنی P4 میں لکھا ہوا پروگرام مختلف اہداف جیسے ASICs، FPGAs، CPUs، NPUs، اور GPUs پر چلانے کے لیے بغیر کسی تبدیلی کے مرتب کیا جا سکتا ہے)۔

زبان بھی پروٹوکول سے آزاد ہے (یعنی، ایک P4 پروگرام موجودہ معیاری پروٹوکول کی وضاحت کر سکتا ہے یا نئے کسٹم ایڈریسنگ طریقوں کی وضاحت کے لیے استعمال کیا جا سکتا ہے)۔

صنعت میں، P4 ڈیوائس پروگرامنگ کے لیے استعمال ہوتا ہے۔ شاید مستقبل میں انٹرنیٹ-RFC اور IEEE معیارات میں P4 تفصیلات بھی شامل ہوں گی۔

P4 پروگرام کے قابل اور فکسڈ فنکشن ڈیوائسز دونوں کے لیے استعمال کیا جا سکتا ہے۔ مثال کے طور پر، اس کا استعمال سوئچ ایبسٹریکشن انٹرفیس (SAI) APIs میں سوئچ پائپ لائن کے رویے کو درست طریقے سے ریکارڈ کرنے کے لیے کیا جاتا ہے جو اوپن سورس SONiC سوئچ OS کے ذریعے استعمال ہوتا ہے۔ P4 کا استعمال ONF Stratum پروجیکٹ میں مختلف قسم کے فکسڈ اور قابل پروگرام آلات میں سوئچنگ کے رویے کو بیان کرنے کے لیے بھی کیا جاتا ہے۔

پہلی بار، سوئچ اور نیٹ ورک اڈاپٹر کے رویے کو بیان کرنے سے آپ کو تعیناتی سے پہلے پورے نیٹ ورک کا ایک درست قابل عمل ماڈل بنانے کی اجازت ملتی ہے۔ بڑے کلاؤڈ فراہم کرنے والے نیٹ ورک کو مکمل طور پر سافٹ ویئر کا استعمال کرتے ہوئے جانچ اور ڈیبگ کر سکتے ہیں، جس سے مہنگے ہارڈ ویئر کی ضرورت کے بغیر لیب میں انٹرآپریبلٹی ٹیسٹنگ کے وقت اور لاگت کو نمایاں طور پر کم کیا جا سکتا ہے۔

P4 کا استعمال کرتے ہوئے، نیٹ ورک کے سامان فروش تمام پروڈکٹس میں مشترکہ روٹنگ رویّے کی توقع کر سکتے ہیں، ٹیسٹ کے بنیادی ڈھانچے کے دوبارہ استعمال کی اجازت دیتے ہوئے، مینجمنٹ سوفٹ ویئر کی ترقی کو آسان بناتے ہوئے، اور بالآخر انٹرآپریبلٹی کو یقینی بنا سکتے ہیں۔

بلاشبہ، P4 ایسے پروگراموں کو لکھنے کے لیے استعمال کیا جا سکتا ہے جو روٹنگ کے بالکل نئے طریقے بیان کرتے ہیں۔ مثال کے طور پر، ڈیٹا سینٹرز، انٹرپرائز اور سروس فراہم کرنے والے نیٹ ورکس میں ٹیلی میٹری اور پیمائش کے لیے P4 بڑے پیمانے پر استعمال ہوتا ہے۔

ریسرچ کمیونٹی نے بھی قدم بڑھایا ہے۔ کئی سرکردہ اکیڈمک نیٹ ورکنگ ریسرچ گروپس نے P4 پروگراموں پر مبنی دلچسپ نئی ایپلی کیشنز شائع کی ہیں، بشمول لوڈ بیلنسنگ، متفقہ پروٹوکول، اور کلیدی ویلیو کیشنگ۔ پروگرامنگ کا ایک نیا نمونہ بنایا جا رہا ہے، جدت ہارڈ ویئر سے سافٹ ویئر کی طرف بڑھ رہی ہے، جس سے بہت سے غیر متوقع، نئے اور ذہین خیالات ابھر سکتے ہیں۔

ڈویلپر کمیونٹی نے کوڈ ڈیولپمنٹ میں اہم شراکت کی ہے، بشمول کمپائلرز، پائپ لائنز، رویے کے ماڈل، APIs، ٹیسٹ فریم ورک، ایپلی کیشنز، اور بہت کچھ۔ Alibaba, AT&T, Beefoot, 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 پروگراموں کو خود مختار عمل درآمد کرنے کے لیے ڈیزائن کیا گیا ہے، یعنی وہ بہت سے مختلف قسم کے ایگزیکیوشن انجنوں کے لیے مرتب کیے جا سکتے ہیں، جیسے کہ عام مقصد کے پروسیسرز، FPGAs، سسٹم آن چپس، نیٹ ورک پروسیسر، اور ASICs۔ یہ مختلف قسم کی مشینیں P4 اہداف کے نام سے جانی جاتی ہیں، اور ہر ہدف کو P4 سورس کوڈ کو ٹارگٹ سوئچ ماڈل میں تبدیل کرنے کے لیے ایک کمپائلر کی ضرورت ہوتی ہے۔ کمپائلر کو ٹارگٹ ڈیوائس، بیرونی سافٹ ویئر، یا یہاں تک کہ کلاؤڈ سروس میں بنایا جا سکتا ہے۔ چونکہ P4 پروگراموں کے بہت سے اصل اہداف سادہ پیکٹ سوئچنگ کے لیے تھے، اس لیے "P4 سوئچ" کی اصطلاح سننا بہت عام ہے حالانکہ "P4 ہدف" زیادہ درست ہے۔

استعمال شدہ پروٹوکول کی آزادی

P4 پروٹوکول سے آزاد ہے۔ اس کا مطلب یہ ہے کہ زبان کو عام پروٹوکول جیسے IP، Ethernet، TCP، VxLAN یا MPLS کے لیے مقامی حمایت حاصل نہیں ہے۔ اس کے بجائے، P4 پروگرامر پروگرام میں مطلوبہ پروٹوکولز کے ہیڈر فارمیٹس اور فیلڈ کے ناموں کی وضاحت کرتا ہے، جس کے نتیجے میں مرتب کردہ پروگرام اور ٹارگٹ ڈیوائس کے ذریعے تشریح اور کارروائی کی جاتی ہے۔

فیلڈ ری کنفیگرایبلٹی

پروٹوکول کی آزادی اور خلاصہ زبان کا ماڈل دوبارہ ترتیب دینے کی اجازت دیتا ہے — P4 اہداف کو سسٹم کے تعینات ہونے کے بعد پیکٹ پروسیسنگ کو تبدیل کرنے کے قابل ہونا چاہیے۔ یہ صلاحیت روایتی طور پر فکسڈ فنکشن انٹیگریٹڈ سرکٹس کے بجائے عام مقصد کے پروسیسرز یا نیٹ ورک پروسیسرز کے ذریعے روٹنگ کے ساتھ منسلک رہی ہے۔

اگرچہ زبان میں کوئی ایسی چیز نہیں ہے جو پروٹوکول کے ایک مخصوص سیٹ کی کارکردگی کو بہتر بنانے سے روکے، لیکن یہ اصلاحیں زبان کے مصنف کے لیے پوشیدہ ہیں اور بالآخر نظام اور اہداف کی لچک اور ان کی تشکیل نو کو کم کر سکتی ہیں۔

زبان کی یہ خصوصیات ابتدائی طور پر اس کے تخلیق کاروں نے نیٹ ورک کے بنیادی ڈھانچے میں اس کے وسیع استعمال پر توجہ مرکوز کرتے ہوئے رکھی تھیں۔

یہ زبان پہلے ہی بہت سی کمپنیوں میں استعمال ہو چکی ہے:

1) ہائپر اسکیل ڈیٹا سینٹرز؛

چینی کمپنی Tencent دنیا کی سب سے بڑی سرمایہ کاری کرنے والی کمپنی ہے اور سب سے بڑی وینچر کیپیٹل فرموں میں سے ایک ہے۔ Tencent کی ذیلی کمپنیاں، دونوں چین میں اور دنیا کے دیگر ممالک میں، ہائی ٹیک کاروبار کے مختلف شعبوں میں مہارت رکھتی ہیں، بشمول مختلف انٹرنیٹ خدمات، مصنوعی ذہانت اور الیکٹرانک تفریح ​​کے شعبے میں پیش رفت۔

P4 اور قابل پروگرام روٹنگ جدید ٹیکنالوجیز ہیں جو کمپنی کے نیٹ ورک فن تعمیر میں استعمال ہوتی ہیں۔

موجدوں میں سے ایک کے طور پر، گوگل کو نیٹ ورکنگ انڈسٹری اور خاص طور پر ڈیٹا سینٹر آرکیٹیکچرل ڈیزائن میں P4 کے تیزی سے اپنانے پر فخر ہے۔

2) تجارتی کمپنیاں؛

Goldman Sachs اوپن سورس کمیونٹی کے ساتھ کام کرنے اور نیٹ ورک انفراسٹرکچر کو جدید بنانے اور گاہکوں کے لیے بہتر حل فراہم کرنے کے لیے مشترکہ معیارات اور حل تیار کرنے کا فائدہ اٹھاتا ہے۔

3) پیداوار؛

پوری نیٹ ورکنگ انڈسٹری P4 جیسی زبان سے فائدہ اٹھائے گی جو فارورڈنگ رویے کی منفرد وضاحت کرتی ہے۔ سسکو اس زبان کو استعمال کرنے کے لیے اپنی مصنوعات کی لائنوں کو منتقل کرنے میں بھی یقین رکھتا ہے۔

Juniper Networks نے P4 اور P4 رن ٹائم کو متعدد مصنوعات میں شامل کیا ہے، اور جونیپر ایمبیڈڈ پروسیسر اور اس کے سافٹ ویئر کوڈ تک پروگرامی رسائی فراہم کرتا ہے۔

Ruijie Networks P4 کا مضبوط حامی ہے اور اس سے نیٹ ورکس کو ہونے والے فوائد۔ P4 کے ساتھ، کمپنی صارفین کی ایک وسیع رینج کو بہترین درجے کے حل تیار اور فراہم کر سکتی ہے۔

4) ٹیلی کمیونیکیشن فراہم کرنے والے؛

AT&T P4 کا ابتدائی اپنانے والا تھا، P4 کا استعمال کرنے والے پہلے لوگوں میں سے ایک تھا جس نے اپنے نیٹ ورکس میں اس طرز عمل کی وضاحت کرنے کے لیے جو وہ دیکھنا چاہتا تھا، اور اپنے نیٹ ورک پر P4 قابل پروگرام فارورڈنگ ڈیوائسز کا استعمال کیا۔

ڈوئچے ٹیلی کام میں، زبان کو ایکسیس 4.0 پروگرام کے حصے کے طور پر کلیدی نیٹ ورک کے افعال کو پروٹو ٹائپ کرنے کے لیے استعمال کیا جاتا ہے۔

5) سیمی کنڈکٹر انڈسٹری؛

اس زبان نے ننگے پاؤں کو نیٹ ورک روٹنگ طیارے میں سافٹ ویئر کی صلاحیتوں کی فراہمی کے لیے ایک نیا نمونہ نافذ کرنے کے قابل بنایا۔

Xilinx P4.org کے بانیوں میں سے ایک تھا اور اس نے P4 زبان کی ترقی میں فعال طور پر حصہ لیا اور اسے FPGA پر مبنی پروگرام قابل پلیٹ فارمز میں SmartNIC اور NFV ہارڈ ویئر کے لیے لاگو کیا، SDNet ڈیزائن کے حصے کے طور پر پہلے P416 مرتب کرنے والوں میں سے ایک کو جاری کیا۔

6) سافٹ ویئر۔

VMware کا خیال ہے کہ P4 زبردست توانائی، اختراعات اور کمیونٹی تخلیق کرتا ہے جو نیٹ ورک میں بامعنی اور ضروری تبدیلی لا رہا ہے۔ VMware شروع سے ہی اس صنعت کی تحریک کا حصہ رہا ہے، کیونکہ جدت کی ایک نئی لہر سافٹ ویئر پر مبنی طریقوں سے چلتی ہے جو بنیادی ڈھانچے کی صلاحیتوں کو بڑھاتی ہے اور اسے جدید ترین مصنوعات میں نافذ کرتی ہے۔

اس طرح، P4 ایک ہدف سے آزاد اور پروٹوکول سے آزاد پروگرامنگ لینگویج ہے جو صنعت اور اکیڈمیا کے ذریعے پیکٹ روٹنگ کے رویے کو ایک پروگرام کے طور پر منفرد طور پر بیان کرنے کے لیے استعمال کیا جاتا ہے، جس کے نتیجے میں متعدد اہداف کے لیے مرتب کیا جا سکتا ہے۔ آج، اہداف میں ہارڈ ویئر اور سافٹ ویئر سوئچز، ہائپر وائزر سوئچز، NPUs، GPUs، FPGAs، SmartNICs اور ASICs شامل ہیں۔

زبان کی اہم خصوصیات اس کے اطلاق کے دائرہ کار کو نمایاں طور پر وسیع کرتی ہیں اور نیٹ ورک کے فن تعمیر میں اس کے تیزی سے نفاذ کو یقینی بناتی ہیں۔

شروع کریں

P4 ایک کھلا منصوبہ ہے، تمام متعلقہ معلومات ویب سائٹ پر موجود ہیں۔ P4.org

مخزن کا لنک https://github.com/p4lang، جہاں آپ مثال کے ذریعہ کوڈ اور سبق حاصل کرسکتے ہیں۔

Плагин P4 سپورٹ کے ساتھ Eclipse کے لیے، لیکن ہم تجویز کر سکتے ہیں۔ پی 4 اسٹوڈیو ننگے پاؤں سے.

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;
        }
    }…
}

میزیں۔ - صارف کی چابیاں کو اعمال کے ساتھ جوڑنے والی مشین اسٹیٹس پر مشتمل ہے۔ سرگرمی - اس بات کی تفصیل کہ کس طرح پیکج میں ہیرا پھیری کی جانی چاہیے۔

جدولوں میں پیکٹ فارورڈنگ کے لیے ریاستیں (انتظامی سطح پر بیان کردہ) ہیں، میچ ایکشن یونٹ کی وضاحت کریں

پیکٹوں سے مماثل ہیں:

  • کامل مطابقت
  • لمبا پریفکس میچ (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;
}

میچ ایکشن ماڈیولز - تلاش کی کلید بنانے کے لیے کارروائیاں، ٹیبل میں تلاش کرنا، اعمال انجام دینا۔

ماڈیول کی ایک عام مثال تصویر میں دکھائی گئی ہے:

P4 پروگرامنگ زبان

کنٹرول بہاؤ - اس ترتیب کی نشاندہی کرتا ہے جس میں میچ ایکشن ماڈیولز استعمال کیے جاتے ہیں۔ یہ ایک لازمی پروگرام ہے جو اعلی سطحی منطق اور میچ ایکشن کی ترتیب کی وضاحت کرتا ہے۔ کنٹرول فلو کنٹرول کی سطح کی وضاحت کرکے تمام اشیاء کو جوڑتا ہے۔

بیرونی اشیاء واضح طور پر متعین فن تعمیر اور 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 قسمیں ہیں:

  حسب ضرورت میٹا ڈیٹا (تمام پیکجوں کے لیے خالی ڈھانچہ)
    آپ جو چاہیں یہاں رکھ سکتے ہیں۔
    پوری پائپ لائن میں دستیاب ہے۔
    آپ کے اپنے مقاصد کے لیے استعمال کے لیے آسان، مثال کے طور پر، پیکج ہیش کو ذخیرہ کرنے کے لیے

  اندرونی میٹا ڈیٹا - فن تعمیر کے ذریعہ فراہم کردہ
    ان پٹ پورٹ، آؤٹ پٹ پورٹ یہاں بیان کیے گئے ہیں۔
    ٹائم اسٹیمپ جب پیکٹ قطار میں تھا، قطار کی گہرائی
    ملٹی کاسٹ ہیش / ملٹی کاسٹ قطار
    پیکیج کی ترجیح، پیکیج کی اہمیت
    آؤٹ پٹ پورٹ کی تفصیلات (جیسے آؤٹ پٹ قطار)

P4 مرتب کرنے والا

P4 کمپائلر (P4C) پیدا کرتا ہے:

  1. ڈیٹا ہوائی جہاز کا رن ٹائم
  2. ڈیٹا ہوائی جہاز میں مشین کی حالت کے انتظام کے لیے API

P4 پروگرامنگ زبان

P4 زبان میں سافٹ ویئر سوئچ کی مثال

ماخذ کوڈز کو ذخیرہ سے ڈاؤن لوڈ کیا جا سکتا ہے۔

p4lang/p4c-bm: bmv2 کے لیے JSON کنفیگریشن بناتا ہے۔
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>


سورس کوڈ سافٹ ویئر سوئچ API کے آسان استعمال کے لیے simple_switch_CLI پروگرام پر مشتمل ہے۔

آپ اسے اور دیگر مثالیں ذخیرہ سے ڈاؤن لوڈ کر سکتے ہیں۔

P4 پروگرامنگ زبان

PS اس موسم گرما کے شروع میں، Intel نے Hyperscale Cloud کے صارفین کی ضروریات کو تیزی سے پورا کرنے کی کوشش میں Beefoot Networks کے حصول کے لیے ایک معاہدے پر دستخط کیے تھے۔ جیسا کہ نوین شینائے (انٹیل کارپوریشن میں ڈیٹا سینٹر گروپ کے ایگزیکٹو نائب صدر اور جنرل مینیجر) نے کہا، یہ انٹیل کو ڈیٹا سینٹر کے صارفین کے لیے زیادہ کام کا بوجھ اور مزید مواقع فراہم کرنے کی اجازت دے گا۔

میری ذاتی رائے میں، ہمیں یہ نہیں بھولنا چاہیے کہ انٹیل FPGA چپس کی تیاری میں ایک رہنما ہے اور اس کا کوارٹس کا بہترین ماحول ہے۔ اس کا مطلب ہے کہ ہم توقع کر سکتے ہیں کہ Intel کی آمد کے ساتھ، Barefoot نہ صرف اپنی پروڈکٹ لائن کو وسعت دے گا، بلکہ Quartus اور P4 Studio کو بھی Toffino اور Toffino 2 لائن میں سنجیدہ اپ ڈیٹس اور اضافے ملیں گے۔

P4 کمیونٹی کا آفیشل ممبر - کمپنی فیکٹر گروپ.

ماخذ: www.habr.com

نیا تبصرہ شامل کریں