Patent Description:
This section introduces aspects that may help facilitate a better understanding of the disclosure.

Optical network operators are facing a fast growth in bandwidth demand, in part due to the development and deployment of cloud-based services. As a result, various optical-network elements need to be configured and operated, e.g., to provide nearly optimal performance, meet quality-of-service requirements, and/or guarantee any other pertinent benchmarks. Due to this need, one of the requirements to telecom equipment manufacturers is to provide the optical network operator(s) with a supervisory system that can be used to monitor the status of various network elements, detect and mitigate undesired conditions, maintain good performance characteristics throughout the network, accelerate and/or improve automation of certain network functions, etc. It is also desirable for the supervisory system to be amenable to a relatively low-cost implementation.

<CIT> discloses a configuration with installing on a node of a computer network, an agent of a network system, wherein the installed agent receives a network task via the network.

<CIT> discloses a telemetry manager receives, from a network server, global data collection information about network components in an optical network device.

Disclosed herein are various embodiments of a supervisory system for an optical communication network configured to support shared access to measurement sensors of multiple optical-network nodes. According to an example embodiment, two or more optical-network nodes can negotiate a shared measurement schedule to synchronize triggering events for the measurements performed at different ones of the nodes and configure at least one of the nodes to receive measurement results from the other nodes. One possible benefit of such shared access is an improved accuracy of the measurements involving two or more sensors located at different nodes due to the synchronicity imposed by the shared measurement schedule. Another possible benefit of such shared access is the ability to use the same flow of digital measurement samples generated by a sensor for two or more different monitoring tasks hosted by different optical-network nodes.

According to an example embodiment, provided is an apparatus, comprising: a first optical-network node; a second optical-network node; and an optical fiber link connected, at least, to support transmission of an optical data stream between the first and second optical-network nodes, the first optical-network node including a first sensor to make first measurements of a portion of said optical data stream at the first optical-network node, the second optical-network node including a second sensor to make second measurements of the portion of said optical data stream at the second optical-network node; and wherein the first and second optical-network nodes are configured to perform a negotiation of monitoring to set one or more common measurement times for the first and second measurements.

In some embodiments of the above apparatus, the second optical-network node is configured to transmit, to the first optical-network node, information indicative of the second measurements performed thereat at said one or more common measurement times.

According to another example embodiment, provided is an apparatus, comprising a first optical-network node including an electronic controller and a node equipment, the node equipment being configured to communicate an optical data stream with a second optical-network node via an optical fiber link; wherein the electronic controller is configured to establish a shared measurement schedule for first measurements of a portion of the optical data stream at the node equipment and for second measurements of the portion of the optical data stream at the second optical-network node. The apparatus is configured to establish the shared measurement schedule using control messages exchanged by the first and second optical-network nodes.

In some embodiments of the above apparatus, the first optical network node is configured to receive information indicative of the second measurements from the second optical-network node.

According to yet another example embodiment, provided is a non-transitory machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements a method comprising the steps of: establishing a shared measurement schedule for performing first measurements at a first optical-network node of an optical communication network and performing second measurements at a different second optical-network node of the optical communication network; and causing digital samples of both the first measurements and the second measurements to be congregated (e.g., at least copies thereof are gathered together). In various embodiments, a network entity at which digital samples of both the first measurements and the second measurements may be congregated can be selected, e.g., from the following nonexclusive list: the first optical-network node, the second optical-network node, a different third optical-network node, and a controller.

According to yet another example embodiment, provided is an apparatus, comprising: at least one processor; and at least one memory including program code; and wherein the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus at least to: establish a shared measurement schedule for first measurements at a first optical-network node of an optical communication network and for second measurements at a different second optical-network node of the optical communication network, the shared measurement schedule being established using control messages exchanged by the first and second optical-network nodes; and cause digital samples of both the first measurements and the second measurements to be gathered together at least at one of the first and second optical-network nodes. In other embodiments, the digital samples of both the first measurements and the second measurements may alternatively and/or additionally be congregated at a different third optical-network node and/or a controller.

Other aspects, features, and benefits of various disclosed embodiments will become more fully apparent, by way of example, from the following detailed description and the accompanying drawings, in which:.

<FIG> shows a block diagram of an optical communication network <NUM> in which various disclosed embodiments can be practiced. Optical communication network <NUM> is illustratively shown as comprising nine optical-network nodes <NUM><NUM>-<NUM><NUM> and a network controller <NUM>. In operation, the nodes <NUM><NUM>-<NUM><NUM> can send and receive optical data packets, via inter-node links <NUM>, from a corresponding source node to a corresponding destination node. Each node <NUM>i is connected to network controller <NUM> via a corresponding control link <NUM>i, where i=<NUM>, <NUM>,. Controller <NUM> may use control links <NUM> to appropriately configure the nodes <NUM> for generating and/or directing optical data packets, via inter-node links <NUM>, from a corresponding ingress node <NUM>i to a corresponding egress node <NUM>j, where j=<NUM>, <NUM>,. , <NUM> and j≠i. In an example embodiment, each of nodes <NUM><NUM>-<NUM><NUM> can operate as an ingress node, as a relay node, and/or as an egress node. Each control link <NUM>i can be a wireline link, a wireless link, an optical link, or any combination thereof. Each inter-node link <NUM> can be implemented using a suitable optical fiber or fiber-optic cable. In some embodiments, an inter-node link <NUM> may also enable the resident control entities (e.g., <NUM>, <FIG>) of individual nodes <NUM> connected by that link to exchange control messages directly, i.e., without involving network controller <NUM>. Several examples of such exchanges are described in more detail below in reference to <FIG>. Depending on the embodiment, such exchanges can be performed using an Optical Supervisory Channel (OSC) (or similar) or a dedicated control/management subnet, e.g. implemented using Ethernet connections.

As shown in <FIG>, network <NUM> has a partial mesh topology, in which each of the nodes <NUM><NUM>-<NUM><NUM> is directly connected to only some of the other nodes. However, various embodiments disclosed herein are not limited only to partial mesh topologies. For example, at least some embodiments can be adapted for a network having a full mesh topology, in which each of the nodes <NUM><NUM>-<NUM><NUM> is directly connected to each of the other nodes. In various alternative embodiments, network <NUM> can have more or fewer than nine constituent nodes <NUM> connected to one another using the corresponding full mesh topology or any desired partial mesh topology.

In some embodiments, network <NUM> is configured to use Wavelength Division Multiplexing (WDM), i.e., multiple carrier wavelengths.

When functioning as an ingress node, a node <NUM> may operate to: (i) receive data from an external source via a corresponding peripheral link (not explicitly shown in <FIG>); (ii) (re)packetize the received data; (iii) modulate an optical carrier using the packetized data; and (iv) apply the resulting modulated optical signal to appropriate one or more of the corresponding links <NUM>. When functioning as an egress node, a node <NUM> may operate to: (i) receive a modulated optical signal from a corresponding link <NUM>; (ii) extract the payload data therefrom; and (iii) direct the extracted data to an external data sink via a corresponding peripheral link (not explicitly shown in <FIG>). When functioning as a relay node, a node <NUM> may operate to receive an optical data packet via one link <NUM> and then send the corresponding optical data packet through one or more other links <NUM>.

