RESIDENTIAL ACCESS ISP (Internet Service Provider)
Residential access simply means how the Internet reaches our homes. In practice it is a PTP (Point-to-Point) connection between the ISP (Vodafone, Tim, Fastweb etc.) and the customer. The Internet Service Provider allows us to access a much wider network, the Internet, which we will see later. The most common access modes were Dial-Up, ISDN to get to the present day with:
XDLS
- xDSL (Digital Subscriber Line) which is a family of technologies that allow you to use the copper twisted pair at the same time for both digital data and analog telephone signal, thanks to the fact that these two signals travel on different bands. In fact, typically a filter is placed between the telephone and the modem to further isolate the two bands.
More specifically we talk about:
-
- ADSL (Asymmetric DSL)
Typical home and small office connection, where the download bandwidth is much higher than the upload. The band is unbalanced more in download than in upload for this reason we speak of Asymmetric DSL.
-
- HDSL (high bit rate DSL)
Typical corporate connection, with symmetrical band. Dedicated band between user and provider
-
- VHDSL (Very High Speed DSL)
Short distance broadband (max. 300 meters)
OPTIC FIBER
- Often it only arrives at the cabin (~ 100m from the house) and the last mile to the house still uses the old copper pair (pre-installed)
- Some recent installations bring the optical fiber directly into the home.
THE PPP PROTOCOL
The function of PPP is to encapsulate IP packets or other layer 3 protocols, and transmit them over a point-to-point channel. PPP performs other important functions such as authentication and compression, and link quality control. The operations carried out by PPP include the following phases:
- Connection establishment and parameter negotiation
- Connection quality determination (optional)
- negotiation of layer 3 protocol configuration
PPP comprises three main components:
- A method of encapsulating packets from the top level
- A protocol, LCP (Link Control Protocol), whose job is to establish, configure and check the status of the link during the communication session, and terminate the link
- A family of protocols, NCP (Network Control Protocol) to configure different network layer protocols (IP, IPX).
PPP is a generic layer two protocol for point-to-point connections between two stations. It was created for use as a data link layer of the Internet (ie from TCP / IP) but is designed to serve other layer 3 protocols. Typically used to connect the home PC to the Internet using a modem connection. The main features of the PPP are
- byte-oriented protocol, with flag byte framing and byte stuffing
- use of error detection coding
- support of a protocol (LCP: Link Control Protocol) for connection management, line test, negotiation of communication parameters
- support of a protocol (NCP: Network Control Protocol) for the negotiation of the parameters relating to the network protocol above
- support – via NCP – for various network protocols
- authentication
- implements unreliable service, but can be configured via LCP to provide reliable service
BYTE STUFFING
If the flag byte pattern is present in the byte sequence of the message, there should be a strategy so that the recipient does not consider the pattern as the end of the frame. Here, a special byte called the escape character (ESC) is inserted before each byte in the message with the same pattern as the flag byte. If the ESC sequence is found in the message byte, another ESC byte is inserted before it. In practice, the source data link layer adds another Escape character (ESC) to the data in front of this byte. Of course, the target data link layer removes the Escape characters added into the data before delivering them to layer three.
HOW THE PPP WORKS
The PC initiates a connection via modem to the provider, once the connection is established on the physical level, the PPP is activated, which begins the negotiation of the connection parameters via the LCP protocol. Once the values of the parameters for the current connection have been established, an authentication procedure is optionally started, followed by a negotiation phase of the parameters of the layer 3 protocol, through the NCP protocol. At this point the layer 3 connection is established, and applications can transmit the data over the network along the protocol stack. At the end of the connection, the PPP activates, via LCP, a procedure for closing the connection.
LCP PROTOCOL
LCP is one of the main protocols that make the efficiency of a Point to Point Protocol (PPP) or Point to Point over Ethernet (PPPoE) connection possible. A PPP suite creates and maintains a link from one point to another. The LCP (Link Control Protocol) is one of the most important protocols when it comes to creating and connecting two points via a link. LCP controls every aspect of the connection, from creation to use. The LCP protocol has the function of negotiating the characteristics of the transmission at level 2. It does not provide the specifications of the parameters (which are defined and understood by the PPP), but only a means to negotiate them. Basically LCP has four types of instructions:
- configure: allows PPP peer processes to propose, accept, reject with counter-proposals or declare non-negotiable parameters related to:
-
- maximum payload size
- enabling authentication
- network protocol to use
- enabling the quality control of the line
- header compression
- terminate: to notify and accept the disconnection of the line
- reject: to communicate that a frame has not been interpreted (undetected error or use of different versions of PPP)
- echo: for checking the quality of the line (for example, it can be used to test the functionality of the transmission channel in case of problems)
LCP carries out the task of terminating the connection even independently of the user’s will. This happens if an event occurs that forces LCP to close the connection. For example. loss of carrier, lack of authentication, timeout on device inactivity, loss of connection quality. Once the link has been configured, you can optionally configure authentication. PPP uses two authentication protocols: PAP and CHAP
- PAP (Password Authentication Protocol). The client repeatedly sends its name and password to the provider waiting for an authentication confirmation. The password is sent only in the authentication phase and crosses the network in the clear. For this it can be intercepted by third parties and reused.
- CHAP (Challenge Authentication Password Protocol). In this case, the authentication process remains active for the entire duration of the communication session. The authentication mechanism is more complex and assumes that each of the nodes knows the username of the other and a single shared password. The process takes place in these ways: the authenticator, let’s say R2, sends a “challenge” packet containing a random numeric string, an id and its username. The user who asks to be authenticated, let’s say R1, after checking if the username received exists, uses the data sent by R2 and the shared password to calculate a code, with a special algorithm, and sends the result to R2 together with an ID and its username R2 compares the code received with the one calculated on the data it sent and the username on the data received. If the two codes are the same, the authentication is successful.
NCP PROTOCOL
The NCP protocol is dedicated to the configuration of the parameters related to the network protocol that is served by the PPP. Generally, the correct functioning of the layer 3 protocol requires the configuration of some specific parameters, such as network address, reference gateway address and others, typically the owner of the PC that connects to the provider has no way of knowing how to configure these parameters The PPP protocol, implementing NCP, allows an automatic configuration of these parameters, which are generally defined dynamically at the time of connection. Since each network protocol has its own configuration parameters, which differ in number and meaning, the PPP must provide a specific implementation for each supported network protocol. PPP always supports the IP protocol (and therefore the TCP / IP stack as a whole)
IN CONCLUSION
PPP is a layer 2 protocol and therefore receives services from layer 1 and provides services at layer 3. To use the services of the physical layer, it uses the LCP (Layer Control Protocol), which allows:
- to establish a physical connection,
- carry out tests on the communication line,
- negotiate link options,
- manage the closure of the connection.
To provide services at layer 3, it uses the NCP (Network Control Protocol), which allows you to manage the network layer options and support various network layer protocols, even if the most used is LP. Let’s consider, for example, a user who uses his home computer to connect to an ISP Let’s see a summary of the phases in which PPP operates:
- the PC calls the provider’s router (ISP) via the modem;
- the router responds and establishes a physical connection with the PC;
- the PC sends to the ISP router a series of LCP packets in the Payload field to establish the parameters of the physical connection at this point the physical connection is active and an exchange of NCP packets begins to configure the network layer;
- the provider assigns an IP address to the PC for the duration of the connection now the PC is connected to the Internet and can start sending and receiving IP packets;
- when the user has finished using the connection, NCP terminates the connection with the network layer and frees the IP address; then LCP closes the layer 2 data link connection: the computer tells the modem to close the line and release the physical connection.
IN-DEPTH AI
Point-to-Point Protocol (PPP) is a communication protocol that allows direct connection between two network nodes. It is commonly used to establish Internet connections between a computer and an Internet service provider (ISP) via telephone line, modem, serial connection, or links over cellular networks.
Here is a detailed description of PPP:
1. Main Features.
PPP provides several useful features for establishing and maintaining a secure and stable connection between two devices:
-Data encapsulation: PPP encapsulates data packets from various network protocols (such as IP) and transmits them over point-to-point links.
-Authentication: PPP supports various authentication protocols, such as PAP (Password Authentication Protocol) and CHAP (Challenge Handshake Authentication Protocol), to verify the identity of the remote device.
-Compression: PPP can compress data to improve transfer efficiency, reducing the amount of data to be transmitted.
-Error Detection and Correction: PPP incorporates mechanisms to detect and correct errors in transmitted packets.
-Multilink: PPP supports the “Multilink Protocol,” which allows multiple channels to be aggregated for higher throughput by combining multiple physical links into a virtual one.
2. Structure of PPP
The PPP protocol is divided into several layers and operational phases:
-Link layer: PPP operates at the data link layer of the OSI model (layer 2), providing functionality for reliable data transmission over a point-to-point link.
-PPP Frames: Data is encapsulated in PPP “frames,” which contain various fields for synchronization, addressing, control, and error detection. The typical structure of a PPP frame includes:
-Flag: A start and end marker (01111110 in binary).
-Address: Default value (usually 0xFF).
-Control field: Typically set to 0x03 to indicate a mode without sequence numbers.
-Protocol: Identifies the encapsulated protocol, such as IP or IPX.
-Information: The payload, i.e., the actual data transmitted.
-Checksum (FCS): Used to detect errors in the data.
3. Stages of Connection.
The procedure for establishing and managing a PPP connection follows a series of phases:
-Negotiation Phase:
-LCP (Link Control Protocol): This initial phase is used to negotiate the parameters of the connection, such as packet size, compression and error detection. LCP is responsible for establishing, configuring, maintaining and terminating the link.
-Authentication:
-PAP (Password Authentication Protocol): A simple protocol that sends username and password in plain text (not encrypted). Not very secure compared to other modern technologies.
-CHAP (Challenge Handshake Authentication Protocol): More secure than PAP, it uses a challenge/response system in which the server sends a cryptographic “challenge” and the client responds with a calculated response, avoiding transmitting passwords in the clear.
-Negotiation of network protocol:
-NCP (Network Control Protocol): After the connection has been established and authenticated, PPP uses NCP to configure the network protocol to be used, such as IP, IPv6 or IPX. The NCP is a set of protocols that handle layer 3 features of the OSI model.
-Transmission Phase:
During this phase, data is encapsulated in PPP frames and transmitted between the two devices. Each data packet includes a field to identify the Layer 3 protocol (e.g., IP) used for the payload.
-Closing Phase:
Once the transmission session has ended, PPP closes the connection by releasing the allocated resources. This phase is handled again by the LCP, which sends “termination” packets.
4. Advantages and Disadvantages.
Advantages:
-Compatibility: PPP can be used with various Layer 3 protocols, including IP, IPv6 and IPX, making it versatile.
-Authentication: It supports various authentication protocols, allowing flexibility in security management.
-Reliability: With error checking and parameter negotiation, PPP ensures stable and reliable data transmission.
Disadvantages:
-Efficiency: PPP can introduce additional overhead compared to lighter protocols, especially when authentication and compression protocols are used.
-Limited to point-to-point connections: It is not designed to handle multiple connections or complex networks, being designed for point-to-point links.
5. Common Uses.
-Dial-up connections: In the past, PPP was widely used for dial-up connections over analog modems.
-Connections over cellular networks: It is used in some implementations over cellular networks to establish data connections.
-VPN: In some contexts, PPP can be used to establish VPN connections over encrypted tunnels such as PPTP (Point-to-Point Tunneling Protocol).
Conclusion
The PPP protocol has been a standard in point-to-point connection for years, especially in contexts of telephone and VPN connections. Despite the advent of more modern technologies, such as Ethernet and Wi-Fi, which offer greater speed and flexibility, PPP continues to be used in specific scenarios where secure and reliable connections need to be established over point-to-point links.
Leave A Comment