first draft of the opera specification version 2nemo/plc/refs/op2_d27_first draft of the... ·...

447
Work Package: WP5 Activities: 5.1 Type of document: Report Date: 04 June 2007 IST Integrated Project No 026920 Partners: CTI, DS2, EDEV CPL / EDF Group, Iberdrola, SEPC, TUD, URL Responsible: EDEV CPL / EDF Group Circulation: Public Confidential Restricted File name: OP2_WP5_D27 Version: 1.0 Title: First draft of the OPERA specification version 2 D27 : FIRST DRAFT OF THE OPERA SPECIFICATION VERSION 2 Copyright © Copyright 2007 The OPERA Consortium

Upload: dinhminh

Post on 08-Sep-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Work Package: WP5

Activities: 5.1

Type of document: Report

Date: 04 June 2007

IST Integrated Project No 026920 Partners:

CTI, DS2, EDEV CPL / EDF Group, Iberdrola, SEPC, TUD, URL

Responsible: EDEV CPL / EDF Group

Circulation: Public Confidential Restricted

File name: OP2_WP5_D27 Version: 1.0

Title: First draft of the OPERA specification version 2

D27 : FIRST DRAFT OF THE OPERA SPECIFICATION VERSION 2

Copyright

© Copyright 2007 The OPERA Consortium

Work Package: WP5

Type of document: Report

Date: 04 June 2007

EC/IST FP6 Project No 026920 File name: OP2_WP5_D27 Version: 1.0

Title: First draft of the OPERA specification version 2

Document History

Vers. Issue Date Content and changes

1.0 04.06.07 Creation of the first version of the document

Document Authors

Partners Contributors

CTI Manu Sharma

DS2 Luis Manuel Torres, Salvador Iranzo, Marcos Martinez, Serafin Arroyo

EDEV CPL / EDF Group Laurent Feltin, Eric Perrier

Iberdrola Inigo Berganza

SEPC Philippe Conq

TUD Le Phu Do

University Ramon Llull (URL)

Guiomar Corral, Josep M. Selga

Document Approvers

Partners Approvers

EDEV CPL / EDF Group Laurent Feltin

4-June-07 P1901_PRO_016_r0

Submission page 1 UPA-OPERA

IEEE P1901 Draft Standard for Broadband over Power Line Networks: Medium Access Control and Physical Layer Specifications

Proposal for the IEEE 1901 Access Power Line Networks Standard

Date: 2007-06-04

Author(s): Name Company Address Phone email

Laurent Feltin OPERA EDEV CPL Technologie 1 avenue du Général de Gaulle 92140 Clamart, France

+33 1 41 33 95 14 [email protected]

Inigo Berganza OPERA Iberdrola S.A. Avda San Adrián 48 48003 Bilbao, Spain

+34 944665525 [email protected]

Luis M. Torres OPERA

Design of Systems on Silicon (DS2) C/ Charles Robert Darwin 2 Parc Tecnològic 46980, Paterna, Valencia, Spain

+34 96 136 60 04 [email protected]

Serafin Arroyo UPA

Universal Powerline Association 3 Bridge Street Kings Cliffe, Peterborough PE8 6XH, United Kingdom

+44 (0)1780470003 [email protected]

Guiomar Corral OPERA

Enginyeria La Salle - Universitat Ramon Llull Postal address c/ Quatre Camins, 2 08022 – Barcelona, Spain

+34 93 290 24 23 [email protected]

Salvador Iranzo OPERA

Design of Systems on Silicon (DS2) C/ Charles Robert Darwin 2 Parc Tecnològic 46980, Paterna, Valencia, Spain

+34 96 136 60 04 [email protected]

Le Phu Do OPERA Technische Universitaet DresdenChair for Telecommunications 01062 Dresden, Germany

+49 351 463-39244 [email protected]

Eric Perrier OPERA EDEV CPL Technologie 1 avenue du Général de Gaulle 92140 Clamart, France

+33 1 41 33 95 11 [email protected]

José Maria OPERA Enginyeria La Salle - Universitat

Ramon Llull +34 93 290 24 23 [email protected]

4-June-07 P1901_PRO_016_r0

Submission page 2 UPA-OPERA

Selga Postal address c/ Quatre Camins, 2 08022 – Barcelona, Spain

Ralf Lehnert OPERA Technische Universitaet DresdenChair for Telecommunications 01062 Dresden, Germany

+49 351 463-33942 [email protected]

Agustin Badenes OPERA

Design of Systems on Silicon (DS2) C/ Charles Robert Darwin 2 Parc Tecnològic 46980, Paterna, Valencia, Spain

+34 96 136 60 04 [email protected]

Manu Sharma OPERA

Current Technologies International GmBHPostal address : Gewerbepark, 5506 Maegenwil, Switzerland

+41-62-544-1912 [email protected]

Philippe Conq OPERA

ILEVO – Schneider Electric Powerline Communications 59, Chemin du vieux chêne, F38240 Meylan, France

+33 4 76 60 59 56 [email protected]

Eric Morel Ilevo-Schneider Electric Powerline Communications

59, Chemin du vieux chêne, F38240 Meylan, France

+33 (0)4 76 60 59 56

[email protected]

Ichiro Shimizu ITOCHU Corporation 5-1, Kita-Aoyama 2-chome, Minato-ku, Tokyo 107-8077, Japan

+81-33497-7237 [email protected]

Yukio Akegamiyama

Toyo Network Systems Co., Ltd.

1-1,Koyato2-chome,Samukawa-machi,Koza-gun,Kanagawa 253-0198,Japan

+81 467 74 1176 [email protected]

Ram Rao Ambient Corporation 79 Chapel Street Newton, MA 02458 USA

+1-617-332-0004 [email protected]

Brian Donnelly Corinex Communications Corp.

905 West Pender Street Vancouver, BC V6C 1L6 Canada,

+1 778 371 7697 [email protected]

Abstract:

This is a complete proposal for the IEEE P1901 Access Broadband over Power Line standard submitted by the OPERA (Open PLC European Research Alliance) and UPA (Universal Powerline Association).

4-June-07 P1901_PRO_016_r0

Submission page 3 UPA-OPERA

The proposal fulfills all the requirements described in the document “P1901_0205_r2_AC_unified_req.doc”, and also follows the rules and conditions described in the Call for proposals document “P1901_0269_r1_AC_Call_for_submissions.doc”.

This document will be part of the down-selection process of the P1901 group as described in the document “P1901_0098_r8_Downselect_Process_final.doc”, for the Standard for Broadband over Power Line Networks: Medium Access Control and Physical Layer Specifications, Access.

Notice: This document has been prepared to assist the IEEE P1901 working group. It is offered as a basis for discussion and is not binding on the contributing individual(s) or organization(s). The material in this document is subject to change in form and content after further study. The contributor(s) reserve(s) the right to add, amend, or withdraw material contained herein.

Release: The contributor grants a free, irrevocable license to The Institute of Electrical and Electronics Engineers, Inc. (“IEEE”), a corporation with offices at 445 Hoes Lane, Piscataway, NJ 08855-1331, to incorporate material contained in this contribution, and any modifications thereof, in the creation of an IEEE Standards publication; to copyright in the IEEE’s name any IEEE Standards publication even though it may include portions of this contribution; and at the IEEE’s sole discretion to permit others to reproduce in whole or in part the resulting IEEE Standards publication. The contributor also acknowledges and accepts that this contribution may be made public by the IEEE P1901 working group.

4-June-07 P1901_PRO_016_r0

Submission page 4 UPA-OPERA

Draft Standard for Broadband over Power Line Networks: Medium Access Control (MAC) and Physical Layer (PHY) specifications Copyright © 2007 by the IEEE. Three Park Avenue New York, NY 10016-5997, USA All rights reserved. This document is an unapproved draft of a proposed IEEE Standard. As such, this document is subject to change. USE AT YOUR OWN RISK! Because this is an unapproved draft, this document must not be utilized for any conformance/compliance purposes. Permission is hereby granted for IEEE Standards Committee participants to reproduce this document for purposes of international standardization consideration. Prior to adoption of this document, in whole or in part, by another standards development organization, permission must first be obtained from the IEEE Standards Activities Department. Other entities seeking permission to reproduce this document, in whole or in part, must obtain permission from the IEEE Standards Activities Department. IEEE Standards Activities Department 445 Hoes Lane Piscataway, NJ 08854, USA

4-June-07 P1901_PRO_016_r0

Submission page 5 UPA-OPERA

1 INTRODUCTION .............................................................................................................................................. 19

1.1 SCOPE ........................................................................................................................................................ 19

1.2 OVERVIEW ............................................................................................................................................... 19

1.3 REFERENCES............................................................................................................................................ 19

1.4 DOCUMENT CONVENTIONS................................................................................................................. 20

1.5 DEFINITIONS............................................................................................................................................ 21

1.6 ABBREVIATIONS AND ACRONYMS ................................................................................................... 25

2 GENERAL DESCRIPTION ............................................................................................................................... 31

2.1 GENERAL DESCRIPTION OF THE ARCHITECTURE......................................................................... 32

2.2 NODE DESCRIPTION............................................................................................................................... 32

2.2.1 HE ....................................................................................................................................................... 33

2.2.2 Time Division Repeaters..................................................................................................................... 33

2.2.3 CPE ..................................................................................................................................................... 33

2.3 MAC overview............................................................................................................................................ 33

2.4 QoS overview.............................................................................................................................................. 34

2.5 Security overview........................................................................................................................................ 34

2.6 NETWORK REFERENCE MODEL.......................................................................................................... 35

3 PHY..................................................................................................................................................................... 36

4-June-07 P1901_PRO_016_r0

Submission page 6 UPA-OPERA

3.1 OVERVIEW ............................................................................................................................................... 37

3.2 PHY LAYER FRAME................................................................................................................................ 37

3.3 FORWARD ERROR CORRECTION........................................................................................................ 38

3.3.1 Delimiters............................................................................................................................................ 38

3.3.2 Data payload........................................................................................................................................ 42

3.4 MAPPING MODES.................................................................................................................................... 46

3.4.1 HURTO mapping ................................................................................................................................ 46

3.4.2 Adaptive mapping ............................................................................................................................... 47

3.5 TRELLIS CODED MODULATION (4D-TCM) ....................................................................................... 48

3.5.1 Bit Extraction ...................................................................................................................................... 48

3.5.2 Scrambling .......................................................................................................................................... 50

3.5.3 Bit conversion ..................................................................................................................................... 53

3.5.4 Constellation encoder.......................................................................................................................... 54

3.6 SUBCARRIER MODULATION................................................................................................................ 55

3.7 OFDM MODULATION ............................................................................................................................. 57

3.7.1 Control and Data symbols ................................................................................................................... 58

3.7.2 Time domain windowing .................................................................................................................... 59

3.8 REFERENCE SIGNALS ............................................................................................................................ 61

4-June-07 P1901_PRO_016_r0

Submission page 7 UPA-OPERA

3.8.1 Channel reference symbol................................................................................................................... 61

3.8.2 Synchronization symbol...................................................................................................................... 61

3.8.3 Start Of Transmission (SOT) .............................................................................................................. 61

3.8.4 Channel estimation symbols................................................................................................................ 63

3.9 CARRIER FREQUENCY .......................................................................................................................... 65

3.10 COMMUNICATION MODES................................................................................................................... 65

3.11 PHY PARAMETER SPECIFICATION ..................................................................................................... 65

3.12 CLOCK SYNCHRONIZATION ................................................................................................................ 66

3.12.1 General ................................................................................................................................................ 66

3.12.2 Clock synchronisation concept............................................................................................................ 66

3.12.3 System reference clock error tolerance ............................................................................................... 66

3.13 TRANSMITTER ELECTRICAL SPECIFICATION................................................................................. 66

3.13.1 Transmit PSD...................................................................................................................................... 66

3.13.2 Modulation error vector magnitude..................................................................................................... 67

3.13.3 Power Control ..................................................................................................................................... 67

3.14 RECEIVER ELECTRICAL SPECIFICATION ......................................................................................... 68

3.14.1 Receiver Input Impedance................................................................................................................... 68

3.14.2 Receiver Input Referred Noise............................................................................................................ 69

4-June-07 P1901_PRO_016_r0

Submission page 8 UPA-OPERA

3.14.3 Receiver Input Signal .......................................................................................................................... 69

3.15 PHY service specification (PHY SAP) ....................................................................................................... 69

3.15.1 PHY service primitives ....................................................................................................................... 69

3.15.2 PHY service primitives parameters..................................................................................................... 70

3.15.3 PHY-DATA.req .................................................................................................................................. 71

3.15.4 PHY-DATA.cnf .................................................................................................................................. 72

3.15.5 PHY-DATA.ind .................................................................................................................................. 72

3.15.6 PHY-MNT-SNR.ind ........................................................................................................................... 73

3.15.7 PHY-MNT-BPC-SET.req ................................................................................................................... 73

3.15.8 PHY-MNT-BPC-SET.cnf ................................................................................................................... 74

3.15.9 PHY-MNT-BPC-GET.req .................................................................................................................. 75

3.15.10 PHY-MNT-BPC-GET.cnf............................................................................................................... 75

3.15.11 PHY-MNT-RXGAIN-GET.req....................................................................................................... 76

3.15.12 PHY-MNT-RXGAIN-GET.cnf....................................................................................................... 76

3.15.13 PHY-MNT-TXGAIN-GET.req....................................................................................................... 77

3.15.14 PHY-MNT-TXGAIN-GET.cnf....................................................................................................... 77

3.15.15 PHY-MNT-TXGAIN-SET.req ....................................................................................................... 78

3.15.16 PHY-MNT-TXGAIN-SET.cnf ....................................................................................................... 78

4-June-07 P1901_PRO_016_r0

Submission page 9 UPA-OPERA

3.15.17 PHY-MNT-POWMASK-GET.req.................................................................................................. 79

3.15.18 PHY-MNT-POWMASK-GET.cnf.................................................................................................. 79

3.15.19 PHY-MNT-POWMASK-SET.req .................................................................................................. 80

3.15.20 PHY-MNT-POWMASK-SET.cnf .................................................................................................. 80

3.15.21 PHY-MNT-SYNC.ind .................................................................................................................... 81

3.15.22 PHY-MNT-SYNC.req .................................................................................................................... 81

3.15.23 PHY-MNT-SYNC.cnf .................................................................................................................... 82

4 MAC.................................................................................................................................................................... 82

4.1 OVERVIEW ............................................................................................................................................... 82

4.1.1 Contention free medium access examples .......................................................................................... 83

4.1.2 Contention medium access example ................................................................................................... 85

4.2 MAC STATES MANAGEMENT .............................................................................................................. 86

4.2.1 Master side .......................................................................................................................................... 86

4.2.2 Slave side ............................................................................................................................................ 88

4.2.3 Transition state diagrams .................................................................................................................... 90

4.3 FRAME FORMATS ................................................................................................................................... 92

4.3.1 Distributor Frame ................................................................................................................................ 94

4.3.2 Data Frame .......................................................................................................................................... 96

4-June-07 P1901_PRO_016_r0

Submission page 10 UPA-OPERA

4.3.3 Silence Frame...................................................................................................................................... 96

4.3.4 Channel Estimation Frame.................................................................................................................. 97

4.3.5 Polling Frame...................................................................................................................................... 99

4.3.6 TDR Polling Frame ........................................................................................................................... 100

4.3.7 CSMA Frame .................................................................................................................................... 101

4.3.8 Access Frame .................................................................................................................................... 102

4.3.9 Access Reply Frame.......................................................................................................................... 102

4.3.10 Non-returnable Data Frame............................................................................................................... 104

4.3.11 Clock Frame ...................................................................................................................................... 104

4.4 MAC DELIMITERS................................................................................................................................. 106

4.4.1 Token announce ................................................................................................................................ 106

4.4.2 Token ................................................................................................................................................ 111

4.5 TOKEN LOSS RECOVERY.................................................................................................................... 127

4.6 MAC PARAMETERS SPECIFICATION................................................................................................ 131

4.7 MAC service specification (MAC SAP)................................................................................................... 133

4.7.1 MAC service primitives .................................................................................................................... 133

4.7.2 MAC-DATA.req ............................................................................................................................... 134

4.7.3 MAC-DATA.cnf ............................................................................................................................... 135

4-June-07 P1901_PRO_016_r0

Submission page 11 UPA-OPERA

4.7.4 MAC-DATA.ind ............................................................................................................................... 135

4.7.5 MAC-ACK.req.................................................................................................................................. 136

4.7.6 MAC-ACK.cnf.................................................................................................................................. 136

4.7.7 MAC-ACK.ind.................................................................................................................................. 137

4.7.8 MAC-MNT-TOKEN.req .................................................................................................................. 137

4.7.9 MAC-MNT-TOKEN.ind .................................................................................................................. 138

4.7.10 MAC-MNT-TOKEN.cnf .................................................................................................................. 138

4.7.11 MAC-MNT-RESOURCES.req ......................................................................................................... 139

4.7.12 MAC-MNT-RESOURCES.ind......................................................................................................... 139

4.7.13 MAC-MNT-RESOURCES.cnf ......................................................................................................... 140

4.7.14 MAC-MNT-CHANEST-FRAME.req............................................................................................... 141

4.7.15 MAC-MNT-CHANEST-REQ.req .................................................................................................... 141

4.7.16 MAC-MNT-CHANEST-REQ.ind .................................................................................................... 142

4.7.17 MAC-MNT-NHOPS.req ................................................................................................................... 142

4.7.18 MAC-MNT-NHOPS.cnf ................................................................................................................... 143

4.7.19 MAC-MNT-CHANGE.req ............................................................................................................... 143

4.7.20 MAC-MNT-CHANGE.cnf ............................................................................................................... 144

4.7.21 MAC-MNT-TXSYMB.ind ............................................................................................................... 144

4-June-07 P1901_PRO_016_r0

Submission page 12 UPA-OPERA

4.7.22 MAC-MNT-CHANSTATS.req......................................................................................................... 145

4.7.23 MAC-MNT-CHANSTATS.cnf......................................................................................................... 145

4.7.24 MAC-MNT-NEWMID.ind ............................................................................................................... 146

4.7.25 MAC-MNT-LINK-STATUS.req ...................................................................................................... 146

4.7.26 MAC-MNT-LINK-STATUS.cnf ...................................................................................................... 147

5 LLC ................................................................................................................................................................... 147

5.1 INTRODUCTION..................................................................................................................................... 147

5.2 BURST HEADER..................................................................................................................................... 148

5.2.1 Burst header with data....................................................................................................................... 148

5.2.2 Burst header without data.................................................................................................................. 151

5.3 BURST STRUCTURE.............................................................................................................................. 153

5.3.1 Unencrypted Burst Structure............................................................................................................. 153

5.3.2 Encrypted Burst Structure ................................................................................................................. 156

5.4 Packet ACK Protocol ................................................................................................................................ 157

5.4.1 Transmission window management .................................................................................................. 158

5.4.2 Packet ACK Protocol: Group Encoding............................................................................................ 158

5.4.3 Packet ACK Protocol: Run-Length Encoding .................................................................................. 161

5.4.4 Transmission of PAP information..................................................................................................... 163

4-June-07 P1901_PRO_016_r0

Submission page 13 UPA-OPERA

5.5 LLC service specification (LLC SAP) ...................................................................................................... 163

5.5.1 LLC service primitives...................................................................................................................... 163

5.5.2 LLC-DATA.req................................................................................................................................. 164

5.5.3 LLC-DATA.cnf................................................................................................................................. 164

5.5.4 LLC-DATA.ind................................................................................................................................. 165

5.5.5 LLC-MNT-ACKMODE.req ............................................................................................................. 165

6 CONVERGENCE LAYER............................................................................................................................... 166

6.1 OVERVIEW ............................................................................................................................................. 166

6.2 PACKET FORMAT.................................................................................................................................. 166

6.2.1 Maximum and Minimum Packet length............................................................................................ 167

6.2.2 OVLAN Fields .................................................................................................................................. 168

6.2.3 BPL service class .............................................................................................................................. 168

6.2.4 PB Field............................................................................................................................................. 169

6.2.5 Octet alignment ................................................................................................................................. 169

6.3 CONVERGENCE LAYER SERVICE PRIMITIVES.............................................................................. 171

6.3.1 Multi-port transfer requests............................................................................................................... 172

6.4 BROADCAST/MULTICAST HANDLER FUNCTIONAL REQUIREMENTS .................................... 172

7 BRIDGING FUNCTION.................................................................................................................................. 173

4-June-07 P1901_PRO_016_r0

Submission page 14 UPA-OPERA

7.1 General ...................................................................................................................................................... 173

7.2 IEEE 802.1D conformance ....................................................................................................................... 173

7.3 IEEE 802.1Q conformance ....................................................................................................................... 174

7.4 OVLAN Function...................................................................................................................................... 174

7.4.1 General .............................................................................................................................................. 174

7.4.2 Frame admittance and OVLAN assignment ..................................................................................... 175

7.4.3 OVLAN Ingress filtering .................................................................................................................. 176

7.4.4 OVLAN Egress filtering ................................................................................................................... 176

7.4.5 OVLAN management ....................................................................................................................... 176

7.5 Sending broadcast/multicast Ethernet frames ........................................................................................... 176

7.6 PB field ..................................................................................................................................................... 177

7.6.1 Bridging between BPL ports ............................................................................................................. 177

7.6.2 Bridging from a non-BPL port to a BPL port ................................................................................... 177

7.7 BPL service class transmission ................................................................................................................. 177

7.8 Filtering multicast management messages from a BPL port..................................................................... 177

7.9 Filtering multicast management messages from the management port..................................................... 178

8 QOS SERVICES............................................................................................................................................... 178

8.1 INTRODUCTION..................................................................................................................................... 178

4-June-07 P1901_PRO_016_r0

Submission page 15 UPA-OPERA

8.2 SERVICE CLASS DEFINITION ............................................................................................................. 179

8.2.1 Priority .............................................................................................................................................. 179

8.2.2 Max Subcell Access Time................................................................................................................. 179

8.2.2.1 Configuration .................................................................................................................................... 180

8.2.3 Resource reservation type ................................................................................................................. 180

8.2.3.1 Configuration .................................................................................................................................... 180

8.2.4 Service reliability .............................................................................................................................. 181

8.2.4.1 Configuration .................................................................................................................................... 181

8.2.5 Example of a service class definition................................................................................................ 181

8.2.6 Provisioning Service Class Definitions to slaves .............................................................................. 183

8.3 CONGESTION MANAGEMENT ........................................................................................................... 183

8.3.1 Configuration .................................................................................................................................... 184

8.4 CONNECTION ADMISSION CONTROL.............................................................................................. 184

8.5 Traffic Shaping.......................................................................................................................................... 185

8.5.1 QOS Requirements............................................................................................................................ 185

9 LAYER MANAGEMENT................................................................................................................................ 186

9.1 CONTROL PROTOCOLS........................................................................................................................ 186

9.1.1 CCP (Communication Control Protocol) Description....................................................................... 186

4-June-07 P1901_PRO_016_r0

Submission page 16 UPA-OPERA

9.1.2 Adaptive Bit-Loading Protocol (ABLP) ........................................................................................... 192

9.1.3 Access Protocol ................................................................................................................................. 197

9.1.4 Port Solver Protocol .......................................................................................................................... 202

10 SECURITY ................................................................................................................................................... 279

10.1 LOW LEVEL ENCRYPTION AND INTEGRITY.................................................................................. 279

10.1.1 Overview........................................................................................................................................... 279

10.1.2 Detailed encryption process .............................................................................................................. 280

10.2 AAA protocol............................................................................................................................................ 286

10.3 Key Hierarchies......................................................................................................................................... 292

10.4 Establishing the keys................................................................................................................................. 293

11 SYSTEM PARAMETERS............................................................................................................................ 294

11.1 GENERAL PARAMETERS..................................................................................................................... 294

11.2 AGC (AUTOMATIC GAIN CONTROL) PARAMETERS..................................................................... 298

11.3 RADIUS PARAMETERS ........................................................................................................................ 299

11.4 CLASS OF SERVICE (COS) PARAMETER .......................................................................................... 300

11.5 QUALITY OF SERVICE (QOS) PARAMETERS .................................................................................. 302

11.5.1 Slave Node Parameters (CPE)........................................................................................................... 303

11.5.2 Master Node Parameters (HE or REPEATER)................................................................................. 303

4-June-07 P1901_PRO_016_r0

Submission page 17 UPA-OPERA

11.6 PROFILES PARAMETERS..................................................................................................................... 304

11.7 TRANSLATION TABLE PARAMETERS.............................................................................................. 309

11.8 MAC FILTER PARAMETERS................................................................................................................ 310

11.9 NTP PARAMETERS................................................................................................................................ 311

11.10 SNMP PARAMETERS ........................................................................................................................ 312

11.11 STP PARAMETERS ............................................................................................................................ 312

11.12 VOIP PARAMETERS.......................................................................................................................... 315

11.12.1 Dial Plan Configuration ................................................................................................................ 322

11.12.2 Country Specific Parameters......................................................................................................... 324

11.12.3 Tone pattern configuration ............................................................................................................ 327

11.13 VLAN NETWORK............................................................................................................................... 327

11.14 OVLAN PARAMETERS ..................................................................................................................... 330

11.15 CUSTOM VLAN/OVLAN PARAMETERS........................................................................................ 331

11.15.1 Custom VLAN Parameters............................................................................................................ 332

11.15.2 Custom OVLAN Parameters......................................................................................................... 337

11.16 ACCESS PROTOCOL PARAMETERS .............................................................................................. 341

12 CONFIGURATION...................................................................................................................................... 344

12.1 MIB ........................................................................................................................................................... 344

4-June-07 P1901_PRO_016_r0

Submission page 18 UPA-OPERA

12.1.1 SNMP Management .......................................................................................................................... 344

12.1.2 MIB-II for IEEE P1901..................................................................................................................... 345

12.1.3 IEEE P1901 Private MIB .................................................................................................................. 346

12.2 AUTO-CONFIGURATION AND PROVISIONING............................................................................... 358

12.2.1 Auto-configuration purpose .............................................................................................................. 358

12.2.2 Auto-configuration process overview ............................................................................................... 358

12.2.3 Access Protocol ................................................................................................................................. 360

12.2.4 Auto-configuration at Modem Boot.................................................................................................. 361

12.2.5 PTTP Protocol................................................................................................................................... 362

12.2.6 Translation Table .............................................................................................................................. 371

12.2.7 Auto-configuration & Networking.................................................................................................... 372

12.2.8 DHCP Support .................................................................................................................................. 375

12.2.9 RADIUS Support .............................................................................................................................. 376

12.3 Auto-configuration Parameters ................................................................................................................. 377

12.3.1 Parameter Types................................................................................................................................ 377

12.3.2 Parameter Format .............................................................................................................................. 377

12.3.3 Auto-configuration parameter list ..................................................................................................... 378

ANNEX A MIB DEFINITION IN ASN.1 FORMAT (NORMATIVE) ............................................................ 394

4-June-07 P1901_PRO_016_r0

Submission page 19 UPA-OPERA

ANNEX B Performance (InforMative) ............................................................................................................... 442

B.1 Data stream ............................................................................................................................................... 442

B.2 Delimiters.................................................................................................................................................. 444

1 INTRODUCTION

This document is the technical specification of the IEEE P1901 technology.

1.1 SCOPE

This document specifies a physical layer (PHY), medium access control (MAC), LLC layer and convergence layer for data transmission over the electrical BPLs for Access Networks.

1.2 OVERVIEW

The purpose of this document is to specify a BPL data transmission system based on Orthogonal Frequency Division Multiplexing (OFDM) for providing Access services.

Specifically this specification,

- Describes a PHY capable of achieving rates in excess of 200 Mbps

- Describes a Master-Slave MAC optimised for the Access BPL environment

- Describes the QoS mechanisms available to support bandwidth and latency guarantees

- Describes the security procedures used to provide data privacy over the BPL medium

The description is written from the transmitter perspective to ensure interoperability between devices and allow different implementations. Some minimal requirements about the receiver behaviour are also given.

1.3 REFERENCES

The following standards contain provisions which, through references in this text, constitute normative provisions of this specification. At the time of publication, the editions indicated were valid. All standards are subject to

4-June-07 P1901_PRO_016_r0

Submission page 20 UPA-OPERA

revision, and parties to agreements based on this standard are encouraged to investigate the possibility of applying the most recent revisions of the standards listed below.

• ANSI X9.42: 2003. Agreement of Symmetric Keys Using Discrete Logarithm Cryptography

• IEEE 802.3 Standards for Local and Metropolitan Area Networks – Residential Ethernet

• IEEE 802.1p Standards for Local and Metropolitan Area Networks - Traffic Class Expediting and Dynamic Multicast Filtering

• IEEE 802.1D Standards for Local and Metropolitan Area Networks – MAC bridges

• IEEE 802.1q Standards for Local and Metropolitan Area Networks - Virtual Bridged Local Area Networks

• IEEE 802.1w Standards for Local and Metropolitan Area Networks - Rapid Reconfiguration of Spanning Tree

• IEEE 802.11i Standards for Local and Metropolitan Area Networks – Medium Access Control (MAC) Security Enhancements

• RFC 3610 - Counter with CBC-MAC (CCM)

• NIST 800-38A - 2001, Recommendation for Block Cipher Modes of Operation

• FIPS PUB 198 - The Keyed-hash Message Authentication Code

• FIPS 197 – Advanced Encryption Standard (AES)

1.4 DOCUMENT CONVENTIONS

This document is divided into sections and appendices. The document body (all sections) is normative (except for italicised text); each appendix is identified as in its title as normative or informative.

Text formatted in italics is not part of the specification. It is for clarification only.

Binary numbers are indicated by the prefix 0b followed by the binary digits, for example, 0b0101. Hexadecimal numbers are indicated by the prefix 0x.

Formal requirements are indicated with ‘shall’ in the main body of this document.

Options are indicated with ‘may’ in the main body of this document. If an option is incorporated in an implementation, it shall be done as specified in this document.

⎡ ⎤⋅ denotes rounding to the closest higher or equal integer

4-June-07 P1901_PRO_016_r0

Submission page 21 UPA-OPERA

⎣ ⎦⋅ denotes rounding to the closest lower or equal integer

1.5 DEFINITIONS

Active slave An Active slave regularly gets transmission opportunities via the reception of data tokens from its master.

Bridge port Ports of the bridging block. There are three types of bridge ports: BPL ports, non-BPL ports and the management port. BPL ports are the bridge ports that are directly mapped onto the completed entries of the Port Solver Table. Non-BPL ports are any other external ports of the node (e.g. Ethernet, USB, WIFI,…). The management port is used for the exchange of management messages between the bridging block and the layer management.

Bridging block A functional block which is placed above the convergence layer. This block makes uses of standard 802.1D bridging to perform a layer-2 interconnection between the bridge ports of a node.

Broadcast A transmission that is addressed to all the units of a layer-2 Local Area Network. It corresponds to the transmission of an Ethernet frame with an Ethernet Broadcast Destination address. It might be carried over the broadcast port or can be transmitted consecutively over unicast ports.

Broadcast port Specific LLC port which value is 127. Transmission over the broadcast port makes use of the HURTO modulation.

Burst A MAC Service Data Unit passed to the MAC layer by the LLC layer. A Burst includes one or several complete or fragmented packets destined to the same port.

Channel Estimation Frame

A Channel Estimation MPDU which does not contain any data payload. A Channel Estimation Frame starts with a Token Announce followed by a specific sequence of symbols used for channel estimation. It is not terminated by a token.

CPE A BPL unit which only behaves as a slave node.

Data Payload Burst payload which is adaptive modulated or HURTO modulated, depending on the channel conditions.

4-June-07 P1901_PRO_016_r0

Submission page 22 UPA-OPERA

Delimiter A delimiter is a 22 byte block which is HURTO modulated over one single symbol. There are three types of delimiters: the Burst Header (LLC), the Token Announce and the Token (MAC).

FDR A BPL unit which combines a HE and either a CPE or a TDR.

FMN (Flow Master Node)

Is the node that guarantees the QoS of a certain traffic flow. The QC shall be always the FMN of the highest service classs of the BPL cell.

Frame An MPDU passed by the MAC layer to the PHY layer. It can be a regular MPDU or a Channel Estimation MPDU.

HE A BPL unit which only behaves as a master node. It is the root of a BPL cell. Contrarily to a TDR, the master part of a HE is not linked to a slave part from which the right to communicate depends.

Idle slave An Idle slave does not get any transmission opportunities from its master. However, it is regularly polled by its master. (see polling).

Master A node responsible for controlling access of its slaves to the network.

Message Management Protocol Data Units generated by the Layer Management block. Management messages are IEEE 802.3 SNAP encapsulated and provided to the bridging block before being subsequently transmitted onto the bridge ports. Management messages are either unicast or multicast. Multicast management messages are transmitted over the broadcast port using HURTO modulation. Unicast management messages are transmitted over the unicast port using the adequate mapping (adaptive or HURTO).

Mode A mode is defined by a symbol type, a carrier center frequency and an optional power mask

MPDU Mac Protocol Data Unit delivered by the MAC layer to the PHY layer. The MAC layer generates two kinds of MPDUs: regular MPDUs and Channel Estimation MPDUs. A Channel Estimation MPDU does not contain any data payload (see Channel Estimation Frame definition). A regular MPDU can contain zero, one or several bursts addressed to one or several ports. A regular MPDU starts with a Token Announce delimiter and is terminated by a Token delimiter. There are 6 types of regular MPDUs: data, polling, access, access reply, silence and non-returnable. The type of the regular MPDU corresponds to the type of the Token terminating the regular MPDU.

4-June-07 P1901_PRO_016_r0

Submission page 23 UPA-OPERA

Multicast A transmission that is addressed to a group of units of a LAN segment. It is making use of an Ethernet Multicast Destination address. It might be carried over port 127 using HURTO mode, consecutively over unicast ports or can be transmitted over native multicast ports.

Node A logical element which implements this specification.

Packet An LLC Service Data Unit passed by the Convergence layer to the LLC layer. Each Ethernet frame received from the Convergence layer is converted into one single packet.

PHY-signal PHY-signals are specific signals used as PPDU headers. PHY-signals include the SOT, SYNC and CREF signals.

BPL cell A set of units composed by a HE and the units under the direct or indirect control of that HE. A BPL cell is operating under the same symbol type and the same carrier center frequency.

BPL subcell A set of units composed by a master and the units under the direct control of that master

BPL sub-tree A set of units composed by a TDR and the units under the direct or indirect control of that TDR.

Polling Process under which a master regularly checks the status of its Idle slaves (CPEs or TDRs) . There are four types of polling identified by the type of the polling token. By using the Alive polling token, the master can detect if a slave is not connected anymore (Unregistered slave). By using the Active polling token, the master can detect if a slave is requiring transmission opportunities of a service class different from 7 (Active slave). In a similar way, using the Alive polling token, the TDR can detect if its own slave is not connected anymore (Unregistered slave). By using the Active polling token, the TDR can detect if its own slave is requiring transmission opportunities of a service class different from 7 (Active slave).,

Port LLC 7-bit address identifier. Communication between node A and B requires opening a Local Port on node A and B. The Local Port on node A is defined as the Remote Port on node B and vice-versa. Transmission is performed onto a Local Port whereas reception is performed from a Remote Port. From a receiver standpoint, a Remote Port is not unique: a remote node is uniquely identified by its Remote Port and its MAC address. Port entries are managed via the Port Solver Protocol and the Announce Messages. Port 127 is used as the broadcast port. Authorized port values are 9 to 126.

4-June-07 P1901_PRO_016_r0

Submission page 24 UPA-OPERA

Port Solver Table Addressing table used by the LLC layer. It contains entries with the association between MAC addresses of the distant nodes and ports. The entries are complete when both the local and first remote ports are assigned or incomplete when only the local port is assigned and the remote port is set to 0xFF. A second remote port is also available to perform native multicast transmissions

QC (QoS Controller)

QC is the node that distributes the access to the channel among all the nodes present in a PLC cell, sharing the same NID or not. It can be defined as the master of the PLC cell. Any node can become a QC. The QC cannot be fixed by the user and it is decided by the nodes. The QC shall be the FMN of the high priority data traffic of the BPL cell.

Registered slave A slave whose access to the network has been authorized via the Access Protocol. A Registered slave can be Active or Alive.

REP Refers to either TDR or FDR

Slave A node for which transmission opportunities are controlled by its master. These transmission opportunities are specified as Validity Periods carried in some specific tokens delivered by the master. Slaves which are part of a TDR can delegate these transmission opportunities to their associated internal master (see TDR definition).

SOT A specific PHY-signal which starts all PPDUs. It is also used as a positive acknowledgement of a polling request.

Spatial reuse A feature which enables simultaneous node transmissions within non interfering BPL sub-trees of a single BPL cell. This feature relies on the non-returnable token and the Cluster Discovery Protocol

OFDM Symbol Transmitted signal for that portion of time when the modulating amplitude and phase state is held constant on each of the equally-spaced subcarriers in the signal.

Symbol type One from three different kinds of OFDM symbol, according to its duration.

TDR A BPL unit made of both an internal master part and a slave part which never operate at the same time. A TDR behaves either as a master or as a slave at different time periods. Contrarily to a HE, the master part of a TDR is not a permanent master which has permanent control of its transmission opportunities. The right to communicate of the master part of a TDR depends on the Validity Period assigned to its associated slave part.

4-June-07 P1901_PRO_016_r0

Submission page 25 UPA-OPERA

Tonemap Table that contains the amount of bits that shall be transmitted by each subcarrier.

Token The token is the MAC delimiter which terminates a regular MPDU. There are ten types of tokens: data and distributor token are used to propose transmission opportunities to one or more distant node, access/access reply tokens are used to discover Unregistered slaves, polling and TDR token are used for the slave and TDR states polling respectively, non-returnable token is used for allocating simultaneous transmission opportunities to several slaves (spatial reuse), silence token is used for sending a regular MPDU and keeping control of the medium after the transmission of this MPDU, CSMA token allow the priorized contention for the following transmission to every node that demodulate it, and clock token allow the synchronization in time of every node in the BPL cell.

Unicast A transmission that is addressed to a unique recipient.

Unregistered slave An Unregistered slave is not managed by any master. A master can detect such slaves via the exchange of an access frame and an access reply frame.

Visibility From a node to another node, when the first node is able to demodulate the token announce sent by the second node.

Word A data unit of 32-bits

1.6 ABBREVIATIONS AND ACRONYMS

4D Four Dimensional

AAA Authorization – Authentication – Accounting

ABLP Adaptive Bit-Loading Protocol

ABR Available Bit Rate

ACK ACKnowledge

4-June-07 P1901_PRO_016_r0

Submission page 26 UPA-OPERA

AFE Analogue Front End

AGC Automatic Gain Control

ANSI American National Standards Institute

APL Aggregated Payload Length

ARQ Automatic Repeat Request

ARP Address Resolution Protocol

ATM Asynchronous Transfer Mode

BE Best Effort

BER Bit Error Rate

BH Burst Header

BNDA Border Node Designation Acknowledge

BNDP Border Node Designation Protocol

BPC Bits Per subCarrier

BPDU Bridge Protocol Data Unit

BPS Bits Per Symbol

CAC Connection Admission Control

CBR Constant Bit Rate

CCITT Comité Consultatif International Téléphonique et Télégraphique

4-June-07 P1901_PRO_016_r0

Submission page 27 UPA-OPERA

CDP Cluster Discovery Protocol

CLPDU Convergence Layer Protocol Data Unit

CP Cyclic Prefix

CPE Customer Premises Equipment

CRC Cyclic Redundancy Check

CSM Class of Service Monitor

CTS Clear To Send

CW CodeWord

DAC Digital to Analogue Converter

DES Data Encryption Standard

DS DownStream

DSP Digital Signal Processing

EMC Electromagnetic Compatibility

FCMP Fair Congestion Management Policy

FEC Forward Error Correction

FIPS Federal Information Processing Standards

FFT Fast Fourier Transform

FTP File Transfer Protocol

4-June-07 P1901_PRO_016_r0

Submission page 28 UPA-OPERA

FMN Flow Master Node

FW Firmware

HE Head End

HURTO High Ultra Reliable Transmission for Ofdm

IEEE Institute of Electrical and Electronics Engineers

ICI Inter Carrier Interference

IDFT Inverse Discrete Fourier Transform

IDP Interference Detection Packet

IQ In-phase and Quadrature

ISI Inter Symbol Interference

ISO International Organization for Standardization

LLC Logical Link Control

LP Local Port

LPDU LLC Protocol Data Unit

LSB Least Significant Byte

LSDU LLC Service Data Unit

LV Low Voltage

MAC Media Access Control

4-June-07 P1901_PRO_016_r0

Submission page 29 UPA-OPERA

MIC Message Integrity Check

MID Master Identification

MPDU MAC Protocol Data Unit

MSB Most Significant Byte

MSDU MAC Service Data Unit

MTU Maximum Transfer Unit

MV Medium Voltage

OFDM Orthogonal Frequency Division Multiplexing

OPERA Open PLC European Research Alliance

CCP Communication Control Protocol

OSI Open Systems Interconnection

OUI Organizationally Unique Identifier

OVLAN Optimized VLAN

PAP Packet ACK Protocol

PAR Peak to Average Ratio

PBPS Physical Bits Per Symbol

PCMP Priority Congestion Management Policy

PDU Protocol Data Unit

4-June-07 P1901_PRO_016_r0

Submission page 30 UPA-OPERA

PHY PHYsical layer

BPL BPL Communications

PN Pseudo Noise

PPDU Physical Protocol Data Unit

PSD Power Spectral Density

PST Port Solver Table

QC QoS Controller

QoS Quality of Service

REP Repeater

RP Remote Port

RS Reed Solomon

RTS Request To Send

RX Reception

SNAP SubNetwork Access Protocol

SNR Signal to Noise Ratio

SLA Service Level Agreement

SOT Start of Transmission

STP Spanning Tree Protocol

4-June-07 P1901_PRO_016_r0

Submission page 31 UPA-OPERA

TA Token Announce

TCM Trellis Coded Modulation

TCP Transfer Control Protocol

TDD Time Division Duplexing

TDMA Time Division Multiple Access

TDR Time Division Repeater

TO TimeOut

TX Transmission

UDP User Datagram Protocol

UPA Universal BPL Association

US UpStream

VBR Variable Bit Rate

VLAN Virtual Local Area Network

VoIP Voice over IP

2 GENERAL DESCRIPTION

An access BPL network consists of a number of user terminals (CPEs) that transmit/receive traffic in a shared medium to/from a centralized station (HE). If the signal is too attenuated to reach all CPEs from the same HE, repeaters (REP) can be inserted in the network in order to retransmit the signal and thus increase the coverage. Repeaters can be either TDR or FDR. From this description, the type of topologies to be found in BPL access

4-June-07 P1901_PRO_016_r0

Submission page 32 UPA-OPERA

networks are tree-like topologies, like the one depicted in Figure 1, where a central node, called a HE, concentrates all of the upstream and downstream traffic, although other topologies, as the ring shape topologies, are also common. All kinds of structures in Medium Voltage (MV) and Low Voltage (LV) can be reduced to a HE plus Repeaters structure.

HE

REP

CPE CPE

REP

CPE CPE

HE

REP

REP

CPE

REP

CPE

Figure 1 Typical Access Scenario

2.1 GENERAL DESCRIPTION OF THE ARCHITECTURE

2.2 NODE DESCRIPTION

A BPL network can be made either of:

• one BPL cell,

• several BPL cells if they are interconnected via Frequency Division repeaters (FDR). FDR are made of a combination of one HE and one CPE or TDR operating in different modes.

In an access BPL network, there is usually one HE, placed in the MV/LV substation, that concentrates the upstream and downstream traffic from/to all the CPEs of all the connected BPL cells.

4-June-07 P1901_PRO_016_r0

Submission page 33 UPA-OPERA

A BPL cell is composed from a Medium Access Control point of view by a HE and the set of units (CPEs or TDRs) under the direct or indirect control of that HE operating under the same symbol type and the same carrier frequency. Itis composed of:

1. One HE

2. From zero to several TDRs

3. One (or several) CPE(s)

To gguarantee the required performance in terms of Quality of Service, the nodes can be also divided in three types by means of their function to assure the Quality of Service: QoS Controllers (QCs), assumed to be a HE in a typical BPL cell, Flow Master Nodes (FMN), that are the nodes that assures the resources needed by a certain class of service traffic flow, and End Points that have no management tasks regarding QoS assurance. The QCs are also the FMN of the higest service class in the BPL cell. More information about QoS can be found in section 8.

2.2.1 HE

The HE is the central node that controls the entire BPL cell. It assigns resources to all nodes of the BPL cell through the use of the token, according to the QoS requirements of the flows circulating on the BPL cell. The HE will always be the master of any node directly connected to it.

2.2.2 Time Division Repeaters

A TDR is used to increase the coverage in areas too far from the cell’s HE. TDRs are connected to the HE or to other TDRs that act as their master node. TDRs share the channel allocated to them by their master node and distribute it among their slave nodes according to the traffic flows and service classes in the BPL cell and the origin and destination of them. The TDR will be the slave of the HE or of another TDR, and will be the master of its slaves.

2.2.3 CPE

CPEs are BPL units installed in the customer’s household. A CPE must subscribe to the network before being able to access the channel. Subscribing to the network means selecting a master node that assigns channel access time. In order to subscribe to the network, a validation process is run that acknowledges that the CPE is valid. After being accepted into the network, the CPE automatically downloads a file (auto-configuration process) detailing the parameters to use, such as the user profile and other configuration parameters. The CPE is always a slave.

2.3 MAC overview

In an IEEE P1901 pre-established network the access to the channel is managed in a hierarchical way. The HE (that is usually the QC and the FMN for the higest service class) schedules the use of the channel by its slaves depending on the current traffic flows and its previously accepted QoS requirements. The access to the channel can be managed by the HE using two main procedures.

4-June-07 P1901_PRO_016_r0

Submission page 34 UPA-OPERA

1. Sending indidually to each of the slaves a data or distributor frame, containg data from the HE to the slaves and finished by a token that contains the next slave or list of slaves that shall use the channel when the first transmission is finished in a predetermined order. The amount of channel time assigned by the HE and can be fixed for a timing interval or not. In the first case the channel allocation can be synchronous with the mains or not. In the second case if a node does not use the entire assigned time, the right to transmit is immeadiately given to the following node in the list or returned to the HE.:

2. Sending a CSMA token, that opens a priorized contention among the nodes that receive it. The winner of the contention shall obtain the right to transmit for the given amount of time, and then, the right to transmit is returned to the HE.

By means of the first procedure, a timing interval can be programmed where different slaves can allocate their transmissions.

2.4 QoS overview

IEEE P1901 provides various mechanisms to assure the QoS of the traffic flows in the BPL cell. Traffic flows are session oriented and tagged with certain service class that implies certain requirements in terms of latency and bandwith, jointly with a requirement in terms of level of assurance of the reserved resources.

A slave requiring to transmit certain type of traffic shall first classify it in one of the eight available service classes, each one with a preprogrammed latency, bandwidth and level of assurance of the required resources, that can be Variable Bit Rate (VBR), Constant Bit Rate (CBR), Available Bit Rate (ABR) or Best Effort. The mapping from Service Classes to the Bandwith, Latency and Type of Traffic is common and known by all nodes in the BPL cell.

Then, by means of the Connection Admission Control (CAC) protocol, the requirements to transmit the traffic flow are solicited to the Flow Master Node of this service class, and can be accepted and a session ID shall be assigned to it, or rejected.

In the case where the maximum capacity of the channel is reached, several congestion policies can be applied by the QC and FMNs to admit, reject or drop current sessions in the BPL cell (See 8.3).

2.5 Security overview

IEEE P1901 specification provides a state-of-art security mechanism including CTR 128 bits AES encryption with individual key for each CLPDU or fragment of CLPDU, integrity mechanisms by means of CBC 128 bits AES also performed individually for each CLPDU or fragment CLPDU, integrity protection of MAC addess, RADIUS and 802.1X based key distribution and AAA protocol, etc.

Recommendations from 802.11i standard have been specially taken into account to design the security specification of IEEE P1901. More details are disclosed in section 10.

4-June-07 P1901_PRO_016_r0

Submission page 35 UPA-OPERA

2.6 NETWORK REFERENCE MODEL

This specification defines PHY, MAC, LLC and Convergence Layer functionality as well as minimal bridging

requirements to be supported by all compliant implementations. It also defines layer management functions.

Finally, it also contains specifications for Security and Configuration, including MIBs and autoconfiguration

issues.

Figure 2 System Reference Model

4-June-07 P1901_PRO_016_r0

Submission page 36 UPA-OPERA

This document specifies Packet Management, LLC, MAC and PHY behaviour. End-to-end services are provided by protocol layers not specified in this document.

At an application level the system appears as a black box between information packet interfaces and the BPL.

The Bridging function is mandatory and described in section 7. From a bridging standpoint, the layer management block is connected to the bridging function via a management port. The Convergence Layer is seen as a set of BPL ports.

The Convergence layer performs the Ethernet Frame to Packet conversion. This function performs the conversion between Ethernet II/802.3 frames (802.1 p/q tagged or untagged) and 32-bit aligned packets. On the transmission path, the converter also sets the priority and the OVLAN tag, if needed. The Broadcast/Multicast handling is also done at this level.

The LLC layer provides peer convergence layers with the ability to exchange LLC service data units (LSDUs=packets). Given a maximum size constraint on the LPDU payload provided by the layer management, the LLC segments and/or groups packets into LPDU payloads (burst payloads) to be transferred over the same transmission port. When several packets are present within a burst payload, inter-packets headers are appended. In relation with the layer management, the LLC also deals with encryption/decryption of burst payloads. The LLC will append the burst header to a burst payload.

The MAC layer provides peer LLC layers with the ability to exchange MAC service data units (MSDUs=LPDUs=burst). On the transmission path, the MAC layer performs the grouping of bursts=MSDU into an MPDU. The MAC layer also provides the layer management with the ability to generate specific MPDUs=frames for performing background tasks: silence management, channel estimation, node status polling and node discovery. The MAC layer handles 7 types of frames (data, silence, channel estimation, polling, access, access reply and non-returnable data). All these frames start with a token announce delimiter. Except for the channel estimation frame, all the other frames are terminated with a token delimiter which content depends on the type of the frame.

The PHY layer performs the OFDM modulation and the digital signal processing (DSP) needed to transmit the MPDU over the BPL channel. It also adds the FEC redundancy.

3 PHY

This section specifies the Physical Layer Entity for an Orthogonal Frequency Division Multiplexing (OFDM) system. OFDM has been chosen as the modulation technique because of its inherent adaptability in the presence of frequency selective channels, its resilience to jammer signals, its robustness to impulsive noise and its capacity of achieving high spectral efficiencies.

4-June-07 P1901_PRO_016_r0

Submission page 37 UPA-OPERA

3.1 OVERVIEW

The diagram in Figure 3 shows an example PHY layer of a transmitter.

On the transmitter side, the PHY layer receives its inputs from the Media Access Control Layer. Two separate bit streams are shown because of the different encoding for data and control information. The delimiters shall be interleaved by the Control Interleaving block and mapped by the HURTO Mapping block; while the data stream shall be mapped using the HURTO Mapping block or the Adaptive Mapping block, depending on the reliability level required for the transmission. The outputs of both Mapping blocks lead into the Scrambler, which is followed by 4D-TCM (Four Dimensional Trellis Coded Modulation) encoding. The next step is the OFDM Modulation, which is composed of the Subcarrier Modulator, the IDFT (Inverse Discrete Fourier Transform), the Cyclic Prefix generator and the symbol windowing operation structure. The resulting digital signal is converted to an analog signal by means of a DAC and IQ modulated, before passing to the amplifying and filtering stages.

Data payload

Delimiters

IDFT Cyclic Prefix 4D TCM

SubcarrierModulator

HURTOMapping

Scrambler Window

DAC

AmplifiersFilters

Data Reed-Solomon

Encoder Adaptive Mapping

Control Reed-Solomon

Encoder

Power Line

Control InterleavingCRC

IQ mod

Figure 3 Transmission PHY layer

3.2 PHY LAYER FRAME

Figure 4 shows the symbols that are transmitted in a PPDU.

4-June-07 P1901_PRO_016_r0

Submission page 38 UPA-OPERA

SOT Synchronizationsymbol

Channel referencesymbol

Control and datasymbols

maximum 243 symbols

Figure 4 PPDU

The maximum duration of a PPDU is 243 symbols (counting from the synchronization symbol to the last symbol of the frame). A receiver shall be able to handle a maximum duration PPDU.

The gap between the last non-zero sample of the SOT and the first non-zero sample of the synchronization symbol shall be 2.75 ± 0.25 µs.

The time between two consecutive PPDUs is fixed and known by all modems as the INTER PPDU SPACE 1 (see 3.11 and 4.6). Only when scheduling the token by means of a Distributor Frame, the time can be reduced and is called INTER PPDU SPACE 2 (see 3.11 and 4.6).

3.3 FORWARD ERROR CORRECTION

3.3.1 Delimiters

There are several types of delimiters that will be explained in 4.4 and 5.2. Delimiters are mapped to one OFDM symbol, so they will always have the same size.

Three main calculations will be made over a delimiter as is shown in Figure 5.

CRC-16 RS (12,8)Encoder

Framecontrol

Interleaver

176 bits 192 bits 288 bits 288 bits

Figure 5 Delimiter encoding

3.3.1.1 CRC-CCITT

A CRC-CCITT is applied to the incoming 176 bits length delimiter applying the polynomial generator:

4-June-07 P1901_PRO_016_r0

Submission page 39 UPA-OPERA

1)( 51216 +++= xxxxg

Equation 1

The CRC check called CRC(x), can be obtained as the remainder of the division between I(x)*x16 and g(x), where I(x) is a binary coefficients polynomial given by:

012

2174

174175

175 ....)( IxIxIxIxIxI +++++=

Equation 2

Therefore the CRC is expressed as:

0114

1415

15 ....)( CRCxCRCxCRCxCRCxCRC ++++=

Equation 3

The resulting frame will be:

015

1516

017

118

2190

174191

17516 .......)()()( CRCxCRCxIxIxIxIxIxCRCxxIxT ++++++++=+= Equati

on 4

A total of sixteen bits resulting from the CRC algorithm are then appended to the delimiter.

The transformation is shown in the following figure:

I175 I174 I2 I1 I0

I175 I174 I2 I1 I0 CRC15 CRC0

Figure 6 Delimiter CRC

4-June-07 P1901_PRO_016_r0

Submission page 40 UPA-OPERA

3.3.1.2 Reed-Solomon Delimiter Coding

Delimiters are composed by six RS codewords from (n=12,k=8,t=2) RS code.

Four (n-k=4) parity symbols p3, p2, p1, p0 shall be appended to k=8 message symbols m7, m6, … , m0 to form a Reed-Solomon codeword m7, m6, … , m0, p3, p2, … , p0, where symbol m7 is the first four bits symbol in time out of the Reed-Solomon encoder. Each RS symbol is composed of four bits.

The parity symbols shall be computed from the message symbols using the Equation 5:

)(mod)()( 4 xgxxMxRS =

Equation 5

Where the message polynomial is:

016

67

7 ...)( mxmxmxmxM ++++=

Equation 6

The parity symbols are expressed as the following polynomial;

012

23

3)( pxpxpxpxRS +++=

Equation 7

The field generator binary polynomial that generates each RS symbol is given by:

1)( 4 ++= xxxf

Equation 8

And the code generator polynomial is given by:

4-June-07 P1901_PRO_016_r0

Submission page 41 UPA-OPERA

))()()(()( 4321 αααα −−−−= xxxxxg

Equation 9

The RS binary symbol representation for delimiters of α0 is 0b0001, where the left most bit of this RS symbol is the most significant bit (MSB). This way, the binary representation of each of the redundancy symbols generated on the Galois field GF(24) denoted as p3, p2, p1, p0 will be represented as RSX15, RSX14, RSX13, and RSX12 for the symbol p3, RSX11, RSX10, RSX9, and RSX8 for the symbol p2, RSX7, RSX6, RSX5, and RSX4 for the symbol p1 and RSX3, RSX2, RSX1, and RSX0 for the symbol p0, where X denotes the RS codeword number.

The following figure shows the final binary level representation of the delimiter:

I175 I174 I144 RS115 RS10

I143 I112 RS215 RS20I142

CRC0 RS615 RS60I15 I14

Figure 7 Reed Solomon bit format

The first bit to be transmitted is the leftmost of the first codeword (I175), followed by the rest of the bits of the RS codeword. Then, the second codeword, and so on. This is illustrated in

015011101430174175 6...5.......2...1... RSIRSIRSIRSII

Figure 8 Reed Solomon bit order

3.3.1.3 Delimiter Interleaving

After RS encoding, the six resulting RS codewords shall be interleaved with interleaving depth of six RS codewords and 4 bits granularity, in such a way that the first four bits of each RS codeword shall be sent first to the interleaver, then, the second 4 bits of each of the six RS codewords and so on. We can group the bits in nibbles for clarity:

4-June-07 P1901_PRO_016_r0

Submission page 42 UPA-OPERA

)6,6,6,6()6,6,6,6(

:)1,1,1,1(

:)1,1,1,1(

),,,(:

),,,(

01230

45671

012360

1213141563

14414514614764

17217317417571

RSRSRSRSNRSRSRSRSN

RSRSRSRSN

RSRSRSRSNIIIIN

IIIIN

==

=

==

=

Equation 10

Figure 9 illustrates this interleaving

N71 N70 N61 N60

N59 N58 N49 N48

N11 N10 N1 N0

N71 N59 N23 N11

N70 N58 N22 N10

N60 N48 N12 N0

Figure 9 Frame control interleaving

With reference to the right half of Figure 9 the transmission order is row-wise, starting with the first row and from left to right, then the second row, and so on. In other words, the MSB of N71 will be the first to be transmitted, after N71, the next will be N59, and N0 will be last.

3.3.2 Data payload

The data payload, delimited by a burst header, shall be encoded by a variable rate 8-bit symbol Reed Solomon encoder. The RS data mode is set from the fields “FEC redundancy” and “FEC payload” of the burst header. The “FEC redundancy” value will determine which of the four RS data modes is used. The generator polynomial and redundancy of each of the available modes is given in Table 1:

RS data mode g(x) RS data code

4-June-07 P1901_PRO_016_r0

Submission page 43 UPA-OPERA

0 ))...()()(()( 832 αααα −−−−= xxxxxg (k0+8,k0,t=4)

1 ))...()()(()( 1232 αααα −−−−= xxxxxg (k1+12, k1,t=6)

2 ))...()()(()( 1632 αααα −−−−= xxxxxg (k2+16, k2,t=8)

3 ))...()()(()( 2032 αααα −−−−= xxxxxg (k3+20, k3,t=10)

Table 1 RS data polynomials

The “FEC payload” field in each burst header contains the number of 32-bit words that will be coded per RS codeword, and therefore determines the amount of payload bytes per codeword (ki).

Maximum and minimum value for this field is given depending on the mode in Table 2:

Min payload in words RS data mode

Redundancy words

Max payload in words

HURTO Adaptive

0 2 61 2 34

1 3 60 3 33

2 4 59 4 32

3 5 58 5 31

Table 2 RS data payload

Each data payload shall be coded following a different RS coding scheme that will be configured in each Burst header. The selected coding scheme is a shortened Reed-Solomon code that can be processed as a systematic RS(255, 255-2*ti,ti) by adding 255-(ki+2ti) bytes set to zero before the information bits. After the RS coding procedure these null bytes shall be discarded, leading to RS codewords of n = ki+2t bytes

4-June-07 P1901_PRO_016_r0

Submission page 44 UPA-OPERA

When the data payload length is not an integer number of Reed-Solomon codewords, the last Reed Solomon codeword will have a special coding given by the formula:

[ ] ttkAPLk ilastcw 2)*2mod()*4( −+=

Equation 11

Where APL is the data payload length in number of 32-bit words including RS coding parity bits.

For the last codeword, no minimum value in k is applied.

The incoming data payload shall be grouped in L groups of ki bytes, where ki has been taken from the “FEC payload” field in burst header, and a last group of klastcw bytes, calculated from Equation 11, as can be seen in the following figure:

IL*ki+klastcw-1 IL*ki+klastcw-2 I(L-1)*ki+klastcw RS12*t-1 RS10

I(L-1)*ki+klastcw-1 I(L-1)*ki+klastcw-2 I(L-2)*ki+klastcw RS22*t-1 RS20

Iklastcw-1 Iklastcw-2 I0 RS(L+1)2*t-1 RS(L+1)0

Iki+klastcw-1 Iki+klastcw-2 Iklastcw RSL2*t-1 RSL0

L Blocks

ki bytes

klastcw

bytes

2*t bytes

2*t b

ytes

Figure 10 Reed Solomon byte grouping

4-June-07 P1901_PRO_016_r0

Submission page 45 UPA-OPERA

L is given by the formula:

( )⎥⎦⎥

⎢⎣

⎢+

=tk

APLLi *2*4

Equation 12

For each Reed-Solomon codeword, as in delimiter coding, (n-k) parity symbols pn-k-1, pn-k-2, … , p0 shall be appended to k message symbols mk-1, mk-2, … , m0 to form a Reed-Solomon codeword mk-1, mk-2, … , m0, pn-k-1, pn-k-2, … , p0, where symbol mk-1 is the first in time out of the Reed-Solomon encoder and the first in time of the uncoded data payload. Each of the symbols belongs to the Galois Field GF(28), and it is then represented in its binary form with eight bits. On the other hand, n and k variables depend on the selected RS data mode, taken from Table 1 and Table 2. The parity symbols shall be computed from the message symbols using the equation:

)(mod)()( xgxxMxP kn−=

Equation 13

Where

012

21

1 ...)( mxmxmxmxM kk

kk ++++= −

−−

Equation 14

Is the message polynomial,

012

21

1 ...)( pxpxpxpxP knkn

knkn ++++= −−

−−−−

−−

Equation 15

Is the parity polynomial and g(x) is the code generator polynomial of the Reed-Solomon code, given by Table 1

The field generator polynomial associated with the Reed-Solomon code is given by:

1)( 2348 ++++= xxxxxf

Equation 16

4-June-07 P1901_PRO_016_r0

Submission page 46 UPA-OPERA

The binary representation of α0 is 0b00000001, where the left most bit of this RS symbol is the most significant bit (MSB).

3.4 MAPPING MODES

Once obtained a delimiter or a data payload, one from two different mapping procedures shall be used. The mapping mode is indicated with the field HURTO in the burst header (see section 5.2). HURTO mapping is fixed. Adaptive mapping will be done following a table (called bit-loading table) with information on how many coded bits will be allocated in each of the 1536 subcarriers in a symbol

3.4.1 HURTO mapping

HURTO mode shall be used in all delimiters and in the data payload if it is indicated in the HURTO field in the burst header.

First, groups of 288 consecutive bits are made. Each of these groups is replicated eight times, in order to obtain groups of 2304 bits. The bit allocation table will be set to 2 bits per subcarrier for all the 1536 subcarriers of an OFDM symbol, and each resulting 2304 bits groups shall complete an entire OFDM symbol. 4D-TCM encoding will be done, with a reset in convolutional encoder each 288 incoming bits.

In the data payload case with the HURTO bit set in the burst header, the last group will be completed with zeroes, if necessary.

4-June-07 P1901_PRO_016_r0

Submission page 47 UPA-OPERA

Controlframe orHURTO

dataframe

zerofilling ifneeded

288bits

length

288bits

length

288bits

length2304bitslength

Frame to encode by 4DTCMafter scrambling

Frame after block coding.MSB is up.

Number of groups will be onefor control frame and no zerofilling will be done. Transmission orderwill be up to down, MSB first.

Figure 11 HURTO mapping

3.4.2 Adaptive mapping

When the HURTO bit is unset in the burst header, the data payload will be mapped following the bit allocation table, which sets how many coded (after 4D-TCM) bits will be allocated in each subcarrier.

When adaptive mapping is used, there must be at least 24 subcarriers with 2 or more information bits.

4-June-07 P1901_PRO_016_r0

Submission page 48 UPA-OPERA

Normal

Data Frame

Transmission order will be top to bottom, msb first.

BPS Bits

Frame after block coding. msb is up.

Zero filling if needed

Figure 12 Adaptive mapping

BPS in the figure means the number of necessary data bits to fill an entire OFDM symbol with a certain bit-loading. A mathematical expression of this definition is shown in Equation 17. The last symbol shall be padded with zeros before scrambling, if necessary, until an integer number of symbols is used.

3.5 TRELLIS CODED MODULATION (4D-TCM)

Once obtained a delimiter or data payload that will fill a integer number of OFDM symbols, a 16 state 4-dimensional truncated trellis code is used for error correction. This code will be applied over groups of 1536 subcarriers and reset each OFDM symbol, except in HURTO mode, where the 4D-TCM encoder will be reset each 192 subcarriers out, or, in other words, each 288 bits in.

3.5.1 Bit Extraction

Data bits from both delimiters and data payload shall be extracted according to a bit-loading table bj, with j=0…1535, righter bits first, in groups of z bits. In the case of HURTO mapping bj= 2 ∀j ∈ [0..1535]. Due to the constellation expansion associated with coding and the 4-dimensional nature of the code, zi will be calculated from a given pair (x,y) of two consecutive bj, where bj is the number of coded bits that subcarrier j will transmit.

Due to the heavy impairments of the BPL channel, or regional regulations, some subcarriers can be set not to carry any information. This case is denoted with a bit loading bj = 0 for such subcarriers. When the two consecutive subcarriers x and y that form a symbol of the four dimensional code are set to zero, no bit extraction is performed, and the following pair of subcarriers is taken into account. On the other hand, when only one of the two subcarriers

4-June-07 P1901_PRO_016_r0

Submission page 49 UPA-OPERA

is set to zero, a special bit extraction is performed to obtain the word called t’, including the insertion of two zeroes in position 0 and 2 of the final t’ word to be introduced in the codec. Similarly, when only one of the two subcarriers is set to one, the word t’ includes the insertion of one zero in position 2. If both subcarriers are set to one, the word t’ includes the insertion of two zeroes in position 0 and 2. Note that combinations of one subcarrier with 1 and another subcarrier with 0 are not allowed.

The extracted group will be noted as t’ and calculated from the following table:

Condition Binary word/comment

22 ≥≥ yx

( )12341 ...´ ttttttt zz −= Where

1' −+== yxzz

20 ≥= yx

( )00...´ 121 ttttt zz −= Where

12' +=+= yzz

02 =≥ yx

( )00...´ 121 ttttt zz −= Where

12' +=+= xzz

21 ≥= yx

( )1231 0...´ tttttt zz −= Where

yxzz +=+= 1'

12 =≥ yx

( )1231 0...´ tttttt zz −= Where

yxzz +=+= 1'

11 == yx ( )00´ 1tt = Where

4-June-07 P1901_PRO_016_r0

Submission page 50 UPA-OPERA

12' ++=+= yxzz

00 == yx Bit extraction not necessary, no message bits being sent

Table 3 Bit extraction

Since the maximum number of bits in a group will be 19, a 19 bits wide word called t´ will be formed from each two subcarriers, filling most significant bits with zeroes when z´ < 19. This word will be scrambled with a pseudorandom word generator.

The bits per symbol (BPS) is defined by:

SymbolizBPSi

i ∈∀= ∑

Equation 17

3.5.2 Scrambling

Each of the bits from the pseudorandom generator shall be generated with the same polynomial structure initialized with different seeds for each bit (where bit 0 is the least significant bit).

The pseudorandom sequence generator shall be the 10-bit PN generator with characteristic polynomial given by Equation 18.

( ) 1031 xxxf ++=

Equation 18

At the beginning of each symbol, the registers of the PN generators shall be set with the corresponding seeds given by Table 4

PN Seed

4-June-07 P1901_PRO_016_r0

Submission page 51 UPA-OPERA

0 0x2bf

1 0x3f0

2 0x3ff

3 0x28d

4 0x2d7

5 0x017

6 0x1e4

7 0x3d8

8 0x337

9 0x1f1

10 0x2a3

11 0x3f3

12 0x000

13 0x11f

14 0x329

15 0x177

16 0x331

17 0x119

4-June-07 P1901_PRO_016_r0

Submission page 52 UPA-OPERA

18 0x350

Table 4 Scrambling seed values

All the pseudorandom generators will advance once for each pair of extracted carriers. If no bit extraction is performed (x=y=0) the pseudorandom generators will not advance. The structure of each pseudorandom generator that generates a u word from the extracted t’ word is shown in Figure 13

The symbol number value shall be 1 for the channel reference symbol, and shall be incremented by 1 for every symbol there after.

OUTPUTBIT 0 (LSB)

10 9 8 7 6 5 4 3 2 1

OUTPUTBIT 18 (MSB)

PN GENERATOR 0

u1u19

t´19

10 9 8 7 6 5 4 3 2 1

PN GENERATOR 18

t´1

XOR

Symbol number (LSB)

Symbol number (MSB)

Figure 13 Scrambling

4-June-07 P1901_PRO_016_r0

Submission page 53 UPA-OPERA

3.5.3 Bit conversion

The binary word u = (uz´, uz´-1,… u1) determines two binary words v’=(v’z´-y,…,v’0) and w’=( w’y-1,…,w’0),

which are used to look up two constellations points in the encoder constellation table. As a first step, v and w are obtained from u, as shown in Figure 14. Finally, v’ and w’ are obtained from v and w. For the usual case of x≥2 and y≥2, z´=z=x+y-1, and v´=v and w´=w contain x and y bits respectively. For the special cases when x=0 and y≥2, z´=z+2=y+1, v´=v=(v1,v0) and w´=w=(wy-1,…,w0), when y=0 and x≥2, z´=z+2=x+1, w´=v=(v1,v0) and v´=w=(wx-1,…,w0), when x=1 and y≥2, z´=z+1=y, v´=v=(v1) and w´=w=(wy-1,…,w0), when y=1 and x≥2, z´=z+1=x, w´=v=(v1) and v´=w=(wx-1,…,w0) and when x=1 and y=1, z´=z+2=3, v´=(w1) and w´=(w0).

The bits (u3, u2, u1) determine (v1,v0) and (w1,w0) according to following figure:

ConvolutionalEncoder

v1=u1⊕u3v0=u3

w1=u0⊕u1⊕u2⊕u3

w0=u2⊕u3

uz´

uz´-1

uz´-y+3

uz´-y+2

uz´-y+1

u4

u3

u2

u1

u2

u1

u0

wy-1

wy-2

w2

vz´-y

vz´-y-1

v2

v1

v0

w0

w1

Figure 14 Conversion of u to v and w

The convolutional encoder shown in Figure 14 is a systematic encoder as shown in Figure 15. At the beginning of the encoding of each subcarrier group (1536 or 192 when HURTO mode is active), the convolutional encoder state is initialized to (0,0,0,0). No special operation to terminate the code is performed.

4-June-07 P1901_PRO_016_r0

Submission page 54 UPA-OPERA

Delay Delay DelayDelay

S0S1S2 S3

u1

u2

u0

u2

u1

Figure 15 Convolutional encoder

The remaining bits of v and w are obtained from the less significant and more significant parts of (uz´, uz´-1,…, u4), respectively. When x≥2 and y≥2, v´=v=(uz´-y+2, uz´-y+1,..., u4,v1,v0) and w´=w=(uz´, uz´-1,…, uz´-y+3,w1,w0). When x=0 or y=0 (but not both), v= (v1, v0), and it will be assigned to the zero loading subcarrier (v´ when only x=0 but not y and w´ when y=0 but not x). w will have y bits in the first case and x bits in the second, and will be assigned to the non zero loading subcarrier.

When x=1 or y=1 (but not both), v1 will be assigned to the 1 loading subcarrier (v´ when only x=1 but not y and w´ when y=1 but not x), v0 is dropped. w will have y bits in the first case and x bits in the second, and will be assigned to the non zero loading subcarrier.

When x=1 and y=1, v´=(w1) and w’=(w0)

The binary word v´ is input first to the constellation encoder, and the binary word w´ last.

3.5.4 Constellation encoder

Each of the two resulting binary words after 4D-TCM process, called v’ and w’, represent an amplitude ak and an increment to previous phase, called Δbk that will perform a new constellation point to be transmitted in one subcarrier. The first word to be processed and transmitted will be v’ and then w’. Since the mapping process to amplitude and phase increment will be the same for v’ and w’, we consider the following description based in a binary word called I that can be v’ or w’ indistinctly.

In the following table, mapping for each bit-loading and the pair (ak, Δbk) and its relationship with the binary word I is shown.

Bit-loading ak Δbk

4-June-07 P1901_PRO_016_r0

Submission page 55 UPA-OPERA

1 0,0,0,0 0,0,0,0,0, I0

2 0,0,0,0 0,0,0,0,I1, I1⊕I0

3 0,0,0,I1 0,0,0,0,I2, I0

4 0,0,0,I1 0,0,0,I2, I2⊕I3, I0

5 0,0,I4, I1 0,0,0,I2, I2⊕I3, I0

6 0,0,I5, I1 0,0,I2, I2⊕I3, I3⊕I4, I0

7 0,I6,I6⊕I5, I1 0,0,I2, I2⊕I3, I3⊕I4, I0

8 0,I7, I7⊕I6, I1 0,I2, I2⊕I3, I3⊕I4, I4⊕I5, I0

9 I8, I8⊕I7, I8⊕I7⊕I6, I1 0,I2, I2⊕I3, I3⊕I4, I4⊕I5, I0

10 I9, I9⊕I8, I9⊕I8⊕I7, I1 I2, I2⊕I3, I3⊕I4, I4⊕I5, I5⊕I6, I0

Table 5 Constellation encoder

Where the binary word I will be first v´and then w´ till end all the 1536 subcarriers.

If no bit extraction is performed (x=y=0) the output of the constellation encoder shall be ak= (0,0,0,0) and Δbk =(0,0,0,0,0,0) for both subcarriers.

3.6 SUBCARRIER MODULATION

Each subcarrier of the Control or Data OFDM symbols shall be modulated using the ADPSK (Amplitude Differential Phase Shift Keying) modulation.

Equation 19 defines the ADPSK constellation of M phases and N rings (MxN ADPSK):

( ) kjkk eaAs θλ +=

4-June-07 P1901_PRO_016_r0

Submission page 56 UPA-OPERA

Equation 19

Where:

• k is the time index representing the k-th OFDM symbol. Index 0 corresponds to the channel reference symbol (see 3.8.1).

• ks is the modulator output for a given subcarrier.

• λ is the factor to normalize the constellation to unit power:

( ) ⎟⎠⎞

⎜⎝⎛ −

+−+

=

6121

1

2 NANAλ

Equation 20

• ka , { }1,,1,0 −∈ Nak Κ , represents the information coded in the amplitude, as supplied by the constellation encoder (see 3.5.4).

• kθ stands for the absolute phase of the modulated signal obtained as follows:

( )( ) ππθθ 2mod21 kkk bM Δ+= −

Equation 21

Equation 21 applies for k>0 only. kbΔ , { }1,,1,0 −∈Δ Mbk Κ , represents the information coded in the phase increment, as supplied by the constellation encoder (see 3.5.4).

A is a shaping parameter and represents the ring offset from the centre of the constellation.

Parameters M, N and A are determined by the number of bits per subcarrier indicated by the bit-loading table according to Table 6.

Bit-loading Constellation M N A Bits coded in the Bits coded in

4-June-07 P1901_PRO_016_r0

Submission page 57 UPA-OPERA

points phase increment the amplitude

2 4 4 1 1 2 0

3 8 4 2 0.8 2 1

4 16 8 2 1.7 3 1

5 32 8 4 1.7 3 2

6 64 16 4 2.5 4 2

7 128 16 8 2.6 4 3

8 256 32 8 5 5 3

9 512 32 16 4.6 5 4

10 1024 64 16 8.6 6 4

Table 6 Constellation parameters

The 4D-TCM provides the ka and kbΔ values to the ADPSK Modulator according to the bit-loading table. If the bit-loading table indicates that a subcarrier does not carry any information (0 bits per subcarrier) this subcarrier shall be modulated using 2 bits.

3.7 OFDM MODULATION

This section describes how the input constellations are grouped to create OFDM symbols. Special symbols for synchronization and SOT are also described.

The signals will be described in a complex base-band signal notation. Different implementations may be possible, if the signal transmitted to the channel is the same.

4-June-07 P1901_PRO_016_r0

Submission page 58 UPA-OPERA

3.7.1 Control and Data symbols

There shall be three symbol types that will define the signal bandwidth used by the system. The three types of symbols will be referred to as Type I (30 MHz signal bandwidth), Type II (20 MHz signal bandwidth) and Type III (10 MHz signal bandwidth). The symbols are defined based on three system clocks that will define the signal bandwidth. A node shall be operating in one of the three types at a given time. Specifically, symbol types are not mixed in a PPDU, and the transition from the use of a symbol type to a different one can take in the order of seconds.

Table 7 lists some timing parameters of the OFDM modulation.

Parameter Type I Type II Type III Units

System clock 40 6.26)

3.13)

MHz

NSD: Number subcarriers 1536 1536 1536 Carriers

NIDFT: IDFT interval 2048 2048 2048 Samples

TIDFT: IDFT interval 51.2 76.8 153.6 μs

NCP: Cyclic prefix 800 532 268 Samples

TCP: Cyclic prefix 20 19.95 20.1 μs

NSYM: Symbol interval 2848 2580 2316 Samples

TSYM: Symbol interval 71.2 96.75 173.7 μs

Table 7 OFDM modulation parameters

The stream of complex numbers coming from the subcarrier modulator is divided into groups of NSD=1536 to form OFDM symbols.

If a complex 2048-point IDFT is used, the 1536 subcarriers shall be mapped in the way shown in Figure 16.

4-June-07 P1901_PRO_016_r0

Submission page 59 UPA-OPERA

IDFT

012..768769..12781279..20462047

012..768769..12781279..20462047

Null#1#2..#768Null..Null#769..#1536Null

.

.

.

.

.

.

.

.

.

.

.

.

TimeDomainOutputs

FrequencyDomainInputs

Figure 16 Subcarrier mapping

After the inverse Fourier transform, the symbol is cyclically extended by NCP samples to create the “cyclic prefix”.

3.7.2 Time domain windowing

The symbol may be multiplied by a windowing function to smooth transitions between the symbols. However, the binding requirement is the spectral mask as detailed in 3.13. Time domain windowing is just one way to achieve that goal. The implementer may use other methods to achieve the same goal such as time domain filtering. Therefore the transition shape and duration (NW) are not specified here. In the particular case where NW=0 the window degenerates into a rectangular pulse of value 1 and duration NSYM. In the general case where NW>0 the window extends over more than one symbol (NSYM+NW) and the symbols overlap as shown in Figure 17. The general expression for the windowing function is given in Equation 22.

⎪⎪⎩

⎪⎪⎨

+<≤−−+<≤<≤

=

elsewhereNNnNnNNf

NnNNnnf

nwSYMWSYMSYMW

SYMw

W

0)1(

10)(

)(

Equation 22

And the windowing function fulfils the following condition:

11)-n-f(Nf(n) w =+

4-June-07 P1901_PRO_016_r0

Submission page 60 UPA-OPERA

Equation 23

NSYM

NIFFTNCPNW

Figure 17 Windowing

The maximum duration of the window (Nw) depends on the symbol Type used:

• Type I: 128 samples

• Type II: 128 samples

• Type III: 64 samples

The OFDM symbol can be expressed in mathematical form as inEquation 24.

⎭⎬⎫

⎩⎨⎧

⎟⎠⎞

⎜⎝⎛ −−−+⎟

⎠⎞

⎜⎝⎛ −−= ∑∑

==

)(2048

2exp),510()(2048

2exp),()()(2046

1279

768

1WCP

kkWCPSYMSYMi NNnkjikcNNnkjikcnwkns ππ

Equation 24

Where

− i is the i-th OFDM symbol; i = 0, 1, …

− n is the sample index; 0 ≤ n < NSYM+NW

− kSYM is a normalization factor, that shall be chosen in order to meet the PSD and modulation accuracy requirements.

− wSYM(n) is a windowing function

− c(k,i) is the k+iNSD complex value from the subcarrier modulation block

4-June-07 P1901_PRO_016_r0

Submission page 61 UPA-OPERA

Several of these symbols are concatenated in a burst as expressed in Equation 25

∑ −=i

SYMi iNnsns )()(

Equation 25

3.8 REFERENCE SIGNALS

3.8.1 Channel reference symbol

The channel reference symbol comes before the data and control symbols. The channel reference symbol followsEquation 24 with

)exp(),( kjikc φ=

Equation 26

where φk is a random phase picked from a uniform distributed random variable between [0,2π[. The channel reference symbol gives the initial reference for the subcarrier modulation (3.6)

3.8.2 Synchronization symbol

The synchronization symbol comes before the channel reference symbol. The synchronization symbol follows Equation 24 with

⎩⎨⎧

=oddkevenkjikc k

0)exp(2),( φ

Equation 27

where φk is a random phase picked from a uniform distributed random variable between [0,2π[.

3.8.3 Start Of Transmission (SOT)

A start of transmission signal shall always be sent before the synchronization symbol. The SOT is also used as response to the different polling frames (See 4.3.5 and 4.3.6). In reception the SOT may be used for AGC. The

4-June-07 P1901_PRO_016_r0

Submission page 62 UPA-OPERA

description of the SOT generation is always based on a 40 MHz clock, independently of the symbol type used by the node. The number of active subcarriers in the SOT depends on the symbol type used.

The SOT is composed of OFDM symbols that may be generated with a complex 256-point IDFT as shown in Equation 28.

⎭⎬⎫

⎩⎨⎧

⎟⎠⎞

⎜⎝⎛+⎟

⎠⎞

⎜⎝⎛= ∑∑

−==

nkjkcnkjkcnwknsD

D

Nk

N

kDDiD 256

2exp)(2562exp)()()(

255

2255

2

1,

ππ

Equation 28

Where

− kD is a normalization factor

− wD(n) is a windowing function, that follows Equation 22 and Equation 23. The duration of the windowing function is between 6.4 μs and 8 μs depending on the transition duration and is depicted in Figure 18.

NSYM=NIFFT=256 samples

NW≤64 samples

Figure 18 SOT Windowing

− ND is 192 (Type I), 128 (Type II) or 64 (Type III), so that the frequencies occupied by the SOT are the same as for the data and control symbols.

− c(k) = exp(jφk) where φk is a random phase picked from a uniform distributed random variable between [0,2π[

Six of these symbols are concatenated to form the SOT.

4-June-07 P1901_PRO_016_r0

Submission page 63 UPA-OPERA

∑=

−=5

0, )256()(

iiDSOT insns

Equation 29

Therefore the maximum duration of the SOT (if the maximum window size is used) will be 40 μs.

3.8.4 Channel estimation symbols

The channel estimation symbols are used to estimate the channel quality at the receiver side. After the channel estimation the receiver may send a new bit-loading table to the transmitter (see 9.1.2). These symbols shall be known by the transmitter and the receiver to allow a correct estimation under all conditions. Therefore, a pseudorandom sequence generator shall be used as the modulator input instead of the output from the 4D-TCM encoder.

The pseudorandom sequence generator shall be the 11-bit PN generator with characteristic polynomial given by Equation 30.

( ) 1121 xxxf ++=

Equation 30

This symbol shall be modulated using 2 bits per subcarrier. Therefore, two 11-bit PN generators with different seeds shall be used. Figure 19 explains how the kbΔ value is formed. The SYMBOL NUMBER value is 1 for the channel reference symbol, and is incremented by 1 for every symbol there after.

4-June-07 P1901_PRO_016_r0

Submission page 64 UPA-OPERA

OUTPUTBIT 0 (LSB)

11 10 9 8 7 6 5 4 3 2 1

OUTPUTBIT 1 (MSB)

11 10 9 8 7 6 5 4 3 2 1

PN GENERATOR 0

PN GENERATOR 1

SYMBOL NUMBER(BIT 0, LSB)

SYMBOL NUMBER (BIT 1)

XOR

Δ b k (BIT 0, LSB)Δ b k (BIT 1)

Figure 19 Channel estimation symbol generation

At the beginning of each Channel estimation symbol, the registers of the PN generators shall be set with the corresponding seed given by Table 8. So, the value to be modulated in the phase increment of the first valid subcarrier of the OFDM symbol will be determined by the seeds and the appropriate symbol number. The contents of the registers of the PN generators shall be updated before calculating the phase increment for each of the next subcarriers.

Since two bits of the symbol number are XORed with the output of the PN generators, four different symbols will be generated. These four symbols will be repeated four times to create a sixteen-symbol sequence.

Seed

PN Generator 1 0x25E

PN Generator 0 0x3C1

Table 8 PN generator seeds

4-June-07 P1901_PRO_016_r0

Submission page 65 UPA-OPERA

3.9 CARRIER FREQUENCY

The complex baseband digital signal is converted to analog signal and IQ modulated. I(t) and Q(t) are the in-phase and quadrature analog signals corresponding to the real and imaginary components of the complex baseband signal respectively. The actual transmitted signal is related to them by the following relation:

)2sin()()2cos()()( tftQtftItr ccTX ππ −=

Equation 31

cf denotes the carrier centre frequency, which must be a multiple of 156.25 KHz.

3.10 COMMUNICATION MODES

Transmission modes can be defined by specifying a carrier frequency ( cf ), and symbol Type (I, II or III) and, optionally, a power mask. Any two nodes that use a common communication mode shall be able to communicate.

The carrier frequency shall be higher than the bandwidth of the baseband signal in negative frequencies in order to avoid ICI and shall place the signal bandwidth in frequencies up to 100 MHz.

3.11 PHY PARAMETER SPECIFICATION

Table 9 contains the values for the PHY parameters.

Parameter Value Description

INTER PPDU SPACE 1 189 μs See 3.2 and 4.1

INTER PPDU SPACE 2 126 μs See 3.2 and 4.1

Table 9 PHY parameter specification

4-June-07 P1901_PRO_016_r0

Submission page 66 UPA-OPERA

3.12 CLOCK SYNCHRONIZATION

3.12.1 General

Clock frequency synchronization shall be performed and must be accurate enough to allow for maximum bit loading 10 bits on all subcarriers.

3.12.2 Clock synchronisation concept

With the exception of the HE of a BPL cell, all BPL nodes belonging to the same BPL cell must adapt their clock frequency until a unique common clock frequency is reached. This common clock frequency is the reference clock frequency dictated by the HE. All other nodes (Repeaters and CPEs) of the BPL cell will synchronize their clock frequency to this reference clock frequency.

Both transmitter and receiver of a BPL node shall use the same common clock frequency.

3.12.3 System reference clock error tolerance

Without noticeable loss of performance, BPL nodes shall be able to cope with a relative clock frequency error of up to twice the maximum absolute frequency error of the system reference clock. The absolute frequency error of the system reference clock in any BPL equipment shall not exceed ±100 ppm.

3.13 TRANSMITTER ELECTRICAL SPECIFICATION

The following specification establishes the minimum transmitter technical requirements for interoperability maintaining full performance. Unless otherwise stated, transmitter specifications assume a 50 Ω load between line and neutral terminals. All transmitter output voltages as well as spurious transmissions are specified as the voltage measured at the line terminal with respect to the neutral terminal.

3.13.1 Transmit PSD

The PSD in the emission point must be compliant with regulations in effect in the country where the system is used.

The ripple in the working band shall be less than ±1 dB.

Besides there will be a transmit spectrum mask that will depend on the regulation of each country or area. All nodes shall use a configurable power masking with 1 dB of granularity in order to be compliant with that mask, achieving notches with at least 35 dBs deep

4-June-07 P1901_PRO_016_r0

Submission page 67 UPA-OPERA

The transmitter must provide means to modify the transmission power of each subcarrier with a granularity of at least 6 dB. Once the transmitter introduces the notches in the transmitted signal, other mechanisms like the ABLP (see 9.1.2) will automatically adapt accordingly.

3.13.2 Modulation error vector magnitude

Modulation errors may be caused by quantization in the digital processing and by linear and non-linear distortion in the analogue processing of a BPL transmitter.

The normalized mean modulation error vector magnitude is defined as the RMS value of the modulation error vector magnitude divided by the RMS value of the modulation vector.

• N denotes the number of subcarriers.

• ( )kS denotes the measured complex symbol of the k-th subcarrier.

• ( )kS0 denotes the ideal complex symbol of the k-th subcarrier.

The RMS error vector magnitude may be expressed as:

( ) ( )

( )%100

1

1

1

20

1

20

⋅−

=

=

=N

k

N

k

kSN

kSkSNEVM

Equation 32

and can be measured with a multi-tone error vector magnitude meter.

The EVM shall not exceed 1%

3.13.3 Power Control

This specification allows for the optional implementation of a Power Control mechanism, using the BPS and Rx Att information supplied in the ABLP packet (9.1.2.4) and the Power Control bits in the Token Announce (See 4.4.1). The target of the power control is to transmit the lowest power that attains a given performance. Therefore a node may adjust its transmission power until the desired value of BPS is reached. The process is depicted in Figure 20.

4-June-07 P1901_PRO_016_r0

Submission page 68 UPA-OPERA

Power Control task

Lower than Th_bottom?

Check currently negotiated bps

No

Yes

Periodically or not

Greater than Th_top?

Increase Txg Decrease Txg

Yes

No

Figure 20 Power control algorithm

3.14 RECEIVER ELECTRICAL SPECIFICATION

Unless otherwise stated, all signals are specified as the voltage measured at the line terminal with respect to the neutral terminal.

3.14.1 Receiver Input Impedance

When not transmitting, the system shall present a minimum impedance of 40 Ω in the working band, measured between line and neutral terminals.

4-June-07 P1901_PRO_016_r0

Submission page 69 UPA-OPERA

3.14.2 Receiver Input Referred Noise

The system shall present an IRN level lower than –148 dBm/Hz when it sets the maximum reception gain.

3.14.3 Receiver Input Signal

The receiver shall maintain full performance with a signal input level of 8 Vpp.

The ripple introduced by the system in the working band shall be less than ±1 dB.

The sensitivity of the receiver is defined as follows:

For an input signal with flat spectrum and using Type I OFDM symbols, the minimum input level at which the system shall receive 2 Mbps of UDP traffic with 0% PLR is:

• 0.17 mVrms

• -137 dBm/Hz referred to 50 Ω

3.15 PHY service specification (PHY SAP)

3.15.1 PHY service primitives

The following table shows PHY DATA and MNT primitives:

Primitive Type

4-June-07 P1901_PRO_016_r0

Submission page 70 UPA-OPERA

PHY-DATA.req Request PHY-DATA.cnf Confirm PHY-DATA.ind Indicate PHY-MNT-SNR.ind Indication PHY-MNT-BPC-SET.req Request PHY-MNT-BPC-SET.cnf Confirm PHY-MNT-BPC-GET.req Request PHY-MNT-BPC-GET.cnf Confirm PHY-MNT-RXGAIN-GET.req Request PHY-MNT-RXGAIN-GET.cnf Confirm PHY-MNT-TXGAIN-SET.req Request PHY-MNT-TXGAIN-SET.cnf Confirm PHY-MNT-TXGAIN-GET.req Request PHY-MNT-TXGAIN-GET.cnf Confirm PHY-MNT-POWMASK-GET.req Request PHY-MNT-POWMASK-GET.cnf Confirm PHY-MNT-POWMASK-SET.req Request PHY-MNT-POWMASK-SET.cnf Confirm PHY-MNT-SYNC.ind Indication PHY-MNT-SYNC.req Request PHY-MNT-SYNC.cnf Confirm

Table 10 PHY SAP primitives

3.15.2 PHY service primitives parameters

The following table shows PHY DATA and MNT parameters:

Parameter Associated Primitive Value

4-June-07 P1901_PRO_016_r0

Submission page 71 UPA-OPERA

MPDU PHY-DATA.req PHY-DATA.ind

MAC Protocol Data Unit

snr_measure, port PHY-MNT-SNR.ind SNR measure with remote node in Rx Rx port of the remote transmitter node

bpc_type, port, tonemap PHY-MNT-BPC-SET.req PHY-MNT-BPC-SET.cnf PHY-MNT-BPC-GET.cnf

Tx, Rx Tx or Rx port Updated tonemap

bpc_type, port PHY-MNT-BPC-GET.req Tx, Rx Local Tx or Rx port

port PHY-MNT-RXGAIN-GET.req Local Rx port port PHY-MNT-TXGAIN-GET.req

PHY-MNT-TXGAIN-SET.cnf PHY-MNT-POWMASK-GET.req PHY-MNT-POWMASK-SET.cnf PHY-MNT-LINK-STATUS.req PHY-MNT-LINK-STATUS.cnf

Local Tx port

port, gain PHY-MNT-RXGAIN-GET.cnf Local Rx port [0-7] Rx gain level

port, gain PHY-MNT-TXGAIN-GET.cnf PHY-MNT-TXGAIN-SET.req

Local Tx port Tx gain

port, pow_mask PHY-MNT-POWMASK-GET.cnf PHY-MNT-POWMASK-SET.req

Local Tx port Tx power mask

sync_type, mode PHY-MNT-SYNC.ind [sync|sync _lost] The Tx / Rx signal mode

mode, timeout PHY-MNT-SYNC.req The Tx / Rx signal mode Time to sense the channel

Mode, result PHY-MNT-SYNC.cnf The Tx/Rx signal mode Success/fail

Table 11 PHY SAP parameters

Legend : Tx = Transmission Rx = Reception

3.15.3 PHY-DATA.req

3.15.3.1 Function

This primitive requests a transfer of a MPDU from a local MAC layer entity.

4-June-07 P1901_PRO_016_r0

Submission page 72 UPA-OPERA

3.15.3.2 Semantics of the service primitive

PHY-DATA.req(MPDU):

• MPDU: MAC Protocol Data Unit

3.15.3.3 When generated

The primitive is generated by the MAC layer entity when a MPDU is to be transferred.

3.15.3.4 Effect of receipt

The PHY layer entity starts the sending of the MPDU.

3.15.4 PHY-DATA.cnf

3.15.4.1 Function

This primitive has local significance and provides the MAC layer with status information (sending finished) of the corresponding preceeding PHY-DATA.req primitive.

3.15.4.2 Semantics of the service primitive

This primitive has no parameters.

3.15.4.3 When generated

The primitive is passed from the PHY layer entity to the MAC layer entity to indicate that the previous MPDU has been sent and the PHY layer is available to send new MPDUs.

3.15.4.4 Effect of receipt

The MAC layer entity is aware that the PHY is available to send new MPDUs, and can issue new PHY-DATA.req primitives.

3.15.5 PHY-DATA.ind

3.15.5.1 Function

This primitive defines the transfer of a received MPDU from the PHY layer entity to the MAC layer entity.

4-June-07 P1901_PRO_016_r0

Submission page 73 UPA-OPERA

3.15.5.2 Semantics of the service primitive

PHY-DATA.ind(MPDU):

• MPDU: MAC Protocol Data Unit.

3.15.5.3 When generated

The primitive is passed from the PHY layer entity to the MAC layer entity to indicate the arrival of a MPDU.

3.15.5.4 Effect of receipt

The MAC layer entity processes the newly received MPDU.

3.15.6 PHY-MNT-SNR.ind

3.15.6.1 Function

This primitive indicates that the Physical layer entity has done a SNR measure with another node, and defines the transfer of the SNR measure to the Management layer entity.

3.15.6.2 Semantics of the service primitive

PHY-MNT-SNR.ind (snr_measure, port):

• snr_measure: SNR measure with remote node in reception • port: reception port of the remote transmitter node

3.15.6.3 When generated

The primitive is generated when the node measures the SNR with another node which transmitted an SNR frame.

3.15.6.4 Effect of receipt

The Management layer entity will decide if the tonemap must be changed for that port depending on the new snr_measure and the current tonemap. If the tonemap must change, an ABLP message shall be sent to the other node by means of the ETH.req primitive.

3.15.7 PHY-MNT-BPC-SET.req

3.15.7.1 Function

This primitive request the change of the tonemap used to transmit/receive to/from a remote node.

4-June-07 P1901_PRO_016_r0

Submission page 74 UPA-OPERA

3.15.7.2 Semantics of the service primitive

PHY-MNT-BPC-SET.req (bpc_type, port, tonemap)

• bpc_type: tx, rx (transmission, reception) • port: transmission or reception port • tonemap: updated tonemap to be used

3.15.7.3 When generated

The primitive is generated when the transmission/reception tonemap table with a node must be changed according to the ABLP protocol

3.15.7.4 Effect of receipt

The tonemap used by the Physiscal layer to transmit/receive to/from a remote node is changed.

3.15.8 PHY-MNT-BPC-SET.cnf

3.15.8.1 Function

This primitive informs the Management layer that the tonemap has been updated.

3.15.8.2 Semantics of the service primitive

PHY-MNT-BPC-SET.cnf (bpc_type, port, tonemap)

• bpc_type: tx, rx (transmission, reception) • port: transmission or reception port • tonemap: updated tonemap

3.15.8.3 When generated

The primitive is generated by the Physical layer to confirm the Management layer that the tonemap has been updated.

3.15.8.4 Effect of receipt

Management layer can use the updated tonemap for throughput and class of service calculations.

4-June-07 P1901_PRO_016_r0

Submission page 75 UPA-OPERA

3.15.9 PHY-MNT-BPC-GET.req

3.15.9.1 Function

This primitive requests the tonemap used to transmit/receive to/from a remote node.

3.15.9.2 Semantics of the service primitive

PHY-MNT-BPC-GET.req (bpc_type, port) :

• bpc_type: tx, rx • port: local transmission or reception port

3.15.9.3 When generated

The primitive is generated when the Management layer needs to know the current tonemap used to transmit/receive to/from a remote node.

3.15.9.4 Effect of receipt

The current tonemap is read by the Physical layer and passed to the Management layer by means of the PHY-MNT-BPC-GET.cnf primitive.

3.15.10 PHY-MNT-BPC-GET.cnf

3.15.10.1 Function

This primitive indicates the result of the previously requested tonemap.

3.15.10.2 Semantics of the service primitive

PHY-MNT-BPC-GET.cnf (bpc_type, port, tonemap)

• bpc_type: tx, rx • port: local transmission or reception port • tonemap: current tonemap

3.15.10.3 When generated

The primitive is passed by the Physical layer entity to the Management layer entity to provide the requested tonemap.

4-June-07 P1901_PRO_016_r0

Submission page 76 UPA-OPERA

3.15.10.4 Effect of receipt

The Maganement layer receives the tonemap.

3.15.11 PHY-MNT-RXGAIN-GET.req

3.15.11.1 Function

This primitive requests the Physical layer the reception gain being used to receive from a remote node.

3.15.11.2 Semantics of the service primitive

PHY-MNT-RXGAIN-GET.req (port):

• port: reception port

3.15.11.3 When generated

The primitive is generated when the Management layer needs to know the reception gain being used in reception with another node.

3.15.11.4 Effect of receipt

The current reception gain is obtained by the Physical layer and passed to the Management layer by means of the PHY-MNT-RXGAIN-GET.cnf primitive.

3.15.12 PHY-MNT-RXGAIN-GET.cnf

3.15.12.1 Function

This primitive indicates the result of the previously requested reception gain.

3.15.12.2 Semantics of the service primitive

PHY-MNT-RXGAIN-GET.cnf (port, gain):

• port: reception port • gain: reception gain level

3.15.12.3 When generated

The primitive is passed by the Physical layer entity to the Management layer entity to provide the requested reception gain.

4-June-07 P1901_PRO_016_r0

Submission page 77 UPA-OPERA

3.15.12.4 Effect of receipt

The Maganement layer gets the reception gain. It can be used in protocols such as the Access protocol or the Net Configuration protocol.

3.15.13 PHY-MNT-TXGAIN-GET.req

3.15.13.1 Function

This primitive requests the Physical layer the transmission gain being used to transmit to a remote node.

3.15.13.2 Semantics of the service primitive

PHY-MNT-TXGAIN-GET.req (port):

• port: local transmission port

3.15.13.3 When generated

The primitive is generated when the Management layer needs to know the transmission gain being used in transmission with another node.

3.15.13.4 Effect of receipt

The current transmission gain is obtained by the Physical layer and passed to the Management layer by means of the PHY-MNT-TXGAIN-GET.cnf primitive.

3.15.14 PHY-MNT-TXGAIN-GET.cnf

3.15.14.1 Function

This primitive indicates the result of the previously requested transmission gain.

3.15.14.2 Semantics of the service primitive

PHY-MNT-TXGAIN-GET.cnf (port, gain):

• port: local transmission port • gain: transmission gain level

3.15.14.3 When generated

The primitive is passed by the Physical layer entity to the Management layer entity to provide the requested transmission gain.

4-June-07 P1901_PRO_016_r0

Submission page 78 UPA-OPERA

3.15.14.4 Effect of receipt

The Maganement layer gets the transmission gain.

3.15.15 PHY-MNT-TXGAIN-SET.req

3.15.15.1 Function

This primitive request the change of the transmission gain used to transmit to a remote node.

3.15.15.2 Semantics of the service primitive

PHY-MNT-TXGAIN-SET.req (port, gain):

• port: local transmission port • gain: transmission gain level

3.15.15.3 When generated

This primitive must be generated when the Management layer wants to change the transmission gain with a given node.

3.15.15.4 Effect of receipt

The Physical layer updates the transmission gain with the indicated port. It shall confirm the action.

3.15.16 PHY-MNT-TXGAIN-SET.cnf

3.15.16.1 Function

This primitive acknowledges the previously requested action.

3.15.16.2 Semantics of the service primitive

PHY-MNT-TXGAIN-SET.cnf (port):

• Port: local transmission port.

3.15.16.3 When generated

This primitive is generated by the Physical layer when it updates the transmission gain.

4-June-07 P1901_PRO_016_r0

Submission page 79 UPA-OPERA

3.15.16.4 Effect of receipt

The Management layer receives the confirmation of the change.

3.15.17 PHY-MNT-POWMASK-GET.req

3.15.17.1 Function

This primitive requests the Physical layer the power mask being used to transmit to a remote node.

3.15.17.2 Semantics of the service primitive

PHY-MNT-POWMASK-GET.req (port):

• port: local transmission port

3.15.17.3 When generated

The primitive is generated when the Management layer want to know the power mask being used in transmission with another node.

3.15.17.4 Effect of receipt

The current power mask is obtained by the Physical layer and passed to the Management layer by means of the PHY-MNT-POWMASK-GET.cnf primitive

3.15.18 PHY-MNT-POWMASK-GET.cnf

3.15.18.1 Function

This primitive indicates the result of the previously requested power mask.

3.15.18.2 Semantics of the service primitive

PHY-MNT-POWMASK-GET.cnf (port, pow_mask):

• port: local transmission port • pow_mask: transmission power mask

3.15.18.3 When generated

The primitive is passed by the Physical layer entity to the Management layer entity to provide the requested power mask.

4-June-07 P1901_PRO_016_r0

Submission page 80 UPA-OPERA

3.15.18.4 Effect of receipt

The Maganement layer receives the power mask.

3.15.19 PHY-MNT-POWMASK-SET.req

3.15.19.1 Function

This primitive request the change of the power mask used to transmit to a remote node.

3.15.19.2 Semantics of the service primitive

PHY-MNT-POWMASK-SET.req (port, pow_mask)

• port: local transmission port • pow_mask: transmission power mask

3.15.19.3 When generated

This primitive must be generated when the Management layer wants to change the transmission power mask with a given node.

3.15.19.4 Effect of receipt

The Physical layer updates the transmission power mask with the indicated port. It shall confirm the action.

3.15.20 PHY-MNT-POWMASK-SET.cnf

3.15.20.1 Function

This primitive acknowledges the previously requested action.

3.15.20.2 Semantics of the service primitive

PHY-MNT-POWMASK-SET.cnf (port):

• port: local transmission port.

3.15.20.3 When generated

This primitive is generated by the Physical layer when it updates the transmission power mask.

4-June-07 P1901_PRO_016_r0

Submission page 81 UPA-OPERA

3.15.20.4 Effect of receipt

The Management layer receives the confirmation of the change.

3.15.21 PHY-MNT-SYNC.ind

3.15.21.1 Function

This primitive is generated by the Physical layer to notify a synchronization detection event to the Management layer. It provides status information.

3.15.21.2 Semantics of the service primitive

PHY-MNT-SYNC.ind (sync_type, mode) :

• sync_type= [sync|sync_loss] • mode: the transmission/reception signal mode

3.15.21.3 When generated

The primitive is passed by the Physical layer to the Management layer to inform about a synchronization event. This event can be positive (synchronization symbol detected) or negative (synchronization symbol not detected when it was expected).

3.15.21.4 Effect of receipt

When receiving a "sync" event, the Management layer can infer that a synchronization symbol has been detected in the transmission mode “mode”. When receiving a “sync_loss” event, the Management layer can infer that an expected synchronization symbol has not been detected. This information can be used by the Management layer to take decisions regarding the configuration of the BPL cell.

3.15.22 PHY-MNT-SYNC.req

3.15.22.1 Function

This primitive requests the Physical layer to detect synchronization symbols.

3.15.22.2 Semantics of the service primitive

PHY-MNT-SYNC.req (mode,timeout) :

• mode: the transmission/reception signal mode. • timeout: maximum time to sense the channel

4-June-07 P1901_PRO_016_r0

Submission page 82 UPA-OPERA

3.15.22.3 When generated

The primitive is generated by the Management layer to detect if there is activity in the channel using the given transmission mode.

3.15.22.4 Effect of receipt

The Physical layer senses the channel during the “timeout” time. When a synchronization symbol is detected or the “timeout” expires, the result is notified to the Management layer by means of the PHY-MNT-SYNC.cnf primitive.

3.15.23 PHY-MNT-SYNC.cnf

3.15.23.1 Function

This primitive acknowledges the previously requested action and provides the requested information.

3.15.23.2 Semantics of the service primitive

PHY-MNT-SYNC.cnf (mode, result):

• mode: transmission/reception signal mode • result: success/fail

3.15.23.3 When generated

The Physical layer generates this primitive when a synchronization symbol is detected (success) or when the “timeout” expires (fail).

3.15.23.4 Effect of receipt

This information is required by the Net Configuration protocol to check if there are other nodes in the channel.

PHY-MNT- PHY-MNT-LINK-STATUS.req

4 MAC

4.1 OVERVIEW

The IEEE P1901 MAC is based on a TDMA/TDD MAC with hybrid resource sharing mechanisms built on top of an OFDM PHY layer. Data are encapsulated inside OFDM symbols. The control and data symbols transmitted consecutively by a single node constitute a transmission frame.

4-June-07 P1901_PRO_016_r0

Submission page 83 UPA-OPERA

The channel access is done through the use of a special MAC element called a token. Master nodes decide the type of frame that their slave nodes are going to transmit next, based on the type of token included in the current frame, or the kind of channel access the slave nodes can perform. Tokens have several intended uses, depending on the type of token, and the actions to be undertaken upon its reception also depend on the type of token.

The master node manages the type of channel access, contention free access to the channel with a predetermined decision about which of its slaves will be allowed to transmit data, in what order, and for how long, or a contention based access of the slaves to the channel.These decisions will be published by the use of different types of tokens. In both schemes the final result is a node holding a token. The holder of the token has the right to access the medium for a specific time and after that time it has to assign the token to the next destination node. By the control of the frequency of the token occupancy and the length of the time the node is allowed to hold the token, it is possible to guarantee the requested QoS.

4.1.1 Contention free medium access examples

One of the simplest ways of distribute the channel among several users is the use of Data Frames. Let’s the following scenario:

HEN1

CPEN4

TDRepN2

CPEN3

Figure 21 Simple Access Topology example

The Data Token has a specific destination node, which, upon its reception, must enter transmission mode. This destination node might then return the token to its master, or transmit it to its own slaves, in the case of a Time Division Repeater. A tipical transmission using data tokens can be seen in the following figure:

4-June-07 P1901_PRO_016_r0

Submission page 84 UPA-OPERA

Time

N1 TX

N2 TX

N3 TX

N4 TX

Token for N2

Token for N2

Token for N1

Token for N2

Token for N4

Token for N3

Downstream token

Upstream token

IPPD

U1

IPPD

U1

IPP

DU

1

IPPD

U1

IPPD

U1

Data PPDU

Figure 22 Transmission sequence

When N2 receives the token from its master, it is this node that must decide what nodes will follow: in this case, it transmits it to each of its slaves, and finally returns it to its master. Any other kind of sequence would be possible, and it is the master, at each level, who decides how the token, and thus the slots of time, will be divided amongst the rest of the nodes.

On the other hand, the order of transmission can be predesigned using the so called distributor token. The transmission sequence can took place in the following topology:

Figure 23 Topology example

4-June-07 P1901_PRO_016_r0

Submission page 85 UPA-OPERA

The following diagram ¡Error! No se encuentra el origen de la referencia.depicts a transmission sequence using this kind of token. As it is outlined in the above diagram, a transmission sequence starts with a Distributor Token. This type of token assigns the channel to a list of nodes. The Data Token is used by slaves to release the token to the next detination node. Further sections describe this diagram in more detail.

DISTRIBUTORTOKEN

MASTER

Slave 1

Slave 3

Slave 4 DATATOKEN to Slave 2

List InfoDst1 = Slave 1 Validity1 SessionId1Dst2 = Slave 4 Validity2 SessionId2

Dst3 = Slave 3 Validity3 SessionId3 Dst4 = Slave 2 Validity4 SessionId4

Slave 2

DATA TOKENto MASTER≤ Validity3

≤ Validity4

DATA TOKENTo Slave 4

≤ Valitdity1

DISTRIBUTORTOKEN

DATAFrom SessionId4

DATA TOKEN to Slave 3

DATAFrom SessionId3

DATAFrom SessionId1

IPPDUS1 IPPDUS2 IPPDUS2IPPDUS2 IPPDUS2

DATAFrom SessionId2

≤ Valitdity2

Figure 24: Transmission Sequence

Using the previously described channel access, a programmed timming interval can be set, synchronized or not with the mains meriod using the clock token, where several nodes in a preestablished order can transmit.

4.1.2 Contention medium access example

In the previous examples, the destination of the token, and so, the next token holder is explicity defined in the information that the token contains. In the case of CSMA or Access Replay frame, the next token holder is not predefined by the node that transmit the token, but a priorized contention period is open to decide the node that will be the next token holder.

Asume again the topology described in Figure 23.

4-June-07 P1901_PRO_016_r0

Submission page 86 UPA-OPERA

The HE send a CSMA frame ended with a CSMA token, and a priorized contention period is open for all the nodes that can heard this token:

P0max P1min

P2max P3min

CONTENTION WINDOW

P1max P2min P3max

CSMA Token

IPPDU1Backoff

slot time

SOT

CSMA PPDU

Backoff time

P0min

SOT

PPDU

Token

Contention winner Node

Figure 25: CSMA Frame

Each of the nodes will contend putting an SOT in a random position inside a predetermined range of the contention window. The range is determined by the state of the node and the service class of the traffic that want to transmit among other, as explained in section 6. The node that was able to send the SOT before any one, will win the right to transmit a frame.

4.2 MAC STATES MANAGEMENT

MAC states include node states which are specific states managed both on the master side and the slave side. They correspond to specific actions described here below.

4.2.1 Master side

From a master standpoint, a slave can be in three different states: Active, Idle, and Unregistered. These states are related to the following master-side actions (see Figure 26 and Figure 27 ):

Active: A master shall regularly transmit a data token to Active slaves. If a slave returns a data token without using any of the time resources originally granted, the master may list this slave as Idle. The master may also list the slave as Idle, if the only data sent has priority 7 (reserved for control packets).

4-June-07 P1901_PRO_016_r0

Submission page 87 UPA-OPERA

Idle: No data token is transmitted to an Idle slave, that is to say this slave does not get any scheduled transmission opportunity until it is required. This feature reduces the transmission of empty frames by non active slaves and it also increases the network performance, since the transmission opportunities not given to Idle slaves can be used by other Active users. A master shall regularly transmit Polling Frames to an Idle slave. This management is done in a different way and with different token depending on the type of the slaves: TDRs or CPEs.

o When the Idle slave is a CPE, the master shall poll it to check if it has data to transmit from a service class different from number 7 (See 8). If yes, it must be considered Active again. If answer is no, it shall be considered registered, although it has no data of higher service class to transmit. When the CPE has no activity, that means, no data is transmitted during long times, must be considered as Unregistered. This information is obtained by means of two different types of Polling Tokens: Active Polling Tokens and Alive Polling Tokens respectively. Up to 32 CPEs can be polled with only one of these Polling Frames.

Active Polling Tokens shall be regularly transmitted by the master to manage transitions from Idle to Active. A slave which replies to an Active Polling Token shall be listed as Active by its master. A master is constrained to transmit an Active Polling Token with a maximum interval equal to MAX_ACTIVE_POLL_INTERVAL.

Alive Polling Tokens shall be regularly transmitted by the master to manage transitions from Idle to Unregistered. A master is constrained to transmit an Alive Polling Token with a maximum interval equal to MAX_ALIVE_POLL_INTERVAL. A slave which does not reply to a number of Alive polling tokens equal to MAX_ALIVE_TOKENS shall be listed as Unregistered.

o When the slave is a TDR, the master shall only consider it as Idle when neither it nor any of the slaves in its BPL sub-tree are transmitting or receiving data of service class 1 to 6; this information is available in the field Frame Priority sent in the Data Token (see 0). The management of idle TDRs from the master side is slightly different from idle CPEs, although the concept stays the same. The reason for these differences is that TDRs shall provide some periodic services to the users in their BPL sub-tree and to other non-registered users within their visibility area apart from notifying if they have traffic to send. The master shall send a TDR Polling Frame to every Idle TDR connected to it as a slave, with a maximum interval equal to MAX_ACTIVE_POLL_INTERVAL.

The master shall give enough validity in this polling token for the TDR to send at least an Access Frame every MAC_ACCESS_INTERVAL, as many Polling Frames to CPEs as required (from 0 to 4, depending on the number of banks needed) every MAX_ACTIVE_POLL_INTERVAL and as many TDR Polling Frames as TDRs connected to it as slaves every MAX_ACTIVE_POLL_INTERVAL. The validity should be calculated from the topology information provided by the Cluster Discovery Protocol (see 0).

A TDR that does not reply a number of consecutive TDR Polling Tokens equal to MAX_ALIVE_TOKENS shall be listed as Unregistered.

4-June-07 P1901_PRO_016_r0

Submission page 88 UPA-OPERA

Note: If a master has pending downstream data for an Idle slave belonging to a service class different from 7, the master may automatically switch the status of this slave into Active and start giving it transmission opportunities.

Unregistered: An Unregistered slave is not explicitly managed by a master. However, the master is constrained to regularly broadcast access frames to discover/recover Unregistered slaves. The maximum transmission interval of these access frames is MAX_ACCESS_INTERVAL.

The HE should also turn Idle itself when it has no users or all its users are Idle during a period, in order to reduce to the minimum the electromagnetic interference and the power consumption.

This requirement implies stopping all MAC activity when the whole network is idle except for the transmissions of Access Frames and Active, Alive and TDR Polling Frames, which shall be made at least within the specified intervals.

The HE shall switch to Active status, when any of these situations occurs:

• automatically, if it has data from service class different from 7 to transmit to any user, • after sending an Active Polling Frame or a TDR Polling Frame, if any of its slaves (TDRs and/or CPEs)

replies affirmatively and • after sending an Access Request Frame if any user replies to it, so that the Access Protocol process can

be started.

4.2.2 Slave side

4.2.2.1 CPE side

From a slave standpoint, a CPE can be in two different states: Registered or Unregistered (see Figure 28 )

Unregistered: This is the initial state of a slave. An unregistered slave is only authorized to answer access frames as required by the access protocol. When the access protocol process is completed and successful, the slave enters the Registered state.

Registered: The following specific requirements apply to this state:

o A Registered CPE shall never reply to access frames from its current master. It might reply to access frames from another master if it wishes to change its current master.

o A Registered CPE shall not reply to an Active polling token if it has no need for network resources.

o A Registered CPE that wishes to continue in that state shall always reply to an Alive polling token.

o A Registered CPE which has not received any Alive polling token or Data token for more than MAX_ALIVE_TOKENS*MAX_ALIVE POLL_INTERVAL shall enter the Unregistered state. The counting of this time interval shall be initialized at the end of the last polling slot in which the slave has asserted a SOT or at the reception of the last Data Token received by the Registered slave, whichever is later.

4-June-07 P1901_PRO_016_r0

Submission page 89 UPA-OPERA

4.2.2.2 TDR side

From a slave standpoint, a TDR can be in two different states: Registered or Unregistered (see Figure 27).

Unregistered: This is the initial state of a slave. An unregistered slave is only authorized to answer access frames as required by the access protocol. When the access protocol process is completed and successful, the slave enters the Registered state.

Registered: The following specific requirements apply to this state:

o A Registered TDR shall never reply to access frames from its current master. It might reply to access frames from another master if it wishes to change its current master.

o A Registered TDR, at the reception of a TDR Polling Frame, shall ensure to transmit Access Frames, Polling Frames and TDR Polling Frames for all its slaves in the maximum specified intervals (see 4.6). Afterwards, the TDR shall reply to the TDR Polling Frame sent by the master indicating whether it wants to be Active or it wants to stay Idle but still Registered.

o An Registered TDR, in Idle state, shall not transmit any Data Token. It shall no transmit any data either, except for service class 7 traffic. Nevertheless, the TDR could transmit data in the TDR Polling Reply Frame when it indicates that it wants to be Active again, if it has enough remaining validity for it.

o A Registered TDR which has not received any TDR Polling Token or Data Token for more than MAX_ALIVE_TOKENS*MAX_ACTIVE POLL_INTERVAL shall enter the Unregistered state. The counting of this time interval shall be initialized at the end of the TDR Polling Reply symbol sent or at the reception of the last Data Token received by the Registered slave, whichever is later.

4-June-07 P1901_PRO_016_r0

Submission page 90 UPA-OPERA

4.2.3 Transition state diagrams

Unregistered

ActiveIdle

Master regularly sends Active polling tokens and Alive polling

tokens to this slave. No data token is transmitted to this slave.

Master sends data tokens to this slave.

No polling token is sent to this slave

The slave doesnot make use of the time

granted by its master

The slave replies to an Active polling token

No response to MAX_ALIVE_TOKENS

Alive polling tokens

Master does not manage this state. Regularly, the master broadcasts an access frame

to discover/recover Unregistered nodes.Transition event

Master actions associated to the state

Legend

Slave state (master side)

Access protocol completed

Figure 26 CPE states – Master side

4-June-07 P1901_PRO_016_r0

Submission page 91 UPA-OPERA

Unregistered

ActiveIdle

Master regularly sends TDR polling tokens to this TDR. No data token is

transmitted to this TDR.

Master sends data tokens to this TDR.

No polling token is sent to this TDR.

The TDR doesnot make use of the time

granted by its master

The TDR replies affirmativelyto a TDR polling token

No response to MAX_ALIVE_TOKENS

TDR polling tokens

Master does not manage this state. Regularly, the master broadcasts an access frame

to discover/recover Unregistered nodes.Transition event

Master actions associated to the state

Legend

TDR state (master side)

Access protocol completed

Figure 27 TDR states – Master side

4-June-07 P1901_PRO_016_r0

Submission page 92 UPA-OPERA

Unregistered

Registered

The slave shall never reply to access frames from its master. It might answer access

frames from another master if it wishes to change of master.

Access protocol process completed

No response to/ No reception of Alive Polling tokens for

MAX_ALIVE_TOKENS*MAX_ALIVE_POLL_INTERVAL

Transition event

Slave actions associated to the state

Legend

The slave shall only reply to access frames as required by

the access protocol

Slave state (slave side)

Figure 28 Slave states – Slave side

4.3 FRAME FORMATS

A frame corresponds to an MPDU passed by the MAC layer to the PHY layer. There are two types of MPDUs: regular MPDUs and Channel Estimation MPDUs.

Regular MPDUs can encapsulate bursts provided by the LLC layer.

Channel Estimation MPDUs are directly triggered by the MAC layer; they carry a specific signal sequence generated by the PHY layer: Channel Estimation MPDUs do not encapsulate any burst provided by the LLC layer.

Regular MPDU:

4-June-07 P1901_PRO_016_r0

Submission page 93 UPA-OPERA

BH Data 1 Data 2 BH Data 3

Burst

MPDU

TA BH Token

Figure 29 Regular MPDU format

The structure of a regular MPDU is depicted in Figure 29. The MPDU is of variable size and it is composed by:

- A token announce (TA) delimiter: The token announce defines, amongst other things, which is the current transmitter and what is the maximum transmission time of the current frame (Token Announce Validity).

- A sequence of bursts, each burst being composed of a Burst Header delimiter followed by data payload. The bursts included in a transmission frame can have different destination nodes. Burst addressed to a particular node shall be transmitted in order according to their Burst Id (see 5.2). Bursts to different destinations can be transmitted in any order. The destination port of the burst is included in the Burst Header, as well as information such as transfer control, encryption, used FEC, etc. The number of bursts in a regular MPDU ranges from zero to the maximum allowed by the assigned validity (see 4.4.1).

- A token delimiter.

The type of a regular MPDU is defined by the type of token terminating in the frame. The types of regular MPDUs are:

1. Distributor Frame

2. Data Frame

3. Silence Frame

4. Polling Frame

5. TDR Polling Frame

6. CSMA Frame

7. Access frame

8. Access Reply frame

9. Non-returnable Data frame

10. Clock Frame

Channel Estimation MPDU

4-June-07 P1901_PRO_016_r0

Submission page 94 UPA-OPERA

All MPDUs follow the sequence described above except for the Channel Estimation Frame: this frame does not contain neither bursts nor token. It starts with a Token Announce delimiter followed by a sequence of channel estimation symbols.

4.3.1 Distributor Frame

This frame ends with a Distributor Token. This Token assigns the channel to a list of nodes (distribution list) indicating the transmission order of the nodes, the session allowed to transmit and the channel time assigned to each of them.

Nodes included in the distributor list shall transmit in the indicated order. First node on the distribution list starts transmitting using the session (see 8.1) and for the maximum time indicated in the Distributor Token. When it ends transmitting, it assigns the channel to the subsequent node on the distribution list using the Data Token.

When second node on the distribution list receives a Data Token from the first node, it starts transmitting from the session and for the maximum time indicated in the Distributor Token. When this node ends transmitting, it assigns the channel to the third node on the distribution list. This process is repeated until the last node on the distribution list returns the channel to the Master node. At this point, the master will be able to transmit a new frame of the desired type.

Master node can configure the distribution list with a maximum number of five nodes.

The holder token node can assign the channel to the desired nodes during its assigned channel time. In this way, a repeater node can transmit another Distributor token to its slave nodes or it can assign the channel to a CPE.

Following time diagram shows the described process in a scenario with four nodes (see Figure 23).

4-June-07 P1901_PRO_016_r0

Submission page 95 UPA-OPERA

DISTRIBUTORTOKEN

MASTER

Slave 1

Slave 3

Slave 4 DATATOKEN to EP2

List InfoDst1 = Slave 1 Validity1 SessionId1Dst2 = Slave 4 Validity2 SessionId2

Dst3 = Slave 3 Validity3 SessionId3 Dst4 = Slave 2 Validity4 SessionId4

Slave 2

DATA TOKENto MASTER≤ Validity3

≤ Validity4

DATA TOKENTo Slave 4

≤ Valitdity1

DISTRIBUTORTOKEN

DATAFrom SessionId4

DATA TOKEN to Slave 3

DATAFrom SessionId3

DATAFrom SessionId1

IPDUS1 IPPDUS2 IPPDUS2IPPDUS2 IPPDUS2

DATAFrom SessionId2

≤ Valitdity2

Figure 30 Example of transmission sequence

In the above example, Master node assigns the channel to nodes SLAVE 1, SLAVE 4, SLAVE 3 and SLAVE 2. The channel allocation scheduling is decided by the QoS in order to grant the allocated resources to each node.

SLAVE 1 node starts transmitting after the reception of the Distributor token. SLAVE 1 has the right to use the channel for the maximum time assigned in the Distributor Token (Validity). During this time SLAVE 1 is allowed transmitting from the flow indicated in the Distritubor Token (SessionId). This value identifies the flow (source MAC, destination MAC and service class of the allowed flow). The resources reservation protocol and the assignation of an identifier for each accepted flow is detailed at the QoS section.

When the holder token node ends transmitting, it releases the token to the next node. In this way, if it has not enough data packet to use all the assigned channel time, it assigns the channel immediately to the next node, not wasting the remaining channel time.

If a node has not direct visibility to the next destination node on the distribution list, it has to return the token to the Master. Then, Master will transmit a new Distributor Token assigning the channel to the next nodes on the distribution list.

Token holder node checks before start transmitting if next transmission is point to point (a single destination node) or if it is point to multipoint (different destination nodes). Master node assigns the token to a node to transmit from a given session identifier. Each node has its own table with information about sessions requested. This table indicates the destination node/s of that flow/s. If session identifier has the zero value, node can

4-June-07 P1901_PRO_016_r0

Submission page 96 UPA-OPERA

transmit to different nodes in the same transmission. Usually, this type of transmission will be only performed for low service class traffic.

As it is described in the above time diagram, Inter PPDU Space (IPPDUSx) depends on the type of the next frame to be transmitted. In the MAC Parameters Section, it is detailed the value of each Inter PPDU Space.

4.3.2 Data Frame

When a data frame is transmitted from a master to one of its slaves (the direction of the token is downstream), the data token at the end of the data frame will indicate for how long the slave is allowed to transmit. This length of time is known as the token validity, and is expressed as a number of symbols. The maximum length of the data frame is limited by the validity.

Upon transmitting a data token, the node will enter reception mode.

When a CPE receives a data token, it may transmit a data frame for as long as the received data token validity indicated. At the end of the frame, a data token is transmitted indicating the end of the transmission. At this point, the master node will take over the channel again.

When a Time Division Repeater (TDR) receives a data token from its master node, it schedules the transmissions between itself and the master node and also distributes new tokens among its slaves, for as long as the received data token validity indicated.

The validity does not need to be fully used by the receiving node, and it will not be wasted: the validity only sets the maximum length of time between the transmission of a token downstream and the return of this token, and it does not reflect the actual length.

4.3.3 Silence Frame

A node transmits the silence frame when it does not want to transmit the token to another node at the end of the frame or when no other kind of frames can be sent (or need to be sent). A silence frame may contain bursts with payload data. Upon transmitting a silence token, the node shall transmit a new frame.

For instance, the silence frame may be used by a HE node that is alone in the network. In that situation it shall send periodical access frames, and silence frames will cover the rest of the time. Another use is when the bursts to be transmitted do not fit in one single MPDU. In such a case it is possible to transmit several consecutive silence frames and a final data frame to pass the token to another node.

Upon reception of a silence token, no action needs to be done.

4-June-07 P1901_PRO_016_r0

Submission page 97 UPA-OPERA

4.3.4 Channel Estimation Frame

Periodically, every node has to send a channel estimation frame so that nodes communicating with that node can estimate their channel and adjust their bit-loading table.

A channel estimation frame is composed by a token announce followed by a known pseudo-random sequence of 16 symbols. A channel estimation frame is not addressed to any specific node. Any node which receives a Channel Estimation frame shall consider this frame if the transmitter MAC address included in the Token Announce is part of a completed entry in the port solver table (see 9.1.4.1).

A channel estimation process may lead to the transmission of a bit-loading table calculated upon the reception of a Channel Estimation Frame. The Adaptive Bit-Loading Protocol is used for the transfer of this bit-loading table and its acknowledgement (see section 9.1.2). Every node is responsible for evaluating the appropriate time to return the calculated bit-loading table. For instance, if there are major changes in the new calculated bit-loading table with respect to the previous one, the node can immediately return the new bit-loading table before any other transmission is considered. If the new bit-loading table has undergone no changes, the node shall not return any bit-loading table.

4.3.4.1 Transmission of channel estimation frames by TDRs and CPEs

TDRs and CPEs shall ask permission to their master to transmit a channel estimation frame. The channel estimation frame sent by a TDR may be used by the master and the slaves of the TDR to estimate the channel from the TDR. The channel estimation frame sent by a CPE may be used by the master of the CPE to estimate the channel from the CPE. A TDR shall not transmit channel estimation frames within its validity period unless the Allow channel estimation frame field received within the data token was set to 1 by its master, but can grant rights to transmit channel estimation frames to its slaves.

As shown in Figure 31, the channel estimation process can be initiated either by the TDR or CPE (referred as slaves) or its master.

4-June-07 P1901_PRO_016_r0

Submission page 98 UPA-OPERA

Master

Slave1

2

3

4

Send CE frame next=1in Data Token

CE frame

Unicast Bit-loading table

for uplink

Slave initiated

Allow CE frame=1in Data Token

Master initiated

Master

Slave

1

2

3

Allow CE frame=1in Data Token

CE frame

Unicast Bit-loading table

for uplink

CE=Channel Estimation

Figure 31 Transmission of channel estimation frames by TDRs and CPEs

Channel estimation initiated by the slave:

A slave shall periodically evaluate that it is time to send a new channel estimation frame. A slave shall not ask permission to send a channel estimation frame more than once every MIN_INTERVAL_FOR_CE_REQUESTS (default value is 3 seconds and corresponds to the minimum number of seconds between two requests from the same slave for an uplink channel estimation).

A slave may ask permission to send a channel estimation frame by setting the “Send Channel Estimation Frame Next” to 1 in the data token to its master. The master may accept or reject this request by setting the “Allow Channel Estimation Frame” to 1 (Accept) or 0 (Reject) in the next data token it returns to this slave. Upon reception of a data token with “Allow Channel Estimation Frame” set to 1, the slave shall transmit a Channel Estimation Frame. At the end of the transmission the slave shall enter reception mode, and the next transmitter will be the master.

Channel estimation initiated by the master:

The channel estimation process also allows the master for asking the slave to send a channel estimation frame. In this case, the master directly sets the “Allow Channel Estimation” to 1 in the data token sent to the slave. The process is then executed in the same way as mentioned above.

A master may request a slave to transmit a Channel Estimation frame as often as it deems necessary.

4-June-07 P1901_PRO_016_r0

Submission page 99 UPA-OPERA

4.3.4.2 Transmission of channel estimation frames by the HE

The process for the HE is different since it is the only node in the BPL cell that does not have a master.

The HE can send a Channel Estimation Frame as often as it deems necessary. At the end of the transmission of a Channel Estimation frame by the HE, it is the HE which keeps the control of the medium.

The channel estimation frame sent by a HE may be used by the slaves of the HE to estimate the channel from the HE. Each slave will have the opportunity to return the new calculated unicast bit-loading table (via the ABLP protocol) as soon as it receives a data token from its master. However, as described above, the slave shall not necessarily return the unicast bit-loading table as soon as it receives a data token following a Channel Estimation frame.

4.3.5 Polling Frame

As described in 4.2.1, polling frames are used by the master to manage CPE state transitions from Idle to Active or Idle to Unregistered.

Polling frames are frames terminated by a Polling Token. Polling Tokens are addressed to several CPE at the same time via the Polling Destination Bank/Polling Destination Ports fields of the Polling Token (see 4.4.2.4,

Polling Token). A Polling Token is followed by a polling response sequence made of polling slots. The number of polling slots included in this sequence corresponds to the number of bits set to 1 in the Polling Destination Ports field of the polling token (max = 32). First bit set to 1 (going from the Least to the Most Significant bit) corresponds to the first polling slot in the polling response sequence and so forth. Upon reception of a polling

token, a CPE which is addressed by this token shall assert a SOT in its corresponding polling slot if that answer to the polling token is affirmative. It shall not respond if the answer to the polling token is negative.

Figure 32 shows a typical polling scheme in which three CPEs are polled. CPE 1 and CPE 3 assert a SOT in their corresponding polling slots (affirmative response) while CPE 2 does not respond to the polling token (negative response). Polling slots have duration equal to Size Poll Window. Two polling slots are separated by a gap of Offset Poll Window. The last polling slot of the Polling Response Sequence is not followed by this gap: the TX-RX Switch time shall be initiated immediately after the transmission of the last polling slot

4-June-07 P1901_PRO_016_r0

Submission page 100 UPA-OPERA

Slave1 TX

Master TX

Polling Token addressed to Slaves 1,2 and 3 IPPDUS1

SOT

Polling PPDU

Size Poll Window

Size Poll Window

Size Poll Window

Offset Poll Window

Offset Poll Window

Slave2TX

Slave3TX

Polling Slot 1

Polling Slot 2

Polling Slot 3

SOT

Time

IPPDUS1

Figure 32 Polling scheme

As described in 4.2.1, there are two types of Polling Tokens transmitted by a master to CPEs:

• Active Polling Token

• Alive Polling Token

These Polling Tokens are identified by the Polling Type field (see 4.4.2.4, Polling Token).

Note: Active Polling Tokens provide an Idle CPE with the ability to recover the Active state and get transmission opportunities. The master transmits data tokens only to those slaves that are considered Active.

Alive Polling Tokens provide the master with the ability to detect slaves with no activity (e.g.: turned off). These ones become Unregistered and are not polled anymore.

4.3.6 TDR Polling Frame

As described in 4.3.5, master shall periodically poll its Idle TDRs and give them opportunity to poll their own Idle slaves (CPEs and/or TDRs) and transmit Access Frames. TDR Polling Frames have the same format as a Data Frame except for the last symbol, which is a TDR Polling Token instead of a Data Token. TDR Polling

4-June-07 P1901_PRO_016_r0

Submission page 101 UPA-OPERA

Tokens are addressed to a single port and when they are generated by the master, they shall have enough validity for the polled TDR to transmit Active and Alive Polling Frames, TDR Polling Frames and Access Frames within the maximum intervals.

This kind of frame is also used by the TDR to indicate whether it wants to be Active or stay Idle; in this case this frame can only contain service class 7 traffic, except if it is an Active TDR Polling Reply Frame, case in which any data can be transmitted, according to the remaining validity.

4.3.7 CSMA Frame

The aim of this type of frame is to provide the nodes which do not have access to the channel, an opportunity to gain access. This type of frame is addressed to:

• Idle nodes that have data packets to send in order to change them into active ones.

• Idle nodes that generates bursty traffic

When a node receives a CSMA token and wants to transmit, it must contend for the channel. This contention is performed through a Backoff. If the node wins the contention it starts transmitting; otherwise, the node waits for another CSMA token.

Each node will contend for channel access with a different value depending on its contention priority; contention is prioritized in the following way:-

• High Service class Data traffic and idle state: in order to minimize the probability of collision between nodes that are in the same case each of them will select a random value in the range [P1min, P1max]. In this case, the MAC must configure the node to transmit only packets with service class 7. The idea is to only send the Resource Request Packet and not send the High Service class Data traffic to avoid glitches in the audio or the video application.

• Idle node with control packets: this contention range [P2min, P2max] is reserved in order the idle nodes send the control packets.

• Idle node with Bursty Traffic: this contention range [P3min, P3max] is reserved for nodes with very low throughput of low service class data traffic.

4-June-07 P1901_PRO_016_r0

Submission page 102 UPA-OPERA

P0max P1min

P2max P3min

CONTENTION WINDOW

P1max P2min P3max

CSMA Token

IPPDUS1Backoff

slot time

SOT

CSMA PPDU

Backoff time

P0min

SOT

PPDU

Token

Contention winner Node

Figure 33: Use of CSMA Token to assign channel time to the contention winner node

4.3.8 Access Frame

A master shall periodically transmit Access tokens inviting Unregistered slaves or Registered slaves that want to change masters to subscribe to the network. An Access Token does not have a specific destination, and thus it is possible that no slave will answer to this request. Upon receiving an access frame, an Unregistered slave or a Registered slave that decides to reply must send an access reply frame as described in 4.3.6.

4.3.9 Access Reply Frame

The access reply frame is sent by an Unregistered slave that wishes to enter the network, or a Registered slave that wishes to change its current master. The transmission of an Access Reply Frame is triggered by the reception of an Access Frame.

4-June-07 P1901_PRO_016_r0

Submission page 103 UPA-OPERA

Slave TX

Master TX

Time

Access Token

Access Reply Token

Backoff time: slave selects slot 5

IPPDUS1 Backoff slot time

SOT

SOT

Access Reply PPDU

Access PPDU

Figure 34 Access Reply scheme

The Access Reply Frame is preceded by a contention. The contention method used is the backoff contention method: all contending nodes select a random amount of time to wait before beginning the transmission. The SOT can be transmitted in one of 16 slots. Each node that intends to send an Access Reply PPDU will select a random number between 1 and 16 with a uniform distribution and schedule the transmission of the PPDU in the appropriate slot (slot 1 corresponds to the first slot after the TX-RX switch time has expired). The size of each slot is BACKOFF_SLOT_TIME. After the backoff time has expired, the Access Reply PPDU must be transmitted. If a SOT (beginning of an Access Reply PPDU) is heard before the time has expired, another node has won the contention and the transmission of the access reply frame should be deferred until a new access frame is received. A new random slot will be selected the next time. Particularly, the backoff process is not affected by the loss of a contention, and the process will be carried out in the same manner, except that the random slot will be selected again.

If no SOT is heard before starting the transmission of the own SOT, the whole transmission of the access reply frame will take place. Its structure is identical to a data frame, except for the final token type.

The master, upon receiving an access reply frame, will consider, taking into account Radius, QoS or any other criteria defined, accepting this node as its slave. The response will be sent as an access packet (see 9.1.3.1). If a node that transmitted an Access Reply PPDU does not receive a reply from the master in ACCEPTATION_TO it will begin the process again.

4-June-07 P1901_PRO_016_r0

Submission page 104 UPA-OPERA

4.3.10 Non-returnable Data Frame

The non-returnable data frame is a frame transmitted from a master to many (up to eight) of its slaves (usually TDRs). The non-returnable data token transmitted at the end of the frame indicates which are the destination nodes and for how long they will be allowed to transmit. This length of time is known as the token validity, and is expressed as a number of symbols. The non-returnable data frame can only be sent by a master if Cluster Discovery Protocol (See 0) messages have been received from the TDRs that are slaves to it.

Upon transmitting a non-returnable data token, the master will ignore any signals received until the validity time is finished. At this point, the master will transmit a new frame. No frame will be expected by the transmitter of the non-returnable data frame.

Upon reception of the non-returnable data frame, the slaves (usually TDRs) will start transmitting new frames. However, they must not transmit any data in the upstream (data for the master that sent the non-returnable data frame), or any channel estimation frames.

The non-returnable data frame allows the simultaneous transmission of data and tokens of several isolated clusters, thus allowing for spatial reuse.

4.3.11 Clock Frame

The Clock frame is used to synchronize all nodes of a BPL cell.

Every node shall have an internal timer derived from a 312.5 kHz clock. The periodic timer shall count down from a maximum value to zero. The maximum timer value (Tmax) shall be adapted to span 9 mains periods to allow enough numerical accuracy. This value is transmitted in the Clock token together with the remaining cycles (TimerValue) which shall be the value of the timer in the moment the Clock token is transmitted.

The information transmitted in the Clock frame shall be the remaining cycles for reaching the end of the timer period. This information is used in the receiver node to calculate the delay between its timer and the transmitter timer. The delay with the master shall be used to compensate the own timer. The Clock frame shall be transmitted only from masters to its direct slaves. Therefore, when a node receives a Clock frame, it shall check that it comes from its direct master before using the information. The master/slave tree topology allows the propagation of the information.

The mains frequency is not a stable value and fluctuates depending on the energy demand. So, the maximum timer value shall be continuously corrected to follow the mains variations. Tmax can be obtained in two different ways:

1. Using a zero-cross point detection circuit. 2. Using the MaximumCorrectionValue field of the Clock token. This field allows a slave to synchronize with

the network clock without using a zero-cross point detection circuit.

From Tmax the value of the actual mains periord (Tmains) can be calculated in the following way:

4-June-07 P1901_PRO_016_r0

Submission page 105 UPA-OPERA

9maxT

Tmains =

Equation 33

This periodic timer shall be used to divide the mains period in fixed duration time slots called Qs. The Qs shall be obtained directly from the periodic timer (Ti) as it is shown in Equation 34.

( ) 6mod >>= mainsi TTQ

Equation 34

The duration of a Q is 204.8 μs, and the number of Qs (mains period divisions) will be different depending on the mains frequency. For example 98 in the case of 50 Hz and 82 in the case of 60 Hz, assuming there is no deviation from the nominal frequency.

The MPDU of a Clock frame shall be composed by a Token Announce and a Clock token delimiter. The transmitter of a Clock frame shall know exactly the frame size (in symbols) before start transmitting, in order to calculate the delay added in the transmission of that frame. This delay shall be compensated in the transmitted remaining cycles (TimerValue field of the Clock token).

The Clock frame shall be transmitted every CLOCK_PERIOD_TIME.

The following figures show the described timing references:

0 V

Q @ 60 Hz

Q @ 50 Hz 97

96

95

81

80

79

2 1 0

2 1 0

...

...

3

3

94

78

... 81

80

79

78

50 Hz Mains60 Hz Mains

Figure 35 Qs Vs mains period

4-June-07 P1901_PRO_016_r0

Submission page 106 UPA-OPERA

Figure 36: Clock frame timming reference

4.4 MAC DELIMITERS

As described in 4.3, the MAC layer generates two types of MPDUs: regular MPDUs and Channel Estimation MPDUs. These MPDUs make use of two MAC delimiters:

• Token Announce

• Token

Note: MAC delimiters are processed by the PHY layer as described in 3.3.1.

4.4.1 Token announce

The Token Announce is sent in the initial sequence of every transmission frame. The Token Announce has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x90471D2D. The preamble is used to distinguish the different types of control symbols.

- Type – 4 bits. In this case, Type should be ANNOUNCE(3).

- Validity – 12 bits. Maximum number of symbols that will be transmitted in the current transmission after this Token Announce Symbol. The maximum number that can be used is MAX_TA_VALIDITY

- Access Id – 16 bits. This id must be set to 0x0001.

4-June-07 P1901_PRO_016_r0

Submission page 107 UPA-OPERA

- Channel Estimation Frame – 1 bit. If this frame is a Channel Estimation Frame, Channel Estimation Frame must be set to 1. Otherwise, Channel Estimation Frame must be set to 0.

- Power Control bits – 5 bits. From left to right:

Bit 4. Set to 1 on booting and after the transmission gain is increased. Set to 0 fifteen seconds after it was set to 1.

Bit 3. Set to 1 if the node cannot decrease its transmission gain due to own reasons. For example: low throughput. Set to 0 otherwise.

Bit 2. Set to 1 if the node is not going to decrease its transmission gain due to other nodes reasons, but if those external circumstances end then the transmission gain could be decreased (depending on bit 3). For example: when another equipment has bit 3 to 1 and the node wants to isolate from it. Set to 0 otherwise.

Bit 1. Set to 1 if the power control task is on. Set to 0 otherwise.

Bit 0. Set to 1 if transmission gain has been decreased and isolation is expected. Set to 0 if transmission gain has its maximum (initial) value.

If power control is not implemented this field shall be set to 0b01000

- MAC Mode – 3 bits. Must be set to 0b001 for Access.

- Type of Node – 3 bits. See below

- ACCRQ – 1 bit. If this frame is an Access Frame, ACCRQ must be set to 1. Otherwise, ACCRQ must be set to 0. Using this field, a node that is searching for a master only needs to receive the TA to know that it is an Access frame.

- MID – 21 bits. Master Id. It is used to detect if there is interference from other BPL cell. The problem of interference appears when there is more than one node allocating the channel in time. This can happen when there are two BPL cells, each one having its own HE, and the transmissions from some nodes in one of them can be received by some nodes in the other BPL cell.

The first problem is to know if a node is being interfered because there is more than one HE in the channel. To solve this issue all the nodes that share the token must identify themselves as members of the same BPL cell.

The HE of the BPL cell must transmit an identifier, so called Master Id [MID], and each node that depends directly or indirectly (because is in the HE’s BPL cell) must copy the MID.

The transmission of the MID is splitted between 2 symbols, the Token Announce and the Access or CSMA Token

In the Token Announce, 21 bits are sent, with the following structure:

4-June-07 P1901_PRO_016_r0

Submission page 108 UPA-OPERA

Figure 37 Master ID in Token Announce

In the Access or CSMA token, additional 32 bits to complete the Master ID will be sent

Figure 38 Master ID in Access Token

So to complete the whole MID an Access Token must be received, but most of the decisions can be taken only with the information received in the Token Announce.

When a node detects that its master has change the MID it shall change it immediately.

Force master field (3 bits)

This field shall be used to establish priorities in the network coordination rules between Access and IH BPL cells. Values shall be:

• 0x0 – 0x1 for Access MV BPL cell.

• 0x2 – 0x4 for Access LV BPL cell.

• 0x6 – 0x7 Reserved for IH cells.

Negotiation field (1 bit)

4-June-07 P1901_PRO_016_r0

Submission page 109 UPA-OPERA

It is used to change the priority of a MID in the coordination rules depending on the scenarios. Default value shall be 1. The following rules shall be respected:

• A node with the same MID except for the Negotiation field shall consider it as the same MID. In this case, the Negotiation field shall not be considered in the network coordination rules.

• A node with different MID (Force Master, Reserved field or Identification field) shall consider the Negotiation field in the network coordination rules.

The next 2 rules assert that the Negotiation field will be set to the same value into the same BPL cell if a change is made by a single node:

• If the Negotiation field changes from 1 to 0 in a node, its master shall set the Negotiation field to 0.

• If the Negotiation field changes in a node, its slaves shall set the same Negotiation field value.

Only the HE can change the Negotiation field from 0 to 1 again. The HE shall change the Negotiation field from 0 to 1 after 120 seconds from the change from 1 to 0.

Reserved field (1 bit)

For future use.

Identification field (48 bits)

By default it should be the Mac Address of the HE stored in reverse order. It shall not be assumed by any protocol that the MasterId includes a MAC address.

For example, the MAC 0x00139D0002A8 will produce the Identification Field 0xA802009D1300

- MAC – 48 bits. This is the MAC address of transmitter.

4-June-07 P1901_PRO_016_r0

Submission page 110 UPA-OPERA

90

01234567

47

1D

2D

Type Validity [11:8]

Validity [7:0]

Always MUST be set to 0

Ch. Est. Fr.

MAC ModeAlways MUST be set to 0

Always MUST be set to 0

MID [15:8]

MID [7:0]

Access Id [7:0]

Access Id [15:8]

Always MUST be set to 0

MAC[1]

MAC[2]

MAC[3]

MAC[4]

preamble

MAC[0]

MAC[5]

Always MUST be set to 0

TypeOfNode[2]

Type of Node [1:0] MID [20:16] ACCRQ

Power Control bits Always MUST be set to 0

Figure 39 Token Announce

The field Type has the following meanings:

3 ANNOUNCE

The field Type of Node has the following meanings:

0 HE

1 CPE

2 TDR

4-June-07 P1901_PRO_016_r0

Submission page 111 UPA-OPERA

4.4.2 Token

There are ten kinds of Token:

- Distributor Token

- Data Token

- Silence Token

- Polling Token

- TDR Polling Token

- CSMA Token

- Access Token

- Access Reply Token

- Non-returnable Data Token

- Clock Token

The field Type has the following meanings:

Token Type Value

DATA 0

NON-RETURNABLE 2

CLOCK 3

POLLING 5

TDR POLLING 7

DISTRIBUTOR TOKEN 8

CSMA 9

4-June-07 P1901_PRO_016_r0

Submission page 112 UPA-OPERA

SILENCE 11

ACCESS_REQUEST 13

ACCESS_REPLY 14

The field Type of Node has the following meanings:

0 HE

1 CPE

2 TDR

The field Direction has the following meaning:

0 DOWNSTREAM

1 UPSTREAM

4.4.2.1 Distributor Token

The Distributor Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be DISTRIBUTOR (8)

- DstPortx – Destination Port 1 to 5. – 7x5 bits. These are the next token holders (Distribution List). The destination port equals to the Local Port assigned by the Distributor Token sender to each node. See

4-June-07 P1901_PRO_016_r0

Submission page 113 UPA-OPERA

¡Error! No se encuentra el origen de la referencia. for more information on the Port Solver protocol. If this field is equal 0, the destination node is the Master node.

- Info Size – 1 bit. This field indicates the size of the Session Id and Validity fields. If it is set to 0, the size of the SessionId equals 5 bits and Validity equals 6 bits. In that case, the Distributor Token carries information for 5 destination nodes. If it is set to 1, the size of SessionId and Validity equal 8 bits. In that case, this token carries only information for 4 destination nodes. Master will use this subtype of Distributor token if it has more than 32 opened sessions.

- Validityx – (6x5 bits) or (8x4 bits). Channel time assigned for each of the nodes on the distribution list. This is the maximum channel time the DstPortx can use before send the token to the next node on the list. This value is indicated in multiples of 8 symbols.

- SessionIdx – (5x5 bits) or (8x4). This value indicates the flow from which the DstPortx is allowed transmitting.

- Recovery Mode – 1 bit. Indicates the token loss recovery mode selected by the Master. See section X. It indicates if the in charged of recovering a token loss is the Distributor Token sender (if set to 0) or each of the nodes on the distribution list (if set to 1).

- Sequence Number – 3 bits. Identifier of the current Distributor Token.

- Disruption Token – 1 bit. This bit informs to the destination nodes of the Distributor token that the transmitter node is the new QC of the network and it wants to become the master of them.

- Silence Mode – 1bit. Transmitter node indicates it is going to enter in intermittent transmission.

Following diagrams shows the Distributor Token structure if Info Size = 0;

4-June-07 P1901_PRO_016_r0

Submission page 114 UPA-OPERA

Figure 40 Distributor Token Info Size = 0

Following diagrams shows the Distributor Token structure if Info Size = 1;

4-June-07 P1901_PRO_016_r0

Submission page 115 UPA-OPERA

Figure 41 Distributor Token Info Size = 0

4.4.2.2 Data token

The Data Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be DATA (0)

- Direction – 1 bit. See above.

- Transmission in HURTO – 1 bit. Indicates whether the transmission from Token Transmitter to Destination Port is using HURTO or not.

- Allow Channel Estimation Frame– 1 bit. From Master to Slave. If it is set to 1, the Slave receiving this token must send a Channel Estimation Frame. See 4.3.3 for more information.

- Send Channel Estimation Frame next – 1 bit. From Slave to Master. The Slave is requesting to send a Channel Estimation Frame. See 4.3.3 for more information.

4-June-07 P1901_PRO_016_r0

Submission page 116 UPA-OPERA

- Single Validity – 4 bits. It is expressed in slots (each slot is composed of 16 symbols). The Single Validity is an indication from the master on the validity that may be assigned for individual transmission. This information is only used as an example of how to distribute the token validity. However, the receiving node does not have to follow that distribution. In that case the receiving node may change the Single Validity to a new value, according to the validity that it assigns in the Data Token. Individual transmission means the transmission from a TDR to a CPE or a CPE to its TDR. This field is not used by CPEs. The relevant field for CPEs is the Validity. The Single Validity includes all symbols transmitted after the TA. The minimum Single Validity is 1.

- Validity – 12 bits. From Master to Slave. This indicates the maximum validity that the slave will be allowed to use before returning the token. It is expressed as a number of symbols. The master shall start a timer after the transmission of the Token Announce by the slave with the duration of the Validity it has assigned, and expect to receive the token back before this timer expires. If the slave is a repeater, the Validity includes the time needed for the repeater to communicate with its slaves.

- Destination Port – 7 bits. Local Port assigned to the intended receiver of the Data Token. See 9.1.4 for more information on the Port Solver protocol.

- Session Id – 8 bits. Identify a specific flow reserved by the CAC protocol that should have priority over other flows registered or best-effort traffic.

- Frame Service class – 8 bits. Only used from slave to master. The Frame Service class field in the token is used to convey the information of the service classes that have been transmitted within the frame, when the token is directed towards its master node and also all the service classes detected in the previous upstream transmissios. CPEs use this field to indicate the service classes sent in their transmission and TDRs gather the service class information of their slaves and the service class information from their own transmissions. Therefore, the HE has the information of all the priorities transmitted in the network. When the token is transmitted towards slave nodes, this field is not used. If bit X is equal to 1, there is at least one packet in this frame with service class X.

- Unused frame symbols - 13 bits. Unused symbols in the current frame, compared to the Validity indicated in the token announce of the same transmission frame.

- Received words - 16 bits. The Received Words Field is used to communicate to the token receiver the number of 32-bit words that have been received from that destination since the last time, so that the bandwidth limitation algorithm can respond. Counting shall be performed over complete received packets when they are passed to the Convergence Layer.

- Number of Downstream Nodes – 8 bits From a CPE to its master, the Number of Downstream Nodes is equal to 0. From a TDR to its master, the Number of Downstream Nodes is equal to the number of nodes in its BPL subtree minus 1.

- Maximum Number of Hops – 4 bits. From a CPE to its master, the Maximum Number of Hops is equal to 0. A TDR will set the Maximum Number of Hops as the maximum value of number of hops amongst those received by the nodes hanging from it plus 1.When this field is set to 31 means that there are 32 hops or more.

- Distributor Sequence Number – 3 bits. Identifier of the current Distributor Token when this Data Token belongs to an scheduded chain of transmissions generated by a Distributor Token.

4-June-07 P1901_PRO_016_r0

Submission page 117 UPA-OPERA

5F

01234567

73

EE

E2

Type

Validity [11:8]

Validity [7:0]

Destination Port

Frame Priority

Session ID [7:0]

Always MUST be set to 0

Received words [7:0]

Unused Frame Symbols [12:8]

Unused Frame Symbols [7:0]

Reserved

Single Validity

Received words [15:8]

Number of Downstream Nodes

Reserved

Maximum Number of Hops

Always MUST be set to 0

preamble

Direction ReservedTransmission

in HURTOAlow Channel Estimation Fr.

Send Ch. Est. Fr. Next

Always MUST be set to 0

Always MUST be set to 0

Reserved

Reserved

Distributor Sequence Number Always MUST be set to 0 No Destination Port Always MUST be set to 0

Figure 42 Data Token

4.4.2.3 Silence Token

The Silence Token includes the following fields of the data token:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be SILENCE (11).

- Unused frame symbols (13 bits). Unused symbols in the current frame, compared to the Validity indicated in the token announce of the same transmission frame.

4-June-07 P1901_PRO_016_r0

Submission page 118 UPA-OPERA

5F

01234567

73

EE

E2

Type

Always MUST be set to 0

Always MUST be set to 0

Unused Frame Symbols [12:8]

Unused Frame Symbols [7:0]

Always MUST be set to 0

preamble

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Figure 43 Silence Token

4.4.2.4 Polling Token

The Polling Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. In this case, Type shall be POLLING (5).

- Polling Type – 1 bit. (The Polling Type could be equal to ACTIVE(1) or ALIVE(0). When Polling Type is ACTIVE, the Polling Token is requesting which nodes have data to be sent. When Polling Type is ALIVE, the Polling Token is requesting which nodes are alive.

- Polling Destination Bank – 2 bits. The total number of destination ports of this Polling Token is divided into 4 banks. The Polling Destination Bank is to know the destination bank of this polling. The first available port is port 9.

0 9 - 40 ports

1 41 - 72 ports

4-June-07 P1901_PRO_016_r0

Submission page 119 UPA-OPERA

2 73 - 104 ports

3 105 - 126 ports

- Unused frame symbols (13 bits). Unused symbols in the current frame, compared to the Validity indicated in the token announce of the same transmission frame.

- Polling Destination Ports – 32 bits. Destination Ports of Polling Destination Bank of this Polling Token. Each bit represents one port.

To cover all the possible ports, the field Polling Destination Bank, selects one of the four possible groups of ports. In order to poll port X (X>=9), Polling Destination Bank equals (X-9) / 32. The bit that represents port X in Polling Destination Ports field is bit (X-9) mod 32. A bit set to 1 means that this user is being polled. Only ports in the same Polling Destination Bank can be polled simultaneously

5F

01234567

73

EE

E2

Type

Always MUST be set to 0

1

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Unused Frame Symbols [7:0]

Always MUST be set to 0

Always MUST be set to 0

Polling Destination Ports

Polling Destination Ports

Polling Destination Ports

Always MUST be set to 0

preamble

Polling Type

Polling Destination Ports

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Polling Destination Bank Always MUST be set to 0

Always MUST be set to 0

Unused Frame Symbols [12:8]

Figure 44 Polling Token

4.4.2.5 TDR Polling Token

The TDR Polliing Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

4-June-07 P1901_PRO_016_r0

Submission page 120 UPA-OPERA

- Type – 4 bits. Type shall be TDR POLLING (7)

- Direction – 1 bit. DOWNSTREAM (0) means that this TDR Polling Token is sent by a master to poll a TDR. UPSTREAM (1) means that it is a TDR Polling Reply Token, sent by a TDR to its master.

- Reply – 1 bit. If Reply is ACTIVE (1), the TDR indicates that it wants to be Active and receive transmission opportunities. If it is IDLE (0), the TDR stays as Idle.

- Single Validity – 4 bits. It is expressed in slots (each slot is composed of 16 symbols). The Single Validity is an indication from the master on the validity that may be assigned for individual transmission. This information is only used as an example of how to distribute the token validity. However, the receiving node does not have to follow that distribution. In that case the receiving node may change the Single Validity to a new value, according to the validity that it assigns in the Data Token. Individual transmission means the transmission from a TDR to a CPE or a CPE to its TDR. The Single Validity includes all symbols transmitted after the TA. The minimum Single Validity is 1.

- Validity – 12 bits. From Master to Slave. This indicates the maximum validity that the TDR will be allowed to use before returning the token. It is expressed as a number of symbols. The master shall start a timer after the transmission of the Token Announce by the slave with the duration of the Validity it has assigned, and expect to receive the token back before this timer expires.

- Destination Port – 7 bits. Local Port assigned to the intended receiver of the Data Token. See 9.1.4 for more information on the Port Solver protocol.

- Unused frame symbols – 13 bits. Unused symbols in the current frame, compared to the Validity indicated in the token announce of the same transmission frame.

- Number of Downstream Nodes – 8 bits From a TDR to its master, the Number of Downstream Nodes is equal to the number of nodes in its BPL subtree minus 1 (0 if it has no slaves).

- Maximum Number of Hops – 4 bits. A TDR will set the Maximum Number of Hops as the maximum value of number of hops amongst those received by the nodes hanging from it plus 1 (0 if it has no slaves). When this field is set to 31 means that there are 32 hops or more.

5F

01234567

73

EE

E2

Type

Reserved

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Unused Frame Symbols [7:0]

Validity[7:0]

Always MUST be set to 0

Number of Downstreams Nodes

Always MUST be set to 0

preamble

Direction

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Destination Port

Unused Frame Symbols [12:8]

Reply

Single Validity Validity[11:8]

Always MUST be set to 0 Maximum number of Hops

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

4-June-07 P1901_PRO_016_r0

Submission page 121 UPA-OPERA

Figure 45 TDR Polling Token

4.4.2.6 CSMA Token

The CSMA Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be CSMA (9).

- Type of Node – 2 bits.

- Number of Hops – 4 bits. For a HE, the Number of Hops is equal to 0. For the rest of nodes, the Number of Hops is equal to the Number of Hops read in CSMA Token from its Master + 1. In a CPE, this field is not used. When this field is set to 31 means that there are 32 hops or more.

- Validity – 7 bits. This indicates the maximum validity that the slave will be allowed to use before returning the token. It is expressed as a multiple of 8 symbols.

- Unused frame symbols (13 bits). Unused symbols in the current frame, compared to the Validity indicated in the token announce of the same transmission frame.

- MID (2nd part) – 32 bits. Last 4 bytes of the MasterId (The 21st first bits are allocated in the Token Announce).

Following fields configure the contention window:

- P0min (2 bits).

- SizeP0 (4 bits). Size of the contention range for the priority 0. This value fixes the P0max = P0min+SizeP0.

- SizSlave 1 (4 bits). Size of the contention range for the priority 1.

- SizSlave 2 (4 bits). Size of the contention range for the priority 2.

- SizSlave 3 (4 bits). Size of the contention range for the priority 3.

- Allowed Ports (32 bits). Nodes allowed contending for the channel. Each bit represents one port. To cover all the possible ports, the field Destination Bank(2bits), selects one of the four possible groups of ports. In order to allow contentending to port X (X>=9), Destination Bank equals (X-9) / 32. The bit that represents port X in Allowed Ports field is bit (X-9) mod 32. A bit set to 1 means that this port is allowed to contend.

- Subtype (2 bits). Type of CSMA token.

• Normal = 0: Contention window is configured as it

• AllNodes = 2: This subtype indicates that all nodes can contend for the channel. Thus, the AllowedPorts information must be ignored.

4-June-07 P1901_PRO_016_r0

Submission page 122 UPA-OPERA

5F

01234567

73

EE

E2

Type

Validity [7:0]

P0min[1:0]MasterId[5][7:4]

MasterId[6][7:4]

Number of Hops

Unused Frame Symbols [12:8]

Unused Frame Symbols [7:0]

MasterId[3]

preamble

Type of Node

Always MUST be set to 0

Always MUST be set to 0

MasterId[6][3:0]

Always MUST be set to

Always MUST be set to 0

MasterId[4]

SizeP0[4:0] SizeP1[4]

SizeP1[3:0]

MasterId[5][3:0]

SizeP3[4:0]Always MUST be set to 0 SizeP2[4:3]

SizeP2[2:0] Destination Bank[1:0] Subtype[2:0]

AllowedPorts[31:24]

AllowedPorts[23:16]AllowedPorts[15:8]

AllowedPorts[7:0]Always MUST be set to 0

Figure 46: CSMA token structure

4.4.2.7 Access Token

The Access Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be ACCESS_REQUEST (13).

- Direction –1 bit. Shall be set to DOWNSTREAM (0)

- Type of Node – 2 bits. See above.

- Validity – 12 bits. From Master to Slave. This indicates the maximum validity that the slave will be allowed to use before returning the token. It is expressed as a number of symbols.

- Number of Hops – 4 bits. For a Head End, the Number of Hops is equal to 0. For a TDR, the Number of Hops is equal to the Number of Hops read in Access Token from its Master + 1. When this field is set to 31 means that there are 32 hops or more.

-

4-June-07 P1901_PRO_016_r0

Submission page 123 UPA-OPERA

- Unused frame symbols (13 bits). Unused symbols in the current frame, compared to the Validity indicated in the token announce of the same transmission frame.

- MID (2nd part) – 32 bits. Last 4 bytes of the MasterId (The 21st first bits are allocated in the Token Announce).

- MAC Address – 48 bits. Own MAC address.

- Equivalent speed – 8 bits. This value gives an indication of the throughput to the backbone that can be achieved connecting to the network through this node. The value is calculated from the equivalent BPS.

⎥⎦

⎥⎢⎣

⎢ −=

60120

_ eqBPSspeedEquivalent

Equation 35

If the node is directly linked to the backbone the field will be set to 255. If the node is one hop from the backbone the equivalent BPS are equal to the average of the downstream and upstream BPS of the node with its master.

owneq

downupeq BPS

BPSBPSBPS =

+=

2

Equation 36

If there is more than one hop to the backbone the equivalent BPS are calculated from the BPS value obtained from the master and the own equivalent BPS.

owneq

ieq

ieq

BPSBPS

BPS 111

1 +=

Equation 37

Values for the equivalent speed obtained from the previous formulas shall be between 1 and 254. A value of zero in this field means that the repeater has not been able to calculate it. The BPS information obtained from the access token, combined with the BPS calculated by the new slave in the link may be used in order to decide which is the best master to be connected to.

4-June-07 P1901_PRO_016_r0

Submission page 124 UPA-OPERA

5F

01234567

73

EE

E2

Type

Validity [7:0]

Number of Hops

MAC [1]

Unused Frame Symbols [12:8]

Unused Frame Symbols [7:0]

Always MUST be set to 0

Validity [11:8]

MAC [0]

MAC [3]

MAC [4]

MAC [5]

Equivalent Speed

preamble

Direction Type of Node

MAC [2]

Always MUST be set to 0

Always MUST be set to 0

MasterId[3][7:4]

Always MUST be set to 0

MasterId[6][3:0]

MasterId[5][3:0]

MasterId[4][3:0]

MasterId[3][3:0]

MasterId[6][7:4]

MasterId[5][7:4]

MasterId[4][7:4]

Figure 47 Access Token

4.4.2.8 Access Reply Token

The Access Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be ACCESS_REPLY (14).

- Direction –1 bit. Shall be set to UPSTREAM (1).

- Type of Node – 2 bits. See above.

- MID – 32 bits. Part of the Master ID not included in the Token Announce.

- Disconnect – 1bit. If this field is set to 0, the token is a normal ACCESS REPLY TOKEN, used to achieve access to the network through a master. If it is set to 1, the token becomes an ACCESS REPLY DISCONNECTION TOKEN, used to leave a master.

- Destination Port – 7 bits. Local Port assigned to the master.

4-June-07 P1901_PRO_016_r0

Submission page 125 UPA-OPERA

- Number of Hops – 4 bits. For a Head End, the Number of Hops is equal to 0. For a TDR, the Number of Hops is equal to the Number of Hops read in Access Token from its Master + 1. In a CPE, this field is not used. When this field is set to 31 means that there are 32 hops or more.

- Unused frame symbols (13 bits). Unused symbols in the current frame, compared to the Validity indicated in the token announce of the same transmission frame.

- MAC Address – 48 bits. The MAC address of the master the access reply token is addressed to.

Figure 48 Access Reply Token

4.4.2.9 Non-returnable data token

The Non-returnable Data Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be NON-RETURNABLE (2)

- Single Validity – 4 bits. See description in 0

- Validity – 12 bits. Same meaning as in the Data Token (See 0). Since this token is non-returnable, the validity will be fully used.

4-June-07 P1901_PRO_016_r0

Submission page 126 UPA-OPERA

- Destination Port 0 to 7 – 8x7 bits. Local Port of the intended receiver of the Data Token. If Destination Port X is not used, it shall be set to 0. At least one of the destination ports shall be different to 0.

The implementation of this type of token is optional.

5F

01234567

73

EE

E2

Type

Validity [11:8]

Validity [7:0]

Destination Port 2

Always MUST be set to 0

Single Validity

Destination Port 7

Destination Port 6

Always MUST be set to 0

preamble

Always MUST be set to 0

Always MUST be

set to 0

Always MUST be set to 0

Destination Port 3

Destination Port 1

Always MUST be set to 0

Always MUST be set to 0

Always MUST be

set to 0

Always MUST be

set to 0Always MUST be

set to 0

Always MUST be set to 0

Destination Port 4

Destination Port 5

Always MUST be

set to 0Always MUST be

set to 0

Unused Frame Symbols [7:0]

Destination Port 0Always MUST be set to 0

Always MUST be

set to 0

Unused Frame Symbols [12:8]

Figure 49 Non-returnable Data Token

4.4.2.10 Clock Token

The Clock Token has the following fields:

- Preamble – 32 bits. The preamble is equal to 0x5F73EEE2.

- Type – 4 bits. Type shall be CLOCK (3)

- Reset – 1 bit. If set to 1 all nodes reset the timers and data.

- Grid Frequency – 2 bits: 00 = 50 Hz , 01= 60Hz, 11 = Other.

- MaximumlTimerValue – 16 bits: number of cycles of a 312.5 kHz clock used by the Master to count 9

4-June-07 P1901_PRO_016_r0

Submission page 127 UPA-OPERA

mains periods.

- TimerValue - 16 bits: number of cycles in the Master to reach the end of the current main period.

- Period Counter – 16 bits: counter of main periods.

5F

01234567

73

EE

E2

Type

preamble

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0

Always MUST be set to 0Always MUST be set to 0

Reset Grid Frequency

MaximumTimerValue[15:8]

TimerValue[15:8]

TimerValue[7:0]PeriodCounter[15:8]

PeriodCounter[7:0]

Always MUST be set to 0

Always MUST be set to 0

MaximumTimerValue[7:0]

Figure 50: Clock Token

4.5 TOKEN LOSS RECOVERY

The Token uses a very robust modulation scheme that increases the possibility of correct demodulation even in very noise environment. Still, token may be lost, do not detected by the receiver node/s, due to impulsive noise. Fast detection mechanisms are therefore essential for efficient communication.

Depending on the token distribution policy implemented in the network, two possible token loss recovey policies may be possible.

The simplest one relies in the direct distribution of Data Token from HE or TDR to its CPEs.

4-June-07 P1901_PRO_016_r0

Submission page 128 UPA-OPERA

In this case, a token loss occurs when the master node transmits a frame and the intended token receiver does not detect the token or when the master does not detect the token sent by one of its slaves. In case of token loss, the master node shall detect that the token has been lost.

Using the validity associated to every transmitted token, the master node shall generate a new frame whenever the validity assigned in a token to one of its slaves expires without receiving back the token. Only HE and TDR implement this feature.

When a Token Distributor is used to share the channel, the Token Loss Recovery policy becomes more complex, but equally efficient.

There are two different modes to recover a token lost when using Distributor Tokens:

1. Master node is the only node in charged of recovering a token lost. In this mode, the node that sends the Distributor token must monitor the channel during all the validity time assigned in the token in order to detect in each moment if the channel owner transmits.

When Master transmits a Distributor Token checks that the first node on the distribution list starts transmitting. If Master does not detect the Token Announce from the expected node, it can retransmit the Distributor Token lost or a new Distributor Token. In that way, the only overhead included in this simple acknowledgement mechanism is the retransmission of the token, instead of waiting for the maximum time assigned to the first slave.

If first slave detects the Distributor Token, it starts transmitting and assigns the channel to the second destination slave. This process will be monitorized by the Master. If Master node detects the first slave assigns the channel to the next slave, it will check if the second slave starts transmitting. If Master does not detect the Token Announce from that slave, it transmits a new Distributor Token. This Distributor Token can include the slave that lost the token or can continue in the next slave on the distribution list.

Master shall repeat all this process till the last destination slave returns the channel to the Master.

Master node shall know in each moment which is the channel owner slave, when it has to start transmitting, and when it has to release the token to the next slave.

Following diagram shows the monitoring process performed by the Master in order to recover a token lost:

4-June-07 P1901_PRO_016_r0

Submission page 129 UPA-OPERA

Figure 51: Distributor Token Lost Monitoring Process

4-June-07 P1901_PRO_016_r0

Submission page 130 UPA-OPERA

DISTRIBUTORTOKEN

MASTER

Slave 1

Slave 3

Slave 4

DATATOKEN to Slave 3

Slave 2

DATA TOKENto MASTER

DATA TOKENto Slave 4

DISTRIBUTORTOKEN

Check Slave 1 starts transmitting

Check Slave 1 releases token before Validity1

Slave 4 does not start transmitting after Slave 1 transmission. Transmit new Distributor Token

Check Slave 4 releases token before Validity2

timeout

Check Slave 2 starts transmitting

Check Slave 2 returns token before Validity4

timeout

DISTRIBUTORTOKEN

Check Slave 4 starts transmitting

Token lost

DATATOKEN to Slave 2

Check Slave 3 starts transmitting

Check Slave 3 releases token before Validity3

timeout

Figure 52: Recovery Token Lost by Master node

2. Each node on the distribution list transmits in its assigned slot time if it does not receive the token from the previous node on the distribution list.

In this mode, nodes on the distribution list needs to receive the Distributor Token to know when they have to transmit. Upon the reception of a Distributor token, each node starts transmitting in their slot time if the previous node on the list does not assign to it the channel. If previous node on the list ends transmitting, it assigns the channel to the subsequent node on the list. If this token is lost, next node shall start transmitting in its slot time.

This mode can be very dangerous because if all the nodes on the distribution list lose the Distritubor token, Master node does not transmit till the end of the total channel time assigned in that token.

From the other hand, this mode can be very interesting in a scenario with no visibility between slave nodes. In that case, slave nodes cannot assign the channel to the next node on the list because they have no direct visibility. This functionality reduces the overhead due to the Master does not transmit to assign the channel to the next node.

4-June-07 P1901_PRO_016_r0

Submission page 131 UPA-OPERA

Figure 53: Recovery Token Lost by each node

The node that sends a Distributor Token selects the token loss recovery mode indicating the selected option in the token.

4.6 MAC PARAMETERS SPECIFICATION

INTER FRAME SPACE 1 189 µs Time distance between the end of a Distributor Frame and the beginning of the transmission of the first node of the distribution list. See 4.3.1.

INTER FRAME SPACE 2 126 µs Time distance between the end of a Data Frame and the beginning of the transmission of the next node on the distribution list. See 4.3.1.

Table 12 contains the values for the MAC parameters.

4-June-07 P1901_PRO_016_r0

Submission page 132 UPA-OPERA

Parameter Value Description

Number of channel estimation symbols per frame

16 See 4.3.4

Maximum number of simultaneous polling users

32 Maximum number of users that can be polled with one single polling frame. See 4.3.5 and 4.3.6

Offset poll windows 61.2 us See 4.3.5 and 4.3.6

Size poll window 81.2 us See 4.3.5 and 4.3.6

MIN_TA_VALIDITY 1 Symbol See 4.4.1

MAX_TA_VALIDITY 240 Symbols See 4.4.1

MIN_TOKEN_VALIDITY 16 symbols See 0

MAX_TOKEN_VALIDITY 4095 symbols See 0

BACKOFF_SLOT_TIME 35.625 us See 4.3.5 and 4.3.6

Backoff maximum number of slots 16 See 4.3.5 and 4.3.6

MAX_ACTIVE_POLL_INTERVAL

2 seconds See 4.2

MAX_CSMA_TOKEN_PERIOD 0.5 seconds See 4.4.2.6

MAX_ALIVE_TOKENS 100 tokens See 4.2

MAX_ALIVE_POLL_INTERVAL 5 seconds See 4.2

MAX_ACCESS_INTERVAL 5 seconds See 4.2

4-June-07 P1901_PRO_016_r0

Submission page 133 UPA-OPERA

Channel Estimation Maximum Period 10 seconds Channel Estimation Frame should be sent at least every Channel Estimation Maximum Period.

ACCEPTATION_TO 5 seconds See 4.3.9

INTER FRAME SPACE 1 189 µs Time distance between the end of a Distributor Frame and the beginning of the transmission of the first node of the distribution list. See 4.3.1.

INTER FRAME SPACE 2 126 µs Time distance between the end of a Data Frame and the beginning of the transmission of the next node on the distribution list. See 4.3.1.

Table 12 MAC parameter specification

4.7 MAC service specification (MAC SAP)

4.7.1 MAC service primitives

Following table shows MAC-DATA, MAC-ACK and MAC-MNT primitives:

Primitive Type

4-June-07 P1901_PRO_016_r0

Submission page 134 UPA-OPERA

MAC-DATA.req Request MAC-DATA.cnf Confirm MAC-DATA.ind Indication MAC-ACK.req Request MAC-ACK.cnf Confirm MAC-ACK.ind Indication MAC-MNT-TOKEN.req Request MAC-MNT-TOKEN.ind Indicate MAC-MNT-TOKEN.cnf Confirm MAC-MNT-RESOURCES.req Request MAC-MNT-RESOURCES.ind Indication MAC-MNT-RESOURCES.cnf Confirm MAC-MNT-CHANEST-FRAME.req Request MAC-MNT-CHANEST-REQ.req Request MAC-MNT-CHANEST-REQ.ind Indication MAC-MNT-NHOPS.req Request MAC-MNT-NHOPS.cnf Confirm MAC-MNT-CHANGE.req Request MAC-MNT-CHANGE.cnf Confirm MAC-MNT-TXSYMB.ind Indication MAC-MNT-CHANSTATS.req Request MAC-MNT-CHANSTATS.cnf Confirm MAC-MNT-NEWMID.ind Indication PHY-MNT-LINK-STATUS.req Request PHY-MNT-LINK-STATUS.cnf Confirm

Table 13 MAC sevice primitives

4.7.2 MAC-DATA.req

4.7.2.1 Function

This primitive requests a transfer of a LPDU from a local LLC layer entity.

4.7.2.2 Semantics of the service primitive

MAC-DATA.req(LPDU):

- LPDU: LLC Protocol Data Unit (MSDU)

4-June-07 P1901_PRO_016_r0

Submission page 135 UPA-OPERA

4.7.2.3 When generated

The primitive is generated by the LLC layer entity when a LPDU is to be transferred.

4.7.2.4 Effect of receipt

The MAC layer entity starts the sending of the LPDU.

4.7.3 MAC-DATA.cnf

4.7.3.1 Function

This primitive has local significance and provides the LLC layer with status information (sending finished) of the corresponding preceeding PHY-DATA.req primitive.

4.7.3.2 Semantics of the service primitive

This primitive has no parameters.

4.7.3.3 When generated

The primitive is passed from the MAC layer entity to the LLC layer entity to indicate that the previous LPDU has been sent.

4.7.3.4 Effect of receipt

The LLC layer entity is aware that the MAC is available to send new MPDUs, and can issue new MAC-DATA.req primitives.

4.7.4 MAC-DATA.ind

4.7.4.1 Function

This primitive defines the transfer of a LPDU from the MAC layer entity to the LLC layer entity.

4.7.4.2 Semantics of the service primitive

MAC-DATA.ind(LPDU, lpdu_seq_number)

- LPDU: LLC Protocol Data Unit - lpdu_seq_number: a sequence number that uniquily identifies this LPDU.

4-June-07 P1901_PRO_016_r0

Submission page 136 UPA-OPERA

4.7.4.3 When generated

The primitive is passed from the MAC layer entity to the LLC layer entity to indicate the arrival of a LPDU.

4.7.4.4 Effect of receipt

The LLC layer entity processes the newly received LPDU.

4.7.5 MAC-ACK.req

4.7.5.1 Function

This primitive requests the acknowledgment of a previously received LPDU.

4.7.5.2 Semantics of the service primitive

MAC-ACK.req(lpdu_seq_number):

- lpdu_seq_number: the sequence number of the LPDU to be acknowledged.

4.7.5.3 When generated

This primitive is generated by the LLC layer entity when a previously received LPDU is to be acknowledged.

4.7.5.4 Effect of receipt

The MAC layer entity stores the lpdu_seq_number to be acknowledged, and will send the acknowledgment in the proper subsequent MPDU.

4.7.6 MAC-ACK.cnf

4.7.6.1 Function

This primitive has local significance and provides the LLC layer with status information (acknowledgment sent) of the corresponding preceeding MAC-ACK.req primitive.

4.7.6.2 Semantics of the service primitive

This primitive has no parameters.

4-June-07 P1901_PRO_016_r0

Submission page 137 UPA-OPERA

4.7.6.3 When generated

This primitive is passed from the MAC suplayer entity to the LLC layer entity to indicate that the previously requested LPDU acknowledgment has been sent.

4.7.6.4 Effect of receipt

The LLC layer entity is aware that the previously requested LPDU acknowledgment has been sent and can issue new MAC-ACK.req primitives

4.7.7 MAC-ACK.ind

4.7.7.1 Function

This primitive indicates the LLC layer entity that an LPDU acknowledgment has been received.

4.7.7.2 Semantics of the service primitive

MAC-ACK.ind(lpdu_seq_number):

- lpdu_seq_number: the sequence number of the acknowledged LPDU.

4.7.7.3 When generated

This primitive is passed from the MAC layer entity to the LLC layer entity to indicate that an LPDU acknowledgment has been received.

4.7.7.4 Effect of receipt

The LLC marks the corresponding LPDU as correctly acknowledged by the peer LLC entity.

4.7.8 MAC-MNT-TOKEN.req

4.7.8.1 Function

This primitive requests the sending of a token.

4.7.8.2 Semantics of the service primitive

MAC-MNT-TOKEN.req(token):

- token (see 4.4.2): MAC delimiter: Distributor token, Data token, Silence token, Access Token, Access Reply token, Polling token, TDR Polling token, Non-returnable Data token, CSMA token, Clock token

4-June-07 P1901_PRO_016_r0

Submission page 138 UPA-OPERA

4.7.8.3 When generated

This primitive is generated by the Management layer to send the token to other nodes, or to send special tokens. This primitive is used to schedule the access to the channel.

4.7.8.4 Effect of receipt

The MAC layer sends the requested token inside the current MPDU.

4.7.9 MAC-MNT-TOKEN.ind

4.7.9.1 Function

This primitive indicates the reception of a token, and defines the transfer of the information received in the token to the Management layer.

4.7.9.2 Semantics of the service primitive

MAC-MNT-TOKEN.ind(token):

- token (see 4.4.2): MAC delimiter: Distributor token, Data token, Silence token, Access Token, Access Reply token, Polling token, TDR Polling token, Non-returnable Data token, CSMA token, Clock token

4.7.9.3 When generated

This primitive is generated by the MAC layer to indicate the reception of a token and provides the corresponding information used by the Management layer entity in protocols such as Access Protocol or QoS.

4.7.9.4 Effect of receipt

Depending on the token parameter, the Management layer entity may perform different actions (see sections 4, 8, 9 and 11).

4.7.10 MAC-MNT-TOKEN.cnf

4.7.10.1 Function

This primitive is generated by the MAC layer to inform about the result of the MAC-MNT-TOKEN.req primitive. That is, if the required token has been successfully sent.

4.7.10.2 Semantics of the service primitive

MAC-MNT-TOKEN.cnf (token, result):

4-June-07 P1901_PRO_016_r0

Submission page 139 UPA-OPERA

- token: Requested token (see 4.4.2). Distributor token, Data token, Silence token, Access token, Access Reply token, Polling token, TDR Polling token, Non-returnable Data token, CSMA token, Clock token

- result: [SUCCESS|FAIL]. FAIL can be produced if the nodes losses a contention after a CSMA token.

4.7.10.3 When generated

The primitive is generated by the MAC layer to confirm the result of trying to send the requested token.

4.7.10.4 Effect of receipt

The Management layer entity shall take the proper actions taking into account the result parameter (see sections 4, 8, 9, 10).

4.7.11 MAC-MNT-RESOURCES.req

4.7.11.1 Function

This primitive requests the allocation or release of local MAC resources.

4.7.11.2 Semantics of the service primitive

MAC-MNT-RESOURCES.req (MAC, type, service_class, latency, BW) :

- MAC: MAC address of the traffic source - type: type of request. [ALLOCATE|FREE] - service_class: Service class of the traffic flow - latency: latency requirement of the flow - BW: bandwidth requirement of the flow

4.7.11.3 When generated

The primitive is generated by the Management layer entity to allocate resources for one traffic flow, or free them.

4.7.11.4 Effect of receipt

If there are enough resources, they are allocated. The primitive MAC-MNT-RESOURCES.conf indicates the status of this allocation.

4.7.12 MAC-MNT-RESOURCES.ind

4.7.12.1 Function

This primitive indicates a change of the resources that a traffic flow can use.

4-June-07 P1901_PRO_016_r0

Submission page 140 UPA-OPERA

4.7.12.2 Semantics of the service primitive

MAC-MNT-RESOURCES.ind(MAC, type, prio, latency, BW):

- MAC: MAC address of the traffic source. - type: type of indication. [NO_RESOURCES|RESOURCES_CHANGE]. - service_class: service class of the traffic flow - latency: latency requirement of the flow - BW: bandwidth requirement of the flow. (BW can be lower than requested when type is

RESOURCES_CHANGE)

4.7.12.3 When generated

The primitive is passed by the MAC layer entity to the Management layer entity to indicate that the resources of a traffic flow have changed.

4.7.12.4 Effect of receipt

The Management layer is aware of the change in the resources allocated to the traffic flow, and shall take this result into account when performing the CAC protocol.

4.7.13 MAC-MNT-RESOURCES.cnf

4.7.13.1 Function

This primitive indicates the result of the previously requested allocation of local resources.

4.7.13.2 Semantics of the service primitive

MAC-MNT-RESOURCES.cnf (MAC, type, service_class, latency, BW):

- MAC: MAC address of the traffic source. - type: type of confirmation. [OK|NO_RESOURCES] - service_class: service_class of the traffic flow - latency: latency requirement of the flow - BW: bandwidth requirement of the flow. (BW can be lower than requested when type is OK).

4.7.13.3 When generated

The primitive is passed by the MAC layer entity to the Management layer entity to indicate the result of the previously requested allocation of local resources.

4.7.13.4 Effect of receipt

The Management layer is aware of the result of the previous MAC-MNT-RESOURCES.req primitive, and shall take this result into account when performing the CAC protocol.

4-June-07 P1901_PRO_016_r0

Submission page 141 UPA-OPERA

4.7.14 MAC-MNT-CHANEST-FRAME.req

4.7.14.1 Function

This primitive requests the transmission of a Channel Estimation frame to the local MAC layer entity.

4.7.14.2 Semantics of the service primitive

This primitive has no parameters.

4.7.14.3 When generated

The primitive can be generated in two situations:

- The Management layer periodically shall issue this primitive. - A MAC-MNT-CHANEST-REQ.ind primitive has been received.

4.7.14.4 Effect of receipt

The MAC layer entity shall transmit a Channel Estimation frame.

4.7.15 MAC-MNT-CHANEST-REQ.req

4.7.15.1 Function

This primitive requests the sending of a Channel Estimation frame petition to a given node.

4.7.15.2 Semantics of the service primitive

MAC-MNT-CHANEST-REQ.req (dest_MAC) :

- dest_MAC: MAC address of the node that is requested to send the Channel Estimation frame.

4.7.15.3 When generated

This primitive shall be generated by the Management layer when it considers that the tonemap used to receive transmissions from a given node may have changed.

4.7.15.4 Effect of receipt

The MAC layer entity shall fill a Data token addressed to the dest_MAC address with the Channel Estimation Frame Request set to 1.

4-June-07 P1901_PRO_016_r0

Submission page 142 UPA-OPERA

4.7.16 MAC-MNT-CHANEST-REQ.ind

4.7.16.1 Function

This primitive indicates the Management layer that a Channel Estimation frame request from a node has been received.

4.7.16.2 Semantics of the service primitive

MAC-MNT-CHANEST-REQ.ind(src_MAC):

- src_MAC: MAC address of the requester.

4.7.16.3 When generated

The primitive is generated by the MAC layer entity to indicate that a node has requested the transmission of a Channel Estimation frame.

4.7.16.4 Effect of receipt

When receiving this primitive, the Management layer entity shall decide to issue the MAC-MNT-CHANEST-FRAME.req in order to transmit the Channel Estimation frame.

4.7.17 MAC-MNT-NHOPS.req

4.7.17.1 Function

This primitive requests the MAC layer for the number of hops that the node is from a master.

4.7.17.2 Semantics of the service primitive

MAC-MNT-NHOPS.req(MAC):

- MAC: MAC address of the master

4.7.17.3 When generated

The primitive is generated when the Management layer needs to know the number of hops from a master node.

4.7.17.4 Effect of receipt

The MAC layer obtains the number of hops and passes this information to the Management layer by means of the MAC-MNT-NHOPS.cnf primitive.

4-June-07 P1901_PRO_016_r0

Submission page 143 UPA-OPERA

4.7.18 MAC-MNT-NHOPS.cnf

4.7.18.1 Function

This primitive indicates the result of the previously requested number of hops.

4.7.18.2 Semantics of the service primitive

MAC-MNT-NHOPS.cnf(nhops):

- nhops: number of hops between local node and requested master.

4.7.18.3 When generated

The primitive is passed by the MAC layer entity to the Management layer entity to provide the number of hops.

4.7.18.4 Effect of receipt

The Management layer uses this number of hops in several management and configuration protocols.

4.7.19 MAC-MNT-CHANGE.req

4.7.19.1 Function

This primitive is used to change the role of the node (master/slave) in the PLC cell.

4.7.19.2 Semantics of the service primitive

MAC-MNT-CHANGE.req (role, new_master):

- role: [MASTER|SLAVE] - new_master: MAC address of the node that has to be considered as the new master. This parameter shall be

used when the role is SLAVE.

4.7.19.3 When generated

The primitive is issued by the Management layer entity in the framework of the Coordination tools (see ¡Error! No se encuentra el origen de la referencia.).

4.7.19.4 Effect of receipt

The MAC layer shall play the role indicated in the parameters.

4-June-07 P1901_PRO_016_r0

Submission page 144 UPA-OPERA

4.7.20 MAC-MNT-CHANGE.cnf

4.7.20.1 Function

This primitive is used to inform that the requested change has been done.

4.7.20.2 Semantics of the service primitive

This primitive has no parameters.

4.7.20.3 When generated

It is generated by the MAC layer when the role has been changed.

4.7.20.4 Effect of receipt

The Management layer receives the confirmation of the change.

4.7.21 MAC-MNT-TXSYMB.ind

4.7.21.1 Function

This primitive is used to inform the Management layer about the number of information symbols transmitted to a given node.

4.7.21.2 Semantics of the service primitive

MAC-MNT-TXSYMB.ind (num_symb, port):

- num_symb: number of symbols transmitted. - port: local transmission port

4.7.21.3 When generated

This primitive is generated by the MAC layer entity after each transmission.

4.7.21.4 Effect of receipt

Upon the reception of this primitive, the Management layer can estimate the required bandwidth by a traffic flow. It can also estimate the latencies that the traffic flow is suffering.

4-June-07 P1901_PRO_016_r0

Submission page 145 UPA-OPERA

4.7.22 MAC-MNT-CHANSTATS.req

4.7.22.1 Function

This primitive is used to gather MAC statistics about the channel state.

4.7.22.2 Semantics of the service primitive

This primitive has no parameters.

4.7.22.3 When generated

The primitive is generated by the Management layer when it needs to know the statistics to perform the functions described in sections 8, 9 and 11.

4.7.22.4 Effect of receipt

The MAC layer entity communicates the required information by means of the MAC-MNT-CHANSTATS.cnf primitive.

4.7.23 MAC-MNT-CHANSTATS.cnf

4.7.23.1 Function

This primitive is used by the MAC layer to communicate the required statistics.

4.7.23.2 Semantics of the service primitive

MAC-MNT-CHANSTATS.cnf (stats):

- stats: composed by this information: o cont_win: number of won contention attempts o cont_attemp: number of contention attempts o num_nodes: number of detected nodes o used_val_rate: vector (one value per priotity): % of the assigned validity that has been used by the

slaves o req_val_rate: vector (one value per service class): % of the available validity that has been

requested o empy_CSMA: number of unsued CSMA tokens by the slaves o CSMA_usage: % of the assigned validity in CSMA tokens that has been used by the slaves

4.7.23.3 When generated

It is generated as a response to the MAC-MNT-CHANSTATS.req primitive.

4-June-07 P1901_PRO_016_r0

Submission page 146 UPA-OPERA

4.7.23.4 Effect of receipt

The Management layer can use the information to perform the functions described in sections 8, 9 and 11.

4.7.24 MAC-MNT-NEWMID.ind

4.7.24.1 Function

This primitive is used to notify the Management layer that a different MID has been detected.

4.7.24.2 Semantics of the service primitive

MAC-MNT-NEWMID.ind (new_mid):

- new_mid: new MID detected

4.7.24.3 When generated

This primitive is generated by the MAC layer entity when it detects in the channel a MID different than the own MID.

4.7.24.4 Effect of receipt

The Management layer entity uses this information to perform the coordination among different BPL Cells.

4.7.25 MAC-MNT-LINK-STATUS.req

4.7.25.1 Function

This primitive requests to the MAC layer the link status of the communication with certain MAC.

4.7.25.2 Semantics of the service primitive

MAC-MNT-LINK-STATUS.req (MAC):

• MAC: MAC address

4.7.25.3 When generated

The primitive is generated when the Management layer needs to know the status of certain link.

4-June-07 P1901_PRO_016_r0

Submission page 147 UPA-OPERA

4.7.25.4 Effect of receipt

The current link status is obtained by the MAC layer and passed to the Management layer by means of the MAC-MNT-LINK-STATUS.req primitive.

4.7.26 MAC-MNT-LINK-STATUS.cnf

4.7.26.1 Function

This primitive indicates the link status of the communication with certain MAC.

4.7.26.2 Semantics of the service primitive

MAC-MNT-LINK-STATUS.cnf (MAC,link_status):

• MAC: MAC address • Link Status: Linked (1) or not linked (0)

4.7.26.3 When generated

The primitive is generated when the Management layer needs to know the status of certain link.

4.7.26.4 Effect of receipt

The Maganement layer gets the link status.

5 LLC

5.1 INTRODUCTION

The LLC layer receives packets (Convergence Layer PDUs) from the Convergence Layer and transmits LLC PDUs to the MAC layer. LLC tasks are:

• Segmentation and grouping of packets (CLPDUs) to create the payloads of the bursts.

• The addition of an inter-packet header to every packet or fragment of packet

• The addition of an LLC delimiter (Burst Header) to the payload of every burst payload.

• The addition of the CCMP Header at the beginning of each burst when burst is set as encrypted.

• The addition of a Message Integrity Check (MIC) to every fragment of packet or packet when burst is set as encrypted.

4-June-07 P1901_PRO_016_r0

Submission page 148 UPA-OPERA

• The addition of a Cyclic Reduncancy Check (CRC) to every fragment of packet or packet when burst is set as unencripted.

• The Packet ACK Protocol (PAP) for sequence control and selective acknowledgement of packets (CLPDUs).

5.2 BURST HEADER

There are two types of burst header, one with data and other one without data.

5.2.1 Burst header with data

The Burst Header is the LLC Delimiter which precedes every burst. It has the following fields:

- Preamble – 32 bits. Always set to 0xBDADC3.

- TMI – 4 bits. Tonemap ID. Tonemap used in the data encoding. TMI 0 is reserved for HURTO mapping.

- Version – 3 bits. Set to 0.

- Transmission Port – 7 bits. Local Port of the intended receiver of the Burst.

- APL – 14 bits. Aggregated Payload Length. Length of the payload in 32-bit words of the current burst, including RS FEC redundancy. The APL will be defined by the RS FEC redundancy used and the length of the data included in the burst.

- FEC payload – 6 bits. RS Fordward Error Correction codeword payload length in 32-bit words. The RS FEC codeword payload allowed values are indicated in Table 2. The FEC Redundancy + FEC payload has to be less or equal to 63 words.

- FEC Redundancy – 2 bits. RS Fordward Error Correction codeword redundancy length:

o 0: 8 redundancy bytes (2 words)

o 1: 12 redundancy bytes (3 words)

o 2: 16 redundancy bytes (4 words)

o 3: 20 redundancy bytes (5 words)

- BPS –14 bits. Bits Per Symbol for the current burst. It depends on the encoding used for the current transmission. Possible values range from 24 to 14592. The BPS calculation (See Equation 17) includes the RS redundancy and excludes the 4D-TCM. With the BPS and APL values nodes that are not the destination of the burst, but that may be the destination of subsequent bursts in the same frame, may calculate the burst duration in symbols in order to know when the next burst header or token is going to be placed.

- HURTO – 1 bit. It shall be set to 1 when the burst is transmitted in HURTO mode.

- Dummy Hdr– 1 bit. It shall be set to 1 if the burst is not carrying data symbols.

4-June-07 P1901_PRO_016_r0

Submission page 149 UPA-OPERA

- PAP Code Type – 1 bit. Packet ACK Protocol Codification Type. It is set to 0 when Run-Length Encoding is used and set to 1 when GroupEncoding is used.

• Crypto AES– 1 bit. Shall be set to 1 when the burst is encrypted.

- ACK Info – 1 bit. Shall be set to 1 when the burst header contains Packet ACK Protocol information (see 5.4).

- PAP Info – 55 bits. The meaning of these bits depends on PAP Code Type. See section 5.4

- PAP Port – 7 bits. Local Port over which the ACK contained in the Burst Header takes effect.

- PAP Init – 1 bit. The first packet that requires ACK (Req ACK field in the Interpacket Header) in the burst has the lowest packet id stored in transmission buffer. The receiver cannot request retransmissions of previous packets ids.

- PAP Reset – 1 bit. Reset the reception buffer.

- PAP Last Received Packet – 12 bits. Last received packet information used by Packet ACK Protocol. See section 5.4

- Service class – 8 bits. Indicates the service classes belonging to the packets contained in the burst. If bit X is equal to 1, there is at least one packet in this burst with service class X.

4-June-07 P1901_PRO_016_r0

Submission page 150 UPA-OPERA

BD

01234567

AD

C3

TMI

Version

Transmission Port [1:0]

APL [7:0]

FEC Payload

BPS [13:6]

BPS [5:0]

Reserved

PRIORITY

Reserved

Transmission Port [6:2]

APL [13:8]

FEC Redundancy

PAP Init

HURTO DUMMY Hdr ACK InfoPAP Code Type

PAP Port

PAP Last Received Packet [7:0]

preamble

Crypto AES

Always must be 0 Always must be 0

PAP Last Received Packet [11:8]

PAP Info [53:47]

PAP Info [46:39]

PAP Info [38:36]

PAP Info [54]

PAP Info [27:20]

PAP Info [19:12]

PAP Info [11:4]

PAP Info [35:28]

PAP Info [3:0]

PAP Reset

Reserved

Reserved

Figure 54 Burst Header

The Burst Header contains two independent pieces of information:

- Information about the data burst being transmitted, which destination port is Transmission Port

- Information about PAP Information, which destination port is PAP Port.

For this reason, the receiver of data burst could be different from receiver of PAP information.

For example, in the following figure:

4-June-07 P1901_PRO_016_r0

Submission page 151 UPA-OPERA

Node A Node B

Node C

Port_3

Port_1

Port_4

Port_2

Figure 55: Example of PAP destination

A burst header sent from node A could have:

- A PAP Port equal to port_3 to send PAP information about data previously received from node B in a data burst whose Burst Header contained in the Transmission Port field the value port_1.

- Transmission Port equal to port_4 to send data to node C.

For further details about ports, see section 9.1.4.

5.2.2 Burst header without data

The Burst Header without data is used when information about Packet ACK Protocol should be sent in the following situations:

- There is no data to be sent.

4-June-07 P1901_PRO_016_r0

Submission page 152 UPA-OPERA

- The Packet ACK Protocol information has too many errors if it is sent in a Burst Header because limitation of used PAP codification.

Thefollowing are the fields with significant information:

- Preamble – 32 bits. Always set to 0xBDADC3

- TMI – 4 bits. Tonemap ID. Tonemap used in the data encoding. TMI 0 is reserved for HURTO mapping.

- Version – 3 bits. Set to 0.

- Dummy Hdr– 1 bit. It shall be set to 1 if the burst is not carrying data symbols.

- PAP Code Type – 1 bit. Packet ACK Protocol Codification Type. It is set to 0 when Run-Length Encoding. And set to 1 when GroupEncoding.

- ACK Info – 1 bit. Shall be set to 1 when the burst header contains Packet ACK Protocol information. See section 5.4.

- PAP Info – 119 bits. The meaning of these bits depends on PAP Code Type. See section 5.4

- PAP Port – 7 bits. Local Port over which the ACK contained in the Burst Header takes effect.

- PAP Last Received Packet – 12 bits. Last received packet information used by Packet ACK Protocol. See section 5.4

The rest of the fields shall be ignored in reception.

4-June-07 P1901_PRO_016_r0

Submission page 153 UPA-OPERA

BD

01234567

AD

C3

TMI

Version

PAP Info [73:70]

PAP Info [60]

PAP Info [118:114]

DUMMY Hdr ACK InfoPAP Code Type

PAP Port

PAP Last Received Packet [7:0]

preamble

PAP Last Received Packet [11:8]

PAP Info [69]

PAP Info [27:20]

PAP Info [19:12]

PAP Info [11:4]

PAP Info [35:28]

PAP Info [3:0]

PAP Info [105:98]

PAP Info [113:106]

PAP Info [43:36]

PAP Info [89:82]

PAP Info [97:90]

PAP Info [68:61]

PAP Info [81:74]

PAP Info [59:52]

PAP Info [51:44]

Reserved

Figure 56: Burst Header without Data

5.3 BURST STRUCTURE

Two possible burst structures are supported. First one is used in the case of unencrypted burst, and second one is devoted to encrypted bursts.

5.3.1 Unencrypted Burst Structure

When Cripto AES bit in the Burst Header is set to 0, the burst shall be composed by a Burst Header delimiter followed by a data payload including one or several fragmented and/or completed packets. A Burst Header delimiter without any following data payload is used to send PAP information when there are no data to be sent as described in section 5.2.2.

Note: The Burst Header is a delimiter processed by the PHY layer as described in 3.3.1. It is transmitted in HURTO mode over one single symbol. The data payload is processed by the PHY layer as described in 3.3.2. The data payload may use HURTO or adaptive mapping. It can be transmitted over one or several symbols.

The Unencrypted Burst could have the following structures:

4-June-07 P1901_PRO_016_r0

Submission page 154 UPA-OPERA

HEADER

FirstINTER-

PACKETHEADER

CompletedPACKET

CRC WORD

N-INTER-

PACKETHEADER

CRC WORD

64 bits 32 bits 64 bits 32 bits

PA

DD

ING

CompletedPACKET

Burst header symbol M data symbols

HEADER

FirstINTER-

PACKETHEADER

FragmentedPACKET

CRC WORD

64 bits 32 bits

HEADER

FirstINTER-

PACKETHEADER

Fragmented or Completed

PACKET

CRC WORD

N-INTER-

PACKETHEADER

CRC WORD

64 bits 32 bits 64 bits 32 bits

PA

DD

ING

Fragmented or Completed

PACKET…

SecondINTER-

PACKETHEADER

CompletedPACKET

CRC WORD

32 bits64 bitsP

AD

DIN

G

PA

DD

ING

PA

DD

ING

PA

DD

ING

Figure 57 Unencrypted Burst examples

For more information about the Burst Header see 5.2.

Each burst can contain more than one CLPDU. For more information about the CLPDU format see 6.2.

The length of a burst is equal to a number of data symbols. The maximum length of a burst is 30 OFDM symbols, excluding the burst header. The maximum capacity of the burst in 32-bit words depends on the bit-loading table and the number of data symbols.

When one packet has to be divided into fragments, each fragment length must be multiple of 256 bytes, except the last fragment. No 32-bit words are added as padding in the last fragment to obtain 256 bytes. If one packet has length equal to X with X = Y * 256 + Z bytes, the packet could be sent in up to (Y+1) different bursts using fragmentation. If one packet has length equal to X bytes with X less than 256 bytes, this packet is sent with X bytes plus the needed padding to align it to 32-bit words. In any case, the only added padding is to be aligned to 32-bit words.

The inter-packet header is used for disassembling bursts in reception. An inter-packet header shall always precede each packet or fragment of a packet.

At the end of each fragment or packet, a 32-bits CRC of the preceding fragment or packet (excluding inter-packet header) shall be sent.

4-June-07 P1901_PRO_016_r0

Submission page 155 UPA-OPERA

Packet fragments shall only appear at the beginning or the end of the burst. Once a fragment of a packet is sent in a burst, the rest of the packet shall be sent before any other packet to the same Local Port (regardless of service class).

Packets with the same destination port and same service class shall be transmitted in order. Within the same destination port, packets are transmitted according to their service class, with highest service class packets first (see 8.2).

The inter-packet header has the following structure:

Octet

1

Part of Packet

0123457 6

2

3

Version

Length [5:0]

4

Unfinished Last Packet ACK Req Packet Id [11:8]

Length [8:6]

Padding Last Word

Packet Id [7:0]

CRC – 16 bits

5

6

Fragment Number

5D

7

8

Reserved

Figure 58 Inter-packet header

- Preamble – 8 bits. Set to 0x5D

- Part of Packet – 1 bit. The first fragment in the burst is part of a previous packet. This field shall only be checked by the receiver in the first inter-packet header.

- Unfinished – 1 bit. The last fragment in this burst is unfinished. To be set to one in the last inter-packet header if it is not a complete packet.

- Last Packet – 1 bit. This is the last fragment or packet inside this burst.

- ACK Req – 1 bit. The transmitter is waiting an ACK about this packet to free it. When it is set to 0, the transmitter frees this packet when this packet is sent and the receiver can not request retransmissions about it.

- Packet Id – 12 bits. Unique identification of each packet.

- Version – 2 bits. Version is set to 0.

- Fragment number – 3 bits. Each packet could be divided into 6 fragments. This is the identification of each fragment: from 0 to 5.

- Length – 9 bits. Length of the packet or fragment in words.

4-June-07 P1901_PRO_016_r0

Submission page 156 UPA-OPERA

- Padding Last Word – 2 bits. Number of padding bytes of the last word of the packet or fragment of a packet.

- CRC – 16 bits. 16 bits CRC of the preceding 48-bits.

5.3.2 Encrypted Burst Structure

When Cripto AES bit in the Burst Header is set to 1, the burst shall be composed by a Burst Header delimiter followed by a CCMP Header of 64 bits length whose composition and fields are described in section 10.1. After the CCMP Header, data payload including one or several fragmented and/or completed packets is added to the burst. Each packet fragment or packet includes a Message Integrity Check (MIC) to preserve the integrity of each unit as described in section 10.1.

The Encrypted Burst could have the following structures:

HEADER

FirstINTER-

PACKETHEADER

CompletedPACKET

MIC

N- INTER-

PACKETHEADER

MIC

64 bits 32 bits 64 bits 32 bits

PA

DD

ING

CompletedPACKET

Burst header symbol M data symbols

HEADERCCMP Header

FragmentedPACKET

MIC

64 bits 32 bits

HEADER

FirstINTER-

PACKETHEADER

Fragmented or

CompletedPACKET

MIC

N- INTER-

PACKETHEADER

MIC

64 bits 32 bits 64 bits 32 bits

PA

DD

INGFragmented

or CompletedPACKET

SecondINTER-

PACKETHEADER

CompletedPACKET

MIC

32 bits64 bits

PA

DD

ING

PA

DD

ING

PA

DD

ING

PA

DD

ING

CCMP Header

64 bits

FirstINTER-

PACKETHEADER

64 bits

CCMP Header

64 bits

Figure 59 Encrypted Burst examples

Each MIC is calculated over the Burst Header, CCMP Header, its correspondent Interpacket Header, the packet or fragment of packet itself and the padding, but Burst Header and CCMP Header are sent only once at the beginning of the burst. More information about algorithms and field composition is given in section 10.1.

Restrictions and rules regarding packet fragmentation in unencrypted burst remains the same for encrypted bursts.

4-June-07 P1901_PRO_016_r0

Submission page 157 UPA-OPERA

5.4 Packet ACK Protocol

The Packet ACK Protocol has the following functions:

1) Control of sequence of received packets in the receiver

2) Acknowledge of correct received packets and request of retransmission of no received or incorrect packets

Each packet can be sent in one of the following modes:

a) No ACK mode: The receiver cannot request any retransmission of this packet. The packet id is only used to reassembling fragments of one packet. The Req ACK bit in inter-packet header is set to 0 in this case.

b) ACK mode: The receiver can do a sequence control, reassembling fragments of one packet and request retransmissions. The receiver is the responsible for sending ACKs to the transmitter about the receive packet. The Req ACK bit in inter-packet header is set to 1 in this case.

The Packet ACK Protocol (PAP) uses fields located in the Burst Header or in the inter-packet header to perform the ACK algorithm:

• ACK Info - 1 bit. Active when the Burst Header contains PAP information.

• PAP Port – 7 bits: Local port of this PAP information

• PAP Last Received Packet – 12 bits: Packet ID of last Received Packet . Used to decode PAP Information.

• PAP Code Type – 1 bit: Packet ACK Protocol Codification Type. It is set to 0 when performing Run-Length Encoding and set to 1 when performing Group Encoding.

• PAP Info – 119 bits in case of Burst Header without data. And 55 bits in case of Burst Header with data. . The meaning of these bits depends on PAP Code Type as explained below.

• PAP Init – 1 bit. The receiver should move the reception buffer in order to have as first packet identification the first ACK Req packet identification from this burst.

• Packet Id – 12 bits: Unique identification of each packet.

• Fragment number – 3 bits: Each packet could be divided into 6 fragments. This is the identification of each fragment: from 0 to 5.

• ACK Req – 1 bit. The transmitter is waiting an ACK about this packet to free it. When it is set to 0, the transmitter frees this packet when this packet is sent and the receiver can not request retransmissions about it.

In case of ACK Req packets are transmitted, the receiver shall inform the transmitter about how the packets were received. Since the packet windows size is 2048 packets, 2048 bits shall be sent back to the transmitter so that it can free the correctly received packets and retransmit the packets that have been received incorrectly or not received. The feedback information shall be coded to fit in the allocated space. There are two types of encoding:

4-June-07 P1901_PRO_016_r0

Submission page 158 UPA-OPERA

- Group Encoding (see 5.4.2)

- Run-Length Encoding (see 5.4.3)

The PAP codification could have some errors due to limited space left in the Burst Header. An error in PAP codification consists on requesting retransmission of a correct received packet. Errors in the PAP codification that acknowledge a not received packet or an incorrect received packet are forbidden.

5.4.1 Transmission window management

Packets can be transmitted without receiving acks while there are free positions in the transmission window. An occupied position in the transmission window is a sent packet whose ack has not been received. If all the positions in the transmission window are occupied, a timer (ACK_TIMER) shall be started. If no ack is received before the timer expires, the packets inside the transmission window shall be sent again. After MAX_RTX timeouts, the window shall be cleared (packets removed from the transmission memory) and the next burst that will be sent to the same destination shall have the PAP Init bit set to 1.

5.4.2 Packet ACK Protocol: Group Encoding

When using Group Encoding, the status of the received packets is coded in a compressed format. Status is not expressed by individual packets but by groups of packets.

Groups shall be all the same length, and shall be formed starting from the most recently received packet id backwards to the oldest id.

The PAP information depends on the PAP Code Type and on PAP Algorithm (PAP Info bits [1:0]):

PAP Algorithm Description

0 Algorithm A (see section 5.4.2.1)

1 Algorithm B (see section 0)

2 Algorithm C (see section 5.4.2.3)

Table 14: PAP algorithm coding

In all these algorithms, the following information is used:

4-June-07 P1901_PRO_016_r0

Submission page 159 UPA-OPERA

PAP Info Bits Parameter Description

[2] Polarity of the left-over bits The PAP Information per group is about a number of packet ids. The rest of packet ids are correctly received if “polarity of the left-over bits” is equal to 1. And incorrectly received if it is equal to 0.

[8:3] Compression Ratio Number of packets represented by each bit

Table 15: PAP algorithm information

The difference between Algorithm A, B and C is that B and C needs extra information.

In case of Burst with data, the bits in Burst Header are used depending on the chosen algorithm:

- Algorithm A, the bits from [54:9] are used to describe the status of each group (Group Status) - Algorithm B and C:

o Bits from [19:9] are used for parameter “offset”. o Bits from [54:20] are used to describe the status of each group (Group Status)

In case of Burst without data, the bits in Burst Header are used depending on the chosen algorithm:

- Algorithm A, the bits from [118:9] are used to describe the status of each group - Algorithm B and C:

o Bits from [19:9] are used for parameter “offset”. o Bits from [118:20] are used to describe the status of each group (Group Status)

5.4.2.1 Group Encoding: Algorithm A In this algorithm the receiver shall send 4 pieces of information to the transmitter.

1. The last correctly received packet 2. The number of packets in each group (compression ratio) 3. The polarity of the left-over bits (1 shall mean received correctly/ 0 shall mean received incorrectly) 4. The PAP coded bit: 46 bits in Burst Header with data or 111 bits in Burst Header without data.

With this information the transmitter shall be able to reconstruct the receiver window and retransmit or free-up packets appropriately. The PAP informatioin decoder (transmitter) in order to reconstruct the status of the packets sent previously to the last correctly received shall take the first bit of the coded bits and replicate it a number of times, (given by the

4-June-07 P1901_PRO_016_r0

Submission page 160 UPA-OPERA

compression ratio), until completing the window (2048 bits). The group porder goes from the most recently received to least recently received (see Figure 60)

Last correctly received packet

ok

1

Compression ratio

PAP Coded Bits [0]

Compression ratio

PAP Coded Bits [1]

2048

Compression ratio

PAP Coded

Bits [last bit]

Polarity of lef-over bits

Figure 60: Packet ACK Protocol: Algorithm A

5.4.2.2 Packet ACK Protocol: Algorithm B This algorithm is similar to the algorithm A but one extra piece of information shall be sent:

• An offset that shall indicate where the next transition (status change) after the last correctly received packet (not including the offset itself) occurs.

In this algorithm, the status of the groups is described by 35 bits in Burst Header with data or 99 bits in Burst Header without data. With this information the PAP decoder (transmitter) shall take the previous packet to the last correctly received packet, and count backwards until the offset is reached and. It shall fill these spacespositions with either ones or zeros (depending on the polarity bit). After this, the decoding of the algorithm B shall be identical of that ofto the algorithm A. The process is described in the following figure:

Last correctly received packet

ok

1

Compression ratio

PAP Coded Bits [0]

Compression ratio

PAP Coded Bits [1]

2048

Compression ratio

PAP Coded

Bits [last bit]

Polarity of lef-over bits

Offset

NOT PAP

Coded Bits [0]

Figure 61: Packet ACK Protocol: Algorithm B

4-June-07 P1901_PRO_016_r0

Submission page 161 UPA-OPERA

5.4.2.3 Grouping Encoding: Algorithm C This algorithm is a variation of the algorithm B. The receiver shall send the same amount of data than in algorithm B but the transmitter shall decode it in a different way. The PAP decoder (transmitter) shall take the information and assume that from the starting point (this is the last correctly received packet) to the offsets, the packets were incorrectly received. And from the offset, it shall start the decoding in the same way as in algorithms A and B.

Last correctly received packet

ok

1

Compression ratio

PAP Coded Bits [0]

Compression ratio

PAP Coded Bits [1]

2048

Compression ratio

PAP Coded

Bits [last bit]

Polarity of lef-over bits

Offset

Incorrect

Figure 62: Packet ACK Protocol: Algorithm C

5.4.3 Packet ACK Protocol: Run-Length Encoding

When using Run-Length encoding the status of the received packets is compressed and transmitted by groups. But differently from Group Encoding because the length of each groups is variable.

Instead of transmitting the status of each group, which is transmitted is the number of packets in each group (group length).Groupboundaries are marked by the status of the received packets. If one group represents packets that have been received correctly, the next group represents packets that have been received incorrectly or not received.

The number of bits that inidcates the length of each group is variable and shall be chosen so that the number of packets whose status is reported is maximized.

In case of Run-Length Encoding, the PAP information is divided in the following fields:

PAP Info Bits Parameter Description

[0] Status of last received packet (0) If last received packet

is incorrect (1) If last received packet

4-June-07 P1901_PRO_016_r0

Submission page 162 UPA-OPERA

is correct

[4:1] Length width Number of bits used to express about the length of each group. The allowed values are from 1 to 11. The value 0 means that all packets are incorrect.

[54:5] (Burst Header)

[118:5] (Burst Header without Data)

Group lengths This field is divided in subfields of Length width bits. Each of the subfields express the number of packets belonging to each group

It is possible to have a Length width not big enough to express the length of one or more groups, this is, length > 2(Length width) – 1. In such case, the length of the group shall be expressed with the maximum value, 2(Length width) – 1. The following group shall be expressed with length 0, and the group after it with the remainder, length mod (2(Length

width) – 1).

When Length width is equal to 0 it means that all packets are incorrectly received or not received.

Length width Number of Group Lengths in Burst Burst Header in a Burst with Data

Number of Group Lengths in Burst Burst Header in a

Burst without Data

Length of group of last received packet

1 50 114 Group Lengths [0]

2 25 57 Group Lengths [1:0]

3 16 38 Group Lengths [2:0]

4 12 28 Group Lengths [3:0]

5 10 22 Group Lengths [4:0]

6 8 19 Group Lengths [5:0]

7 7 16 Group Lengths [6:0]

4-June-07 P1901_PRO_016_r0

Submission page 163 UPA-OPERA

8 6 14 Group Lengths [7:0]

9 5 12 Group Lengths [8:0]

10 5 11 Group Lengths [9:0]

11 4 10 Group Lengths [10:0]

Table 16: Run-Length encoding

See the following example with Length width equal to 11:

Last correctly received packet

Status of last received packet

2048

Group Lengths

[10:0]

NOT Status of last

received packet

Group Lengths [21:11]

Status of last received packet

Group Lengths [32:22]

NOT Status of last

received packet

Group Lengths [43:33]

Status of last

received packet

Figure 63: Run-Length encoding example

5.4.4 Transmission of PAP information

If a node has PAP information to be sent and gains access to the channel, the PAP information shall be sent inside the Burst Header. If this node cannot transmit data symbols because of the assigned validity or because there are no data to be transmitted, a Burst Header without data in the payload shall be sent. Because one node can be receiving from more than one node, it could send more than one Burst Header without data in the payload.

5.5 LLC service specification (LLC SAP)

5.5.1 LLC service primitives

Following table shows LLC DATA and MNT primitives:

4-June-07 P1901_PRO_016_r0

Submission page 164 UPA-OPERA

Primitive Type

LLC-DATA.req Request LLC-DATA.cnf Confirm LLC-DATA.ind Indication LLC-MNT-ACKMODE.req Request

Table 17 LLC service primitives

5.5.2 LLC-DATA.req

5.5.2.1 Function

This primitive requests a transfer of a Convergence layer PDU from a local Convergence layer entity.

5.5.2.2 Semantics of the service primitive

LLC-DATA.req (CPDU):

- CPDU: Convergence layer Protocol Data Unit

5.5.2.3 When generated

This primitive is generated by the Convergence layer entity when a CPDU is to be transferred.

5.5.2.4 Effect of receipt

The LLC layer entity starts the sending of the CPDU.

5.5.3 LLC-DATA.cnf

5.5.3.1 Function

This primitive has local significance and provides the Convergence layer with status information (sending finished) of the corresponding preceeding LLC-DATA.req primitive.

5.5.3.2 Semantics of the service primitive

This primitive has no parameters.

4-June-07 P1901_PRO_016_r0

Submission page 165 UPA-OPERA

5.5.3.3 When generated

The primitive is passed from the LLC layer entity to the Convergence layer entity to indicate that the previous CPDU has been sent.

5.5.3.4 Effect of receipt

The Convergence layer entity is aware that the LLC is available to send new CPDUs, and can issue new LLC-DATA.req primitives.

5.5.4 LLC-DATA.ind

5.5.4.1 Function

This primitive defines the transfer of a CPDU from the LLC layer entity to the Convergence layer entity.

5.5.4.2 Semantics of the service primitive

LLC-DATA.ind (CPDU):

- CPDU: Convergence layer Protocol Data Unit

5.5.4.3 When generated

The primitive is passed from the LLC layer entity to the Convergence layer entity to indicate the arrival of a CPDU.

5.5.4.4 Effect of receipt

The Convergence layer entity processes the newly received CPDU.

5.5.5 LLC-MNT-ACKMODE.req

5.5.5.1 Function

This primitive requests the use or not of LLC ACKs for data transmission.

5.5.5.2 Semantics of the service primitive

LLC-MNT-ACKMODE.req (ack_mode, port) :

- ack_mode = [yes|no] - port: local transmission port to remote peer node

4-June-07 P1901_PRO_016_r0

Submission page 166 UPA-OPERA

5.5.5.3 When generated

The primitive is generated by the Management layer to enable or disable the use of LLC ACKs to transmit data to a specified port.

5.5.5.4 Effect of receipt

The LLC layer will configure the port accordingly by means of ACK or no ACK transmission.

6 CONVERGENCE LAYER

6.1 OVERVIEW

This section describes the mechanisms that are used to encapsulate packets coming from external interfaces before passing them to the LLC. Some modifications are made to the Ethernet packet from the external interfaces. So the main task of the Convergence layer is Ethernet packet formatting.

6.2 PACKET FORMAT

The IEEE 1901 Packet Format is derived from the IEEE 802.3 frame format without the following fields:

- Preamble (PRE) - 7 bytes. The PRE is an alternating pattern of ones and zeros that tells receiving stations that a frame is coming, and that provides a means to synchronize the frame-reception portions of receiving physical layers with the incoming bit stream.

- Start-of-frame delimiter (SFD) - 1 byte. The SOF is an alternating pattern of ones and zeros, ending with two consecutive 1-bits indicating that the next bit is the left-most bit in the left-most byte of the destination address.

Additional fields are added to support BPL broadcast of packets and OVLANs, as explained below

See the following figure to understand the differences:

PRE DA SA TPID TCI Type/length DataSFD

IEEE Std 802.3 Packet Format

DA SA TPID TCI Type/length Data

IEEE 1901 Packet Format

EXT PB OVLAN Word PLW

4-June-07 P1901_PRO_016_r0

Submission page 167 UPA-OPERA

Figure 64 Packet format

The Packet Format has the following fields:

- EXT – 16 bits. Reserved for extensions

- PB – 48 bits. Previous Bridge ID

- OVLAN – 32 bits with the following information:

o PCF – 1 bit. Pre-classified Packet

o PCP – 3 bit. Pre-classified Packet Priority

o OVLANV - 1 bit.Valid OVLAN

o OVLANID - 12 bits. OVLAN Identifier

- DA – 48 bits. Destination MAC Address. The DA field identifies which station(s) should receive the frame.

- SA – 48 bits. Source MAC Address. The SA identifies the sending station.

- TPID – 16 bits. Optional field. Defined value of 8100 in hex. When a frame has the EtherType equal to 8100, this frame carries the tag IEEE 802.1Q/802.1p, otherwise it will be filled with 0x0000.

- TCI – 16 bits. Optional field. VLAN Tag Control Information field including user priority, Canonical format indicator and VLAN ID. This field is always present, even if the TPID is not 0x8100.

- Len – 16 bits. IEEE Std 802.3-style Length/Type Field

- Data – From 42 to 1500 bytes. The Data Payload of this packet.

- PLW – From 0 to 3 bytes. Because the packet has to be 32 bit aligned, there are from 0 to 3 bytes of no valid data at the end of this packet. This field is called Padding Last Word.

The incoming IEEE std 802.3 packet may have TCI field or not, but the TCI field is always present in the IEEE 1901 packet format.

6.2.1 Maximum and Minimum Packet length

The maximum length of one packet is equal to 1536 octets.

The minimum length of one packet is equal to 76 octets.

4-June-07 P1901_PRO_016_r0

Submission page 168 UPA-OPERA

6.2.2 OVLAN Fields

OVLAN fields are intended for OVLAN The OVLAN is a sort of Virtual LAN (VLAN), which functions independtly of IEEE 802.1Q. Jointly with IEEE 802.1Q functionality it provides a two-layer Virtual LAN functionality between BPL nodes. OVLAN functionality is described in Clause 7.4).

The OVLAN fields are the following:

- OVLANV - 1 bit. Valid OVLAN

- OVLANID - 12 bits. OVLAN Identifier

The OVLAN fields have the following meaning:

- When OVLANV is equal to 0, the OVLANID is not used and the packet is not carrying OVLAN information.

- When OVLANV is equal to 1, the OVLANID is equal to the tag, and the tag is used with the same sense as in IEEE 802.1Q. The only difference is the following:

o The tag equal to 0 is a possible tag

o The tag equal to 0xFFF is a tag that must be accepted by all the filters.

As in IEEE 802.1Q where the TCI has priority information, the OVLAN word has two fields to know the priority of this packet:

- PCF: Pre-classified Packet

- PCP: Pre-classified Packet Priority

If PCF is set to 1, the priority of this packet is equal to PCP value. The 802.1p or any other rule is not applied to decide the priority. Priority assignment is described in clause 8.

In the case of nodes that do not perform OVLAN filtering, the OVLAN field will not be modified if the packet was received through a BPL interface. If the packet was received through other interfaces, the node will add the OVLAN fields with OVLANV = 1b0 and PCF = 1b0.

6.2.3 BPL service class

The OVLAN word has two fields that store the poweline service class of this packet. BPL service class is used in parallel to IEEE 802.1Q priority. The fields are:

- PCF: Pre-classified Packet

- PCP: Pre-classified Packet Service class

4-June-07 P1901_PRO_016_r0

Submission page 169 UPA-OPERA

If PCF is set to 1, this indicates that PCP contains a valid BPL service class.

For packets received through a non-BPL interface, PCF = 0. For packets received through a BPL interface PCF must be left unchanged.

BPL service class can be calculated then by the QoS function (see 8.2).

6.2.4 PB Field

This field are used to avoid loops with broadcast packets.

Broadcast packets can be sent in two ways through the BPL network:

- Using the broadcast port. The broadcast packet is sent using the broadcast port and all nodes that have negotiated ports with the sender will receive it.

- Using unicast ports. The broadcast packet is sent once per each negotiated port, except the port where it was received in the case it was a BPL port.

In the case when a broadcast packet is sent using the broadcast port, these fields are used to avoid loops. In the other case, they are not necessary. In any case, they shall always be present in all packets.

The meaning of the field (defined in 6.2) is the following:

- PB: Previous Bridge ID. It shall contain the MAC address of the previous node that has transmitted this packet.

When a packet enters the BPL network Previous Bridge ID shall be set to 0.

In any retransmission, the Previous Bridge ID shall be filled with the ID of the last unit that transmitted the packet.

When receiving a packet it shall be discarded when its Previous Bridge ID is equal to the MAC address of the node that has received the packet, because this indicates that the node has already received the packet before..

6.2.5 Octet alignment

The bytes from IEEE Std 802.3 are stored in 32 bits words in the following way:

Byte 3

Byte 2

Byte 1

Byte 0

Figure 65 Byte order

4-June-07 P1901_PRO_016_r0

Submission page 170 UPA-OPERA

From IEEE 802.3 interface, the bytes are received in the following order: byte0, byte1, byte2 and byte3.

And from this 32 bits word, the bytes are transmitted into the LLC interface in the following order: byte3, byte2, byte1, byte0. The packets are transmitted to the LLC in the way shown in Figure 66, starting from the top, since the LLC works with bytes.

If we define N as the number of bytes in Data Payload plus the number of bytes of the Length/Type Field, then we can write N = 4*m + p; with m an integer value and p equal to 0, 1, 2 or 3. The number of bytes in PLW is equal to 0 if p is equal to 0 or 4-p in the other cases, because the packet is 32 bit aligned.

4-June-07 P1901_PRO_016_r0

Submission page 171 UPA-OPERA

Octet

13

Data (from byte [6] to [4*m – 3])

PLW (0 bytes if p is equal to 0 OR (4-p) bytes if p is different from 0)

0123457 6

14

15

16

Reserved

PCP PCFReserved

OVLANV OVLANID[11:8]Reserved

OVLANID[7:0]

PB[1]

PB[0]

Extensions[1]

Extensions[0]

PB[5]

PB[4]

PB[3]

PB[2]

1

2

3

4

5

6

7

8

9

10

11

12

DA[3]

DA[2]

DA[1]

DA[0]

SA[1]

SA[0]

DA[5]

DA[4]

SA[5]

SA[4]

SA[3]

SA[2]

17

18

19

20

21

22

23

24

25

26

27

28

TCI[7:0]

TCI[15:8]

29

30

TPID[7:0]

TPID[15:8]

31

32

Data[1]

Data[0]

33

34

bits

Lenght[0]

Length[1]

35

36

Last Word Data (from byte [4*m-2] to [4*m+p-3])

Data[5]

Data[4]

37

38

Data[3]

Data[2]

39

40

FCS[3]

FCS[2]

FCS[1]

FCS[0]

41

42

43

44

Figure 66 Packet byte order to the LLC

6.3 CONVERGENCE LAYER SERVICE PRIMITIVES

The bridging block communicates with the convergence layer through 3 service primitives Eth.req, Eth.cnf and Eth.ind:

4-June-07 P1901_PRO_016_r0

Submission page 172 UPA-OPERA

• Eth.req (802.3/EthernetII frame, BPL local ports list, PB, OVLAN word): This primitive requests the transfer of an Ethernet frame from the local bridging block to a single peer bridging block or multiple peer bridging blocks in the case of multi-port transfer requests (see 6.3.1).

• Eth.ind (802.3/EthernetII frame, BPL local port, LB, OVLAN word, Session ID): This primitive defines the transfer of an Ethernet frame from the convergence layer to the bridging block.

• Eth.cnf: This primitive is used by the convergence layer to notify the bridging block of the results of the Eth.req primitive.

Notes:

• VLAN tag may be included in the 802.3/EthernetII frame

• The OVLAN word includes PCF, PCP, OVLANV and OVLANID

6.3.1 Multi-port transfer requests

Multi-port transfer requests correspond to Eth.req service primitives including several BPL local ports as argument. Such requests are inherent to bridging in TDRs and HEs which manage several BPL ports. The multi-port requests are solicited by standard transparent bridging actions such as:

1. Broadcast transmission: The IEEE 802.3 frame includes a Broadcast Ethernet address in its Destination Address field. The multi-port request concerns all the BPL ports managed by the bridging function except the one from which the Ethernet frame was received (if it was eventually received from a BPL port).

2. Multicast transmission: The IEEE 802.3 frame includes a Multicast Ethernet address in its Destination Address field. The multi-port request might concern a subset of the BPL ports managed by the bridging function or a single native multicast BPL port associated.

3. Bridge flooding: The bridging block could not find any association of a unicast Ethernet Destination addresses with a specific bridge port, the request is then flooded to all the bridge ports. The multi-port request concerns all the BPL ports managed by the bridging function.

6.4 BROADCAST/MULTICAST HANDLER FUNCTIONAL REQUIREMENTS

The convergence layer shall include a broadcast/multicast handler that shall perform the following functions:

1. Handling transfer of multicast management messages: Management messages can be unicast or multicast as described in section 7.4. Multicast management messages can be received from the bridging fundtion through primitives which are either single port requests or multi-port requests. Any multicast management message received through these requests shall be transferred over the broadcast port using HURTO modulation.

2. Management of multi-port transfer requests which do not carry multicast management messages: upon reception of such multi-port transfer request from the convergence layer, the block shall compute the best method for handling the transfer. If the multi-port request concerns all the local ports of the Port Solver Table or if the request includes a broadcast/multicast Ethernet Destination Address, depending on the bit-loading tables associated to each local port, the block might consider transferring the Ethernet frame over the broadcast local

4-June-07 P1901_PRO_016_r0

Submission page 173 UPA-OPERA

port using HURTO modulation. In the other cases, the multi-port request will result in several consecutive LLC service requests related to each unicast local port, or in the use of a native multicast local port.

3. Broadcasts loop back avoidance: on the reception path, upon reception of a packet over the broadcast local port (127), the module shall discard any packet which is detected as previously transmitted (that is, the MAC address contained in the PB field of the packet is equal to the MAC address of the node).

4. On the reception path, upon reception of a packet over the broadcast local port (127), the local port passed within the Eth.ind primitive shall be the one assigned to the remote node from which the request was received.

7 BRIDGING FUNCTION

7.1 General

The bridging function interconnects bridge ports. There are two types of bridge ports: BPL ports and non-BPL ports and the management port. BPL ports are the bridge ports that represent a remote PL unit and are directly mapped onto the completed entries of the Port Solver Table. Non-BPL ports are any other external ports of the unit (e.g. Ethernet, USB, WIFI,…).

The bridging function is based in standards IEEE 802.1D and IEEE 802.1Q as described below.

From a bridging standpoint, the convergence layer is seen as a set of bridge ports called “BPL ports” which are both transmission and reception unicast and native multicast ports. The bridging block of a node handles as many BPL unicast ports as there completed entries in the Port Solver Table of this node, in addition to the native multicast ports that has a valid value in such Port Solver Table. The identifier of a BPL port corresponds to the value of the local port attached to a remote node, that can be a native multicast or an unicast port. The status (open/close) and the identifier of the BPL ports are mapped onto the status and identifiers of the local ports defined in the Port Solver Table.

There is also a BPL management entity that can access all the ports in the same conditions as the higher layer entities as described in IEEE 802.1D.

*Note: The port solver table includes complete entries and incomplete entries. Complete entries correspond to local port which are associated to solved remote port and MAC addresses. Incomplete entries correspond to local ports which associated unicast remote port are still not solved via the Port Solver Protocol.A complete entry may have an additional native multicast remote port associated.

7.2 IEEE 802.1D conformance

The bridging function shall conform to:

a) IEEE Std 802.1D, with Basic Filtering Services support requirements

4-June-07 P1901_PRO_016_r0

Submission page 174 UPA-OPERA

b) IEEE Std 802.1D Management (clause 14 of IEEE 802.1D-2004) requirements

c) IEEE Std 802.1D Remote Management (clause 5.2 of IEEE 802.1D-2004) requirements

as modified by the provisions of this standard

The permanent filtering database, as defined in IEEE 802.1D-2004 clause 7.9 shall have a minimum size of 8 entries.

The dynamic filtering database, as defined in IEEE 802.1D-2004 clause 7.9 shall have a minimum size of 64 entries.

7.3 IEEE 802.1Q conformance

The bridging function shall support VLAN according to IEEE Std 802.1Q requirements for VLAN-aware bridges, as modified by the provisions of this standard.

The bridging function shall support a minimum of 32 VLANs.

7.4 OVLAN Function

7.4.1 General

The OVLAN functionality is based on IEEE 802.1Q Virtual LAN (VLAN), but does not substitute the IEEE 802.1Q functionality. Instead, if enabled, it shall work independtly of IEEE 802.1Q functionality.

OVLAN function is is aimed to:

• Avoid packets from one customer leaking into a neighbor customer (for security reasons).

• Avoid packets from one BPL sub-network (for example, an LV cell) leaking into another BPL sub-network (for security reasons and in order to avoid the problem of bridge tables filling up with unnecessary MAC addresses).

In such cases, as IEEE 802.1Q VIDs are limited to less than 4096, a large network can rapidly run out of VLANs numbers if they are used for customer isolation, OVLAN should be used, leaving IEEE 802.1Q for its traditional VLAN purposes.

The following processes are defined for OVLAN function

4-June-07 P1901_PRO_016_r0

Submission page 175 UPA-OPERA

a) Frame admittance and OVLAN assignment

b) OVLAN Ingress filtering

c) OVLAN Egress filtering

Each PL port has a list of OVLAN IDs which represent the OVLANS to which the port belongs (OVLAN_list)

7.4.2 Frame admittance and OVLAN assignment

7.4.2.1 Non PL ports

The OVLAN parameters of a non PL port are:

- OVLAN enabled / disabled - POVID (Port OVLAN identifier)

If one port is OVLAN enabled, all incoming frames are assigned an OVLAN ID which is exactly the POVID of such port.

7.4.2.2 PL PORTS

The OVLAN parameters of a pl port are:

- OVLAN enabled / disabled

- Tagged only

- POVID (Port OVLAN identifier)

All packets coming from a port are discarded if and only if:

a) The OVLAN is enabled for such port , tagged only parameter is set and the frame does not carry a valid OVLAN ID.

The OVLAN ID of a frame is assigned the value of the POVID of the port if and only if:

b) The OVLAN is enabled, tagged only parameter is not set and the frame does not carry a valid OVLAN ID.

In the rest of cases the frames are admitted unchanged.

4-June-07 P1901_PRO_016_r0

Submission page 176 UPA-OPERA

7.4.3 OVLAN Ingress filtering

If any frame coming into the bridge has a valid OVLAN identifier, OVLAN is enabled and its OVLAN identifier is not included in the OVLAN list for such port, the frame is discarded, unless the frame has FFF as identifier. It is passed otherwise.

7.4.4 OVLAN Egress filtering

If any frame going out of the bridge has a valid OVLAN identifier and this OVLAN identifier is not included the OVLAN list for such port, the frame is discarded, unless the frame has FFF as identifier. It is passed otherwise.

7.4.5 OVLAN management

If a unit has OVLAN functionality, OVLAN parameters per port (OVLAN enabled / disabled, tagged only, POVID, and OVLAN_list) shall be modifiable by a management process.

The management process shall be executable remotely.

7.5 Sending broadcast/multicast Ethernet frames

When sending a broadcast/multicast Ethernet frame or when flooding the ports of the bridge, two main ways to transmit multicast IEEE 802.3 frame con be configured.

In the first option the bridging function shall provide the list of BPL ports related to this transfer as part of the Eth.req service primitive

In the second option, the bridging function shall provide a native multicast BPL port related to this transfer as part of the Eth.req service primitive.

The bridging function shall also support management of associations of multicast groups to native ports.

The association of a multicast group to a native multicast port is done in two stages:

a) The remote nodes belonging to a multicast group are associated to the native multicast port

For this, the unit shall send Port Solver Protocol Multicast Port packets to the nodes selected to become associated to the native multicast port. The aim of such packets is to add in the Port Solver Table of each destination node that wants to join the multicast flow the selected Local native multicast Port as Second Remote Port (RP2).

4-June-07 P1901_PRO_016_r0

Submission page 177 UPA-OPERA

b) In the forwarding tables, the list of individual unicast ports associated to the multicast group is substituted by the native multicast port.

If a multicast group is associated to a native multicast port, any incorporation of a new node to such multicast group shall result in an association of such node to the native multicast port, as described in (a).

Conversely, if a node is removed from a multicast group and such multicast group is associated to a native multicast port, the node shall be removed from the associated native multicast port. This shall be done by sending a Port Solver Protocol Multicast Port carrying as local native multicast port the so called invalid port. (0xFF).

These actions (adding or removing a node from a native multicast port, and incorporation of the native multicast ports to the forwarding tables) shall be supported as a result of a management action and may, optionally, be done as a consequence of operation of group management protocols, such as IGMP or GMRP.

7.6 PB field

7.6.1 Bridging between BPL ports

When bridging between BPL ports (HE or TDR feature), the bridging function shall return within the Eth.req a PB argument equal to the ID from which the packet has been received.

7.6.2 Bridging from a non-BPL port to a BPL port

When bridging from a non BPL-port to a BPL port, the PB argument of the Eth.req shall be set to 0.

7.7 BPL service class transmission

When bridging between BPL ports , if PCF=1 within the OVLAN argument of the received Eth.ind, the PCF and PCP values (subfield of the OVLAN word argument) included in the subsequent Eth.req shall be kept unchanged.

7.8 Filtering multicast management messages from a BPL port

BPL Management messages are IEEE 802.2 SNAP encapsulated data units carried over an Ethernet frame which can be either unicast or multicast. Multicast management messages make use of one of the two following multicast addresses (referred as management multicast addresses): the STP multicast address 0x0180C2000000 (primarily used by the STP protocol but also used for some BPL management messages) or the IEEE P1901 specific multicast address: 0x01139D000000. Any Ethernet frame including a management multicast address shall be filtered by the bridging function and not retransmitted to any other port. Upon reception of management messages destined to the above two mentioned multicast addresses, the bridging function shall provide these frames to the management port.

4-June-07 P1901_PRO_016_r0

Submission page 178 UPA-OPERA

7.9 Filtering multicast management messages from the management port

BPL Multicast management messages from the management port shall only be flooded to the BPL ports (non-BPL ports excluded).

8 QOS SERVICES

8.1 INTRODUCTION

This section describes mechanisms for applying specific guarantees in terms of bandwidth, latency and reliability to some flows. It is also possible to define a policy upon congestion. Any flow requiring such guarantees must initiate a connection through a Connection Admission Control procedure using protocol described in 0.

The mechanisms described here below are designed for flows circulating from the HE to a CPE or vice versa. These mechanisms have not been designed to support QoS for flows between CPEs,

The QOS services described here below rely on the configuration of several components:

1. Service classes. (Must be declared in all the masters of a BPL cell).

2. Classifier module: this module maps flows onto service classes (preconfigured in all the nodes).

3. Congestion management (declared in all the masters).

4. Traffic specifications, published through the CAC procedure. Pre-determined traffic specifications must be declared in CPEs.

Note: A flow is a unidirectional data stream exchanged between two BPL units and carried over the same service class.

BPL network uses a shared medium and provides differentiated control of the medium to handle data transfers with QoS requirements. QoS services carry out end-to-end traffic delivery providing QoS transport on a per-user basis.

The BPL cell master node will be in charge of schedule and guarantee the QoS of the BPL cell, and must assign resources to cell nodes based on the configured bandwidth limit and the resources reservations requests made. This node shall be named QC (quality controller).

Also, there are others figures in the BPL cell which are the Flow Master Nodes (FMNs). A FMN is defined as the BPL node in charge of guarantee QoS requirement for a registered flow. This node will be the QC and also can be the BPL repeaters which will distribute the resouces given by the QC to the nodes connected to it.

4-June-07 P1901_PRO_016_r0

Submission page 179 UPA-OPERA

The FMN must receive the resource reservations requests using the CAC protocol (See section 0) and must decide if it has enough resources to assign to the incoming request or if it has to request more resources to the BPL master node.

With this mechanism, we will have a complementary tool to limit the bandwidth. This information will be interesting to known if a new traffic of a service class can be started and the requirements for that traffic and service class can be assured.

8.2 SERVICE CLASS DEFINITION

Up to eight service classes can be defined within a BPL cell. Services classes are globally defined over a BPL subcell. Four service parameters are necessary to fully describe a service class: priority, subcell_access_time, resource reservation type and service reliability.

8.2.1 Priority

Service classes are directly mapped onto priorities. A priority uniquely identifies a service class. That is why all the other service parameters are configured and mapped from this priority parameter. Priorities shall have values from 0 to 7, 0 being the lowest priority. If packets have to be dropped at the transmitter because of lack of resources, then the lower priority packets shall be dropped before the higher priority packets. When there are data of different priorities addressed to the same destination, higher priority data shall be transmitted earlier than lower priority data.

8.2.1.1 Configuration

Priority parameter is determined by the Classifier module operating at the bridging block level. The classifier analyses all the frames received from a bridge port (BPL port, non-BPL port, management port) and assigns a priority to each Ethernet frame transmitted to the convergence layer via the Eth.req primitive (see 6.3). The Classifier operates according to some predetermined and/or configurable rules (see 11.4). Any frame received from the management port shall be mapped to priority 7 (that is: service class 7).

Note: For each Eth.req primitives delivered by the bridging block, a priority is submitted as part of the OVLAN word argument (PCP bits). The PCF bit of this OVLAN word might be set to 1 meaning that the priority is to be seamlessly bridged through the intermediate nodes of the BPL cell. This priority information is summarized within the Priority field of any Burst Header and the Frame Priority field of every upstream data token.

8.2.2 Max Subcell Access Time

The Max_Subcell_Access_Time corresponds to the max duration for a flow to access the channel on the subcell level. It is a latency requirement for the scheduler to be configured within any master of a BPL cell.

Four Max_Subcell_Access_Time are defined at the master level. The minimum value of the Max_Subcell_Access_Time is used as the reference step from which the three other Max_Subcell_Access_Time are derived by multiplying by 2, 4 or 8 this reference step.

4-June-07 P1901_PRO_016_r0

Submission page 180 UPA-OPERA

8.2.2.1 Configuration

The reference step shall be configured within any master of a BPL cell. This parameter is configured using the QOS_LATENCY_STEP parameter (min 20ms, max 400ms).

Mapping a Max_Subcell_Access_Time to a priority: Such a mapping shall be declared within each master by using the QOS_LATENCY.prio+1 parameter.

8.2.3 Resource reservation type

This parameter is related to the type of claimed guarantees provided in terms of node resources and time resources.

It can take three values:

• Type Best Effort: No guarantees on the node and time resources. This type will be mapped with the non-guaranteed service classes. Resources are granted on a Best Effort basis.

• Type ABR (Available Bit-Rate): Requests ask for node and time resources for which a minimum bandwidth can be guaranteed with a peak over the minimum. The peak can be limited by the network capability or the node limit bandwidth.

• Type VBR (Variable Bit-Rate):Requests ask for node and time resources for which an average bandwidth can be guaranteed with a maximum variation around this average.

• Type CBR (Constant Bit-Rate):Requests ask for individual guarantees in terms of node and time resources. The granted node and time resources are not shared. The claimed bandwidth is guaranteed.

Note: Any class which is associated to an ABR, VBR or CBR type corresponds to a connected service requiring initiation of a Connection Admission Control Procedure. By extension, CBR, VBR or ABR flows are called connected flows unlike Best Effort flows which are non connected flows.

A maximum upstream and downstream bandwidth limitation applies to all the Best Effort and ABR flows of the same node (see 12).

CBR and VBR traffic shall be reserved for operator services such as VoIP and video streaming services (IPTV, VOD, …), and shall be out of the bandwidth limitation. To accept or deny these services, the FMN must assure that network resources will be available and mechanisms for AAA services shall be used in order to authenticate the service can be used by the node.

8.2.3.1 Configuration

Mapping a Resource Reservation Type to a priority: Such a mapping shall be declared within each master by using the QOS_PRIORSV.prio+1 parameter.

4-June-07 P1901_PRO_016_r0

Submission page 181 UPA-OPERA

8.2.4 Service reliability

This parameter defines if the ACK mode is enabled (see section 5.4) within the service class.

8.2.4.1 Configuration

Mapping Service Reliability to a priority: Such a mapping shall be declared within each master by using the QOS_PRIOACK.prio+1 parameter.

8.2.5 Example of a service class definition

The service class definition shall be the same for all nodes in the BPL cell, and must determine univocally the the relationship between priority, maximum subcell access time, resource reservation and service reliability characteristics.

This service class definition must be used by QoS to determine the priorization between flows and resources reservation in the network, and will provide criteria to allow or deny new flows or to drop existent flows to allow new flows which higher service class.

Table 18 shows an example of possible relationship between service classes, priorities, Max_Subcell_Access_Time, Service Reliability and Resource Reservation Type.

4-June-07 P1901_PRO_016_r0

Submission page 182 UPA-OPERA

Service Class

Resource reservation

Priority MaxSubcell Access Time

Service Reliability (ACK enabled)

7 Best Effort 7 240 No

6 CBR 6 30 No

5 VBR 5 60 Yes

4 VBR 4 120 Yes

3 VBR 3 120 No

2 ABR 2 120 Yes

1 Best Effort 1 240 No

0 Best Effort 0 240 No

Table 18 Definition of Service Classes: example

The definition of service classes as described in table 1 could be used to implement QoS services for applications as described in Table 19.

4-June-07 P1901_PRO_016_r0

Submission page 183 UPA-OPERA

Service Class Application Examples

7 Management messages

6 VoIP

5 Video, Games

4 Data Highprio

3 Data Highprio

2 Data Highprio

1 Data Lowprio

0 Data Lowprio

Table 19 Mapping applications to service classes: example

8.2.6 Provisioning Service Class Definitions to slaves

As detailed in 0, nodes that wish to request a resource reservation through the Connection Admission Control procedure must make a reference to the requested service class. As a matter of fact, it is necessary for the slaves to have an idea of the service class definitions. The description of the available service classes will be obtained through the Autoconfiguration process.

8.3 CONGESTION MANAGEMENT

The mission of CM is to manage the accepted connections in congested networks (due to a sudden drop in the channel quality, for example). There are two possible policies that can be configured in the system:

• Fair Congestion Management Policy (FCMP): all traffic flows are treated equally. Therefore, if the traffic scheduler cannot meet the bandwidth and latency requirements from users, it will decrease the performance of all active flows equally until new bandwidth and latency definitions can be supported.

4-June-07 P1901_PRO_016_r0

Submission page 184 UPA-OPERA

• Priority Congestion Management Policy (PCMP): lower priority traffic performance is decreased in order to guarantee higher priority traffic SLA. Therefore, access to the channel is denied to lower service types first, until SLA of higher service types can be maintained.

• “Quality Service” Congestion Management Policy (QSCMP): The congestion manager will act like as Priority Congestion Management but uses the service class and the quality session parameters to perform the scheduling and the acceptance criteria for new sessions. The sessions with higher quality session values will have more probabilities to be scheduled accomplishing its requirements when network is congested. Quality Session parameter can be also a mixture of priority and age, or an arbitrary parameter defined by the network operator.

8.3.1 Configuration

The Congestion Management can be configured using the Auto-configuration protocol. In this section, we enumerate the auto-configuration parameters that modify the behavior of the Congestion Management. For more information, see 11.

QOS_BW_POLICY = [0|1|2] configures the CM in which the QoS manages the network in the event of congestion (0 configures the CM in FCMP mode; 1 configures the CM in PCMP mode; 2 configures the CM in QSCMP mode).

8.4 CONNECTION ADMISSION CONTROL

Initiation of a Connection Admission Control (CAC) procedure is required for any connected flow. The mission of the Connection Admission Control is to ensure that the BPL network can deliver the agreed services and guarantees to new flows while maintaining the requested performance of already accepted flows.

The Connection Admission Control functionality is embedded inall the network. The CAC protocol might be used in the following two scenarios:

• Before the transmission of a connected flow, the CAC shall be used to reserve resources on the nodes in the system that collaborates in the communication of the new flow (from the node initiating the flow to the nodethat shall guarantee the flow). The CAC requests made to commit resources for a given Service Class may be new or updates from previous reservations.

• At the end of the transmission of a connected flow, resources may be released. Release of resources may be done explicitly by transmitting a CAC Stop message indicating traffic flow is not longer needed, or may be done when a timer, MAX_CAC_DRP_TO expires since the last time a Data Token with the Session ID of the traffic was received by the node.

In the CAC protocol, the exchanged parameters to verify whether or not the BPL network can guarantee the required service shall include the required bandwidth, and the maximum latency demanded by the new node.

4-June-07 P1901_PRO_016_r0

Submission page 185 UPA-OPERA

8.5 Traffic Shaping

QoS apply traffic shaping in two different ways. Each one is applied based on the service class of traffic:

• Limit bandwidth: Is applied for best-effort and ABR service classes. Is based on the credit assignation for this service classes. This credit is assigned per-user and is renewed periodically. If the credit is not used during the period time, it’s lost and can not be used in the next period.

• Guaranteed bandwidth: Is applied for VBR and CBR service classes. Traffic must be allowed prior to transmit and a reservation is made for this type of traffic using the CAC protocol. Channel time is assigned based on the resources reservation to meet bandwidth and latency requirements. Due to the explicit reservation of resources, nodes shall have mechanisms to allocate buffer space to support the incoming traffic.

8.5.1 QOS Requirements

To provide QoS requirements is needed support from MAC layer in order to identify the network usage by each node and the traffic service classes in the network. This support must be provided as MAC primitives and will be:

• Transmitted priorities by a CPE. Must be a set of bits and each bit must be mapped to a priority

• Transmitted priorities by BPL subcell/cell masters.

• Single transmission Channel time: Must be the transmission time used for individual transmissions for each node in the BPL cell.

• Transmitted data: Data transmitted since last time the token was received, so that bandwidth limitation algorithm can be reconfigured dynamically.

• Unused channel time: The percentage of network resources assigned to this node available in the network.

Other QoS facilities should be implemented in order to guarantee QoS requirements:

• BPL node shall be able to define service classes with or without MAC Level acknowledgment capabilities.

• BPL node shall be able to assign resources in a per-user and per-service basis to guarantee constant, variable or peak rate traffic requirements.

• BPL node shall be able to transmit to a subset of possible receivers nodes in order to guarantee unique channel usage per-user.

• BPL node shall configure MTU per-user in order to guarantee minimum transmission time per-user.

• BPL node should be able to avoid transmission of lower priorities to guarantee preferential treatment of higher priorities in a per-flow basis.

4-June-07 P1901_PRO_016_r0

Submission page 186 UPA-OPERA

Furthermore, there are MAC primitives to give the QoS scheduler an idea of the BPL topology. These primitives collect information in the Upstream direction. These primitives allows to compute correctly the Validity field. These parameters are:

• Maximum Number of Hops in the network

• Number of Downstream Nodes

9 LAYER MANAGEMENT

9.1 CONTROL PROTOCOLS

9.1.1 CCP (Communication Control Protocol) Description

The exchange of management messages between IEEE P1901 nodes needs a special and homogeneous structure in order to simplify implementation and clarify information exchanges between nodes. Such information will have as source and destination IEEE P1901 nodes, and will be used for internal management.

The structure of the packet that will be exchanged by two BPL nodes will follow the scheme presented in Figure 67:

Dest MAC Src MAC Payload

DS

AP

SS

AP

Data

CT

LO

UI0

Typ

e0

Leng

th

OU

I1O

UI2

Typ

e1

TP

ID

TC

I

Figure 67 Management packet

The management information will be encapsulated using SNAP as depicted in Figure 67 into a regular Ethernet Frame. Using SNAP with an assigned OUI, it is possible to create specific protocols for IEEE P1901 nodes.

Encapsulated fields will be described in the following table:

Field Length Description

DSAP 1 byte Destination Service Access Point

4-June-07 P1901_PRO_016_r0

Submission page 187 UPA-OPERA

SSAP 1 byte Source Service Access Point

CTL 1 byte Control field

OUI0 1 byte Organizationally Unique Identifier Byte 0

OUI1 1 byte Organizationally Unique Identifier Byte 1

OUI2 1 byte Organizationally Unique Identifier Byte 2

Type0 1 byte Ethertype byte 0

Type1 1 byte Ethertype byte 1

Table 20 Management packet field description

For the internal BPL protocols that IEEE P1901 stations will exchange, the described fields must have the following values:

Field Length Value

DSAP 1 byte 0xAA

SSAP 1 byte 0xAA

CTL 1 byte 0x3

OUI0 1 byte 0x00

OUI1 1 byte 0x13

OUI2 1 byte 0x9D

Type0 1 byte See Table 22

4-June-07 P1901_PRO_016_r0

Submission page 188 UPA-OPERA

Type1 1 byte See Table 22

Table 21 Management packet field values

Table 22 includes the used types and subtypes for mandatory BPL protocols. Description of each one will be provided in the following sections. In general, with Type0 a Specific protocol is set and with Type1 a message type that makes sense into the protocol is announced. In the following table, messages of each BPL protocol are described, providing information about the content of each type field for each message.

Type0 Protocol Type1 Description

0x06 Adaptive Bit-Loading Protocol 0x01 BPC

0x07 Port Solver Protocol 0x01 Access message

0x02 Anounce Message

0x03 Multicast message

0x04 Multicast ACK message

0x0b Access Protocol 0x01 Petition Status

P Sub_Type P.(1 bit) is the most significant bit of Type1.

Sub_Type (7 bits)

0 0x01 Resources Reservation Request

0 0x02 Resources Reservation Reply

0x05 Connection Admission Control Protocol

0 0x03 Resources Reservation Change

4-June-07 P1901_PRO_016_r0

Submission page 189 UPA-OPERA

0 0x04 Resources Reservation Change Confirmation.

0 0x05 Resources Reservation Dropped

0 0x06 Resources Reservation stop

0x07 Parametric Translation Table protocol

See 12.2.5

0x0a Cluster Discovery Protocol 0x01 CDP message

0x0b Automatic management of crosstalks 0x01 IDP

0x02 BNDP

0x03 BNDA

Table 22 Management packet protocol types

In some cases it is foreseen that the management information that has to be sent may not fit in one single packet. A mechanism is provided to split the information in several packets using sub-tables. The general format of those packets follows in Table 23:

Bytes Fields Length

0 Sub-table number 1 bytes

1 Number of sub-tables 1 bytes

2 Number of entries of the sub-table 1 byte

3 - 8 Sender MAC address 6 byte

4-June-07 P1901_PRO_016_r0

Submission page 190 UPA-OPERA

9 Entry size 1 byte

10 - 521 Entries 512 bytes Maximum

Table 23 Packet format

The sub-table number shall be 1 for the first packet, and the sub-tables shall be sent in order. Entries can have variable length to allow for forward compatibility. The entry size is expressed in bytes. A node receiving entries with a size bigger than what it expects shall only take the values in the entries that it knows how to interpret and shall look for the next entry taking into account the entry size received in the packet.

The final structure, including information about Bridging and VLAN, and aligned in bytes shall be transmitted through the BPL in the order presented in the following figure:

4-June-07 P1901_PRO_016_r0

Submission page 191 UPA-OPERA

Octet

13

Data from byte 2 to N

PLW

0123457 6

14

15

16Reserved

PCP PCFReserved

OVLANV OVLANID[11:8]Reserved

OVLANID[7:0]

LB[3]

LB[2]

LB[1]

LB[0]

PB[1]

PB[0]

LB[5]

LB[4]

PB[5]

PB[4]

PB[3]

PB[2]

1

2

3

4

5

6

7

8

9

10

11

12

DA[3]

DA[2]

DA[1]

DA[0]

SA[1]

SA[0]

DA[5]

DA[4]

SA[5]

SA[4]

SA[3]

SA[2]

17

18

19

20

21

22

23

24

25

26

27

28

TCI[7:0]

TCI[15:8]

29

30

TPID[7:0]

TPID[15:8]

31

32

SSAP

DSAP

33

34

bits

Lenght[1]

Length[0]

35

36

OUI[2]

OUI[1]

37

38

OUI[0]

CTL

39

40

TYPE1

TYPE0

43

44

Data[1]

Data[0]

41

42

Figure 68 Management packet structure

When VLANs are active, all CCP packets must use the power-line reserved VLAN tag 1.

Other standard protocols like spanning tree, will follow the IEEE 802 standard.

4-June-07 P1901_PRO_016_r0

Submission page 192 UPA-OPERA

9.1.2 Adaptive Bit-Loading Protocol (ABLP)

9.1.2.1 Overview

The Adaptive Bit-Loading Protocol (ABLP) is responsible for the interchange of tonemap information between the different nodes of an established BPL network.

Tonemap negotiation is unidirectional and needs direct visibility between the involved nodes. One node sends the tonemap configuration and the other accepts it. The same tonemap shall be used by receiver nodes in order to understand the received data.

A pair of nodes can establish two different logical links identified in the reception side by the pair transmitter’s MAC and First Remote Port (RP1) and transmitter’s MAC and Second Remote Port (RP2). The link determined by the transmitter’s MAC and the Second Remote Port is usually devoted to Multicast Transmissions, and may have a different tonemap from the link determined by the pair transmitter‘s MAC and First Remote Port (RP1) (See 9.1.2.1). In this case, the negotiation will be independent for each one of the links.

Tonemap negotiation includes:

- The tonemap. - The tonemap ID (TMI) associated to the included tonemap. - And, optionally, cycle selection (CS) configuration.

Cycle selection configuration can be included to indicate that current tonemap has been designated to be used only during a specific part of the cycle defined as a multiple of Qs (See 4.4.2.10). In that case, nodes will need to negotiate several tonemaps to cover the the entire cycle.

9.1.2.2 Protocol

The ABLP defines two different packets:

- The ABLP Tonemap information packet (ABLP_inf). - And the ABLP Tonemap acknowledgement packet (ABLP_ack).

The ABLP_ack is used by the ABLP_inf packet transmitter to know if the tonemap configuration has been received and accepted by the transmitter node. In case that acknowledgment does not arrive, the ABLP_inf packet transmitter shall send a new ABLP_inf packet. The ABLP_inf packet transmitter shall start a timer after the transmission of the packet.

The loss of an ABLP_inf packet or the ABLP_ack packet shall not cause a tonemap mismatch (different tonemaps with the same TMI in transmitter and receiver). Current tonemaps shall not share TMI with new tonemaps and shall not be immediately discarded after sending the new packet. The loss of an ABLP_inf packet will imply the use of previous tonemap configuration and the transmission of a new ABLP_inf packet.

On the other hand, although the ABLP_ack packet is lost, the new tonemap configuration can be used. However, a new ABLP_inf packet shall be sent (timeout) with the objective of finishing the negotiation.

4-June-07 P1901_PRO_016_r0

Submission page 193 UPA-OPERA

The ABLP_ack packet shall include the same TMI and sequence number as the transmitted ABLP_inf packet. The sequence number shall be increased with every transmitted ABLP_inf packet. The reception of the ABLP_ack implies that the receiver has accepted the new tonemap configuration.

Figure 69: Example of successful tonemap negotiation

9.1.2.3 ABLP_inf packet format

ABLP_inf packets shall be sent in HURTO mapping mode. The use of a different mapping could result in the impossibility to negotiate new tonemaps if current tonemap configuration is inadequate.

ABLP_inf packets use the CCP with Type0 0x01 and Type1 0x01. The packet format can be seen in Figure 70.

Figure 70: ABLP_inf packet

ABLP_inf packets use 0x01139D000000 multicast address as destination MAC address.

4-June-07 P1901_PRO_016_r0

Submission page 194 UPA-OPERA

Source MAC address is set to the ABLP_inf packet transmitter node MAC address. The ABLP_inf data is shown in Figure 71.

Figure 71: ABLP_inf Data

Description:

a) Remote Port: Remote Port assigned by the ABLP_inf packet transmitter to the link with the ABLP_inf packet destination node. May be the First or the Second Remote Port.

b) TMI: Tonemap ID assigned to the included tonemap. From 0 to 255. If the H bit is set to 1, this value shall be set to 0.

c) Local Port: Local Port assigned by the ABLP_inf packet transmitter to the link with the ABLP_inf packet destination node.

d) Flags:

1) H bit: use HURTO mapping. When this bit is set to 1, Tonemap Format and Tonemap fields shall not be included and, additionally, TMI and BPS fields shall be set to 0.

2) C bit: use cycle selection (CS). When this bit is set to 1, CS Format and CS fields shall be included.

The rest of bits are reserved and shall be set to 0.

e) BPS: Bits Per Symbol value calculated from the tonemap included in the packet (see Equation 17). If H bit is set to 1, this value shall be set to 0.

f) Rx Att: difference, in 3 dB steps, between the maximum reception gain and the gain used during channel estimation.

g) Sequence Number: ABLP_inf packet sequence number. From 0 to 65535.

h) Dest MAC: destination node MAC address.

4-June-07 P1901_PRO_016_r0

Submission page 195 UPA-OPERA

i) CRC: CRC-32-IEEE 802.3 calculation. The complete ABLP_inf data is used, considering as 0 the CRC field.

j) Tonemap Format: information about the format used in the Tonemap field.

k) Tonemap: tonemap data. Tonemap data field shall be in the format set in Tonemap Format field.

l) CS Format: information about the format used in the CS field.

m) CS: cycle selection data. CS field shall be in the format set in the CS Format field.

9.1.2.3.1 Tonemap format details

Tonemap basic format is defined here. This format shall be used when Tonemap Format field value is set to 1 (0x0001). Format description:

- Tonemap sets the value for 1536 subcarriers. - Every subcarrier uses 4 bits to describe subcarrier bit-loading value. - Tonemap field length is 768 octects. - The first octet contains the first subcarrier (lowest frequency subcarrier) bit-loading value in the least

significant bits and the second subcarrier bit-loading value in the more significant bits. - The second octet contains the third and fourth subcarrier bit-loading values; the third octet contains the fifth

and sixth values, and so on.

9.1.2.3.2 Cycle Selection details

CS basic format is defined here. This format shall be used when CS Format field first octet is set to 1 (0x01). CS Format field second octet represents the number of octet pairs in the CS field. See Figure 72.

Figure 72: CS Format field

Therefore, CS field length is two times the Zone Count value. Each two octets define a part of the cycle when the tonemap can be used. The first octet represents the start and the second octet stands for the end (both included).

Start and end values shall be defined by a synchronized Q value (see 4.3.11).

4-June-07 P1901_PRO_016_r0

Submission page 196 UPA-OPERA

9.1.2.4 ABLP_ack packet

ABLP_ack packets shall be sent in HURTO mapping mode. ABLP_ack packets use the CCP with Type0 0x01 and Type1 0x04. The packet format can be seen in Figure 75¡Error! No se encuentra el origen de la referencia..

Figure 73: ABLP_ack packet

ABLP_ack packets use 0x01139D000000 multicast address as destination MAC address.

Source MAC is set to the ABLP_ack packet transmitter MAC address.

The ABLP_ack data format is shown in Figure 74¡Error! No se encuentra el origen de la referencia..

Figure 74: ABLP_ack Data

Description:

a) Remote Port: Remote Port assigned by the ABLP_ack packet transmitter to the link with the ABLP_ack packet destination node. May be the First or the Second Remote Port.

b) TMI: acknowledged Tonemap ID.

4-June-07 P1901_PRO_016_r0

Submission page 197 UPA-OPERA

c) Local Port: Local Port assigned by the ABLP_ack packet transmitter to the link with the ABLP_ack packet destination node.

d) Sequence Number: acknowledged ABLP_inf packet sequence number.

e) Dest MAC: destination node MAC address.

9.1.3 Access Protocol

Access protocol defines a protocol for connecting nodes in point-multipoint BPL networks within master-slave architecture.

In this protocol we will define the way to establish a connection from a slave to a master of the network.

Each master node may periodically send an access frame, as explained in 4.3.5, to the network, and wait for a response to add the responding slave to their own list and then start the AAA (Authorization – Authentication – Accounting) protocol to decide if the node is authorized to connect to the network via this master or not.

On the other side, when a slave receives an access token it decides to reply or not with an access reply frame, as explained in 4.3.9.

When a slave wants to send an access reply frame it must start a back-off period, as it is explained in 4.3.9. If no other access reply frame is detected during that period, the node may send an access reply frame.

Once a master receives an access reply frame from a slave it must send an access protocol packet accepting or rejecting the slave.

9.1.3.1 Access Protocol packet format

This packet shall be sent from the master to a slave that sent and access reply frame, to indicate if the slave is accepted or not. The packet is formatted as an CCP packet and the structure is shown in Figure 75.

The response contained in the packet can be of three different types:

• ACCEPT: The slave node has been accepted

• REJECT: The slave node has been rejected because the AAA process has resulted in rejection.

• FAILED: The slave node has been rejected because the AAA process has failed and the master does not have enough information to accept or reject the node.

The packet uses the CCP with Type0=0x03 and Type1=0x01.

4-June-07 P1901_PRO_016_r0

Submission page 198 UPA-OPERA

In Figure 75 we can see the entire packet format:

Dest MAC Src MAC Payload

0xAA

0xAA Slave MAC

0x03

0x00

0x03

Leng

th

0x13

0x9D

0x01

TPID

TCI

Master MAC Info

Figure 75 Access protocol packet

The packet is sent using the broadcast port (127). The value of the packet fields shall be:

• Dest MAC is set 0x0180C2000000.

• Src MAC is set to the master MAC address.

• Slave MAC is set to the slave MAC address

• Master MAC is set to the master MAC address

• The Info field is 1 byte and can have the following values:

o REJECT: 0x00

o ACCEPT: 0x01

o FAILED: 0x02

9.1.3.2 Timing diagrams

In the following timeline diagrams we will show the sequence of messages that can be produced in access protocol between master and slave and the messages sent.

We will divide this section in different cases that can occur.

Case 01: Master accepts Slave

4-June-07 P1901_PRO_016_r0

Submission page 199 UPA-OPERA

ACCESS_TOKEN_SENT

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

MASTER SLAVE

ACCESS_TOKEN_REPLY_RECEIVEDAAA PROCESS STARTs

SLAVE ACCEPTEDACCEPT_PACKET_SENT

MASTER_REGISTRATIONACCESS PROTOCOL

COMPLETED

Figure 76 Access protocol: Master accepts Slave

Case 02: A Master rejects a Slave

ACCESS_TOKEN_SENT

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

MASTER SLAVE

SLAVE REJECTEDREJECT_PACKET_SENT

ACCESS PROTOCOL RESTART

ACCESS_TOKEN_REPLY_RECEIVEDAAA PROCESS STARTs

Figure 77 Access protocol: Master rejects Slave

Case 03 Master rejects Slave due to different reasons from not acceptation (protocol has failed)

4-June-07 P1901_PRO_016_r0

Submission page 200 UPA-OPERA

ACCESS_TOKEN_SENT

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

MASTER SLAVE

SLAVE REJECTEDFAILED_PACKET_SENT

ACCESS PROTOCOL RESTART

ACCESS_TOKEN_REPLY_RECEIVEDAAA PROCESS STARTs

Figure 78 Access protocol: registration failed

Case 04: Slave response is lost

ACCESS_TOKEN_SENT

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

MASTER SLAVE

MASTER_REGISTRATIONACCESS PROTOCOL

COMPLETED

ACCESS_TOKEN_SENT

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

SLAVE ACCEPTEDACCEPT_PACKET_SENT

Figure 79 Access protocol: Slave response is lost

Case 05: Master acceptation packet is lost. Protocol starts again after expiring timers waiting for master reply.

4-June-07 P1901_PRO_016_r0

Submission page 201 UPA-OPERA

ACCESS_TOKEN_SENT

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

MASTER SLAVE

MASTER_REGISTRATIONACCESS PROTOCOL

COMPLETED

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

SLAVE ACCEPTEDACCEPT_PACKET_SENT

ACCESS_TOKEN_SENT

TIMEOUTACCESS PROTOCOL RESTART

SLAVE ACCEPTEDACCEPT_PACKET_SENT

ACCESS_TOKEN_SENT

Figure 80 Access protocol: Master acceptation packet is lost

Case 06: Master accepts Slave 1. Slave 2 lost contention

ACCESS_TOKEN_SENT

MASTER SLAVE 1

SLAVE ACCEPTEDACCEPT_PACKET_SENT

SLAVE 2

ACCESS_TOKEN_RECEIVEDREPLY_ACCESS_TOKEN

ACCESS PROTOCOL RESTARTMASTER_REGISTRATIONACCESS PROTOCOL

COMPLETED

Figure 81 Access protocol: two slaves contend

Case 07: Slave decides not to log in a Master

4-June-07 P1901_PRO_016_r0

Submission page 202 UPA-OPERA

Figure 82 Access protocol: Slave decides not to log in a Master

9.1.4 Port Solver Protocol

To allow data transmission from node A to node B a connection must be created between them. This connection will allow sending data between A and B.

This connection is composed by two unidirectional links: one from A to B and another from B to A. These links are entries in the Port Solver Table (PST). That is, a connection between A and B is fully established when in A’s PST there is a complete entry (with all its data) regarding B, and in B’s PST there is a complete entry regarding A.

The objective of the protocol is to complete the remote port (RP) field of the PST entries.

9.1.4.1 Port Solver Table

The Token Announce is used to know the transmitter. In the Token Announce, there is the MAC address of the transmitter. For more information about the Token Announce see 4.4.1.

The way to identify the receiver at the transmitter side is with the Local Port. The Local Port is included in the Transmission Port field of the burst header. The transmitter may have up to two Local Ports to identify two flows between the transmitter and a single receiver. The second Local Port is intended to be used for multicast purposes.

At the receiver side, the information in the Transmission Port field of the burst header will be the Remote Port. The relation between Remote Port and MAC address of transmitter in order to identify that it is the intended receiver shall be stored in a table (referred to as the Port Solver Table). To get more information about Burst Header see 5.2.

4-June-07 P1901_PRO_016_r0

Submission page 203 UPA-OPERA

The transmitter can send bursts to up to 119 ports. The correct range of Local Port is the following:

- From 9 to 126 are possible Local Ports.

- Port 127 is the Broadcast Port. All receivers have to receive the burst with Transmission Port equal to 127.

The Port Solver Table has 118 entries and each entry has the following information:

- MAC address of all transmitters that are visible for this node. The MAC address of the transmitter can be read in the received Token Announce

- First Remote Port (RP1). The RP1 will be set to a default invalid value (0xFF) until the Port Solver Protocol takes place. The RP1 of transmitters that do not transmit data directly to this node (for instance, the RP1 of a CPE for another CPE) will keep the default value. This RP1 is intended to be used fro unicast communications.

- Second Remote Port (RP2). The RP2 will be set to a default value (0xFF) until a Multicast message of the Port Solver Protocol containing the Local Port using by the multicast flow transmitter is received.(See 9.1.4.3.2)

- Local Port (LP)

The Port Solver Table will have therefore completed entries (with a valid RP1) and incomplete entries (with a RP1 equal to 0xFF). The RP2 is not taken into account to decide if an entry is completed or not. When receiving from a MAC address with a completed entry in the Port Solver Table, the receiver shall decode any burst with Transmission Port field in the burst header equal to:

- The First Remote Port associated to this MAC address

- The Broadcast Port.

If RP2 is also completed in the entry, the receiver shall decode also any burst with Transmission Port in the burst header equal to:

- The Second Remote Port associated to this MAC address

When First Remote Port is using Mode ACK, the next sent ACK has ACK Port equal to Local Port.

Second Remote Port does not support ACK mode.

Port Solver Table entries are deleted if no TA is received from the corresponding MAC address during 60 seconds (ageing).

9.1.4.1.1 Unicast Communication example

The following example is useful to understand the meaning of each field in the case of unicast communication between two nodes:

4-June-07 P1901_PRO_016_r0

Submission page 204 UPA-OPERA

Node A Node B

9

15

Figure 83 Ports example

To transmit a burst from A to B, the Transmission Port field is equal to 9.

To transmit a burst from B to A, the Transmission Port field is equal to 15.

In B the Port Solver Table has the following entry:

• MAC address equal to A MAC address • Local Port equal to 15. • First Remote Port equal to 9.

In A the Port Solver Table has the following entry:

• MAC address equal to B MAC address • Local Port equal to 9. • First Remote Port equal to 15.

The first remote port exchange process is described in section 9.1.4.2.

9.1.4.1.2 Multicast Communication example

The second remote port is intended to support native multicast using BPL by means of identify a physical unique link that will have its own tonemap and particular management, as described in section 9.1.2.1

In the following draw, node A has three links stablished. First one is a unicast link with node B, second another unicast link with node C and finally, a multicast link with nodes B and C. The local reference in node A for each of the links is its assigned Local Port, in this case 9, 10 and 12 respectively.

4-June-07 P1901_PRO_016_r0

Submission page 205 UPA-OPERA

Node A Node B

Node C

9

15

12

10

14

12

Figure 84: Native Multicast example

In Node A the Port Solver Table has the following entries:

• MAC address equal to Node B MAC address • Local Port equal to 9 • Remote Port 1 equal to 15 • MAC address equal to Node C MAC address • Local Port equal to 10 • Remote Port 1 equal to 14

In Node B the Port Solver Table will have the following entry:

• MAC address equal to Node A MAC address • Local Port equal to 15 • Remote Port 1 equal to 9 • Remote Port 2 equal to 12

In Node C the Port Solver Table will have the following entry:

• MAC address equal to Node A MAC address

4-June-07 P1901_PRO_016_r0

Submission page 206 UPA-OPERA

• Local Port equal to 14 • Remote Port 1 equal to 10 • Remote Port 2 equal to 12

When a burst with a Transmission Port field set to 12 is sent by Node A will be demodulated by Node B and Node C using the tonemap for the second port, which will be common for Node B and Node C in the reception. (See section 9.1.2) This way, the information will be sent only once.

9.1.4.2 First Port exchange process

The first port (RP1) exchange process is only executed between the master and the corresponding slaves. The protocol is always started by the master, after completion of the access protocol. The slave node cannot send the port solver message because it needs the token to transmit any packet, and to recognize that the token is addressed to it, it must know its RP1 with the master; that is, it has to complete the entry in its PST correspondent to the MAC address of its master.

To complete all the fields of an entry correspondent to a given MAC address, the first remote transmission port must be communicated by the node with that MAC address. A hand-shake protocol is used.

The node that wants to complete the entry sends a Port Solver Message (PSM) addressed to the MAC address of the PST entry. When a node receives a PSM, it answers with another PSM (Figure 85). The main contents of the PSM are the LP and the flag field. The flag field is set to zero by default. The flag field must be set to 1 when a PSM is received and the correspondent entry is already completed (Figure 87). A received PSM with this flag set to 1 will not require an answer.

PSM(LP 3, 0)

PSM(LP 5, 1)

Node A Node B

Node B entry addedEntry: (MAC B, LP 3, RP1 -)

Entry: (MAC A, LP 5, RP1 3)

Node A entry addedEntry: (MAC A, LP 5, RP1 -)

Entry: (MAC B, LP 3, RP1 5)

Figure 85 Port Solver Protocol Messages Exchange to complete First remote Port

If a response to PSM is not received, the entry will not be completed and a new PSM must be sent (Figure 86, Figure 87). There is a minimum time between PSM retransmissions. If the entry remains in the PST, the protocol must be followed until its success.

4-June-07 P1901_PRO_016_r0

Submission page 207 UPA-OPERA

Figure 86 Port Solver Protocol Messages Exchange to complete First remote Port

4-June-07 P1901_PRO_016_r0

Submission page 208 UPA-OPERA

PSM(LP 3, 0)

PSM(LP 5, 1)

Node A Node B

Node B entry addedEntry: (MAC B, LP 3, RP1 -)

Entry: (MAC A, LP 5, RP1 3)

Node A entry addedEntry: (MAC A, LP 5, RP1 -)

Entry: (MAC B, LP 3, RP1 5)

PSM(LP 3, 0)

PSM(LP 3, 0)

Entry: (MAC B, LP 3, RP1 -)

PSM(LP 3, 0)

Entry: (MAC A, LP 5, RP1 3)PSM(LP 5, 1)

Figure 87 Port Solver Protocol Messages Exchange to complete First remote Port

Every time a PSM is received, the correspondent entry in the PST must be updated because the first remote port can change.

Every time the LP is changed, the RP1 must be set to an invalid value and the protocol started.

9.1.4.3 Second Port exchange process

The second port (RP2) exchange process is only executed when the unicast link between origin and destination of multicast flow has been previously established. The protocol is always started by the origin of the multicast flow, that, through higher level exchange of packets, respond to the petition of inclusion or exclusion of certain node, identified by the Local Port assigned to the previously established unicast link, into a multicast flow, identified by a Local Port in the traffic origin.The response will be to trigger the Second Port (RP2) exchange process.

The origin of the multicast flow wil send a Posrt Solver Multicast Message (PSMM) addressed to the MAC address of the destination of the multicast flow. When a node receives a PSMM, it answers with a Port Solver Multicast ACK Message (PSMAM) to acknowledge the reception of the Local Port assigned in the transmission side to the

4-June-07 P1901_PRO_016_r0

Submission page 209 UPA-OPERA

multicast flow desired, and the RP2 (Second Remote Port) field of the entry indexed by the multicast origin MAC will be filled with this number.

Since this time, when receiving from a MAC address with a entry that contains RP1 and RP2 in the Port Solver Table, the receiver shall decode any burst with Transmission Port field in the burst header equal to RP1 and RP2.

The main contents of the PSMM are the LP assigned in the origin of the multicast flow and the flag field. The flag field is set to zero by default. A received PSMM with this flag set to 1 shall not require an answer.

PSMM(LP 12, 0)

PSMAM

Node A Node B

Node B wants to join multicast flow

With LP associated 12Entry: (MAC A, LP 5, RP1 3,

RP2 12)

Entry: (MAC A, LP 5, RP1 3, RP2 -)

Node B will receive data transmitted by port 3 and port

12 from Node A

Figure 88 Port Solver Protocol Messages Exchange to complete Second remote Port

4-June-07 P1901_PRO_016_r0

Submission page 210 UPA-OPERA

PSMM(LP 12, 0)

PSMAM

Node A Node B

Node B wants to join multicast flow

With LP associated 12

Entry: (MAC A, LP 5, RP1 3, RP2 12)

Entry: (MAC A, LP 5, RP1 3, RP2 -)

Node B will receive data transmitted by port 3 and

port 12 from Node A

PSMM(LP 12, 0)

PSMM(LP 12, 0)

PSMM(LP 12, 0)

Figure 89: Port Solver Protocol Messages Exchange to complete Second remote Port

PSMM(LP 12, 0)

PSMAM

Node A Node B

Node B wants to join multicast flow

With LP associated 12

Entry: (MAC A, LP 5, RP1 3, RP2 12)

Entry: (MAC A, LP 5, RP1 3, RP2 -)

Node B will receive data transmitted by port 3 and port

12 from Node A

PSMM(LP 12, 0)

PSMM(LP 12, 0)

PSMM(LP 12, 0)

PSMAM

Figure 90: Port Solver Protocol Messages Exchange to complete Second remote Port

If a response to PSMM is not received, Node A will not known is Node B is in the group or not, and a Time Out is done in the transmitter to send again the PSMM.

4-June-07 P1901_PRO_016_r0

Submission page 211 UPA-OPERA

In the case of leaving a group, the protocol messages exchange will be the same, but replacing the LP associated by an invalid identifier (0xFF), as can be seen in the following figure:

PSMM(LP 0xFF, 0)

PSMAM

Node A Node B

Node B wants to leave multicast flow

With LP associated 12Entry: (MAC A, LP 5, RP1 3,

RP2 -)

Entry: (MAC A, LP 5, RP1 3, RP2 12)

Node B will receive data transmitted only by port 3

from Node A

Figure 91: Port Solver Protocol Exchange to delete Second Remote Port

PSMM(LP 0xFF, 0)

PSMAM

Node A Node B

Node B wants to leave multicast flow

With LP associated 12

Entry: (MAC A, LP 5, RP1 3, RP2 -)

Entry: (MAC A, LP 5, RP1 3, RP2 12)

Node B will receive data transmitted only by port 3

from Node A

PSMM(LP 0xFF, 0)

PSMM(LP 0xFF, 0)

PSMM(LP 0xFF, 0)

Figure 92 Port Solver Protocol Messages Exchange to delete Second Remote Port

4-June-07 P1901_PRO_016_r0

Submission page 212 UPA-OPERA

PSMM(LP 0xFF, 0)

PSMAM

Node A Node B

Node B wants to leave multicast flow

With LP associated 12

Entry: (MAC A, LP 5, RP1 3, RP2 -)

Entry: (MAC A, LP 5, RP1 3, RP2 12)

Node B will receive data transmitted only by port 3

from Node A

PSMM(LP 0xFF, 0)

PSMM(LP 0xFF, 0)

PSMM(LP 0xFF, 0)

PSMAM

Figure 93: Port Solver Protocol Messages Exchange to delete Second Remote Port

Every time a PSMM is received, the correspondent entry of RP2 in the PST must be updated.

Every time the LP is changed, the RP2 must be set to an invalid value and the protocol started.

9.1.4.3.1 Port Solver Packet format

The PSM is encapsulated using the CCP with Type0 0x02 and Type1 0x01 (Figure 94). The Port Solver packet will be sent through broadcast port 127.

Dest MAC Src MAC Payload

0xA

A0x

AA

Port Solver Protocol Data

0x03

0x00

0x02

Leng

th

0x13

0x9D

0x01

TPID

TCI

Figure 94 Port solver packet

4-June-07 P1901_PRO_016_r0

Submission page 213 UPA-OPERA

Destination MAC must be the STP multicast address (0x0180C2000000) because PSMs are exchanged prior to the STP protocol. The packet shall be transmitted using the broadcast port (127). The PSM data fields are:

Bytes PSM data fields Length

0 – 5 Source MAC 6 bytes

6 – 11 Destination MAC 6 bytes

12 Assigned LP 1 byte

13 Info 1 byte

Table 24 Port solver packet fields

The format of the Info field is depicted in ¡Error! No se encuentra el origen de la referencia.:

Figure 95 Info field format

Bits number 1 to 4 are devoted to set the message type of the Capability Exchange Protocol (See section 0)

9.1.4.3.2 Port Solver Multicast Message (PSMM) format

The PSMM is encapsulated using the CCP with Type0 0x02 and Type1 0x03 (Figure 94). The Port Solver Multicast Message will be sent through broadcast port 127.

4-June-07 P1901_PRO_016_r0

Submission page 214 UPA-OPERA

Figure 96 Port solver Multicast Message

Destination MAC must be the STP multicast address (0x0180C2000000) because PSMMs are exchanged prior to the STP protocol. The packet shall be transmitted using the broadcast port (127). The PSMM data fields are:

Bytes PSM data fields Length

0 – 5 Source MAC 6 bytes

6 – 11 Destination MAC 6 bytes

12 Assigned Multicast LP 1 byte

13 Info 1 byte

Table 25 Port solverMulticast Message fields

The format of the Info field is depicted in ¡Error! No se encuentra el origen de la referencia.:

Figure 97 Info field format

Bits number 1 to 4 are devoted to set the message type of the Capability Exchange Protocol (See section 0)

4-June-07 P1901_PRO_016_r0

Submission page 215 UPA-OPERA

9.1.4.3.3 Port Solver Multicast Acknowledge Message (PSMAM) format

The PSMAM is encapsulated using the CCP with Type0 0x02 and Type1 0x04 (Figure 94). The Port Solver Multicast Message will be sent through broadcast port 127.

Figure 98 Port solver ACK Multicast Message

Destination MAC must be the STP multicast address (0x0180C2000000) because PSMAMs are exchanged prior to the STP protocol. The packet shall be transmitted using the broadcast port (127). The PSMAM data fields are:

Bytes PSM data fields Length

0 – 5 Source MAC 6 bytes

6 – 11 Destination MAC 6 bytes

12 Acknowledged Multicast LP

1 byte

13 Info 1 byte

Table 26 Port solverMulticast Message fields

The format of the Info field is depicted in ¡Error! No se encuentra el origen de la referencia.:

4-June-07 P1901_PRO_016_r0

Submission page 216 UPA-OPERA

Figure 99 Info field format

Bits number 1 to 4 are devoted to set the message type of the Capability Exchange Protocol (See section 0)

9.1.4.4 Periodic publication of Port Solver information

Each Announce Time period (30 seconds) each node sends an Announce Message (AnM) publishing Port Solver information. This message contains a list with pairs of values (entry MAC address and assigned LP).

Upon the reception of an AnM, the PST shall be modified in the following cases:

• The sender MAC address is in a completed entry of the PST and the AnM LP value associated to the node MAC address is different from the PST RP value associated to the sender MAC address the RP shall be updated (see Figure 100)

• The sender MAC address is in the PST but the MAC address of the node is not in the AnM Set PST RP value associated to the sender MAC address to 0xFF (see Figure 101)

• The sender MAC address is in a incomplete entry of the PST, and the sender is either slave or master of the receiving node the RP shall be updated

MAC D LP 11

MAC C LP 10

MAC B LP 9

AnM from A

MAC A LP 11

MAC D LP 10

MAC B LP 9

PST in C

RP 12 10RP 255

RP 255

C

Rx AnM from A

Figure 100 Announce Messages

4-June-07 P1901_PRO_016_r0

Submission page 217 UPA-OPERA

MAC D LP 11

MAC E LP 10

MAC B LP 9

AnM from A

MAC A LP 11

MAC D LP 10

MAC B LP 9

PST in C

RP 12 255RP 255

RP 255

C

Rx AnM from A

Figure 101 Announce Messages

This message does not require any acknowledgement.

9.1.4.4.1 Announce message format

The Announce Message is encapsulated using the CCP with Type0 0x02 and Type1 0x02 (Figure 102). The Announce Message packet will be sent through broadcast port 127.

Dest MAC Src MAC Payload

0xA

A0x

AA

Announce Message Data

0x03

0x00

0x02

Leng

th

0x13

0x9D

0x02

TPID

TCI

Figure 102 Announce packet format

Destination MAC must be the STP multicast address (0x0180C2000000).

The PST can be fragmented in several AnMs (identified by a sub-table number) if the entries do not fit in one.

The AnM data fields are:

4-June-07 P1901_PRO_016_r0

Submission page 218 UPA-OPERA

Bytes AnM data fields Length

0 Sub-table number 1 bytes

1 Number of sub-tables 1 bytes

2 Number of entries of the sub-table 1 byte

3 - 8 Sender MAC address 6 byte

9 Entry size 1 byte

10 - 521 Entries 512 bytes Maximum

Table 27 Announce message fields

The Table data is a list of consecutive pairs in the form:

Entry fields Length

MAC address 6 bytes

LP 1 byte

Table 28 Announce message entries

9.1.4.5 Capabilities Exchange protocol

9.1.4.5.1 Overview

In a BPL cell, nodes shall coexist with different capabilities and with other nodes from diverse vendors. Besides, they shall be able to communicate with each other, regardless their differences.

The Capabilities Exchange protocol is a mechanism to exchange information about node capabilities. Every node in the BPL network shall know the capabilities of each node that has negotiated BPL ports with it.

4-June-07 P1901_PRO_016_r0

Submission page 219 UPA-OPERA

However, the processing of such information in order to negotiate the best possible features used in the communications network is beyond the aim of this protocol.

From the point of view of packet format and message exchange, this protocol is an extension of the Port Solver protocol (PSP). It uses reserved fields in Port Solver Messages (PSMs) to place node capabilities information, and shall not prevent the ordinary working of the PSP protocol. Some additions shall be applied to the PSM exchange mechanism in order to fulfill the features of the Capabilities Exchange protocol.

The Capabilities Exchange protocol shall be flexible enough, not only to provide the exchange of specific capabilities from different vendors, but also to allow the exchange of a standard set of minimum capabilities common for all vendors. Moreover, it shall be easily extensible to include new capabilities, which shall not prevent backwards compatibility.

This protocol should be efficient, regarding the channel use, to minimize the impact of the overhead of the protocol in the application data throughput of the whole network.

9.1.4.5.2 Protocol

The protocol is composed by two main stages:

• First stage: Two nodes shall exchange the information about the maximum capabilities they can perform and the capabilities they are running at that time. In this stage, it is used an ACK-based protocol whose objective is to fill two local tables in each node indexed by MAC address:

o Node Capability Table (NCT): It shall contain the maximum capabilities of each known node. o Performed Capability Table (PCT): It shall contain the capabilities that each known node is running

at that time.

The implementation of these two tables should be done in a single table with the contents described in section 0 and 0. The two tables are divided into four sections:

o Common capabilities o Chip related capabilities o Reference Design related capabilities o Firmware related capabilities

The first section (Common) shall be common for all systems, independent of the vendor. The last three ones (Chip, Reference Design and Firmware related) shall depend on the vendor. The maximum number of entries of each section shall be 64, with an unlimited size per entry.

• Second stage: It shall take place only if the running capabilities of a node change. This node shall indicate all nodes the new capabilities that it is performing at that time. This second stage may be either ACK-based or not, with a first information message and a received ACK from the destination, depending on the content of the ACK expected field. If it is 1, an ACK is expected. If not, no ACK is expected from the receiver.

9.1.4.5.3 Messages

4-June-07 P1901_PRO_016_r0

Submission page 220 UPA-OPERA

One of the two possible schemes explained below can be used to send the vendor dependent information within the maximum capabilities messages (MAX_CAP_MSG(xxx)):

• Indexed scheme: Only the vendor related information shall be sent, and the maximum capabilities shall be inferred by the receiver. As a result, less data shall be transferred by the Capabilities Exchange protocol, minimizing the overhead.

• Enumerated scheme: Node vendor and capabilities shall be sent as an enumeration.

In case a node does not understand the indexed scheme, it shall send a NACK to the sender in response. In any case, the common capabilities section is always sent in the message using an enumerated scheme.

The information within the running capabilities messages (RUN_CAP_MSG) shall be sent in a different way. First, a field containing the default mode shall be sent. This field shall indicate what shall be the value for a running capability that is not sent in the message. The possible values can be two:

• Maximum capability. • Minimum capability.

Once the default field content is clear, the running capabilities that do not match with this default value shall be sent using a group of two fields. The first one shall indicate the position of the capability in the NCT, and the second one, its value. In addition to the information itself, a message mode shall be filled, indicating whether the node has changed its running capabilities, or it is a simply information message to the others nodes.

9.1.4.5.3.1 Capability Element (CapE)

A capability element is a structure composed by several and variable number of fields. All protocol messages are built using this structure. Four can be the protocol messages to be composed:

• MAX_CAP_MSG(xxx): This message shall contain the maximum capabilities that a node can perform. It shall be divided into two main sections. The first one is the common capabilities section, which includes all these capabilities that are vendor independent, and have been previously approved by all vendors as a standard. The second one is the vendor capabilities section that shall be divided into three subsections. Either these subsections can be transmitted entirely (enumerated scheme) or sent using only an index (indexed scheme), enough for the receiver to understand all the capabilities related to each subsection. In this case, the indication (xxx) shall be substituted by a 1 in the position relative to each of the subsections. That is, if only the Chip related capabilities are sent using the index, the indication becomes (100). The subsections are the following:

o Chip related capabilities: All the capabilities that depend directly on the chip. If sent by index, it shall be indicated with a 1 in the first position of the index indicator. A list of Chip related capabilities is presented in section 0.

o Firmware related capabilities: All the capabilities that depend on the Firmware version. If sent by index, it shall be indicated with a 1 in the second position of the index indicator. A list of Firmware related capabilities is presented in section 0.

o Reference Design related capabilities: All the capabilities that depend on the Reference Design. If sent by index, it shall be indicated with a 1 in the third position of the index indicator. A list of Reference Design related capabilities is presented in section 0.

• RUN_CAP_MSG: In this message, the running but not the maximum capabilities of the node shall be sent.

Its objective is to fill the PCT. The first field shall notate the transmission mode, where the nature of the message, if it is a simply informational message or includes a notification of change in the running

4-June-07 P1901_PRO_016_r0

Submission page 221 UPA-OPERA

capabilities, is transmitted. A second field telling the default value for the running capabilities that are not explicitly indicated in the message shall be sent. This default value can be the highest possible capability of the node or the lowest possible one. Then, the position of the capability in the NCT using a section indicator (Common, Chip, Firmware or Reference Design subsection) followed by the position of the capability in the section of the NCT shall be sent, associated with a value for this capability, that shall be wrote in the PCT.

• ACK_CAP_ANN: Acknowledge of all sections of a MAX_CAP_MSG (xxx) message and also a previous RUN_CAP_MSG if they were sent with the ACK expected field set to 1. A sender cannot send two messages that expect two different ACKs. If a composed message with a MAX_CAP_MSG(xxx) and a RUN_CAP_MSG is sent, only an ACK_CAP_ANN shall be expected. If the sender decides to send both messages separately, first it shall expect the ACK_CAP_ANN for the MAX_CAP_MSG(xxx); and then, it shall transmit the RUN_CAP_MSG and expect another ACK_CAP_ANN for it. If some section of the MAX_CAP_MSG has not been correctly decoded, i.e. the index is not recognized by the destination node, (and cannot fill the NCT using only this data) then the message sent in response shall be a NACK_CAP_ANN (xxx) instead, with a 1 in the non-correctly decoded section.

• NACK_CAP_ANN(xxx): One or more sections of the MAX_CAP_MSG(xxx) section sent by index have not been recognized by the receptor, because no index found, or table structure not known.

Each type of Capabilities Exchange protocol message shall be identified by a field called MSG_TYPE. Please refer to section 0 for further details on this issue.

Those messages can be composed encapsulating several of them into one Port Solver Message (PSM); therefore it is saved some overhead due to protocol encapsulation.

Each one of the messages and how to compose them is discussed in the following subsections.

9.1.4.5.3.2 MAX_CAP_MSG message

This message shall begin with one field devoted to indicate the number of sets of maximum capabilities that are sent in the message.

Depending on the decision performed in the node, it shall transmit the MAX_CAP_MSG message with either its maximum capabilities only (Single Node Publication) or the maximum capabilities of all the nodes it knows (All Known Nodes Publication). Although only the Single Node Publication method should be used, it is also possible to use the All Known Nodes Publication method.

In the first case (Single Node Publication), this field shall be set to 1, and in the second case (All Known Nodes Publication), it shall be set to the number of known nodes with a complete filled NCT plus one.

4-June-07 P1901_PRO_016_r0

Submission page 222 UPA-OPERA

The second section shall include the data themselves and can contain the maximum capabilities of either one or several nodes.

Each set of maximum capabilities shall be preceded by the MAC address of the node that can perform this set of capabilities.

The different maximum capabilities that can be present in a BPL cell shall be divided into two different groups:

• Common capabilities (vendor independent capabilities) • Vendor dependent capabilities

Common capabilities shall be always sent in the messages. They are sent by means of a variable-length set of fields, whose contents and meaning will be determined by the protocol.

The vendor dependent capabilities shall be divided themselves in capabilities associated with:

• Chip version. • Reference design. • Firmware.

Common capabilities shall not require a division among chip, firmware or reference design related capabilities, because these capabilities shall be the same for all types of nodes and vendors.

On the other hand, vendor dependent capabilities shall be divided into the three described sections, because a solution may present different vendors for each part of the system; one vendor for the chip, other for the firmware and a third one for the reference design, and each vendor may sent its own information inside the vendor dependent section.

The Maximum Capabilities section of the MAX_CAP_MSG message shall follow this division also, with two main sections, where the first one shall be the common capabilities section and the second one the vendor dependent section.

The common capabilities section shall be simply composed by a first field of length in bytes, and a second variable-length field that shall include the fields that will be determined by the protocol. There are up to 64 entries in the NCT and PCT for common capabilities.

The vendor dependent capabilities section shall be subdivided into three main subsections: Chip, Reference Design and Firmware. For each subsection, two possible schemes of sending capabilities shall be allowed: Indexed and Enumerated.

When using the Indexed scheme, it is only required to send a part of sender’s NCT to fill the entire NCT in the receiver.

The second one shall be simply an enumeration of each of the capabilities that a node has.

4-June-07 P1901_PRO_016_r0

Submission page 223 UPA-OPERA

An indexed section shall be simply an enumeration covering only the minimum possible set of capabilities. This minimum set shall depend on the vendor. The proposed set is the following:

Section Set of capabilities to be an index

Chip Chip Vendor

Chip Version

Reference Design RD Vendor

RD Family

RD Version

Firmware FW Vendor

FW Family

FW Version

Table 29 Proposed vendor dependent capabilities indexes

As the vendor may be different for each section, it shall be indicated in each of the sections.

The number of enumerated capabilities may change from node to node depending on the version of each one, but the capabilities order shall remain the same.

The following figure presents an example of Maximum Capabilities section, where N sets of capabilities are sent. Inside each set, the three sections described below can be found, and, in this example, the enumerated mode is used, containing all the proposed fields. The common section is empty, because the contents and meaning of its fields are not determined yet. As a result, the length_of the common field is set to 0:

4-June-07 P1901_PRO_016_r0

Submission page 224 UPA-OPERA

MS

G_T

YP

E =

0x1

#CA

PS

ET

= N

LEN

GTH

_CO

MM

ON

_SE

T

CO

MM

ON

_CA

P_1

CO

MM

ON

_CA

P_2

CO

MM

ON

_CA

P_i

LEN

GTH

_CH

IP_S

ET

CH

IP_V

EN

DO

R

CH

IP_C

AP_

1

CH

IP_C

AP_

2

CH

IP_C

AP

_j

LEN

GTH

_RD

_SE

T

LMA

C_S

ET

RD

_VE

ND

OR

RD

_CA

P_1

RD

_CA

P_2

RD

_CA

P_k

LEN

GTH

_FW

_SE

T

FW_V

EN

DO

R

FW_C

AP_1

FW_C

AP_2

FW_C

AP

_l

LEN

GTH

_CO

MM

ON

_SE

T

CO

MM

ON

_CA

P_1

CO

MM

ON

_CA

P_2

CO

MM

ON

_CA

P_i

LEN

GTH

_CH

IP_S

ET

CH

IP_V

EN

DO

R

CH

IP_C

AP_

1

CH

IP_C

AP_

2

CH

IP_C

AP

_j

LEN

GTH

_RD

_SE

T

LMA

C_S

ET

RD

_VE

ND

OR

RD

_CA

P_1

RD

_CA

P_2

RD

_CA

P_k

LEN

GTH

_FW

_SE

T

FW_V

EN

DO

R

FW_C

AP_1

FW_C

AP_2

FW_C

AP

_l

Figure 103 MAX_CAP_MSG structure for N sets using enumerated mode

In the following table, each field of the message is described:

Field Name Length (in bytes)

Default Value

Description

MSG_TYPE 1 0x1 MAX_CAP_MSG message

#CAP_SET 1 1 Number of capabilities sets included in this message

LMAC_SET 6 - MAC address of the node that can perform the capabilities described in the message

LENGTH_COMMON 1 0 Length of the common capabilities section. Set to 0 until the common capabilites are determined by the protocol.

COMMON_CAP_i - - Common capabilities. To be determined.

LENGTH_CHIP 1 1 Number of bytes, excluding the LENGTH_CHIP field that are included in the CHIP section of the message

CHIP_VENDOR 1 - Chip vendor. To be determined.

CHIP_CAP_j - - Other Chip related capabilities (vendor dependent). To be

4-June-07 P1901_PRO_016_r0

Submission page 225 UPA-OPERA

determined.

LENGTH_RD 1 1 Number of bytes, excluding the LENGTH_RD field that are included in the REFERENCE DESIGN section of the message

RD_VENDOR 1 - Reference Design vendor. To be determined.

RD_CAP_k - - Other Reference Design related capabilities (vendor dependent). To be determined.

LENGTH_FW 1 1 Number of bytes, excluding the LENGTH_FW field that are included in the FIRMWARE section of the message

FW_VENDOR 1 - Firmware vendor. To be determined.

FW_CAP_l - - Other Firmware related capabilities (vendor dependent). To be determined.

Table 30 MAX_CAP_MSG message fields

In the following figure, an example of transmission of N sets of maximum capabilities using indexed scheme in all three sections is shown. It should be kept in mind that the indexed scheme can be set individually to each section and set, and that is applied only to the vendor dependent sections.

1 byte

MSG

_TY

PE

= 0x

1

#CA

PS

ET

= N

LEN

GTH

_CO

MM

ON

_SE

T

CO

MM

ON

_CA

P_1

CO

MM

ON

_CA

P_2

CO

MM

ON

_CAP

_i

LEN

GTH

_CH

IP_S

ET

CH

IP_V

EN

DO

R

CH

IP_V

ER

SIO

N

LEN

GTH

_RD

_SE

T

LMA

C_S

ET

RD

_VE

ND

OR

RD

_FA

MIL

Y

RD

_VE

RSI

ON

Maximum Capabilities of Set 1 Maximum Capabilities of Set N

LEN

GTH

_FW

_SE

T

FW_V

END

OR

FW_F

AMIL

Y

FW_V

ER

SIO

N

LEN

GTH

_CO

MM

ON

_SE

T

CO

MM

ON

_CA

P_1

CO

MM

ON

_CA

P_2

CO

MM

ON

_CAP

_i

LEN

GTH

_CH

IP_S

ET

CH

IP_V

EN

DO

R

CH

IP_V

ER

SIO

N

LEN

GTH

_RD

_SE

T

LMA

C_S

ET

RD

_VE

ND

OR

RD

_FA

MIL

Y

RD

_VE

RSI

ON

LEN

GTH

_FW

_SE

T

FW_V

END

OR

FW_F

AMIL

Y

FW_V

ER

SIO

N

Figure 104 Example of Maximum Capabilities exchange using the indexed shceme for every subsection

4-June-07 P1901_PRO_016_r0

Submission page 226 UPA-OPERA

RUN_CAP_MSG message

This message shall contain information about the capabilities that a node is running at that time. Additionally, by means of the MESSAGE_MODE field, a change of previous sent running capabilities can be indicated. Four are the supported message modes that apply only to a running capabilities set from a concrete node:

Info mode with ACK: Indicates that the following sections contain information about the maximum and running capabilities, and that an ACK is required for this message.

Info mode without ACK: Indicates that the following sections contain information about the maximum and running capabilities, and that NO ACK is required for this message.

Change Mode with ACK: Indicates that the running capabilities have changed and are sent in the following section. An ACK of this message is expected by the sender.

Change Mode without ACK: Indicates that the running capabilities have changed and are sent in the following section. No ACK of this message is expected by the sender.

The running capabilities are transmitted by means of a field that indicates what is the default value for the capabilities that are not included explicitly in this message (highest possible capability of the node or lower possible capability of the node), and several two fields groups where the first one is a reference to a capability in the NCT (including section and position) and the second field is the value related to this capability. The number of groups describing each of the running capabilities that are different from the default value shall be set in the NUM_RUN_CAP field.

If a value for a capability is longer than a byte, the same reference shall be sent followed by the first byte, then the same reference followed by the second byte and so on, up to complete the number of desired bytes for the capability value.

In the following figure it is shown an example of a Running Capability section carrying running capabilities from N nodes, where the first set contain an explicit description of three running capabilities and the Nth set contains a description of four running capabilities.

MSG

_TY

PE

= 0x

2

#CA

P_S

ET

= N

MSG

__M

OD

E

DE

F_M

OD

E

#RU

N_C

AP

CA

P_R

EF_

1

CAP

_VAL

UE_

1

CA

P_R

EF_

2

CAP

_VAL

UE_

2

CAP

_RE

F_i

CAP

_VA

LUE

_i

LMA

C_S

ET

MSG

__M

OD

E

DE

F_M

OD

E

#RU

N_C

AP

CA

P_R

EF_

1

CAP

_VAL

UE_

1

CA

P_R

EF_

2

CAP

_VAL

UE_

2

CAP

_RE

F_i

CAP

_VAL

UE_

1

LMA

C_S

ET

......

Figure 105 Example of Running Capability Section

4-June-07 P1901_PRO_016_r0

Submission page 227 UPA-OPERA

Field Name Length (in bytes)

Default Value

Description

MSG_TYPE 1 0x2 RUN_CAP_MSG message

#CAP_SET 1 1 Number of Running Capabilities individually described

LMAC_SET 6 - MAC address of the node that is performing the capabilities described in the message

MSG_MODE 1 0 0 – INFO message with ACK

1 – INFO message without ACK

2 – Change notification message with ACK

3 – Change notification message without ACK

DEF_MODE 1 0 0 – Highest Possible

1 – Lower Possible

#RUN_CAP 1 1 Number of running capabilities that will be described in this message

CAP_REF_i 1 0 Bits 1 to 0:

00 – Common Section

01 – Chip Section

10 – Reference Design Section

4-June-07 P1901_PRO_016_r0

Submission page 228 UPA-OPERA

11 – Firmware Section

Bits 7 to 2: Position of the capability in the section of the NCT

CAP_VALUE_i 1 - Value of the referenced capability

Table 31 RUN_CAP_MSG message fields

ACK_CAP_ANN message

MS

G_T

YP

E =

0x4

#CAP

_AC

K =

N

LMA

C_A

CK

_1

LMA

C_A

CK

_2

LMA

C_A

CK

_N

Figure 106 ACK_CAP_ANN message structure

The structure of the ACK_CAP_ANN message is very simple. It shall be composed by a first field, 1 byte wide, with the number of ACKs that composes the message, followed by the MAC addresses of the nodes whose capabilities have been received correctly.

Field Name Length (in bytes)

Default Value

Description

MSG_TYPE 1 0x4 ACK_CAP_ANN message

#CAP_ACK 1 1 Number of ACKs contained in the message

4-June-07 P1901_PRO_016_r0

Submission page 229 UPA-OPERA

LMAC_ACK_i 6 - MAC address of the node whose capabilities have been received corretly

Table 32 ACK_CAP_ANN message fields

NACK_CAP_ANN message

MS

G_T

YP

E =

0x8

#CA

P_N

AC

K =

N

LMA

C_N

AC

K_1

LMA

C_N

AC

K_2

LMA

C_N

ACK

_N

NA

CK

_SE

CTI

ON

_1

NA

CK

_SE

CTI

ON

_2

NA

CK

_SE

CTI

ON

_N

Figure 107 NACK_CAP_ANN message structure

The structure of the NACK_CAP_ANN message is very simple. It shall be composed by a first field, 1 byte wide, with the number of NACKs that composes the message, followed by the MAC addresses of the nodes whose capabilities have not been received correctly. After each LMAC field, the NACK_SECTION field, 1 byte wide, containing the section that has not been correctly decoded shall be included.

Field Name Length (in bytes)

Default Value

Description

MSG_TYPE 1 0x8 NACK_CAP_ANN message

#CAP_NACK 1 1 Number of NACKs contained in the message

LMAC_NACK_i 6 - MAC address of the node whose capabilities have NOT been received correctly

4-June-07 P1901_PRO_016_r0

Submission page 230 UPA-OPERA

NACK_SECTION_i 1 - Bit 0: if set to 1 means that CHIP section not correctly decoded.

Bit 1: if set to 1 means that REFERENCE DESIGN section not correctly decoded.

Bit 2: if set to 1 means that FIRMWARE section not correctly decoded.

Table 33 NACK_CAP_ANN message fields

Aggregated messages

In order to make the protocol more efficient, a message aggregation can be performed. It shall consist on changing the MSG_TYPE field code by the aggregation of up to three different messages types, as shown in Table 38. The order of the submessages in the final structure shall follow the scheme presented in the following figure, where some examples are proposed:

4-June-07 P1901_PRO_016_r0

Submission page 231 UPA-OPERA

1 byte

Figure 108 Agregated protocol messages and its MSG_TYPE codes

It must be stated that, in each of the submessages, the MSG_TYPE field shall be deprecated and substituted by the new MSG_TYPE content at the beginning of the resulting message.

Node Capability Table

The Node Capability Table shall be resident in each node and contains, indexed by MAC address, the maximum and running capabilities of each of the known nodes.

Each node shall contain a NCT per known node in the network, indexed by MAC address. This table shall contain four different sections each one with specific fields:

Common capabilities section

Chip section

Reference design

4-June-07 P1901_PRO_016_r0

Submission page 232 UPA-OPERA

Firmware

In each section, for each of the possible capabilities, two fields have to be filled. The first one shall be the maximum capability the node can perform. The second one shall be the real level of such capability that is performing at that time.

Common capabilities section

For the moment, this part of the table is empty, until the common capabilites are determined by the standard. The index shall be used to make a reference to a capability when transmitting the running capabilities as described in section 0.

Chip related fields

In the following table, the fields index, field name, length, default value and description, are presented. The index shall be used to make a reference to a capability when transmitting the running capabilities as described in section 0.

Index Field Name Length (in bits)

Default Value

Description

1 Chip Vendor 8 - Chip vendor. To be determined.

2 Chip Capability j - - Other Chip related capabilities (vendor dependent). To be determined.

Table 34 Chip related fields

Reference Design related fields

In the following table, the fields index, field name, length, default value and description, are presented. The index shall be used to make a reference to a capability when transmitting the running capabilities as described in section 0.

4-June-07 P1901_PRO_016_r0

Submission page 233 UPA-OPERA

Index Field Name Length (in bits)

Default Value

Description

1 RD Vendor 8 - Reference Design vendor. To be determined.

2 RD Capability k - - Other Reference Design related capabilities (vendor dependent). To be determined.

Table 35 Reference Design related fields

Firmware related fields

In the following table, the fields index, field name, length, default value and description, are presented. The index shall be used to make a reference to a capability when transmitting the running capabilities as described in section 0.

Index Field Name Length (in bits)

Default Value

Description

1 FW Vendor 8 - Firmware vendor. To be determined.

2 FW Capability l - - Other Firmware related capabilities (vendor dependent). To be determined.

Table 36 Firmware related fields

Performed Capability Table

4-June-07 P1901_PRO_016_r0

Submission page 234 UPA-OPERA

The PCT shall contain, for each possible capability, a value that indicates if the capability is performed or not, and the grade of functionality that is running at the time.

The PCT shall also be divided into four sections corresponding to the above mentioned groups of capabilities: Common, Chip, Reference Design and Firmware related.

The common capabilities section is empty until a decision on which capabilities must be considered common for all vendors is reached. The table is structured as follows:

Capability Section Index Value Default High Value

Default Low Value

Chip Vendor 1 - - -

Chip Capability j

2 - - -

Chip Related

RD Vendor 1 - - -

RD Capability k 2 - - -

RD Related

FW Vendor 1 - - -

FW Capability l 2 - - -

FW Related

Table 37 PCT values for the proposed capabilities

As the RUN_CAP_MSG is decoded, the position in the PCT shall be located using the CAP_RUN_REF field content, and then, the correspondent value shall be extracted from the following field called CAP_VALUE. After

4-June-07 P1901_PRO_016_r0

Submission page 235 UPA-OPERA

decoding all the pairs CAP_RUN_REF/CAP_VALUE, some entries in the value column of the PCT may be empty. Then, depending on the DEF_MODE, the capabilities shall be set to the default high or default low value.

An optimal implementation of both tables should reduce them up to a simple one, because both tables are indexed by MAC address and the capabilities are the same. They are presented separately for the sake of clarity.

Capabilities Exchange protocol stages and modes

Several capability publishing modes are available. They can be indicated using a local variable in each node (CAP_PUBLICATION_MODE ):

Single Node Publication: only the capabilities of the node that transmits the MAX_CAP_MSG(xxx) message shall be included in such message. CAP_PUBLICATION_MODE shall be set to 1.

All Known Nodes Publication: All the capabilities from every node known by the transmitter of the MAX_CAP_MSG(xxx) message, including their own capabilities, shall be included in the message. CAP_PUBLICATION_MODE shall be set to 2.

No Capability Publication: No MAX_CAP_MSG(xxx) message will be transmitted. CAP_PUBLICATION_MODE shall be set to 0. This mode should not be used.

The preferred mode should be the Single Node Publication because of its simplicity.

The Capabilities Exchange protocol shall start each time a new node is discovered and a data link is established with it. If the NCT related with such node is empty, or incomplete, then the message exchange shall begin. Otherwise, no operation shall be performed.

Packet format

The Port Solver protocol is extended to include the exchange of capabilities information.

Port Solver packet expansion

The Port Solver Message (PSM) is defined previously as follows:

4-June-07 P1901_PRO_016_r0

Submission page 236 UPA-OPERA

TPID

Des

t MAC

Src

MAC

TCI

Leng

th

0xA

A

0xA

A

0x3

0x00

0x13

0x9D

0x02

0x01

Sour

ce M

AC

Des

tinat

ion

MAC

Ass

igne

d LP

Info

Figure 109 Port Solver Message structure

The destination and source MAC addresses of the packets shall be filled as all the Port Solver messages: in the Dest MAC, the Spanning tree MAC (0x0180C2000000), and in the src MAC the MAC address of the node that originates the message.

The PSM message is extended to include also CapE messages. Therefore, it is used a special content for the INFO field. Then, if a node detects a PSM with an INFO field with the bits 1 to 4 set to something different from zero, it shall assume that the PSM includes also a CapE message.

The values of bits 1 to 4 of the INFO field and the message sent is shown in the following table:

Message INFO[4:1]

PSM without capabilities information 0x0

MAX_CAP_MSG 0x1

RUN_CAP_MSG 0x2

ACK_CAP_ANN 0x4

NACK_CAP_ANN 0x8

MAX_CAP_MSG+RUN_CAP_MSG 0x3

MAX_CAP_MSG+RUN_CAP_MSG+ACK_CAP_ANN 0x7

4-June-07 P1901_PRO_016_r0

Submission page 237 UPA-OPERA

MAX_CAP_MSG+RUN_CAP_MSG+ACK_CAP_ANN+NACK_CAP_ANN 0xF

MAX_CAP_MSG+ACK_CAP_ANN 0x5

MAX_CAP_MSG+ACK_CAP_ANN+ NACK_CAP_ANN 0xD

MAX_CAP_MSG+NACK_CAP_ANN 0x9

MAX_CAP_MSG+RUN_CAP_MSG+NACK_CAP_ANN 0xB

RUN_CAP_MSG+ACK_CAP_ANN 0x6

RUN_CAP_MSG+NACK_CAP_ANN 0xA

RUN_CAP_MSG+ACK_CAP_ANN+NACK_CAP_ANN 0xE

ACK_CAP_ANN+NACK_CAP_ANN 0xC

Table 38 Message type and content of bits 1-3 of INFO field in PSM

In case of composed messages, the order of each message in the final structure shall be, from left to right, the same as the shown in the table.

The INFO field shall remain as follows:

Figure 110 INFO field

Port Solver protocol flow expansion

First stage of the Capabilities Exchange protocol

4-June-07 P1901_PRO_016_r0

Submission page 238 UPA-OPERA

The Port Solver protocol is expanded repeating the ports information and including CapE information.

As a result, the Port Solver protocol becomes a more reliable port exchange method, due to the inclusion of an ACK for each trasaction.

Therefore, the message exchange shall be as the one shown in the following figures for the described cases:

4-June-07 P1901_PRO_016_r0

Submission page 239 UPA-OPERA

Figure 111 Compressed normal work using Port Solver Protocol. All indexes recognized.

Figure 112 Normal asynchronous work using PSM. All indexes recognized.

4-June-07 P1901_PRO_016_r0

Submission page 240 UPA-OPERA

Figure 113 Normal work using PSM. Some indexes not recognized.

4-June-07 P1901_PRO_016_r0

Submission page 241 UPA-OPERA

Figure 114 Normal work using PSM. Not all indexes recognized. MAX_CAP_MSG lost.

4-June-07 P1901_PRO_016_r0

Submission page 242 UPA-OPERA

Figure 115 Normal work. Not all indexes recognized. NACK_CAP_INDEX lost.

4-June-07 P1901_PRO_016_r0

Submission page 243 UPA-OPERA

Figure 116 Normal work. Not all indexes recognized. ACK_CAP_ANN lost.

4-June-07 P1901_PRO_016_r0

Submission page 244 UPA-OPERA

Figure 117 Compressed work using PSM. All indexes recognized. MAX_CAP_MSG+ACK_CAP_ANN lost.

Second stage of the Capabilities Exchange protocol

This second stage is asynchronous with the PSP messages, because it depends on when a node decides to change its running capabilities.

4-June-07 P1901_PRO_016_r0

Submission page 245 UPA-OPERA

The running capabilities message shall be the same as the one used in the first stage of the protocol, just repeating the previously negotiated ports in its content.

The RUN_CAP_MSG may expect or not an ACK from its destination, depending on the content of the MESSAGE_MODE field, as described in section 0.

When a broadcast destination address is used, a dummy port named 255, which will be ignored by the receiver, shall be set in the message.

The protocol behaviour in the case of RUN_CAP_MSG with an ACK required is described in the following figures:

4-June-07 P1901_PRO_016_r0

Submission page 246 UPA-OPERA

Figure 118 Running capabilities change and associated protocol. Normal mode.

4-June-07 P1901_PRO_016_r0

Submission page 247 UPA-OPERA

Figure 119 Running capabilities change and ACK_CAP_ANN loss

4-June-07 P1901_PRO_016_r0

Submission page 248 UPA-OPERA

Figure 120 Running capabilities change and RUN_CAP_MSG loss

Adding a new capability

To add a new capability, a new entry shall be added in the adequate NCT section and assigned to it a high and low default value, and an index. The index shall be formed by two bits that indicate the section where the new

4-June-07 P1901_PRO_016_r0

Submission page 249 UPA-OPERA

capabilitity is included (Common, Chip, Reference Design or Firmware) and a number that shall be consecutive to the last assigned. In the case of a capability that belongs to a vendor dependent section, it shall be the vendor who assigns a new index number to the new capability. In case of the common section, the new capabilities will be determined by the protocol.

In case the new capability needs more than one byte to inform about its status, this information shall be sent byte by byte with the uniqe filed index preceding each byte.

The new capability shall be sent in the same order that has been assigned in the NCT in the enumerated MAX_CAP_MSG(000) messages, and using its index and section in the RUN_CAP_MSG messages.

Cluster Discovery Protocol

The use of the Cluster Discovery Protocol (from here onwards, CDP) is limited to TDRs. Its use is not mandatory. The non-use of this protocol will result in the impossibility of its master to send non-returnable tokens.

A master must be able to determine if the nodes that are hanging from it may be divided in isolated clusters. In order to achieve this it is necessary for every alive node to transmit information in the upstream direction, in order to know which nodes are visible for each node. This is achieved through the Cluster Discovery Protocol. This protocol also gives information of the exact network topology.

CPEs are already sending the information regarding which nodes are visible with the periodic Announce Messages (see 9.1.4.4). They do not need to send any other information in the upstream.

However, a TDR X needs to send the following information to their masters:

List of nodes that are visible from X (this would be the same as the information in the periodic Announce Message sent by X);

List of nodes that belong to its BPL subtree: this includes CPEs and TDRs which are under the direct or indirect control of X;

List of nodes external to the BPL subtree of X that are visible from all the nodes belonging to its BPL subtree.

In order to transmit the information in points 2 and 3 the Cluster Discovery Protocol is used. This protocol simply consists in the periodic transmission from a TDR to its master of all this information. The information is recursive, because in order to form this packet, the TDR must have previously received the information from its slaves in order to include it.

The protocol will start in the first TDR (the one with only end-users hanging from it), once it has received at least one Periodic Announce Message from all of its slaves. The TDR will recollect this information, and send to its master a new packet. Every TDR in the chain will repeat this. Any TDR as well as the Head End might use the

4-June-07 P1901_PRO_016_r0

Submission page 250 UPA-OPERA

information received to determine that there are isolated clusters, and that it can perform spatial reuse by the use of the non-returnable token (see 4.4.2.9)

Cluster Discovery Protocol message format

The CDP Message is encapsulated using the CCP with Type0 0x0a and Type1 0x01 (Figure 102). The CDP packet will be sent through unicast port, as it is specifically addressed to the master node. The destination MAC will be the master node destination MAC.

Dest MAC Src MAC Payload

0xA

A0x

AA

Cluster Discovery Protocol Data

0x03

0x00

0x0A

Leng

th

0x13

0x9D

0x01

TPID

TCI

Figure 121 Cluster discovery packet format

The information can be fragmented in several packets (identified by a sub-table number) if the entries do not fit in one.

The CDP data fields are:

Bytes CDP data fields Length

0 Sub-table number 1 bytes

1 Number of sub-tables 1 bytes

2 Number of entries of the sub-table 1 byte

3 – 8 Sender MAC address 6 byte

9 Entry size (in bytes) 1 byte

10 - 521 Entries 512 bytes

4-June-07 P1901_PRO_016_r0

Submission page 251 UPA-OPERA

Maximum

Table 39 Cluster discovery packet fields

The Entries in the above table have the following format, although they could be extended:

Table 40 Cluster discovery entries

The Dependency field will be set to 1 if the corresponding MAC belongs to the same BPL subtree. Otherwise, it will be set to 0.

The Cluster Discovery Protocol packet shall be sent at least when changes in the topology and visibility are detected; nevertheless this information can be transmitted periodically.

To increase the packet intelligibility and to simplify the subsequent algorithms, the order of the entries in a sub-table and the order of sub-tables in the CDP packet are predetermined:

In a sub-table, all entries belonging to the same BPL subtree shall appear together and at the beginning of the sub-table, after them, there will be entries with only visibility dependency.

Every TDR shall place its sub-table at the beginning of the CDP packet and encapsulate the CDP packets received from other TDRs, slaves of its, without altering their sub-table order. There is no restriction in the order how the CDP packets received from TDRs belonging to the same hierchary level shall be encapsulated.

Connection Admission Control Protocol (CAC)

The Connection Admission Control Protocol Messages are sent whenever one or several new flow(s) register into the BPL network to reserve the type of traffic that should be assigned, and also when there are changes in the traffic requirements for any of the flows, so that new resources can be committed or released. If reservation parameters change during the duration of the current session, an update of the parameters is necessary.

There are six types of CAC messages:

CAC_Req : Request to the master for the desired resources.

Entry fields Length

MAC address 6 bytes

Dependency 1 byte

4-June-07 P1901_PRO_016_r0

Submission page 252 UPA-OPERA

CAC_Rsp ; Reponse from the master.

CAC_Chg ; Inform the master of a change in the allocated resources.

CAC_Chg_Rsp ; Contains the response to a CAC_Req.

CAC_Drp: Master or Repeater tells a node it shall cancel its reservation.

CAC_Stp: Inform the FMN that a traffic flow has stopped (thus that its resources can be freed).

Flow Master Node (FMN) is defined as the BPL node in charge of guarantee QoS requirement for a registered flow. All CAC_Req messages are transmitted from the source node which request flow to the BPL subcell master of the node. This request may be propagated to the HE, in this situation FMN of the requested flow will be network HE, or could be blocked by an intermediate node if this node decides to be the FMN of the requested flow.

Destination MAC address of CAC messages:

CAC_Req/CAC_Chg/CAC_Stp messages are transmitted by a BPL node and it shall be addressed to its BPL subcell master, these messages will be propagated in the network hop by hop until arrive to the FMN of the flow. These messages have as source MAC the MAC of the node that request the flow and as destination MAC the MAC of the BPL subcell master.

CAC_Rsp/CAC_Chg_Rsp/CAC_Drp messages are transmitted by the FMN in downstream to the node which request the flow. CCP source address will be the MAC of the FMN and the destination MAC, the address of the directly connected slave that is part of the requested flow.

CAC_Req

The CAC_Req message is transmitted to request QoS Resources to be committed in order to satisfy the agreed quality parameters. It may be originated from any node except network HE. There are two subtypes Slave CAC_Req and Master CAC_Req.

CAC_Req sequence is triggered by a CPE or Repeater node upon detection of a specific flow or statically after node configuration. A node requesting resources must trigger a CAC_Req sequence by sending a CAC_Req message to its master node. Master node then decides if can guarantee requested flow and can reply the request with a CAC_Rsp message, in this case Master node will become the FMN of the requested flow (the node that should guarantee flow requirements). In order to guarantee requested flow guarantees, FMN can trigger a new CAC_Req message to its master or use existing resources to guarantee the flow.

If a node decides to be the FMN of a specific user flow, it must be the FMN of the totality of flows for this user.

4-June-07 P1901_PRO_016_r0

Submission page 253 UPA-OPERA

A node that decides to be a FMN of a flow shall select a session ID for this flow and communicate this session ID to all the nodes that are part of the flow path using a CAC_Rsp message.

CAC_Req packet contains the list of traffic from one node requesting resources.

Figure 122 CAC Req Message

Information present in this packet (and in the reply) will be needed by any nodes present between the node requester and FMN.

Bytes CAC_Req data fields Length

0 Entry Length in bytes 1 byte

1 Num entries 1 byte

2- Num_entries*Entry_Length+2

CAC_Req Entry Field 19 bytes

Num_entries*Entry_Length+3 Num hop 1 byte

Num_entries*Entry_Length+4 - 9

Mac i 6 bytes

Mac i + 1 6 bytes

Table 41 CAC_Req Data Fields

NumHop : Initially set to 0, each node taking part of the path between the requester node and the FMN should increment this number and place its Mac in the locations reserved below. If NumHop reaches 255, no further increment is performed.

4-June-07 P1901_PRO_016_r0

Submission page 254 UPA-OPERA

Mac i : Macs of nodes taking part of the path from the requester node to the FMN. It is necessary to know the path to send the reply packet from the FMN to the requester node.

Data Field Description Size (Bytes)

Mac SrcReq MAC of the requester node 6

Mac DstReq MAC of the destination traffic flow

6

Request ID MAC source of the request and the request ID form a unique identifier of the request. If a CAC_Req message is lost but resource has been partially allocated in some nodes of the flow path, request should be resent again after a timeout (MAX_CAC_TO). Resources shall not be allocated again.

1

Service Class Service Class of the traffic flow

1

Latency

(ms)

Latency requirements of the flow

2

Bandwidth Bandwidth requested 2

Table 42 CAC_Req Message Entry Field

CAC_Rsp

4-June-07 P1901_PRO_016_r0

Submission page 255 UPA-OPERA

The CAC_Rsp message is transmitted by a FMN to accept or deny requested resources. This packet is sent by the master and is destined to the requester but will go down throughTDRs placed on the way (if they exist).

Figure 123 CAC Rsp Message

The CAC Reservation Response payload must have the following fields:

Bytes CAC_Rsp data fields Length

0 Entry Length in bytes 1 byte

1 Num entries 1 byte

2 - Num_entries*Entry_Length+2

CAC_Rsp Entry Field 19 bytes

Num_entries*Entry_Length+3 Num hop 1 byte

Num_entries*Entry_Length+4 - Num_entries*Entry_Length+9

Mac i 6 bytes

Mac i + 1 6 bytes

Table 43 CAC_Rsp Data Fields

4-June-07 P1901_PRO_016_r0

Submission page 256 UPA-OPERA

And each entry of CAC Reservation Response must have the following fields:

Data Field Description Size (Bytes)

Mac SrcReq MAC of the requester node 6

Mac DstReq MAC of the destination traffic flow

6

Ack Status (accepted or not) of the flow based on calculation of available bandwidth and bandwidth requested.

1

Session ID Session ID assigned to this flow. Used if Ack status is accepted.

1

Service Class Service Class of the traffic flow

1

Latency

(ms)

Latency assigned 2

Bandwidth Bandwidth assigned 2

Table 44 CAC_Rsp Message Entry Field

CAC_Chg

4-June-07 P1901_PRO_016_r0

Submission page 257 UPA-OPERA

CAC_Chg message must be used when:

A resource parameter has changed and the node has to communicate the change to its FMN.

If the FMN receives a Reservation Change from an open Session Id, it updates the resources requested, the FMN has to answer with a Reservation Change Confirmation Packet, indicating if the new resources requested are accepted or not. If the requester node does not receive the acknowledgement of the packet sent, when a timeout expires, it will send a new Reservation Change Packet.

Figure 124 CAC Change Message

The CAC Change payload must have the following fields:

Bytes CAC_Chg data fields Length

0 Entry Length in bytes 1 byte

1 Num Entries 1 byte

2 - Num_entries*Entry_Length+2

CAC_Chg Entry Field 3 bytes

Table 45 CAC_Chg Data Fields

4-June-07 P1901_PRO_016_r0

Submission page 258 UPA-OPERA

And each entry of CAC Change must have the following fields:

Data Field Description Size (Bytes)

Session ID Session ID assigned to this flow.

1

Latency Latency requirements of the flow

1

Bandwidth Bandwidth requested 1

Table 46 CAC_Chg Message Entry Field

CAC_Chg_Rsp

CAC_Chg_Rsp message is sent by the FMN of a flow to communicate if a flow has been correctly allocated.

Figure 125 CAC Change Response Message

The CAC Change payload must have the following fields:

4-June-07 P1901_PRO_016_r0

Submission page 259 UPA-OPERA

Bytes CAC_Chg_Rsp data fields Length

0 Entry Length in bytes 1 byte

1 Num Entries 1 byte

2 - Num_entries*Entry_Length+2

CAC_Chg Entry Field 3 bytes

Table 47 CAC_Chg_Rsp Data Fields

And each entry of CAC Change Response must have the following fields:

Data Field Description Size (Bytes)

Session ID Session ID assigned to this flow.

1

ACK Status (accepted or not) of the flow based on calculation of available bandwidth and bandwidth requested.

1

Latency Latency assigned 2

Bandwidth Bandwidth assigned 2

Table 48 CAC Chg Rsp Entry Fields

CAC_Drp

4-June-07 P1901_PRO_016_r0

Submission page 260 UPA-OPERA

In a congestion situation, the FMN has to deny resources even to an accepted Session Id. In this case, the FMN sends a Reservation Dropped Packet to indicate to a node that its traffic with the indicated Session Id has been dropped due to congestion.

Figure 126 CAC Drop Message

The CAC Drop payload must have the following fields:

Bytes CAC_Drp data fields Length

0 Entry Length in bytes 1 byte

1 Num Entries 1 byte

2 CAC Drp Entry Field 1 byte

Table 49 CAC_Drp Data Fields

And each entry of CAC Drop message must have the following fields:

Data Field Description Size (Bytes)

4-June-07 P1901_PRO_016_r0

Submission page 261 UPA-OPERA

Session ID Session ID assigned to this flow.

1

Table 50 CAC Drop Entry Fields

CAC_Stp

The reservation Stop must be used by requester nodes when:

The node doesn’t transmit a flow anymore and informs the FMN that the resources allocated to its Session Id can be freed.

The reservation Stop must be used by a node that is included in the flow path when:

It detect that requester node is no longer connected to the node.

CAC_Stp message doesn´t need to be confirmed by the FMN because requester node knows if FMN is trying to guarantee Session ID traffic (Node receives data tokens for this Session ID).In this case, node shall resend CAC_Stp message again after MAX_CAC_STP_TO time.

4-June-07 P1901_PRO_016_r0

Submission page 262 UPA-OPERA

Figure 127 CAC Stop Message

The CAC Stop payload must have the following fields:

Bytes CAC_Stp data fields Length

0 Entry Length in bytes 1 byte

1 Num Entries 1 byte

2 CAC Stp Entry Field 1 byte

Table 51 CAC Stp Data Fields

And each entry of CAC Stop message must have the following fields:

Data Field Description Size (Bytes)

Session ID Session ID assigned to this flow.

1

Table 52 CAC Stp Entry Fields

Connection Admission Control protocol scenarios.

4-June-07 P1901_PRO_016_r0

Submission page 263 UPA-OPERA

Figure 128 CAC Protocol Scenario 1

¡Error! No se encuentra el origen de la referencia. CPE Request resources to its direct master. REP node propagate CAC_Req message and the Network HE becomes the FMN of the flow. A session ID will be assigned by the HE to the flow in all the flow path.

Figure 129 CAC Protocol Scenario 2

¡Error! No se encuentra el origen de la referencia. REP node receives a CAC_Req message from a CPE. REP node decides to be the FMN of this flow because it has enough resources. CAC_Req message shall not be propagated to the HE.

4-June-07 P1901_PRO_016_r0

Submission page 264 UPA-OPERA

Figure 130 CAC Protocol Scenario 3

¡Error! No se encuentra el origen de la referencia. depicts a scenario where a CAC_Req packet does not reach the TDR, it is lost. After a MAX_CAC_TO time-out, the CAC_Req packet will be resent.

4-June-07 P1901_PRO_016_r0

Submission page 265 UPA-OPERA

CPE TDR HE

CAC_Req

CAC_Req

MA

X_C

AC

_TO

CAC_Rsp

CAC_Rsp

CAC_Req

CAC_Rsp

Figure 131 CAC Protocol Scenario 4

Figure 131 Resources are partially allocated for a session ID. CAC_Req message shall be resent after MAX_CAC_TO timeout but REP shall not resend it because REP resources have been allocated previously, and TDREP must send the CAC_Rsp with the session_id to the node

4-June-07 P1901_PRO_016_r0

Submission page 266 UPA-OPERA

CPE TDR HE

CAC_Req

CAC_Req

CAC_Rsp

CAC_Rsp

CAC_Stp

CAC_Stp

Figure 132 CAC Protocol Scenario 5

Figure 132 Resources may be freed using CAC_Stp message. Message shall be propagated to FMN.

4-June-07 P1901_PRO_016_r0

Submission page 267 UPA-OPERA

CPE TDR HE

CAC_Req

CAC_Req

CAC_Rsp

CAC_Rsp

CAC_Stp

CAC_Stp

CAC_Stp

MAX

_CAC

_STP

_TO

Figure 133 CAC Protocol Scenario 6

Figure 133 Resources may be freed using CAC_Stp message. If Message CAC_Stp is lost. message shall be resent after MAC_CAC_STP_TO time if node is still receiving requested resource.

4-June-07 P1901_PRO_016_r0

Submission page 268 UPA-OPERA

CPE TDR HE

CAC_Req

CAC_Req

CAC_Rsp

CAC_Rsp

CAC_Stp

TDR detect CPE is disconnected

Figure 134 CAC Protocol Scenario 7

Figure 134 REP node detect a node is no longer connected. It shall free all resources allocated for the node subcell.

4-June-07 P1901_PRO_016_r0

Submission page 269 UPA-OPERA

CPE TDR HE

CAC_Req

CAC_Req

CAC_Rsp

CAC_Rsp

CAC_Drp

CAC_Drp

Figure 135 CAC Protocol Scenario 8

Figure 135 FMN are not able to guarantee all the resources allocated. It chooses less service class flow and sends a CAC_Drp message to inform the requester node that this flow can not be guarantee.

4-June-07 P1901_PRO_016_r0

Submission page 270 UPA-OPERA

CPE TDR HE

CAC_Req

CAC_Req

CAC_Rsp

CAC_Rsp

CAC_Drp

CAC_Drp

MAX

_CAC

_DR

P_TO

Figure 136 CAC Protocol Scenario 9

Figure 136 CAC_Drp message is lost. CPE node will deregister flow after MAX_CAC_DRP_TO time without receiving the resource (Tokens with a register Session ID).

Automatic Management of Crosstalks between not Synchronized Systems

This section describes a mechanism to avoid crosstalk that may be implemented but is not mandatory.

Once the nodes realize that there is more than one master in the channel by means of the Master Id (see 4.4.1), it is necessary to take some measures to avoid such interferences.

The solution is to coordinate both BPL cells, and the simplest way to do it is subordinate one of the BPL cells. Next, the algorithm is explained:

MID hierarchy

When the crosstalk is detected, then the nodes must decide which BPL cell must subordinate.

4-June-07 P1901_PRO_016_r0

Submission page 271 UPA-OPERA

The rule shall be “the lowest MID, the best”, analyzing the MID as a number.

Then, one of the nodes of the worse BPL cell will register in the neighbor network using the Access Protocol, and it will act as master of its BPL cell, distributing the token.

If one node does not perform this protocol it does not copy the MID inherited from its master, instead it fixes the local MID to one of these values:

0x1FFFFF. Nodes that have not completed the Access Protocol.

0x130001. Nodes that have finished the Access Protocol.

Border node designation

The border node is the modem that will act as a bridge between the networks passing the token.

Once the interference is detected, the network with higher MID must decide which node within the BPL cell, will perform registration.

Designation Rules

The master will select the Border Node with the following criteria:

Less hops, higher priority. This is, if the interference is detected by several nodes, the HE has preference over the rest of the nodes; next TDRs placed one hop away; next repeaters with two hops, etc.

CPEs do not perform this protocol, only HEs and TDRs do. A node that detects only a CPE of a neighbor BPL cell does not apply for becoming border node.

Notification protocol

To centralize the decision, the HE of the BPL cell decides which node will perform negotiation, interchanging CCP packets. Since the interference will not be detected by all the nodes simultaneously, a guard time may be kept before designating the border node in order to know all the information.

If any node detects the interference (sniffing a better MID), it transmits an Interference Detection Packet (IDP), containing the own MAC, the neighbor MAC sniffed, the MID sniffed, the local number of hops and the identity of the node detected (HE or TDR). When the packet is received by a node, it has to check if is coming from one of its slaves, then the information is copied and retransmitted to its master, then the packet will arrive finally to the HE of the BPL cell. To avoid flooding the network, the IDPs have to be sent with a minimum period of 10 seconds

4-June-07 P1901_PRO_016_r0

Submission page 272 UPA-OPERA

between them, except if the node detects a better node to register to, this is new information that has to be transmitted immediately (for instance a node reported that was detecting a TDR but afterwards detects a HE, or another MID better than the transmitted one).

Among all the IDPs received, the HE decides which node must become border node sending a Border Node Designation Packet (BNDP), containing the MAC of the Border Node. This is a broadcast packet that has to be relayed by all the nodes of the network because the destination might be several hops away from the master. When the packet is received by a node coming from its master and it is not the designated border node, it has to built a new BNDP to notify its slaves (only for TDR with at least one slave).

The designated border node must send a Border Node Designation Acknowledge (BNDA), to confirm that the information has been received, and it is transmitted towards the master in the same way than the IDP. The BNDA must be received by the HE in a specific period of time (5 seconds). If the time expires a new BNDA to the same node is delivered. After 3 consecutive timeouts not receiving the BNDA, a new node (if exists) must be designated as Border Node.

Crosstalk Management Frames Format

IDP

The IDP Message is encapsulated using the CCP with Type0 0x0b and Type1 0x01 (Figure 137).

Dest MAC Src MAC Payload

0xA

A0x

AA

IDP Data

0x03

0x00

0x0B

Leng

th

0x13

0x9D

0x01

TPID

TCI

Figure 137 IDP Packet

The packet is sent using the broadcast port (127). The value of the packet fields shall be:

Dest MAC is set 0x0180C2000000.

Src MAC is set to the local MAC address.

The IDP data fields are:

4-June-07 P1901_PRO_016_r0

Submission page 273 UPA-OPERA

Bytes IDP data fields Length

0-5 Sender MAC address 6 bytes

6-11 Sniffed MAC address 6 bytes

12-14 MID sniffed 3 bytes

15 Local Number of hops 1 byte

16 Type of Node sniffed 1 byte

Table 53 Interference detection packet fields

In the Local Number of hops field, a value of 255 hops means 255 or more hops.

The field Type of Node contains the same information allocated in the Token Announce (although announce the detection of a slave is forbidden by the protocol).

0 HE

1 CPE

2 TDR

Table 54 Type of node in IDP

BNDP

The BNDP Message is encapsulated using the CCP with Type0 0x0b and Type1 0x02 (Figure 138).

4-June-07 P1901_PRO_016_r0

Submission page 274 UPA-OPERA

Dest MAC Src MAC Payload

0xA

A0x

AA

BNDP Data

0x03

0x00

0x0B

Leng

th

0x13

0x9D

0x02

TPID

TCI

Figure 138 BNDP Packet

The packet is sent using the broadcast port (127). The value of the packet fields shall be:

Dest MAC is set 0x0180C2000000.

Src MAC is set to the local MAC address.

The BNDP data fields are:

Bytes BNDP data fields Length

0-5 Border Node MAC address 6 bytes

Table 55 BNDP packet fields

BNDA

The BNDA Message is encapsulated using the CCP with type 0x0b and subtype 0x03 (Figure 139).

Dest MAC Src MAC Payload

0xA

A0x

AA

BNDA Data

0x03

0x00

0x0B

Leng

th

0x13

0x9D

0x03

TPID

TCI

4-June-07 P1901_PRO_016_r0

Submission page 275 UPA-OPERA

Figure 139 BNDA Packet

The packet is sent using the broadcast port (127). The value of the packet fields shall be:

Dest MAC is set 0x0180C2000000.

Src MAC is set to the local MAC address.

The BNDA data fields are:

Bytes BNDA data fields Length

0-5 Border Node MAC address 6 bytes

Table 56 BNDA packet fields

Border node registration

Once the border node is designated by the HE (can be itself), it starts its attempt for registration in the neighbor BPL cell as it is described in the Access Protocol.

Master selection

The border node will select the master to register based in the following criteria:

First HE (of the neighbor BPL cell)

Second repeaters.

Successful registration

If the modem succeeds, as it has changed BPL cell it copies the MID of its new BPL cell, in this way any node knows that the node is token dependant from the neighbor network.

4-June-07 P1901_PRO_016_r0

Submission page 276 UPA-OPERA

A node performing the registration in the neighbor BPL cell will have a MID different and it will be different from 0x1FFFFF and 0x130001. Under these conditions the node must be accepted avoiding any authentication process, also the master node knows that is not a node from its network and must avoid transmit any data through the BPL port.

Failing registration

The maximum time specified for the registration of the border node is 120 seconds

When the timer expires, the HE has to select a new border node to complete negotiation. The HE is the node that monitories the registration timer, in this way no new packets are needed, even if the border node designated is switched off the HE restarts the protocol by itself.

The formerly designated border node has to activate the registration timer like the master and when the timer expires it assumes that it is not border node anymore until a new BNDP is received.

Intermittent transmission

To perform successfully the negotiation among BPL cells it is necessary to get free interference periods, because the transmissions within the own BPL cell will ruin the registration.

A HE can decide by itself to stop the transmissions within its network avoiding new token generation, but any other node cannot because its master will regenerate the token.

When the HE receives a BNDA it starts a period so called “INTERMITTENT TRANSMISSION” [IT].

During the status of Border Node a modem can generate as many BNDAs as needed to complete the negotiation.

The default silence time 2 sec, followed by a normal transmission period of 1 sec. It will have 5 silence periods. So the overall IT will last 15 seconds.

SPANNING TREE

In a network, a spanning tree is a path or collection of paths that represent connections between nodes. To be called a spanning tree, the tree must cover every possible path in a network. A minimal spanning tree is one that covers all possible paths, does so with as few segments as possible, and makes sure there are no loops (closed paths) in the network.

The IEEE 802.1 recommendations provide an algorithm for finding a spanning tree in any network.

4-June-07 P1901_PRO_016_r0

Submission page 277 UPA-OPERA

STP packets will be transmitted through the corresponding unicast ports.

IEEE 802.1D (Spanning Tree Protocol)

The 802.1D recommendation describes the Spanning Tree algorithm and protocol. In this document, the calculation of the tree elements and the messages exchanged between bridges for this purpose are exposed. This specification is fully compliant with this standard.

The implementation of IEEE 802.1D is a must for network compatibility.

For specific information on message types and their fields and the algorithm to handle them, refer to IEEE Std 802.1 and IEEE Std 802.1D (Spanning Tree).

Ports can be Ethernet or BPL. Every new BPL connection is added to the bridge as a new port. Ports can be deleted when the BPL connection is lost for some physical reason. Some ports, such as Ethernet ports, are always present. Each port carries out the STP.

Default timers and field values

The IEEE recommendation is relatively flexible in some aspects, such as default timer values and other message fields, so that they can be tuned for different network sizes and Medium Access technologies. The values adopted by this specification for these parameters are:

hello: time between each BPDU that is sent on a port.

Default: 2 seconds

Range: [1, 10] seconds

forward delay: time spent in the listening and learning states.

Default: 15 seconds

Range: [4, 30] seconds

max age: maximum length of time a bridge port saves its configuration.

Default: 20 seconds

4-June-07 P1901_PRO_016_r0

Submission page 278 UPA-OPERA

Range: [6, 40] seconds

Priority: The greater the number, the less priority.

MV Master 0x9010

MV Repeater 0x9020

LV Master 0x9030

LV Repeater 0x9040

LV Slave 0x9050

Table 57 STP priority

IEEE 802.1w (Rapid STP)

Rapid Spanning Tree Protocol (RSTP; IEEE 802.1w) is an amendment to 802.1D. This version offers a significant reduction in the time taken to reconfigure the active topology of the Bridged LAN in the face of changes to the physical topology or its configuration parameters. The strategy to reach this performance is based on a handshake mechanism between bridges that enables a fast transition to forwarding, thus bypassing the listening and learning states and timers.

The two versions of the algorithm and protocol are capable of interoperating within the same Bridged LAN; hence, it is not necessary for implementations to support both versions of the Spanning Tree algorithm and protocol.

In view of the improved performance offered, it is recommended that the Rapid Spanning Tree algorithm and Protocol be supported in preference to the original version.

For specific information on message types and their format, the migration protocol and the RSTP algorithm, refer to IEEE Std 802.1D, 1998 Edition; Clause 17 (Rapid Spanning Tree Algorithm and Protocol), also found as 802.1w.

Default timers and field values

migration delay (mdelay): indicates that the protocol migration is ongoing. It is used to avoid re-entry. If any BPDU of the other type is received while mdelay is running, it is ignored in terms of protocol migration. mdelay is set to 3 seconds.

4-June-07 P1901_PRO_016_r0

Submission page 279 UPA-OPERA

Point-to-point ports and edge ports

In order to achieve fast convergence on a port, the protocol relies upon two new variables: edge ports and link type.

All BPL ports can be assumed to be point-to-point ports. Ethernet ports can be considered edge ports, unless another bridge is connected to the same segment. Anyway, since the standard establishes that the first BPDU coming into an edge port removes its edge port status, it can be assumed at startup that all ports are candidate to directly transition to forwarding:

Ethernet ports start in forwarding state (edge ports).

BPL ports, even though they start in blocking state, are ready for handshake and rapid transition to forwarding (point-to-point).

STP and VLANs

If VLANs are active, STP packets must use the management VLAN inside the power-line network.

Common STP

Ethernet interfaces must support the possibility of being configured to remove/add the VLAN tag to the outgoing/incoming STP packets. That is, the VLAN tag of the STP packets going out the BPL network is removed. On the other hand, VLAN tag must be added to the incoming STP packets, so as to make sure that STP packets inside the power-line network use the management VLAN.

10 SECURITY

10.1 LOW LEVEL ENCRYPTION AND INTEGRITY

10.1.1 Overview

Encryption and Integrity are two key features needed by any communication device to guarantee security and privacy in the message exchange.

For encryption IEEE P1901 uses as basic building block the Advanced Encryption Standard (AES) according to FIPS-97(2002).

AES is a block cipher algorithm while higher layers have to deal with variable length packets. To be able to encrypt these variable length packets IEEE P1901 uses the operation mode known as Counter Mode (CTR) defined in

4-June-07 P1901_PRO_016_r0

Submission page 280 UPA-OPERA

NIST800-38A “Recommendations for Block Cipher Modes of Operation. Methods and Techniques”. By the use of CTR IEEE P1901 achieves confidentiality for messages of arbitrary length.

Nevertheless it is still necessary to provide message integrity against tampering. For this purpose IEEE P1901 uses the operation mode known as CCM (Counter with CBC-MAC (Message Authentication Check)) that avoids the use of a separate mechanism for providing message integrity. CCM mode of operation combines CTR mode of encryption with the CBC-MAC mode of authentication. CCM is defined in RFC 3610 and has been used and studied for a long time and has well-understood cryptographic properties. The interesting point is that the same encryption key can be used for both processes in conjunction with other parameters, thus leading, in effect, to two separated keys.

CCM is only defined for 128-bit block ciphers and, though it is a generic mode applicable to any many ciphers, in IETF RFC3610 it is defined for use with 128-bit AES.

CCM has two parameters (M and L). M indicates the length of the MIC (Message Integrity Check) and L indicates the length of the message itself. For the selected algorithm M is equal to 4 (thus indicating that the Message Integrity Check (MIC) produced is 4 bytes long) and L is equal to 2 (thus indicating that the length of the message is at most 2^16 bytes as is exactly the maximum length of a burst).

Encryption and Integrity are both based on AES blocks and needs a different initialization variables and modes to work. The information about the initial state for desencryption and integrity check is transported in the CCMP Header.

Encryption and Integrity are applied when the burst is set as encrypted and over each one of the packets or packet fragments inside the burst payload independently, but using the common initial state contained in the CCMP Header, that is transmitted only once each burst at the beginning of the payload.

Each MIC is calculated over the Burst Header, CCMP Header, the Interpacket Header added by the LLC layer and the packet or fragment of a packet including the padding, and then appended to this structure, althought Burst Header and CCMP Header are only transmitted once at the beginning of the Burst.

The encryption algorithm is also applied in a fragment packet or packet basis. Burst Header, CCMP Header and Interpacket Headers shall be sent in clear, and the encryption is applied over the fragment packet or packet including its padding and the appended MIC.

10.1.2 Detailed encryption process

As has been described before, Encryption and Integrity algorithms are applied in a packet or fragment of packet basis, but using common initial state information for each Burst contained in the CCMP Header.

4-June-07 P1901_PRO_016_r0

Submission page 281 UPA-OPERA

The Crypto bit, located at the byte 15, 6th bit of the Burst Header, when set to 1, indicates that encryption is used in this Burst. Therefore, the CCMP header is appended after the Burst Header and the MIC is placed after each fragment of packet or packet, including its padding. Each MIC will be calculated over the Burst Header, CCMP Header (structures that are common for all MIC calculations inside the same Burst), Interpacket Header and the fragment packet or packet including its padding.

Although for the calculation of each MIC Burst Header and CCMP Header are taken into account, these fields shall be transmitted only once per Burst.

Each one of the generated MICs and its correspondent fragment packet or packet including its padding shall be encrypted using the CTR AES algorithm.

In the following figure an Encrypted Burst construction is depicted:

PAD

DIN

G

PA

DD

ING

PA

DD

ING

Figure 140: Construction of an Encrypted Burst

The CCMP header is inserted between Burst Header and the first Interpacket Header and it is not to be encrypted although shall be protected by every MIC. A representation of the CCMP header is shown in Figure 141. It shall contain the following fields:

- Packet Number (PN) - 48 bits. Packets or segment of packets are numbered by the use of a PN. The PN is incremented by a positive number at each successive packet or fragment of a packet transmission. PN shall never repeat for a series of encrypted packets using the same temporal key. PN provides replay protection and enables the receiver to derive the value of the nonce that was used in the encryption and integrity algorithms.PN is represented as an array of 6 octets. PN5 is the most significant octet of the PN, and PN0 is

4-June-07 P1901_PRO_016_r0

Submission page 282 UPA-OPERA

the least significant. The Packet Number sent in the CCMP Header is the one correspondent to the first packet or fragment of a packet sent in the Burst.

- Rsvd – 8 bits. Reserved bits set to 0 and ignored on reception.

- KeyID - 8 bits. 5 bits are reserved and set to 0. Bit 5 is set to 1. Bits 6–7 of the Key ID octet are for the Key ID subfield. The Key ID subfield allows for operating with different keys.

The CCMP Header shall be the following structure:

PN0 PN1 Rsvd KeyID PN2 PN3 PN4 PN5

Rsvd 1 KeyID

1 byte

1 bit

b0 b4 b5 b6 b7

Figure 141: CCMP Header Structure

CCM requires for encryption and message integrity checking, an unique Nonce value, a number which never repeats during a given life time, for each packet protected by a given temporal key. CCM requires a fresh temporal key for every session.

The PN is combined with other fields to produce a 13-octet long Nonce as corresponds to setting the parameter L to 2 as indicated in IETF RFC 3610. This Nonce is represented in Figure 142.

4-June-07 P1901_PRO_016_r0

Submission page 283 UPA-OPERA

Figure 142: Nonce Structure

The Nonce shall be the following fields:

- Nonce priority – 8 bits. This field is different from the priority field in the burst header and is for future capability. The Nonce Priority Octet field shall be 0 and is reserved for future use.

- Source Address – 48 bits. It is taken from the MAC address of the transmitter included in the Token Announce (Section 4.4.1).

- PN – 48 bits. It is calculated adding to the PN of the CCMP Header the number of the first packet or fragment of packet of the Burst minus one.

This Nonce is used to produce two 128-bit words: B0 and A0 (IETF RFC 3610 and NIST 800-38c).

The initial CCMP block B0 (128-bit block), needed for the calculation of the MIC, has the following fields:

- Flag B0 – 8 bits. Fix content (IETF RFC 3610 and and NIST 800-38c). It indicates that the MIC is 32 bits long. See Table 58.

- Nonce – 104 bits. See Figure 142

- DLen – 16 bits. Length in bytes of the data to be encrypted. The DLen is the taken from the Length field of the Inter Packet Header (Figure 58).

4-June-07 P1901_PRO_016_r0

Submission page 284 UPA-OPERA

Figure 143: CCM Block B0 used for MIC calculation

The initial counter block A0 (128-bit block), needed for the encryption process, has the following fields:

- Flag A0 – 8 bits. Fix content (IETF RFC 3610 and and NIST 800-38c). See Table 1.

- Nonce – 104 bits. See Figure 142.

- Counter – 16 bits. Counter that starts at the value of one at the beginning of the encryption process and is incremented for each encrypted 128-bit block.

Priority Source Address PN

6 bytes 6 bytes

104 bits Nonce

1 byte

FlagA0

1 byte

Counter

2 bytes

Figure 144: Counter Block A0 used to initialize the encryption

FlagsA0 and FlagsB0 are 8-bit words with a fix contents (IETF RFC 3610 and and NIST 800-38c) as indicated as follows.

Bit Number Contents of Flag A0 Contents of Flag B0

7 Reserved (Always 0) Reserved (Always 0)

6 Reserved (Always 0) 1

5-3 0 (M-2)/2 (001)

2-0 L-1 (001) L-1 (001)

4-June-07 P1901_PRO_016_r0

Submission page 285 UPA-OPERA

Table 58: Flag A0 and B0 Contents

The Burst Header, CCMP header and Interpacket Headers shall be transmitted unencrypted. In the calculation of each MIC, the Burst Header plus the CCMP header and the Interpacket Header are more than 128 bits long. Because of this fact, it is necessary, for the proper calculation of the first MIC, to add some padding at the end of the Interpacket Header to get three 128-bit blocks. The padding bits shall not be transmitted. This padding is only used for MIC calculation. Padding bits are not used for encryption. The procedure is shown in Figure 145.

Figure 145: Encryption and Integrity process for the first packet

In the case of the second and subsequent packets, the MIC calculation shall remain the same, but in the encryption, the Burst Header and CCMP Header will not be included in the resulting Encrypted message. The padding bits shall not be transmitted. This padding is only used for MIC calculation. Padding bits are not used for encryption. The procedure is shown in Figure 146.

4-June-07 P1901_PRO_016_r0

Submission page 286 UPA-OPERA

Figure 146: Encryption and Integrity process for all but the first packet

The MIC is computed in both cases using CBC-MAC, which encrypts a starting block B0 and then successively XORs subsequent blocks and encrypts the result. Although the result is a MIC of 128 bits, the lower 96 bits are discarded, and a final 32-bit MIC is obtained.

Once the MIC has been computed and appended to the plaintext data, the encryption takes place using Counter Mode (CTR).

10.2 AAA protocol

In section 9.1.3 the access method used in IEEE P1901 has been described. Nevertheless, for the sake of security, section 9.1.3 is to be complemented with the AAA protocol that is described in the present section.

The access and authentication control system of IEEE P1901 follows closely the one described in IEEE802.1X which in turn relies on the Extensible Authentication Protocol (EAP) [RFC3748] over LAN (EAPOL). IEEE802.1X provides the description of EAPOL.

The purpose of IEEE 802.1X is to implement access control at the point at which a user joins the network. In the process of application of IEEE 802.1X the network entities can take one of three roles: Supplicant, Authenticator and Authentication Server (AS).

The device asking for connection to the network is known as the Supplicant and in IEEE P1901 can be either a CPE or a TDR. The Authenticator can be either the HE or a TDR. The Authentication Server will normally be centralized.

The IEEE 802.1X access control mechanisms apply to the association between a CPE or TDR and a Master.

4-June-07 P1901_PRO_016_r0

Submission page 287 UPA-OPERA

In IEEE 802.1X an access and authentication dialog is defined for the case of authenticator initiated exchange. This dialog is formed by the following sequence of messages:

• Message A: Authenticator to Supplicant

o EAPOL with Code field: Request (1) and Type field: Identity (1)

• Message B: Supplicant to Authenticator

o EAPOL with Code field: Response (2) and Type field: Identity (1)

• Message C: Authenticator to Supplicant

o EAPOL with Code field: Request (1) and Type field: Challenge (4)

• Message D: Supplicant to Authenticator

o EAPOL with Code field: Response (2) and Type field: Challenge (4)

• Message E: Authenticator to Supplicant

o EAPOL with Code field: Success (3) or Failure (4)

In IEEE P1901 Message A of the previous dialog should be implemented by the use of the Access Frame described in section 4.3.8., Message B should be implemented by the use of the Access Reply Frame described in section 4.3.9 and Message E should be implemented by the use of the Access Protocol Packet described in section 9.1.3.

Messages C and D serve for the purpose of authentication. With message C the Authenticator sends a random challenge of 16 octets to the Supplicant and message D is the response of the Supplicant to this challenge. This Response is a 16-octet MD5 hash calculated over the random challenge and the secret shared by the Supplicant and the Authentication Server and other fields [RFC 2865]. This secret should be the Serial Number of the Supplicant.

IEEE 802.1X states that “The EAPOL encapsulation used with IEEE802.3/Ethernet can be applied to other LAN technologies that share the same basic frame format as Ethernet” as is the case of IEEE P1901 technology. As a consequence, the format of Messages C and D in IEEE P1901, which follows the rules of EAPOL packets, are encapsulated in CLPDUs. The formats are the following:

4-June-07 P1901_PRO_016_r0

Submission page 288 UPA-OPERA

Description Nr. Of octets Contents

PAE Ethernet Type 2 0x88-8E

EAPOL Protocol Version 1 0x02

Packet Body Length 2 0x007F

Code 1 Message C: Request (1)Message D: Response (2)

Identifier 1 Requests must modify the IdentifierResponses must match them

Length in octets 2 0x007F

Type 1 Default: 0x04 (MD5 Challenge)Open to other hash functions

Value size 1 Default: 0x10

Value Default: 16

Message C: Random NumberMessage D: Hash

Pac

ket B

ody

Table 59: Message C and D format

This content is included in the payload of a CCP packet.

All of the previous messages, except for Message A, have to be transferred from the Authenticator to the AS or the other way around. This transfer is done in IEEE P1901 by the use of EAP over Radius [RFC 3579] although Radius as a server [RFC2865] does not form part of this specification.

The Format of the EAP over Radius messages follows completely the standard [ RFC2865] [RFC3579].

The IEEE P1901 Access Reply Frame is converted into a “Radius Access-Request/EAP” packet. From the Access Reply Frame the Authenticator creates a standardized EAP-Response /Identity packet and encapsulates it within a RADIUS Access-Request packet.

4-June-07 P1901_PRO_016_r0

Submission page 289 UPA-OPERA

The format of this EAP-Response/Identity packet to be encapsulated in the RADIUS Access-Request is the already indicated for Messages C and D but the Packet Body is the following:

Description Nr. Of octets Contents

Code 1 Response (0x02)

Identifier 1 Requests must modify the IdentifierResponses must match them

Length in octets 2 0x000C

Type 1 0x01 (Identity)

Value size 1 0x06

Value 6 MAC Address of the supplicant

Pac

ket B

ody

Table 60: Packet Body Format for EAP-Response/Identity packet fro messages C and D

The Response to the previous message by the AS is an “Access-Challenge/EAP” packet which the authenticator will convert into Message C for transmission to the Supplicant just decapsulating it.

Message D (EAP-Response/Challenge) shall be encapsulated by the Authenticator into a RADIUS Access-Request/EAP.

And the response to the previous message will be a “Radius Access-Accept (or Reject)/EAP” packet which the authenticator will convert into Message E for transmission to the Supplicant by forming an IEEE P1901 “Access Protocol Packet” as indicated in section 9.1.3, which has also the possibility to signal “Failed” besides Accept or Reject. This would happen in case of failure of the dialog between the Authenticator and the Authentication Server.

The Format of the RADIUS packet encapsulating an EAP message is the following [RFC2865]:

4-June-07 P1901_PRO_016_r0

Submission page 290 UPA-OPERA

Attr

ibut

eA

ttrib

ute

Table 61: RADIUS packet encapsulating an EAP message

In the case of Radius Access-Request/EAP packet it is necessary to add to the previous message structure the following Attributes:

4-June-07 P1901_PRO_016_r0

Submission page 291 UPA-OPERA

Attr

ibut

eA

ttrib

ute

Attr

ibut

e

Table 62: RADIUS Access-request/EAP Attributes

The User Name Attribute must be sent even if the String is already included in the EAP Attribute. This last Attribute must [RFC3579 ]also be included in the Access-Accept.

Exactly one RADIUS packet is encapsulated in the UDP Data field, where the UDP Destination Port field indicates 1812 (decimal). When a reply is generated, the source and destination ports are reversed.

Figure 147 is a representation of the access and authentication dialog used in IEEE P1901.

4-June-07 P1901_PRO_016_r0

Submission page 292 UPA-OPERA

Figure 147: Representation of the access and authentication dialog used in IEEE P1901.

At the end of the dialog the Supplicant is already authenticated but the keys for encryption and for integrity checking are still not established. This is the subject of the next section.

10.3 Key Hierarchies

There are two key hierarchies in IEEE P1901: Pairwise Key Hierarchy and Group Key Hierarchy.

It is assumed that there is a Pairwise Master Key (PMK) that is assumed to be in possession of the Supplicant and the Authenticator by some “out of band means” and which distribution is not the subject of this specification, and a Group Master Key (GMK) which is generated at random by the HE or by some other higher level entity.

From the PMK the following temporal keys are derived for use in conjunction with the AES-CCMP algorithm:

- Data Encryption/Integrity key (128 bits)

- EAPOL-Key Encryption key (128 bits)

4-June-07 P1901_PRO_016_r0

Submission page 293 UPA-OPERA

- EAPOL-Key Integrity key (128 bits)

From the GMK the following temporal key is derived:

- Group Encryption/Integrity key (128 bits)

The EAPOL keys are used to protect key handshakes.

These hierarchies are conformant to the standard IEEE802.11i.

10.4 Establishing the keys

To compute the Pairwise Temporal Keys (PTK) the 4-Way Handshake is used [IEEE 802.11i].

As indicated in Figure 148 the procedure implies the use of 4 messages that use the EAPOL-key format

Figure 148: Schematics of the 4-way handshake

4-June-07 P1901_PRO_016_r0

Submission page 294 UPA-OPERA

In this dialog Supplicant and Master exchange two Nonces that allow to derive the PTK; Supplicant and Authenticator prove knowledge of the PMK to the other one and both synchronize to turn on the encryption keys for unicast packets. Message 3 may also be used to send the GTK (Group Transient Key).By this way the Supplicant and the Authenticator have established a secure channel using encryption in both directions.

11 SYSTEM PARAMETERS

11.1 GENERAL PARAMETERS

• GENERAL_USE_AUTOCONF = [YES | NO]

Parameter: YES enables autoconf, NO disables it.

SNMP: no

Mandatory: yes

This should be the first parameter in the auto-configuration file. If this parameter is disabled, when downloading the file, all the parameters will be stored in non-volatile memory, and next boot-up will be in local settings boot mode. In case of enabled, except a few parameters that must be necessarily saved in non-volatile memory, the others will not be stored in the non-volatile memory, and next boot-up will be in Auto-configuration mode. By default, it is enabled.

• GENERAL_TYPE = [HE | CPE | TDREPEATER]

Parameter: Possible values are: HE (Head End), CPE (Customer Premises Equipment) and TDREPEATER (Time Division Repeater).

SNMP: plSysNodeType

Mandatory: yes

Configures the type of node. A node can be configured as a HE (Head End), a CPE (Customer Premises Equipment) or a TDREPEATER (Time Division Repeater). The default value is CPE.

• GENERAL_FW_TYPE = [MV | LV | EU]

Parameter: Possible values are: MV (Medium Voltage), LV (Low Voltage) and EU (End User).

4-June-07 P1901_PRO_016_r0

Submission page 295 UPA-OPERA

SNMP: no

Mandatory: yes

Configures the firmware type of the node. The following firmware types can be configured: MV (Medium Voltage), LV (Low Voltage) and EU (End User). This parameter affects the QoS and VLAN/OVLAN configuration. The default value is LV.

• GENERAL_SIGNAL_MODE = [1 … m]

Parameter: Configures the physical mode used by the modem. This value can reach from 1 to m, depending on the range of frequency used.

SNMP: plBasicMode

Mandatory: yes

Configures the physical mode used by the modem. The valid modes depend on the range of frequency used.

• GENERAL_SIGNAL_MODE_LIST.i = [1 … m]

Parameter: This value can reach from 1 to m, depending on the range of frequency used.

SNMP: plBasicSearchModes

Mandatory: yes

Configures i-mode of the mode list for the modem to search with the SearchLink protocol (i = 1 … 12). The valid modes depend on the range of frequency used. The mode list is scanned to select the range of frequencies that will be taken into account by the modem.

GENERAL_AUTHENTICATION = [RADIUS | AUTHLIST | NONE]

Parameter: There are three possible values: RADIUS, ATHLIST and NONE. If RADIUS is selected, a RADIUS server will be in charge of accepting new users and assigning the profile. If AUTHLIST is selected, authentication will be done by checking a list provided in the auto-configuration file. If NONE is selected, all the users will be accepted

SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 296 UPA-OPERA

Mandatory: yes

Selects one of the following authentication methods:

RADIUS server. In this case, a RADIUS server will be in charge of accepting new users and assigning the profile.

Authorization list. In this case, authentication will be done by checking a list provided in the auto-configuration file. This option avoids the installation of a RADIUS server.

No authentication. In this case, no authentication method is used at all. Therefore, all the users will be accepted.

By default, no authentication is used.

• GENERAL_STP = [YES | NO]

Parameter: Enables (YES) or disables (NO) the Spanning Tree Protocol in the node.

SNMP: plStpEnable

Mandatory: yes

Enables or disables the Spanning Tree Protocol in the node. Enabled by default.

• GENERAL_COMMON_STP_EXTA = [YES | NO]

Parameter: Enables (YES) or disables (NO) the Common STP feature in the Ethernet interface A (EXTA).

SNMP: no

Mandatory: no

Enables or disables the Common STP feature in the Ethernet interface A (EXTA). This parameter only makes sense to be used if VLANs are enabled. If it is enabled, STP packets will be released and accepted through EXTA without VLAN tag (even if VLANs are enabled). If it is disabled, STP packets will be released with the management VLAN tag (if VLANs are active).

WARNING: with this parameter enabled, all packets without VLAN will be accepted through EXTA.

4-June-07 P1901_PRO_016_r0

Submission page 297 UPA-OPERA

• GENERAL_COMMON_STP_EXTB = [YES | NO]

Parameter: Enables (YES) or disables (NO) the Common STP feature in the Ethernet interface B (EXTB).

SNMP: no

Mandatory: no

Enables or disables the Common STP feature in the Ethernet interface B (EXTB). This parameter only makes sense to be used if VLANs are enabled. If it is enabled, STP packets will be released and accepted through EXTB without VLAN tag (even if VLANs are enabled). If it is disabled, STP packets will be released with the management VLAN tag (if VLANs are active).

WARNING: with this parameter enabled, all packets without VLAN will be accepted through EXTB.

• GENERAL_IP_ADDRESS = <ddd.ddd.ddd.ddd>

Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

SNMP: plSysStaticIPAddress

Mandatory: no

Configures the IP address to be used when booting up with DHCP disabled.

• GENERAL_IP_NETMASK = <ddd.ddd.ddd.ddd>

Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

SNMP: plSysStaticNetMask

Mandatory: no

Configures the IP network mask to be used when booting up with DHCP disabled.

• GENERAL_IP_GATEWAY = <ddd.ddd.ddd.ddd>

4-June-07 P1901_PRO_016_r0

Submission page 298 UPA-OPERA

Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

SNMP: plSysStaticDefaultGW

Mandatory: no

Configures the default gateway IP address to be used when booting up with DHCP disabled.

• GENERAL_IP_USE_DHCP = [YES | NO]

Parameter: If Yes DHCP is used, if NO DHCP is not used.

SNMP: plSysUseDHCP

Mandatory: no

Enables or disables the DHCP protocol in the modem. If DHCP is enabled, network configuration parameters (IP address, network mask and default gateway IP address) will be obtained from a DHCP server when booting up. If it is disabled, the network configuration parameters saved in the non-volatile memory will be used instead.

11.2 AGC (AUTOMATIC GAIN CONTROL) PARAMETERS

The following parameters must be handled with special care. A bad configuration of them can produce lost of communication with the modem through BPL.

• AGC_TX_GAIN = [0 | 1]

o Parameter: Selecting 1, the default value, 12 dB are added to the reference gain. In case of 0 value, no extra gain is added (0 dB).

o SNMP: plBasicTXAGCGain

o Mandatory: no

It configures the transmission gain. Two gain values, 0 and 12 dB, can be added to the reference gain. By default, 12 dB are selected.

• AGC_RX_ENABLE = [0 | 1]

4-June-07 P1901_PRO_016_r0

Submission page 299 UPA-OPERA

o Parameter: Enables (1) or disables (0) the hardware AGC.

o SNMP: plBasicRXAGCEnable

o Mandatory: no

Enables or disables the reception HW AGC. It is enabled by default.

• AGC_RX_FIX_GAIN = [0 … 7]

o Parameter: Eight values, from 0 to 7, are possible. Those values represent gains from 0 to 42 dB, respectively, added to the reference gain in steps of 6 dB.

o SNMP: plBasicRXAGCGain

o Mandatory: no

It sets a fixed value for the reception gain. This value is only taken into account if the HW AGC is disabled. Eight gain values, from 0 to 42 dB, can be added to the reference gain.

• AGC_MAX_RX_GAIN = [0 … 7]

o Parameter: Eight values, from 0 to 7, are possible. Those values represent gains from 0 to 42 dB, respectively, added to the reference gain in steps of 6 dB. The default value is 7 (42 dB).

o SNMP: no

o Mandatory: no

Configures the maximum reception gain for the HW AGC. Eight gain values, from 0 to 42 dB, can be added to the reference gain. The default value is 42 dB.

• AGC_MIN_RX_GAIN = [0 … 7]

o Parameter: Eight values, from 0 to 7, are possible. Those values represent gains from 0 to 42 dB, respectively, added to the reference gain in steps of 6 dB. The default value is 7 (42 dB).

o SNMP: no

o Mandatory: no

Configures the minimum reception gain for the HW AGC. Eight gain values, from 0 to 42 dB, can be added to the reference gain. The default value is 0 dB.

11.3 RADIUS PARAMETERS

• RADIUS_SERVER_IP = <ddd.ddd.ddd.ddd>

4-June-07 P1901_PRO_016_r0

Submission page 300 UPA-OPERA

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

o SNMP: no

o Mandatory: yes

This autoconfiguration parameter specifies the RADIUS server IP address. The access-request of the RADIUS procedure is submitted to the RADIUS server via the network using this IP address.

• RADIUS_SERVER_PORT = ddddd

o Parameter: Port number

o SNMP: no

o Mandatory: yes

It specifies the RADIUS client UDP port. The access-request of the RADIUS procedure is submitted to the RADIUS server via the network as a UDP communication to the IP address set before and sent to the UDP port of this parameter.

• RADIUS_SHARED_SECRET = <string>

o Parameter: ‘shared_secret’ (string, limited to 16 characters, of the shared secret)

o SNMP: no

o Mandatory: yes

It sets the RADIUS shared secret, which is limited to 16 characters. The forwarding server decrypts the User-Password, if present, using the shared secret. Once the RADIUS server receives the request, it validates the sending client. A request from a client for which the RADIUS server does not have a shared secret MUST be silently discarded

All three parameters must be set up in order for the RADIUS client to work properly.

11.4 CLASS OF SERVICE (COS) PARAMETER

Using the auto-configuration file, 2 classes of service criteria can be defined, assigning priorities from 0 to 7.

• COS_CUSTOM_CRITERION_OFFSET.i = [1 … 531]

o Parameter: Values from 1 to 531 are possible.

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 301 UPA-OPERA

o Mandatory: no

Custom i-criterion frame offset, in bytes (i = 1, 2).

• COS_CUSTOM_CRITERION_PATTERN.i = 0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits.

o SNMP: no

o Mandatory: no

Custom i-criterion 8-byte pattern (i = 1, 2).

• COS_CUSTOM_CRITERION_BITMASK.i = 0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits.

o SNMP: no

o Mandatory: no

Custom i-criterion 8-byte bitmask (i = 1, 2).

• COS_CUSTOM_CRITERION_CLASSES_OFFSET.i = [1 … 531]

o Parameter: Values from 1 to 531 are possible.

o SNMP: no

o Mandatory: no

Custom i-criterion classes frame offset, in bytes (i = 1, 2).

• COS_CUSTOM_CRITERION_CLASSES_BITMASK.i i = 0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits.

o SNMP: no

o Mandatory: no

Custom i-criterion classes 8-byte bitmask (i = 1, 2).

• COS_CUSTOM_CRITERION_CLASSES_PATTERN.i.j i=0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 302 UPA-OPERA

o Mandatory: no

Custom i-criterion j-class 8-byte pattern (i = 1, 2; j = 1 … 8).

• COS_CUSTOM_CRITERION_CLASSES_PRIO.i.j = [0 … 7]

o Parameter: Values from 0 to 7 are allowed.

o SNMP: no

o Mandatory: no

Priority assigned the packets that match the custom i-criterion j-class priority (i = 1, 2; j = 1 … 8).

• COS_CRITERION.k = [8021P | TOS | CUSTOM1 | CUSTOM2]

o Parameter: There are two predefined criteria (8021P, based on IEEE 802.1p VLAN tag priority field, and TOS, based on IP type of service), and two custom criteria (CUSTOM1 and CUSTOM2), defined with the parameters above (COS_CUSTOM_CRITERION_xxx).

o SNMP: no

o Mandatory: yes

k-criterion definition (k = 1, 2). Assigns up to 2 criteria to classify traffic. There are two predefined criteria (one based on IEEE 802.1p VLAN tag priority field, and another based on IP type of service), and two custom criteria, defined with the parameters above (COS_CUSTOM_CRITERION_xxx).

• COS_DEFAULT_PRIO = [0 … 7]

o Parameter: Values from 0 to 7 are allowed.

o SNMP: no

o Mandatory: yes

Configures the CoS default priority, i.e. the priority assigned to packets that do not match any criterion.

11.5 QUALITY OF SERVICE (QOS) PARAMETERS

• QOS_ENABLE = [YES | NO]

o Parameter: Enables (YES) or disables (NO) the quality of service in the node.

o SNMP: no

o Mandatory: yes

4-June-07 P1901_PRO_016_r0

Submission page 303 UPA-OPERA

Enables or disables the quality of service in the node. If this parameter is disabled, all other parameters related to QoS will not be configured.

• QOS_PRIOACK.prio+1 = [0 | 1]

o Parameter: This list enables (1) or disables (0) the Layer 2 ACK protocol depending on the priority level transmitted by the modem (priority levels: prio = 0 … 7).

o SNMP: no

o Mandatory: yes

This list enables or disables the Layer 2 ACK protocol depending on the priority level transmitted by the modem (can be useful for those applications with hard settings in latency but not in PLR) (priority levels: prio = 0 … 7). The ACK policy is carried out as follows:

o The highest priority of all the outgoing frames present in the output buffers of the modem is obtained.

o If the Layer 2 ACK protocol is enabled for such a priority, the ACKs will be enabled for all priorities.

o If the Layer 2 ACK protocol is disabled for such a priority, the ACKs will be disabled for all priorities.

The Layer 2 ACK protocol is enabled for all the priorities by default.

11.5.1 Slave Node Parameters (CPE)

• QOS_UPBWLIMIT = [YES | NO]

o Parameter: Enables (YES) or disables (NO) the transmission bandwidth limitation in a slave.

o SNMP: no

o Mandatory: yes

Enables or disables the transmission bandwidth limitation in a slave. Enabled by default. If disabled, the user will transmit data constantly without restrictions. Every time it receives a resource allocation message to use the channel, there will be no limit imposed by the slave when transmitting data back to its master.

11.5.2 Master Node Parameters (HE or REPEATER)

• QOS_LATENCY_STEP = [20 … 400]

o Parameter: Values in ms, from 20 to 400.

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 304 UPA-OPERA

o Mandatory: yes

It configures the minimum latency step for the different slaves when using QoS.

• QOS_BW_POLICY = [0 | 1]

o Parameter: A value of 0 corresponds to Fair mode, and 1 to Priority-based mode.

o SNMP: no

o Mandatory: yes

Selects the policy in which the QoS manages the excess of bandwidth: Fair or Priority-based mode.

• QOS_LATENCY.prio+1 = [1 | 2 | 4 | 8]

o Parameter: Priority levels: prio = 0 … 7. Possible values are: 1, 2, 4 and 8.

o SNMP: no

o Mandatory: yes

This list configures the latency for each priority level in QOS_LATENCY_STEP units (priority levels: prio = 0 … 7).

11.6 PROFILES PARAMETERS

A profile is set of configurable parameters that are saved as a whole. A number is assigned to each profile, and when a modem is assigned one profile, it will use all the parameters that are saved in this profile.

To define a profile all parameters must be set up, even if not working with VLANs. In this case, the values are not used and can be 1 for instance.

• PROFILE_MAX_TXPUT_TX.i = N (in kbps)

o Parameter: Number (32 bits size) of kbps

o SNMP: no

o Mandatory: yes

Maximum transmission throughput (from the slave point of view: upstream) for users with profile i. A modem that uses the profile ‘i’ will have a transmission throughput limited to this value.

4-June-07 P1901_PRO_016_r0

Submission page 305 UPA-OPERA

• PROFILE_MAX_TXPUT_RX.i N (in kbps)

o Parameter: Number (32 bits size) of kbps

o SNMP: no

Mandatory: yes

Maximum reception throughput (from the EU point of view: downstream) for users with profile i. A modem that uses the profile ‘i’ will have the reception throughput limited to this value.

• PROFILE_UPBWLIMIT.i = [YES|NO]

o Parameter: ‘yes’ (to limit the upstream) or ‘no’ (to not limit the upstream)

o SNMP: no

o Mandatory: yes

In a Master or a TD Repeater, this parameter is used to limit the upstream (slave’s transmission) for users with profile i. This parameter is set to ‘yes’ by default.

If set to ‘no’, the user will receive resource allocation messages constantly. Every time the master node has transmitted all required resource allocation messages to all the slaves with limit up bandwidth enabled, then it will transmit resource allocation messages to the slaves without up bandwidth limit until the rest of the slaves can receive resource allocation messages again.

• PROFILE_DWBWLIMIT.i = [YES|NO]

o Parameter: ‘yes’ (to limit the downstream) or ‘no’ (to not limit the downstream)

o SNMP: no

o Mandatory: yes

In a Master or a TD Repeater, this parameter is used to limit the downstream (slave’s reception) for users with profile i. This parameter is set to ‘yes’ by default.

If disabled, the master node will never stop transmitting data to that user. Every time the master node has transmitted all required data to all slaves with down bandwidth limit, then it will transmit data to the slaves without down bandwidth limit until the rest of slaves can receive again.

• PROFILE_PRIORITIES.i = [0x00-0xFF]

o Parameter: ‘0xXX’ (hexadecimal number from 00 to FF) each bit represents a priority, that can be set (1) or not (0).i.e. 0x85 priorities 7, 2 and 0 are allowed.

4-June-07 P1901_PRO_016_r0

Submission page 306 UPA-OPERA

o SNMP: no

o Mandatory: yes

This parameter indicates the priorities allowed for a user of profile i. This is useful to prioritise some transmission above others and to give some quality of service to the different modems.

At this parameter each bit represents a priority, that can be set or not. The default value is 0x85, so priorities 7, 2 and 0 are allowed. To include another priority, it is necessary to set the appropriate bit in the profile priorities flag. In any case, the maximum and minimum priorities are always set even if they are not configured (0x81).

• PROFILE_MNMT_VLAN.i = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

o SNMP: no

o Mandatory: yes

If VLANs are used, this value indicates the management VLAN for that user.

• PROFILE_DATA_VLAN.i = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

o SNMP: no

o Mandatory: yes

If VLANs are used, this value indicates the Data VLAN for that user.

• PROFILE_VOIP_VLAN.i = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

o SNMP: no

o Mandatory: no

If VLANs are used, this valued indicates the VoIP VLAN for that user.

• PROFILE_VLAN_ADD_TAG.i.j = [2-4093] or parametric

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

o SNMP: no

o Mandatory: yes

4-June-07 P1901_PRO_016_r0

Submission page 307 UPA-OPERA

With this parameter a filter list is created. The list can be ‘allowed’ or ‘forbidden’. A user that uses the profile ‘i’ will add the filter list as allowed or forbidden.

This parameter is of table type, with up to 16 VLAN in the filter list. When the list is ‘allowed’, these tags are added to the base configuration. Otherwise, if the list is changed to forbidden, the base tags are removed and only the tags defined here are included, for security reasons.

• PROFILE_VLAN_IS_ALLOWED_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to set the list as allowed) or ‘no’ (to set the list as forbidden)

o SNMP: no

Mandatory: no

This parameter is the complementary of the previous one and indicates if the tags on the list are allowed or forbidden for the user with the profile i. When the list is ‘allowed’ (setting ‘yes’ as value of the parameter) the tags are additive to the base configuration, when the list is ‘forbidden’ (setting ‘no’ as value of the parameter), the list is reseted and only tags defined with PROFILE_VLAN_ADD_TAG will be in the list.

• PROFILE_VLAN_TAGGED_ONLY_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to drop input packets without VLAN tag) or ‘no’ (to not drop input packets without VLAN tag)

o SNMP: no

o Mandatory: no

This parameter indicates whether or not to drop input packets without a VLAN tag from the user with profile i (PL interface).

• PROFILE_VLAN_OUTFORMAT_TAG_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to send packets with VLAN tag) or ‘no’ (to not send packets with VLAN tag)

o SNMP: no

o Mandatory: no

This parameter indicates whether or not to send packets with a VLAN tag to the user interface with this profile.

• PROFILE_OVLAN_ADD_TAG.i.j = [2-4094] or parametric

o Parameter: Number from 2 to 4094 or ‘%Parameter_name’ (parametric value preceded by a %)

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 308 UPA-OPERA

o Mandatory: yes

With this parameter a filter list is created. The list can be ‘allowed’ or ‘forbidden’. A user that uses the profile ‘i’ will add the filter list as allowed or forbidden.

This parameter is of table type, with up to 16 OVLAN in the filter list. When the list is ‘allowed’, these tags are added to the base configuration. Otherwise, if the list is changed to forbidden, the base tags are removed and only the tags defined here are included, for security reasons.

• PROFILE_OVLAN_IS_ALLOWED_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to mark the list as allowed) or ‘no’ (to mark the list as forbidden)

o SNMP: no

o Mandatory: no

This parameter is the complementary of the previous one and indicates if the tags on the list are allowed or forbidden for the user with the profile i. When the list is ‘allowed’ (setting ‘yes’ as value of the parameter) the tags are additive to the base configuration, when the list is ‘forbidden’ (setting ‘no’ as value of the parameter), the list is reset and only tags defined with PROFILE_OVLAN_ADD_TAG will be in the list.

• PROFILE_OVLAN_TAGGED_ONLY_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to drop input packets without OVLAN tag) or ‘no’ (to not drop input packets without OVLAN tag)

o SNMP: no

o Mandatory: no

This parameter indicates whether or not to drop input packets without a OVLAN tag from the user with profile i (PL interface).

• PROFILE_OVLAN_OUTFORMAT_TAG_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to send packets with OVLAN tag) or ‘no’ (to not send packets with OVLAN tag)

o SNMP: no

o Mandatory: no

This parameter indicates whether or not to send packets with a VLAN tag to the user interface with this profile.

4-June-07 P1901_PRO_016_r0

Submission page 309 UPA-OPERA

11.7 TRANSLATION TABLE PARAMETERS

The translation table contains information about the VLAN/OVLANs used for all nodes hanging from HV/MV equipment. This table is necessary because the autoconfiguration file of equipment is a parametric file, that is, there are several symbolic values that should be translated into concrete values.

• TRANSLATION_MNMT_VLAN = [2-4093]

o Parameter: Number from 2 to 4093

o SNMP: none

o Mandatory: yes

Tag number of the Management VLAN. This parameter is mandatory when using VLANs in the network.

• TRANSLATION_DATA_VLAN.i = [2-4093]

o Parameter: Number from 2 to 4093

o SNMP: none

o Mandatory: yes

Tag number of the Data i-operator VLAN (i=1, 2, 3…). Up to 16 different tags can be set.

• TRANSLATION_VOIP_VLAN.i = [2-4093]

o Parameter: Number from 2 to 4093

o SNMP: none

o Mandatory: no

Tag number of the VOIP i-operator VLAN (I=1,2,3,…) Up to 16 different tags can be set.

• TRANSLATION_ROOTPATH_OVLAN = [2-4094]

o Parameter: Number from 2 to 4094

o SNMP: none

o Mandatory: yes

Tag number of the default OVLAN. This parameter is mandatory when using OVLANs in the network.

4-June-07 P1901_PRO_016_r0

Submission page 310 UPA-OPERA

11.8 MAC FILTER PARAMETERS

• MAC_INGRESS_FILTERING_ENABLE = [YES | NO]

o Parameter: Enables (YES) or disables (NO) MAC ingress filtering in Ethernet interfaces.

o SNMP: no

o Mandatory: no

Enables or disables MAC ingress filtering in Ethernet interfaces (EXTA and EXTB). If enabled, only the incoming frames whose source MAC address is contained in the allowed MAC list will be processed by the bridge. If disabled, any MAC incoming frame will be processed, regardless its source address.

• MAC_INGRESS_FILTERING_MAX_ALLOWED = [1 … 4]

o Parameter: Values from 1 to 4 are possible.

o SNMP: no

o Mandatory: no

Configures the maximum number of MAC addresses contained in the allowed MAC list for MAC ingress filtering.

• MAC_INGRESS_FILTERING_MODE = [FIXED | AUTO]

o Parameter: Two possible values: FIXED or AUTO. If FIXED is selected, the allowed MAC list must be filled entering each MAC address manually. If AUTO is selected, the allowed MAC list is automatically filled with any new source MAC address learnt by the bridge.

o SNMP: no

o Mandatory: no

Selects one of the following MAC ingress-filtering modes:

o Fixed. In this case, the allowed MAC list must be filled entering each MAC address manually.

o Automatic. In this case, the allowed MAC list is automatically filled with any new source MAC address learnt by the bridge. Until the list is not full, the filtering is not actually performed. Once the list is full, the filtering is enabled and any frame with source MAC address not contained in the list will be discarded.

In both modes, the own MAC address is never filtered, i.e. it is implicitly contained in the allowed MAC list, although not taken into account when computing the number of allowed addresses.

• MAC_INGRESS_FILTERING_FIXED_MAC.i 0xXXXXXXXXXXXX

4-June-07 P1901_PRO_016_r0

Submission page 311 UPA-OPERA

o Parameter: The value must be specified with 12 hexadecimal digits.

o SNMP: no

o Mandatory: no

Configures i-MAC address of the allowed MAC list for MAC ingress filtering when fixed MAC ingress-filtering mode is selected (i = 1 … 4).

11.9 NTP PARAMETERS

For complete information about NTP (Network Time Protocol) please refer to RFC 958.

• NTP_ENABLE = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) the NTP feature.

o SNMP: no

o Mandatory: no

Enables or disables the NTP feature.

• NTP_SERVER_IP = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

o SNMP: no

o Mandatory: no

Configures the NTP server IP address.

• NTP_TIMEZONE = [-12 … 12] * 60

o Parameter: This value must be specified in minutes (in 60-minute steps) relative to Universal Time (UT). A value of 0 corresponds to UT.

o SNMP: no

o Mandatory: no

Configures the timezone for the NTP clock server. This value is relative to Universal Time (UT), also known as Greenwich Mean Time (GMT).

• NTP_DST = [YES | NO]

4-June-07 P1901_PRO_016_r0

Submission page 312 UPA-OPERA

o Parameter: If the value is YES, the time correction for daylight savings time is applied. Not applied if NO.

o SNMP: no

o Mandatory: no

If this parameter is enabled, the time correction for daylight savings time is applied. Not applied if disabled.

11.10 SNMP PARAMETERS

For complete information about SNMP (Simple Network Management Protocol) please refer to RFC 1157.

• SNMP_TRAP_IP_ADDRESS = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

o SNMP: no

o Mandatory: yes

Configures the IP address to which traps are sent when produced.

• SNMP_TRAP_COMMUNITY_NAME = community

o Parameter: This parameter is a string (up to 25 characters) (e.g. “SNMP_TRAP_COMMUNITY_NAME = public”).

o SNMP: no

o Mandatory: yes

It configures the trap community access.

11.11 STP PARAMETERS

For complete information about STP (Spanning Tree Protocol) and RSTP (Rapid STP) please refer to IEEE 802.1d and IEEE 802.1w standards, respectively.

• STP_PRIO = [0 … 65535]

o Parameter: Valid values range from 0 to 65535.

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 313 UPA-OPERA

o Mandatory: no

Configures the 2-byte field which, added to the MAC address, is used by the STP standard to decide the root path (Bridge Identifier Priority, part of BridgeIdentifier, in IEEE 802.1d). The default values, depending on the node features, are the following (in hexadecimal):

o 0x9010: MV MASTER

o 0x9010: MV MASTER

o 0x9020: MV TDREPEATER

o 0x9030: LV MASTER

o 0x9040: LV TDREPEATER

o 0x9050: LV CPE

• STP_PORT.i = [EXTA | EXTB | BPL]

o Parameter: Three possible values: EXTA, EXTB and BPL (i = 1,2 or 3).

o SNMP: no

o Mandatory: no

This list configures the type of port to be used in association with STP_PORT_PRIO.i and STP_PORT_COST.i parameters. (i = 1 … 3). All these parameters are lists, whose elements are associated by the same i-index. Ethernet interfaces A and B, and the BPL ports can be selected. In case of BPL, all ports will be handled as an aggregate, i.e. the priority and cost will be the same for all BPL ports.

• STP_PORT_PRIO.i = [0 … 255]

o Parameter: Valid values range from 0 to 255 (i = 1,2 or 3).

o SNMP: no

o Mandatory: no

This list configures the priority assigned to each port, needed if their costs are equal (i = 1 … 3). The default value for all ports is 80.

• STP_PORT_COST.i = [0 … 4294967295]

o Parameter: Valid values range from 0 to 4294967295 (i = 1,2 or 3).

o SNMP: no

o Mandatory: no

4-June-07 P1901_PRO_016_r0

Submission page 314 UPA-OPERA

This list configures the cost associated with each port (PortPathCost in IEEE 802.1d) (i = 1 … 3). The default values, depending on the port type, are the following:

o 2000000: Ethernet interface A (EXTA)

o 2000000: Ethernet interface B (EXTB)

o 4000000: BPL ports

• STP_HELLO_TIME = [10 … 40]

o Parameter: Valid values range from 10 to 40.

o SNMP: no

o Mandatory: no

Hello time expressed in decisecs (HelloTime in IEEE 802.1d). The default value is 20 decisecs.

• STP_MAX_AGE = [10 … 40]

o Parameter: Valid values range from 10 to 40.

o SNMP: no

o Mandatory: no

Maximum age time expressed in decisecs (MaxAge in IEEE 802.1d). The default value is 200 decisecs.

• STP_FORWARD_DELAY = [40 … 300]

o Parameter: Valid values range from 40 to 300.

o SNMP: no

o Mandatory: no

Forward delay time expressed in decisecs (forwardDelay in IEEE 802.1d). The default value is 150 decisecs.

• STP_FRONTIER = [EXTA | EXTB | NONE]

o Parameter: Valid values are: EXTA (Ethernet interface A), EXTB (Ethernet interface B) and NONE (Spanning Tree Frontier disabled).

o SNMP: plStpFrontier

o Mandatory: no

4-June-07 P1901_PRO_016_r0

Submission page 315 UPA-OPERA

Selects the interface where Spanning Tree Frontier is enabled or disables it. This feature drops all the STP messages on an external (Ethernet) interface.

• STP_MODE = [STP | RSTP]

o Parameter: Possible values: STP selects STP or RSTP selects RSTP.

o SNMP: plStpProtocolVersion

o Mandatory: yes

Selects STP protocol version, either STP (version < 2, IEEE 802.1d) or RSTP (version ≥ 2, IEEE 802.1w) (rstpVersion and stpVersion in IEEE 802.1d). The RSTP version is compatible with STP on a per-port basis.

11.12 VOIP PARAMETERS

For complete information about VoIP protocols please refer to ITU H.323, RFC 3261 (SIP) and RFC 2705 (MGCP) standards.

• VOIP_ENABLE = [ENABLED | DISABLED]

o Parameter: This parameter enables (ENABLED) or disables (DISABLED) the VoIP service.

o SNMP: no

o Mandatory: no

This parameter enables or disables the VoIP service.

• VOIP_GATEKEEPERIP = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

o SNMP: no

o Mandatory: no

IP address of the H.323 gatekeeper.

• VOIP_LINE1NUMBER = number

o Parameter: This parameter is a string (maximum string length is 20 characters) (e.g. “VOIP_LINE1NUMBER = 612345678”).

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 316 UPA-OPERA

o Mandatory: no

Configures the telephone number for H.323.

• VOIP_DIALPLAN = ([0 … 9, ‘T’, ‘X’, ‘.’, ‘|’])

o Parameter: This parameter is a string with maximum length is 200 characters (e.g. “VOIP_DIALPLAN = (9XXXXXXXX|6XXXXXXXX|00X.T)”.

o SNMP: no

o Mandatory: no

Configures the dial plan matching string for H.323. Please see section 11.12.1 for details.

• VOIP_INBANDDTMF = [ENABLED | DISABLED]

o Parameter: This parameter enables (ENABLED) or disables (DISABLED) in-band DTMF feature.

o SNMP: no

o Mandatory: no

This parameter enables or disables in-band DTMF feature.

• VOIP_OUTOFBANDDTMF = [ENABLED | DISABLED]

o Parameter: This parameter enables (ENABLED) or disables (DISABLED) out-of-band DTMF feature.

o SNMP: no

o Mandatory: no

This parameter enables or disables out-of-band DTMF feature.

• VOIP_KEYPADTYPE = [KEYPADTYPE_NONE | KEYPADTYPE_H225 | KEYPADTYPE_H245ALPHANUMERIC | KEYPADTYPE_H245SIGNAL | KEYPADTYPE_RFC2833]

o Parameter: This parameter is a string (up to 30 characters). Valid values are the following:

o KEYPADTYPE_H225: H.225/Q.931 User Info field (Keypad facility information element)

o KEYPADTYPE_H245ALPHANUMERIC: H.245 User Input Indication (UII) Alphanumeric message

o KEYPADTYPE_H245SIGNAL: H.245 User Input Indication (UII) Signal Type message

o KEYPADTYPE_RFC2833: RTP stream as defined in RFC 2833

4-June-07 P1901_PRO_016_r0

Submission page 317 UPA-OPERA

o KEYPADTYPE_NONE: no out-of-band signalling

o SNMP: no

o Mandatory: no

Configures the different 'keypad types' defined by H.323 in order to codify the out-of-band DTMF signaling.

• VOIP_CALLSIGPORT1 = [1025 … 65530]

o Parameter: Valid values range from 1025 to 65530.

o SNMP: no

o Mandatory: no

Configures the modem signaling port for H.323.

• VOIP_G711USS = [YES | NO]

o Parameter: Selects whether silence suppression for G.711 μ-law is enabled (YES) or not (NO).

o SNMP: no

o Mandatory: no

It selects whether silence suppression for G.711 μ-law is enabled or not.

• VOIP_G711UPACK = [2 … 4]

o Parameter: Valid values range from 2 (20 ms) to 4 (40 ms).

o SNMP: no

o Mandatory: no

Configures the specific packet size in 10-ms units for G.711 μ-law.

• VOIP_G711ASS = [YES | NO]

o Parameter: Selects whether silence suppression for G.711 A-law is enabled (YES) or not (NO).

o SNMP: no

o Mandatory: no

Selects whether silence suppression for G.711 A-law is enabled or not.

4-June-07 P1901_PRO_016_r0

Submission page 318 UPA-OPERA

• VOIP_G711APACK = [2 … 4]

o Parameter: Valid values range from 2 (20 ms) to 4 (40 ms).

o SNMP: no

o Mandatory: no

Configures the specific packet size in 10-ms units for G.711 A-law.

• VOIP_JB_TYPE = [FIXED | ADAPTIVE]

o Parameter: Selects either adaptive (ADAPTIVE) or fixed (FIXED) jitter buffer.

o SNMP: no

o Mandatory: no

Selects either adaptive or fixed jitter buffer.

• VOIP_FJB_DELAY = [1 … 10] * 10

o Parameter: Valid values range from 10 to 100 ms.

o SNMP: no

o Mandatory: no

Configures the fixed jitter buffer delay in ms.

• VOIP_AJB_MAXDELAY = [1 … 19] * 10

o Parameter: Valid values range from 10 to 190 ms.

o SNMP: no

o Mandatory: no

Configures the adaptive jitter buffer maximum delay in ms.

• VOIP_G729ON = [YES | NO]

o Parameter: Selects whether G.729 codec is enabled (YES) or not (NO).

o SNMP: no

o Mandatory: no

Selects whether G.729 codec is enabled or not.

4-June-07 P1901_PRO_016_r0

Submission page 319 UPA-OPERA

• VOIP_G729SS = [YES | NO]

o Parameter: Selects whether G.729 silence enabled is supported (YES) or not (NO).

o SNMP: no

o Mandatory: no

Selects whether silence suppression for G.729 is enabled or not.

• VOIP_G729PACK = [2 … 4]

o Parameter: Valid values range from 2 (20 ms) to 4 (40 ms).

o SNMP: no

o Mandatory: no

Configures the specific packet size in 10-ms units for G.729.

• VOIP_ALTERNATEGK = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) alternate gatekeeper feature for H.323.

o SNMP: no

o Mandatory: no

Enables or disables alternate gatekeeper feature for H.323.

• VOIP_ALTGKIP = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

o SNMP: no

o Mandatory: no

IP address of the H.323 alternative gatekeeper.

• VOIP_GKDISCOVERY = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) gatekeeper discovery feature for H.323.

o SNMP: no

o Mandatory: no

4-June-07 P1901_PRO_016_r0

Submission page 320 UPA-OPERA

Enables or disables gatekeeper discovery feature for H.323.

• VOIP_FULLRRQ1 = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) full gatekeeper registration request for H.323.

o SNMP: no

o Mandatory: no

Enables or disables full gatekeeper registration request for H.323.

• VOIP_TIMETOLIVE = [≥ 60]

o Parameter: The minimum valid value is 60 seconds.

o SNMP: no

o Mandatory: no

Value in seconds for the H.323 time-to-live parameter (time after which the registration with the gatekeeper shall expire). This parameter is related to the time between two consecutive registration requests to the gatekeeper. Using a value greater than 1200 is recommended in order not to interfere with the polling feature.

• VOIP_FASTCONNECT = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) fast connect signalling feature for H.323.

o SNMP: no

o Mandatory: no

Enables or disables fast connect signalling feature for H.323.

• VOIP_H245TUNNEL = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) H.245 tunnelling signalling feature for H.323.

o SNMP: no

o Mandatory: no

Enables or disables H.245 tunnelling signalling feature for H.323.

• VOIP_COUNTRY = [XX | ES | PT | GB | JP | FR | SG | RU | AU]

4-June-07 P1901_PRO_016_r0

Submission page 321 UPA-OPERA

o Parameter: This parameter is a string (up to 20 characters). Valid values are: The USA (XX), Spain (ES), Portugal (PT), The United Kingdom (GB), Japan (JP), France (FR), Singapore (SG), Russia (RU) and Australia (AU). The default country is Spain (ES).

o SNMP: no

o Mandatory: no

Configures telephony tones (dial, network busy, busy and ring-back tones) and phone line (physical) parameters (line impedance, ring waveform and line feed voltage) for the specified country. The default country is Spain.

Please see section 11.12.2 for details.

The following four parameters are provided to be able to configure tones for countries that are not available through the VOIP_COUNTRY parameter. If the country is available, there is no need to use these parameters. In any case, these parameters overwrite the VOIP_COUNTRY settings.

• VOIP_TONE_DIALTONE = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_DIALTONE = 425@-10#ON”).

o SNMP: no

o Mandatory: no

Dial tone configuration pattern. Please see section 11.12.3 for details.

• VOIP_TONE_NETWORKBUSY = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_BUSY = 425@-10#ON(200),OFF(200),R”).

o SNMP: no

o Mandatory: no

Network busy tone configuration pattern. Please see section11.12.3 for details.

• VOIP_TONE_BUSY = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_BUSY = 425@-10#ON(200),OFF(200),R”).

o SNMP: no

o Mandatory: no

4-June-07 P1901_PRO_016_r0

Submission page 322 UPA-OPERA

Busy tone configuration pattern. Please see section 11.12.3 for details.

• VOIP_TONE_RINGBACK = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_RINGBACK = 425@-10#ON(1500),OFF(3000),R”).

o SNMP: no

o Mandatory: no

Ring-back tone configuration pattern. Please see section 11.12.3 for details.

• VOIP_RTP_TOS = 0xXX

o Parameter: value must be specified with 2 hexadecimal digits.

o SNMP: no

o Mandatory: no

Configures the 8-bit bitmap of the type of service field in the IP header of the RTP packets.

• VOIP_CALLSIG_TOS 0xXX

o Parameter: value must be specified with 2 hexadecimal digits.

o SNMP: no

o Mandatory: no

Configures the 8-bit bitmap of the type of service field in the IP header of the VoIP signalling packets for H.323.

11.12.1 Dial Plan Configuration

A dial plan gives the unit a map to determine when a complete number has been entered and should be passed to the gatekeeper for resolution into an IP address. Dial plans are expressed using the same syntax used by MGCP NCS specification.

The dialled numbers that do not match the specified dial plan do not initiate an outgoing call from the VoIP modem.

The formal syntax of the dial plan is described using the following notation:

Digit ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9"

4-June-07 P1901_PRO_016_r0

Submission page 323 UPA-OPERA

Timer ::= "T" | "t"

Letter ::= Digit | Timer | "#" | "*" | "A" | "a" | "B" | "b" | "C" | "c" | "D" | "d"

Range ::= "X" | "x" -- matches any digit

| "[" Letters "]" -- matches any of the specified letters

Letters ::= Subrange | Subrange Letters

Subrange ::= Letter -- matches the specified letter

| Digit "-" Digit -- matches any digit between first and last

Position ::= Letter | Range

StringElement ::= Position -- matches any occurrence of the position

| Position "." -- matches an arbitrary number of occurrences including 0

String ::= StringElement | StringElement String

StringList ::= String | String "|" StringList

DialPlan ::= "(" StringList ")"

A dial plan, according to this syntax, is defined either by a string (not case-sensitive) or by a list of strings. Regardless of the above syntax a timer is only allowed if it appears in the last position in a string (12T3 is not valid). Each string is an alternate numbering scheme. The unit will process the dial plan by comparing the current dial string against the dial plan. If the result is under-qualified (partially matches at least one entry) then it will do nothing further; if the result matches or is overqualified (no further digits could possibly produce a match) then it sends the string to the gatekeeper and clears the dial string.

The timer T is activated when it is all that is required to produce a match. The period of timer T is 4 seconds. For example, a dial plan of (xxxT|xxxxx) will match immediately if 5 digits are entered and it will also match after a 4 second pause when 3 digits are entered.

4-June-07 P1901_PRO_016_r0

Submission page 324 UPA-OPERA

11.12.2 Country Specific Parameters

These are the country-specific parameters configured from “VOIP_COUNTRY”. Some of them (tone-related parameters) can be latter overwritten (thanks to VOIP_TONE_DIALTONE, VOIP_TONE_RINGBACK, VOIP_TONE_BUSY and VOIP_TONE_NETWORKBUSY). The others (line feed voltage, ring signal waveform and line impedance) can’t be changed.

Default parameters:

These are the ones being used for any country not specified in the list below (they are USA parameters):

DIALTONE = 350@-13+440@-13#ON(300),OFF(0),R

RINGBACK = 440@-13+480@-19#2000(ON),4000(OFF),R

BUSY = 480@-24+620@-24#500(ON),500(OFF),R

NETWORKBUSY = 480@-24+620@-24#250(ON),250(OFF),R

LINE FEED VOLTAGE = 48 V DC

RING SIGNAL = 48 V DC + 35 Vrms AC # 2000(ON),4000(OFF),R

LINE IMPEDANCE = 600 ohm

Countries:

NOTE: If some country does not specify all of the possible parameters that is because these parameters get the “default” value shown above.

SPAIN:

DIALTONE = 425@-10#ON(3000),OFF(0),R

NETWORKBUSY = 425@-10#ON(200),OFF(200),R

BUSY = 425@-10#ON(200),OFF(200),R

4-June-07 P1901_PRO_016_r0

Submission page 325 UPA-OPERA

RINGBACK = 425@-10#ON(1500),OFF(3000),R

PORTUGAL:

DIALTONE = 425@-10#ON(3000),OFF(0),R

NETWORKBUSY = 425@-10#ON(200),OFF(200),R

BUSY = 425@-10#ON(200),OFF(200),R

RINGBACK = 425@-10#ON(1000),OFF(5000),R

RING SIGNAL = 48 V DC + 35 Vrms AC # 1000(ON),5000(OFF),R

UK:

DIALTONE = 350@-18+440@-18#ON(3000),OFF(0),R

NETWORKBUSY = 400@-14#ON(400),OFF(400),R

BUSY = 400@-14#ON(400),OFF(400),R

RINGBACK = 400@-15+450@-15#ON(400),OFF(200),ON(400),OFF(2000),R

JAPAN:

DIALTONE = 400@-15#ON(3000),OFF(0),R

NETWORKBUSY = 400@-5#ON(500),OFF(500),R

BUSY = 400@-5#ON(500),OFF(500),R

RINGBACK = 400@-10#ON(1000),OFF(2000),R

FRANCE:

4-June-07 P1901_PRO_016_r0

Submission page 326 UPA-OPERA

DIALTONE = 440@-13#ON(3000),OFF(0),R

NETWORKBUSY = 440@-13#ON(500),OFF(500),R

BUSY = 440@-13#ON(500),OFF(500),R

RINGBACK = 440@-13#ON(1500),OFF(3500),R

SINGAPORE:

DIALTONE = 425@-15#ON(3000),OFF(0),R

NETWORKBUSY = 425@-10#ON(750),OFF(750),R

BUSY = 425@-10#ON(750),OFF(750),R

RINGBACK = 425@-10#ON(400),OFF(200),R

RUSSIA:

DIALTONE = 425@-10#ON(400),OFF(400),R

RINGBACK = 425@-10#ON(800),OFF(3200),R

AUSTRALIA:

DIALTONE = 425@-10#ON(3000),OFF(0),R

NETWORKBUSY = 425@-10#ON(200),OFF(200),R

BUSY = 425@-10#ON(400),OFF(400),R

RINGBACK = 425@-10#ON(400),OFF(200),ON(400),OFF(2000),R

LINE IMPEDANCE = 220 ohm + 820 ohm || 120 nF

4-June-07 P1901_PRO_016_r0

Submission page 327 UPA-OPERA

11.12.3 Tone pattern configuration

The different available tones can be configured using the following ring cadence pattern: freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R. Only the following frequencies (in Hz) are possible: 350, 400, 425, 440, 480, 572, 620, 682, 697, 770, 852, 941, 1209, 1336, 1400, 1477, 1633, 2060, 2130, 2450, 2750 and 2600. An example will help to explain this string:

950@-25+420@-10#ON(330),OFF(30),IDLE(1000),R:

This will create the following tone:

• The tone will be the addition of two frequencies: 950Hz with a power of –25dBm plus 420Hz with a power of –10dBm

• It will be ON during 330 msecs.

• Then it will be OFF during 30 msecs.

• And then it will be IDLE for 1000 msecs. This IDLE number it is not mandatory in the string.

• R means that the sequence ON, OFF, IDLE will be repeated continuously.

To configure a continuous tone of 1400Hz and –10dBm, the following string should be used:

• 1400@-10#ON(3000),OFF(0),R

Therefore, the mandatory symbols are:

• @ to separate frequency and power.

• # to separate the tone frequency and power from the sound cadence.

• , to separate the ON(xx), OFF(xx) and IDLE(xx) parameters.

Besides, the tone may be an addition of two different frequencies and powers using the + symbol.

11.13 VLAN NETWORK

• VLAN_ENABLE = [yes|no]

o Parameter: ‘yes’ (to enable VLAN use) or ‘no’ (to disable VLAN use)

o SNMP: no

o Mandatory: yes

4-June-07 P1901_PRO_016_r0

Submission page 328 UPA-OPERA

This autoconfiguration parameter enables or disables the use of VLAN. Normally this parameter is not needed because the modem itself discovers the use of VLAN, but it is necessary in case of booting from local settings.

• VLAN_MNMT_TAG = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093) or ‘%Parameter_name’ (parametric value preceded by a %)

o SNMP: no

o Mandatory: yes

This parameter indicates the management VLAN_ID (VID) of high-level management protocols (Telnet, Ping, …). Often a parametric value is used, and so the appropriate parameter will be taken from the translation table (for example, writing ‘$VLAN_DATA_2’).

• VLAN_MNMT_PRIO = [0-7]

o Parameter: Number from 0 to 7.

o SNMP: no

o Mandatory: yes

This autoconfiguration parameter sets the VLAN priority for the high-level management (Telnet, Ping, …) packets.

• VLAN_DATA_TAG = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %).

o SNMP: no

o Mandatory: yes

This parameter is used at the EU nodes. It configures the VLAN_ID (VID) for the data packets (packets coming from the external interfaces). The value set can be a value (from 2 to 4093) or a parametric value. In this last case, the adequate value will be taken from the translation table.

• VLAN_DATA_PRIO = [0-6]

o Parameter: Number from 0 to 6.

o SNMP: no

o Mandatory: yes

This parameter is used at the EU nodes. It configures the VLAN priority for the data packets (packets coming from the external interfaces).

4-June-07 P1901_PRO_016_r0

Submission page 329 UPA-OPERA

• VLAN_VOIP_TAG = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name‘ (parametric value preceded by a %)

o SNMP: no

o Mandatory: no

This parameter configures the VLAN_ID (VID) for the VoIP packets (packets coming from the external interfaces). The value set can be a value (from 2 to 4093) or a parametric value. In this last case, the adequate value will be taken from the translation table.

• VLAN_VOIP_PRIO = [0-7]

o Parameter: Number from 0 to 7

o SNMP: no

o Mandatory: no

This autoconfiguration parameter sets the VLAN priority for the VoIP packets.

• VLAN_VSIG_PRIO = [0-7]

o Parameter: Number from 0 to 7

o SNMP: no

o Mandatory: no

It configures the VLAN priority for the VoIP signalling packets.

• VLAN_TRUNK.i = [2-4093]

o Parameter: Number from 2 to 4093)

o SNMP: no

o Mandatory: yes

This parameter is usable at LV and MV nodes. It configures a list of VLAN trunks different from the ones inside the translation table that must be allowed in the node interfaces. It is necessary to configure these trunks for private VLANs between EUs in all intermediary equipment.

• VLAN_RETAG_EXTA_SRC = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) number from 2 to 4095.

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 330 UPA-OPERA

o Mandatory: yes

Autoconfiguration parameter used for VLAN retagging: External (Ethernet) interface A (EXTA) source tag. With 0, the retagging is disabled in EXTA interface.

• VLAN_RETAG_EXTA_DST = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) or number from 2 to 4095

o SNMP: no

o Mandatory: yes

Autoconfiguration parameter used for the VLAN retagging: External (Ethernet) interface A (EXTA) destination tag. With 0, the retagging is disabled in EXTA interface.

• VLAN_RETAG_EXTB_SRC = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) or number from 2 to 4095

o SNMP: no

o Mandatory: yes

Autoconfiguration parameter used for the VLAN retagging: External (Ethernet) interface B (EXTB) source tag. With 0, the retagging is disabled in EXTB interface.

• VLAN_RETAG_EXTB_DST = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) or number from 2 to 4095

o SNMP: no

o Mandatory: yes

Autoconfiguration parameter used for the VLAN retagging: External (Ethernet) interface B (EXTB) destination tag. With 0, the retagging is disabled in EXTB interface.

11.14 OVLAN PARAMETERS

The OVLAN parameters are used to configure the basic OVLAN configuration, which avoids the visibility between different customers in the access network. They are similar to the VLAN parameters specified above.

• OVLAN_ENABLE = [yes|no]

o Parameter: ‘yes’ (to enable OVLAN use) or ‘no’ (to disable OVLAN use)

4-June-07 P1901_PRO_016_r0

Submission page 331 UPA-OPERA

o SNMP: none

o Mandatory: yes

This autoconfiguration parameter enables or disables the use of OVLAN filtering.

• OVLAN_DATA_TAG = [2-4094] | %ROOTPATH_OVLAN

o Parameter: Number from 2 to 4093 or ‘%ROOTPATH_OVLAN’ (use the OVLAN Rootpath value)

o SNMP: none

o Mandatory: yes

This parameters specifies of the OVLAN ID assigned to the packets coming from the external interface. It should be the same as in the translation table to perform the basic OVLAN operation in all equipment except the one connected to the backbone, which will have the ALL_VLAN tag (4095).

• OVLAN_TRUNK.i = [2-4094]

o Parameter: Number from 2 to 4094

o SNMP: none

o Mandatory: yes

This parameter is used in LV and MV nodes, and it configures a list of OVLAN trunks different from the one inside the translation table that must be allowed in the node interfaces. It is necessary to configure these trunks for private OVLANs between EUs in all intermediary equipment.

11.15 CUSTOM VLAN/OVLAN PARAMETERS

• USE_CUSTOM_VLAN_OVLAN = [yes/no]

o Parameter: ‘yes’ (to enable the custom VLAN/OVLAN use) or ‘no’ (to disable the custom VLAN/OVLAN use)

o SNMP: none

o Mandatory: no

This parameter enables other VLAN/OVLAN parameters. If set to ‘yes’, it will configure the parameters that are set in the auto-configuration file. The connection will be lost if the new parameters are not properly configured in the auto-configuration file. It is necessary to specify several parameters with care or no connection will be possible between the modems.

4-June-07 P1901_PRO_016_r0

Submission page 332 UPA-OPERA

As a general rule, this configuration overrides the basic VLAN/OVLAN configuration. In order to decrease the risk of loosing connection, the VLAN/OVLAN filtering follows these rules:

• When the list is allowed, the tags specified here are added to the existing ones. This solution simplifies the configuration and decreases the risk of miss-configuration.

• When the list is forbidden, the lists are reset before inserting the tags specified here, due to the same reasons.

The VLAN/OVLAN custom configuration must be complemented with the profile parameters referred to the VLAN/OVLAN, to configure interfaces different from EXTA, EXTB, ROOT and OTHERS.

11.15.1 Custom VLAN Parameters

• VLAN_TAGGED_ONLY_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to enable tag only in interface root) or ‘no’ (to disable tag only in interface root)

o SNMP: none

o Mandatory: no

If this parameter is set to ‘yes’, the modem will drop packets without a VLAN tag entering the root interface (IFACE_ROOT).

• VLAN_TAGGED_ONLY_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to enable tag only in Ethernet A) or ‘no’ (to disable tag only in Ethernet A)

o SNMP: none

o Mandatory: no

If this parameter is set, the modem will drop packets without a VLAN tag entering external (Ethernet) interface A.

• VLAN_TAGGED_ONLY_IFACE_EXTB = [yes/no]

o Parameter: ‘yes’ (to enable tag only in Ethernet B) or ‘no’ (to disable tag only in Ethernet B)

o SNMP: none

o Mandatory: no

It this parameter is set, the modem will drop packets without a VLAN tag entering external (Ethernet) interface B.

• VLAN_TAGGED_ONLY_IFACE_PL_X= [yes/no]

Being X = 0 to 127 (BPL port)

4-June-07 P1901_PRO_016_r0

Submission page 333 UPA-OPERA

o Parameter: ‘yes’ (to enable tag only in BPL port X) or ‘no’ (to disable tag only in BPL port X)

o SNMP: none

o Mandatory: no

If this parameter is set, the modem will drop packets without a VLAN tag entering BPL interfaces (PL_X).

• VLAN_OUTFORMAT_TAG_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to tag output in root interface) or ‘no’ (to disable tag output in root interface)

o SNMP: none

o Mandatory: no

It this parameter is set, the modem will introduce a VLAN tag when sending packets to the root interface (IFACE_ROOT).

• VLAN_OUTFORMAT_TAG_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to tag output in Ethernet A) or ‘no’ (to disable tag output in Ethernet A)

o SNMP: none

o Mandatory: no

It this parameter is set, the modem will introduce a VLAN tag when sending packets to the external (Ethernet) interface A.

• VLAN_OUTFORMAT_TAG_IFACE_EXTB = [yes/no]

o Parameter: ‘yes’ (to tag output in Ethernet B) or ‘no’ (to disable tag output in Ethernet B)

o SNMP: none

o Mandatory: no

It this parameter is set, the modem will introduce a VLAN tag when sending packets to external (Ethernet) interface B.

• VLAN_OUTFORMAT_TAG_IFACE_PL_X = [yes/no]

Being X = 0 to 127 (BPL port)

o Parameter: ‘yes’ (to tag output in BPL port X) or ‘no’ (to disable tag output in BPL port X)

o SNMP: none

4-June-07 P1901_PRO_016_r0

Submission page 334 UPA-OPERA

o Mandatory: no

It this parameter is set, the modem will introduce a VLAN tag when sending packets to BPL port (PL_X).

• VLAN_PVID_PL_X = [2-4095]

Being X = 0 to 127 (BPL port)

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This autoconfiguration parameter specifies the 802.1Q VLAN tag for tagging untagged packets from the BPL port (PL_X).

• VLAN_PVID_EXTA = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This autoconfiguration parameter specifies the 802.1Q VLAN tag for tagging untagged packets from the external interface A (EXTA).

• VLAN_PVID_EXTB = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This autoconfiguration parameter specifies the 802.1Q VLAN tag for tagging untagged packets from the external interface B (EXTB).

• VLAN_PVID_FW = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This autoconfiguration parameter specifies the 802.1Q VLAN tag for tagging untagged packets from the firmware interface (FW).

4-June-07 P1901_PRO_016_r0

Submission page 335 UPA-OPERA

• VLAN_DEFAULT_PRIO_PL_X = [0-7]

Being X = 0 to 127 (BPL port)

o Parameter: Number from 0 to 7

o SNMP: none

o Mandatory: no

This parameter configures the 802.1p priority for tagging untagged packets from the BPL interface (PL_X).

• VLAN_DEFAULT_PRIO_EXTA = [0-7]

o Parameter: Number from 0 to 7

o SNMP: none

This parameter configures the 802.1p priority for tagging untagged packets from external (Ethernet) interface A (EXTA).

• VLAN_DEFAULT_PRIO_EXTB = [0-7]

o Parameter: Number from 0 to 7

o SNMP: none

o Mandatory: no

This parameter configures the 802.1p priority for tagging untagged packets from external (Ethernet) interface B (EXTB).

• VLAN_DEFAULT_PRIO_FW = [0-7]

o Parameter: Number from 0 to 7

o SNMP: none

o Mandatory: no

This parameter configures the 802.1p priority for tagging untagged packets from firmware interface (FW).

• VLAN_IS_ALLOWED_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

o SNMP: none

o Mandatory: no

4-June-07 P1901_PRO_016_r0

Submission page 336 UPA-OPERA

This parameter characterizes the VLAN list for the root interface. Root interface (IFACE_ROOT) list is allowed tag if configured as ‘yes’ or forbidden if configured as ‘no’.

• VLAN_LIST_IFACE_ROOT.i = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This parameter is a list of root interface (IFACE_ROOT) VLAN IDs. Up to 16 values can be configured.

• VLAN_IS_ALLOWED_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

o SNMP: none

o Mandatory: no

This parameter characterizes the VLAN list for the external (Ethernet) interface A. The external (Ethernet) interface A list contains allowed tags if configured as ‘yes’ or forbidden if configured as ‘no’.

• VLAN_LIST_IFACE_EXTA.i = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This parameter is a list of VLAN IDs for external (Ethernet) interface A. Up to 16 values can be configured.

• VLAN_IS_ALLOWED_IFACE_EXTB = [yes/no]

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

o SNMP: none

o Mandatory: no

This parameter characterizes the VLAN list for the external (Ethernet) interface B. The external (Ethernet) interface B list contains allowed tags if configured as ‘yes’ or forbidden if configured as ‘no’.

• VLAN_LIST_IFACE_EXTB.i = [2-4095]

o Parameter: Number from 2 to 4095

4-June-07 P1901_PRO_016_r0

Submission page 337 UPA-OPERA

o SNMP: none

o Mandatory: no

This parameter is a list of VLAN IDs for external (Ethernet) interface B. Up to 16 values can be configured.

• VLAN_IS_ALLOWED_IFACE_PL_X = [yes/no]

Being X = 0 to 127 (BPL port)

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

o SNMP: none

o Mandatory: no

This parameter characterizes the VLAN list for the powelrline interface X. The BPL interface list contains allowed tags if configured as ‘yes’ or forbidden if configured as ‘no’.

• VLAN_LIST_IFACE_PL_X.i = [2-4095]

Being X = 0 to 127 (BPL port)

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This parameter is a list of VLAN IDs for BPL interface X.

11.15.2 Custom OVLAN Parameters

• OVLAN_TAGGED_ONLY_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to accept only tagged packets at root interface) or ‘no’ (to accept any packet at root interface)

o SNMP: none

o Mandatory: no

If this parameter is set to ‘yes’, the modem will drop packets without a OVLAN tag entering the root interface (IFACE_ROOT).

4-June-07 P1901_PRO_016_r0

Submission page 338 UPA-OPERA

• OVLAN_TAGGED_ONLY_IFACE_PL_X = [yes/no]

Being X = 0 to 127 (BPL port)

o Parameter: ‘yes’ (to accept only tagged packets at other interfaces) or ‘no’ (to accept any packet at other interfaces)

o SNMP: none

o Mandatory: no

If this parameter is set to ‘yes’, the modem will drop packets without a OVLAN tag entering BPL ports (PL_X).

• OVLAN_OUTFORMAT_TAG_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to introduce a tag in output packets at root interface) or ‘no’ (to not introduce a tag in output packets at root interface)

o SNMP: none

o Mandatory: no

If this parameter is set, the modem will introduce a OVLAN tag when sending packets to the root interface (IFACE_ROOT).

• OVLAN_OUTFORMAT_TAG_IFACE_PL_X = [yes/no]

Being X = 0 to 127 (BPL port)

o Parameter: ‘yes’ (to introduce a tag in output packets at BPL ports) or ‘no’ (to not introduce a tag in output packets at BPL ports)

o SNMP: none

o Mandatory: no

If this parameter is set, the modem will introduce a OVLAN tag when sending packets to BPL ports (PL_X).

• OVLAN_POVID_PL_X = [2-4095]

Being X = 0 to 127 (BPL port)

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

4-June-07 P1901_PRO_016_r0

Submission page 339 UPA-OPERA

This autoconfiguration parameter specifies the OVLAN tag for tagging untagged packets from the BPL port X (PL_X).

• OVLAN_POVID_EXTA = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This autoconfiguration parameter specifies the OVLAN tag for tagging untagged packets from the external interface A (EXTA).

• OVLAN_POVID_EXTB = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This autoconfiguration parameter specifies the OVLAN tag for tagging untagged packets from the external interface B (EXTB).

• OVLAN_POVID_FW = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This autoconfiguration parameter specifies the OVLAN tag for tagging untagged packets from the firmware interface (FW).

• OVLAN_IS_ALLOWED_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to set the root interface list as allowed) or ‘no’ (to set the root interface list as forbidden)

o SNMP: none

o Mandatory: no

This parameter characterizes the OVLAN list for the root interface. Root interface (IFACE_ROOT) list is allowed tag if configured as ‘yes’ or forbidden if configured as ‘no’.

• OVLAN_LIST_IFACE_ROOT.i = [2-4095]

4-June-07 P1901_PRO_016_r0

Submission page 340 UPA-OPERA

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This parameter is a list of root interface (IFACE_ROOT) OVLAN tags.

• OVLAN_IS_ALLOWED_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to set the Ethernet A interface list as allowed) or ‘no’ (to set the Ethernet A interface list as forbidden)

o SNMP: none

o Mandatory: no

This parameter characterizes the OVLAN list for the external (Ethernet) interface A. The external (Ethernet) interface A list contains allowed tags if configured as ‘yes’ or forbidden if configured as ‘no’.

• OVLAN_LIST_IFACE_EXTA.i = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This parameter is a list of OVLAN tags for external (Ethernet) interface A.

• OVLAN_IS_ALLOWED_IFACE_EXTB = [yes/no]

o Parameter: ‘yes’ (to set the Ethernet B interface list as allowed) or ‘no’ (to set the Ethernet B interface list as forbidden)

o SNMP: none

o Mandatory: no

This parameter characterizes the OVLAN list for the external (Ethernet) interface B,. The external (Ethernet) interface B list contains allowed tags if configured as ‘yes’ or forbidden if configured as ‘no’.

• OVLAN_LIST_IFACE_EXTB.i = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

4-June-07 P1901_PRO_016_r0

Submission page 341 UPA-OPERA

This parameter is a list of OVLAN tags for external (Ethernet) interface B. Up to 16 values can be configured.

• OVLAN_IS_ALLOWED_IFACE_PL_X = [yes/no]

Being X = 0 to 127 (BPL port)

o Parameter: ‘yes’ (to set the BPL interface list as allowed) or ‘no’ (to set the BPL interface list as forbidden)

o SNMP: none

o Mandatory: no

This parameter characterizes the OVLAN list for the BPL Interface X. The list contains allowed tags if configured as ‘yes’ or forbidden if configured as ‘no’.

• OVLAN_LIST_IFACE_PL_X.i = [2-4095]

o Parameter: Number from 2 to 4095

o SNMP: none

o Mandatory: no

This parameter is a list of OVLAN tags for external BPL interface X.

11.16 ACCESS PROTOCOL PARAMETERS

Parameters for the slave:

• AP_MIN_NUMBER_HOPS = [0|1|…]

o Parameter: Number from 0

o SNMP: no

o Mandatory: no

This parameter configures the main criterion for connecting to a master, the minimum number of hops that the master has to be separated to the backbone. ‘0’ means that it can connect to the master connected to the backbone (no hop), ‘1’ means that it can connect to masters with one hop to the backbone (TDrepeaters), and so on.

• AP_FORBID_MASTER.i = 0xXXXXXXXXXXXX

4-June-07 P1901_PRO_016_r0

Submission page 342 UPA-OPERA

o Parameter: ‘0xXXXXXXXXXXXX’ (MAC address of forbidden master)

o SNMP: no

o Mandatory: yes

This parameter is a list of the MAC addressees of the masters this equipment has to avoid. The equipment will not connect to a master on this list, even if there are no other masters available.

• AP_PREFER_MASTER = 0xXXXXXXXXXXXX

o Parameter: ‘0xXXXXXXXXXXXX’ (MAC address of preferred master)

o SNMP: no

o Mandatory: yes

This parameter specifies a MAC address of a master that is preferred by the equipment. If the node can detect the master with this MAC address and it is not restricted (it is not forbidden and the number of hops is the adequate), it will try to connect to it regardless of any other parameter. If fails to connect to this prefer master, it will use the usual algorithm to decide to which master connect.

• AP_FIX_MASTER = ‘0xXXXXXXXXXXXX’

o Parameter: 0xXXXXXXXXXXXX (MAC address of fixed master)

o SNMP: no

o Mandatory: yes

This parameter specifies the only one master to which the node can connect. If this MAC address is not detected in the network, the node will not connect to any other one, so this parameter can be dangerous because if not properly configured can produce slaves unable to connect.

• AP_CHECK_BEST_MASTER_ENABLE = [yes|no]

o Parameter: ‘yes’ (to enable checking of best master periodically after connecting with one) or ‘no’ (to disable the checking of better masters after connecting to one).

o SNMP: no

o Mandatory: no

Once the node is connected to the network (after choosing and being accepted by a master) it is possible to repeat periodically the search of a better master. This parameter enables or disables the periodical check of the best master of the access protocol.

• AP_CHECK_BEST_MASTER_PERIOD = <time>

4-June-07 P1901_PRO_016_r0

Submission page 343 UPA-OPERA

o Parameter: Number of minutes

o SNMP: no

o Mandatory: no

This parameter configures how much time has to pass to search for a better master. This process is periodic, and the time is in minutes.

• AP_CURRENT_MASTER_MIN_BPS = <bps_thr>

o Parameter: Number of bits per symbol (0-14592)

o SNMP: no

o Mandatory: no

This parameter is also used in the period search for a better master. The node will only change to a better master if the number of bits per symbol with the current master is lower than the ‘AP_CURRENT_MASTER_MIN_BPS’ value.

• AP_NEW_MASTER_MIN_BPS = <bps_thr>

o Parameter: Number of bits per symbol (0-14592)

o SNMP: no

o Mandatory: no

At the period search for a better master, no every master will be considered. Only the masters with a number of bits per symbol greater than ‘AP_NEW_MASTER_MIN_BPS’ will be eligible.

Parameters for the master: The master will receive petitions of the slaves that want to connect to it. There are different policies about what to do in this case:

- Accept any petition. The slave will be allowed to connect through this master.

- Deny any petition. No slave will be allowed to connect through this master.

- Use the Radius. The RADIUS will be the one that decides to accept of reject the connection of a slave.

- Use an authorization list. This is a list of the MACs of the slaves that will be allowed to connect through this master. The following parameters configures this list.

• ACCESSP_AUTHLIST_MAC.i = 0xXXXXXXXXXXXX

o Parameter: ‘0xXXXXXXXXXXXX’ (MAC address authorized to connect)

o SNMP: no

4-June-07 P1901_PRO_016_r0

Submission page 344 UPA-OPERA

o Mandatory: no

This parameter is a list of the MAC address of the modems that will be allowed to connect through this master. The length of the list is 128 (i=1…128).

• ACCESSP_AUTHLIST_PROFILE.i = [1-16]

o Parameter: Number of the profile related to a MAC authorized)

o SNMP: no

o Mandatory: no

If a slave is accepted via the authorization list it will use the parameters of one profile. This autoconfiguration parameter indicates which profile will be associated with each slave. The length of the list is 128 (i=1…128).

• ACCESSP_AUTHLIST_FWTYPE.i = [MV|LV|EU]

o Parameter: ‘MV’ (medium voltage) or ‘LV’ (low voltage) or ‘EU’ (End User)

o SNMP: no

o Mandatory: no

If a slave is accepted via the authorization list it will have a firmware type This autoconfiguration parameter indicates which firmware type will be associated with each slave. The length of the list is 128 (i=1…128).

12 CONFIGURATION

12.1 MIB

12.1.1 SNMP Management

SNMP (Simple Network Management Protocol) refers to a group of specifications for the management of communication networks: the protocol, the data base definition and the modules. For more information, consult the SNMP standards RFC 1155 (Structure and Identification of Management Information for TCP/IP-based Internets), RFC 1157 (Simple Network Management Protocol), RFC 1213, Management Information Base).

Each resource to be managed in a device is represented by an object. The MIB is a structured collection of these objects. For SNMP, the MIB is a database structure, or a database definition. Each system in a network to be managed must maintain a MIB that reflects the status of the managed resources in that system.

4-June-07 P1901_PRO_016_r0

Submission page 345 UPA-OPERA

All managed objects in the SNMP environment are arranged in a hierarchical or tree structure. The leaf objects of the tree are the actual managed objects, each of which represents some resource, activity or related information that is to be managed.

SNMP and thus MIB support are optional in this specification.

12.1.2 MIB-II for IEEE P1901

The structure MIB-II is located under the node mgmt. This node contains the definition of the management information base approved by the IAB. MIB-II is an extension of the previously defined MIB-I. Under the node ‘mib-2’, IEEE P1901 nodes must support the following structures in RFC 1213:

• system(1): General information about the system:

o Description of the entity – hardware, operating system, etc.

o Level of OSI reference model to which the managed object pertains.

o Time since the last initialization of the system.

• interfaces(2): Information about the network interfaces of the managed entity, including information and statistics about the events in each. There is an “interfaces” table in which each row corresponds to a network interface. The information for a given interface:

o Physical address

o Type of interface

o Speed

o Status

o Number of transmitted and received octets

The implementation of the following nodes is optional.

• at(3): Translation of addresses IP – MAC.

• ip(4): Information about the configuration of the IP protocol over the device. Among others, the nodes under the ‘ip’ node contain information about:

o Number of packets discarded because of errors in the IP header, because of errors in the addresses, because of not finding a correct route, etc.

o Number of accepted packets.

o IP address of the interfaces and network mask of the network.

• icmp(5): Information about the Internet Control Message Protocol (ICMP).

4-June-07 P1901_PRO_016_r0

Submission page 346 UPA-OPERA

• tcp(6): General information about the TCP protocol working in the managed node.

• udp(7): General information about the UDP protocol.

• snmp(11): Information about the execution of the SNMP protocol in the entity.

All fundamentals for the MIB-II can be found in RFC 1213, and no further information will be shown in this document.

12.1.3 IEEE P1901 Private MIB

This section walks through the IEEE P1901 Private MIB.

Under the ‘.iso.org.dod.internet.private.enterprises’ node in the standard MIB, in position number 6798, the node assigned to DS2 (ds2 OBJECT IDENTIFIER ::= {enterprises 6798}) is allocated and in turn, under this node, the IEEE P1901 MIB branch has position 3 (IEEE P1901 OBJECT_IDENTIFIER ::= {ds2 3}) and contains all objects that are not supported in the standard MIB-II but can be remotely managed in an IEEE P1901 node.

Internally the IEEE P1901 (3) branch is composed of 8 sub-branches.

• plSystem: Generic information about the system.

• plBasic: Information about the general BPL configuration.

• plPhy: Information related to the physical layer indexed by node address.

• plMAC: Objects related to the Medium Access Control.

• plQoS: Objects related to Quality of Service.

• plOVLAN: Objects related to OVLAN.

• plStatistics: Statistics counters.

• plTraps: Trap information.

• plStp: STP information.

• plSecurity: Security configuration.

4-June-07 P1901_PRO_016_r0

Submission page 347 UPA-OPERA

enterprises (1)

ds2 (6798)

IEEE P1901 (3)

plSystem (1)

plBasic (2)

plPhy (3)

plMAC (4)

plQoS (5)

plOVLAN (6) plStatistics (7)

plTraps (8)

plStp (9)

plSecurity (10)

Figure 149 IEEE P1901 MIB tree

12.1.3.1 The IEEE P1901 MIB Description

This section shows the IEEE P1901 MIB and contains a brief description of every object inside each branch under the ‘IEEE P1901’ node. The MIB definition in ASN.1 format can be found in ANNEX A.

Note that not every OID can be accessed for get/set operations; read-only OIDs only accept ‘get’ operations, read-write OIDs accept both ‘get’ and ‘set’ operations, and nonaccessible OIDs accept neither of them (indicated in the table above). In addition, every OID with an enable/disable meaning accepts an integer ‘1’ for enabling and an integer ‘0’ for disabling.

plSystem

• plSystemTable

Almost every table in the IEEE P1901 MIB is indexed by the card number, so there will be a copy of this object in these tables; their explanation is equivalent to this one.

o plSysCard: Used as an index to get/set system characteristic data for a specific BPL card. This could be seen as useless because every BPL card has its own IP address, but it has been included to support future improvements in IEEE P1901 technology where a single node will have a single IP address, independent of the number of cards it will hold. But at present, this index is always a fixed ‘1’ value.

o plSysNodeType: Node type. An IEEE P1901 BPL card can act as a master, slave or repeater, and therefore this OID can hold the values of 0:Master, 1:Slave and 2:Repeater.

4-June-07 P1901_PRO_016_r0

Submission page 348 UPA-OPERA

o plSysFWVersion: Shows a string describing the firmware version running in the IEEE P1901 modem.

o plSysHWVersion: Shows a string describing the hardware version built inside the modem.

o plSysReset: Performs a system reset when receiving a ‘set’ with a ‘1’.

o plSysFactoryReset: Performs a system reset when receiving a ‘set’ with a ‘1’ and restores the factory configuration parameters.

o plSysUseDHCP: Enables (1) or disables (0) the DHCP protocol in the modem. If DHCP is enabled, network configuration parameters (IP address, netmask and gateway IP address) will be obtained from a DHCP server; if it is disabled, the network configuration parameters saved in the modem will be used.

o plSysStaticIPAddress: Holds the IP address to be used when DHCP is disabled.

o plSysStaticNetMask: Holds the network mask to be used when DHCP is disabled.

o plSysStaticDefaultGW: Holds the default gateway IP address to be used when DHCP is disabled.

o plSysSaveAsPermanent: When a ‘1’ integer value is passed to this OID, all node parameters that could have changed and are liable to be saved are stored in non-volatile memory for using them as the current system configuration. As soon as these parameters are saved, the system is reconfigured to use the new parameters.

o plSysConfUpload: This OID accepts a string in this format:

“PROT IP CONFIG_FILE USER PASSWD“

where:

PROT Value of 0 for uploading the configuration by TFTP, or 1 to upload it by FTP.

IP IP address of the TFTP or FTP server.

CONFIG_FILE Name of the file where the uploaded configuration will be stored.

USER User login for FTP, not necessary if TFTP is being used.

PASSWD User password for FTP, not necessary if TFTP is being used.

Table 63 Upload file parameters

This way, the system performs an upload of the active configuration to a TFTP or FTP server. The configuration file name string size can be up to 60 characters long.

4-June-07 P1901_PRO_016_r0

Submission page 349 UPA-OPERA

o plSysConfDownload: This OID accepts a string in this format:

“PROT IP CONFIG_FILE USER PASSWD“

where:

PROT Value of 0 for downloading the configuration file by TFTP, or 1 to download it by FTP.

IP IP address of the TFTP or FTP server.

CONFIG_FILE Name of the file to be downloaded.

USER User login for FTP, not necessary if TFTP is being used.

PASSWD User password for FTP, not necessary if TFTP is being used.

Table 64 Download configuration file parameters

This way, the system performs a download of a new configuration file from a FTP or TFTP server. The configuration file name string size can be up to 60 characters long.

o plSysUpgradeStatus: This OID is read-only and shows an integer number, which is a special code for showing the current status of the upgrade in progress. The codes for this OID are:

0 Last upgrade was performed correctly.

-1 No FLASH upgrade has been performed since the last boot.

-2 Last upgrade failed checking CRC.

-3 Last upgrade failed due to src was incorrect.

-4 Last upgrade failed due to destination (FLASH sector) was incorrect.

-5 Last upgrade failed due to file was for an incorrect HW product.

-6 Last upgrade failed due to file was for an incorrect HW Revision.

-7 Last upgrade failed due to file was for an incorrect ASIC.

4-June-07 P1901_PRO_016_r0

Submission page 350 UPA-OPERA

-8 Last upgrade failed due to file was for an incorrect flash region.

-9 Last upgrade failed due to file was for an incorrect SW product.

-10 Last upgrade failed due to file size exceeds the flash section size.

-11 Last upgrade failed due to flash section is read-only.

-12 Last upgrade failed downloading/uploading file.

-13 Last upgrade failed due to another upgrade process is running.

-14 Last upgrade failed due to download buffer could not be allocated.

-15 Last upgrade failed due to the region used at upgrade process is invalid.

-16 Warning. The file used is not full compatible.

-17 Last upgrade failed due to the upgrade thread could not be created.

-18 Last upgrade failed due to file was for an incorrect SW version.

-19 Last upgrade failed due to Board Description Data is not set.

-20 Last upgrade failed with other error (unknown).

-21 Last upgrade failed due to file not found.

1 A FLASH upgrade process is starting.

2 A FLASH upgrade process is downloading/uploading file.

3 A FLASH upgrade process is checking CRC.

4 A FLASH upgrade process is finishing.

4-June-07 P1901_PRO_016_r0

Submission page 351 UPA-OPERA

99 A FLASH upgrade process is in unknown status.

Table 65 Upgrade status code list

o plSysUpdate: This OID accepts a string in this format:

“PROT IP CONFIG_FILE USER PASSWD“

where:

PROT Value of 0 for downloading the firmware by TFTP, or 1 to download it by FTP.

IP IP address of the TFTP or FTP server.

CONFIG_FILE Name of the file to be downloaded.

TYPE Type of file 1:FW imag, 2 Loader image, etc.

USER User login for FTP, not necessary if TFTP is being used.

PASSWD User password for FTP, not necessary if TFTP is being used.

Table 66 Update system parameters

This way, the system performs an update of the firmware, loader or whatever part of the code in a modem from a TFTP or FTP server. The configuration file name string size can be up to 60 characters long.

o plSysDNSAddress: Holds the DNS IP address.

o plSnmpROComunityName: Holds the community name string.

o plSnmpRWComunityName: Holds the community name string.

o plSnmpTrapDest: Holds the IP address to send the traps to.

plBasic

• plBasicTable

4-June-07 P1901_PRO_016_r0

Submission page 352 UPA-OPERA

o plBasicCard: Card index.

o plBasicMode: Physical mode used by the modem. These values can reach from 1 to M, depending on the range of frequency used.

o plBasicCentralFrequency: Mode central frequency value in KHz.

o plBasicBandwidth: Mode bandwidth in MHz.

o plBasicTXAGCEnable: Enables/disables transmission AGC. This AGC feature controls transmission gains automatically and dynamically.

o plBasicRXAGCEnable: Enables/disables reception AGC.

o plBasicTXAGCGain: Sets/gets the transmission gain, and it can accept two values, ‘0’ and ‘1’. These values have a ‘distance’ of 12 dB and act over the AFE amplifiers.

o plBasicRXAGCGain: Sets/gets the gain in reception, in a range of values from ‘0’ to ‘7’ in steps of 6 dB.

o plBasicTXPowerMaskLB: Sets/gets the system powermask in the low half band of frequencies in the whole bandwidth used by the IEEE P1901 node, from carrier numbers 1 to 768. The value is a 768-character long string, each character corresponding to a carrier, that is, the first character corresponds to carrier number 1 and so on. These characters have a special coding, and its meaning has to be split into two sub-codes, e.g.:

First 4 bits coded in steps of 6 dB for coarse attenuation.

Last 4 bits specially coded for fine attenuation.

0100 0110

The coding for the last 4 bits can be deduced from this graph:

4-June-07 P1901_PRO_016_r0

Submission page 353 UPA-OPERA

Figure 150 Power mask encoding graphic

o plBasicTXPowerMaskHB: Sets/gets the system powermask in the high half band frequencies of the whole bandwidth used by the IEEE P1901 node, from carrier numbers 769 to 1536. The explanation of the value of this OID is equivalent to the previous one.

o plBasicMasterMAC: Shows the MAC address of the current master of the node.

plPhy

• plPhyByMACTable

o plPhyByMACCard: Card index.

o plPhyByMACMAC: Physical (MAC) address that also serves as an index. This means that all of the following OIDs will refer to a single MAC address. These MAC addresses are those that have been learned by the MAC protocol or configured manually. Other tables could be also indexed by MAC, and all of them would mean that the value shown affects that MAC.

o plPhyByMACTXBPC: For all practical purposes, these are the tonemap associated to the indexed MAC in transmission. The value is a 768-character long string with numbers from 2 to 10, each number representing the number of bits per symbol of each carrier. Each byte contains two carriers (4 bits each).

Note: All BPC OIDs are the result of applying the Adaptive Bitloading ProtoCol, for which BPC is the acronym.

4-June-07 P1901_PRO_016_r0

Submission page 354 UPA-OPERA

o plPhyByMACTXBPCAggregated: Holds the aggregated BPC value in transmission, which is a value from 288 to 14592. Although the maximum number of bits per carrier is 10 and the number of carriers is 1536, the physical throughput requires making a subtraction of 0.5 bits for each BPC value, which is used by the FEC algorithm. Therefore, 1536 times 9.5 results in 14592.

o plPhyByMACTXPhySpeed: Physical speed in transmission in Mbits per second.

o plPhyByMACRXBPC: These are the BPCs associated to the indexed MAC in reception. The value is a 768-character long string with numbers ranging from 2 to 10, each number representing the number of bits per symbol for each carrier. Each byte contains two carriers (4 bits each).

o plPhyByMACRXBPCAggregated: Shows the aggregated BPC value in reception, which is a value from 288 to 14592. Although the maximum number of bits per carrier is 10 and the number of carriers is 1536, the physical throughput requires making a subtraction of 0.5 bits for each BPC value, which is used by the FEC algorithm. Therefore, 1536 times 9.5 results in 14592.

o plPhyByMACRXPhySpeed: Physical speed in reception in Mbits per second.

o plPhyByMACSNR: Shows the measured channel SNR. The value shown is a 768-character long string where each character is a number that shows the SNR value in units of 0.5 dB.

o plPhyByMACCFR: Shows the measured channel CFR. The value shown is a 768-character long string where each character is a number that shows the CFR value in units of 1 dB.

o plPhyByMACACK: Enables/disables the level 2 ACKs feature.

o plPhyByMACCipher: Enables/disables the cipher feature.

o plPhyByMACTxHURTO: Forces HURTO mode in transmission for a ‘set’ operation, or indicates if the modem is transmitting in HURTO mode to the indexed MAC for a ‘get’ operation.

o plPhyByMACRxHURTO: Forces HURTO mode in reception for a ‘set’ operation, or indicates if the modem is receiving in HURTO mode from the indexed MAC for a ‘get’ operation.

o plPhyByMACIsActive: Used to check if a node, whose MAC is the index, is active (1) or not (0).

o plPhyByMACRXTimeLastActivity: Indicates the number of seconds since the last time the indexed MAC showed BPL activity.

• plPhyRXSNRThresholdTable

o plPhyRXSNRThresholdCard: Card index.

o plPhyRXSNRThresholdIndex: The IEEE P1901 modems have 9 levels of SNR thresholds for changing the BPCs to be used when these levels are reached. This OID is an index with fixed values from 1 to 10 to refer to the BPCs to be used when a certain SNR value is reached. For instance, if data is requested (see the OID below) for the index 6, it will return the SNR value from which 6 BPCs will be used.

o plPhyRXSNRThreshold: SNR threshold value in units of 0.5 dB for a determinate threshold index in the above OID.

plMAC

4-June-07 P1901_PRO_016_r0

Submission page 355 UPA-OPERA

• plMACTable

o plMACCard: Card index.

o plMACAccessProtocol: Enables/disables the Access Protocol mode, which has been implemented to allow a node to automatically learn the MAC addresses of the nodes that are liable to connect with it.

o plMACNumConnectedNodes: Shows the number of nodes successfully connected, that is, with its link solved by the Port Solver Protocol.

o plMACNumSlaves: Shows the number of configured slaves if the nodeis a master.

• plMACConnectedNodesTable

o plMACConnectedNodesCard: Card index.

o plMACConnectedNodesIndex: This index will refer to a connected node, a number ranging from 0 to the value shown by plMACNumConnectedNodes (see above).

o plMACConnectedNodesMAC: MAC address of the indexed connected node.

• plMACSlavesTable

o plMACSlavesCard: Card index.

o plMACSlavesIndex: This index will refer to a slave node, a number ranging from 0 to the value shown by plMACNumSlaves (see above).

o plMACSlavesMAC: MAC address of the indexed slave node.

plQoS

• plQoSMasterGeneralMinOneWayLat

If the modem is a master, this OID shows the minimum latency configured in the modem in milliseconds.

• plQoSMasterGeneralBwMngrPolicy

This OID shows the policy to be followed by a master in assigning a certain bandwidth to its attached slaves. If a 0 is returned, the master is configured to assign bandwidth in a fair policy, while if a 1 is returned, the bandwidth is assigned in a priority-based policy.

• plQoSPriorityManagementTable

o plQoSPriorityManagementCard: Card index.

o plQoSPriorityManagementPrio: Priority value, from 1 to 8.

4-June-07 P1901_PRO_016_r0

Submission page 356 UPA-OPERA

o plQoSPriorityManagementLatency: Latency coding value for the priority. Allowed coding values are 0, 1, 2, 4 and 8

o plQoSPriorityManagementTimmingInterval: A fixed scheduling repeated each programmable Timming Interval is set, and the slaves will have a fixed amount of assigned time to transmit. This scheduling may be synchronized with the mains.

• plQoSPerUserTable

o plQoSPerUserCard: Card index.

o plQoSPerUserMAC: Physical MAC address of the user hanging from the master. Used as index.

o plQoSPerUserTXMaxXput: Shows the maximum throughput allowed in transmission for a user in kilobits per second.

o plQoSPerUserRXMaxXput: Shows the maximum throughput allowed in reception for a user in kilobits per second.

o plQoSPerUserPriorityAllowedUp: Shows the allowed priorities for transmission and reception in upstream for a user. The returned value is a number from 0 to 255, which is a number corresponding to the allowed priorities’ 8-bit mask coding, i.e., a value of 16 (0010000b) would mean that priority 5 is the only one allowed.

o plQoSPerUserPriorityAllowedDown: Shows the allowed priorities for transmission and reception in downstream for a user. The returned value is a number from 0 to 255, which is a number corresponding to the allowed priorities’ 8-bit mask coding, i.e., a value of 17 (0010001b) would mean that priorities 5 and 1 are the only ones allowed.

plOVLAN

This node has the same structure and OID that the dot1qVlan MIB branch.

plStatistics

• plStatisticsTable

o plStatisticsCard: Card index.

o plStatisticsBPLInputWords: Number of words received by the BPL physical interface.

o plStatisticsBPLInputPackets: Number of packets received by the BPL physical interface.

o plStatisticsBPLInputIncorrigible: Number of incorrigible packets received by the BPL physical interface.

o plStatisticsBPLInputFECBlocksTotal: Number of FEC blocks received by the BPL physical interface.

o plStatisticsBPLInputFECBlocksCorrected: Number of FEC blocks received and corrected by the BPL physical interface.

o plStatisticsBPLInputPktsReceived: Number of packets received by the BPL physical interface.

4-June-07 P1901_PRO_016_r0

Submission page 357 UPA-OPERA

o plStatisticsBPLInputPktsRcvComplete: Number of packets received complete by the BPL physical interface.

o plStatisticsBPLInputPktsRcvIncomplete: Number of packets received incomplete by the BPL physical interface.

o plStatisticsBPLOutputWords: Number of words transmitted through the BPL physical interface.

o plStatisticsBPLOutputPkts: Number of packets transmitted through the BPL physical interface.

plTraps

• plTrapsPhyTable

o plTrapsPhyCard: Card index.

o plTrapsPhyTrapToHURTOEnable: Enables/disables trap generation when entering HURTO mode.

o plTrapsPhyTrapFromHURTOEnable: Enables/disables trap generation when leaving HURTO mode.

• plTrapsMACTable

o plTrapsMACCard: Card index.

o plTrapsMACTrapPeerDetectedEnable: Enables/disables trap generation when detecting a peer modem.

o plTrapsMACTrapPeerDisappearedEnable: Enables/disables trap generation when a peer modem disappears.

• plTrapsBridgeTable

o plTrapsBridgeCard: Card index.

o plTrapsBridgeTrapNewRootEnable: Enables/disables trap generation when a new root is assigned. The trap is sent from a node when this node becomes root.

o plTrapsBridgeTopologyChangeEnable: Enables/disables trap generation when network topology changes.

• plTrapsConfFailTable

o plTrapsConfFailCard: Card Index.

o plTrapsConfDonwloadFailEnable : Enables/disables the trap generation when a configuration file download fails.

o plTrapsConfUploadFailEnable : Enables/disables the trap generation when a configuration file upload fails.

plStp

• plStpTable

4-June-07 P1901_PRO_016_r0

Submission page 358 UPA-OPERA

o plStpCard: Card index.

o plStpEnable: Enables/disables the Spanning Tree protocol.

o plStpProtocolVersion: Chooses either using STP (IEEE 802.1d) or RSTP (IEEE 802.1w). The RSTP version is compatible to STP on a per-port basis. Values: “STP”, RSTP”.

o plStpPtpExtA: Sets the point-to-point flag on EXTA. This port will be considered point-to-point, thus candidate for rapid transition to forwarding. Set by default when EXTA is connected to backplane.

o plStpPtpExtB: Sets the point-to-point flag on EXTB. This port will be considered point-to-point, thus candidate for rapid transition to forwarding. Set by default when EXTB is connected to backplane.

o plStpFrontier: Enables/disables the Spanning Tree Frontier . This feature drops all the STP messages on an EXT interface. Values: “NONE”, “EXTA”, EXTB”.

plSecurity o plSecurityConsoleSerial: Enables or disables the serial console access to the modem.

o plSecurityConsoleTelnet: Enables or disables the telnet console access to the modem.

o plSecurityConsoleAuthTable: Table containing the IP addresses from which telnet clients may access this

12.2 AUTO-CONFIGURATION AND PROVISIONING

12.2.1 Auto-configuration purpose

The purpose of the auto-configuration process is the complete automation of the deployment of the BPL network:

• Medium Voltage equipment

• Low Voltage Repeaters and Home Gateways

• CPEs

With the auto-configuration mechanism no prior pre-configuration of any modem is required.

12.2.2 Auto-configuration process overview

The objective of the auto-configuration process is the centralized management of a BPL network using configuration files stored in a centralized database that are transferred to each node when it boots. These files contain all of the information that a node needs to know to work as expected.

Below is a brief description of the process:

4-June-07 P1901_PRO_016_r0

Submission page 359 UPA-OPERA

1. Every node starts with the same default factory configuration: Access CPE.

2. Using PTTP (explained later in this document 12.2.5) the modem discovers if it is booting in a network with VLANs or not. If a network has been built using VLANs it is necessary to know the Management VLAN of that network segment for the DHCP request to reach the backbone. The information passed between modems during PTTP is called the translation table.

3. Using DHCP protocol, each node gets their IP configuration (IP address, netmask and gateway), the phone number (in the case of VoIP CPEs), the name of their corresponding auto-configuration file and the IP address of the TFTP server where the auto-configuration file is.

4. Using TFTP protocol, the nodes download the auto-configuration file and configure the node accordingly.

The four points mentioned above are the main ones, but there is another point to consider:

In order to achieve a secure network, BPL authentication is introduced. When a new slave is trying to access the BPL network and connecting to a master or a repeater, the master or repeater may perform a RADIUS request to authenticate the user. See section 12.2.9 for more information.

Below there is an example of the actions involved in the auto-configuration of a slave modem:

PLC

Master

DHCP Server

TFTP Server

Radius Server

Slave Slave

Searchlink Access

Protocol

Slave

Master

MAC Authentication

RadiusRequest RadiusReply

with Profile

Slave

Master

PSP NegotiationSTP

Access Grant

Master

Slave

Gets Translation Tablewith Mgmt VLAN

PTTP Request

PTTP Reply

Gets IP address + Name of Configuration

File

DHCP Request

DHCP Reply

Slave

DownloadsConfiguration File

Slave

TFTP Request

Master

Figure 151 Autoconfiguration of a slave modem

4-June-07 P1901_PRO_016_r0

Submission page 360 UPA-OPERA

If the node is the first modem in the network and connected directly through the Ethernet port to the backbone, the process is slightly different:

1. This node starts with the same default factory configuration: Access CPE.

2. Using DHCP protocol, the node gets their IP configuration (IP address, netmask and gateway, and the name of their corresponding auto-configuration file). Also there is another parameter called pttp-code that indicates if VLAN is used and the value of the management VLAN if needed. Once this parameter is obtained the PTTP protocol finishes. Important: the DHCP server must ask this node in the VLAN #1 or without VLAN. In other words, the node performs DHCP requests without VLAN and with VLAN #1 alternately.

3. Using TFTP protocol, the nodes download the auto-configuration file and configure the node accordingly.

The figure below shows an example of this case:

Slave

DHCP Server

TFTP Server

Radius Server

SlaveSlave

Gets Mgmt VLAN fromDHCP reply

Slave

Gets IP address + Name of Configuration

File

HE

Downloads ConfigurationFile + Translation Table

TFTP RequestVLAN X

TFTP Reply

VLAN X

HE Node Configured as master

DHCP

DHCP Request VLAN 1

DHCP Reply

VLAN 1Ethernet

Figure 152 Autoconfiguration of a HE

12.2.3 Access Protocol

The access protocol mechanism controls the access of slaves to the BPL network. The master or repeater queries the Radius server (if Radius authentication is enabled) when a new slave is detected.

Only nodes that link to a Master or repeater need to be in the Radius database:

• CPEs

4-June-07 P1901_PRO_016_r0

Submission page 361 UPA-OPERA

• TD Repeaters

The Radius server checks:

• The MAC address of the slave applying for authentication

• The MAC address of the master placing the request

The Radius server replies:

• Accept / Reject

• Profile number

The profile number relates to the QoS and VLAN settings for the given slave (Radius user).

If Access Protocol authentication is disabled, all slaves get access to the network with the default settings (profile 1).

A third type of authentication is possible: Authlist. In this mode, the autoconfiguration file of the master contains all the slaves that are allowed to connect and their associated profile.

12.2.4 Auto-configuration at Modem Boot

autoconfiguration parameters on booting. When any node boots, there may be a parameter stored in the non-volatile memory called GENERAL_USE_AUTOCONF. When this value is YES, the node boots in auto-configuration mode. When this value is NO, the node boots from local settings.

Inside the autoconfiguration boot mode there are two possibilities depending on whether or not PTTP is performed.

12.2.4.1 Autoconfiguration PTTP Boot

send PTTP requests. When this protocol ends, the modem has the minimum information to successfully connect to the backbone and execute DHCP and TFTP.

The node then performs a DHCP request to get an IP configuration, the phone number (if required) and the name of the auto-configuration file, as well as the TFTP server where the file is located. Then it downloads the file and configures the node accordingly.

12.2.4.2 Autoconfiguration no PTTP Boot

In this autoconfiguration boot modality, the modem has been already configured somehow (see section 12.2.5 for more information) to successfully execute DHCP and TFTP so it skips PTTP.

4-June-07 P1901_PRO_016_r0

Submission page 362 UPA-OPERA

This mode requires pre-configuration and it is only recommended in the first node of the BPL network, the node that connects to the backbone, because this node cannot get the information for booting from any other node. However, there is defined a DHCP extension to solve this issue without pre-configuration. See section 12.2.8.

12.2.4.3 Boot from local settings

When a node starts in local settings boot mode, it collects all of the configured parameters from the non-volatile memory and configures the node accordingly. There are some basic parameters that are always configured in this mode:

• GENERAL_TYPE: Node type – HE, CPE, or TDREPEATER.

• GENERAL_IP_USE_DHCP: Use DHCP – yes or no. If this parameter is set to no, the IP configuration parameters and the phone number are also configured from non-volatile memory.

All of the other parameters are only configured if they have been downloaded from a file first, and a GENERAL_USE_AUTOCONF = no line was in that auto-configuration file. This is equivalent to performing a Save as Permanent.

12.2.5 PTTP Protocol

The PTTP (Parametric Translation Table Protocol) is used to transfer the translation table (explained later in this document) between modems at booting. The PTTP uses the CCP

12.2.5.1 General description

The Parametric translation table protocol takes place every time a node boots. The aim of this protocol is to obtain from the nearest active node a table with the values of certain auto-configuration parameters. When the node downloads the auto-configuration file it uses the obtained values to translate all the parametric values contained in the file.

The translation table contains information about the different VLAN and OVLAN tags used in the network, as well as information about the QoS settings. If the network is not using VLAN tags, this information is also contained in the translation table. Due to this, it is necessary to perform the protocol before the DHCP request.

Once the translation table is obtained, the node is able to perform the DHCP request successfully and download and interpret the auto-configuration file, translating the parametric values contained on it.

12.2.5.2 Protocol description

The Translation Table protocol is client-server. Each node belonging to the network at boot time represents the client side. Each configured node in the network excluding End Users nodes performs the server side of the protocol.

The usual sequence of packet exchanging is described:

4-June-07 P1901_PRO_016_r0

Submission page 363 UPA-OPERA

1. The client starts sending a Read ReQuest (RRQ) packet through all active interfaces.

2. The closest server receives the RRQ packet and it sends the first block of the Translation Table to the client with a DATA packet with block number 1.

3. The client answers with an ACK packet of the block number 1.

4. The server sends the next block of DATA.

5. The client replies with another ACK

6. Steps 4 and 5 are repeated until the translation table is sent completely.

7. The server sends an empty DATA packet to finish the protocol.

8. The client replies with an ACK to this empty packet and closes the connection.

9. The server receives the last ACK and closes the connection.

The following figure shows this sequence:

4-June-07 P1901_PRO_016_r0

Submission page 364 UPA-OPERA

DST: DS2 MulticastSRC: MAC_x

Preforwarded toactive ports

ClientMAC_x

ServerMAC_y

PTTP.RRQ

PTTP.DATA(1)DST: MAC_xSRC: MAC_y

PTTP.ACK(1)DST: MAC_ySRC: MAC_x

PTTP.DATA(2)

PTTP.ACK(2)

Last block ACKreceived

Close connection

Close connection

Open connectionLearn source MAC

address

Open connectionLearn source MAC

address

Last data blockreceived (empty)

PTTP.DATA(N)Empty

PTTP.ACK(N)

Figure 153 Usual PTTP operation.

Since PTTP protocol operates directly over BPL and Ethernet protocols, it must handle itself lost and duplicated packets. PTTP implements the stop-and-wait protocol described before. For this purpose, two timers are needed per each connection: DATA and ACK timers. The DATA timer is in the client, whereas the ACK timer is located in the server.

If a duplicated DATA or ACK message arrives, it is simply discarded, because its Block Number field will not match the expected one. If a DATA or ACK message is lost, the ACK timer will expire in the server and this will retransmit the last DATA message.

There is defined a Maximum Number of Retransmissions, which in case of being exceeded, the connection will be closed on the server side. Moreover, the connection will be closed on the client side too, because its DATA timer will expire.

4-June-07 P1901_PRO_016_r0

Submission page 365 UPA-OPERA

If the initial RRQ packet is lost, the DATA timer will expire too, and the connection will not be open.

In case of DATA timer expiration, the client would not get its translation table and will not be configured. For that reason, it must retry sending another RRQ message again to request the translation table.

DATA timer value should be several times the ACK timer. Concretely, this value must be slightly greater than the product of the Maximum Number of Retransmissions and the ACK timer:

DATA_Timer > Max_Retransmissions · ACK_Timer

The reason for using this value is to avoid useless retransmissions by the server, because the client might have closed its connection, due to DATA timer timeout, before the server did. Thus, in case of DATA timer expiration, the server should close the connection before the client.

The following figure shows the mechanism of ACK timer expiration and data block retransmission:

4-June-07 P1901_PRO_016_r0

Submission page 366 UPA-OPERA

Client Server

PTTP.ACK(i-1)

PTTP.DATA(i)

PTTP.ACK(i)

PTTP.DATA(i)

AC

K Tim

er

PTTP.DATA(i)

PTTP.ACK(i)

PTTP.DATA(i+1)

ACK Timer expiredRetransmit last

data block

ACK Timer expiredRetransmit last

data block

AC

K Timer

Figure 154 ACK timer expiration and data block retransmission.

The following figure shows the mechanism of DATA timer expiration and Maximum Number of Retransmissions exceeded, whose consequence is the connection closing:

4-June-07 P1901_PRO_016_r0

Submission page 367 UPA-OPERA

Client Server

PTTP.ACK(i-1)

PTTP.DATA(i)

PTTP.ACK(i)

Maximum Numberof Retransmissions

exceededClose connection

PTTP.DATA(i)

DATA Timerexpired

Close connection

PTTP.DATA(i)

AC

K Tim

er

DA

TA T

imer

AC

K Tim

er

ACK Timer expiredRetransmit last

data block

ACK Timer expiredRetransmit last

data block

AC

K Tim

er

ACK Timer expiredRetransmit last

data block

Max_R

etransmissions · A

CK

_Timer

PTTP.DATA(i)

Figure 155 DATA timer expiration and Maximum Number of Retransmissions exceeded.

12.2.5.3 PTTP Packets Format

All the packets used by the PTTP protocol are encapsulated with the CCP format, with Type0 0x07. The Type1 field indicates the type of packet within the PTTP protocol:

• 0x06 RRQ (Establish connection)

• 0x07 Data

• 0x08 Data Ack

4-June-07 P1901_PRO_016_r0

Submission page 368 UPA-OPERA

The data field contains the block number and/or data to transmit.

12.2.5.3.1 RRQ packet

Dest MAC Src MAC Payload

0xAA

0xAA

0x03

0x00

0x07

Leng

th

0x13

0x9D

0x06

TPID

TCI

Figure 156 PTTP RRQ packet format

The destination address is the Multicast address 0x01139D000000 defined by the CCP protocol. When a node receives such a packet, it must not be forwarded.

12.2.5.3.2 DATA packet

Dest MAC Src MAC Payload

0xA

A0x

AA

Data (0-1024 bytes)

0x03

0x00

0x07

Leng

th

0x13

0x9D

0x07

TP

ID

TC

I

Block Number

Figure 157 PTTP DATA packet format

The destination and source address are the client and server MAC addresses respectively.

The Type1 field indicates this is a data packet. Next to this field, it is the data block number, and finally the data block. The data field can be empty if the DATA packet is the last packet of the transfer.

12.2.5.3.3 DATA ACK packet

4-June-07 P1901_PRO_016_r0

Submission page 369 UPA-OPERA

Figure 158 PTTP DATA ACK packet format

The destination and source address are the server and client MAC addresses respectively.

The Type1 field indicates this is a data ack packet. Next to this field, it is the acknowledged data block number.

12.2.5.4 Translation Table DATA format

The Translation Table data follows a specific format. It is a set of one or more parameter items. A parameter item is defined as follows:

ParameterCode ParameterValue

1 byte 0 ... n bytes

Index

2 bytes

TT Parameter Item (4 + n bytes)

Size

1 byte

Figure 159 Translation Table parameter item

The field Size is the number of bytes of the rest of parameter item (ParameterCode + Index + ParameterValue). The minimum value is thus 4. If the value is 0, it means that no more parameters are sent. It is mandatory to finish the Data block with a 0-size byte.

The ParameterCode is a 2-byte field. The first byte is reserved for future extensions. It defaults to 0x00. The second byte is the parameter code. The whole field identifies one and only one parameter.

The Index byte contains the index for list parameters (from 1 to 127). It is 0 for scalar parameters.

The ParameterValue contains the value for that parameter. Its format depends on the ParameterCode and may be of any type such as int8, int16, int32, string…

The next parameters are available:

4-June-07 P1901_PRO_016_r0

Submission page 370 UPA-OPERA

TRANSLATION TABLE PARAMETER

PARAMETER SIZE (IN BYTES)

PARAMETER CODE (IN HEXADECIMAL)

PARAMETER TYPE

TRANSLATION_USE_VLAN 1 0x00 01 Boolean

TRANSLATION_MNMT_VLAN 2 0x00 02 Int16

TRANSLATION_DATA_VLAN.i 2 0x00 03 Int16

TRANSLATION_VOIP_VLAN.i 2 0x00 04 Int16

TRANSLATION_ROOTPATH_OVLAN 2 0x00 05 Int16

TRANSLATION_MAX_TXTPUT_TX.i 4 0x00 06 Int32

TRANSLATION_MAX_TXTPUT_RX.i 4 0x00 07 Int32

Table 67 Translation table parameters

When the Data block exceeds the maximum length of 1024 bytes, it is fragmented and transferred in different DATA packets. No padding is needed for the last packet in case the Data field is smaller than 1024 bytes.

The big endian format is used in the entire Data block to preserve the net order.

The Figure 160 shows a complete data block.

Parameter2

4 + n1 bytes

0x00

TT Data block

Parameter1

1 byte

Parameter3 ParameterN. . .

4 + n2 bytes 4 + n3 bytes 4 + nN bytes

Figure 160 Full Translation Table Data block

12.2.5.5 VLAN configuration while doing PTTP

In order to discover the type of network where the node is booting, the PTTP petitions are made as described below:

4-June-07 P1901_PRO_016_r0

Submission page 371 UPA-OPERA

• Step 1: A PTTP request is made without VLANs and waits for a response. If there is response, stay without VLAN.

• Step 2: Then it switches to VLAN mode and makes a PTTP request using VLAN tag #1 (reserved in the IEEE P1901 network) and waits for response. If there is response, stay with VLAN.

Step 3: Back to step 1.

To accomplish this, the VLAN #1 must be accepted in the node that acts as PTTP master.

12.2.5.6 PTTP packets forwarding

When a node receives a PTTP RRQ packet, the packet is not treated as multicast to avoid packet storms.

In transmission, the request is forwarded to all active interfaces in order to reach any active PTTP available server.

12.2.6 Translation Table

The translation table allows particularizing configuration files for a given network sector. Auto-configuration file is parametric, and the same for a given user category. Different sectors have different Translation Tables and each node combines its configuration file with the translation table to obtain its particular setting in VLAN/OVLAN and QoS terms.

The parameters cointained in the translation table are shown in 12.2.5.4.

The next figure shows the use of the translation table.

Configuration File

VLAN= %DTVL

%DTVL =13 %DTVL =14

S S

VLAN=13 VLAN=14

User A Sector 1

User A Sector 2

Translation table Translation table

Figure 161 Translation table example

4-June-07 P1901_PRO_016_r0

Submission page 372 UPA-OPERA

12.2.7 Auto-configuration & Networking

12.2.7.1 VLAN Network

The network model is described as follows:

• The BPL network is a switched network with different VLAN tags.

• BPL management protocols (PTTP, ABLP, etc.) use VLAN 1, while high-level management protocols (DHCP, TFTP, HTTP, NTP, SNMP, etc.) use the management VLAN configured by the auto-configuration procedure. The Management VLAN may be different in different LV cells.

• The end user node receives untagged traffic from the external interface and this traffic is tagged with the correct Data VLAN according to the ISP operator that the customer belongs to. So there can be more than one Data VLAN per LV cell.

• The end user node generates traffic from VoIP tagged with the correct VoIP VLAN according to the voice operator that the customer belongs to. So there can be more than one VoIP VLAN per LV cell.

• It is possible to add private VLANs between specific customers that do not belong to any ISP or voice operator. In this case, VLAN trunks must be defined in the intermediary equipment in order to allow all of that tagged traffic.

All of the traffic is tagged inside the BPL network.

Each node must receive its VLAN configuration inside the auto-configuration file. In addition to this, and in order to reduce the number of auto-configuration files, there will be a translation table transferred between nodes which. The translation table contains information about the Management, Data and VoIP VLANs used in a LV cell.

4-June-07 P1901_PRO_016_r0

Submission page 373 UPA-OPERA

PSTN

Internet Head-End

Repeater

Repeater

MV Node

Head-End

Repeater

Repeater

MV node

MV Node

MV link

MV link

Router

L2 visibility area

End User-1

End User-2

End User-3

End User-4

End User-5

End User-6

End User-7

End User-8

VoIP-Op1

Data-Op1

VoIP-Op1Data-Op2

VoIP-Op4

Data-Op1

VoIP-Op1Data-Op3

Private1

VoIP-Op1

Data-Op2

Private1

VoIP-Op3Data-Op1

VoIP-Op1

Data-Op2

VoIP-Op4Data-Op3

Opt Fiber

Figure 162 VLAN use inside the BPL network

The figure above shows the use of VLAN inside the BPL network.

12.2.7.2 noVLAN Network

The use of VLANs is not mandatory but is advisable for privacy reasons. Nevertheless this privacy can be implemented with different tools or if the operator simply wants to establish a LAN.

The node will perform its PTTP requests, switching between VLAN #1 and not using VLAN, and finally a master will answer with the translation table that will at least contain the parameter “USE VLAN = no”.

Once the modem has received the translation table and does not need to configure anything with regard to VLANs, it can complete the following steps: DHCP, TFTP and configuration.

12.2.7.3 OVLAN Configuration and Root Interface

The basic OVLAN configuration in IEEE P1901 avoids the visibility between customers connected to the end-user nodes in a simple way. All of the customer data packets in the same LV cell are tagged with the Rootpath OVLAN tag. This tag is the only allowed tag in the entire path to the backbone. In the path from the backbone to the customers, the packets are tagged with the ALL_VLAN tag (4095) in equipment that is connected to the backbone,

4-June-07 P1901_PRO_016_r0

Submission page 374 UPA-OPERA

and no tag is allowed in this path. However, packets with the ALL_VLAN tag are not filtered, so only packets from the backbone can be transmitted over the downstream path.

12.2.7.4 User Profiles

The use of profiles allows securely assigning resources to end-user modems based on MAC address. They also inform the master about the VLAN/OVLAN and QoS settings to be applied to the slave.

12.2.7.5 User Profiles inside auto-configuration

Inside a master’s auto-configuration file, there is a section with user profiles. These profiles contain the information a master needs to know to configure a port to a new slave that enters the network. The information is related to QoS and VLAN/OVLAN configuration.

The figure shows an example on the use of user profiles to configure different QoS settings:

Configuration File

#Profile 1BW = 500

#Profile 2BW = 1000

S S

User AProfile 1

User BProfile 2

M M

Radius Server

BW=500 BW=1000

Figure 163 Radius profiles example

There will be always an invited profile, profile number 1, applied to the users with no specific profile or if the corresponding profile is not available. This invited profile, as well as the other profiles, can be redefined with auto-configuration.

4-June-07 P1901_PRO_016_r0

Submission page 375 UPA-OPERA

12.2.7.6 Working with RADIUS Authentication

When RADIUS authentication is active, the repeater or HE sends an Access-Request message to the RADIUS server, which checks if the MAC address corresponds to one that was accepted and, in that case, it responds with an Access-Accept message containing the profile number. Otherwise, the server replies with a RADIUS Access-Reject message and the authentication fails. If the authentication fails the slave will not join the BPL network.

Once authentication is achieved, the slave is authorized and a QoS and VLAN/OVLAN configuration takes place between the master and slave. The master uses the profile number to get these parameters. The slave uses the parameters inside the downloaded auto-configuration file. The slave node downloads the file during its auto-configuration process, after the RADIUS request on the master-side has been successful.

12.2.7.7 Working without RADIUS Authentication

If there is no RADIUS authentication, two ways of operation are possible.

The first one is ‘NO AUTHENTICATION’. The master will configure a default QoS and VLAN/OVLAN configuration (the invited profile) for the slave.

The other one is the use of an ‘AUTHORIZATION LIST’. With ‘ACCESSP_AUTHLIST_x’, up to 128 different users can be added with their related profiles. The user is searched for in that list, and if an entry matches with the new user, the QoS and VLAN/OVLAN configuration related to that entry is used for the new user. Otherwise, the user is rejected.

12.2.8 DHCP Support

12.2.8.1 DHCP Client

The IEEE P1901 nodes perform a DHCP request with extended custom options. So not only the basic IP configuration (IP address, netmask and gateway) is requested, but the client also requests three custom options in order to obtain the auto-configuration file:

• tftp-server-name: String with the IP address of the TFTP server.

• extensions-path-name: String with the path and file name of the auto-configuration file inside the TFTP server.

• PTTP-code: 32 bits integer that represents the PTTP behaviour:

o 0: Boot without VLANs and skip PTTP.

o 1: Keep on requesting PTTP (does nothing).

o [2-4095]: Boot with Management VLAN = PTTP-code. Skip PTTP.

4-June-07 P1901_PRO_016_r0

Submission page 376 UPA-OPERA

On the other hand, if the phone number has to be downloaded using DHCP, another custom option should be requested:

• phone-number: Text with the phone number.

12.2.8.2 DHCP Server

A DHCP server that supports DHCP extensions is needed in order to provide the different IEEE P1901 nodes with the custom options requested.

Warning: Although the two first custom options needed by the DHCP client are supposed to be standard, sometimes it is necessary to define the extensions-path-name option in the header of the dhcpd.conf file. The PTTP-code option is mandatory to define:

option extensions-path-name code 18 = string;

option PTTP-code code 120 = unsigned integer 32;

It is also necessary to define the phone-number in the header of the dhcpd.conf file, if the phone number of some CPEs will be configured via DHCP:

option phone-number code 135 = text;

12.2.9 RADIUS Support

Every IEEE P1901 master or repeater node may implement a RADIUS client in order to authenticate users (slaves) connected through the BPL to that node. The modem acts as a NAS, which requests authentication, gives authorization, and allocates resources.

12.2.9.1 RADIUS Client

The RADIUS client implemented in the IEEE P1901 nodes is configured through the auto-configuration file with three parameters:

• RADIUS server IP address

• RADIUS server UDP port

• Shared secret password between client and server

It also sends two RADIUS standard attributes within a RADIUS request:

• MAC address of the slave trying to join the network as User name.

4-June-07 P1901_PRO_016_r0

Submission page 377 UPA-OPERA

• MAC address of the master as NAS-Identifier.

12.3 Auto-configuration Parameters

12.3.1 Parameter Types

There are three types of parameters inside the auto-configuration file:

1. Scalar: PARAMETER = value

2. List: PARAMTER.index1 = value

3. Table: PARAMETER.index1.index2 = value

The first valid index for lists and tables is 1.

12.3.2 Parameter Format

The format of the parameters is:

• PARAMETER_LABEL[.x][.y] = value

for concrete parameter values

• PARAMETER_LABEL[.x][.y] = %parametric_value

for parametric parameter values

For example, the following parameter could be inside an end-user auto-configuration file:

• VLAN_DATA_TAG = 452

or

• VLAN_DATA_TAG = %DATA3

In the second case, the parametric value must be translated to its correct value using the translation table.

The following is a list with the syntax of the autoconfiguration parameters.

It is important that the order in which these parameters appear in the auto-configuration file is preserved.

4-June-07 P1901_PRO_016_r0

Submission page 378 UPA-OPERA

12.3.3 Auto-configuration parameter list

12.3.3.1 General Parameters

• GENERAL_USE_AUTOCONF = [YES | NO]

o Parameter: YES enables autoconf, NO disables it.

• GENERAL_TYPE = [HE | CPE | TDREPEATER]

o Parameter: Possible values are: HE (Head End), CPE (Customer Premises Equipment) and TDREPEATER (Time Division Repeater).

• GENERAL_FW_TYPE = [MV | LV | EU]

o Parameter: Possible values are: MV (Medium Voltage), LV (Low Voltage) and EU (End User).

• GENERAL_SIGNAL_MODE = [1 … m]

o Parameter: Configures the physical mode used by the modem. This value can reach from 1 to m, depending on the range of frequency used.

• GENERAL_SIGNAL_MODE_LIST.i = [1 … m]

o Parameter: This value can reach from 1 to m, depending on the range of frequency used.

• GENERAL_AUTHENTICATION = [RADIUS | AUTHLIST | NONE]

o Parameter: There are three possible values: RADIUS, ATHLIST and NONE. If RADIUS is selected, a RADIUS server will be in charge of accepting new users and assigning the profile. If AUTHLIST is selected, authentication will be done by checking a list provided in the auto-configuration file. If NONE is selected, all the users will be accepted

• GENERAL_STP = [YES | NO]

o Parameter: Enables (YES) or disables (NO) the Spanning Tree Protocol in the node. Enabled by default.

• GENERAL_COMMON_STP_EXTA = [YES | NO]

o Parameter: Enables (YES) or disables (NO) the Common STP feature in the Ethernet interface A (EXTA).

• GENERAL_COMMON_STP_EXTB = [YES | NO]

o Parameter: Enables (YES) or disables (NO) the Common STP feature in the Ethernet interface B (EXTB).

• GENERAL_IP_ADDRESS = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

4-June-07 P1901_PRO_016_r0

Submission page 379 UPA-OPERA

• GENERAL_IP_NETMASK = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

• GENERAL_IP_GATEWAY = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

• GENERAL_IP_USE_DHCP = [YES | NO]

o Parameter: If Yes DHCP is used, if NO DHCP is not used.

12.3.3.2 AGC (Automatic Gain Control) Parameters

• AGC_TX_GAIN = [0 | 1]

o Parameter: Selecting 1, the default value, 12 dB are added to the reference gain. In case of 0 value, no extra gain is added (0 dB).

• AGC_RX_ENABLE = [0 | 1]

o Parameter: Enables (1) or disables (0) the hardware AGC.

• AGC_RX_FIX_GAIN = [0 … 7]

o Parameter: Eight values, from 0 to 7, are possible. Those values represent gains from 0 to 42 dB, respectively, added to the reference gain in steps of 6 dB.

• AGC_MAX_RX_GAIN = [0 … 7]

o Parameter: Eight values, from 0 to 7, are possible. Those values represent gains from 0 to 42 dB, respectively, added to the reference gain in steps of 6 dB. The default value is 7 (42 dB).

• AGC_MIN_RX_GAIN = [0 … 7]

o Parameter: Eight values, from 0 to 7, are possible. Those values represent gains from 0 to 42 dB, respectively, added to the reference gain in steps of 6 dB. The default value is 7 (42 dB).

12.3.3.3 RADIUS Parameters

• RADIUS_SERVER_IP = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

• RADIUS_SERVER_PORT = ddddd

o Parameter: Port number

4-June-07 P1901_PRO_016_r0

Submission page 380 UPA-OPERA

• RADIUS_SHARED_SECRET = <string>

o Parameter: ‘shared_secret’ (string, limited to 16 characters, of the shared secret)

12.3.3.4 Class of Service (CoS) Parameters

• COS_CUSTOM_CRITERION_OFFSET.i = [1 … 531]

o Parameter: Values from 1 to 531 are possible.

• COS_CUSTOM_CRITERION_PATTERN.i = 0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits.

• COS_CUSTOM_CRITERION_BITMASK.i = 0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits.

• COS_CUSTOM_CRITERION_CLASSES_OFFSET.i = [1 … 531]

o Parameter: Values from 1 to 531 are possible.

• COS_CUSTOM_CRITERION_CLASSES_BITMASK.i i = 0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits.

• COS_CUSTOM_CRITERION_CLASSES_PATTERN.i.j i=0xXXXXXXXXXXXXXXXX

o Parameter: The value must be specified with 16 hexadecimal digits

• COS_CUSTOM_CRITERION_CLASSES_PRIO.i.j = [0 … 7]

o Parameter: Values from 0 to 7 are allowed.

• COS_CRITERION.k = [8021P | TOS | CUSTOM1 | CUSTOM2]

o Parameter: There are two predefined criteria (8021P, based on IEEE 802.1p VLAN tag priority field, and TOS, based on IP type of service), and two custom criteria (CUSTOM1 and CUSTOM2), defined with the parameters above (COS_CUSTOM_CRITERION_xxx).

• COS_DEFAULT_PRIO = [0 … 7]

o Parameter: Values from 0 to 7 are allowed.

12.3.3.5 Quality of Service (QoS) Parameters

• QOS_ENABLE = [YES | NO]

o Parameter: Enables (YES) or disables (NO) the quality of service in the node.

• QOS_PRIOACK.prio+1 = [0 | 1]

4-June-07 P1901_PRO_016_r0

Submission page 381 UPA-OPERA

o Parameter: This list enables (1) or disables (0) the Layer 2 ACK protocol depending on the priority level transmitted by the modem (priority levels: prio = 0 … 7).

• QOS_PRIORSV.prio+1 = [CBR | VBR | BE]

o Parameter: Type of reservation for each priority

12.3.3.5.1 Slave Node Parameters (CPE)

• QOS_UPBWLIMIT = [YES | NO]

o Parameter: Enables (YES) or disables (NO) the transmission bandwidth limitation in a slave.

• QOS_CLASSES.prio+1 = [VOIP | VIDEO | DATAH | DATAL]

o Parameter: Sets the type of application for each service class

12.3.3.5.2 Master Node Parameters (HE or REPEATER)

• QOS_LATENCY_STEP = [20 … 400]

o Parameter: Values in ms, from 20 to 400.

• QOS_BW_POLICY = [0 | 1]

o Parameter: A value of 0 corresponds to Fair mode, and 1 to Priority-based mode.

• QOS_LATENCY.prio+1 = [1 | 2 | 4 | 8]

o Parameter: Priority levels: prio = 0 … 7. Possible values are: 1, 2, 4 and 8.

12.3.3.6 Profiles Parameters

• PROFILE_MAX_TXPUT_TX.i = dddd (in kbps)

o Parameter: Number of kbps)

• PROFILE_MAX_TXPUT_RX.i = dddd (in kbps)

o Parameter: Number of kbps)

• PROFILE_PRIORITIES.i = [0x00-0xFF]

o Parameter: ‘0xXX’ (hexadecimal number from 00 to FF)

• PROFILE_MNMT_VLAN.i = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

• PROFILE_DATA_VLAN.i = [2-4093] | %<PARAMETRIC VALUE>

4-June-07 P1901_PRO_016_r0

Submission page 382 UPA-OPERA

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

• PROFILE_VOIP_VLAN.i = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

• PROFILE_VLAN_ADD_TAG.i.j = [2-4093] or parametric

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

• PROFILE_VLAN_IS_ALLOWED_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to set the list as allowed) or ‘no’ (to set the list as forbidden)

• PROFILE_VLAN_TAGGED_ONLY_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to drop input packets without VLAN tag) or ‘no’ (to not drop input packets without VLAN tag)

• PROFILE_VLAN_OUTFORMAT_TAG_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to send packets with VLAN tag) or ‘no’ (to not send packets with VLAN tag)

• PROFILE_OVLAN_ADD_TAG.i.j = [2-4094] or parametric

o Parameter: Number from 2 to 4094 or ‘%Parameter_name’ (parametric value preceded by a %)

• PROFILE_OVLAN_IS_ALLOWED_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to mark the list as allowed) or ‘no’ (to mark the list as forbidden)

• PROFILE_OVLAN_TAGGED_ONLY_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to drop input packets without OVLAN tag) or ‘no’ (to not drop input packets without OVLAN tag)

• PROFILE_OVLAN_OUTFORMAT_TAG_IFACE_USER.i = [yes/no]

o Parameter: ‘yes’ (to send packets with OVLAN tag) or ‘no’ (to not send packets with OVLAN tag)

• PROFILE_UPBWLIMIT.i = [YES|NO]

o Parameter: ‘yes’ (to limit the upstream) or ‘no’ (to not limit the upstream)

• PROFILE_DWBWLIMIT.i = [YES|NO]

o Parameter: ‘yes’ (to limit the downstream) or ‘no’ (to not limit the downstream)

12.3.3.7 Translation Table Parameters

• TRANSLATION_MNMT_VLAN = [2-4093]

4-June-07 P1901_PRO_016_r0

Submission page 383 UPA-OPERA

o Parameter: Number from 2 to 4093

• TRANSLATION_DATA_VLAN.i = [2-4093]

o Parameter: Number from 2 to 4093

• TRANSLATION_VOIP_VLAN.i = [2-4093]

o Parameter: Number from 2 to 4093

• TRANSLATION_ROOTPATH_OVLAN = [2-4094]

o Parameter: Number from 2 to 4094

12.3.3.8 VLAN Parameters

• VLAN_ENABLE = [yes|no]

o Parameter: ‘yes’ (to enable VLAN use) or ‘no’ (to disable VLAN use)

• VLAN_MNMT_TAG = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter name’ (parametric value preceded by a %)

• VLAN_MNMT_PRIO = [0-7]

o Parameter: Number from 0 to 7

• VLAN_DATA_TAG = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name’ (parametric value preceded by a %)

• VLAN_DATA_PRIO = [0-6]

o Parameter: Number from 0 to 6

• VLAN_VOIP_TAG = [2-4093] | %<PARAMETRIC VALUE>

o Parameter: Number from 2 to 4093 or ‘%Parameter_name‘ (parametric value preceded by a %)

• VLAN_VOIP_PRIO = [0-7]

o Parameter: Number from 0 to 7

• VLAN_VSIG_PRIO = [0-7]

o Parameter: Number from 0 to 7

• VLAN_TRUNK.i = [2-4093]

o Parameter: Number from 2 to 4093

4-June-07 P1901_PRO_016_r0

Submission page 384 UPA-OPERA

• VLAN_RETAG_EXTA_SRC = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) or Number from 2 to 4095.

• VLAN_RETAG_EXTA_DST = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) or Number from 2 to 4095

• VLAN_RETAG_EXTB_SRC = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) or Number from 2 to 4095

• VLAN_RETAG_EXTB_DST = [0 | 2-4095]

o Parameter: ‘0’ (in order to disable retagging in interface) or Number from 2 to 4095

12.3.3.9 OVLAN Parameters

• OVLAN_ENABLE = [yes|no]

o Parameter: ‘yes’ (to enable OVLAN use) or ‘no’ (to disable OVLAN use)

• OVLAN_DATA_TAG = [2-4094] | %ROOTPATH_OVLAN

o Parameter: Number from 2 to 4093 or ‘%ROOTPATH_OVLAN’ (use the OVLAN Rootpath value)

• OVLAN_TRUNK.i = [2-4094]

o Parameter: Number from 2 to 4094

12.3.3.10 Access Protocol Parameters

• AP_MIN_NUMBER_HOPS = [0|1|…]

o Parameter: Number from 0

• AP_FORBID_MASTER.i = 0xXXXXXXXXXXXX

o Parameter: ‘0xXXXXXXXXXXXX’ (MAC address of forbidden master)

• AP_PREFER_MASTER = 0xXXXXXXXXXXXX

o Parameter: ‘0xXXXXXXXXXXXX’ (MAC address of preferred master)

• AP_FIX_MASTER = ‘0xXXXXXXXXXXXX’

o Parameter: 0xXXXXXXXXXXXX (MAC address of fixed master)

• AP_CHECK_BEST_MASTER_ENABLE = [yes|no]

4-June-07 P1901_PRO_016_r0

Submission page 385 UPA-OPERA

o Parameter: ‘yes’ (to enable checking of best master periodically after connecting with one) or ‘no’ (to disable the checking of better masters after connecting to one).

• AP_CHECK_BEST_MASTER_PERIOD = <time>

o Parameter: Number of minutes

• AP_CURRENT_MASTER_MIN_BPS = <bps_thr>

o Parameter: Number of bits per symbol

• AP_NEW_MASTER_MIN_BPS = <bps_thr>

o Parameter: Number of bits per symbol

• ACCESSP_AUTHLIST_MAC.i = 0xXXXXXXXXXXXX

o Parameter: ‘0xXXXXXXXXXXXX’ (MAC address authorized to connect)

• ACCESSP_AUTHLIST_PROFILE.i = [1-16]

o Parameter: Number of the profile related to a MAC authorized

• ACCESSP_AUTHLIST_FWTYPE.i = [MV|LV|EU]

o Parameter: ‘MV’ (medium voltage) or ‘LV’ (low voltage) or ‘EU’ (End User)

12.3.3.11 STP Parameters

• STP_PRIO = [0 … 65535]

o Parameter: Valid values range from 0 to 65535.

• STP_PORT.i = [EXTA | EXTB | BPL]

o Parameter: Three possible values: EXTA, EXTB and BPL (i = 1,2 or 3).

• STP_PORT_PRIO.i = [0 … 255]

o Parameter: Valid values range from 0 to 255 (i = 1,2 or 3).

• STP_PORT_COST.i = [0 … 4294967295]

o Parameter: Valid values range from 0 to 4294967295 (i = 1,2 or 3).

• STP_HELLO_TIME = [10 … 40]

o Parameter: Valid values range from 10 to 40.

• STP_MAX_AGE = [10 … 40]

o Parameter: Valid values range from 10 to 40.

4-June-07 P1901_PRO_016_r0

Submission page 386 UPA-OPERA

• STP_FORWARD_DELAY = [40 … 300]

o Parameter: Valid values range from 40 to 300.

• STP_FRONTIER = [EXTA | EXTB | NONE]

o Parameter: Valid values are: EXTA (Ethernet interface A), EXTB (Ethernet interface B) and NONE (Spanning Tree Frontier disabled).

• STP_MODE = [STP | RSTP]

o Parameter: Possible values: STP selects STP or RSTP selects RSTP.

12.3.3.12 VoIP Parameters

• VOIP_ENABLE = [ENABLED | DISABLED]

o Parameter: This parameter enables (ENABLED) or disables (DISABLED) the VoIP service.

• VOIP_GATEKEEPERIP = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

• VOIP_LINE1NUMBER = number

o Parameter: This parameter is a string (maximum string length is 20 characters) (e.g. “VOIP_LINE1NUMBER = 612345678”).

• VOIP_DIALPLAN = ([0 … 9, ‘T’, ‘X’, ‘.’, ‘|’])

o Parameter: This parameter is a string with maximum length is 200 characters (e.g. “VOIP_DIALPLAN = (9XXXXXXXX|6XXXXXXXX|00X.T)”.

• VOIP_INBANDDTMF = [ENABLED | DISABLED]

o Parameter: This parameter enables (ENABLED) or disables (DISABLED) in-band DTMF feature.

• VOIP_OUTOFBANDDTMF = [ENABLED | DISABLED]

o Parameter: This parameter enables (ENABLED) or disables (DISABLED) out-of-band DTMF feature.

• VOIP_KEYPADTYPE = [KEYPADTYPE_NONE | KEYPADTYPE_H225 | KEYPADTYPE_H245ALPHANUMERIC | KEYPADTYPE_H245SIGNAL | KEYPADTYPE_RFC2833]

o Parameter: This parameter is a string (up to 30 characters). Valid values are the following:

o KEYPADTYPE_H225: H.225/Q.931 User Info field (Keypad facility information element)

4-June-07 P1901_PRO_016_r0

Submission page 387 UPA-OPERA

o KEYPADTYPE_H245ALPHANUMERIC: H.245 User Input Indication (UII) Alphanumeric message

o KEYPADTYPE_H245SIGNAL: H.245 User Input Indication (UII) Signal Type message

o KEYPADTYPE_RFC2833: RTP stream as defined in RFC 2833

o KEYPADTYPE_NONE: no out-of-band signalling

• VOIP_CALLSIGPORT1 = [1025 … 65530]

o Parameter: Valid values range from 1025 to 65530.

• VOIP_G711USS = [YES | NO]

o Parameter: Selects whether silence suppression for G.711 μ-law is enabled (YES) or not (NO).

• VOIP_G711UPACK = [2 … 4]

o Parameter: Valid values range from 2 (20 ms) to 4 (40 ms).

• VOIP_G711ASS = [YES | NO]

o Parameter: Selects whether silence suppression for G.711 A-law is enabled (YES) or not (NO).

• VOIP_G711APACK = [2 … 4]

o Parameter: Valid values range from 2 (20 ms) to 4 (40 ms).

• VOIP_JB_TYPE = [FIXED | ADAPTIVE]

o Parameter: Selects either adaptive (ADAPTIVE) or fixed (FIXED) jitter buffer.

• VOIP_FJB_DELAY = [1 … 10] * 10

o Parameter: Valid values range from 10 to 100 ms.

• VOIP_AJB_MAXDELAY = [1 … 19] * 10

o Parameter: Valid values range from 10 to 190 ms.

• VOIP_G729ON = [YES | NO]

o Parameter: Selects whether G.729 codec is enabled (YES) or not (NO).

• VOIP_G729SS = [YES | NO]

o Parameter: Selects whether G.729 silence enabled is supported (YES) or not (NO).

• VOIP_G729PACK = [2 … 4]

o Parameter: Valid values range from 2 (20 ms) to 4 (40 ms).

4-June-07 P1901_PRO_016_r0

Submission page 388 UPA-OPERA

• VOIP_ALTERNATEGK = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) alternate gatekeeper feature for H.323.

• VOIP_ALTGKIP = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

• VOIP_GKDISCOVERY = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) gatekeeper discovery feature for H.323.

• VOIP_FULLRRQ1 = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) full gatekeeper registration request for H.323.

• VOIP_TIMETOLIVE = [≥ 60]

o Parameter: The minimum valid value is 60 seconds.

• VOIP_FASTCONNECT = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) fast connect signalling feature for H.323.

• VOIP_H245TUNNEL = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) H.245 tunnelling signalling feature for H.323.

• VOIP_COUNTRY = [XX | ES | PT | GB | JP | FR | SG | RU | AU]

o Parameter: This parameter is a string (up to 20 characters). Valid values are: The USA (XX), Spain (ES), Portugal (PT), The United Kingdom (GB), Japan (JP), France (FR), Singapore (SG), Russia (RU) and Australia (AU). The default country is Spain (ES).

• VOIP_TONE_DIALTONE = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_DIALTONE = 425@-10#ON”).

• VOIP_TONE_NETWORKBUSY = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_BUSY = 425@-10#ON(200),OFF(200),R”).

• VOIP_TONE_BUSY = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_BUSY = 425@-10#ON(200),OFF(200),R”).

4-June-07 P1901_PRO_016_r0

Submission page 389 UPA-OPERA

• VOIP_TONE_RINGBACK = freq1@pot1+freq2@pot2#ON(time),OFF(time),IDLE(time),R

o Parameter: This parameter is a string (up to 70 characters) (e.g. “VOIP_TONE_RINGBACK = 425@-10#ON(1500),OFF(3000),R”).

• VOIP_RTP_TOS = 0xXX

o Parameter: value must be specified with 2 hexadecimal digits.

• VOIP_CALLSIG_TOS 0xXX

o Parameter: value must be specified with 2 hexadecimal digits.

12.3.3.13 NTP Parameters

• NTP_ENABLE = [ENABLED | DISABLED]

o Parameter: Enables (ENABLED) or disables (DISABLED) the NTP feature.

• NTP_SERVER_IP = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

• NTP_TIMEZONE = [-12 … 12] * 60

o Parameter: This value must be specified in minutes (in 60-minute steps) relative to Universal Time (UT). A value of 0 corresponds to UT.

• NTP_DST = [YES | NO]

o Parameter: If the value is YES, the time correction for daylight savings time is applied. Not applied if NO.

12.3.3.14 Custom VLAN/OVLAN Parameters

• USE_CUSTOM_VLAN_OVLAN = [yes/no]

o Parameter: ‘yes’ (to enable the custom VLAN/OVLAN use) or ‘no’ (to disable the custom VLAN/OVLAN use)

• VLAN_TAGGED_ONLY_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to enable tag only in interface root) or ‘no’ (to disable tag only in interface root)

• VLAN_TAGGED_ONLY_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to enable tag only in Ethernet A) or ‘no’ (to disable tag only in Ethernet A)

• VLAN_TAGGED_ONLY_IFACE_EXTB = [yes/no]

o Parameter: ‘yes’ (to enable tag only in Ethernet B) or ‘no’ (to disable tag only in Ethernet B)

4-June-07 P1901_PRO_016_r0

Submission page 390 UPA-OPERA

• VLAN_TAGGED_ONLY_IFACE_PL_X = [yes/no]

Being X from 0 to 128

o Parameter: ‘yes’ (to enable tag only in BPL ports) or ‘no’ (to disable tag only in BPL ports)

• VLAN_OUTFORMAT_TAG_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to tag output in root interface) or ‘no’ (to disable tag output in root interface)

• VLAN_OUTFORMAT_TAG_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to tag output in Ethernet A) or ‘no’ (to disable tag output in Ethernet A)

• VLAN_OUTFORMAT_TAG_IFACE_EXTB = [yes/no]

o Parameter: ‘yes’ (to tag output in Ethernet B) or ‘no’ (to disable tag output in Ethernet B)

• VLAN_OUTFORMAT_TAG_IFACE_PL_X = [yes/no]

Being X from 0 to 128

o Parameter: ‘yes’ (to tag output in BPL ports) or ‘no’ (to disable tag output in BPL ports)

• VLAN_PVID_PL = [2-4095]

o Parameter: Number from 2 to 4095

• VLAN_PVID_EXTA = [2-4095]

o Parameter: Number from 2 to 4095

• VLAN_PVID_EXTB = [2-4095]

o Parameter: Number from 2 to 4095

• VLAN_PVID_FW = [2-4095]

o Parameter: Number from 2 to 4095

• VLAN_DEFAULT_PRIO_PL_X = [0-7]

Being X from 0 to 128

o Parameter: Number from 0 to 7

• VLAN_DEFAULT_PRIO_EXTA = [0-7]

o Parameter: Number from 0 to 7

• VLAN_DEFAULT_PRIO_EXTB = [0-7]

4-June-07 P1901_PRO_016_r0

Submission page 391 UPA-OPERA

o Parameter: Number from 0 to 7

• VLAN_DEFAULT_PRIO_FW = [0-7]

o Parameter: Number from 0 to 7

• VLAN_IS_ALLOWED_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

• VLAN_LIST_IFACE_ROOT.i = [2-4095]

o Parameter: Number from 2 to 4095

• VLAN_IS_ALLOWED_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

• VLAN_LIST_IFACE_EXTA.i = [2-4095]

o Parameter: Number from 2 to 4095

• VLAN_IS_ALLOWED_IFACE_EXTB = [yes/no]

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

• VLAN_LIST_IFACE_EXTB.i = [2-4095]

o Parameter: Number from 2 to 4095

• VLAN_IS_ALLOWED_IFACE_PL_X = [yes/no]

Being X from 0 to 128

o Parameter: ‘yes’ (to set list as allowed) or ‘no’ (to set list as forbidden)

• VLAN_LIST_IFACE_PL_Xi = [2-4095]

Being X from 0 to 128

o Parameter: Number from 2 to 4095

• OVLAN_TAGGED_ONLY_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to accept only tagged packets at root interface) or ‘no’ (to accept any packet at root interface)

• OVLAN_TAGGED_ONLY_IFACE_PL_X= [yes/no]

Being X from 0 to 128

4-June-07 P1901_PRO_016_r0

Submission page 392 UPA-OPERA

o Parameter: ‘yes’ (to accept only tagged packets at BPL ports) or ‘no’ (to accept any packet at BPL ports)

• OVLAN_OUTFORMAT_TAG_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to introduce a tag in output packets at root interface) or ‘no’ (to not introduce a tag in output packets at root interface)

• OVLAN_OUTFORMAT_TAG_IFACE_PL_X = [yes/no]

Being X from 0 to 128

o Parameter: ‘yes’ (to introduce a tag in output packets at BPL ports) or ‘no’ (to not introduce a tag in output packets at BPL ports)

• OVLAN_POVID_PL_X = [2-4095]

Being X from 0 to 128

o Parameter: Number from 2 to 4095

• OVLAN_POVID_EXTA = [2-4095]

o Parameter: Number from 2 to 4095

• OVLAN_POVID_EXTB = [2-4095]

o Parameter: Number from 2 to 4095

• OVLAN_POVID_FW = [2-4095]

o Parameter: Number from 2 to 4095

• OVLAN_IS_ALLOWED_IFACE_ROOT = [yes/no]

o Parameter: ‘yes’ (to set the root interface list as allowed) or ‘no’ (to set the root interface list as forbidden)

• OVLAN_LIST_IFACE_ROOT.i = [2-4095]

o Parameter: Number from 2 to 4095

• OVLAN_IS_ALLOWED_IFACE_EXTA = [yes/no]

o Parameter: ‘yes’ (to set the Ethernet A interface list as allowed) or ‘no’ (to set the Ethernet A interface list as forbidden)

• OVLAN_LIST_IFACE_EXTA.i = [2-4095]

o Parameter: Number from 2 to 4095

• OVLAN_IS_ALLOWED_IFACE_EXTB = [yes/no]

4-June-07 P1901_PRO_016_r0

Submission page 393 UPA-OPERA

o Parameter: ‘yes’ (to set the Ethernet B interface list as allowed) or ‘no’ (to set the Ethernet B interface list as forbidden)

• OVLAN_LIST_IFACE_EXTB.i = [2-4095]

o Parameter: Number from 2 to 4095

• OVLAN_IS_ALLOWED_IFACE_PL_X = [yes/no]

Being X from 0 to 128

o Parameter: ‘yes’ (to set the Ethernet B interface list as allowed) or ‘no’ (to set the Ethernet B interface list as forbidden)

• OVLAN_LIST_IFACE_PL_X.i = [2-4095]

Being X from 0 to 128

o Parameter: Number from 2 to 4095

12.3.3.15 SNMP parameters

• SNMP_TRAP_IP_ADDRESS = <ddd.ddd.ddd.ddd>

o Parameter: The valid format is the dotted decimal notation (four decimal numbers separated by dots).

• SNMP_TRAP_COMMUNITY_NAME = community

o Parameter: This parameter is a string (up to 25 characters) (e.g. “SNMP_TRAP_COMMUNITY_NAME = public”).

4-June-07 P1901_PRO_016_r0

Submission page 394 UPA-OPERA

ANNEX A MIB DEFINITION IN ASN.1 FORMAT (NORMATIVE)

BPL-DEVICE-MIB DEFINITIONS ::= BEGIN

IMPORTS

NetworkAddress, IpAddress, Counter, Gauge, TimeTicks,

enterprises

FROM RFC1155-SMI

OBJECT-TYPE,

FROM RFC-1212

STATUS,

FROM SNMPv2-SMI

PhysAddress,

FROM RFC1213-MIB;

iso OBJECT IDENTIFIER ::= { 1 }

org OBJECT IDENTIFIER ::= { iso 3 }

dod OBJECT IDENTIFIER ::= { org 6 }

internet OBJECT IDENTIFIER ::= { dod 1 }

private OBJECT IDENTIFIER ::= { internet 4 }

enterprises OBJECT IDENTIFIER ::= { private 1 }

IEEE P1901 OBJECT IDENTIFIER ::= { enterprises 20804 }

v1 OBJECT IDENTIFIER ::= { IEEE P1901 1 }

--

4-June-07 P1901_PRO_016_r0

Submission page 395 UPA-OPERA

-- Object definition

--

-- Groups in v1 tree

plSystem OBJECT IDENTIFIER ::= {v1 1}

plBasic OBJECT IDENTIFIER ::= {v1 2}

plPhy OBJECT IDENTIFIER ::= {v1 3}

plMAC OBJECT IDENTIFIER ::= {v1 4}

plQoS OBJECT IDENTIFIER ::= {v1 5}

plStatistics OBJECT IDENTIFIER ::= {v1 7}

plTraps OBJECT IDENTIFIER ::= {v1 8}

plStp OBJECT IDENTIFIER ::= {v1 10}

plSecurity OBJECT IDENTIFIER ::= {v1 11}

--

-- Groups definition

--

--

-- The plSystem Group

--

plSystemTable OBJECT-TYPE

SYNTAX SEQUENCE OF plSystemEntry

ACCESS not-accessible

STATUS current

4-June-07 P1901_PRO_016_r0

Submission page 396 UPA-OPERA

DESCRIPTION "Generic information about the IEEE P1901 system."

::= { plSystem 1 }

plSystemEntry OBJECT-TYPE

SYNTAX plSystemEntry

ACCESS not-accessible

STATUS current

DESCRIPTION "System information gathered per card."

INDEX { plSysCard }

::= { plSystemTable 1 }

plSystemEntry ::= SEQUENCE { plSysCard INTEGER,

plSysNodeType INTEGER,

plSysNodeMode INTEGER,

plSysFWVersion IA5String (SIZE(0..128)),

plSysHWVersion IA5String (SIZE(0..128)),

plSysReset INTEGER,

plSysFactoryReset INTEGER,

plSysUseDHCP INTEGER,

plSysStaticIPAddress IpAddress,

plSysStaticNetMask IpAddress,

plSysStaticDefaultGW IpAddress,

plSysSaveAsPermanent INTEGER,

plSysConfUpload IA5String (SIZE (0..256)),

plSysConfDownload IA5String (SIZE (0..256)),

plSysUpdateStatus INTEGER,

plSysUpdate IA5String (SIZE(0..256)),

4-June-07 P1901_PRO_016_r0

Submission page 397 UPA-OPERA

plSysDNSIPAddress IpAddress,

plSysSnmpROComunityName DisplayString (SIZE(0..31)),

plSysSnmpRWComunityName DisplayString (SIZE(0..31)),

plSysSnmpTrapDest IpAddress

}

plSysCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plSystemEntry 1 }

plSysNodeType OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Node type: master -> 0

slave -> 1

repeater -> 2"

::= { plSystemEntry 2 }

plSysNodeMode OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Node mode: access -> 0

4-June-07 P1901_PRO_016_r0

Submission page 398 UPA-OPERA

in-home -> 1

medium-voltage -> 2"

::= { plSystemEntry 3 }

plSysFWVersion OBJECT-TYPE

SYNTAX IA5String (SIZE(0..128))

ACCESS read-only

STATUS current

DESCRIPTION "Firmware version"

::= { plSystemEntry 5 }

plSysHWVersion OBJECT-TYPE

SYNTAX IA5String (SIZE(0..128))

ACCESS read-only

STATUS current

DESCRIPTION "Hardware version"

::= { plSystemEntry 6 }

plSysReset OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "System reset"

::= { plSystemEntry 7 }

plSysFactoryReset OBJECT-TYPE

SYNTAX INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 399 UPA-OPERA

ACCESS read-write

STATUS current

DESCRIPTION "Restore factory parameters"

::= { plSystemEntry 8 }

plSysUseDHCP OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Use DHCP (1) or a fixed IP, netmask and gateway (0) instead"

::= { plSystemEntry 9 }

plSysStaticIPAddress OBJECT-TYPE

SYNTAX IpAddress

ACCESS read-write

STATUS current

DESCRIPTION "Default IP address if DHCP is disabled"

::= { plSystemEntry 10 }

plSysStaticNetMask OBJECT-TYPE

SYNTAX IpAddress

ACCESS read-write

STATUS current

DESCRIPTION "Default netmask if DHCP is disabled"

::= { plSystemEntry 11 }

plSysStaticDefaultGW OBJECT-TYPE

SYNTAX IpAddress

ACCESS read-write

4-June-07 P1901_PRO_016_r0

Submission page 400 UPA-OPERA

STATUS current

DESCRIPTION "Default gateway if DHCP is disabled"

::= { plSystemEntry 12 }

plSysSaveAsPermanent OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Saves changed objects as permanent"

::= { plSystemEntry 14 }

plSysConfUpload OBJECT-TYPE

SYNTAX IA5String (SIZE(0..256))

ACCESS read-write

STATUS current

DESCRIPTION "Uploads node local configuration to a server"

::= { plSystemEntry 15 }

plSysConfDownload OBJECT-TYPE

SYNTAX IA5String (SIZE(0..256))

ACCESS read-write

STATUS current

DESCRIPTION "Forces a configuration file download"

::= { plSystemEntry 16 }

plSysUpgradeStatus OBJECT-TYPE

4-June-07 P1901_PRO_016_r0

Submission page 401 UPA-OPERA

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Status of the current upgrade: finished KO -> 0

finished OK -> 1

busy (in progress) -> 2"

::= { plSystemEntry 19 }

plSysUpdate OBJECT-TYPE

SYNTAX IA5String (SIZE(0..256))

ACCESS read-write

STATUS current

DESCRIPTION "Updates the selected flash section of a modem"

::= { plSystemEntry 30 }

plSysDNSIPAddress OBJECT-TYPE

SYNTAX IpAddress

ACCESS read-write

STATUS current

DESCRIPTION "IP address of the DNS"

::= { plSystemEntry 31 }

plSysSnmpROComunityName OBJECT-TYPE

SYNTAX DisplayString (SIZE(0..31))

ACCESS read-write

STATUS current

DESCRIPTION "Community Name string”

4-June-07 P1901_PRO_016_r0

Submission page 402 UPA-OPERA

::= { plSystemEntry 32 }

plSysSnmpRWComunityName OBJECT-TYPE

SYNTAX DisplayString (SIZE(0..31))

ACCESS read-write

STATUS current

DESCRIPTION "Community Name string”

::= { plSystemEntry 33 }

plSysSnmpTrapDest OBJECT-TYPE

SYNTAX IpAddress

ACCESS read-only

STATUS current

DESCRIPTION "Trap destination IP address”

::= { plSystemEntry 34 }

--

-- The plBasic Group

--

plBasicTable OBJECT-TYPE

SYNTAX SEQUENCE OF plBasicEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plBasic 1 }

4-June-07 P1901_PRO_016_r0

Submission page 403 UPA-OPERA

plBasicEntry OBJECT-TYPE

SYNTAX plBasicEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plBasicCard }

::= { plBasicTable 1 }

plBasicEntry ::= SEQUENCE { plBasicCard INTEGER,

plBasicMode INTEGER,

plBasicCentralFrequency INTEGER,

plBasicBandwidth INTEGER,

plBasicSearchModes IA5String,

plBasicTXAGCEnable INTEGER,

plBasicRXAGCEnable INTEGER,

plBasicTXAGCGain INTEGER,

plBasicRXAGCGain INTEGER,

plBasicTXPowerMaskLB OCTET STRING (SIZE(769)),

plBasicTXPowerMaskHB OCTET STRING (SIZE(769)),

plBasicMasterMAC PhysAddress

}

plBasicCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

4-June-07 P1901_PRO_016_r0

Submission page 404 UPA-OPERA

DESCRIPTION "Node card number"

::= { plBasicEntry 1 }

plBasicMode OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Physical mode (1..M)"

::= { plBasicEntry 2 }

plBasicCentralFrequency OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Band Central Frequency in MHz"

::= { plBasicEntry 3 }

plBasicBandwidth OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Working Node Bandwidth in MHz"

::= { plBasicEntry 4 }

plBasicSearchModes OBJECT-TYPE

SYNTAX IA5String

ACCESS read-write

4-June-07 P1901_PRO_016_r0

Submission page 405 UPA-OPERA

STATUS current

DESCRIPTION "List of modes used for searching"

::= { plBasicEntry 5 }

plBasicTXAGCEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "TX AGC: Enabled -> 1

Disabled -> 0"

::= { plBasicEntry 6 }

plBasicRXAGCEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "RX AGC: Enabled -> 1

Disabled -> 0"

::= { plBasicEntry 7 }

plBasicTXAGCGain OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "TX AGC Gain"

::= { plBasicEntry 8 }

4-June-07 P1901_PRO_016_r0

Submission page 406 UPA-OPERA

plBasicRXAGCGain OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "RX AGC Gain"

::= { plBasicEntry 9 }

plBasicTXPowerMaskLB OBJECT-TYPE

SYNTAX OCTET STRING ( SIZE ( 769 ) )

ACCESS read-write

STATUS current

DESCRIPTION "Low half Powermask"

::= { plBasicEntry 10 }

plBasicTXPowerMaskHB OBJECT-TYPE

SYNTAX OCTET STRING ( SIZE ( 769 ) )

ACCESS read-write

STATUS current

DESCRIPTION "High half Powermask"

::= { plBasicEntry 11 }

plBasicMasterMAC OBJECT-TYPE

SYNTAX PhysAddress

ACCESS read-only

4-June-07 P1901_PRO_016_r0

Submission page 407 UPA-OPERA

STATUS current

DESCRIPTION "MAC address of the master of current node"

::= { plBasicEntry 12 }

--

-- The plPhy Group

--

-- plPhyByMAC Table

plPhyByMACTable OBJECT-TYPE

SYNTAX SEQUENCE OF plPhyByMACEntry

ACCESS not-accessible

STATUS current

DESCRIPTION "Physical parameters"

::= { plPhy 1 }

plPhyByMACEntry OBJECT-TYPE

SYNTAX plPhyByMACEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plPhyByMACCard, plPhyByMACMAC }

::= { plPhyByMACTable 1 }

plPhyByMACEntry ::= SEQUENCE { plPhyByMACCard INTEGER,

plPhyByMACMAC PhysAddress,

plPhyByMACTXBPC OCTET STRING (SIZE(769)),

plPhyByMACTXBPCAggregated INTEGER,

4-June-07 P1901_PRO_016_r0

Submission page 408 UPA-OPERA

plPhyByMACRXBPC OCTET STRING (SIZE(769)),

plPhyByMACRXBPCAggregated INTEGER,

plPhyByMACRXSNR OCTET STRING (SIZE(769)),

plPhyByMACRXCFR OCTET STRING (SIZE(769)),

plPhyByMACTXPhySpeed INTEGER,

plPhyByMACRXPhySpeed INTEGER,

plPhyByMACACK INTEGER,

plPhyByMACCipher INTEGER,

plPhyByMACTXHURTO INTEGER,

plPhyByMACRXHURTO INTEGER,

plPhyByMACIsActive INTEGER,

plPhyByMACRXTimeLastActivity INTEGER

}

plPhyByMACCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plPhyByMACEntry 1 }

plPhyByMACMAC OBJECT-TYPE

SYNTAX PhysAddress

ACCESS read-only

STATUS current

4-June-07 P1901_PRO_016_r0

Submission page 409 UPA-OPERA

DESCRIPTION "MAC Address"

::= { plPhyByMACEntry 2 }

plPhyByMACTXBPC OBJECT-TYPE

SYNTAX OCTET STRING ( SIZE ( 769 ) )

ACCESS read-only

STATUS current

DESCRIPTION "BPC in transmission for the low half band"

::= { plPhyByMACEntry 3 }

plPhyByMACTXBPCAggregated OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "BPC Aggregated in transmission"

::= { plPhyByMACEntry 5 }

plPhyByMACRXBPC OBJECT-TYPE

SYNTAX OCTET STRING ( SIZE ( 769 ) )

ACCESS read-only

STATUS current

DESCRIPTION "BPC in reception for the low half band"

::= { plPhyByMACEntry 6 }

plPhyByMACRXBPCAggregated OBJECT-TYPE

4-June-07 P1901_PRO_016_r0

Submission page 410 UPA-OPERA

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "BPC Aggregated in reception"

::= { plPhyByMACEntry 8 }

plPhyByMACRXSNR OBJECT-TYPE

SYNTAX OCTET STRING ( SIZE ( 769 ) )

ACCESS read-only

STATUS current

DESCRIPTION "Measured SNR"

::= { plPhyByMACEntry 9 }

plPhyByMACRXCFR OBJECT-TYPE

SYNTAX OCTET STRING ( SIZE ( 769 ) )

ACCESS read-only

STATUS current

DESCRIPTION "Measured CFR"

::= { plPhyByMACEntry 10 }

plPhyByMACTXPhySpeed OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Physical speed in transmission"

::= { plPhyByMACEntry 11 }

4-June-07 P1901_PRO_016_r0

Submission page 411 UPA-OPERA

plPhyByMACRXPhySpeed OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Physical speed in reception"

::= { plPhyByMACEntry 12 }

plPhyByMACACK OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "ACK enabled"

::= { plPhyByMACEntry 13 }

plPhyByMACCipher OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Cipher enabled"

::= { plPhyByMACEntry 14 }

plPhyByMACTXHURTO OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "HURTO mode in transmission"

::= { plPhyByMACEntry 15 }

4-June-07 P1901_PRO_016_r0

Submission page 412 UPA-OPERA

plPhyByMACRXHURTO OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "HURTO mode in reception"

::= { plPhyByMACEntry 16 }

plPhyByMACIsActive OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Checks if the node is active or not"

::= { plPhyByMACEntry 17 }

plPhyByMACRXTimeLastActivity OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Time since last BPL activity"

::= { plPhyByMACEntry 18 }

-- plPhyRXSNRThreshold Table

plPhyRXSNRThresholdTable OBJECT-TYPE

SYNTAX SEQUENCE OF plPhyRXSNRThresholdEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

4-June-07 P1901_PRO_016_r0

Submission page 413 UPA-OPERA

::= { plWiscPhy 2 }

plPhyRXSNRThresholdEntry OBJECT-TYPE

SYNTAX plPhyRXSNRThresholdEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plPhyRXSNRThresholdCard, plPhyRXSNRThresholdIndex }

::= { plPhyRXSNRThresholdTable 1 }

plPhyRXSNRThresholdEntry ::= SEQUENCE { plPhyRXSNRThresholdCard INTEGER,

plPhyRXSNRThresholdIndex INTEGER,

plPhyRXSNRThreshold INTEGER

}

plPhyRXSNRThresholdCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS not-accessible

STATUS current

DESCRIPTION "Node card number"

::= { plPhyRXSNRThresholdEntry 1 }

plPhyRXSNRThresholdIndex OBJECT-TYPE

SYNTAX INTEGER

ACCESS not-accessible

STATUS current

DESCRIPTION "SNR threshold value index (1..10)"

4-June-07 P1901_PRO_016_r0

Submission page 414 UPA-OPERA

::= { plPhyRXSNRThresholdEntry 2 }

plPhyRXSNRThreshold OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "SNR threshold value"

::= { plPhyRXSNRThresholdEntry 3 }

--

-- The plMAC Group

--

-- plMAC Table

plMACTable OBJECT-TYPE

SYNTAX SEQUENCE OF plMACEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plMAC 1 }

plMACEntry OBJECT-TYPE

SYNTAX plMACEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plMACCard }

4-June-07 P1901_PRO_016_r0

Submission page 415 UPA-OPERA

::= { plMACTable 1 }

plMACEntry ::= SEQUENCE { plMACCard INTEGER,

plMACAccessProtocol INTEGER,

plMACNumConnectedNodes INTEGER,

plMACNumSlaves INTEGER

}

plMACCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plMACEntry 1 }

plMACAccessProtocol OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Autodiscovery mode enabled"

::= { plMACEntry 2 }

plMACNumConnectedNodes OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Number of nodes with link solved (PSP)"

4-June-07 P1901_PRO_016_r0

Submission page 416 UPA-OPERA

::= { plMACEntry 3 }

plMACNumSlaves OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Number of slaves configured in the master or repeater"

::= { plMACEntry 4 }

-- plMACConnectedNodes Table

plMACConnectedNodesTable OBJECT-TYPE

SYNTAX SEQUENCE OF plMACConnectedNodesEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plWiscMAC 2 }

plMACConnectedNodesEntry OBJECT-TYPE

SYNTAX plMACConnectedNodesEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plMACConnectedNodesCard, plMACConnectedNodesIndex }

::= { plMACConnectedNodesTable 1 }

plMACConnectedNodesEntry ::= SEQUENCE { plMACConnectedNodesCard INTEGER,

plMACConnectedNodesIndex INTEGER,

plMACConnectedNodesMAC PhysAddress

4-June-07 P1901_PRO_016_r0

Submission page 417 UPA-OPERA

}

plMACConnectedNodesCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plMACConnectedNodesEntry 1 }

plMACConnectedNodesIndex OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node index"

::= {plMACConnectedNodesEntry 2}

plMACConnectedNodesMAC OBJECT-TYPE

SYNTAX PhysAddress

ACCESS read-only

STATUS current

DESCRIPTION "MAC for the node index"

::= {plMACConnectedNodesEntry 3}

-- plMACSlaves Table

plMACSlavesTable OBJECT-TYPE

SYNTAX SEQUENCE OF plMACSlavesEntry

4-June-07 P1901_PRO_016_r0

Submission page 418 UPA-OPERA

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plWiscMAC 3 }

plMACSlavesEntry OBJECT-TYPE

SYNTAX plMACSlavesEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plMACSlavesCard, plMACSlavesIndex }

::= { plMACSlavesTable 1 }

plMACSlavesEntry ::= SEQUENCE { plMACSlavesCard INTEGER,

plMACSlavesIndex INTEGER,

plMACSlavesMAC PhysAddress

}

plMACSlavesCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plMACSlavesEntry 1 }

plMACSlavesIndex OBJECT-TYPE

SYNTAX INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 419 UPA-OPERA

ACCESS read-only

STATUS current

DESCRIPTION "Slaves index"

::= { plMACSlavesEntry 2 }

plMACSlavesMAC OBJECT-TYPE

SYNTAX PhysAddress

ACCESS read-only

STATUS current

DESCRIPTION "MAC for the slave index"

::= { plMACSlavesEntry 3 }

--

-- The plQoS Group

--

plQoSMasterGeneralMinOneWayLat OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Latency in milliseconds"

::= { plQoS 1 }

plQoSMasterGeneralBwMngrPolicy OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

4-June-07 P1901_PRO_016_r0

Submission page 420 UPA-OPERA

DESCRIPTION "Bandwidth ..."

::= { plQoS 2 }

-- plQoSPriorityManagement Table

plQoSPriorityManagementTable OBJECT-TYPE

SYNTAX SEQUENCE OF plQoSPriorityManagementEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plQoS 3 }

plQoSPriorityManagementEntry OBJECT-TYPE

SYNTAX plQoSPriorityManagementEntry

ACCESS not-accessible

STATUS current

DESCRIPTION "QoS Priorities Management per card."

INDEX { plQoSPriorityManagementCard, plQoSPriorityManagementPrio }

::= { plQoSPriorityManagementTable 1 }

plQoSPriorityManagementEntry ::= SEQUENCE {

plQoSPriorityManagementCard INTEGER,

plQoSPriorityManagementPrio INTEGER,

plQoSPriorityManagementLatency INTEGER,

plQoSPriorityManagementJitter INTEGER,

plQoSPriorityManagementBandwidth INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 421 UPA-OPERA

}

plQoSPriorityManagementCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plQoSPriorityManagementEntry 1 }

plQoSPriorityManagementPrio OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Priority value (1..8)"

::= { plQoSPriorityManagementEntry 2 }

plQoSPriorityManagementLatency OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Latency value for the priority (0,1,2,4,8)"

::= { plQoSPriorityManagementEntry 3 }

plQoSPriorityManagementJitter OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Jitter value for the priority"

::= { plQoSPriorityManagementEntry 4 }

4-June-07 P1901_PRO_016_r0

Submission page 422 UPA-OPERA

plQoSPriorityManagementBandwidth OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Bandwidth for the priority"

::= { plQoSPriorityManagementEntry 5 }

-- plQoSPerUser Table

plQoSPerUserTable OBJECT-TYPE

SYNTAX SEQUENCE OF plQoSPerUserEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plWiscQoS 4 }

plQoSPerUserEntry OBJECT-TYPE

SYNTAX plQoSPerUserEntry

ACCESS not-accessible

STATUS current

DESCRIPTION "User QoS management values per card."

INDEX { plQoSPerUserCard, plQoSPerUserMAC }

::= { plQoSPerUserTable 1 }

plQoSPerUserEntry ::= SEQUENCE { plQoSPerUserCard INTEGER,

plQoSPerUserMAC PhysAddress,

plQoSPerUserTXMaxXput INTEGER,

4-June-07 P1901_PRO_016_r0

Submission page 423 UPA-OPERA

plQoSPerUserRXMaxXput INTEGER,

plQoSPerUserPriorityAllowedUp INTEGER,

plQoSPerUserPriorityAllowedDown INTEGER

-- plQoSPerUserPriorityActive INTEGER

}

plQoSPerUserCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plQoSPerUserEntry 1 }

plQoSPerUserMAC OBJECT-TYPE

SYNTAX PhysAddress

ACCESS read-only

STATUS current

DESCRIPTION "User MAC address"

::= { plQoSPerUserEntry 2 }

plQoSPerUserTXMaxXput OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Maximum allowed throughput in transmission for a user"

::= { plQoSPerUserEntry 3 }

plQoSPerUserRXMaxXput OBJECT-TYPE

SYNTAX INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 424 UPA-OPERA

ACCESS read-only

STATUS current

DESCRIPTION "Maximum allowed throughput in reception for a user"

::= { plQoSPerUserEntry 4 }

plQoSPerUserPriorityAllowedUp OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Allowed priorities for transmission and reception in upstream for a user"

::= { plQoSPerUserEntry 5 }

plQoSPerUserPriorityAllowedDown OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Allowed priorities for transmission and reception in downstream for a user"

::= { plQoSPerUserEntry 6 }

-- plQoSPerUserPriorityActive OBJECT-TYPE

-- SYNTAX INTEGER

-- ACCESS read-only

-- STATUS current

-- DESCRIPTION "Active priorities for transmission and reception for a user"

-- ::= { plQoSPerUserEntry 7 }

--

4-June-07 P1901_PRO_016_r0

Submission page 425 UPA-OPERA

-- The plStatistics Group

--

-- plStatistics Table

plStatisticsTable OBJECT-TYPE

SYNTAX SEQUENCE OF plStatisticsEntry

ACCESS not-accessible

STATUS current

DESCRIPTION "Packets and Bytes Statistics by Interface"

::= { plStatistics 1 }

plStatisticsEntry OBJECT-TYPE

SYNTAX plStatisticsEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plStatisticsCard }

::= { plStatisticsTable 1 }

plStatisticsEntry ::= SEQUENCE {

plStatisticsCard INTEGER,

plStatisticsBPLInputWords INTEGER,

plStatisticsBPLInputPackets INTEGER,

plStatisticsBPLInputIncorrigible INTEGER,

plStatisticsBPLInputFECBlocksTotal INTEGER,

plStatisticsBPLInputFECBlocksCorrected INTEGER,

4-June-07 P1901_PRO_016_r0

Submission page 426 UPA-OPERA

plStatisticsBPLInputPktsReceived INTEGER,

plStatisticsBPLInputPktsRcvComplete INTEGER,

plStatisticsBPLInputPktsRcvIncomplete INTEGER,

plStatisticsBPLOutputWords INTEGER,

plStatisticsBPLOutputPkts INTEGER

}

plStatisticsCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plStatisticsEntry 1 }

plStatisticsBPLInputWords OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Words received by BPL"

::= { plStatisticsEntry 19 }

plStatisticsBPLInputPackets OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Packets received by BPL"

::= { plStatisticsEntry 20 }

4-June-07 P1901_PRO_016_r0

Submission page 427 UPA-OPERA

plStatisticsBPLInputIncorrigible OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Incorrigible packets received by BPL"

::= { plStatisticsEntry 21 }

plStatisticsBPLInputFECBlocksTotal OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Received FEC blocks by BPL"

::= { plStatisticsEntry 22 }

plStatisticsBPLInputFECBlocksCorrected OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "FEC blocks corrected by BPL"

::= { plStatisticsEntry 23 }

plStatisticsBPLInputPktsReceived OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

4-June-07 P1901_PRO_016_r0

Submission page 428 UPA-OPERA

DESCRIPTION "Received packets by BPL"

::= { plStatisticsEntry 24 }

plStatisticsBPLInputPktsRcvComplete OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Complete received packets by BPL"

::= { plStatisticsEntry 25 }

plStatisticsBPLInputPktsRcvIncomplete OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Incomplete received packets by BPL"

::= { plStatisticsEntry 26 }

plStatisticsBPLOutputWords OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Transmitted words by BPL"

::= { plStatisticsEntry 27 }

plStatisticsBPLOutputPkts OBJECT-TYPE

SYNTAX INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 429 UPA-OPERA

ACCESS read-only

STATUS current

DESCRIPTION "Transmitted packets by BPL"

::= { plStatisticsEntry 28 }

-- End of plStatistics Table

--

-- The plTraps Group

--

-- plTrapsPhy Table

plTrapsPhyTable OBJECT-TYPE

SYNTAX SEQUENCE OF plTrapsPhyEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plTraps 1 }

plTrapsPhyEntry OBJECT-TYPE

SYNTAX plTrapsPhyEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plTrapsPhyCard }

::= { plPhyTable 1 }

4-June-07 P1901_PRO_016_r0

Submission page 430 UPA-OPERA

plTrapsPhyEntry ::= SEQUENCE { plTrapsPhyCard INTEGER,

plTrapsPhyTrapToHURTOEnable INTEGER,

plTrapsPhyTrapFromHURTOEnable INTEGER

}

plTrapsPhyCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "node card number"

::= { plTrapsPhyEntry 1 }

plTrapsPhyTrapToHURTOEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when entering HURTO mode"

::= { plTrapsPhyEntry 2 }

plTrapsPhyTrapFromHURTOEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when exiting HURTO mode"

4-June-07 P1901_PRO_016_r0

Submission page 431 UPA-OPERA

::= { plTrapsPhyEntry 3 }

-- plTrapsMAC Table

plTrapsMACTable OBJECT-TYPE

SYNTAX SEQUENCE OF plTrapsMACEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plWiscTraps 2 }

plTrapsMACEntry OBJECT-TYPE

SYNTAX plTrapsMACEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plTrapsMACCard }

::= { plTrapsMACTable 1 }

plTrapsMACEntry ::= SEQUENCE { plTrapsMACCard INTEGER,

plTrapsMACPeerDetectedEnable INTEGER,

plTrapsMACPeerDisappearedEnable INTEGER

}

plTrapsMACCard OBJECT-TYPE

SYNTAX INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 432 UPA-OPERA

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plTrapsMACEntry 1 }

plTrapsMACPeerDetectedEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when detecting a peer"

::= { plTrapsMACEntry 2 }

plTrapsMACPeerDisappearedEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when dissapearing a peer"

::= { plTrapsMACEntry 3 }

---

-- plTrapsBridge Table

---

plTrapsBridgeTable OBJECT-TYPE

SYNTAX SEQUENCE OF plTrapsBridgeEntry

ACCESS not-accessible

STATUS current

4-June-07 P1901_PRO_016_r0

Submission page 433 UPA-OPERA

DESCRIPTION ""

::= { plWiscTraps 3 }

plTrapsBridgeEntry OBJECT-TYPE

SYNTAX plTrapsBridgeEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

INDEX { plTrapsBridgeCard }

::= { plTrapsBridgeTable 1 }

plTrapsBridgeEntry ::= SEQUENCE { plTrapsBridgeCard INTEGER,

plTrapsBridgeNewRootEnable INTEGER,

plTrapsBridgeTopologyChangeEnable INTEGER

}

plTrapsBridgeCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plTrapsBridgeEntry 1 }

plTrapsBridgeNewRootEnable OBJECT-TYPE

SYNTAX INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 434 UPA-OPERA

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when a new root is assigned"

::= { plTrapsBridgeEntry 2 }

plTrapsBridgeTopologyChangeEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when topology changes"

::= { plTrapsBridgeEntry 3 }

---

-- plTrapsConfFail Table

---

plTrapsConfFailTable OBJECT-TYPE

SYNTAX SEQUENCE OF plTrapsConfFailEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

::= { plWiscTraps 4 }

plTrapsConfFailEntry OBJECT-TYPE

SYNTAX plTrapsConfFailEntry

ACCESS not-accessible

STATUS current

DESCRIPTION ""

4-June-07 P1901_PRO_016_r0

Submission page 435 UPA-OPERA

INDEX { plTrapsConfFailCard }

::= { plTrapsConfFailTable 1 }

plTrapsConfFailEntry ::=SEQUENCE{

plTrapsConfFailCard INTEGER,

plTrapsConfDownloadFailEnable INTEGER,

plTrapsConfUploadFailEnable INTEGER,

}

plTrapsConfFailCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plTrapsConfFailEntry 1 }

plTrapsConfDownloadFailEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when a configuration file download fails"

::= { plTrapsConfFileEntry 2 }

plTrapsConfUploadFailEnable OBJECT-TYPE

SYNTAX INTEGER

4-June-07 P1901_PRO_016_r0

Submission page 436 UPA-OPERA

ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable trap generation when a configuration file upload fails"

::= { plTrapsConfFileEntry 3 }

--

-- The plStp Group

--

plStpTable OBJECT-TYPE

SYNTAX SEQUENCE OF plStpEntry

ACCESS not-accessible

STATUS current

DESCRIPTION "Information about Spanning Tree."

::= { plWiscStp 1 }

plStpEntry OBJECT-TYPE

SYNTAX plStpEntry

ACCESS not-accessible

STATUS current

DESCRIPTION "System information gathered per card."

INDEX { plStpCard }

::= { plStpTable 1 }

plStpEntry ::= SEQUENCE { plStpCard INTEGER,

plStpEnable INTEGER,

plStpProtocolVersion IA5String (SIZE(0..8)),

4-June-07 P1901_PRO_016_r0

Submission page 437 UPA-OPERA

plStpPtpExtA INTEGER,

plStpPtpExtB INTEGER,

plStpFrontier IA5String (SIZE(0..8))

}

plStpCard OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-only

STATUS current

DESCRIPTION "Node card number"

::= { plStpEntry 1 }

plStpEnable OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "0: STP Enabled, 1: STP Disabled"

::= { plStpEntry 2 }

plStpProtocolVersion OBJECT-TYPE

SYNTAX IA5String (SIZE(0..8))

ACCESS read-write

STATUS current

DESCRIPTION "STP Protocol Version [STP|RSTP]"

::= { plStpEntry 3 }

plStpPtpExtA OBJECT-TYPE

4-June-07 P1901_PRO_016_r0

Submission page 438 UPA-OPERA

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Set point-to-point flag for EXTA [0|1]"

::= { plStpEntry 4 }

plStpPtpExtB OBJECT-TYPE

SYNTAX INTEGER

ACCESS read-write

STATUS current

DESCRIPTION "Set point-to-point flag for EXTB [0|1]"

::= { plStpEntry 5 }

plStpFrontier OBJECT-TYPE

SYNTAX IA5String (SIZE(0..8))

ACCESS read-write

STATUS current

DESCRIPTION "STP Frontier enabled in [EXTA|EXTB|NONE]"

::= { plStpEntry 6 }

--

-- The plSecurity Group

--

plSecurityConsoleSerial OBJECT-TYPE

SYNTAX INTEGER { enabled ( 1 ),

4-June-07 P1901_PRO_016_r0

Submission page 439 UPA-OPERA

disabled ( 0 ) }

MAX-ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable access to the modems

serial port console."

DEFVAL { enabled }

::= { plSecurity 1 }

plSecurityConsoleTelnet OBJECT-TYPE

SYNTAX INTEGER { enabled ( 1 ),

disabled ( 0 ) }

MAX-ACCESS read-write

STATUS current

DESCRIPTION "Enable/disable access to the modems

telnet console."

DEFVAL { disabled }

::= { plSecurity 2 }

plSecurityConsoleAuthTable OBJECT-TYPE

SYNTAX SEQUENCE OF SecurityConsoleAuthEntry

MAX-ACCESS not-accessible

4-June-07 P1901_PRO_016_r0

Submission page 440 UPA-OPERA

STATUS current

DESCRIPTION "Table of IP addresses form which

Telnet clients may access this modem."

::= { plSecurity 3 }

plSecurityConsoleAuthEntry OBJECT-TYPE

SYNTAX SecurityConsoleAuthEntry

MAX-ACCESS not-accessible

STATUS current

DESCRIPTION "One entry of the table."

INDEX { securityConsoleAuthNumber }

::= { plSecurityConsoleAuthTable 1 }

plSecurityConsoleAuthEntry ::= SEQUENCE {

plSecurityConsoleAuthNumber INTEGER,

plSecurityConsoleAuthAddress IpAddress,

plSecurityConsoleAuthRowStatus RowStatus

}

plSecurityConsoleAuthNumber OBJECT-TYPE

SYNTAX INTEGER (0..15)

MAX-ACCESS not-accessible

4-June-07 P1901_PRO_016_r0

Submission page 441 UPA-OPERA

STATUS current

DESCRIPTION "Number of this row."

::= { plSecurityConsoleAuthEntry 1 }

plSecurityConsoleAuthAddress OBJECT-TYPE

SYNTAX IpAddress

MAX-ACCESS read-create

STATUS current

DESCRIPTION "IP address of client."

::= { plSecurityConsoleAuthEntry 2 }

plSecurityConsoleAuthRowStatus OBJECT-TYPE

SYNTAX RowStatus

MAX-ACCESS read-create

STATUS current

DESCRIPTION "The status of this conceptual row."

::= { plSecurityConsoleAuthEntry 3 }

END

4-June-07 P1901_PRO_016_r0

Submission page 442 UPA-OPERA

ANNEX B PERFORMANCE (INFORMATIVE)

The total bitrate transmitted by a BPL node is influenced by several factors. Considering PHY level, the maximum theoretical rates depend on the OFDM Symbol Type and spectral efficiency, which is bound by the bit-loading of each subcarrier.

Approximate numerical values will be given for maximum bit rates, taking into account these factors:

• OFDM symbol rate and cyclic prefix

• Truncated 4D-TCM

• Loss rate due to RS coding

• CRC overhead (Delimiters)

And specifically not considering these:

• Zero filling

• Special coding of last Reed-Solomon codewords

• Overhead of reference signals when fitting OFDM symbols inside PPDU.

For simplicity purposes, numerical values will only be given for the special cases in which all 1536 subcarriers have the same bit-loading. This makes calculations easier, but it should not be difficult to find corresponding numerical values for any possible bit-loading table.

B.1 Data stream

Data payload is adaptively or HURTO modulated.

The cyclic prefix that each Symbol Type uses implies that actual data is only transmitted during the IDFT interval. The percentage of maximum PHY rate that is lost equals the percentage of cyclic prefix interval over total symbol interval (which is the sum of cyclic prefix and IDFT interval). The IDFT interval is fixed to 2048 samples for every Symbol Type.

Truncated 4D-TCM operates on 768 pairs of subcarriers.

For adaptive mapping, each pair of subcarriers gets a different coding according to its bit-loading: if we call z to

the sum of the bit-loadings of both subcarriers, the coding rate for that pair of subcarriers is z

z 1−, except for the

4-June-07 P1901_PRO_016_r0

Submission page 443 UPA-OPERA

case in which the bit-loadings for both subcarriers is zero (in this case there is no coding because no message in being sent on that pair of subcarriers). As bit-loadings can take the values 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 or 10, coding rates will range from 1/2 to 19/20 for each pair of subcarriers.

For HURTO mapping, each subcarrier will get the same coding, with a bit-loading of 2, so the coding rate for each pair of subcarriers is 3/4. Additionally, HURTO mapping replicates eight times the message, which means a further coding rate of 1/8.

Next table shows coded maximum data rates (in Mbps) for OFDM symbols with constant bit-loading for all subcarriers. Numbers shown take into account cyclic prefix and 4D-TCM.

Bit-loading for all 1536 subcarriers (adaptive mapping) HURTO

10 9 8 7 6 5 4 3 2 1 Type I 204.94 183.37 161.80 140.22 118.65 97.08 75.51 53.93 32.36 10.79 4.04 Type II 150.82 134.95 119.07 103.19 87.32 71.44 55.57 39.69 23.81 7.94 2.98 Type III 84.01 75.16 66.32 57.48 48.64 39.79 30.95 22.11 13.26 4.42 1.66

Table 68 Coded maximum bitrates for Data payload (constant bit-loading)

Furthermore, RS coding implies an additional rate loss which depends on the code rate. For each of the four RS data modes (0 being the least and 3 the most robust one), adaptive mapping can produce a total of 28 different codes depending on the FEC payload, each one with a different data rate as given in Table 69.

FEC payload (bytes)

Code rate 244 240 236 232 228 224 220 216 212 208 204 200 196 192 188 184 180 176 172 168 164 160 156 152 148 144 140 136RS mode

0 0.968 0.968 0.967 0.967 0.966 0.966 0.965 0.964 0.964 0.963 0.962 0.962 0.961 0.960 0.959 0.958 0.957 0.957 0.956 0.955 0.953 0.952 0.951 0.950 0.949 0.947 0.946 0.944

240 236 232 228 224 220 216 212 208 204 200 196 192 188 184 180 176 172 168 164 160 156 152 148 144 140 136 132RS mode 1

0.952 0.952 0.951 0.950 0.949 0.948 0.947 0.946 0.945 0.944 0.943 0.942 0.941 0.940 0.939 0.938 0.936 0.935 0.933 0.932 0.930 0.929 0.927 0.925 0.923 0.921 0.919 0.917

236 232 228 224 220 216 212 208 204 200 196 192 188 184 180 176 172 168 164 160 156 152 148 144 140 136 132 128RS mode 2

0.937 0.935 0.934 0.933 0.932 0.931 0.930 0.929 0.927 0.926 0.925 0.923 0.922 0.920 0.918 0.917 0.915 0.913 0.911 0.909 0.907 0.905 0.902 0.900 0.897 0.895 0.892 0.889

232 228 224 220 216 212 208 204 200 196 192 188 184 180 176 172 168 164 160 156 152 148 144 140 136 132 128 124RS mode 3

0.921 0.919 0.918 0.917 0.915 0.914 0.912 0.911 0.909 0.907 0.906 0.904 0.902 0.900 0.898 0.896 0.894 0.891 0.889 0.886 0.884 0.881 0.878 0.875 0.872 0.868 0.865 0.86

Table 69 RS coding rates for Data payload (adaptive)

4-June-07 P1901_PRO_016_r0

Submission page 444 UPA-OPERA

HURTO mapping can use all the RS codes above plus codes with decreasing FEC payload until code rate is 0.5.

The uncoded maximum bitrates for Data payload are the result of multiplying coded maximum bitrates by RS coding rate.

B.2 Delimiters

Delimiters are HURTO modulated for robust OFDM transmission.

Control symbols have modulation and trellis coding schemes similar to HURTO data symbols, so the maximum coded data rate is the same.

Delimiters use a specific RS code with rate 2/3. Additionally, a CRC-CCITT is applied which implies a rate loss of 176/192.

So in the same conditions as assumed for Data payload, the Delimiters data rate is given in Table 70

Uncoded bitrate (Mbps)

Type I 2.47 Type II 1.82 Type III 1.01

Table 70 Coded maximum bitrates for Delimiters

Work Package: WP5

Type of document: Report

Date: 04 June 2007

EC/IST FP6 Project No 026920 File name: OP2_WP5_D27 Version: 1.0

Title: First draft of the OPERA specification version 2

Copyright “Copyright and Reprint Permissions. You may freely reproduce all or part of this paper for non-commercial purposes, provided that the following conditions are fulfilled: (i) to cite the authors, as the copyright owners (ii) to cite the OPERA Project and mention that the European Commission co-finances it, by means of including this statement “OPERA. IST Integrated Project No 507667. Funded by EC” and (iii) not to alter the information.”