In an example embodiment, the nodes <NUM><NUM>-<NUM><NUM> are time-synchronized with one another with suitable accuracy. For example, the Precision Time Protocol (PTP), which is capable of achieving relative clock accuracies in the sub-microsecond range, can be used for time-synchronization purposes in some embodiments of network <NUM>. A person of ordinary skill in the pertinent art will readily understand that other suitable time-synchronization mechanisms may also be used in alternative embodiments of network <NUM>.

In an example embodiment, a node <NUM> may include some or all of the following node equipment: one or more lasers; one or more multiplexers/demultiplexers, e.g., a Reconfigurable Optical Add/Drop Multiplexer (ROADM); one or more optical and/or electronic switches; one or more optical splitters, combiners, mixers, and couplers; one or more optical amplifiers; one or more photodetectors; one or more sensors; monitoring and diagnostic equipment; one or more analog-to-digital converters; one or more digital-to-analog converters; one or more fiber-optic interfaces; one or more optical transmitters/receivers; signal-processing circuitry; control circuitry, etc. Several examples of the node equipment that may be used in a node <NUM> are described in more detail below in reference to <FIG>.

In some embodiments, network <NUM> may be configured to use machine-learning techniques, such as reinforcement learning (RL). Herein, the term "reinforcement learning" (or RL) generally refers to an area of machine learning concerned with how software and/or hardware control agents (e.g., various electronic controllers) ought to take actions in an environment to optimize (e.g., maximize) some benefit (e.g., cumulative reward). RL is one of three basic machine-learning paradigms, which also include supervised learning and unsupervised learning. In an example implementation, the environment for RL may be formulated in the form of a Markov decision process (MDP), e.g., because many RL algorithms so formulated may utilize dynamic programming techniques. One noticeable difference between classical dynamic programming methods and RL algorithms is that the latter do not assume knowledge of an exact mathematical model of the MDP and tend to be applied to relatively large MDPs for which more-exact methods may not be technically feasible. RL, due to its generality, is used in many disciplines, such as game theory, control theory, operations research, information theory, simulation-based optimization, multi-agent systems, swarm intelligence, statistics, and genetic algorithms. In some literature, RL may also be referred to as approximate dynamic programming or neuro-dynamic programming. Example benefits of RL in network <NUM> may include improvements in network automation, quality of user experience, reaction time, etc..

To be efficient, machine-learning techniques typically rely on relatively large volumes of high-quality, heterogeneous monitoring information, e.g., parameter samples, device states, state alerts, etc. Such information can typically be used during both the exploration phase and the exploitation phase of an RL algorithm, such as the SARSA algorithm. Herein, SARSA stands for state-action-reward-state-action. The RL algorithm can be run by an agent, e.g., an electronic controller, that can interact with the environment, e.g., represented by controllable circuits and devices. The agent can observe different states in the environment using the monitoring information and take actions. In response to an action, the observed state may change, and the agent may get a reward, e.g., quantified by a Q-value. For example, in the SARSA algorithm, the main function for updating the Q-value depends on the current state S<NUM>, the action A<NUM> the agent chooses in the state S<NUM>, the reward the agent gets for choosing the action A<NUM>, the state S<NUM> that is observed after the action A<NUM> is taken, and the next action A<NUM> the agent chooses in the state S<NUM>. The agent may be programmed to maximize the reward using a suitable action-selection policy, such as the greedy policy or the ε-greedy policy. High-quality monitoring information enables the RL algorithm to: (i) better identify anomalies and undesired conditions during the exploration phase; and (ii) make better decisions and/or take finer actions during the exploitation phase, thereby significantly improving the overall system performance.

Disadvantageously, some conventional performance-monitoring systems in optical communication networks may not be capable of providing the high-quality monitoring information needed for properly supporting some of the above-indicated machine-learning techniques. For example, some problems in the state of the art may include, but are not limited to: (i) false positives in the detection of undesired conditions; (ii) poor quality of collected monitoring samples, e.g., including low accuracy, high granularity, long inter-sample delays, and unacceptable jitter; (iii) scalability issues, e.g., due to the bandwidth and processing power required for adequately handling the monitoring information at a centralized controller; and (iv) relatively high latency, e.g., associated with the involvement of a centralized controller in certain actions directed at reconfiguring some network devices in response to the monitoring information.

At least some of the above-indicated problems in the state of the art can beneficially be addressed using at least some embodiments disclosed herein. More specifically, an example embodiment can beneficially be used to enable two or more optical-network nodes (e.g., <NUM>, <FIG>) to agree on a shared measurement schedule for collecting monitoring information and then have shared access to at least some parts of the collected monitoring information. One possible benefit of such shared access is an improved accuracy of the measurements involving two or more measurement sensors located at different nodes due to the synchronicity imposed by the shared measurement schedule. The resulting higher-quality monitoring information can be used, e.g., to support RL-based system-control techniques as outlined above. At least some embodiments may also be used to improve performance of optical networks that do not rely on machine learning for adaptive reconfiguration of some or all network devices therein.

<FIG> shows a block diagram of an optical-network node <NUM>i according to an embodiment. The corresponding control link <NUM>i and a set <NUM>i of inter-node links <NUM> are also shown in <FIG> to better illustrate the relationship between the apparatus shown in <FIG> and <FIG>. The set <NUM>i includes Ni inter-node links <NUM>, where Ni is the degree of the i-th optical-network node <NUM>i. Ni is a positive integer that may depend on the particular location of the node <NUM>i within the network <NUM> and on the network topology. In the example of <FIG>, for the optical-network node <NUM><NUM> (i.e., for i=<NUM>), the number N<NUM> is N<NUM>=<NUM>; and for the optical-network node <NUM><NUM> (i.e., for i=<NUM>), the number N<NUM> is N<NUM>=<NUM>, and so on. In the shown embodiment, each inter-node link <NUM> of the set <NUM>i may be configured to support a corresponding OSC channel, which can be used by the corresponding pair of nodes <NUM> to exchange control messages, e.g., as described below.

Node <NUM>i comprises an input/output (I/O) interface <NUM>i, a node controller <NUM>i, and node equipment <NUM>i. In operation, I/O interface <NUM>i appropriately couples node controller <NUM>i to control link <NUM>i, which enables the node controller to communicate with network controller <NUM>. I/O interface <NUM>i also appropriately couples node controller <NUM>i and node equipment <NUM>i to the set <NUM>i of inter-node links <NUM>, which enables the node equipment to transmit and receive optical data packets to/from other nodes <NUM>j and also enables the node controller to send and receive control messages via the corresponding OSC channel(s). In alternative embodiments, the control and management plane network or other suitable channels can be used to transmit such control messages.

Node controller <NUM>i comprises a processor <NUM>, a memory <NUM>, and other appropriate control circuitry (not explicitly shown in <FIG>). In an example embodiment, processor <NUM> and memory <NUM> can be configured to create and run at least two types of virtual control agents: consumer agents <NUM><NUM>-<NUM>M and collector agents <NUM><NUM>-<NUM>L. The numbers M and L are positive integers that can be dynamically changed as needed, i.e., node controller <NUM>i may dynamically create and annihilate consumer agents <NUM> and/or collector agents <NUM> on the as-needed basis.

