Movatterモバイル変換


[0]ホーム

URL:


HK1166530B - A method for quick map recovery in case of error in moca - Google Patents

A method for quick map recovery in case of error in moca
Download PDF

Info

Publication number
HK1166530B
HK1166530BHK12107120.4AHK12107120AHK1166530BHK 1166530 BHK1166530 BHK 1166530BHK 12107120 AHK12107120 AHK 12107120AHK 1166530 BHK1166530 BHK 1166530B
Authority
HK
Hong Kong
Prior art keywords
mpdu
sub
data
map
received
Prior art date
Application number
HK12107120.4A
Other languages
Chinese (zh)
Other versions
HK1166530A1 (en
Inventor
刘昌文
A.穆勒
R.李
Original Assignee
熵敏通讯股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US12/415,875external-prioritypatent/US9008077B2/en
Application filed by 熵敏通讯股份有限公司filedCritical熵敏通讯股份有限公司
Publication of HK1166530A1publicationCriticalpatent/HK1166530A1/en
Publication of HK1166530BpublicationCriticalpatent/HK1166530B/en

Links

Description

Method for fast MAP recovery when errors occur in MoCA
Cross Reference to Related Applications
This application claims priority from united states provisional patent application No. 61/160,986, filed on 3/17/2009, and united states patent application No. 12/415,875, filed on 3/31/2009. Both of these patent applications are incorporated by reference in their entirety.
Technical Field
Systems and methods are disclosed relating to data transmission over a network. More particularly, the disclosed systems and methods relate to recovery in the event that a data packet is never received or properly processed in the network.
Background
In existing multimedia over coax alliance (MoCA) networks, data packets are transmitted over a coaxial communication channel. Communication through the network is managed by a network coordinator Node (NC), which transmits beacons and Media Access Plan (MAP) packets. Beacons are transmitted at fixed intervals (e.g., every 10ms) and identify the channel clock (CTC), MoCA network version, time of the next Admission Control Frame (ACF), and when an NC switch occurs (e.g., when the NC switches from one node to another).
The NC sends MAP packets more frequently than beacons, the MAP packets providing scheduling information that indicates when each network node is sending data through the network. In order to send and receive data through the network, each node connected to the network relies on a MAP. Many factors may affect the correct receipt of a MAP by a network node. For example, GSM interference caused by mobile phones in the vicinity of a network node may corrupt the MAP by creating co-channel interference and/or adjacent channel interference for that network node. Due to the length of GSM interference, e.g., about 0.577ms, a network node may lose or fail to properly process one or more MAPs.
In existing MoCA networks, losing one MAP packet may prevent a network node from receiving a subsequently transmitted MAP because each MAP specifies a MAP packet transmission interval, e.g., the interval when the next MAP is transmitted. Fig. 1 is a timing diagram illustrating a network node failing to receive a MAP and then returning to normal in a conventional MoCA network. As shown in FIG. 1, node 1 fails to receive a MAP2 from the NC. The NC continues to broadcast MAPs on the network, but node 1 fails to receive or properly process MAPs 3 through MAP6 because node 1 fails to receive or properly process MAP 2. In existing MoCA networks, node 1 must wait until it receives and processes the next beacon, beacon 2, to determine the transmission interval of the MAP, in order to again receive and correctly process a MAP packet, e.g., MAP 7. Because the MAPs are sent more frequently than the beacons, a node that fails to receive or correctly processes one MAP packet may not receive the next several MAP packets because it must wait for the next beacon. Thus, once a node fails to receive a MAP, the node is essentially disconnected from the network for a period of time (from MAP2 to MAP7 for the example of fig. 1) because it will not receive subsequent MAP packets and determine when data is being sent through the network until the node receives the next beacon. In addition, the node will also be unable to request any time slots from the NC for sending buffered packets until the next beacon is received. Therefore, there is a need for an improved method to recover from the loss of a MAP.
Disclosure of Invention
In some embodiments, a method includes receiving information of a predetermined length, the information including a first MAC Protocol Data Unit (MPDU) of variable length, the MPDU including at least one sub-MPDU; independently decoding the first sub-MPDU and a plurality of additional portions of the received information, wherein each portion has a predetermined length. In one embodiment, each additional portion has the same length as the first sub-MPDU. The method also includes processing data from the first sub-MPDU; and determining from the processed data how many other decoded portions make up a sub-MPDU of the received MPDU, and in one embodiment, determining from the processed data the length of additional sub-MPDUs.
In some implementations, a network node includes a computer-readable storage medium and a processor in data communication with the computer-readable storage medium. The processor is configured to receive information of a predetermined length, the information including a first MAC Protocol Data Unit (MPDU) of variable length and including at least one sub-MPDU, independently decode the first sub-MPDU and a plurality of additional portions of the received information, each portion being of the same length as one sub-MPDU, process data from the first sub-MPDU, and determine from the processed data how many other decoded portions constitute sub-MPDUs of the received MPDU.
In some embodiments, a method includes determining a time of arrival of a next correlation packet by determining an interval between a last received correlation packet and a next correlation packet transmission using information received within a previously received correlation packet, the information being used to find and decode correlation information packets transmitted after the previously received correlation packet after a failure. After determining when the next relevant packet arrives, the next relevant packet is decoded in portions, where each portion is independently encoded. And using information from the first part of the next relevant packet to determine how many of the parts so decoded are actually parts of the next relevant packet. Because each portion is independently encoded, each portion can be independently decoded.
The methods may be presented in the form of a computer readable storage medium carrying program code that is loadable into a processor such that, when the code is executed by the processor, the methods are performed.
Drawings
Fig. 1 is a timing diagram of failure recovery in a conventional MoCA network.
Fig. 2 illustrates one embodiment of a MAP MAC Protocol Data Unit (MPDU).
Fig. 3 is a flow chart illustrating one embodiment of a method of processing MAP packets.
FIG. 4 is a flow diagram illustrating one embodiment of a method for recovering from a failure.
Fig. 5 is a timing diagram of one embodiment of a node in a network recovering after a packet loss.
Fig. 6 illustrates fixed packet transmission intervals in an asynchronous data network.
Fig. 7 illustrates one embodiment of a network node configured to process data packets and to recover from failing to receive a packet according to the methods illustrated in fig. 3 and 4.
Detailed Description
Systems and methods for recovering from a failure to receive or process properly a MAP are described below. One embodiment of the disclosed system and method is implemented in a network in which MAPs are transmitted at predetermined fixed intervals. The network may include a Network Coordinator (NC) that manages data transfer between network nodes. Fig. 7 shows a simplified block diagram of an example of a network node. As shown in fig. 7, the network node 700 may include a processor 702 in communication with a computer-readable storage medium 704 and a physical interface that enables the network node 700 to send and receive data over a network. The processor 702 may be any computing device including, but not limited to, a Central Processing Unit (CPU), a microcontroller, or the like. Computer-readable storage medium 704 may be any type of storage device including, but not limited to, Random Access Memory (RAM), Read Only Memory (ROM), flash memory, a hard disk, or similar device configured to store data and instructions executable by processor 702.
As shown in fig. 2, in one embodiment of the disclosed method and apparatus, a MAP MAC Protocol Data Unit (MPDU)201 comprises a plurality of sub-MPDUs 200 that follow one another. The header 202 of the first sub-MPDU 200 indicates the exact number of sub-MPDUs in the series of sub-MPDUs, each having the same length and being independently encoded. Alternatively, the length of each sub-MPDU may vary in a predetermined manner. Because each sub-MPDU is independently encoded, each sub-MPDU can be independently decoded. Alternatively, each sub-MPDU may be encoded together in a single encoding operation. However, in this case, each sub-MPDU cannot be decoded independently, and thus the advantage of using the header to carry the number of sub-MPDUs 200 within MPDU 201 is lost. Each sub-MPDU may have a length of 400 bytes, including a header 202 (for the first sub-MPDU only) and a payload 204. Accordingly, MPDU 201 may have a length of 1600 bytes, while each sub-MPDU may have a length of 400 bytes. Those skilled in the art will appreciate that MPDU 201 and sub-MPDUs 200 may be of other lengths.
In one embodiment, in an asynchronous network as shown in fig. 6, the NC transmits MAP MPDUs 201 at constant intervals. Transmitting the MAPs at constant intervals enables the network node 700 to recover from losing one MAP more quickly than an existing MoCA network, as will be explained in more detail below. The constant interval may be changed by sending a notification to each network node that needs to change the interval. The notification may be included in the header 202 or payload 204 of the MAP, which may include a value for the next packet transmission interval, and a countdown value indicating how many MAPs later the packet transmission interval will change. In each successively transmitted MAP MPDU, the countdown value may be decremented until the value is zero, after which the MPDU transmission interval will be changed. For example, by transmitting a next packet transmission value of 0.75 and a countdown value of "1" within the MAP, the MPDU transmission interval may be changed from 1ms to 0.75ms after the next MAP MPDU is received.
Regardless of the format in which the MAP is implemented in the network, if no MAP between is received or cannot be processed correctly, e.g., a failure occurs, the network node 700 receiving the MPDU 201 can utilize information from the MPDU 201 to accurately calculate the arrival time of the next or subsequent MAP. In one embodiment, the information comprises the current value of the constant interval or the value of a new constant interval transmitted as in fig. 6. For example, if the NC transmits a MAP with multiple sub-MPDUs 200 as in the embodiment shown in fig. 2, the network node will decode each sub-MPDU 200 and check the header of the first sub-MPDU to determine if there are consecutive sub-MPDUs 200. If the first sub-MPDU header 202 indicates that there are no consecutive sub-MPDUs 200, then the node 700 has processed all transmitted sub-MPDUs, only the first sub-MPDU. However, if the first sub-MPDU header 202 indicates that there are additional consecutive sub-MPDUs 200, then the node 700 will also process these sub-MPDUs. In this way, the node can correctly identify and receive each MAP.
Alternatively, if the NC transmits a MAP within a single sub-MPDU 200, the node 700 may assume that the next MAP MPDU 201 has the largest possible size (e.g., 1600 bytes) and calculate the end time of transmission of that MAP MPDU 201 based on that assumption. The network node 700 receives all bits within the calculated MAP transmission interval and decodes the received bits of each sub-MPDU 200 one by one. When the network node 700 processes the bits of the header 202 of the sub-MPDU, it identifies the actual length of the MAP MPDU 201 and then recovers the bytes of the MAP MPDU 201 from the received bits. When payload data is not included, the network node 700 may ignore and not process any bits identified by the header 202 of the MAP sub-MPDU.
Fig. 3 is a flow diagram illustrating one embodiment of a method 300 of processing the MAP sub-MPDU 200 at a network node 700. As shown in fig. 3, in block 302, a MAP is received at a network node 700. In block 304, the network node 700 decodes each sub-MPDU 200 of the MAP. In block 306, the network node 700 processes the header 202 and payload 204 of the first sub-MPDU 200. In block 308, the network node 700 will process the next sub-MPDU 200 or sub-MPDUs if the processed data of the first sub-MPDU 200 indicates that the subsequent sub-MPDUs 200 include data that needs to be processed. However, if the processed data of the first sub-MPDU 200 indicates that the subsequent sub-MPDUs 200 do not include data that needs to be processed, then the network node 700 may skip block 308 and not process data from the subsequent sub-MPDUs 200.
In block 310, a packet transmission interval value, a countdown value, and a next packet transmission interval value are read from the processed data. The packet transmission interval value, countdown value, next packet transmission interval value, and packet arrival time may be stored within the computer readable medium 704 of the network node 700 so that these information can be utilized when a failure event occurs, as described in detail below. The network node 700 may calculate the arrival time of the next MAP based on the interval value, the countdown value, and the arrival time of the previous MAP MPDU 201. In this manner, the network node 700 processes each MAP sub-MPDU and stores the interval, countdown value, and arrival time of the last packet, so that the network node 700 can recover from the failure to receive or correctly process the subsequent MAP sub-MPDUs 200.
Fig. 4 is a flow diagram illustrating one embodiment of a method 400 for recovering from a failure to receive or properly process a related packet, such as a MAP sub-MPDU 200. In block 402, the network node 700 receives a relevant packet. The associated packet is decoded and processed as described above in connection with fig. 3. Information from the associated packet, such as the arrival time of the packet, the current packet transmission interval, the countdown identifier, and the next packet transmission interval value, is stored in the computer-readable storage medium 704.
In block 404, the network node 700 determines that it failed to receive or correctly process the relevant packet. Once the network node 700 determines that it has not received a correlation packet, the node 700 begins failure recovery in block 406 by reading the information received in the previously received correlation packet from the computer-readable storage medium 704. As described above, this information may include the arrival time of the previously received associated packet, the current packet transmission interval, the countdown identifier, and the next packet transmission interval value. In this way, the network node 700 may utilize information read from the computer-readable storage medium 704 to determine when the next relevant packet arrives.
For example, if the interval between successive related packets is constant, the network node 700 will determine the arrival time of the next related packet using the arrival time of the previously received packet and the current packet transmission interval value. As will be appreciated by those skilled in the art, if the calculated arrival time of the next relevant packet has passed, then the network node 700 may determine the arrival time of the next relevant packet with a packet transmission interval that is two, three, or more times.
The network node 700 may also determine whether the interval between packets will change after the next packet by checking the countdown value. For example, if a previously received related packet has a countdown value of "1", then a subsequent related packet, e.g., a packet not yet received by network node 700, has a countdown value of "0". Accordingly, the network node 700 determines that the next relevant packet will be sent at a different packet transmission interval, and the network node 700 will determine the arrival time of the next relevant packet using the new and previous packet transmission interval values and the arrival time of the last received packet. For example, if a previously received packet arrives at time t with a previous packet transmission interval of 1ms and a new packet transmission interval of 0.7ms, then network node 700 will calculate that the next relevant packet will arrive at t +1.7 ms.
In block 408, network node 700 receives the next relevant packet. Upon receiving the next relevant packet, network node 700 decodes each portion of the packet in block 410, as described above. In block 412, the network node 700 determines the number of portions included in the related packet. If the first portion indicates that each portion of the packet includes data, then network node 700 will process each portion of the packet. However, if the first portion of the packet indicates that one or more portions of the packet do not include data, then network node 700 may ignore those portions of the packet. In block 414, the network node 700 may store the information contained within the relevant packets in the computer-readable storage medium 704. As described above, the information may include the current packet transmission interval value, the countdown value, the next packet transmission interval value, and the arrival time of the previously received related packet. Those skilled in the art will appreciate that other information may also be stored in the computer-readable storage medium 704.
The system and method described above enable a network node in a network with a higher data transmission rate than existing systems to recover from conditions where important data packets are lost. Faster recovery from lost packets reduces the amount of data lost by the network node in the event of a failure, thereby improving the efficiency of the network.
Although the disclosed method and apparatus have been described in terms of specific embodiments, the claimed invention is not limited thereto. The appended claims should be construed to cover a broader scope to include other variations and embodiments of the disclosed method and apparatus, which may be practiced by those skilled in the art, without departing from the scope and range of equivalents of the claimed invention. The delimiters used in the claims, such as 'a)' and 'i)' should not be construed as setting the order to the claims, but merely as a visual symbol for the decomposition of the claims and as an identification symbol to refer to a specific part of the claims later.

Claims (8)

1. A method for rapidly recovering MAP when an error occurs in MoCA comprises the following steps:
a) receiving information of a predetermined length, the information including a first Media Access Plan (MAP) protocol data unit (MPDU), the first MAP MPDU being variable in length and including at least one sub-MPDU;
b) independently decoding a first sub-MPDU and a plurality of additional portions of the received information, each portion having a predetermined length;
c) processing data from the first sub-MPDU, wherein the data of the first sub-MPDU indicates an interval between the first MPDU and a next MPDU;
d) determining how many other sub-MPDUs the first MAP MPDU contains based on the processed data of the first sub-MPDU;
e) reading an interval value from the processed data of the first sub-MPDU; and
f) predicting an arrival time of a next MAP MPDU based on the interval value and the time of arrival of the first MAP MPDU.
2. The method of claim 1, further comprising: the data of the second sub-MPDU is processed only if the data of the first sub-MPDU indicates that the second sub-MPDU includes data that needs to be processed.
3. The method of claim 1, wherein the data of the first sub-MPDU indicates after how many MPDUs the interval between MPDUs will change.
4. The method of claim 1, further comprising: determining, using information received within an MPDU received prior to a failure, an interval between transmission of a last received MPDU prior to the failure and a next MPDU of the last received MPDU prior to the failure, thereby determining a time of arrival of the next MPDU of the last received MPDU prior to the failure.
5. A network node, comprising:
a) a computer-readable storage medium; and
b) a processor in data communication with the computer-readable storage medium, the processor configured to:
i) receiving information of a predetermined length, the information including a first Media Access Plan (MAP) protocol data unit (MPDU), the first MAP MPDU being variable in length and including at least one sub-MPDU;
ii) independently decoding a first sub-MPDU and a plurality of additional portions of the received information, each portion having the same length as one sub-MPDU;
iii) process data from the first sub-MPDU, wherein the data of the first sub-MPDU indicates an interval between the first MPDU and a next MPDU;
iv) determine how many other sub-MPDUs the first MAP MPDU contains based on the processed data of the first sub-MPDU;
v) reading an interval value from the processed data of the first sub-MPDU; and
vi) predicting a time of arrival of a next MAP MPDU based on the interval value and the time of arrival of the first MAP MPDU.
6. The network node of claim 5, wherein the processor is further configured to process data of a second sub-MPDU only if the data of the first sub-MPDU indicates that the second sub-MPDU comprises data that needs to be processed.
7. The network node of claim 5, wherein the data of the first sub-MPDU indicates how many MPDUs later, an interval between successive MPDUs will change.
8. The network node of claim 5, wherein the processor is further configured to determine, using information received within the MPDU received prior to the failure, an interval between transmission of a last received MPDU prior to the failure and a next MPDU of the last received MPDU prior to the failure, thereby determining a time of arrival of the next MPDU of the last received MPDU prior to the failure.
HK12107120.4A2009-03-172010-03-16A method for quick map recovery in case of error in mocaHK1166530B (en)

