data link layer

Download Report

Transcript data link layer

Lecture 03 - Roadmap
• WAN Basics
– Three Types of WAN Services
•
•
•
•
Introduction to Point-to-Point protocol (PPP)
Basic Components of PPP
Frame Formats of PPP
General Operation of PPP
1
Point-to-Point Links
• Introduction
– If two devices are directly connected to each other,
then they are said to be in point-to-point configuration
– Point-to-point protocol is a data link layer protocol
which is used to control the communication over such
links
2
Point-to-Point Link
3
An Overview of Wide-Area Services
Call Setup
(SS7 or other)
C
A
B
E
Time-Division Multiplexed Circuits
(56/64 kbps or T1/E1)
CO
Central Office
(CO)
Basic
Telephone
Service
X.25
X.25/Frame
/ Frame Relay
Networks
Networks
• A simplified look inside the WAN cloud
• The router also uses a WAN central office
Basic
Telephone
Service
WAN Basics
• Three Major types of WAN Services are:
– Leased Line
– Circuit Switching/dial lines
– Packet Switching
5
WAN Connection Types
Term
Description
Leased lines
A dedicated, always on circuit between two end points.
The service provider just passes a constant rate bit
stream. Generally is more expensive than packet
switching today
Circuit
switched/dial
Provide dedicated bandwidth between two points, but
only for the duration of the call. Typically used as a
cheaper alternative to leased lines, particularly when
connectivity is not needed all the time. Also useful for
backup when a leased line or packet-switched service
fails
Packetswitched
Provides virtual circuits between pairs of sites, with
contracted traffic rates for each VC. Each site’s physical
connectivity consists of a leased line from the site to a
device in the provider’s network. Generally cheaper
than leased lines.
6
PPP over the Internet
•
•
•
•
•
Today, million of Internet users who need to connect their home
PCs to the server of an ISP use PPP
The Internet needs a PPP for a variety of purposes, including
router-to-router traffic (leased line) and home-user to ISP (dialup) traffic.
Majority users have a traditional modem, DSL modem or a cable
modem which connects them to the Internet through a
Telephone line or a TV cable connection.
These lines provide a physical link, but to control and manage
the transfer of data, there is a need of PPP
For both connections, router-to-router (leased line connections)
and home-user to ISP (dial-up connections) some data link
protocol is required on the line for:
– Framing or encapsulation
– Error control
– and other data link layer functions
7
Data-Link Protocols for Point-to-Point
WAN Links
• Popular WAN data-link protocols
– Serial Line Internet Protocol (SLIP)
– High-Level Data Link Control (HDLC)
– Point-to-Point Protocol (PPP)
8
WAN Data-Link Protocols for Point-toPoint Links
Leased line
Circuit-switched
Packet-switched
9
Definition - PPP
• PPP is defined in RFC 1661 and further elaborated in
later RFCs.
• It originally emerged as an encapsulation protocol for
transporting IP traffic over point-to-point links
• PPP also established a standard for
– assigning and managing IP addresses
– asynchronous and synchronous encapsulation
– network protocol multiplexing
– link configuration & link quality testing
– error detection, option negotiation
10
PPP Components
• Main components of PPP include:
– Encapsulation/Framing
– Link Control Protocol (LCP)
– Network Control Protocol (NCP)
• These components help PPP to define the frame formats to
be exchanged, how the 2 devices will negotiate with each
other to establish a link and for exchanging the data, how
the link is configured and terminated.
11
1. Encapsulation
• It is a method for encapsulating datagrams of
network layer over serial links
• A framing mechanism defines the boundaries of
the start and end of the PPP frame
• It also helps in error detection
12
Encapsulation…
13
2. Link Control Protocol
• LCP is used to establish, configure and test the data link
connections
• Its main purpose is:
–
–
–
–
to bring the lines up
test them
negotiate options
and bringing them gracefully down again when they are no
longer needed
• It supports synchronous and asynchronous circuits
• LCP configuration options include:
– Maximum frame size or MTU (maximum transmission unit)
– Authentication protocol specifications (if any)
– Options to skip control and address fields of PPP frame
• PPP negotiates configuration parameters at the start of
the connection using LCP.
14
Link Control Protocol (LCP)
• LCP is responsible for establishing, maintaining,
configuring, and terminating links.
• It also provides negotiation mechanisms to set options
between the two endpoints. Both endpoints of the link
must reach an agreement about the options before the
link can be established.
• When PPP is carrying a LCP packet, it is either in
establishing or terminating state
• No user data is exchanged during this state
• All LCP packets are carried in the data field of the PPP
frame
15
Protocol Field of PPP Frame
16
LCP packet encapsulated in a frame
17
LCP packets and their codes
Code
Packet Type
Description
0116
Configure-request
Contains the list of proposed options and their values
0216
Configure-ack
Accepts all options proposed
0316
Configure-nak
Announces that some options are not acceptable
0416
Configure-reject
Announces that some options are not recognized
0516
Terminate-request
Requests to shut down the line
0616
Terminate-ack
Accepts the shut down request
0716
Code-reject
Announces an unknown code
0816
Protocol-reject
Announces an unknown protocol
0916
Echo-request
A type of hello message to check if the other end is alive
0A16
Echo-reply
The response to the echo-request message
0B16
Discard-request
A request to discard the packet
18
PPP Authentication…
19
Authentication Protocols
• PPP use two authentication protocols
– Password Authentication Protocol (PAP)
– Challenge Handshake Authentication Protocol (CHAP)
• Password Authentication Protocol (PAP)
– PAP sends the username and password in clear text.
– The user who wants to access a system sends
username and password
– The system checks the validity of the username and
password and either accepts or denies connection.
– For those systems that require greater security, PAP is
not enough; a third party with access to the link can
easily pick up the password and access the system
resources.
20
Password Authentication Protocol
(PAP)
21
Selecting a PPP Authentication
Protocol
22
Challenge Handshake Authentication
Protocol (CHAP)
• Challenge Handshake Authentication Protocol
(CHAP)
– It is a three handshaking authentication protocol that
provides greater security that PAP.
– In this method the password is kept secret, it is never
sent online.
– The system sends to the user a challenge packet
containing a challenge value, usually a few byte.
– The user applies a predefined function (Message
Digest-5, one way hash function) that takes the
challenge value and the user’s own password and
creates a result. The user sends the result in the
response packet to the system
23
CHAP…
• Challenge Handshake Authentication Protocol
(CHAP)…
– The system does the same. It applies the same
function to the password of the user (known to the
system) and the challenge value to create a result. If
the result created the same as the result in the
response packet, access is granted; otherwise it is
denied
– CHAP is more secure than PAP, especially if the
system continuously changes the challenge value.
Even if the intruder learns the challenge value and the
result, the password is still secret.
24
CHAP…
25
Selecting a PPP Authentication
Protocol
26
3. Network Control Protocol
• NCP allows the encapsulation of data coming from the
network layer protocols into PPP frame
• PPP is designed to allow simultaneous use of multiple
network layer protocols
• PPP provides a way to negotiate network layer options
independent to the network layer protocol to be used
27
Network Control Protocol (NCP)
• After the link is established and authentication (if any) is
successful, the connection goes to the networking state.
• In this state, PPP uses another protocol called Network
Control Protocol (NCP).
• NCP is a set of control protocols to allow the
encapsulation of data coming from network layer
protocols into PPP frame.
• PPP requires two parties to negotiate not only at the data
link layer, but also at the network layer.
• Before user data can be sent, a connection must be
established at this level.
• The set of packets that establish and terminate a network
layer connection for IP packets is called IP control
protocol (IPCP).
28
Layering PPP Elements
PPP- A data link protocol with network layer services
29
30
PPP Frame Format
31
PPP Frame Format (2)
• Flag
– One byte field
– It identifies the start and end of the PPP frame
– Contains the binary sequence: 0111 1110
• Address
– One byte field
– As the PPP is used for point-to-point connections, not
for multipoint connections like LANs, it does not
assign individual station addresses
– Uses the standard broadcast address value to avoid
data link layer addressing (MAC)
– It uses the fixed binary sequence: 1111 1111
32
One may wonder.?
• As both the address and control fields an
currently take only fixed values, one wonders
why these fields are even defined in the first
place?
– The PPP specifications as mentioned in RFC 1662
states that other values “may be defined at a later
time”
– Although None has been defined to date
33
PPP Frame Format (3)
• Control
– One byte field
– It specifies that there is no flow and error control
– It uses the fixed binary sequence:
0000 0011
• protocol
– Two byte field
– It tells the PPP receiver the upper layer protocol to
which the received encapsulated data belongs
– Whether the PPP frame carries user data or other
information
– Codes are defined to identify different protocols
34
Protocol Field Codes
Protocol Field Code
Protocol Description
C02116
LCP
C02316
PAP (for authentication)
C22316
CHAP (for authentication)
802116
NCP
IPCP (IP Datagram for Data)
35
PPP Frame Format (4)
• Protocol …
– It indicates the protocol encapsulated in the data field
of PPP frame e.g.
• LCP
– When PPP is carrying a LCP packet, it is either in
establishing or terminating state
– No user data is exchanged during this state
• Authentication protocol
– These protocols are used for authentication
– No user data is exchanged during this state
36
PPP Frame Format (5)
• Protocol …
– NCP
• It allows network layer data encapsulation into PPP
frames
• User data is exchanged during this state
– Thus PPP is a multi-protocol framing method suitable
for use over modems
37
PPP Frame Format (6)
• Data
– Maximum 1500 bytes
– Contains the datagrams for protocol specified in the
protocol field
• FCS
– 2 byte or 4 byte field
– Used for error detection using CRC code
38
General Operation of PPP
• Let us see how the three components of PPP fit
together i.e.
– Encapsulation
– LCP
– NCP
39
PPP – A scenario
40
A typical Scenario (1)
A typical scenario of a home user calling an ISP
1. P.C calls the ISP router via modem
2. After receiving the answer, the physical connection
is established between two modems
3. PC sends the router a series of LCP packets in the
data portion of PPP frames to configure and
(optionally) test the data link connection
4. These LCP packets and their responses select the
PPP parameters to be used
5. Then a series of NCP packets are used to configure
network layer .
6. NCP frames are used to choose and configure one or
more network layer protocols
41
A typical Scenario … (2)
7.
Typically, a PC wants to run a TCP/IP protocol
stack, so it needs an IP address
8. ISPs keep a block of IP addresses to be assigned
dynamically to each newly attached PC for the
duration of its login session
9. The NCP for IP assigns the IP address
10. At this point the PC is now an Internet host and can
send and receive IP packets
11. The link will remain configure for communication
until explicit LCP or NCP frames close the link or
some external event (inactivity timer expires etc.)
42
A typical Scenario … (3)
12. When the user is finished, the NCP tears down the
network layer connection, and frees up the IP
address
13. Then LCP shut down the data link layer connection
14. Finally the computer tell the modem to hang-up the
phone, releasing the physical connection.
43
Simplified PPP Phase Diagram
44
PPP Features/Services
• Main services of PPP include:
–
–
–
–
–
Encapsulation/Framing
Error Detection and Correction
Support Multiple Network Layer Protocols
Authentication
Link Establishment, Termination, and Maintenance
45
PPP Services…
• Encapsulation/Framing
– The PPP protocol take a network layer packet and
– Encapsulate it within the PPP data link layer frame
such that the receiver will be able to identify the start
and end of the both data link frame and network layer
packet within the frame.
46
PPP Services…
• Error Detection and Correction
– All data link protocols like PPP and HDLC perform
error detection.
– All these protocols use a field in the trailer usually
called frame check sequence (FCS),
– FCS verifies whether bit errors occurred during
transmission of the frame, if so frame is discarded.
– Error recovery is the process that causes
retransmission of lost or erred frames.
– PPP can perform error correction but by default it is
not enabled.
47
PPP Services…
• Support Multiple Network Layer Protocols
– PPP supports multiple protocol suites like TCP/IP (IP),
Novell’s (IPS), Appletalk etc running over same
physical link at the same time.
– PPP multiplex different network layer protocols over a
single point-to-point connection
• Authentication
– PPP defines how two devices can authenticate each
other.
– PPP is designed for use over dial-up links where
verification of user identify is necessary.
– Authentication means validating the identity of a user
who needs to access a set of resources
48
PPP Services…
• Link
Establishment,
Maintenance
Termination,
and
– PPP defines how two devices can negotiate the
establishment of a link, the exchange of data, and
termination of a link.
49
LCP Phases
• PPP supports 4 phases of LCP
–
–
–
–
Link Establishment
Link Quality Determination
Network Layer Protocol Configuration Negotiation
Link Termination
50
Phases of PPP Connection…
• A PPP connection goes through different phases
which are shown in transition state.
–
–
–
–
–
Idle State
Establishing State
Authenticating State
Networking State
Terminating State
51
Phases of PPP Connection…
• Idle State
– The idle state means that the link is not being used.
There is no active carrier, and the link is quiet.
• Establishing State
– When one of the endpoints starts the communication,
the connection goes into establishing state.
– In this state, options are negotiated between two
parties. If the negotiation is successful, the system
goes to the authenticating state (if authentication is
required) or directly to the networking state.
– The Link Control Protocol packets are used for this
purpose. Several packets may exchanged during this
phase.
52
Phases of PPP Connection…
• Authenticating State
– The authenticating state is optional.
– The two endpoints may decide, during the establishing state,
not to go through this state. However, if they decide to
proceed
with
authentication,
they
send
several
authentication packets.
– If the result is successful, the connection goes to the
networking state; otherwise it goes to the terminating state.
• Networking State
– The networking state is heart of the transition states.
– When a connection reaches this state, the exchange of user
control and data packets can be started. The connection
remains in this state until one of the endpoints wants to
terminate the connection.
53
Phases of PPP Connection…
• Terminating State
– When the connection is in the terminating state,
several packets are exchanged between the two
endpoints for closing the link.
54
Data-Link Protocols for Point-to-Point WAN
Links
• Popular WAN data-link protocols
–Serial Line Internet Protocol (SLIP)
–High-Level Data Link Control (HDLC)
–Point-to-Point Protocol (PPP)
55
HDLC
• High Level Data
Control Protocol
vs.
Link
– It is both point to point
and multipoint protocol
– It delivers data on
synchronous links only
– It
provides
error
detection but does not
provide error correction
– It
does
not
have
protocol type field, so it
does
not
support
multiple protocols
PPP
• Point to Point Protocol
– It point to point protocol
– It delivers data on both
synchronous
and
asynchronous links
– It provides both error
detection
and
error
correction
– It has a protocol type
field so it supports
multiple protocols
56
SLIP
• Serial
Line
Protocol
–
–
–
–
–
–
vs.
Internet
Older protocol
Require no addressing
No authentication
No error checking
Supports only IP
No
compression
is
supported
in
original
Version
•
PPP
Point-to-Point Protocol
– New protocol
– Supports
dynamic
IP
address assignment
– LCP
– Error checking
– NCP , Carries multiple
protocols:
IP,
IPX,
AppleTalk, NetBIOS
– Inherently
supports
compression
57
LCP Features
Function
LCP
Feature
Description
Error detection
Link
Quality
Monitoring
PPP can take down a link based on the
percentage of errors on the link. LQM
exchanges statistics about lost packets
versus sent packets in each direction.
When compared to packets and bytes
sent, this yields a percentage of erred
traffic. The percentage of loss that causes
a link to be down is enabled and defined
by a configuration setting
Looped
detection
Magic
numbers
Using different magic numbers, routers
send messages to each other. If you
receive your own magic number, the link
is
looped.
A
configuration
setting
determines whether the link should be
taken down when looped
link
58
LCP Features…
Multilink
support
Multilink
PPP
Authentication
PAP
and Exchanges names and passwords so that
CHAP
device can verify the identity of the device
on the other end of the link.
Fragments of packets are load-balanced
across multiple links
59
PPP Automatic Login
• PPP provides two methods with which logins can be
automated –
– PAP (Password Authentication Protocol)
– CHAP (Challenge-Handshake Authentication Protocol).
• Both provide the means for your system to automatically
send your login userid/password information to the
remote system.
60
PPP LCP Configuration Options
Feature
Authentication
How It Operates
Protocol
Require a password
PAP
Perform Challenge Handshake CHAP
Compression
Compress data at source;
reproduce data at
destination
Stacker or
Predictor
Error
Detection
Monitor data dropped on link
Avoid frame looping
Quality
Magic Number
Multilink
Load balancing across
multiple links
Multilink
Protocol (MP)
Putting it all together
•
•
•
•
The most significant advantage PPP can offer is the automatic
login and configuration negotiation at the start of connection
With these features, your PPP software only needs to know your
login userid/password and the telephone number of your service
provider.
The software can then dial-up into your service provider and
figure out everything else on its own.
At this present point in time, PPP is generally not as widely
available as SLIP. It should gain more acceptance in the time to
come
62
References
• Computer Networks
– 4th Edition, Chapter 3, Andrew S. Tanenbaum
• Computer Networking; A Top Down Approach
Featuring the Internet
– 3rd Edition: Chapter 5, Jim Kurose and Keith Ross
• Data Communications and Networking
– 3rd Edition, Behrouz A. Forouzan
63