Node equipment <NUM>i comprises a signal processor <NUM>, a memory <NUM>, sensors <NUM><NUM>-<NUM>K, and other appropriate circuits and devices (not explicitly shown in <FIG>), e.g., some of the circuits and devices mentioned above. In an example embodiment, processor <NUM> and memory <NUM> may be configured to perform signal processing and possibly some other computations needed to support conventional data processing, routing, and transport functions of node <NUM>i. Sensors <NUM><NUM>-<NUM>K may include physical sensors, such as an optical power meter or an Optical Channel Monitor (OCM), and/or logical sensors, such as a Bit-Error-Ratio (BER) monitor of a Forward-Error-Correction (FEC) decoder and the like. Physical sensors may be specific physical circuits and/or devices within the node equipment <NUM>i. Logical sensors may be implemented, e.g., using software running on processor <NUM> with access to memory <NUM>. Both physical and logical sensors <NUM> can be configured to produce measurements in a digital form, e.g., compatible with the format used by the corresponding consumer agent(s) <NUM> and collector agent(s) <NUM>.

In an example embodiment, node <NUM>i is configured to negotiate shared measurement schedules for one or more monitoring tasks with one or more other nodes <NUM>j, where j≠i. To start a negotiation aimed at collecting specified measurements from one or more sensors <NUM> of other node(s) <NUM>j and optionally from one or more sensors <NUM> of the host node <NUM>i, node controller <NUM>i of the node <NUM>i first operates to create a consumer agent <NUM>m corresponding to the aim. Consumer agent <NUM>m then operates to request cooperation from (i) the other node(s) <NUM>j implicated by the aim and (ii) possibly from appropriate control entities within the host node <NUM>i. In response to the request, node controller(s) <NUM> of such other node(s) <NUM>i operate to create the corresponding collector agent(s) <NUM>, each tasked with collecting the specified measurements from the corresponding sensor(s) <NUM> of the corresponding host node <NUM>j. The created collector agent(s) <NUM> then operate to: (i) negotiate with the consumer agent <NUM>m an agreement for the coordinated measurements; (ii) collect from the corresponding sensor(s) <NUM> the measurements performed in accordance with the negotiated agreement; and (iii) send the measurement results to the consumer agent <NUM>m. If the aim implicates the host node <NUM>i, then the node controller <NUM> of the host node <NUM>i similarly operates to create the corresponding collector agent(s) <NUM> thereat.

In an example embodiment, an agreement between the consumer agent <NUM>m and a collector agent <NUM> may rely on at least the following parameters: (i) an identifier of the agreement; (ii) a set of sensor-selection criteria to determine the sensor(s) <NUM> to be controlled by the collector agent <NUM>; and (iii) a list of measurement schedules. Each measurement schedule may be defined by at least the following parameters: (i) an identifier of the schedule; (ii) a reference time; and (iii) a time interval. Within the same agreement, different schedules are preferably given different respective (i.e., unique) identifiers. The reference time relies on the synchronized (e.g., PTP-based) clocks of the nodes <NUM>i and <NUM>j and can be, e.g., in the form of a timestamp having appropriate (e.g., sub-millisecond or sub-microsecond) accuracy. When periodic measurements are needed, the "time interval" parameter is used to specify the time period with which the periodic measurements are collected. When a single measurement is needed, the "time interval" parameter can be set to zero. In some cases, an agreement may have a single schedule.

In some alternative embodiments, one or more additional parameters may be included in the agreement and/or schedules. For example, one or more processing parameters may be added to the agreement to configure the corresponding collector agent <NUM> to process the collected measurement samples prior to being sent to the corresponding consumer agent <NUM>m. Such processing parameters may, for example, specify some filtering criteria to be applied to the collected measurement samples, sample-aggregation policies to be applied to the collected measurement samples, mathematical transforms to be applied to the collected measurement samples, etc. As another example, one or more values of sensor-configuration parameters may be specified when reconfigurable (e.g., multipurpose) sensors are being invoked by the agreement.

In some embodiments, the sensor-selection criteria of an agreement may depend on the specific architecture of the node equipments <NUM> of the various optical-network nodes <NUM>j and, as such, may be vendor specific. In some other embodiments, the sensor-selection criteria of an agreement may be formulated in a vendor-agnostic manner, e.g., using a set of predefined monitoring contexts and a list of sub-tasks needed for the monitoring task to be performed. For example, for the task of monitoring, in real-time, the optical attenuation on an optical link <NUM> between a ROADM <NUM> of node <NUM>i and a ROADM <NUM> of node <NUM>j, the monitoring context can be defined as the "optical link" corresponding to the local line port in question. Using such monitoring context, a target sensor may be defined as the enumeration of the sub-tasks of measuring the "local output port power," "local input port power," "neighbor output port power," and "neighbor input port power. " Then, the sensor-selection criteria for the agreement can be formulated as a tuple containing the monitoring context and the list of sub-tasks so formulated. Under this approach, node <NUM>i does not need to "know" the internal architecture of node <NUM>i to select sensors <NUM> therein suitable for the monitoring task for which the agreement is being negotiated, thereby detaching the agreement from vendor-specific implementations. It is worth mentioning here that different monitoring contexts may result in different enumerations of the sub-tasks for the target sensors.

In an example embodiment, an agreement negotiation between the consumer agent <NUM>m and a corresponding collector agent <NUM> may be implemented using, at least, control messages of the following types:.

Two non-limiting examples of negotiations between consumer agent <NUM>m and two collector agents <NUM> implemented using the above-listed control messages are described below in reference to <FIG>. In some embodiments, a negotiation may involve a consumer agent and three or more collector agents located at two or more different optical-network nodes <NUM>. In some other embodiments, a negotiation may involve at least one consumer agent and two or more collector agents. All of the agents may be at the same optical-network node or variously distributed over two or more different optical-network nodes. In some embodiments, a single node may have more than one controller <NUM>. In such embodiments, a negotiation may involve two different controllers <NUM> from the same node and/or controllers <NUM> from different nodes.

In different possible embodiments, different transport and/or application layer protocols can be used to transport the above-described control messages. For example, transport-layer protocols, such as the Transmission Control Protocol (TCP), User Datagram Protocol (UDP), and Quick UDP Internet Connections (QUIC) Protocol, each of which carries text-based or binary-field-based packets, can be used in some embodiments. In some other embodiments, application-layer protocols, such as the Google Remote Procedure Call (gRPC), Apache Thrift, http-based Representational State Transfer (REST) Application Programming Interface (API), and Advanced Message Queuing Protocol (AMQP)/Message Queuing Telemetry Transport (MQTT) protocol can alternatively be used. A person of ordinary skill in the pertinent art will readily understand that other suitable protocols corresponding to different layers may also be used in alternative embodiments.

