The present invention relates to a relay device and a terminal unit.
Recently, as the function of notifying a network status, there has been proposed an ECN (Explicit Congestion Notification RFC 3168). The ECN is implemented on TCP/IP. A relay device notifies a data receiving end of occurrence of congestion using a CE (Congestion Experienced) flag in an IP header, and the receiving end notifies a data transmitting end of the occurrence of the congestion using an ECN Echo flag in the TCP. Upon reception of the ECN Echo flag, the transmitting end reduces a transmission rate, and transmits data after adding a CWR (Congestion Window Reduced) flag to a TCP header of the data. The transmitting end thus reduces the transmission rate, which makes it possible to suppress data from being discarded by the relay device due to the congestion, while the receiving end can recognize from the CWR flag that the transmission rate has been reduced.
For example, the media server 101 stores video data for providing the terminal 104 with a real-time streaming service. The media server 101 and the wireless network gateway 102 are connected by a wired network.
The wireless network gateway 102 adjusts the differences between protocols on a side toward the media server 101 and protocols on a side toward the access point 103, for connection between networks of the two sides. The access point 103 performs wireless communication with the terminal 104 under the control thereof.
In the wireless network configured as above, when congestion occurs in the wireless network gateway 102, the wireless network gateway 102 notifies the terminal 104 of the occurrence of the congestion using the CE flag in the IP header. The terminal 104 notifies the media server 101 of the occurrence of the congestion using the ECN Echo flag in the TCP header. Upon reception of the ECN Echo flag, the media server 101 reduces a transmission rate, and adds the CWR flag to the TCP header for transmission of data. This makes it possible to suppress data from being discarded by the wireless network gateway 102 due to the congestion, while the terminal 104 can recognize that the transmission rate has been reduced by the CWR flag in the TCP header.
When a congestion occurs on the network, the relay device notifies the receiving end of the occurrence of the congestion using a CE flag in the ECN field. ECT in the ECN field is called “ECN Capable Transport”, and CE in the same is called “Congestion Experienced”.
Upon reception of the CE flag from the relay device, the receiving end notifies the transmitting end of the occurrence of the congestion using the ECN Echo flag in the reserved field, illustrated in
Conventionally, there has been proposed a bulk transfer device that is capable of monitoring a currently connected line by changing an increment by which a sequence number is incremented (see e.g. Japanese Laid-Open Patent Publication (Kokai) No. 2000-165475).
However, when the increment by which the sequence number is increased is switched, it is difficult for the receiving end to distinguish whether data is lost or the increment by which the sequence number is increased is switched, which can hinder data transmission.
According to an aspect of the embodiments, a relay device that transfers data items to which is added order information indicative of an order of the data items, includes: a transmission order controller that controls a transmission order of the data items such that the data items are transferred in a predetermined order different from the order of the data items.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
Hereafter, the present invention will be described in detail with reference to the drawings.
The relay device 1 receives data items having order information (e.g. information which is capable of defining the order of sequence numbers or the like, and hereinafter, a description will be given of a case where sequence numbers are used) added thereto, and stores the data items in the storage section 1b. Although basically, it is desirable to receive data items in the order of sequence numbers, it is not necessarily required to receive data items in the order of sequence numbers.
The transmission order controller 1a reads out data items from the storage section 1b based on sequence numbers and transmits the data items, for relaying. In doing this, the transmission order controller 1a reads out the data items from the storage section 1b and transmits the same such that the data items are transmitted in an order corresponding to information desired to be notified to a receiving-end device 2 (order different from the order of the sequence numbers).
For example, when sequence numbers 1 to 10 are used in one cycle, the transmission order controller 1a reads out data items such that the sequence numbers are transmitted (transferred) in an order of 3, 1, 2, and 4 to 10. This order indicates information (e.g. a message saying that congestion has occurred in the relay device 1).
This causes a detecting section 2b of the receiving-end device 2 to detect that a receiver 2a of the receiving-end device 2 has received the data items not in the order of sequence numbers 1, 2 and 3 but in the order of the sequence numbers 3, 1 and 2, and hence the detecting section 2b can detect that information corresponding to the order of the sequence numbers 3, 1 and 2 has been transmitted from the relay device 1. Preferably, both the relay device 1 and the receiving-end device 2 include respective storage sections for storing pieces of information (messages) corresponding to a plurality of respective kinds of orders different from the order of the sequence numbers, and the relay device 1 reads out, from the storage section thereof, an order number corresponding to a message desired to be transmitted to the receiving-end device 2, and transmits the message in the order indicated by the order number.
On the other hand, the detecting section 2b of the receiving-end device 2 checks matching between predetermined orders stored in the storage section and the order of received data items to determine to which of the predetermined orders stored in the storage section thereof the order of received data items corresponds, and obtains information (message) which is associated with the corresponding order and is stored in the storage section.
Although in the above example, an order defined in repetition units (3) smaller than repetition units (10) of sequence numbers is used, this is not limitative, but of course, the order may be defined in units of 10, which is the same as the repetition units of sequence numbers.
Now, the order may be controlled by performing modulo operations (e.g. modulo-3 operations) on the sequence numbers for conversion to thereby handle the sequence numbers as numbers repeated in units (3) of sequence numbers smaller than the repetition units (10) of sequence numbers, such that an order indicated by the results of the modulo operations on the sequence numbers becomes a predetermined order different from the order of the sequence numbers.
More specifically, when the modulo-3 operations are performed on a sequence of numbers 1, 2, 3, 4, 5 and 6, remainders 1, 2, 0, 1, 2 and 0 are obtained, but it is possible to control the order such that the results of the modulo operations indicate an order of 2, 1, and 0. In other words, the sequence numbers 1, 2, 3, 4, 5 and 6 can be rearranged in an order of 2, 1, 3, (5, 4 and 6).
The detecting section 2b of the receiving-end device 2 performs the same modulo-3 operations on the sequence numbers added to the respective data items sequentially received by the receiver 2a, and sequentially determines, by calculation, respective values of 2, 1 and 3, whereafter the storage section of the receiving-end device 2 obtains information (message) associated with this order.
This makes it possible to give information to the receiving-end device 2 by controlling the transmission order. Of course, it is also possible to continuously and repeatedly perform a special order control associated with the message, for reliability of information transmission. For example, in the case of the modulo-3 operations, it is also possible to transmit information such that transmitted data items are in the order of the sequence numbers 2, 1, 3, 5, 4 and 6, and send the same information twice. In the first example, the sequence numbers may be transmitted twice in the order of 3, 1, 2, and 4 to 10, to thereby enhance the reliability of information transmission.
The receiving-end device 2 includes a rearrangement controller 2c, and outputs data items received by the receiver 2a by rearranging the data items based on sequence numbers in the order of the sequence numbers (the rearrangement can be easily performed by storing the received data items in a memory and controlling the order of reading out of the data items) It is possible to set an upper layer processor or the like as an output destination of data items.
Next, a variation of the relay device will be described with reference to drawings.
According to the relay device 6 configured as above, by rearranging data items to be transmitted to the terminal unit 8, the terminal unit 8 is notified of a plurality of pieces of information concerning the relay device 6.
Further, there is illustrated a terminal unit that receives data items relayed by a relay device, comprising a grouping section for grouping the data items, a transmission order-obtaining section for obtaining a transmission order of the data items that are rearranged in a group and are transmitted by the relay device, an information table configured to store information concerning the relay device, the information being notified by the relay device, and the transmission order, in association with each other, an information obtaining section for obtaining information corresponding to the transmission order obtained by the transmission order-obtaining section, by referring to the information table, and a rearrangement section for rearranging the transmission order of the data items back to an order of the data items arranged before being rearranged by the relay device.
According to the terminal unit configured as above, a plurality of pieces of information on the relay device are obtained by respective orders of rearrangement of data items transmitted from the relay device.
This makes it possible to prevent information concerning the relay device from being restricted to binary information. Further, in transmitting the information, it is possible to prevent an increase in the amount of transmitted information. Further, it is also possible to obtain a new method of transmitting information from the relay device to the terminal unit.
A more detailed description will be given of the variation illustrated in
The grouping section 6a groups data items transmitted from the media server. The data items transmitted from the media server are packets, for example. The grouping section 6a groups the packets into groups each formed by a predetermined number of (4) packets, for example. The first to be grouped is set to the first of the sequence numbers, for example.
The information table 6b stores pieces of information concerning the relay device 6 which are to be notified to the terminal unit 8, and transmission orders of packets grouped by the grouping section 6a within the group thereof, in association with each other.
For example, the information concerning the relay device 6 can be used as information indicative of a congestion state of packets in the relay device 6. The transmission order indicates the order of transmission of a plurality of packets (four packets) within a group to the terminal unit 8. For example, a transmission order 0132 illustrated in
The transmission order-obtaining section 6c obtains a transmission order corresponding to information which is to be notified to the terminal unit 8 by referring to the information table 6b. For example, in the above-described example, when a congestion of 10% occurs in the relay device 6, the transmission order-obtaining section 6c obtains a transmission order (0132) of packets corresponding to the congestion of 10%, from the information table 6b.
The rearrangement section 6d rearranges the packets in each group formed by the grouping section 6a, in the transmission order obtained by the transmission order-obtaining section 6c. For example, in the above-described example, sets of packets in respective groups are rearranged in the order of 0132, 0132, 0132, . . . , based on the sequence numbers or the like.
The terminal unit 8 groups the received packets, similarly to the relay device 6, for obtaining a transmission order of packets in each group. In the above-described example, the terminal unit 8 groups the received packets into groups of four packets, similarly to the relay device 6, and obtains the transmission order of the packets in each group.
The terminal unit 8 has the same information table 6b as that of the relay device 6, and obtains a congestion state notified by the relay device 6 by referring to the information table 6b. In the above-described example, since the transmission order 0132 of packets (the fact that the sequence numbers of the received packets are 0, 1, 3 and 2 in the order of reception of the packets) is detected in each group, information notifying that a congestion of 10% (0 to 10%) has occurred is obtained. The terminal unit 8 rearranges the packets rearranged by the relay device 6 back to their original appropriate order 0123 based on the sequence numbers or the like.
As described above, the relay device 6 has the information table 6b storing a plurality of pieces of information concerning the relay device 6 and transmission orders of packets, in a state associated with each other. The relay device 6 refers to the information table 6b and rearranges the transmission order of packets to be transmitted to the terminal unit 8 in each group according to information to be notified to the terminal unit 8.
This makes it possible to notify the terminal unit 8 of the plurality of pieces of information concerning the relay device 6 through rearrangement of packets to be transmitted to the terminal unit 8. By associating three or more rearrangement orders with three or more pieces of information using the information table 6b, it is also possible to notify the terminal unit 8 of three or more pieces of information concerning the relay device 6.
Next, an embodiment of the present invention will be described in detail with reference to the drawings.
The transmitter 12 stores video data e.g. for providing the receivers 13a, 13b, . . . , and 13n with a real-time streaming service. The relay device 11 relays data transmitted from the transmitter 12 to transmit the data to the receivers 13a, 13b, . . . , and 13n.
The relay device 11 detects a congestion state of data transmitted from the transmitter 12 to the receivers 13a, 13b, . . . , and 13n, and notifies the receivers 13a, 13b, . . . , and 13n of the congestion state. At this time, the relay device 11 notifies the receivers 13a, 13b, . . . , and 13n not only of a binary state corresponding to whether or not a congestion has occurred but also of a plurality of congestion states. For example, the relay device 11 notifies the receivers 13a, 13b, and 13n of a plurality of congestion states, such as a state where a congestion of 10% has occurred, a state where a congestion of 20% has occurred, a state where a congestion of 30% has occurred, . . .
The notification of the congestion states by the relay device 11 becomes particularly effective when a transmission rate in a section A is lower than a transmission rate in a section B, as viewed in
Of course, also when the transmission rate in the section B is lower than the transmission rate in the section A, the relay device 11 can be effectively applied. As such a case, there is contemplated a case where the receivers 13a, 13b, . . . , and 13n transmit data items to the transmitter 12, and although the transmission rates of the individual receivers 13a, 13b, . . . , and 13n in the section A are low, a band of the section A is broader than a band of the section B.
The switch 21 corresponds to the relay device 11 in
The transmission data items are packets, for example. In the TCP and the RTP (Real-time Transport Protocol), sequence numbers are added to the packets. In the example illustrated in
The switch 21 performs modulo calculation using a predetermined value on the sequence numbers of the received transmission data items. In the example illustrated in
The switch 21 sequentially groups the transmission data items into groups of four data items. For example, the switch 21 sequentially groups the sequence numbers such that the sequence numbers 0 to 3 are grouped into a first group, and then the sequence numbers 4 to 7 are grouped into a second group. After that, the switch 21 rearranges grouped transmission data items in each grouped range. There are a plurality of rearrangement patterns of the transmission data items, and the patterns can be changed according to information to be notified to the terminal unit 23a.
For purposes of simplicity, the transmission data items are rearranged and transmitted such that order information indicative of a predetermined order (e.g. sequence numbers or the results of the modulo calculation) becomes an order different from the predetermined order, i.e. a first order of arrangement, a second order of arrangement, . . . , or an N-th order of arrangement (N is a natural number not smaller than 3).
For example, when an order of A, B, C, D, A, B, C, D, A, . . . is included in transmission packets as order information indicative of an order of alphabet letters, which is the predetermined order, the transmission data items are rearranged in an order of B, D, A, and C as a first order, or in an order of D, C, B, and A as a second order, and then are transmitted. In this case, preferably, the transmission data items are repeatedly transmitted plurality of times in the first (or second) order.
For example, in the example illustrated in
The switch 21 has a table that associates pieces of information to be notified to the terminal unit 23a with transmission patterns of transmission data items, and rearranges transmission data items based on the table. In the above-described example, the table stores the state of occurrence of the congestion of 10% and the transmission pattern of 3012 in a state associated with each other, and the state of occurrence of the congestion of 30% and the transmission pattern of 0312 in an state associated with each other.
As described above, the switch 21 is capable of notifying the terminal unit 23a of information by associating patterns for rearranging transmission data items with a plurality of pieces of information, respectively, and rearranging transmission data items such that the transmission data items are associated with one of the pieces of information to be notified to the terminal unit 23a.
Moreover, even when the above-described rearrangement is carried out, it only hinders orderly arrival of the sequence numbers of the transmission data items, and if a time period required for the rearrangement has passed, the sequence numbers are acquired basically without any loss. This makes it possible to suppress confusion between the rearrangement and loss of data items.
In the example illustrated in
The terminal unit 23a on a side receiving the pieces of information sequentially performs the modulo calculation on the sequence numbers of the data items received from the switch 21, that is, on the sequence numbers added to received packets by using the same modulo value as used in the switch 21.
In the example illustrated in
The switch 21 transmits the transmission data items such that the sequence numbers of the transmission data items are arranged in the order of 3, 0, 1, 2, 7, 4, 5, 6, 11, 8, 9, 10, . . . , as described above, and hence the results of the modulo calculation performed by the terminal unit 23a indicate an order of 3, 0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, . . . , as viewed in EXTRACTION in
The terminal unit 23a has the same patterns of the rearranged data items as those of the switch 21 and pieces of information associated with the patterns. That is, the terminal unit 23a has a table storing arrangement patterns obtained from modulo results and pieces of information corresponding to the respective patterns in association with each other. This enables the terminal unit 23a to obtain information notified by the switch 21 based on the modulo results that are calculated based on the received data items.
In the example illustrated in
Since the data items received by the terminal unit 23a have been rearranged by the switch 21, the terminal unit 23a is required to rearrange the order of the received data items back to a proper one. In short, the terminal unit 23a is required to rearrange the received data items in their original order.
For the rearrangement, the received data items can be rearranged e.g. in the order of their sequence numbers or may be rearranged in a manner such that packets having respective detected numerals in a sequence of 3012 as modulo values are grouped into one group, and the modulo values are rearranged in proper order in the group, as illustrated in REARRANGEMENT B in
Each of rightmost rows in
Further, it is desirable that the rearrangement patterns of the transmission data items for causing the modulo results to indicate the respective orders of 1230, 2301 and 3012, are not used for adding information to the transmission data items.
This is because when information is notified to the terminal unit 23a using the above rearrangement patterns, the orders of 1230, 2301 and 3012 are similar to the normal order of 0, 1, 2, and 3, which makes erroneous detection by the terminal unit 23a liable to occur.
For example, if the transmission data for causing the modulo results to indicate the order of 0, 1, 2, and 3 is repeatedly transmitted, there is a fear that not only a pattern of 0, 1, 2, 3 but also a pattern of 1, 2, 3, 0 is likely to be detected.
In case a packet loss (e.g. loss of 0 as a modulo result) occurs, the terminal unit comes to detect the modulo results in the order of 1, 2, 3 and 0, which makes erroneous transmission of information liable to occur.
Of course, unavailable rearrangement patterns appearing in
The above synchronization can also be performed during a time period over which the sequence numbers (or the module calculation results) of the transmission data items are transmitted in the normal order of 0, 1, 2, 3, . . . More specifically, when the sequence numbers of 0, 1, 2, 3, . . . are received, by recognizing a first one of repeated sequence numbers, and counting data items by a predetermined number (four, in the illustrated example) with reference to the first one, it is possible to identify groups of the data items. If the transmission in the normal order of 0, 1, 2, 3, . . . is performed once in N (N is a natural number not smaller than 2) times of periodic transmissions, the synchronization can be performed periodically.
In
Although it is assumed that basically, on the network, the transmission order of data items is rarely transposed, by placing a restriction on the manner of arrangement of sequence numbers, as described above, it is possible to cope with unintended transposition of the order of data items.
For example, let it be assumed that in the example of the arrangement for the congestion of 10% in
For example, as illustrated in
For example, as illustrated in the
For example, as illustrated in
The switch 21 performs modulo calculation on the sequence numbers of the segmented data items. In the example illustrated in
The switch 21 groups the segmented data items using values obtained by modulo operations. Then, the switch 21 rearranges segmented data items within each grouped range. In the example illustrated in
As described above, in transmitting packets after segmenting the same, the switch 21 rearranges segmented data items and then transmits the rearranged data items.
The terminal unit 23a that receives the data items performs the modulo-4 operations on the sequence numbers of the received data items, in the same manner as described hereinabove with reference to
Further, since the received data items are transmitted after being rearranged by the switch 21, the terminal unit 23a rearranges the data items such that the modulo results are sequentially incremented by 1. That is, the terminal unit 23a rearranges the received data items such that they are in a proper order. This makes it possible for the terminal unit 23a to obtain data items in the order of sequence numbers as illustrated in SEGMENTATION in
For example, let it be assumed that the switch 21 performs the modulo-4 operations on the sequence numbers to rearrange transmission data items such that the modulo results indicate an order of 3102. More specifically, as illustrated in Groups #0 to #4 in
Now, let it be assumed that although the switch 21 transmits the rearranged data items to the terminal unit 23a, a certain data item (data item of 0 as one of the modulo results) is discarded as indicated by X in
As described above, when a data loss has occurred, the terminal unit 23a recognizes the same modulo result in one group of data items twice. For example, in the example illustrated in
In this case, upon receiving the same modulo results (3), the terminal unit 23a performs the resynchronization process (regrouping). That is, the synchronization is performed again from a portion indicated by an asterisk in
The switch 21 collects each two groups of data items grouped using a modulo value, to thereby further form them into a new group. Then, within each new group, the switch 21 moves a first value in each of the two original groups to a start in the new group.
For example, let it be assumed that the switch 21 performs modulo-4 operations on transmission data items, and forms each four data items into one group to rearrange them such that their modulo values become 3012.
The switch 21 further collects each two groups of the rearranged data items, thereby forming them into a new group. That is, the switch 21 forms new groups of data items which take modulo values of 31023102 as results of modulo calculation. Then, out of the data items 31023102 of each new group, the switch 21 moves a first value 3 of each group data 3102 to first positions in the new group, to set the data items 33012012 as transmission data items. Therefore, data items transmitted by the switch 21 to the terminal unit 23a are as illustrated in
When modulo results having the same value continues, the terminal unit 23a recognizes that a position where the two identical values are arranged corresponds to a start of each group of the rearranged data items. That is, the terminal unit 23a is configured to recognize a pattern for rearranging the data items with reference to the start. In the example illustrated in
The receiver 31 receives data items from the networks. For example, the receiver 31 receives video data transmitted from the terminal unit 23a from the media server.
The data items received by the receiver 31 are IP packets, for example. The receiver 31 outputs the received data items to the data type-determining section 32, and notifies the notification information controller 34 of a data reception rate.
The data type-determining section 32 detects a session in which data items can be rearranged, and notifies the notification information controller 34 of the session. The data type-determining section 32 thus detects a session because when flows are managed according to respective destinations of IP packets, and there is TCP layer above IP layer, the switch 21 is capable of rearranging date items using sequence numbers in TCP. Further, this is because when data items transmitted from the transmitter 36 are a type having no sequence numbers (IP packets), the transmission scheduler 35 is required to rearrange the data items in units of TCP, whereas when data items transmitted from the transmitter 36 are protocol data (UDP: User Datagram Protocol, etc.) having no such sequence numbers as in TCP, the transmission scheduler 35 is incapable of controlling rearrangement of the data item.
The data type-determining section 32 is not necessarily required. When data items transmitted from the transmitter 36 are e.g. RLC (Radio Link Controller) packets on 3GPP (3rd Generation Partnership Project), and the type of the packets is UM (Unacknowledged Mode) or AM (Acknowledged Mode), the data items have sequence numbers, and therefore it is not necessary to perform determination of applicability by the data type-determining section 32. Even in this case, however, when the transmitter 36 performs data transmission in TrM (Transparent Mode), the data type-determining section 32 is required. In this case as well, however, if a type indicative of applicability of data items transmitted from the transmitter 36 is explicitly indicated before the switch 21 is used, the data type-determining section 32 is not required.
The data storage section 33 temporarily stores data items received by the receiver 31 via the data type-determining section 32. The data storage section 33 notifies the notification information controller 34 of the amount of data held back by temporary storage.
The notification information controller 34 determines a congestion state in the switch 21, based on the data reception rate notified from the receiver 31, the amount of data held back, which is notified from the data storage section 33, and a data transmission rate notified from the transmission scheduler 35. The notification information controller 34 obtains a rearrangement pattern of data items corresponding to the determined congestion state, from a table. The notification information controller 34 outputs the obtained rearrangement pattern of data items to the transmission scheduler 35.
When the data type-determining section 32 determines that a flow type of data items to be handled is controlled by the sequence numbers of the data items, the notification information controller 34 carries out the processing described above.
To the state determining section 41 are input the data reception rate notified from the receiver 31, the amount of data held back, which is notified from the data storage section 33, the data transmission rate notified from the transmission scheduler 35 and the flow type notified from the notification information controller 34. The state determining section 41 determines a congestion state in the switch 21 based on the data reception rate, the amount of data held back and the data transmission rate.
The table 42 stores information concerning congestion states and rearrangement patterns of data items associated with the respective congestion states. The rearrangement patterns of data items are indicated by modulo results, and are stored in the table 42. For example, it is determined from the table 42 that a rearrangement pattern of data items corresponding to a state of a congestion of 0 to 10% is 0132. Further, the table 42 stores information indicating whether the congestion state tends to increase or decrease, and modulo results corresponding thereto.
When determining a congestion state, the state determining section 41 obtains a pattern corresponding to the congestion state. For example, when a congestion state in the switch 21 is 20%, the state determining section 41 obtains a pattern of 1302 by referring to the table 42. Further, if the congestion state tends to increase, the state determining section 41 obtains a pattern of 1203. The state determining section 41 delivers each obtained pattern to the transmission scheduler 35.
Referring again to
As described hereinabove with reference to
The transmitter 36 transmits data items delivered from the transmission scheduler 35 to a destination. When there are a plurality of subordinate access points, the transmitter 36 transmits the data items to a destination access point.
The receiver 51 receives data items transmitted from the switch 21. The receiver 51 outputs the received data items to the temporary data storage section 52.
The temporary data storage section 52 outputs the sequence numbers and session information of the received data items to the notified information identification section 53.
The notified information identification section 53 performs modulo calculation on the sequence numbers of the received data items, and groups the sequence numbers, to recognize a rearrangement pattern of the received data items. The notified information identification section 53 has the same table as the table 42 illustrated in
Further, the notified information identification section 53 rearranges data items that are transmitted after being rearranged by the switch 21, in a proper order. More specifically, the notified information identification section 53 rearranges data items temporarily stored in the temporary data storage section 52 such that modulo results of the data items are in a sequence of (0123) which is obtained by incrementing each modulo result by 1.
Further, when part of received data items is lost, the notified information identification section 53 performs a resynchronization process, as described hereinabove with reference to
The data storage section 54 stores the data items that are rearranged in a proper order and transmitted from the temporary data storage section 52. The receiver 51 and the data storage section 54 may be configured such that the receiver 51 receives and directly transmits data items to the data storage section 54, and the data storage section 54 obtains information notified from the switch 21 and rearranges the data items in a proper order.
As described hereinabove, the switch 21 rearranges a transmission order of packets to be transmitted to the terminal unit 23a in each group according to a congestion state of data items in the switch 21. The terminal unit 23a obtains the congestion state in the switch 21 based on the rearrangement pattern of the packets. This enables the switch 21 to notify the terminal unit 23a of a plurality of congestion states.
Further, since the switch 21 rearranges packets using sequence numbers in TCP or the UM/AM of RLC, it is possible to notify the terminal unit 23a of a plurality of congestion states without adding new information to the packets.
Further, since it is possible to notify the terminal unit 23a of a plurality of congestion states without adding new information to the packets, it is possible to prevent congestion from occurring due to notification of the congestion.
The present invention is capable of providing a relay device that is capable of notifying a terminal unit of information concerning the relay device and the terminal unit capable of receiving the information concerning the relay device, by a novel method.
Further, it is possible to maintain the relationship between data items and order information that is added to the data items so as to indicate an order of the data items. This makes it unnecessary to rewrite the order information in the relay device.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a showing of the superiority and inferiority of the invention. Although the embodiment(s) of the present invention has(have) been described in detail, it should be understood that various changes, substitutions and alterations could be made hereto without departing from the spirit and scope of the invention.
This application is a continuing application, filed under 35 U.S.C. §111(a), of International Application PCT/JP2007/061477, filed Jun. 6, 2007.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2007/061477 | Jun 2007 | US |
Child | 12576563 | US |