پروتکل کنترل پورت (به انگلیسی: port control protocol) یا به صورت مخفف (PCP) یک پروتکل در شبکه رایانه ای است که به میزبان های موجود در شبکه های IPv6 و IPv4 اجازه می دهد تا نحوه ترجمه و ارسال پاکت های دریافتی IPv4 و IPv6 به وسیله یک روتر بالادست که کار ترجمه آدرس شبکه و یا نقش دیوار آتش را انجام می دهد، کنترل کنند. به وسیله اجازه دادن به میزبان ها برای تولید قوانین صریح پورت فورواردینگ، رسیدگی به ترافیک شبکه می تواند به آسانی پیکربندی شود تا میزبان های موجود در پشت NAT ها یا دیوارهای آتش به سادگی از باقی اینترنت قابل دسترسی باشند(پس به عنوان سرور نیز می توانند مورد استفاده قرار بگیرند)؛ که این مسئله ضرورتی برای بسیاری از اپلیکیشن ها است.[۱][۲]
به علاوه، قواعد صریح پورت فوروادینگ که به وسیله PCP موجود است به کمک حذف راه حل هایی که به فرم پیام های ارسالی نگهدارنده NAT می باشد و برای نگهداری ارتباط با سرور و بسیاری از تکنیک های پیمایش NAT مثل TCP hole punching لازم است، به میزبان ها در کاهش ترافیک تولیدی کمک می کند. در این حین کاهش ترافیک تولیدی مصرف انرژی را کاهش میدهد که مستقیما باعث بهبود عمر باتری برای دستگاه های همراه میشود.[۱]
پروتکل کنترل پورت در سال 2013 به عنوان جانشین پروتکل NAT port mapping(NAT-PMP) شد که با آن فرمت های پاکت و کانسپت های پروتکل یکسانی دارد.[۳]
در محیط هایی که یک دستگاه UPnP IGD در شبکه محلی استفاده می شود لازم است که یک عملکرد متقابل بین UPnP IGD و PCP در IGD تعبیه شود. این عملکرد متقابل در RFC6970 مشخص شده است.[۴]
گزینه های (IPv4 و IPv6)DHCP برای پیکربندی میزبان ها با آدرس های ip سرور پروتکل کنترل پورت، در RFC7291 مشخص شده است.[۵]مراحل انتخاب یک سرور در لیستی از سرورهای PCP در RFC7488 بحث شده است.[۶]
در محیطی که NAT64 مستقر شده است PCP اجازه یافتن پیشوند(های) IPv6 استفاده شده به وسیله یک دستگاه NAT64 کنترل شده با PCP را می دهد تا آدرس های IPv6 تبدیل شده از IPv4 به وسیله NAT64(RFC7225) ساخته شود.[۷]
در ممانعت از هکرهایی که قادر به تغییر دادن پاکت هایی که در هنگام تولید یک نگاشت صریح PCP تولید می شوند(پاکت هایی که شامل عبارات لازم برای برقراری یک نگاشت صریح که بین مهمان و NAT های دارای PCP یا دیوار آتش است)، PCP تا وقتی امن هست که نگاشت صریح تولید شده از دامنه نگاشت های ضمنی فراتر نرود. به عبارت دیگر، نگاشت های صریح به عنوان نتیجه ای از نحوه رسیدگی NATها و دیوارهای آتش به اتصالات معمول خروجی به مهمان ها درست شده است، یعنی PCP تا وقتی امن است که امکان نگاشت تازه ای توسط مکانیسم نگاشت صریح معرفی نشود.[۳]