<FIG> shows a block diagram of a portion <NUM> of optical communication network <NUM> (<FIG>) according to an embodiment. Portion <NUM> comprises optical-network nodes <NUM>i and <NUM>j connected by way of the corresponding inter-node link <NUM> (also see <FIG>). Each of optical-network nodes <NUM>i and <NUM>j has the general structure described above in reference to <FIG>. Accordingly, optical-network node <NUM>i comprises node controller <NUM>i and node equipment <NUM>i. Optical-network node <NUM>j similarly comprises node controller <NUM>j and node equipment <NUM>j. For illustration purposes and without any implied limitations, this particular embodiment is described in reference to the use of the corresponding OSC channel(s). As already indicated above, the use of other communications means for transmitting control messages is also possible in other embodiments.

In accordance with this particular embodiment, the inter-node link <NUM> is configured to support a plurality of optical wavelength channels and at least one OSC channel. Said at least one OSC channel is configured to support communications between node controllers <NUM>i and <NUM>j in a manner that enables consumer agents <NUM> thereof and collector agents <NUM> thereof to exchange control messages, e.g., as described in reference to <FIG> and <FIG>.

Each of node equipments <NUM>i and <NUM>j comprises a respective ROADM, only a portion of which is explicitly shown in <FIG>. As known in the pertinent art, a ROADM can be used to route optical signals in an optical communication network. A ROADM is configurable, which enables the network operator, e.g., using network controller <NUM>, to remotely specify which of the carrier wavelengths are to be added, dropped, and/or passed through at the optical-network node. Such ROADMs are often encountered, e.g., in regional, metro, and long-haul optical networks.

A ROADM is often described in reference to its number of "degrees. " Each degree represents a respective switching direction that is typically associated with a line duplex fiber pair, such as the line optical fiber pair <NUM><NUM>, <NUM><NUM> shown in <FIG>. For example, a degree-<NUM> ROADM operates to switch optical signals in two directions, typically referred to as "East" and "West. " A degree-<NUM> ROADM operates to switch optical signals in four directions, typically referred to as "North," "South," "East," and "West," and so on. Depending on the particular location of the corresponding node within the network and on the network topology, the degree of the ROADM can vary, e.g., from one to twenty or more.

In a modular architecture, a degree-N ROADM can be implemented using N optical-line cards, e.g., as described in <CIT>. For illustration purposes, <FIG> shows only one such optical-line card for each one of the node equipments <NUM>i and <NUM>j. The shown optical-line card of node equipment <NUM>i is labeled <NUM>i. The shown optical-line card of node equipment <NUM>j is labeled <NUM>j. A person of ordinary skill in the art will understand that each of the node equipments <NUM>i and <NUM>i may include one or more additional optical-line cards <NUM> (not explicitly shown in <FIG>) and other pertinent components, e.g., as described in <CIT>.

In an example embodiment, optical-line card <NUM>i of node equipment <NUM>i comprises optical amplifiers <NUM><NUM> and <NUM><NUM>, wavelength-selective switches (WSSs) <NUM><NUM> and <NUM><NUM>, and an OCM <NUM>. Optical amplifier <NUM><NUM> operates to amplify an optical WDM input signal received through optical fiber <NUM><NUM>. WSS <NUM><NUM> then operates to appropriately wavelength de-multiplex the amplified optical WDM signal generated by the optical amplifier <NUM><NUM> and apply the resulting de-multiplexed optical signals to the corresponding ones of the optical output ports of optical-line card <NUM>i as indicated in <FIG>. WSS <NUM><NUM> operates to wavelength multiplex the optical input signals received through the corresponding ones of the optical input ports of optical-line card <NUM>i as indicated in <FIG>. Optical amplifier <NUM><NUM> then operates to amplify the resulting optical WDM signal and apply the amplified optical WDM signal to optical fiber <NUM><NUM>.

In some embodiments, some or all of the optical ports of optical-line card <NUM>i may be bidirectional.

Optical-line card <NUM>j of node equipment <NUM>j has a similar structure to that of optical-line card <NUM>i of node equipment <NUM>i and is configured to operate in a similar manner.

Node controller <NUM>i of node <NUM>i is illustratively shown, without any implied limitations, as running one consumer agent, labeled <NUM><NUM>, and one collector agent, labeled <NUM><NUM>. Collector agent <NUM><NUM> is configured to collect optical-power measurements from an optical-power sensor (e.g., photodetector), labeled <NUM><NUM>, which is optically coupled to monitor the optical power at the optical input port of the optical amplifier <NUM><NUM> in optical-line card <NUM>i.

Node controller <NUM>j of node <NUM>j is illustratively shown, without any implied limitations, as running one consumer agent, labeled <NUM><NUM>, and two collector agents, labeled <NUM><NUM> and <NUM><NUM>, respectively. Collector agent <NUM><NUM> is configured to collect optical-power measurements from an optical-power sensor, labeled <NUM><NUM>, which is connected to monitor the optical power at the optical output port of the optical amplifier <NUM><NUM> in optical-line card <NUM>j. Collector agent <NUM><NUM> is configured to collect optical-power measurements from a wavelength-resolved output, labeled <NUM><NUM>, of the OCM <NUM> in optical-line card <NUM>j.

<FIG> shows a flowchart of a measurement method <NUM> that can be implemented in network portion <NUM> according to an embodiment. Method <NUM> is illustratively shown and described as involving consumer agent <NUM><NUM> and collector agents <NUM><NUM> and <NUM><NUM> (also see <FIG>). The respective vertical lines that extend down from each of consumer agent <NUM><NUM> and collector agents <NUM><NUM> and <NUM><NUM> in <FIG> represent increasing time. Semi-transparent boxes superimposed over the vertical time lines represent respective activities of the corresponding agents, e.g., each of the boxes represents a corresponding task being executed by the corresponding agent. As already mentioned above, the clocks of the corresponding optical-network nodes <NUM>i and <NUM>j are synchronized with one another. Each of the horizontal arrows that connect two respective time lines represents a respective control message transmitted between the corresponding agents. In this illustrative use case, consumer agent <NUM><NUM> and collector agent <NUM><NUM> reside in the same optical-network node, i.e., <NUM>i, whereas collector agent <NUM><NUM> resides in a different optical-network node, i.e., <NUM>j. In other possible use cases, other relative locations of the participating agents are also possible.

As shown, method <NUM> comprises: (i) a negotiation phase <NUM>; (ii) an activation phase <NUM>; (iii) a sampling phase <NUM>; and (iv) a deactivation phase <NUM>. Negotiation phase <NUM> comprises transmission of control messages <NUM>-<NUM>, using which the participating agents attempt to come to an agreement regarding the tasked measurements. Activation phase <NUM> comprises transmission of control messages <NUM>-<NUM>, using which the participating agents activate the agreed-on telemetry flows. Sampling phase <NUM> comprises transmission of control messages <NUM>-<NUM>, using which the telemetry data are transmitted. Depending on the agreed-on measurement schedule, sampling phase <NUM> may include more instances of "sample" messages carrying the corresponding pieces of telemetry data. Deactivation phase <NUM> comprises transmission of control messages <NUM>-<NUM>, which stops or interrupts the flow of "sample" messages. Although, for illustration purposes, the phases <NUM>-<NUM> are shown in <FIG> as being separate and distinct in the time dimension, in some cases, some of the phases may overlap in time, and the corresponding control messages of different phases may be interleaved.

