This invention is directed towards the use of an SFP for the purpose of offering Service OAM functions. For ease of deployment, the SFP can operate without any previous knowledge of the network where it is deployed and the behaviour of the SFP and the services it can offer can be managed in a centralized manner or distributed manner.
An SFP is a compact, hot-pluggable transceiver used for both telecommunication and data communications applications. It generally interfaces a network device mother board (for a switch, router, media converter or similar device) to a fiber optic or copper networking cable. SFP transceivers are designed to support SONET, Gigabit Ethernet, Fibre Channel, and other communications standards. The following description is based on an optical SFP, but it should be understood to cover any type of SFPs.
In accordance with one embodiment, a small form factor pluggable (“SFP”) transceiver for use in a communications network includes a transmitter adapted to be coupled to the network for supplying signals to the network, a receiver adapted to be coupled to the network for receiving signals from the network, and a programmable signal processing module coupled to the transmitter and the receiver and adapted to be programmed from a remote station coupled to the network, the module being programmable to perform at least one service and management functions on the network. The programmable signal processing module may be a field programmable gate array or an application specific integrated circuit.
In specific implementations, the programmable signal processing module is programmable to perform at least one service assurance function on the network, such as monitoring network traffic and diagnosing issues (e.g., performing remote in-service Layer 1-4 loopback, ITU-T Y.1564 and RFC-2544 performance testing), and/or monitoring actual customer statistics from a web browser or portable test set. The programmable signal processing module may also be programmable to perform service management functions on the network, such as policing, traffic shaping and VLAN mapping.
The programmable signal processing module may be programmed to listen to traffic on the network, to detect a predetermined message broadcast by a remote device coupled to the network, and to respond to the predetermined message to indicate that the module is coupled to the network and is functioning. Communications with the remote device may be without the use of IP protocols over an ISO Layer 2 network.
The invention may best be understood by reference to the following description taken in conjunction with the accompanying drawings.
Although the invention will be described in connection with certain preferred embodiments, it will be understood that the invention is not limited to those particular embodiments. On the contrary, the invention is intended to cover all alternatives, modifications, and equivalent arrangements as may be included within the spirit and scope of the invention as defined by the appended claims.
Turning now to the drawings and referring first to
Additional power and a power converter may be added to the SFP to feed the FPGA. The FPGA may initially contain some programming, but can also be configured and/or reprogrammed from a remote station or node without requiring changes to the software on the network node where the SFP with the FPGA resides. The FPGA can also be operated remotely from a remote station or node. The FPGA may be replaced with other programmable modules such as ASIC-based solutions.
Since the objective is to manage the FPGA remotely without having to modify the software or firmware on the node it resides, there is a need for discovering that the SFP housing an FPGA has been connected on the network.
In one embodiment, the FPGA on the SFP is programmed to perform service assurance functions on the network, such as monitoring network traffic and diagnosing issues, performing remote, in-service Layer 1-4 loopback, ITU-T Y.1564 and RFC-2544 performance testing, I-way delay and jitter measurements, and monitoring actual customer statistics from a web-browser or portable test set without the need of any other test equipment, loopback testing, service management and demarcation. The FPGA can also be programmed to perform service management functions such as policing, traffic shaping, VLAN mapping etc.
If power consumption on the SFP is an issue, the unit can be configured with a subset of the functionality that complies with the power limitations. The set of features can be reprogrammed remotely on an as-needed basis without affecting the node or taking the port out of service. For example, using different FPGA loads, the on-board storage can support multiple such loads. Loads with lesser functions can run at lower clock speed and therefore consume less power, or they may simply have less logic active at a time. Other techniques for increasing the efficiency of a load that are known in the art can also be applied.
The FPGA can be configured remotely while the port is active. After proper identification of the remote programming node, to prevent security breach, the FPGA collects and assembles configuration packets into binary files, checks the integrity of the files, and then reprograms itself.
Referring to
The FPGA or other programmable module can be discovered in the network using a discoverer (e.g., testing unit, router, remote node) that is local to the subnet where the programmed module is located. The module to be discovered is programmed to watch for responses of a device located upstream.
The FPGA or other programmable module can be reprogrammed remotely to perform other functions or services. A discoverer can transmit a management packet to the FPGA or other programmable module to request that it loads different firmware or program logic from local permanent storage or from a remote location. This is achieved by virtue of a dual-stage boot method. When the FPGA or other programmable module needs to load new firmware or program logic, it will indicate this in permanent storage (for instance a FLASH memory) and/or special hardware register to guide the primary boot loader where to locate the secondary boot.
The present invention includes systems having processors to provide various functionality to process information, and to determine results based on inputs. Generally, the processing may be achieved with a combination of hardware and software elements. The hardware aspects may include combinations of operatively coupled hardware components including microprocessors, logical circuitry, communication/networking ports, digital filters, memory, or logical circuitry. The processors may be adapted to perform operations specified by a computer-executable code, which may be stored on a computer readable medium.
The steps of the methods described herein may be achieved via an appropriate programmable processing device, such as an external conventional computer or an on-board field programmable gate array (FPGA) or digital signal processor (DSP), that executes software, or stored instructions. In general, physical processors and/or machines employed by embodiments of the present invention for any processing or evaluation may include one or more networked or non-networked general purpose computer systems, microprocessors, field programmable gate arrays (FPGA's), digital signal processors (DSP's), micro-controllers, and the like, programmed according to the teachings of the exemplary embodiments of the present invention, as is appreciated by those skilled in the computer and software arts. Appropriate software can be readily prepared by programmers of ordinary skill based on the teachings of the exemplary embodiments, as is appreciated by those skilled in the software arts. In addition, the devices and subsystems of the exemplary embodiments can be implemented by the preparation of application-specific integrated circuits or by interconnecting an appropriate network of conventional component circuits, as is appreciated by those skilled in the electrical arts. Thus, the exemplary embodiments are not limited to any specific combination of hardware circuitry and/or software.
Stored on any one or on a combination of computer readable media, the exemplary embodiments of the present invention may include software for controlling the devices and subsystems of the exemplary embodiments, for driving the devices and subsystems of the exemplary embodiments, for processing data and signals, for enabling the devices and subsystems of the exemplary embodiments to interact with a human user, and the like. Such software can include, but is not limited to, device drivers, firmware, operating systems, development tools, applications software, and the like. Such computer readable media further can include the computer program product of an embodiment of the present invention for performing all or a portion (if processing is distributed) of the processing performed in implementations. Computer code devices of the exemplary embodiments of the present invention can include any suitable interpretable or executable code mechanism, including but not limited to scripts, interpretable programs, dynamic link libraries (DLLs), Java classes and applets, complete executable programs, and the like. Moreover, parts of the processing of the exemplary embodiments of the present invention can be distributed for better performance, reliability, cost, and the like.
Common forms of computer-readable media may include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other suitable magnetic medium, a CD-ROM, CDRW, DVD, any other suitable optical medium, punch cards, paper tape, optical mark sheets, any other suitable physical medium with patterns of holes or other optically recognizable indicia, a RAM, a PROM, an EPROM, a FLASH-EPROM, any other suitable memory chip or cartridge, a carrier wave or any other suitable medium from which a computer can read.
While particular embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise construction and compositions disclosed herein and that various modifications, changes, and variations may be apparent from the foregoing descriptions without departing from the spirit and scope of the invention as defined in the appended claims.
This application is a continuation of U.S. patent application Ser. No. 17/242,520, filed Apr. 28, 2021, now allowed, which is a continuation of U.S. patent application Ser. No. 16/880,119, filed May 21, 2020, now U.S. Pat. No. 11,025,343, which is a continuation of U.S. patent application Ser. No. 16/176,966, filed Oct. 31, 2018, now U.S. Pat. No. 10,700,784, which is a continuation of U.S. patent application Ser. No. 15/645,482, filed Jul. 10, 2017, now U.S. Pat. No. 10,135,537, which is a continuation of U.S. patent application Ser. No. 13/551,804, filed Jul. 18, 2012, now U.S. Pat. No. 9,735,874, which incorporates by reference in their entireties the following applications, all of which have the same filing date of Jul. 18, 2012: U.S. Pat. No. 8,830,869, “Systems and Methods of Detecting and Assigning IP Addresses to Devices with ARP Requests,” by Robitaille and Lemieux; U.S. Pat. No. 9,106,706, “Systems and Methods of Using Beacon Messages to Discover Devices Across Subnets,” by Robitaille and Bouffard; U.S. Pat. No. 8,751,615, “Systems and Methods of Discovering and Controlling devices without Explicit Addressing,” by Robitaille and Bouffard, and U.S. Pat. No. 8,862,702, “Systems and Methods of Installing and Operating Devices without Explicit Network Addresses,” by Robitaille and Lemieux.
Number | Name | Date | Kind |
---|---|---|---|
6166688 | Cromer | Dec 2000 | A |
6367037 | Remer | Apr 2002 | B1 |
6865602 | Nijemcevic | Mar 2005 | B1 |
6987743 | Chen | Jan 2006 | B2 |
7039688 | Matsuda | May 2006 | B2 |
7225243 | Wilson | May 2007 | B1 |
7317926 | Cloutier | Jan 2008 | B1 |
7440781 | Beach | Oct 2008 | B2 |
7570657 | Lo | Aug 2009 | B1 |
7773629 | Dropps | Aug 2010 | B1 |
7778162 | Yu | Aug 2010 | B2 |
7787455 | Cherchall | Aug 2010 | B2 |
7912075 | Holland | Mar 2011 | B1 |
8023465 | Prehofer | Sep 2011 | B2 |
8098671 | Deruijter | Jan 2012 | B1 |
8233437 | Tazaki | Jul 2012 | B2 |
8315626 | Huotari | Nov 2012 | B2 |
8360975 | Schwieterman | Jan 2013 | B1 |
8509072 | Lee | Aug 2013 | B2 |
8571029 | Aggarwal | Oct 2013 | B1 |
8588751 | Rinta-A ho | Nov 2013 | B2 |
8660617 | Banerjea | Feb 2014 | B1 |
8666258 | Ice | Mar 2014 | B2 |
8687966 | Hosking | Apr 2014 | B2 |
8751615 | Robitaille et al. | Jun 2014 | B2 |
8862702 | Robitaille et al. | Oct 2014 | B2 |
8949382 | Cornett | Feb 2015 | B2 |
9294358 | Robitaille et al. | Mar 2016 | B2 |
9735874 | Robitaille | Aug 2017 | B2 |
9762322 | Amundson | Sep 2017 | B1 |
10135537 | Robitaille et al. | Nov 2018 | B2 |
10484291 | Robitaille | Nov 2019 | B2 |
10809471 | Akl-Chedid et al. | Oct 2020 | B2 |
11025343 | Robitaille et al. | Jun 2021 | B2 |
11689288 | Robitaille | Jun 2023 | B2 |
20020077117 | Cloutier | Jun 2002 | A1 |
20020112004 | Reid | Aug 2002 | A1 |
20030053421 | Yoshimura | Mar 2003 | A1 |
20030056008 | Russell | Mar 2003 | A1 |
20030225864 | Gardiner | Dec 2003 | A1 |
20030229809 | Wexler | Dec 2003 | A1 |
20040054937 | Williams | Mar 2004 | A1 |
20040068330 | White | Apr 2004 | A1 |
20040249906 | Olbricht | Dec 2004 | A1 |
20050089331 | Margalit | Apr 2005 | A1 |
20050135306 | McAllen | Jun 2005 | A1 |
20050138428 | McAllen | Jun 2005 | A1 |
20050281256 | Taipale | Dec 2005 | A1 |
20060239183 | Robitaille | Oct 2006 | A1 |
20060274671 | Budampati | Dec 2006 | A1 |
20070019598 | Prehofer | Jan 2007 | A1 |
20070153091 | Watlington | Jul 2007 | A1 |
20080077425 | Johnson | Mar 2008 | A1 |
20080080577 | Nguyen | Apr 2008 | A1 |
20080140815 | Brant | Jun 2008 | A1 |
20080153477 | Cloutier | Jun 2008 | A1 |
20080177507 | Mian | Jul 2008 | A1 |
20080205341 | Koh | Aug 2008 | A1 |
20080247762 | Yoshikawa | Oct 2008 | A1 |
20080261574 | Rinta-Aho | Oct 2008 | A1 |
20090047026 | Luo | Feb 2009 | A1 |
20090067848 | Ekkizogloy | Mar 2009 | A1 |
20090073300 | Chung | Mar 2009 | A1 |
20090085806 | Piersol | Apr 2009 | A1 |
20090103926 | Hotchkiss | Apr 2009 | A1 |
20090201886 | Lee | Aug 2009 | A1 |
20090226138 | Kelly | Sep 2009 | A1 |
20090251867 | Sharma | Oct 2009 | A1 |
20090292978 | Miyama | Nov 2009 | A1 |
20090304384 | Li | Dec 2009 | A1 |
20090317073 | Hotchkiss | Dec 2009 | A1 |
20090327994 | Christensen et al. | Dec 2009 | A1 |
20100014853 | Astigarraga et al. | Jan 2010 | A1 |
20100027050 | Regnier | Feb 2010 | A1 |
20100054154 | Lambert | Mar 2010 | A1 |
20100124418 | Noble | May 2010 | A1 |
20100202781 | Hudgins | Aug 2010 | A1 |
20100274917 | Cherchali | Oct 2010 | A1 |
20100280858 | Bugenhagen | Nov 2010 | A1 |
20110085468 | Hilton | Apr 2011 | A1 |
20110135312 | El-Ahmadi | Jun 2011 | A1 |
20110154072 | Ho | Jun 2011 | A1 |
20110249408 | Lavoie | Oct 2011 | A1 |
20110283140 | Stevens | Nov 2011 | A1 |
20110304583 | Kruglick | Dec 2011 | A1 |
20110305150 | Haver | Dec 2011 | A1 |
20120014383 | Geromel | Jan 2012 | A1 |
20120069880 | Lemson et al. | Mar 2012 | A1 |
20120105877 | Wakamatsu | May 2012 | A1 |
20120230186 | Lee | Sep 2012 | A1 |
20120250519 | Stevens et al. | Oct 2012 | A1 |
20120257558 | Shin | Oct 2012 | A1 |
20120284517 | Lambert | Nov 2012 | A1 |
20120301134 | Davari | Nov 2012 | A1 |
20120320751 | Zhu | Dec 2012 | A1 |
20120327768 | Sarwar | Dec 2012 | A1 |
20130077968 | Yang | Mar 2013 | A1 |
20130124706 | Margalit | May 2013 | A1 |
20130148977 | Shah | Jun 2013 | A1 |
20130172036 | Miklos | Jul 2013 | A1 |
20130177309 | El-Ahmadi et al. | Jul 2013 | A1 |
20130195396 | Julien | Aug 2013 | A1 |
20130223484 | Tang | Aug 2013 | A1 |
20130243438 | Tang | Sep 2013 | A1 |
20130243439 | Ito | Sep 2013 | A1 |
20130251052 | Tang | Sep 2013 | A1 |
20130262717 | Green | Oct 2013 | A1 |
20130315582 | Kawanishi | Nov 2013 | A1 |
20130346591 | Carroll | Dec 2013 | A1 |
20140024255 | Robitaille | Jan 2014 | A1 |
20140025790 | Robitaille et al. | Jan 2014 | A1 |
20140025806 | Robitaille | Jan 2014 | A1 |
20140056592 | McColloch | Feb 2014 | A1 |
20140056593 | DeAndrea | Feb 2014 | A1 |
20140056594 | Ding | Feb 2014 | A1 |
20140064721 | Wang | Mar 2014 | A1 |
20140071855 | Robitaille | Mar 2014 | A1 |
20140079403 | Daghighian | Mar 2014 | A1 |
20140140689 | Dahlfort et al. | May 2014 | A1 |
20140169785 | Roullot | Jun 2014 | A1 |
20140258742 | Chien et al. | Sep 2014 | A1 |
20140363171 | Tang | Dec 2014 | A1 |
20140369214 | Jinsong | Dec 2014 | A1 |
20150125158 | El-ahmadi | May 2015 | A1 |
20150188635 | Yrh | Jul 2015 | A1 |
20150188636 | Su | Jul 2015 | A1 |
20150200726 | Tang | Jul 2015 | A1 |
20150249503 | Sone | Sep 2015 | A1 |
20150256259 | Huang | Sep 2015 | A1 |
20150256260 | Kurashima | Sep 2015 | A1 |
20160021402 | LaBosco et al. | Jan 2016 | A1 |
20160350249 | Barga | Dec 2016 | A1 |
20160380698 | Elahmadi | Dec 2016 | A1 |
20170059796 | Huang | Mar 2017 | A1 |
20170279533 | El-Ahmadi et al. | Sep 2017 | A1 |
20170302340 | Berlin et al. | Oct 2017 | A1 |
20180041280 | Elahmadi et al. | Feb 2018 | A1 |
20190310960 | Renaud et al. | Oct 2019 | A1 |
20200287630 | Robitaille et al. | Sep 2020 | A1 |
20210013961 | Manning | Jan 2021 | A1 |
Number | Date | Country |
---|---|---|
2421200 | Feb 2012 | EP |
20090004239 | Jan 2009 | KR |
2010097514 | Sep 2010 | WO |
2011054006 | May 2011 | WO |
Entry |
---|
Drimer et al; A protocol for secure updates of FPGA Configurations; 2009; University of Cambridge; pp. 1-12. (Year: 2009). |
Inano et al; (Development of SFP+ the smallest 10Gbit/s pluggable optical transceiver ; Apr. 2009; SEI technical review; pp. 1-5. (Year: 2009). |
Cheshire, “Dynamic Configuration of IPv4 Link-Local Addresses,” May 2005, 33 pages. |
Plummer, “An Ethernet Address Resolution Protocol-or-Converting Network Protocol Addresses to 48.bit Ethernet Address for Transmission on Ethernet Hardware,” Nov. 1982, 10 pages. |
Malkin, “Traceroute Using an IP Option,” Jan. 1993, 7 pages. |
https://lkml.org/lkml/2005/10/19/46 on Oct. 16, 2012, Ingo Molnar, Oct. 19, 2005, 7 pages. |
Sosnoski, “Classworking toolkit: Combining source and bytecode generation,” Oct. 4, 2005, 9 pages. |
Cyclone IV Device Handbook, vol. 1, Altera, Dec. 2010 (478 pages). |
IEEE Standard for Information Technology, Part 3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) access method and Physical Layer specifications, 2008 (315 pages). |
Gigabit Ethernet Auto-Negotiation, by Rich Hernandez, www.dell.com/powersolutions, 1999 (6 pages). |
Thomas, G. “Incorporating Media Converters.” Contemporary Control Systems, Inc. the Extension. vol. 7, No. 6, Nov. 2006 [online] [retrieved on Dec. 4, 2013]. Retrieved from the Internet: <URL: http://www.ccontrols.com/pdf/Extv7n6.pdf> (4 pages). |
Avago Technologies. “1000BASE-T Interface and Functionality of ABCU-57xxRZ Gigabit Ethernet Small Form Puggable Electrical Transceivers Over Category 5 Unshielded Twisted Pair Cable—Application Note 5286.” XP055091424, Sep. 14, 2010 [online] [retrieved on Dec. 4, 2013]. Retrieved from the Internet <URL: http://www.avagotech.com/docs/AV02-2643EN‎> (16 pages). |
International Search Report and Written Opinion mailed Nov. 26, 2013 which issued in International Patent Application No. PCT/IB2013/001559 (8 pages). |
International Search Report and Written Opinion mailed Dec. 4, 2013 which issued in International Patent Application No. PCT/IB2013/001557 (9 pages). |
International Search Report and Written Opinion mailed Dec. 9, 2013 which issued in International Patent Application No. PCT/IB2013/001556 (7 pages). |
Extended European Search Report mailed Dec. 18, 2013 which issued in European Patent Application No. 13183360.0 (11 pages). |
Drimer et al.; “A protocol for secure Remote updates of a FPGA configurations”; 2009; Springer; Lecture Notes in Computer Science, vol. 5453; pp. 50-61. |
Devic et al.; “Secure protocol implementation for remote bitstream update preventing replay attacks on FPGA”; 2010; IEEE; pp. 179-182. |
Rad Data Communications, Rad & Miniature & SFP-S & SFF 8439 Specifications; Dec. 2007. |
Rad Data Communications, Data Sheet-MIRICI-155 Intelligent Miniature GbE over STM-l/OC-3 NTU; 2007-2010. |
Building Compilable Class Models, David S. Frankel, 2001 (28 pages). |
Sosnoski, D. “Classworking toolkit: Combining source and bytecode generation”, developer Works, http://www.ibm.com/developerworks/java/library/j-cwt1 0045/index.html, Oct. 4, 2005 (9 pages). |
Drimer et al.; A protocol for Secure remote updates of FPGA Configurations; Springer-Verlag Berlin Heidelberg; pp. 50-61. (Year: 2009). |
Kim et al.; The firmware design and Implementation Scheme for C From-Factor Pluggable Optical Transceiver; Mar. 2020; Applied sciences; pp. 1-19. (Year: 2020). |
Number | Date | Country | |
---|---|---|---|
20230283379 A1 | Sep 2023 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 17242520 | Apr 2021 | US |
Child | 18195488 | US | |
Parent | 16880119 | May 2020 | US |
Child | 17242520 | US | |
Parent | 16176966 | Oct 2018 | US |
Child | 16880119 | US | |
Parent | 15645482 | Jul 2017 | US |
Child | 16176966 | US | |
Parent | 13551804 | Jul 2012 | US |
Child | 15645482 | US |