Applications Claiming Priority (5)

Application NumberPriority DateFiling DateTitle
US16098609P2009-03-172009-03-17
US61/160,9862009-03-17
US12/415,875US9008077B2 (en)2009-03-172009-03-31Method for quick map recovery in case of error in MoCA
US12/415,8752009-03-31
PCT/US2010/027431WO2010107758A1 (en)2009-03-172010-03-16A method for quick map recovery in case of error in moca

Publications (2)

Publication NumberPublication Date
HK1166530A1 HK1166530A1 (en)2012-11-02
HK1166530Btrue HK1166530B (en)2015-08-14

Family

ID=

Similar Documents

PublicationPublication DateTitle
EP1424799B1 (en)System and method for detecting lost messages transmitted between modules in a communication device
US11671864B2 (en)Joint transmission method and communications apparatus
US9949256B2 (en)Method and apparatus for generating, transmitting, and receiving a data frame in a wireless communication system
EP3675398B1 (en)Check code processing method, electronic device, and storage medium
EP3605881B1 (en)Method and device for transmitting and receiving network management information, transmitting apparatus and receiving apparatus
US10396921B2 (en)Multi-lane synchronization method, synchronization apparatus and system, and computer storage medium
CN108092924B (en)Cell switching method and system based on FlexE service
RU2451424C2 (en)Method and apparatus for selective transmission of voice packets and restored header packets
CN107888344A (en)A kind of method, apparatus and system of error detection
US8102857B2 (en)System and method for processing data and control messages in a communication system
US20090144597A1 (en)Encoding/decoding technique for rebroadcasting lost packets
EP2784965B1 (en)Data communication method and apparatus using forward error correction
CN102341784B (en) A method for fast MAP recovery when an error occurs in MoCA
CN101401347B (en)Method, module and apparatus for receiving data packet frames
US20180138922A1 (en)Transmission checking method, node, system and computer storage medium
JP7228797B2 (en) Receiving device and receiving method
CN107579804B (en)Method and system for filtering repeated data
HK1166530B (en)A method for quick map recovery in case of error in moca
JP2024507489A (en) OAM information block receiving method and device
KR101411782B1 (en)Terminal device with multi communication interface and method for controlling communication of the ternimal device
US20160165013A1 (en)Scheme for transmitting and receiving information in wireless communication system
KR101642440B1 (en)Network recovering method for ring network
US20250081132A1 (en)Method and apparatus for radio communications
CN117040691A (en)TBoMS retransmission method, device, communication equipment and storage medium
JP5362131B2 (en) COMMUNICATION DEVICE, COMMUNICATION DEVICE CONTROL METHOD, AND PROGRAM

[8]ページ先頭

©2009-2025 Movatter.jp