In this example use case, consumer agent <NUM><NUM> is tasked with tracking the optical attenuation between optical-line cards <NUM>; and <NUM>j on optical link <NUM><NUM> (see <FIG>). An optical-attenuation value can be obtained, e.g., by taking a ratio of the optical powers measured by optical-power sensors <NUM><NUM> and <NUM><NUM> at substantially the same sampling time. Accordingly, consumer agent <NUM><NUM> operates to send "propose" messages <NUM> and <NUM> to collector agents <NUM><NUM> and <NUM><NUM>, which are connected to the optical-power sensors <NUM><NUM> and <NUM><NUM>, respectively.

Each of the "propose" messages <NUM> and <NUM> carries respective sensor-selection criteria, which, in some embodiments, can be formulated in terms of the corresponding measurement sub-tasks, e.g., as explained previously. For example, the sensor-selection criteria sensor<NUM> carried by the "propose" message <NUM> may identify the sub-task of measuring the optical input power of optical link <NUM><NUM>. The sensor-selection criteria sensor<NUM> carried by the "propose" message <NUM> may similarly identify the sub-task of measuring the optical output power of optical link <NUM><NUM>. Each of the "propose" messages <NUM> and <NUM> also carries the proposed measurement schedule <id<NUM>, ref_time<NUM>, interval<NUM>>. A person of ordinary skill in the art will readily recognize that performing the indicated sub-tasks on the common schedule will enable consumer agent <NUM><NUM> to determine the optical attenuation between optical-line cards <NUM>; and <NUM>j on optical link <NUM><NUM>, as tasked.

In response to the "propose" message <NUM>, collector agent <NUM><NUM> sends an "accept" message <NUM>, as it determines that optical-power sensor <NUM><NUM> is available for the measurements on the proposed measurement schedule id<NUM>. However, in response to the corresponding "propose" message <NUM>, collector agent <NUM><NUM> sends a "reject" message <NUM>. This rejection may be, e.g., due to a conflict with another, previously agreed-to schedule that collector agent <NUM><NUM> may have with consumer agent <NUM><NUM>. Collector agent <NUM><NUM> then follows up with a counterproposal, by sending a "propose" message <NUM>, wherein two alternative measurement schedules, <id<NUM>, ref_time<NUM>, interval<NUM>> and <id<NUM>, ref_time<NUM>, interval<NUM>>, are proposed to consumer agent <NUM><NUM>. The newly proposed measurement schedules id<NUM> and id<NUM> can be the schedules for the use of optical-power sensor <NUM><NUM> that the collector agent <NUM><NUM> previously accepted in other agreements, but otherwise fit the sensor-selection criterion sensor<NUM> of the "propose" message <NUM>. In other words, the collector agent <NUM><NUM> proposes possible sharing/reuse of a measurement schedule from a different agreement.

Upon receipt of the "propose" message <NUM>, consumer agent <NUM><NUM> attempts to find out if any of the proposed measurement schedules id<NUM> and id<NUM> is acceptable to collector agent <NUM><NUM> with respect to the use of the optical-power sensor <NUM><NUM>. For this purpose, consumer agent <NUM><NUM> first selects one of the measurement schedules id<NUM> and id<NUM>, e.g., based on some auxiliary information or randomly. This particular illustrative example assumes that consumer agent <NUM><NUM> has selected the measurement schedule id<NUM>. Consumer agent <NUM><NUM> then sends to collector agent <NUM><NUM> a "propose" messages <NUM>, which carries the sensor-selection criterion sensor<NUM> and the selected schedule id<NUM>. In response to the "propose" message <NUM>, collector agent <NUM><NUM> sends back an "accept" message <NUM>, as it determines that the optical-power sensor <NUM><NUM> is available for measurements on the proposed measurement schedule id<NUM>. The "accept" message <NUM> clears consumer agent <NUM><NUM> to accept the measurement schedule id<NUM> with respect to the optical-power sensor <NUM><NUM>. As such, consumer agent <NUM><NUM> sends an "accept" message <NUM>, which informs collector agent <NUM><NUM> that the measurement schedule id<NUM> has been accepted. Consumer agent <NUM><NUM> then also sends a "reject" message <NUM>, which informs collector agent <NUM><NUM> that the previously accepted schedule id<NUM> has now been rejected.

Thus, using control messages <NUM>-<NUM>, consumer agent <NUM><NUM> and collector agents <NUM><NUM> and <NUM><NUM> have agreed on the measurement schedule id<NUM> for using the optical-power sensors <NUM><NUM> and <NUM><NUM> in the task of tracking the optical attenuation between optical-line cards <NUM>; and <NUM>j on optical link <NUM><NUM>. Accordingly, consumer agent <NUM><NUM> sends "activate" messages <NUM> and <NUM> to collector agents <NUM><NUM> and <NUM><NUM>, respectively, which activates the measurement schedule id<NUM> at both of those collector agents.

After the activation, the agents enter the sampling phase <NUM>. For simplification, only two "sample" messages <NUM>, <NUM> are shown in <FIG>. The "sample" message <NUM> is sent by collector agent <NUM><NUM> and contains the measurement schedule id<NUM>, timestamp Tk, and the measurement datum produced using the optical-power sensor <NUM><NUM>, which is denoted as telemetry_data_for_sensor<NUM>,k. The "sample" message <NUM> is similarly sent by collector agent <NUM><NUM> and contains the measurement schedule id<NUM>, timestamp Tk, and the measurement datum produced using the optical-power sensor <NUM><NUM>, which is denoted as telemetry_data_for_sensor<NUM>,k. Depending on the parameters of the measurement schedule id<NUM>, additional pairs of such "sample" messages may be sent to consumer agent <NUM><NUM> by collector agents <NUM><NUM> and <NUM><NUM> to deliver additional telemetry data. For example, if the value of interval<NUM> (denoted here as τ) specified for the measurement schedule id<NUM> is τ≠<NUM>, then the timestamps Tk of such serially transmitted "sample" messages may be in accordance with Eq. (<NUM>): <MAT> where T<NUM> denotes the value of ref_time<NUM> specified in the measurement schedule id<NUM>; and k is the (integer) time index. In other embodiments, other approaches may also be used to define the periodicity of a monitoring task. For example, the following instruction or similar may be used: every <NUM> seconds, collect <NUM> samples spaced by <NUM>.

"Deactivation" messages <NUM>, <NUM> may be sent by consumer agent <NUM><NUM> to collector agents <NUM><NUM> and <NUM><NUM>, e.g., when the intended measurement task is completed and/or further telemetry data are not needed. The "deactivation" messages <NUM>, <NUM> thus stop the flow of the "sample" messages (such as <NUM>, <NUM>) for the measurement schedule id<NUM>.

<FIG> shows a flowchart of a measurement method <NUM> that can be implemented in network portion <NUM> according to another embodiment. Method <NUM> makes use of the above-mentioned "retrieve" messages. The depiction of method <NUM> in <FIG> is similar to the depiction of method <NUM> in <FIG>. For illustration purposes and without any implied limitations, method <NUM> is described in reference to the same task as method <NUM>, i.e., with consumer agent <NUM><NUM> being tasked with tracking the optical attenuation between optical-line cards <NUM>i and <NUM>j on optical link <NUM><NUM>.

