Claims
- 1. A method for transferring data between a central controller and a first node of a plurality of remote network nodes over a digital data network having a passive optical network topology, the network connecting the central controller and the plurality of remote network nodes, the method comprising the steps of:
discovering the first node by the central controller; synchronizing the internal clock of the first node to the internal clock of the central controller; and transmitting uplink data from the first node to the central controller in response to transmission authorizations sent by the central controller to the first node.
- 2. A method for transferring data according to claim 1, further comprising the steps of:
measuring round trip delay from the central controller to the first node; and transmitting downlink data from the central controller to the first node.
- 3. A method for transferring data according to claim 2, further comprising the step of encrypting the downlink data.
- 4. A method for transferring data according to claim 3, further comprising the step of the first node sending an encryption key to the central controller, wherein the step of encrypting the downlink data comprises the step of encrypting the downlink data with the encryption key.
- 5. A method for transferring data according to claim 3, further comprising the step of the first node periodically sending a different encryption key to the central controller, wherein the step of encrypting the downlink data comprises the step of encrypting the downlink data with the encryption key last received by the central controller from the first node.
- 6. A method for transferring data according to claim 3, further comprising the step of detecting, by the central controller, connection failure between the central controller and the first node.
- 7. A method for transferring data according to claim 6, further comprising the step of detecting, by the first node, connection failure between the central controller and the first node.
- 8. A method for transferring data according to claim 3, wherein the downlink data and the uplink data are transmitted using IEEE 802.3 Ethernet standard packets.
- 9. A method for transferring data according to claim 8, wherein the network is a passive optical network.
- 10. A method of transferring data according to claim 2, wherein the steps of discovering and synchronizing comprise the steps of:
sending a GATE message from the central controller to undiscovered nodes, said GATE message sent to the undiscovered nodes comprising a time stamp of the central controller, a first grant start time value, a first grant length value, and a first GATE message MAC control opcode; receiving at the first node the GATE message addressed to the undiscovered nodes; setting the internal clock of the first node to the time stamp of the GATE message addressed to the undiscovered nodes; after the setting step, sending a REGISTER_REQUEST message from the first node to the central controller between the time when the internal clock of the first node equals the first grant start time value and the time when the internal clock of the first node equals to the sum of the first grant start time value and the first grant length value, the REGISTER_REQUEST message comprising a time stamp of the first node, address of the first node, and a REGISTER_REQUEST message MAC control opcode; in response to receiving the REGISTER_REQUEST message at the central controller, sending a REGISTER message to the address of the first node, the REGISTER message comprising a REGISTER message MAC control opcode.
- 11. A method of transferring data according to claim 10, wherein the step of transmitting uplink data comprises the steps of:
sending the transmission authorizations to the address of the first node, the transmission authorizations comprising a plurality of GATE messages sent to the address of the first node, each GATE message of the plurality of GATE messages sent to the address of the first node comprising a second GATE message MAC control opcode and at least one pair of one grant start time value and one grant length value, each said pair defining one allowable uplink transmission interval; sending the uplink data from the first node to the central controller in response to receiving a GATE message at the first node, each packet of the uplink data being transmitted during an allowable uplink transmission interval.
- 12. A method of transferring data according to claim 11, wherein at least one GATE message of the plurality of GATE messages sent to the address of the first node comprises at least two pairs of one grant start time value and one grant length value.
- 13. A method of transferring data according to claim 11, wherein the step of measuring round trip delay comprises the step of subtracting a first time stamp of the first node in a first message received by the central controller from the value of the real time clock of the central controller at the time the first message is received.
- 14. A method of transferring data according to claim 13, further comprising the steps of:
sending an encryption key from the first node to the central controller; and encrypting the downlink data transmitted by the central controller to the address of the first node using the encryption key.
- 15. A method of transferring data according to claim 14, wherein the downlink data is transmitted in packets, each packet comprising a header and a payload, wherein encrypting the downlink data comprises the step for block encrypting the payload of said each packet.
- 16. A method of transferring data according to claim 13, further comprising the steps of:
the central controller sending a request for an encryption key to the first node; sending an encryption key from the first node to the central controller in response to the request for an encryption key; and encrypting the downlink data transmitted by the central controller to the address of the first node using the encryption key.
- 17. A method of transferring data according to claim 14, wherein the step of sending an encryption key comprises the step of sending a NEW_KEY message from the first node to the central controller, the NEW_KEY message comprising the address of the first node, a NEW_KEY message MAC control opcode, the encryption key, and an identifier of the encryption key.
- 18. A method of transferring data according to claim 17, wherein the downlink data is sent in packets, each packet comprising a header that comprises the identifier of the encryption key used to encrypt the packet.
- 19. A method of transferring data according to claim 13, further comprising the steps of:
periodically sending a different encryption key from the first node to the central controller; encrypting the downlink data transmitted by the central controller to the address of the first node using the last received encryption key.
- 20. A method of transferring data according to claim 19, wherein:
the step of periodically sending a different encryption key comprises the step of periodically sending a different NEW_KEY message from the first node to the central controller, each NEW_KEY message comprising the address of the first node, a NEW_KEY message MAC control opcode, an encryption key, and the sequence number of the encryption key comprised in said each NEW_KEY message, the step of periodically sending a different NEW_KEY message comprising the step of sending a first NEW_KEY message comprising a first encryption key and a first sequence number corresponding to the first encryption key; the downlink data is sent in packets, each packet comprising a header that comprises the sequence number of the encryption key used to encrypt the packet; the method further comprising the steps of:
monitoring the sequence numbers in the headers of the downlink packets sent to the address of the first node; and re-sending the first NEW_KEY message to the central controller if none of the monitored sequence numbers matches the first sequence number within a first predetermined time period.
- 21. A method of transferring data according to claim 13, wherein the downlink data and the uplink data are transmitted using IEEE 802.3 Ethernet standard packets.
- 22. A method for transferring data according to claim 21, wherein the network is a passive optical network.
- 23. A method for transferring data according to claim 22, wherein
the step of transmitting uplink data further comprises the step of the first node transmitting REPORT messages to the central controller, each REPORT message comprising the address of the first node, at least one request for uplink transmission of a first number of bytes from a queue of the first node, and a REPORT message MAC control opcode; and the central controller sends the GATE messages of the plurality of GATE messages sent to the address of the first node in response to receiving the REPORT messages.
- 24. A method for transferring data according to claim 23, wherein said each REPORT message further comprises a priority indication of the queue.
- 25. A method for transferring data according to claim 23, further comprising the step of detecting connection failure between the central controller and the first node.
- 26. A method for transferring data according to claim 25, wherein the step of detecting connection failure comprises the steps of:
resetting a first timer at the central controller each time a REPORT message is received from the first node; and discontinuing sending of the GATE messages to the address of the first node if the first timer reaches a first timeout value.
- 27. A method for transferring data according to claim 26, wherein the step of detecting connection failure further comprises the steps of:
resetting a second timer at the first node each time a GATE message sent to the address of the first node is received at the first node; if the second timer reaches a second timer timeout value, repeating the steps of discovering and synchronizing.
- 28. A method for transferring data between an optical line terminal (OLT) and a first optical network unit (ONU) of a plurality of ONUs over a passive optical network, the method comprising the steps of:
the first ONU receiving a GATE message addressed to undiscovered nodes, the GATE message comprising a time stamp of the OLT, a first grant start time value, a first grant length value, and a GATE message MAC control opcode; setting the internal real time clock of the first ONU to the time stamp of the OLT; after the setting step, sending a REGISTER_REQUEST message from the first ONU to the OLT during the time interval defined by the first grant start time value and the sum of the first grant start value and the first grant length value, the REGISTER_REQUEST message comprising a time stamp of the first ONU, the address of the first ONU, and a REGISTER_REQUEST message MAC control opcode; receiving a REGISTER message addressed to the address of the first ONU, the REGISTER message comprising a REGISTER message MAC control opcode; receiving GATE messages addressed to the address of the first ONU, each received GATE message comprising the GATE message MAC control opcode and one or more definitions of allowed uplink transmission intervals; and sending uplink data packets from the first ONU to the OLT only during the allowed transmission intervals.
- 29. A method for transferring data according to claim 28, wherein the REGISTER_REQUEST message is sent beginning at a random time Tr uniformly distributed within the time period beginning with the first grant start time value and ending with Te=(the first grant start time value)+(the first grant length value)−(T1), where T1 is equal to the length of the REGISTER_REQUEST message.
- 30. A method for transferring data according to claim 28, further comprising the steps of:
sending a first encryption key and a first sequence number of the first encryption key from the first ONU to the OLT, to enable the OLT to encrypt downlink data packets addressed to the address of the first ONU with the encryption key.
- 31. A method for transferring data according to claim 30, further comprising the steps of:
receiving, at the first ONU, the downlink data packets addressed to the address of the first ONU, each downlink data packet comprising a header comprising the sequence number of the key used in encrypting said each downlink data packet; monitoring, at the first ONU, the sequence numbers in the headers of the received downlink data packets; if none of the sequence numbers in the headers of the downlink data packets received within a first predetermined period matches the first sequence number, re-sending the first encryption key and the first sequence number from the first ONU to the OLT.
- 32. A method for transferring data according to claim 31, wherein the downlink data packets and the uplink data packets conform to the IEEE 802.3 Ethernet standard.
- 33. A method for transferring data according to claim 32, further comprising the step of periodically sending REPORT messages from the first ONU to the OLT, each said REPORT message requesting allocation of one or more time intervals for transmission of the uplink data packets from the first ONU to the OLT.
- 34. A method for transferring data according to claim 32, further comprising the steps of:
the first ONU detecting failure of connection between the first ONU and the OLT; and after detecting failure of connection between the first ONU and the OLT, the first ONU repeating, in order, the steps of receiving a GATE message addressed to undiscovered nodes, setting the internal real time clock of the first ONU, sending a REGISTER_REQUEST message from the first ONU to the OLT, and receiving a REGISTER message addressed to the address of the first ONU.
- 35. A method for transferring data between an optical line terminal (OLT) and a first optical network unit (ONU) of a plurality of ONUs over a passive optical network, the method comprising the steps of:
sending a first GATE message from the OLT to undiscovered ONUs, the first GATE message comprising a time stamp of the OLT, a first grant start time value, a first grant length value, and a first GATE message MAC control opcode; receiving at the OLT a REGISTER_REQUEST message from the first ONU, the REGISTER_REQUEST message comprising a time stamp of the first ONU, an address of the first ONU, and a REGISTER_REQUEST message MAC control opcode; in response to receiving the REGISTER_REQUEST message, sending from the OLT a REGISTER message to the address of the first ONU, the REGISTER message comprising a REGISTER message MAC control opcode; periodically sending GATE messages to the address of the first ONU, each said GATE message sent to the address of the first ONU comprising the GATE message MAC control opcode and at least one pair of one grant start time value and one grant length value, each said pair defining a time interval during which the first ONU is allowed to send messages to the OLT; and receiving uplink data packets from the first ONU in the time intervals during which the first ONU is allowed to send messages to the OLT.
- 36. A method for transferring data according to claim 35, further comprising the steps of:
receiving, at the OLT, an encryption key sent by the first ONU; and sending, from the OLT to the first ONU, downlink data packets encrypted with the key.
- 37. A method for transferring data according to claim 36, further comprising the step of measuring round trip delay between the OLT and the first ONU by subtracting a first time stamp of the first ONU comprised in a first message received by the OLT from the first ONU from the value of the internal clock of the OLT at the time the first message is received by the OLT.
- 38. A method for transferring data according to claim 36, wherein the downlink and uplink data packets are transmitted using IEEE 802.3 Ethernet standard.
- 39. A method for transferring data according to claim 38, further comprising the step of:
receiving REPORT messages from the first ONU, each REPORT message received from the first ONU comprising at least one request for uplink transmission of a first number of bytes; wherein the OLT sends the GATE messages to the address of the first ONU in response to the received REPORT messages.
- 40. A method for transferring data according to claim 39, further comprising the steps of:
resetting a first timer at the OLT each time a REPORT message is received from the first ONU; and discontinuing sending of the GATE messages to the address of the first ONU if the first timer reaches a first timeout value.
RELATED APPLICATION
[0001] This application claims priority benefit of provisional U.S. patent application Ser. No. 60/272,967, filed Mar. 2, 2001, entitled Ethernet PON; and priority benefit of provisional U.S. patent application Ser. No. 60/297,171, entitled Ethernet PON, which applications are hereby incorporated by reference for all purposes.
Provisional Applications (2)
|
Number |
Date |
Country |
|
60272967 |
Mar 2001 |
US |
|
60297171 |
Jun 2001 |
US |