0% found this document useful (0 votes)
69 views24 pages

Open Transceivers Presentation

Uploaded by

Nathan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views24 pages

Open Transceivers Presentation

Uploaded by

Nathan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Optics in Open Networks

NANOG 72
Atlanta, February 2018

Christian Urricariet
Finisar

© Finisar Corporation 1
Agenda

• How can optical transceivers be managed in an open networking environment?


• Open standards and interoperability issues…
• Open Optical Monitoring (OOM): What is it and how does it help?
• OOM architecture and some technical details.
• OOM application examples.
• How can you access OOM?
• Latest OOM news.

© Finisar Corporation 2
Traditional Networking Vendors Fully Exploit the Optical Data
APPLICATIONS OEM Model
Monitoring
Config &
QoS Security Other
(Vertically Integrated)
Automate

Forwarding SW Forwarding SW
(Traditional, Distributed,
(Centralized, eg OpenFlow)
eg OSPF, BGP, STP etc)

Switch Abstraction Interface (SAI) Ethernet Switch


Switch Vendors
Installer
Network OS built all the
Vendors
(eg ONIE)
plumbing to get (Cisco, Arista,
Switch Silicon optical data to the Dell, HPE, etc.)
end user

Optics vendors

© Finisar Corporation 3
Open Network Ecosystem: Choice, Flexibility and Innovation
APPLICATIONS Open Switch,
Key Messages
Config & Bare Metal Model
Monitoring QoS Security Other
Automate
100s of 3rd
Forwarding SW Party Apps Applications
(Traditional, Distributed,
Forwarding SW
(Centralized, eg OpenFlow)
eg OSPF, BGP, STP etc) Many 3rd Party
& Open-source
Switch Abstraction Interface (SAI)

Installer
Network OS NOS Vendors
(eg ONIE)

Switch Silicon Switch Silicon Vendors

OEM/ODM White Box


Vendors

Optics vendors

© Finisar Corporation 4
Optics in Open Networks? Requirements for Success
APPLICATIONS Open Switch,
Key Messages
Config & STANDARDS Bare Metal Model
Monitoring QoS Security Other
Automate
100s of 3rd
Forwarding SW Party Apps Applications
(Traditional, Distributed,
Forwarding SW INTEROPERABILITY
(Centralized, eg OpenFlow)
eg OSPF, BGP, STP etc) Many 3rd Party
& Open-source
Switch Abstraction Interface (SAI) OPEN APIs

Installer
Network OS NOS Vendors
(eg ONIE) INNOVATION

Switch Silicon Switch Silicon Vendors


QUALITY

OEM/ODM White Box


RELIABILITY
Vendors
SUPPLY
Optics vendors

© Finisar Corporation 5
Data Center Optics Standards are Evolving Rapidly

Key Messages
Key Messages
Industry standards are still very relevant: 

Message
Message 1
1
IEEE, OIF, T11, SFF, CFP MSA,
CWDM4 MSA, QSFP-DD MSA…
 Message
 Message 2 2
 Message 3
 Message 3
Within the Data Between Data Long Spans/
Center Rack Center Racks DCI & WAN
Building 1
• 10GE SFP+ SR/LR now • 40GE QSFP+ • 100GE QSFP28 or
• 25GE SFP28 SR/LR SR4/LR4/Lite now CFP2/4 now
deployments starting • 100GE QSFP28 • LR4, ER4, ER4f, Building 2 /
• 50GE/100GE (next-gen) SR4/CWDM4/LR4 Coherent ACO/DCO WAN
being standardized deployments starting • 400G being
• 200GE/400GE being standardized
10G Intra-rack
standardized 10/40G Inter-rack
40/100G Long span/Inter-buildings

© Finisar Corporation 6
Open Networking Interoperability Testing

Key Messages
• OpenCompute.org is leading open switch Key Messages
 Message
Message 1
1
solution compliance testing. 

Message
 Message
 2 2
• Testing dozens of NOS / Switch / Cable /  Message 3
Transceiver Module combinations.  Message 3
White Box Switch Vendors
• Proven solutions are added to Open NOS Vendors
Networking Integrators List.
Optics Vendors
• Testing occurs weekly at UNH-IOL.
Copper Cable Vendors
• Latest Plugfest in May 2017 at UNH-IOL
focused on 100G CWDM4.

© Finisar Corporation 7
Open Networking: The Data is getting lost in the “Flexibility”
APPLICATIONS Open Switch,
Key Messages
Config & Bare Metal Model
Monitoring QoS Security Other
Automate Management 100s of 3rd
Forwarding SW Apps have to be Party Apps Applications
Forwarding SW
(Traditional, Distributed,
(Centralized, eg OpenFlow) written to a
eg OSPF, BGP, STP etc) Many 3rd Party
specific switch & Open-source
Switch Abstraction Interface (SAI) and NOS combo
Installer
Network OS NOS Vendors
(eg ONIE)
Each switch, each
Switch Silicon NOS has a Switch Silicon Vendors
different way to
access optical OEM/ODM White Box
data Vendors