Method <NUM> comprises: (i) a negotiation phase <NUM>; (ii) an activation phase <NUM>; (iii) a sampling phase <NUM>; and (iv) a deactivation phase <NUM>. Negotiation phase <NUM> comprises transmission of control messages <NUM>-<NUM>, using which the participating agents attempt to come to an agreement regarding the tasked measurements. Activation phase <NUM> comprises transmission of control messages <NUM>-<NUM>, using which the participating agents activate the agreed-on telemetry flows. Sampling phase <NUM> comprises transmission of control messages <NUM>-<NUM>, using which the telemetry data are transmitted. Depending on the agreed-on measurement schedule, sampling phase <NUM> may include more instances of "sample" messages carrying the corresponding pieces of telemetry data. Deactivation phase <NUM> comprises transmission of control messages <NUM>-<NUM>, which stops or interrupts the flow of "sample" messages.

In method <NUM>, consumer agent <NUM><NUM> is configured to implement (if possible) a shared use of measurement schedules previously accepted by collector agents <NUM><NUM> and <NUM><NUM>, e.g., with other consumer agents. Such shared use may be beneficial in some cases, e.g., due to the corresponding reductions in the negotiation time, memory consumption, and/or bandwidth consumption.

At the onset of negotiation phase <NUM>, consumer agent <NUM><NUM> operates to send "retrieve" messages <NUM> and <NUM> to collector agents <NUM><NUM> and <NUM><NUM>, respectively. Each of the "retrieve" messages <NUM> and <NUM> carries respective sensor-selection criteria. For example, the "retrieve" message <NUM> carries the sensor-selection criterion sensor<NUM>. The "retrieve" message <NUM> similarly carries the sensor-selection criterion sensor<NUM>. The sensor selection criteria sensor<NUM> and sensor<NUM> for the attenuation-tracking task have been described previously in reference to <FIG>.

In response to the "retrieve" message <NUM>, collector agent <NUM><NUM> sends a "propose" message <NUM>, which carries measurement schedules <id<NUM>, ref_time<NUM>, interval<NUM>> and <id<NUM>, ref_time<NUM>, interval<NUM>>. The measurement schedules id<NUM> and id<NUM> can be the schedules for the use of optical-power sensor <NUM><NUM> that the collector agent <NUM><NUM> previously accepted in other agreements corresponding to the sensor-selection criterion sensor<NUM>.

In response to the "retrieve" message <NUM>, collector agent <NUM><NUM> similarly sends a "propose" message <NUM>, which carries measurement schedules <id<NUM>, ref_time<NUM>, interval<NUM>> and <id<NUM>, ref_time<NUM>, interval<NUM>>. The measurement schedules id<NUM> and id<NUM> can be the schedules for the use of optical-power sensor <NUM><NUM> that the collector agent <NUM><NUM> previously accepted in other agreements corresponding to the sensor-selection criterion sensor<NUM>.

Upon receiving the "propose" messages <NUM> and <NUM>, consumer agent <NUM><NUM> operates to: (a) compute intersection(s) between the measurement schedules id<NUM>, id<NUM> and the measurement schedules id<NUM>, id<NUM>; and (b) determine whether or not any of the computed intersections satisfies the sampling needs of the attenuation-tracking task. If there is no intersection (i.e., the intersection is empty) after step (a) or if it is determined after step (b) that none of the computed intersections satisfies the sampling needs of the task, then collector agent <NUM><NUM> may attempt a different negotiation strategy, e.g., similar to that of negotiation phase <NUM> of method <NUM>. Otherwise, the processing of method <NUM> may proceed, e.g., as explained in more detail below.

A non-empty intersection of two measurement schedules may be observed, e.g., if one of the following example schedule-compatibility features is present:.

A person of ordinary skill in the art will readily understand that other schedule-compatibility features may also result in a non-empty intersection of the measurement schedules.

For the sake of this illustrative example, let us assume that the measurement schedules id<NUM> and id<NUM> are characterized by the schedule-compatibility feature (ii), wherein interval<NUM> is greater than interval<NUM> by an integer factor of B. In this case, consumer agent <NUM><NUM> may obtain usable measurement samples from collector agents <NUM><NUM> and <NUM><NUM>, e.g., by instructing the collector agent <NUM><NUM> to appropriately aggregate each B samples or filter out (B-<NUM>) of each B samples obtained from the optical-power sensor <NUM><NUM>. This pre-processing operation is labeled <NUM> in <FIG>.

After analyzing the "propose" messages <NUM> and <NUM> as described above, consumer agent <NUM><NUM> may send "accept" messages <NUM> and <NUM>. The "accept" message <NUM> informs collector agent <NUM><NUM> that the measurement schedules id<NUM> is accepted. The "accept" message <NUM> may then be followed by an additional control message (not explicitly shown in <FIG>) that instructs collector agent <NUM><NUM> to perform pre-processing <NUM> on the measurement samples obtained from the optical-power sensor <NUM><NUM>. The "accept" message <NUM> informs collector agent <NUM><NUM> that the measurement schedules id<NUM> is accepted. Thus, using control messages <NUM>-<NUM>, consumer agent <NUM><NUM> and collector agents <NUM><NUM> and <NUM><NUM> have agreed to use the previously accepted measurement schedules id<NUM>, id<NUM> for a new task, e.g., different from the previous tasks corresponding to the measurement schedules id<NUM>, id<NUM>. In this particular case, based on the analysis of the previously accepted measurement schedules, additional processing <NUM> has also been implemented to make the measurement samples generated in accordance with the previously accepted measurement schedules compatible with the new task.

Upon completion of the negotiation phase <NUM>, consumer agent <NUM><NUM> sends "activate" messages <NUM> and <NUM> to collector agents <NUM><NUM> and <NUM><NUM>, respectively, which activates the measurement schedules id<NUM>, id<NUM> thereat with respect to this consumer agent.

After the activation, the agents enter the sampling phase <NUM>. For simplification, only two "sample" messages <NUM>, <NUM> are shown in <FIG>. The "sample" message <NUM> is sent by collector agent <NUM><NUM> and contains the measurement schedule id<NUM>, timestamp Tk, and the measurement datum produced by applying pre-processing <NUM> to the measurement samples generated by optical-power sensor <NUM><NUM> in accordance with the measurement schedule id<NUM>. The measurement datum of the "sample" message <NUM> is denoted as telemetry_data_for_sensor<NUM>,k. The "sample" message <NUM> is similarly sent by collector agent <NUM><NUM> and contains the measurement schedule id<NUM>, timestamp Tk, and the measurement datum produced by the optical-power sensor <NUM><NUM> in accordance with the measurement schedule id<NUM>. The measurement datum of the "sample" message <NUM> is denoted as telemetry_data for_sensor<NUM>,k. Additional pairs of such "sample" messages may be sent to consumer agent <NUM><NUM> by collector agents <NUM><NUM> and <NUM><NUM> to deliver additional telemetry data, e.g., corresponding to timestamps Tk expressed by Eq. (<NUM>) or by a suitable alternative, as mentioned above.

