The Point-to-Point Protocol (PPP) is the most widely used protocol for connecting hosts over the peer-to-peer connection, such as modem or ISDN link or a direct cable connection. It supports transmitting multi-protocol datagrams over a single link, along with such features as authentication, link quality monitoring and flexible set of options which can be negotiated between two connecting hosts.
The PPP over Ethernet (PPPoE) protocol allows hosts inside an Ethernet-based network to access external hosts via PPP through the bridge host (Access Concentrator). It is most often used to access an xDSL line from inside the network, the DSL or cable modem playing the role of the AC.
Thus, for successful connection two physical parts are required: client PPPoE module (on every host wishing to use PPPoE) and one or more Access Concentrators. They are presented in a CPX by two modules: POECLI for client part, and POEAC as a server part, described in this document.
This PPPoE Access Concentrator implementation supports several outgoing links per single POEAC module. However, you will have to install a distinct POEAC module per each Ethernet interface through which the connection is desired. Also note, that POECLI and POEAC modules cannot share the same Ethernet interface on the same CPX.
For more information, consult the following documents:
The PPP over Ethernet Access Concentrator port is labelled within the Abilis CPX with the acronym "POEAC" and it is provided with the parameters described in this section.
Unlike most other modules, POEAC has two parameters blocks: common parameters and link parameters. Links are numbered from 1 to 32 and have two special parameters, among with ones common for physical layers.
Here is an example on how to display the POEAC port parameters. Shown values are only examples.
[14:21:06] ABILIS_CPX: D P PO:980 . PO:980 ------------------------------------------------------------------------ POEAC LOG:DS LOWPO:57 max-ses:1 ses-rxbuf:32 TCP-MSS-CLAMP:YES TCP-MSS-VALUE:1452 ACNAME:CPX ------------------------------------------------------------------------ Lnk:1 ST:RUNNING LOWPO:2 SERVICENAME:HSCB Lnk:2 ST:RUNNING LOWPO:200 VSP-ID:NONE SERVICENAME:EBIB DT:300 RTY:LIN NRTY:5 TB:10 CGO:# SGO:# CDO:111 SDO:#
To activate changes made on the lowercase parameters it is needed to restart the system, for the uppercase ones, it is enough to execute the initialization command INIT PO:.
LOWPO: | Identifier of the lower level Abilis CPX port |
NONE | 1 - 999, NONE |
Sets the lower level port; it can only be an ETH or ETH100 port.
The value "NONE" makes the PPPoE port unusable.
MAX-SES: | Number of sessions a module can support |
4 | 1 - 255 |
Sets the number of PPPoE sessions the module can support. There can't be more than this amount of external sessions connecting at once. Changing this parameter requires CPX restart.
SES-RXBUF: | Number of packets in single session queue |
32 | 1 - 255 |
Sets the number of PPPoE packets received from client a module can hold while sending other packets to remote PPP. Changing this parameter requires CPX restart.
TCP-MSS-CLAMP: | Whether to perform TCP MSS clamping |
NO | NO, YES |
If set, forces POEAC to change value of Maximum Segment Size in all TCP packets to one equal or lower than set with TCP-MSS-VALUE: option to avoid certain problems with PPP over Ethernet "black hole". Also can be used to reduce link latency at the cost of some bandwidth loss.
TCP-MSS-VALUE: | Maximal TCP MSS value to allow |
1414 | 496-1452 |
Specifies maximal allowed value for TCP Maximum Segment Size option.
This option is only visible if MSS clamping is allowed via TCP-MSS-CLAMP: parameter.
ACNAME: | Access Concentrator name |
(empty) | Any string up to 64 symbols |
The name of the Access Concentrator is sent along with responses from hosts. Intellectual PPPoE clients can rely on this to choose a certain AC from several available. This parameter can be left blank in case there is only one AC in the network for each service-name requested.
ST: | Link state |
NEW | NEW, RUNNING, DELETED |
Determines the current state of the link.
Value | Meaning |
---|---|
NEW | Link has just been created and is not yet used by POEAC. |
RUNNING | Link has been initialized and is used by POEAC. |
DELETED | Link has just been deleted and is already not used by POEAC. |
SERVICENAME: | Link service name |
(empty) | Any string up to 64 characters |
Name under which this link can be requested from the client. If the client specifies a certain ServiceName, Server answers only if it has link with tha exactly name. If Client specifies no name, it means any line is acceptable.
POEAC stat/diag output contain several parts:
[15:29:13] ABILIS_CPX: D S PO:980 PO:980 ------------------------------------------------------------------------ POEAC STATE:READY CUR-SES:1 MAX-SES:2 ------------------------------------------------------------------------ STATE: CLI-MAC: LNK: SES-ID: CONN-TIME: SERVICE-NAME: ------------------------------------------------------------------------ OPEN 52-54-4C-04-9F-2D 2 1 11 EBIB ------------------------------------------------------------------------ DOWN 00-00-00-00-00-00 0 2 0 ------------------------------------------------------------------------ -----------|---INPUT---|--OUTPUT---|-----------|---INPUT---|--OUTPUT---| SUCC-CALL | | 0|FAIL-CALL | | 0| CHAR-DATA | 0| 0|CHAR-SYS | 0| 0| PCK-DATA | 0| 0|PCK-SYS | 0| 0| LOST-DATA | 0| | ------------------------------------------------------------------------
[15:29:13] ABILIS_CPX: D SE PO:980 PO:980 ------------------------------------------------------------------------ POEAC --- Cleared 000:00:00:49 ago, on 03/09/2002 at 15:28:24 ---------------- -----------|---INPUT---|--OUTPUT---|-----------|---INPUT---|--OUTPUT---| SUCC-CALL | | 0|FAIL-CALL | | 0| CHAR-DATA | 0| 0|CHAR-SYS | 0| 0| PCK-DATA | 0| 0|PCK-SYS | 0| 0| LOST-DATA | 0| | ------------------------------------------------------------------------
STATE: | POEAC port state |
DOWN, READY |
Current port state.
Value | Meaning |
---|---|
DOWN | Lower ETH layer is not present or inoperable, POEAC stopped. |
READY | POEAC is up and running. |
CUR-SES: | Number of currently open sessions |
0-255 |
Total number of sessions currently active
STATE: | Session state |
DOWN, PADISENT, PADRSENT, OPEN |
Current session state.
Value | Meaning |
---|---|
DOWN | Session is closed. |
PADRRCVD | PADR was received, call to lower layer in progress, PADS not yet sent. |
OPEN | Session is open and transferring data. |
CLI-MAC: | Remote MAC address |
0-255 |
MAC address of remote client. If session is DOWN, will show last valid value.
LNK: | Link number |
0-255 |
Shows number of link used by the session.
SES-ID: | Session ID |
0-65535 |
Shows PPPoE Session ID assigned for this session.
CONN-TIME: | Time connected |
DWORD |
Shows time since session was connected.
SERVICE-NAME: | Session Service name |
0-255 |
Shows Service Name to which connection occured.
SUCC-CALL: | Successful connects to this AC |
0-255 |
Number of successful connection establishments with this Access Concentrator.
Each time a new session was started.
FAIL-CALL: | Failed connects to this AC |
0-255 |
Total number of attempts a connection was tried but failed.
The reason could be failed call to lower layer.
CHAR-DATA: | Total data bytes received/sent |
Total number of data bytes received from (sent to) hosts in LAN, including all framing.
Data means all PPP traffic, including PPP system packets. This is the same as bytes sent/received to external links.
CHAR-SYS: | Total system bytes received/sent |
Total number of system bytes received from (sent to) hosts in LAN, including all framing.
System means PPPoE system packets only.
PCK-DATA: | Data packets received/sent |
Number of data packets received from (sent to) hosts in LAN.
Data means all PPP traffic, including PPP system packets. This is the same as packets sent/received to external links.
PCK-SYS: | System packets received/sent |
Number of system packets received from (sent to) hosts in LAN.
System means PPPoE system packets only.
LOST-DATA: | Data packets lost |
Number of data packets lost due to internal queues overflow.