Optics vendors

© Finisar Corporation 8
Driving a Common Solution for Open Networking
APPLICATIONS Open Switch,
Key Messages
Config & Bare Metal Model
Monitoring QoS Security Other
Automate OOM Demo One API (OOM) to 100s of 3rd
Forwarding SW access and Party Apps Applications
Forwarding SW
(Traditional, Distributed,
(Centralized, eg OpenFlow) decode optical
eg OSPF, BGP, STP etc) Many 3rd Party
data & Open-source
Switch Abstraction Interface (SAI)

Installer
Network OS NOS Vendors
(eg ONIE)
One driver to
Switch Silicon standardize and Switch Silicon Vendors
upgrade access to
optical data OEM/ODM White Box
Vendors

Optics vendors

© Finisar Corporation 9
Open Optical Monitoring and Control (OOM)
APPLICATIONS
API to During OCP Interop testing at
Config &
Monitoring
Automate
QoS Security Other Network UNH-IOL, there were problems with
Applications consistently accessing EEPROM
Forwarding SW Forwarding SW information in optical transceivers.
(Traditional, Distributed,
(Centralized, eg OpenFlow)
eg OSPF, BGP, STP etc)
OOM was kicked off by the OCP
Switch Abstraction Interface (SAI) Networking group in October 2015
Installer
to address these problems.
(eg ONIE) Network OS Decode
Project Sponsors:
Switch Silicon Accton/Edgecore
Big Switch Networks
Broadcom
Cumulus Networks
Interface to
Transceiver Module Finisar

© Finisar Corporation 10
What is Open Optical Monitoring (OOM)?

OOM is a Python package, providing a standard API to Key Messages


read/write optical transceiver modules. 

Message
Message 1
1
• EEPROM data encoded/decoded in key/value pairs.
Message
 Message
 2 2
Same API: Any Linux-based NOS, any switch, any  Message 3
transceiver vendor, any transceiver type.  Message 3

Open Source, easy to maintain, easy to extend.

from oom import *


for port in oom_get_portlist(): # enumerate the ports on the switch
status = oom_get_memory(port, 'DOM') # DOM = voltage, temp, {TX, Rx}Power, bias
print port.port_name + str(status)

port0{'VCC': 3.30, 'TEMP': 23.55, 'TX_POWER': 0.57, 'RX_POWER': 0.56, 'TX_BIAS': 7.4}
port1{'VCC': 3.31, 'TEMP': 24.02, 'TX_POWER': 0.57, 'RX_POWER': 0.53, 'TX_BIAS': 7.3}

© Finisar Corporation 11
Simplified OOM Architecture

Switch
Network OS (including apps)
Switch Real time Open
Network
Mgmt Optical Mgmt
Agent
Interface Control Interface

OOM Decode Library

Network OS
(Kernel)
Optics Driver

i2c (HW)

Open Source Switch Vendor Specific

© Finisar Corporation 12
OOM Design – A Few Technical Details

• OOM Decode Library


• Table driven, each key has a location and a decode function
• Custom decode functions for special data formats
• E.g., temperature is encoded in a 16-bit two’s complement value, in units of 1/256°C
• Also includes key collections, such as ‘Serial ID’ and ‘DOM’
• Table can be easily extended to enable access to additional capabilities

• ‘optoe’ Driver
• Standard Linux kernel driver
• Supports SFP family and QSFP family devices
• Accesses transceiver EEPROM with Linux i2c APIs OOM Decode Library
• Presents EEPROM as a file in /sys/bus/i2c/devices
NOS driver
• Linux standard open(), read(), write() calls
• Read/Write access to all 256 architected pages

© Finisar Corporation 13
OOM Design – Logic Flow
from oom import *
• oom_get_portlist() – Get a list of all the ports for port in oom_get_portlist():
status = oom_get_memory(port, 'DOM')
• Scans /sys/bus/i2c/devices looking for SFP/QSFP ports print port.port_name + str(status)
• Returns a list of ports, for use by other OOM functions
port0{'VCC': 3.30, 'TEMP': 23.55, 'TX_POWER':
0.57, 'RX_POWER': 0.56, 'TX_BIAS': 7.4}
• oom_get_keyvalue(port, key) port1{'VCC': 3.31, 'TEMP': 24.02, 'TX_POWER':
0.57, 'RX_POWER': 0.53, 'TX_BIAS': 7.3}
• Lookup key in table, get location and decoder
• ‘port’ provides access to the EEPROM file…
• Read from the EEPROM, at the location specified in the table
• Call the decoder with that data, return the result to the caller