"Deactivation" messages <NUM>, <NUM> may be sent by consumer agent <NUM><NUM> to collector agents <NUM><NUM> and <NUM><NUM>, e.g., when the intended measurement task is completed and/or further telemetry data are not needed. The "deactivation" messages <NUM>, <NUM> thus stop the flow of the "sample" messages (such as <NUM>, <NUM>) to consumer agent <NUM><NUM>. The "deactivation" messages <NUM>, <NUM> do not typically affect the telemetry flows for the original measurement schedules id<NUM>, id<NUM>, which the collector agents <NUM><NUM> and <NUM><NUM> had in place with other consumer agents prior to the negotiation phase <NUM>.

In some embodiments, one or more of the following additional features may be implemented:.

According to an example embodiment disclosed above, e.g., in the summary section and/or in reference to any one or any combination of some or all of <FIG>, provided is an apparatus, comprising: a first optical-network node (e.g., <NUM>i, <FIG>); a second optical-network node (e.g., <NUM>j, <FIG>); and an optical fiber link (e.g., <NUM>, <FIG>) connected, at least, to support transmission of an optical data stream between the first and second optical-network nodes, the first optical-network node including a first sensor (e.g., <NUM><NUM>, <FIG>) to make first measurements of a portion of said optical data stream at the first optical-network node, the second optical-network node including a second sensor (e.g., <NUM><NUM>, <FIG>) to make second measurements of the portion of said optical data stream at the second optical-network node; and wherein the first and second optical-network nodes are configured to perform a negotiation of monitoring (e.g., <NUM>, <FIG>; <NUM>, <FIG>) to set one or more common measurement times for the first and second measurements.

In some embodiments of any of the above apparatus, in response to the negotiation of monitoring, the second optical-network node is configured to include in the information (e.g., <NUM>, <FIG>; <NUM>, <FIG>) a respective one of the common measurement times for each one of the second measurements performed at said one or more common measurement times.

In some embodiments of any of the above apparatus, the second optical-network node is configured to generate the information using specified processing (e.g., <NUM>, <FIG>) applied to an output of the second sensor, said processing being specified during the negotiation of monitoring.

In some embodiments of any of the above apparatus, the first optical-network node has (e.g., at <NUM>, <FIG>) a first measurement schedule for the first sensor; wherein the second optical-network node has (e.g., at <NUM>, <FIG>) a second measurement schedule for the second sensor; and wherein the first and second optical-network nodes are configured to set the one or more common measurement times using a non-empty intersection of the first and second measurement schedules.

In some embodiments of any of the above apparatus, the second optical-network node is configured to select the second sensor from a plurality of sensors (e.g., <NUM><NUM>-<NUM>K, <FIG>) of the second optical-network node based on one or more sensor-selection criteria communicated by the first optical-network node during the negotiation of monitoring.

In some embodiments of any of the above apparatus, the first sensor is a logical sensor configured to run on a processor (e.g., <NUM>, <FIG>) of the first optical-network node, the processor of the first optical-network node being configured to recover data encoded in the portion of said optical data stream.

In some embodiments of any of the above apparatus, the second sensor is a logical sensor configured to run on a processor (e.g., <NUM>, <FIG>) of the second optical-network node.

In some embodiments of any of the above apparatus, the negotiation of monitoring comprises transmission of a plurality of control messages (e.g., <NUM>-<NUM>, <FIG>; <NUM>-<NUM>, <FIG>) between the first and second optical-network nodes.

In some embodiments of any of the above apparatus, at least one of the control messages (e.g., <NUM>, <NUM>, <FIG>) is to specify a reference time for said one or more common measurement times.

In some embodiments of any of the above apparatus, at least one of the control messages (e.g., <NUM>, <NUM>, <FIG>) is to specify a period for the common measurement times.

In some embodiments of any of the above apparatus, at least one of the control messages (e.g., <NUM>, <NUM>, <FIG>) is to specify one or more sensor-selection criteria for the first or second measurements.

According to another example embodiment disclosed above, e.g., in the summary section and/or in reference to any one or any combination of some or all of <FIG>, provided is an apparatus, comprising: a first optical-network node (e.g., <NUM>i, <FIG>) including an electronic controller (e.g., <NUM>, <FIG>) and a node equipment (e.g., <NUM>, <FIG>), the node equipment being configured to communicate an optical data stream with a second optical-network node (e.g., <NUM>j, <FIG>) via an optical fiber link (e.g., <NUM>, <FIG>); and wherein the electronic controller is configured to establish a shared measurement schedule (e.g., at <NUM>, <FIG>; <NUM>, <FIG>) for first measurements of a portion of the optical data stream at the node equipment and for second measurements of the portion of the optical data stream at the second optical-network node.

In some embodiments of any of the above apparatus, the shared measurement schedule is configured to cause at least one of the first measurements and at least one of the second measurements to be synchronous (e.g., substantially or exactly simultaneous).

In some embodiments of any of the above apparatus, the apparatus is configured to transmit at least some of the information on an optical supervisory channel.

According to yet another example embodiment disclosed above, e.g., in the summary section and/or in reference to any one or any combination of some or all of <FIG>, provided is a non-transitory machine-readable medium, having encoded thereon program code, wherein, when the program code is executed by a machine, the machine implements a method comprising the steps of: (i) establishing a shared measurement schedule (e.g., at <NUM>, <FIG>; <NUM>, <FIG>) for performing first measurements at a first optical-network node (e.g., <NUM>i, <FIG>) of an optical communication network and performing second measurements at a different second optical-network node (e.g., <NUM>j, <FIG>) of the optical communication network; and (ii) causing digital samples of both the first measurements and the second measurements to be congregated (e.g., at <NUM>, <FIG>; <NUM>, <FIG>). As used herein, the term "congregated" should be interpreted to mean that a particular (e.g., distinct) network entity has (e.g., gathered together thereat, accessible on demand thereto, within its control, or stored in a memory thereof) at least copies of the digital samples of both the first measurements and the second measurements. In various embodiments, such network entity may be selected, e.g., from the following nonexclusive list: the first optical-network node, the second optical-network node, a different third optical-network node, and an electronic controller.

According to yet another example embodiment disclosed above, e.g., in the summary section and/or in reference to any one or any combination of some or all of <FIG>, provided is an apparatus, comprising: at least one processor (e.g., <NUM>, <FIG>); and at least one memory (e.g., <NUM>, <FIG>) including program code; and wherein the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus at least to: establish a shared measurement schedule (e.g., at <NUM>, <FIG>; <NUM>, <FIG>) for first measurements at a first optical-network node (e.g., <NUM>i, <FIG>) of an optical communication network and for second measurements at a different second optical-network node (e.g., <NUM>j, <FIG>) of the optical communication network; and cause digital samples of both the first measurements and the second measurements to be congregated (e.g., at <NUM>, <FIG>; <NUM>, <FIG>).

In some embodiments of the above apparatus, the shared measurement schedule is configured to cause at least one of the first measurements and at least one of the second measurements to be substantially or exactly synchronous.

