280 likes | 498 Views
Introduction to PPP . Sharon Katz. Early 80`s: PC users begin to communicate through file transfer protocols: X-Modem Y-Modem Z-Modem. Asymetric protocols. History. Dial-up file transfer protocol. Dial-up networking. In the unix world TCP/IP vs. file transfer protocols
E N D
Introduction to PPP Sharon Katz
Early 80`s: PC users begin to communicate through file transfer protocols: • X-Modem • Y-Modem • Z-Modem Asymetric protocols History • Dial-up file transfer protocol • Dial-up networking • In the unix world TCP/IP vs. file transfer protocols • Telecommunication technologies: • Local networks: 3MB and 10MB ethernets. • Distance communication: Leased lines Primitive dial-up modems
History • Using dial-up modems for packet-oriented-networking (I.e connecting to the internet) requires a data-link layer protocol • widely-spread protocols: • SLIP • PPP
SLIP - Serial Line Internet Protocol • Defined in the early 80`s • Purpose extending TCP/IP networking with dial-up serial connection • Users unix users at the beginning and PC users later • Advantages • Very simple protocol • Easy implementation
SLIP - Serial Line Internet Protocol • Disadvantages • Does not support error detction and correction • Supports only IP (and not IPX/SPX etc`) • Requires advance knowledge of the peer`s IP address • Is not approved internet standard • Does not provide any form of authentication
PPP – design principles • Support multiple network protocols • Link configuration • Error detection • Establishing network addresses • Authentication • Extensibility
PPP – a layered protocol • PPP relies on another DLP –HDLC– to perform some basic operations • After the initial handshake, PPP executes its own handshake • PPP itself consists of two protocols: • LCP– Link Control Protocol • NCP– Network Control Protocol
HDLC • Definition • High-level Data Link Control, Bit-oriented link protocol published by ISO • foundation for other protocols (examples ) • Operations • 1ststage – frame formation • 2nd stage – medium-dependant frame transmission
address control information check HDLC frame HDLC – frame format • 3 variable-length fields • Address – intended for multidrop links • Control –specifies the type of message transmitted • Information –content transferred by the top level application • 1 fixed-length field • Check
PPP state machine • Establishing PPP communication requires transitioning a connection through several states • Some of these operations are done by LCP and some by NCP
PPP state machine fail Dead Establish up opened down fail terminate Authenticate Success / None closing Network
PPP frame PPP – frame format • Protocol type of information in data/padding field (I.e: IP, IPCP, LCP, CHAP etc`) • Data/Padding data for the upper layer protocols or PPP control packets flag addr control protocol data padding check
LCP • Purposes • Link establishment • Link maintenance • Link termination • Optional operations • Link quality determination • Authentication
LCP - packets • There are 3 classes of LCP packets: • Link configuration configure-request, configure-ack, configure-nak & configure-reject • Link termination terminate-request & terminate-ack • Link monitoring code-reject, protocol-reject, echo-request, echo-reply & discard-request
PPP frame code ID length Data PPP frame LCP – packet format • Code –type of LCP packet (configure-ack etc`) • ID –request-response matching ID • Length –of the LCP packet • Data –the LCP packet
LCP Options • MRU determination • Magic number selection • Authentication Protocol • Escaped characters map
NCP • Purpose Configuring the network layer protocol. There exists a separate NCP for each network layer protocol • Negotiation process Same message formats, code numbers and state machines as LCP
IPCP –IP Control Protocol • Purpose • TCP/IP matching NCP • Establishes, configures and terminates the TCP/IP network layer protocol • Options • IP-Compression protocol – I.e Van-Jacobson (VJ) compressed TCP/IP • IP address – allows dynamic IP configuration • DNS & NBNS address
PPP frame 0x7E 0xFF 0x03 0x8021 data check (protocol) Code ID length IPCP data IPCP – packet format
PPP – unsupported options • Flow control Any PPP frame sent that overflows the receiver's buffer are lost • Error correction PPP includes only Frame Check Sequence (CRC) • Re-sequencing PPP assumes all frames, sent and received, retain their original intended order
Tunneling & PPP • Tunneling - definition The process of running one network protocol on top of another. Common use: VPN (Virtual Private Network) • Tunneling method Extending the link between the HDLC driver and the rest of PPP over a separate network • PPP tunneling protocols L2TP, L2F, PPTP & ethernet (PPPoE)
THE MIDDLE Next: PPP security
End-user application Port and traffic management Forwarding and route discovery Data link operations (???) Media, clocking and synchronization Internet layered architechture
Data link protocol Defintion manages node-to-node transfer of data between two directly connected machines. Operations • Error detection and correction (depends on the protocol) • Addressing (in LANs) • Frame-level synchronization between sender and receiver • Flow control • Maintaining awareness of link conditions
HDLC`s family HDLC LAPM (v. 42) LAPB (x. 25) LAPD (ISDN) LLC (LANs) SDLC (SNA) LAPX (teletex) ESF (T1) MTP-2 (SS7) LAPDm (GSM) LAPF (frame-relay) PPP (many)
PPP – a layered protocol PPP Data Link
PPP – design principles • Support multiple network protocols Not limited to the internet and other TCP/IP networks, I.e: IPX/SPX and IPv6 • Link configuration Includes nagotiation mechanisms for establishing communication parameters betweens two PPP peers • Error detection Detects datagrams corruption upon reception and discards such corrupted data • Establishing network addresses Sets network addresses necessary for the datagrams routing • Authentication Supports authentication between peers before useful communication begins • Extansibility Yet, maintains backward compatibility