METHOD AND SYSTEM FOR -RESIDENTIAL COMMUNICATION NETWORKS
FIELD OF THE INVENTION The present invention relates generally to data access methods, and more particularly, to methods for controlling data transmission in Ethernet packet traffic over residential networks topologies.
BACKGROUND OF THE INVENTION The evolution of fast broadband connections, and the popularity of smart home entertainment systems bring us to the next natural step: wiring the home. Home (or "residential") networking and networks have existed for several years. They have not gained a lot of momentum, mainly because most networking systems are proprietary. FIG. 1 shows a typical residential network, comprised exemplarily of end-stations (referred to hereafter also as "stations" or "devices") that may include one or more media centers 100 and 102, a media aware switch 104 and several media players 106-110. Some of these end stations may serve both as master and as slave, while some may be limited to a slave role only. Such networks may pass various types of data, e.g. audio and video, through a limited number of bridges. Several media servers can exist connected to several players. A major step toward mass-market success would be to utilize an existing transport protocol for the home networking task. A particularly suitable protocol is the Ethernet, which replaced all other transport protocols whenever it entered a new market. Real-time applications such as video, high-quality voice and automation require timely delivery. The Ethernet was designed as a "wire", to provide simple data transport, without any support for the timing control of transmission (i.e. there is no reordering, priority control, etc.) Therefore, by simply using the Ethernet in a home network environment, there is no way to guarantee timely delivery of data (delay and jitter guarantee) in case of background traffic, such as that of a PC downloading data. Even without background traffic, resource allocation is required to guarantee timely delivery. As part of draft IEEE802.3ah, a new protocol called Multi-Point Control Protocol (MPCP) was defined to manage transmission over a Passive Optical Network (PON), thus providing a so-called Ethernet PON ("EPON"), which is shown schematically in FIG. 2. The MPCP (refereed to herein also as "standard" MPCP) allows a central unit 200 called Optical Line
Terminal (OLT) to control the transmission of several remote units 202-206, called Optical Network Units (O?NUs). The standard ?MPCP defines unidirectional transmission control and its operation is defined for master-slave operation. A master or slave role definition is dictated by the location of a unit in the network, and it is pre-assigned. One station (OLT) is always the master while the others (0?NU) are always the slave. The master transmission and the slave reception are continuous. Thus, the standard ?MPCP is limited to a single span of components and is not designed to pass across bridges. Each EPON network stands by itself, while a home network is composed from several cascaded networks (or sub-networks). In such a cascaded structure, a slave of one network can be the master of another network, and the properties, such as bandwidth reservation and clock selection, are shared between all the cascaded networks. By necessity, data must pass through bridges between the sub-networks. Clearly, the existing standard Ethernet ?MPCP was not designed, is not suited, for this task. Therefore, in the view of the limitations introduced in the prior art, it would be advantageous to provide a method that adapts the Ethernet -MPCP to a home network.
SUMMARY OF THE INVENTION The present invention is of a method and system for applying the Ethernet -MPCP to a residential network environment. The invention discloses various modifications to MPCP that extend its usage to residential networks, or to any other networks that may benefit from synchronous Ethernet. By reusing the existing protocol, the time required to complete writing of standards is shorter, and the certainty level in the standard maturity is higher. The present invention introduces three main inventive features: station discovery, which extends the ?MPCP by allowing dynamic network role selection, clock master decision, and local transmission control. The following is described with reference to two end stations (or simply "stations" or "devices") connected by a link, these two stations being exemplarily any two stations in FIG. 1, i.e. a media center and a media player, two media players, or any other two (not shown) networked devices such as PCs, switches, wireless stations and a combination thereof. In contrast with EPON elements, each end station herein is operative to perform two discovery functions: (a) trying to register (grant discovery to) the other station and (b) detecting registration (discovery) efforts by the other station. The two stations are referred to as a "first" (or "self) station 150 and as a
"second" (or "other") station 152, as shown in FIG. lb. One of the important requirements from a residential network that is enabled by the present invention is to be capable to support timely data transmission that is uninterrupted when other sources of data, such as a PC, are active. In order to extend ?MPCP to home networks, we preferably use the original ?MPCP protocol, with some modifications. A grant for discovery can be transmitted as in EPON, but there needs to be an arbitration mechanism for the case in which the two linked stations attempt to transmit such a grant concurrently. One possible solution (a first arbitration mechanism and a first enhancement to standard -MPCP) is to select the master based on the station with a lower -MAC address value. This arbitration mechanism is referred to as "master selection in station discovery", or simply "station discovery". The chosen master then ignores the received grant for discovery, while the other station responds to it, thereby becoming the slave. An additional (second) arbitration mechanism that comprises an enhancement to ?MPCP includes a parameter ("clock quality") that describes the quality of the clock source. The selection of the clock source is handled by a network clock selection state-machine (370 in FIG. 3b, see below). The station with the higher clock quality is selected as the clock master. This arbitration mechanism is referred to as a "clock master selection", and is a different from station discovery. In case of equality in the clock quality, the selection mechanism reverts to the station discovery based on the ?MAC address, i.e. the station with the lower ?MAC address "wins" and becomes clock master. According to the present invention there is provided a method for applying the Ethernet
?MPCP to a residential network environment that includes a plurality of devices, each two devices connected by a link, the method comprising the steps of using a standard ?MPCP discovery process and adapting the ?MPCP discovery process to arbitrate concurrent discovery, when such concurrent discovery occurs in any two linked devices. According to the present invention there is provided a method for applying the Ethernet
?MPCP to a residential network environment that includes a plurality of devices, each two devices connected by a link, the method comprising the steps of enhancing the MPCP to enable each of the two linked devices to assume the role of a master, and controlling at least one transmission process in the residential network using the enhanced MPCP and the master. According to the present invention there is provided, in a residential network environment that includes a plurality of devices, a transport control system comprising an enhanced ?MPCP
operative to allow transport across bridges, thereby allowing sharing of -MPCP parameters between different network ports, and a plurality of mechanisms included in each device that operate cooperatively with the enhanced ?MPCP to facilitate the transport. According to the present invention there is provided a method for controlling transmission in a residential bridged network comprising the steps of modifying a standard MPCP to define bidirectional transmission control, thereby obtaining an enhanced MPCP, and applying the enhanced MPCP to control transmission across bridges in the bridged network.
BRIEF DESCRIPTION OF THE DRAWINGS The invention is herein described, by way of example only, with reference to the accompanying drawings, wherein: FIG la shows schematically an example of residential network; FIG. lb shows two end-stations connected by a link; FIG. 2 shows schematically an example of EPON network; FIG. 3a is a flow chart showing station discovery and clock master selection sequence; FIG. 3b is a schematic block diagram of a system that implements the modified MPCP of the present invention; FIG. 4a is a flow chart showing station discovery; FIG. 4b is a schematic block diagram of a network that assigns end-to-end channels; FIG. 5 is a flow chart showing selection of clock master role; FIG. 6 is a flow chart showing transmission control;
DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention provides, in various embodiments, a method and system for extending ?MPCP to support residential networks or any other networks that may benefit from synchronous Ethernet. The various embodiments are described in detail with reference to residential networks as exemplary networks that will benefit from the implementation of the invention. As mentioned, in contrast with a regular EPON, a residential network does not have a pre-defined master. A device may be master or slave based on its location in the system and the relative time of its joining the network. FIG 3 a is a flow chart that shows the main processes that extend MPCP to support
residential networks, i.e. station discovery and clock master selection. In one case, the first end- station can be simply be defined as slave by the MPCP, this being equivalent to an ONU operation. In this case, the execution begins at step 300 with the standard ?MPCP discovery process. In step 300, the same station responds to the ?MPCP discovery protocol. Upon completion of the discovery process (first station is "slave"), the operation moves to step 306, in which the -MPCP is run for remote transmission control, as for an O?NU. Alternatively, in another case, the first station can act as either master or slave from the ?MPCP point of view, equivalent to either OLT or ONU operation. This requires running concurrent state-machines for discovering and being discovered. In this case, the execution begins at step 302 with the standard MPCP discovery process, but the station initiates its own discovery attempt, thereby extending the standard EPON operation. When this station discovers concurrent master discovery attempt, the selection of the link master is determined in step 304. A decision needs now to be made (by both stations) whether to complete the discovery response or the discovery initiation. The two stations must reach an opposite decision. After selection of the master, the selected state-machine needs to complete the operation. There are two state-machines running: one for registering and the other for being registered. One of the two state-machine processes is terminated, and the other needs to be completed. After the selection of the link master, the discovery process is resumed in step 302. Steps 302 and 304 represent the "station discovery" process. Steps 302 and 304 are described in more detail with reference to FIG. 4. Upon completion of the master discovery in step 304, there are two possible next steps: the first is 306, in which the slave station transmits based on remote control arriving from the master, i.e. it behaves like an O?NTU. The second possible step is 308, in which the ?MPCP is enhanced to support local transmission (see below) in a second enhancement to the standard MPCP. From either steps 306 or 308, the reception of a new timing quality message moves the process to step 310, which is added to synchronize the clock around the network. After completion of the required actions in step 310, execution returns to the original step (306 or 308). In the case in which each of the two stations tries to register the other one, an arbitration mechanism is defined, as shown in the zoom-in of step 302 described in FIG. 4. Other methods may be used as well, for example, a method that aligns the device identity of the two stations on each side of the link, while concurrent discovery attempts are performed by both stations. FIG. 3b is a schematic block diagram of a system that implements the modified ?MPCP of
the present invention. The system includes a -MPCP O?NU discovery state-machine 350 operative to enable each station to be discovered and a -MPCP OLT discovery state-machine 352 operative to enable each station to discover the other one, both coupled bi-directionally to a discovery arbitration logic 354. Inventively, and in contrast with prior art, both state-machines 350 and 352 are implemented in each single device, typically in both hardware (HW) and software (SW). MPCP ONU discovery state-machine 350 is further coupled to a MPCP O?NU transmission gating state-machine 360 that controls the self end station, based on remote commands. ?MPCP OLT discovery state-machine 352 is further coupled to a master transmission control state-machine 362 that controls the remote end station and extends the -MPCP function of gating transmission to local control. Inventively, and in contrast with prior art, both state-machines 360 and 362 are implemented in each single device, typically in both HW and SW. Note that a local transmission state-machine is not defined in the standard ?MPCP. The enhanced MPCP of the present invention thereby uses the existing remote transmission state-machine, which is located in the chosen master, with required adaptations for local support. Thus, further inventively and in contrast with prior art, the present invention adds this local control capability through master transmission control state-machine 362. State machines 360 and 362 are further respectively bi-directionally coupled to a network clock-selection state-machine 370 that is operative to select the clock with higher quality. Clock-selection state-machine 370 is further bi-directionally coupled to a ?MPCP ONU timestamp loading state-machine 372 operative to use the clock the higher quality clock source as received from the master. State-machines 370 is further bi-directionally coupled to a MPCP OLT timestamp setting state-machine 374 operative to use the "clock master" for forwarding the better clock to the other end station. Inventively, and in contrast with prior art, state-machines 372 and 374 are implemented together in each single device, typically in HW. Further inventively, the selection capability added by state-machine 370 and its separation from that of discover arbitration logic 354 (i.e. clock master vs. discovery master) do not exist in standard -MPCP.
Station discovery FIG. 4 shows "station discovery" steps 302 and 304 in more detail. As mentioned, there are two stations connected to a link. Each one may be attempt to register the other station, so an arbitration mechanism is required. The main inventive feature here is the stopping of the discovery
process in one of the two stations when a concurrent discovery process is detected in the other station. In step 400, both MPCP discovery messages are transmitted periodically by both stations, and a receiving element in each station keeps listening to incoming discovery messages. In step 402, a -REGISTER message is sent by state-machine 352 to the second station. This step is executed after a ?REGISTER_?REQ message was received by state-machine 350 in the second station.. The second station responds as a slave to the discovery process. The REGISTER message and a gate that enables the transmission of REGISTER_ACK are transmitted by the second station as specified in IEEE802.3ah, with the receiving unit still listening to incoming discovery messages. If REGISTER_ACK was received by the first station, meaning the second station completed registration, then the operation of designating the first station as master is completed after moving to step 408. The device identity (LLID) as defined by EPON is taken from the REGISTER message transmitted in step 402. If a discovery message was received by the first station in either step 400 or 402, the operation jumps to step 404. In that step, the MAC address in the received discovery message is compared with the first station's own MAC address. If the MAC address of this device is lower than the ?MAC address of the other (second station) device, then the first station selects itself as the master, and the execution of the first station returns to the step 402, practically ignoring the received discovery message. Inventively and in contrast with prior art, the present invention thus provides a first arbitration mechanism (station discovery) that selects between 350 and 352. Otherwise, the first station moves to step 406, where it waits for a REGISTER message, acting as a slave. After reception of the REGISTER message and transmission of REGISTER_ACK, the device is registered with the device identity received in the REGISTER message, and operation is completed in step 408. If the registration process was not completed for some reason (including timeout), operation returns to step 400. Any local de-registration (based on management decision, remote de-registration, timer expiration, or any other reason) restarts operation from step 400. Inventively, the step of clock selection (step 304 in FIG. 3) run by network clock selection state-machine 370 is an extension to -MAC control, and not part of the existing MPCP (as applied to EPON). In a preferred embodiment, the clock selection may be based on hop-by-hop clock selection, although a centralized method for selection could be defined as well. Since a residential network is small by definition, hop-by-hop selection will converge quickly in a small
network and will be stable. As shown in FIG. 4b, the discovery process can be extended to establish an end-to-end channel. A bridge 458 allows connectivity between two ports PI and P2. For example, if an end- station A is connected to bridge port PI through a first bi-directional physical link 460 and bridge port P2 is connected to an end station B through a second bi-directional physical link 462, then a guaranteed logical channel 464 could be opened between stations A and B by adding a registration instance for the dedicated channel ("dedicated" in the sense that it contains traffic only from station A to station B). The innovation of opening two channels (both marked as 464) in two different links and adjusting the transmission parameters of the two channels enables, using a network-wide transmission allocation. In other words, the present invention provides in one embodiment a method that can use a standard ?MPCP discovery process, can adapt the MPCP discovery process to arbitrate concurrent discovery when such concurrent discovery occurs in any two devices of the residential network, and can establish an end-to-end channel between any two devices of the network. The end-to-end channel establishing includes connecting the two devices through a bridged network. Two channels are opened in two different links, and the transmission parameters of the two channels are adjusted using a network-wide transmission allocation.
Clock propagation in the network FIG. 5 is a flow chart that shows the selection of the clock master role by clock-selection state-machine 370 (i.e. a detailed step-by-step description of 310 in FIG. 3). The clock master selection is a constantly running process. We provide a new command, exemplarily called MPCP_CLOCK_QUALITY, which includes all entities shown in detail in Table 1. The command includes the local (first station) clock quality and echoes the remote (second station) clock quality. The command is transmitted by the second station in step 500. The transmission of the next message is then pending until a timer expiration in step 502, before returning to step 500. The timer can be defined with intervals of seconds. In both steps 500 and 502 the receiving unit listens to incoming ?MPCP_CLOCK_QUALITY messages. In step 504, the quality of the clock belonging to the checked station is compared with the quality of the clock of the other station. This step is executed when a ?MPCP_CLOCK_QUALITY message is received. The source with the better quality is selected as clock master. In case both sources have the same clock quality, the
source with the lower -MAC address is selected as the master. In case the master selection was altered after reception of the message, operation resumes immediately from step 500. Otherwise, operation returns to its origin.
The cycle phase is synchronized the following way: the master uses its local clock (PON_clock) for synchronization as in block 374. If the time needs to be carried throughout the network for complete cycle synchronization, then the master needs to be capable to load the current PON_clock, as in block 372. The benefit from carrying the time over the network is huge, as it will synchronize the entire network to guarantee end-to-end delay. In standard ?MPCP, the slave loads the timestamp inserted by the master. Here the master is allocated two roles: registration master (original ?MPCP definition) and clock master. The clock master loads the clock register if it were the registration master. Notice that the local clock can be transferred locally in a switch between different switch ports. If a port exchanged its clock for a better one, all the other ports are exchanging their clocks as well, and moving to step 500. This guarantees that the selected local clock is the best one among all ports. In case the master was altered, forcing immediate message transmission guarantees fast convergence.
Transmission control The transmission (network clock propagation) control process runs in parallel with the clock master selection. As mentioned above, there are two kinds of EPON devices, as defined by IEEE802.3ah: the first one is the central office, which transmits constantly without any gating
control. The second is the station, which transmits based on control from the central office. In EPON, OLT is always local and ONU is always remote, where "remote" and "local" control are defined in the -MPCP standard. In standard EPON -MPCP, the local control has no gating. The property of transmission gating is added to the local control in the present invention. This enables to gate locally the transmission of the master to allow local management. The transmission gating is implemented by using the same control variables as in OLT transmission control 362 (which are described for example in FIG. 64-29 of IEEE802.3, which is incorporated herein by reference. The state-machine of the ONU's transmission control is modified to enable local control, in contrast to the existing standard ?MPCP remote control. FIG. 6 is a flow chart showing the transmission control. A key inventive feature of the present invention is the definition of a local gate control timed to the network timebase. During discovery, an attribute called "remote/local control" is assigned specifying if the station (device) is subject to local or remote control. If the device is using remote control, then grant messages are received in step 600. Future transmission scheduling is updated in a table in step 602. Operation reverts to step 600 following the update. If the device is configured to local control, then the management entity issues a local update command in step 604, which initiates the table update in step 602. Following the table update, local update commands continue to be monitored in step 604. Step 606 constantly monitors the grant table for transmission timing. If local control is configured, then an internal scheduler updates the grant table directly in step 602. The key step is 604, in which a local update is allowed without any external input. The default attribute value before registration of a device is local control. This allows operation when the other station is not MPCP-aware. This definition is a key one for fast mass- market creation. Local transmission control can start before the discovery stage. Even before the second station is discovered as supporting ResE messages, the first station transmits using local control, without waiting for the ResE channel to be established. In addition, one station may send Pause messages to the other station in order to control its transmission. The transmission timing may not be as accurate, and the clock information does not propagate; yet it has the potential to provide reasonable performance for network wide bandwidth reservation. For example, if the entire network is ResE aware, but one device connected to it (e.g. a PC) is not, then this method embodiment still guarantees reasonable performance in the network. The aware station (usually a bridge) controls the transmission of the unaware device by turning it
on and off using Pause messages. All publications and patent applications mentioned in this specification are herein incorporated in their entirety by reference into the specification, to the same extent as if each individual publication or patent application was specifically and individually indicated to be incorporated herein by reference. In addition, citation or identification of any reference in this application shall not be construed as an admission that such reference is available as prior art to the present invention. While the invention has been described with respect to a limited number of embodiments, it will be appreciated that many variations, modifications and other applications of the invention may be made.