2010年8月25日 星期三

PPP protocol related

PPP (Point to Point Protocol)
* Can use to establish a direct connection between two network nodes
* This is a method for encapsulating multible protocol datagrams.

* It can provide connection authentication, transmission encryption privacy, and compression.
* A data link layer protocol

Q. How to setup a PPP connection?
- First of all, the Link Control Protocol (LCP) must be used to establish communications over a PPP link. Each link end sends LCP packets to configure, and test the data link connection. Subsequently, when the link is established, the peer may be verified by authentication.
- Once the link has been made, a Network Control Protocol (NCP) is used to establish and configure one or more network layer protocols that will be used for the link. Then datagrams from those network-layer protocols can then be sent over the link connection. The link will continue until closed.


* It is designed to supersede the Serial Line Internet Protocol (SLIP) and telephone company mandated standards (such as Link Access Protocol, Balanced (LAPB) in the X.25 protocol suite).
* It is designed to be conformable with other network layer protocols, including Internet Protocol (IP), Novell's Internetwork Packet Exchange (IPX), NBF and AppleTalk.

Q. Why does the EtherType contain PPP, 0x880B? Is PPP possible over Ethernet individually?

A Typical PPPoE Session flow



PPPoE packet format













PPPoE (Point to Point Protocol over Ethernet)
action flow as following steps
1. PPPoE client and PPPoE server interact with a series of packets include PADI/PADO/PADR/PADS. While the PPPoE client receive the PADS packet. PPPoE client will get the PPP session ID.
2. By using the received session ID. PPPoE client can start the PPP negotiation with the PPPoE server
3. After finished the ppp negotiation steps (about 20 ~ 30 packets). We get a ppp session.
4. Now we can process the application onto the ppp session.
5. While we finished the application executions. We can tear down the ppp session by sending PPP session-terminate request.



* Refer the following link
http://fengnet.com/book/VPNs%20Illustrated%20Tunnels%20%20VPNsand%20IPsec/ch04lev1sec3.html
* It is mainly used by telephone companies. Client side user can "dial" to the server side router and gather a group of address for the following usage.
* The PPPoE has two distinct stages:
- PPPoE Discovery stage
a. Find the destination MAC address
b. Find the available session ID for the further usage
- PPP session stage

* EtherType define the PPPoE include the following value:
0x8863 PPPoE, PPP Over Ethernet (Discovery Stage).
0x8864 PPPoE, PPP Over Ethernet (PPP Session Stage).

沒有留言: