Navigation Back up to About Overview

Related Documentation


Port Control Protocol Overview

The Port Control Protocol (PCP) provides a mechanism to control the forwarding of incoming packets by upstream devices such as NAT44, and firewall devices, and a mechanism to reduce application keep-alive traffic. PCP is designed to be implemented in the context of both Carrier-Grade NATs (CGNs) and small NATs (for example, residential NATs). PCP allows hosts to operate servers for a long time (as in the case of a webcam) or a short time (for example, while playing a game or on a phone call) when behind a NAT device, including when behind a CGN operated by their Internet service provider. PCP allows applications to create mappings from an external IP address and port to an internal IP address and port. These mappings are required for successful inbound communications destined to machines located behind a NAT or a firewall. After creating a mapping for incoming connections, it is necessary to inform remote computers about the IP address and port for the incoming connection. This is usually done in an application-specific manner.

PCP consists of the following components:

  • PCP client—A host or gateway that issues PCP requests to a PCP server in order to obtain and control resources.
  • PCP server—Typically a CGN gateway or co-located server that receives and processes PCP requests

Many NAT-friendly applications send frequent application-level messages to ensure their session are not be timed out by a NAT. These applications can reduce the frequency of such NAT keep-alive messages by using PCP to learn and influence the NAT mapping lifetime. This helps reduce bandwidth on the subscriber's access network, traffic to the server, and battery consumption on mobile devices.

The Junos OS enables configuring PCP servers for mapping flows using NAPT44 capablilites such as port forwarding and port block allocation. Flows can be processed from these sources:

  • Traffic containing PCP requests received directly from UEs as shown in Figure 1.

    Figure 1: Basic PCP NAPT44 Topology

    Basic PCP NAPT44 Topology
  • Mapping of traffic containing PCP requests added by a router functioning as a DS-Lite softwire initiator (B4). This mode, known as DS-Lite plain mode, is show in Figure 2

    Figure 2: PCP with DS-Lite Plain Mode

    PCP with DS-Lite Plain Mode
  • Mapping of traffic containing PCP requests initiated by directly by UEs and encapsulated by a router functioning as a DS-Lite softwire initiator (B4). This mode, known as DS-Lite tunnel mode, is shown in Figure 3.

    Figure 3: PCP with DS-Lite Tunnel Mode

    PCP with DS-Lite Tunnel Mode

Note: The Junos OS does not support deterministic port block allocation for PCP-originated traffic.


Related Documentation


Published: 2013-12-09