PPP/PPPoE
The emNet PPP implementation is an optional extension which can be seamlessly integrated into your TCP/IP application. It combines a maximum of performance with a small memory footprint. The PPP implementation allows an embedded system to connect via Point to Point Protocol to a network.
Overview
The Point to Point Protocol is a link layer protocol for establishing a direct connection between two network nodes.
Using PPP, an emNet application can establish a PPP connection to a PPP server. The handshaking mechanism includes normally an authentication process. The current version of emNet supports the the following authentication schemes:
- PAP - Password Authentication Protocol
Application layer | Application layer protocol: |
Transport layer | Tranport layer protocol: TCP |
Network layer | Network layer protocol: IP |
Link layer | Link layer protocol: PPP, PPPoE |
Key features
- Low memory footprint
- Support PAP authentication protocol
- Support for PPP over Ethernet
Requirements
The emNet PPP implementation requires the emNet TCP/IP stack. Your modem has to be able to be configured to respond in the format "<CR><LF><Response>".
PPP Resource Usage
The ROM usage depends on the compiler options, the compiler version and the used CPU. The memory requirements of the PPP modules presented in the tables below have been measured on an ARM7 system. Details about the further configuration can be found in the sections of the specific example.
The resource usage of a typical PPP scenario without network interface and one modem connected via RS232 has been measured.
ROM Usage on an ARM7 System: The following resource usage has been measured on an ARM7 system using IAR Embedded Workbench V6.30.6, Thumb mode, no interwork, size optimization.
Add-on | ROM |
---|---|
emNet PPP | Approximately 7.0 KByte |
RAM Usage:
Add-on | RAM |
---|---|
emNet PPP | Approximately 0.5 KByte |
PPPoE Resource Usage
The ROM usage depends on the compiler options, the compiler version and the used CPU. The memory requirements of the PPP/PPPoE modules presented in the tables below have been measured on an ARM7 and a Cortex-M3 system. Details about the further configuration can be found in the sections of the specific example. The resource usage of a typical PPPoE scenario with 1 WAN interface has been measured.
ROM Usage on an ARM7 System: The following resource usage has been measured on an ARM7 system using IAR Embedded Workbench V6.30.6, Thumb mode, no interwork, size optimization.
Add-on | ROM |
---|---|
emNet PPP used for PPPoE | Approximately 7.0 KByte |
ROM Usage on a Cortex-M3 System: The following resource usage has been measured on a Cortex-M3 system using IAR Embedded Workbench V6.30.6, size optimization.
Add-on | ROM |
---|---|
emNet PPP used for PPPoE | Approximately 6.5 KByte |
RAM Usage:
Add-on | RAM |
---|---|
emNet PPP used for PPPoE | Approximately 100 Byte |
Relevant parts
The PPP module implements the relevant parts of the following Request For Comments (RFC).
RFC# | Description |
---|---|
[RFC 1334] | Direct Link: PPP Authentication Protocols |
[RFC 1661] | Direct Link: Point-to-Point Protocol (PPP) |
[RFC 1994] | Direct Link: PPP Challenge Handshake Authentication Protocol (CHAP) |
[RFC 2516] | Direct Link: A Method for Transmitting PPP Over Ethernet (PPPoE) |