• oom_get_memory(port, collection) – Get a named collection of key values


• For each key in collection: answer[key] = oom_get_keyvalue(port, key)
• Return answer to caller

© Finisar Corporation 14
OOM Over The Network
Switch Realtime Open
Network Mgmt Optical
Network
Mgmt
Agent
Mgmt Interface Control Interface

Server
OOM Decode Library
Server Side JSON Shim

Network Transport

Switch Switch Side


JSON Server

Network
Operating System

Open Source Switch Vendor Specific

© Finisar Corporation 15
Open Optical Monitoring (OOM) Applications

Key Messages

HEALTH
INVENTORY MONITORING DIAGNOSTICS CUSTOM USES
track and verify continuous monitoring of key isolate connectivity issues to innovative new features
module part number, properties (TX/RX power, laser transmit module, receive
revision, vendor, bias, temperature, thresholds, module or fiber Customer or vendor-defined,
features, options… alarms, warnings…) vendor-specific keys
Operator diagnostics using Example 1: BIST for network
Via DOM (Digital Optical connection database commissioning
Monitoring): a Finisar technology Vendor diagnostics while
widely licensed to industry Example 2: Finisar
modules are online Connectivity Diagnostics

© Finisar Corporation 16
Inventory Tracking with OOM

Record identifying information from all modules on the switch.

Confirm intended vs. actual type of modules present.


from oom import *
for port in oom_get_portlist(): # enumerate the ports on the switch
inventory = oom_get_memory(port, ‘SERIAL_ID’) # SERIAL_ID: 23 identifying keys
add_record(port, inventory) # add this module to the database
audit_record(port, inventory) # check for compliance

© Finisar Corporation 17
Health Monitoring with OOM

Monitor and display module health metrics and alarms/warnings.


from oom import *
list = oom_get_portlist(): # enumerate the ports on the switch
health = oom_get_memory(list[53], ‘DOM’) # DOM: Digital Optical Monitoring
show_port(list[53], health) # Display temp, voltage, laser, Rx/Tx power

© Finisar Corporation 18
Diagnostics and Support with OOM

Vendor tech support adjusts e.g., low_temp warning threshold to test alert handling.
from oom import *
list = oom_get_portlist(): # enumerate the ports on the switch
oom_set_keyvalue(list[53], ‘PASSWORD_ENTRY’, secret) # Vendor support password
oom_set_keyvalue(list[53], ‘TEMP_HIGH_ALARM’, 45.0) # Change threshold

New Values
Old Values

© Finisar Corporation 19
Custom Uses: Vendor Value-Added Content with OOM

Trigger flashing lights on module pull-tab with OOM.


Live in the switch, while running normal production workloads.
Easy documented process to add additional keys to OOM.

from oom import *


list = oom_get_portlist(): # enumerate the ports on the switch
oom_set_keyvalue(list[53], ‘TAB_LIGHTS’, flash) # Make the lights flash

© Finisar Corporation 20
OCP SUMMIT: Interoperability and Open APIs

Key Messages
 Message 1
 Message 2
 Message 3

OOM demonstrated at
OCP Summits 2016 and 2017

© Finisar Corporation 21
How can you Access & Participate in OOM?

Key Messages
• OOM is now an OCP Accepted™ Project Key Messages


Message
Message 1
1
• Download, use and improve!
Message
 Message
 2 2
• https://github.com/opencomputeproject/oom  Message 3
 Message 3
• https://youtu.be/kkL2dk7zMOc
• Share your use-cases with us.
• Used in Interoperability testing at UNH IOL Plugfests.
• Demonstrated in numerous Linux-based NOSs, white
box switches, evaluation boards and a module
simulator.

• 200+ keys decoded for QSFP+, QSFP28, SFP+…


some CFPx support available.
© Finisar Corporation 22
Latest OOM News

• February 2017 – ‘Universal Python Shim’.


• No longer need to compile C code to install OOM.
• Extensible to support any (every) Linux-based NOS.

• July 2017 – Introduced CFP family support in OOM.

• October 2017 – ‘optoe’ driver released for transceiver EEPROM.


• For any Linux-based NOS.
• Accesses more transceiver EEPROM capabilities than existing drivers.

• February 2018 – ‘optoe’ driver is in Open Network Linux (ONL), being used
by 8 Accton/Edgecore switches and one Quanta switch. It is also in SONiC,
being used by 2 Accton/Edgecore switches and one Inventec switch.

© Finisar Corporation 23
Thank You / Q&A

Acknowledgement: Don Bollinger, Finisar

Christian Urricariet
[email protected]

© Finisar Corporation 24

You might also like