# Point-to-Point Protocol

Point-to-point Protocol (en català Protocol punt a punt), també conegut pel seu acrònim PPP, és un protocol de nivell d'enllaç estandarditzat en el document RFC 1661. Per tant, es tracta d'un protocol associat a la pila TCP/IP d'ús en Internet.

## Descripció

El PPP permet establir una comunicació a nivell de la capa d'enllaç TCP/IP entre dos ordinadors. Generalment, s'utilitza per establir la connexió a Internet d'un particular amb el seu proveïdor d'accés a través d'un mòdem telefònic. Ocasionalment també és utilitzat sobre connexions de banda ampla (com PPPoE o PPPoA). A més del simple transport de dades, PPP facilita dues funcions importants:
* Autenticació. Generalment mitjançant una clau d'accés.
* Assignació dinàmica d'IP. Els proveïdors d'accés tenen un nombre limitat d'adreces IP i compten amb més clients que adreces. Naturalment, no tots els clients es connecten a la vegada. Així, és possible assignar una adreça IP a cada client en el moment en què es connecten al proveïdor. L'adreça IP es conserva fins que acaba la connexió per PPP. Posteriorment, pot ser assignada a un altre client.
PPP també té altres usos, per exemple, s'utilitza per establir la comunicació entre un mòdem ADSL i la passarel·la ATM de l'operador de telecomunicacions.
També s'ha utilitzat per connectar a treballadors desplaçats (p. ex. ordinador portàtil) amb les seves oficines a través d'un centre d'accés remot de la seva empresa. Encara que està aplicació s'està abandonant en favor de les xarxes privades virtuals, més segures.

## Funcionament

PPP consta de les següents fases:
* Establiment de connexió. Durant aquesta fase, un ordinador contacta amb l'altra i negocien els paràmetres relatius a l'enllaç usant el protocol LCP. Aquest protocol és una part fonamental de PPP i per això està definit en el mateix document RFC. Usant LCP es negocia el mètode d'autenticació que s'utilitzarà, la mida dels datagrames, nombres màgics per utilitzar durant l'autenticació, ...
* Autenticació. No és obligatori. Hi ha dos protocols d'autenticació. El més bàsic i insegur és PAP, encara que no es recomana, ja que mana el nom d'usuari i la contrasenya en clar. Un mètode més avançat i preferit per molts ISPs és CHAP, en el qual la contrasenya s'envia xifrada.
* Configuració de xarxa. En aquesta fase es negocien paràmetres dependents del protocol de xarxa que s'estigui utilitzant. PPP pot portar molts protocols de xarxa al mateix temps i és necessari configurar individualment cada un d'aquests protocols. Per configurar un protocol de xarxa s'usa el protocol NCP corresponent. Per exemple, si la xarxa és IP, s'usa el protocol IPCP per assignar l'adreça IP del client i els seus servidors DNS.
* Transmissió. Durant aquesta fase es mana i rep la informació de xarxa. LCP s'encarrega de comprovar que la línia està activa durant períodes d'inactivitat. Observeu que PPP no proporciona xifrat de dades.
* Terminació. La connexió pot ser finalitzada en qualsevol moment i per qualsevol motiu.
PPP té totes les propietats d'un protocol de nivell d'enllaç:
* Garantia de recepció.
* Recepció ordenada
* Ús del port 53 per connexió bidireccional de sockets.
* Usat en els balancejadors de càrrega (Load Balanç LB) com protocol de distribució.

## PPP versus SLIP

El protocol SLIP compleix la mateixa funció que PPP, però es tracta d'un protocol molt més antiquat. Els avantatges de PPP sobre SLIP són:
* Permet la connexió tant mitjançant línies síncrones com asíncrones.
* Permet l'assignació dinàmica d'adreces IP en ambdós extrems de la línia.
* Permet el transport de diversos protocols de xarxa sobre ell (SLIP només permet IP).
* Implementa un mecanisme de control de xarxa NCP.
El PPP es pot utilitzar també per crear Xarxa privada virtual (XPV - [VPN], Virtual Private Networks en anglès tant xifrades com no xifrades, però si es desitja xifrat, s'ha d'implementar per sota de PPP.

## Ordres configuració PPP

El protocol ppp es configura amb els següents comandaments en cisco:
* Router (config-if) #encapptulation ppp
* Router (config-if) #ppp authentication pap
* Router (config-if) #ppp authentication chap
Ordres de verificació:
* Router # show interface
* Router # debug ppp authentication
* Router # undebug ppp authentication (eliminar depuració de ppp)

## Vegeu també

* Protocol
* Xarxa punt a punt
* Xarxa privada virtual