In some embodiments of any of the above apparatus, the apparatus is configured to transmit some of the digital samples between the first and second optical-network nodes on an optical supervisory channel.

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause said some of the digital samples to be generated using specified processing (e.g., <NUM>, <FIG>) applied to an output of a corresponding measurement sensor (e.g., <NUM><NUM>, <FIG>), the output being generated in accordance with the shared measurement schedule.

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, specify the processing using a control message transmitted on the optical supervisory channel.

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause the apparatus to establish the shared measurement schedule using control messages (e.g., <NUM>-<NUM>, <FIG>; <NUM>-<NUM>, <FIG>) exchanged by the first and second optical-network nodes.

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause at least one of the control messages (e.g., <NUM>, <NUM>, <FIG>) to specify a reference time for the shared measurement schedule.

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause at least one of the control messages (e.g., <NUM>, <NUM>, <FIG>) to specify a measurement period for the shared measurement schedule.

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause at least one of the control messages (e.g., <NUM>, <NUM>, <FIG>) to specify one or more sensor-selection criteria for the first or second measurements.

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause: the first optical-network node to provide (e.g., at <NUM>, <FIG>) a first measurement schedule previously established for a selected sensor thereof; the second optical-network node to provide (e.g., at <NUM>, <FIG>) a second measurement schedule previously established for a selected sensor thereof; and the shared measurement schedule to be established using a non-empty intersection of the first and second measurement schedules.

In some embodiments of any of the above apparatus, the first and second optical-network nodes are optically connected via an optical fiber (e.g., <NUM>, <FIG>).

In some embodiments of any of the above apparatus, each of the first and second optical-network nodes comprises a respective Reconfigurable Optical Add/Drop Multiplexer (e.g., including <NUM>, <FIG>).

In some embodiments of any of the above apparatus, the at least one memory and the program code are configured to, with the at least one processor, cause: a first measurement sensor to be selected, for the first measurements, from a plurality of measurement sensors (e.g., <NUM><NUM>-<NUM>K, <FIG>) of the first optical-network node; and a second measurement sensor to be selected, for the second measurements, from a plurality of measurement sensors (e.g., <NUM><NUM>-<NUM>K, <FIG>) of the second optical-network node.

In some embodiments of any of the above apparatus, at least the first measurement sensor is a logical sensor configured to run on a processor (e.g., <NUM>, <FIG>) or transponder of the first optical-network node.

While this disclosure includes references to illustrative embodiments, this specification is not intended to be construed in a limiting sense. Various modifications of the described embodiments, as well as other embodiments within the scope of the disclosure, which are apparent to persons skilled in the art to which the disclosure pertains are deemed to lie within the scope of the disclosure, e.g., as expressed in the following claims.

Some embodiments can be embodied in the form of methods and apparatuses for practicing those methods. Some embodiments can also be embodied in the form of program code recorded in tangible media, such as magnetic recording media, optical recording media, solid-state memory, floppy diskettes, CD-ROMs, hard drives, or any other non-transitory machine-readable storage medium, wherein, when the program code is loaded into and executed by a machine, such as a computer, the machine becomes an apparatus for practicing the patented invention(s). Some embodiments can also be embodied in the form of program code, for example, stored in a non-transitory machine-readable storage medium including being loaded into and/or executed by a machine, wherein, when the program code is loaded into and executed by a machine, such as a computer or a processor, the machine becomes an apparatus for practicing the patented invention(s). When implemented on a general-purpose processor, the program code segments combine with the processor to provide a unique device that operates analogously to specific logic circuits.

It will be further understood that various changes in the details, materials, and arrangements of the parts which have been described and illustrated in order to explain the nature of this disclosure may be made by those skilled in the art without departing from the scope of the disclosure, e.g., as expressed in the following claims.

Although the elements in the following method claims, if any, are recited in a particular sequence with corresponding labeling, unless the claim recitations otherwise imply a particular sequence for implementing some or all of those elements, those elements are not necessarily intended to be limited to being implemented in that particular sequence.

Unless otherwise specified herein, the use of the ordinal adjectives "first," "second," "third," etc., to refer to an object of a plurality of like objects merely indicates that different instances of such like objects are being referred to, and is not intended to imply that the like objects so referred-to have to be in a corresponding order or sequence, either temporally, spatially, in ranking, or in any other manner.

Unless otherwise specified herein, in addition to its plain meaning, the conjunction "if" may also or alternatively be construed to mean "when" or "upon" or "in response to determining" or "in response to detecting," which construal may depend on the corresponding specific context. For example, the phrase "if it is determined" or "if [a stated condition] is detected" may be construed to mean "upon determining" or "in response to determining" or "upon detecting [the stated condition or event]" or "in response to detecting [the stated condition or event].

Also for purposes of this description, the terms "couple," "coupling," "coupled," "connect," "connecting," or "connected" refer to any manner known in the art or later developed in which energy is allowed to be transferred between two or more elements, and the interposition of one or more additional elements is contemplated, although not required. Conversely, the terms "directly coupled," "directly connected," etc., imply the absence of such additional elements. The same type of distinction applies to the use of terms "attached" and "directly attached," as applied to a description of a physical structure.

The described embodiments are to be considered in all respects as only illustrative and not restrictive. In particular, the scope of the disclosure is indicated by the appended claims rather than by the description and figures herein.

It will thus be appreciated that those of ordinary skill in the art will be able to devise various arrangements that, although not explicitly described or shown herein, embody the principles of the disclosure Furthermore, all examples recited herein are principally intended expressly to be only for pedagogical purposes to aid the reader in understanding the principles of the disclosure and the concepts contributed by the inventor(s) to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions. Moreover, all statements herein reciting principles, aspects, and embodiments of the disclosure, as well as specific examples thereof, are intended to encompass equivalents thereof.

The functions of the various elements shown in the figures, including any functional blocks labeled as "processors" and/or "controllers," may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software. Moreover, explicit use of the term "processor" or "controller" should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), and non volatile storage.

As used in this application, the term "circuitry" may refer to one or more or all of the following: (a) hardware-only circuit implementations (such as implementations in only analog and/or digital circuitry); (b) combinations of hardware circuits and software, such as (as applicable): (i) a combination of analog and/or digital hardware circuit(s) with software/firmware and (ii) any portions of hardware processor(s) with software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions); and (c) hardware circuit(s) and or processor(s), such as a microprocessor(s) or a portion of a microprocessor(s), that requires software (e.g., firmware) for operation, but the software may not be present when it is not needed for operation. " This definition of circuitry applies to all uses of this term in this application, including in any claims.

It should be appreciated by those of ordinary skill in the art that any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the disclosure.

Claim 1:
An apparatus, comprising:
a first optical-network node (<NUM>i);
a second optical-network node (<NUM>j); and
an optical fiber link (<NUM>) connected, at least, to support transmission of an optical data stream between the first and second optical-network nodes, the first optical-network node including a first sensor (<NUM><NUM>) to make first measurements of a portion of said optical data stream at the first optical-network node, the second optical-network node including a second sensor (<NUM>) to make second measurements of the portion of said optical data stream at the second optical-network node; and
wherein the apparatus is further characterized in that
the first and second optical-network nodes are configured to perform a negotiation of monitoring (<NUM>, <NUM>) to set one or more common measurement times for the first and second measurements.