MXPA00007551A - Telecommunication method for ensuring on-time delivery of packets containing time-sensitive data - Google Patents

Telecommunication method for ensuring on-time delivery of packets containing time-sensitive data

Info

Publication number
MXPA00007551A
MXPA00007551A MXPA/A/2000/007551A MXPA00007551A MXPA00007551A MX PA00007551 A MXPA00007551 A MX PA00007551A MX PA00007551 A MXPA00007551 A MX PA00007551A MX PA00007551 A MXPA00007551 A MX PA00007551A
Authority
MX
Mexico
Prior art keywords
packet
packets
network
memory
stored
Prior art date
Application number
MXPA/A/2000/007551A
Other languages
Spanish (es)
Inventor
Anderson Pehr
Gadda Chris
H Houh Henry
Original Assignee
3Com Corporation
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
Application filed by 3Com Corporation filed Critical 3Com Corporation
Publication of MXPA00007551A publication Critical patent/MXPA00007551A/en

Links

Abstract

A telecommunication method for providing packets to at leat one of a first (12) and a second (14) network. In one embodiment, a packet switching device (10) provides a communication path to the first (12) and second (14) network. The device (10) forwards packets received from one network to the other, generates packets from signals locally inputtedinto the device and forwards such generated packets to at least one of the networks, and performs actions prescribed by packets received by and addressed to the device (10). On-time delivery of voice data packets is ensured by limiting the time that such packets can await transmission onto the network. When the time forwarding a voice data packet exceeds a permitted time limit, the packet can be replaced by a new packet, which includes the same or different data as the replaced packet.

Description

METHOD OF TELECOMMUNICATIONS TO ENSURE THE DELIVERY IN TIME OF PACKAGES THAT CONTAIN DATA SENSITIVE TO TIME FIELD OF THE INVENTION The invention relates in general to an apparatus and method for integrating voice and data into a single telecommunications network. More specifically, the invention relates to a telecommunications apparatus and method for sending voice and data packets to the network over communication routes having separate collision domains. BACKGROUND OF THE INVENTION Many modem businesses use two separate telecommunications networks for voice and data. The costs associated with installing and maintaining two networks have led some businesses to look for ways to integrate voice and data into a single telecommunications network infrastructure. As a result, the telecommunications industry has produced systems that integrate telephones and computers over the same network. In these systems, telephones and computers share the same cable infrastructure to transmit computer data and voice data. Advances in technology, continuously increase the capacity of data regime of networks. The Ethernet network, which is a prevalent type of local area network (RAL), is an example. Devices (or nodes) connected to an Ethernet network communicate with each other using packets that have a structured format. The packages include a destination address, a source address, and the data. Initially, the 10 Mbps Ethernet network was the basis for the IEEE 802.3 standard, but Ethernet has since evolved to support 100 and 1000 Mbps network data regimes. Although current implementations of integrated telecommunications systems can adequately support Network data regimes of the order of 10 Mbps, these systems can not adequately provide equivalent functionality at network speeds of 100 Mbps and beyond. This is due, in part, to the use of connection holes through current implementations of integrated telecommunications systems to send Ethernet packets in the local area network. A connection hole is a network device that deposits received Ethernet packets in a communication path over another communication path. Many communication routes can be found in a connection hole. Because a connection hole does not provide separate collision domains, the devices that use these communication routes compete with each other for the use of the connection hole. A collision domain is a segment of the local area network where the collision occurs when any two devices attempt to transmit packets simultaneously on that segment. When a packet collision occurs on a segment, the devices that send the packets are alerted to the collision and fall back, that is, the sending devices wait a predetermined period of time before trying to complete the transmission of the packets on that segment . The IEEE 802.3 standard specifies a backward algorithm that each sending device must perform to comply with the standard when it is involved in a packet collision. However, a problem is that at high data rates (for example data rates of 100 Mbps and beyond), a sending device may incorrectly consider a packet transmission to have arrived successfully even if that packet later encounters a collision after spreading through the network. Typically, at lower data rates (for example, 10 Mbps), this collision causes the sending device to backtrack on future attempts to transmit the packet. However, high data rates allow the sending device to complete the transmission of the packet before it occurs or the collision is detected. In addition, the sending device can then continue transmitting other packets in that network segment. At high data rates, the propagation delay incurred in the network can avoid the timely detection of collisions and make the operation of the integrated telecommunications system impracticable. SUMMARY AND OBJECTS OF THE INVENTION In one aspect, the invention presents a method for sending packets to a network that facilitates the timely delivery of said packets. Attempts are made to send a packet stored in memory to the network. A time limit is established within which to send the packet stored in the memory to the network. An elapsed time period is monitored while attempting to send the stored packet, when the elapsed time period exceeds the time limit, it is determined whether attempts to send the packet to the network are canceled. When the packet is transmitted concurrently over the network, the transmission can be interrupted or allowed to be completed. When the packet is not transmitted concurrently over the network, attempts to transmit the packet can be canceled or allowed to continue. When it is determined to cancel attempts to send the stored packet, a new packet replaces the packet stored in the memory. The new package may have the same data or different data as the package replaced. The packet stored in the memory may include time-sensitive data and data related to the protocol. The new packet can have the same data sensitive to time and different data related to the protocol and the replaced packet, or different data sensitive to time and the same data related to the protocol as the replaced packet. Also a backspace level can be reset to send the new packet to the network, and a limit can be set on the number of times the stored packet can be replaced with a new packet. BRIEF DESCRIPTION OF THE DRAWINGS The invention is pointed out with particularity to the appended claims. The above and additional advantages of the invention can be better understood by reference to the following description together with the accompanying drawings, in which: Figure 1 is a diagram of a mode of two separate networks connected by a system for sending packets in the which invention is practiced. Figure 2 is a diagram of one embodiment of the system for sending packets of Figure 1 coupled between a computer system and an Ethernet network. Figure 3 is a diagram of a system mode that sends packets of Figure 2, which includes a packet driver. Figure 4 is a diagram of another embodiment of the system that sends packets of Figure 2, which includes a packet switching device.
Figure 5 is a diagram of one mode of the packet controller of Figure 3. Figure 6 is a flowchart representation of a mode of a process whereby packets are generated and queued within the sending system. packages; Y. Figure 7 is a flowchart representation of a modality of a process whereby packets are sent to the network or modified for subsequent transmission. DETAILED DESCRIPTION OF THE INVENTION Figure 1 shows a system for sending packages of the invention connected between a first network 12 and a second network 14 by electrical communication paths 16 and 18, respectively. Each of the networks 12, 14 can have any of a variety of communication topologies, for example, a local area network (LAN) or a wide area network (WAN) In one embodiment, the system for sending packets 10 is the only electrical connection between network 12 and network 14. In Figure 1, each electrical communication route 16, 18 is a network segment that is part of a different collision domain. More specifically, the collision domain including the network 12 and the communication path 16 is separated from the collision domain that includes the network 14 and the communication path 18. In accordance with the principles of the invention, the sending system packets 10 maintains the separation of the two collision domains. The system sending packets 10 includes the I / O 15 input / output devices for transmitting signals and receiving signals from a local device 17. In one embodiment, the input / output devices 15 include a microphone, a keyboard, and an apparatus telephone. Other input / output devices are possible, (for example, hearing aids). The input / output devices 15 also include a liquid crystal display (LCD), light emitting diodes (LED), loudspeakers, and a telephone set. Other types of input / output devices can be used to practice the invention. The local device 17 can be any device capable of using the input / output devices 15 to receive signals or transmit signals to the system to send packets 10 (for example, a computer or a n operator). The system for sending packets 10 may also include a first encoder-decoder (not shown) coupled with the microphone and the speakers and a second encoder-decoder (not shown) coupled with the telephone apparatus to perform analog-digital and digital conversions in analog of audio signals. In accordance with the principles of the invention, the system for sending packets 10 uses and / or sends packets received from one of the networks to another of the networks. More specifically, the system for sending packets 10 uses and / or sends packets received from the network 12 to the network 14 and uses and / or sends packets received from the network 14 to the network 12. For example, some packets received specifically can be addressed to the system for sending packets 10 (for example, the destination address in these packets is destination address 10). In this case, the system for sending packets 10 uses but does not send these packets to one of the networks 12, 14. In another embodiment, the system for sending packets 10 uses and sends the packets. Other types of received packets (e.g., transmission packets) may be of interest and used by the system to send packets 10. Packets may also originate in the system to send packets 10, such as when a user places a packet. phone call. To place a phone call, the user presses several keys on the keyboard and speaks on the telephone set. The system for sending packets 10 generates packets from the signals produced by the keyboard and the telephone apparatus and sends the generated packets to either or both of the networks 12, 14. The content of these packets depends on the source of the packets. signs For audio signals (ie, voice), the generated packets include voice data.
For digital signals produced by the keyboard, the generated packages include control data. The system for sending packets 10 can also initiate the generation of packets (for example, to issue an alarm or other types of status packets). As further described below, the system for sending packets 10 may add a priority level to the packets, the priority level depending on the type of data included in these packets. In general, there are at least two priority levels. In a detailed mode, a packet has one of three priority levels: high, medium, and not prioritized (that is, the packet is not given priority). In one embodiment, the priority level effects the order in which the system for sending packets 10 queues in the memory the associated packets for transmission to one of the networks 12, 14. In another mode, the priority determines the order in which the packets are removed from the memory when they are sent to one of the networks 12, 14. The system for sending packets 10 can detect when the networks 12, 14 are inadvertently connected to each other by a different route than through of the system for sending packets 10. In one embodiment, the system for sending packets 10 periodically transmits a packet via one of the communication paths 16, 18 and determines whether that packet returns to the system to send packets 10 via the other communications path. In another embodiment, the system for sending packets can determine that identical packets have arrived from both communications paths 16, 18 at almost the same time. The system for sending packets 10 may display a warning on the liquid crystal display and disable communication via one of the two communication paths 16, 18 until the inadvertent connection is disconnected. However, it will be understood that the principles of the invention can be practiced even when the networks 12, 14 are inadvertently connected. Figure 2 depicts an exemplary embodiment of the system for sending packets 10 as a telecommunications device 10 that bypasses two Ethernet networks 12 and 14. Examples of telecommunications devices include a telephone set and a telephone line interface module device (TLIM) ). For exemplary purposes, the telecommunications device throughout the following description is a telephone device (hereinafter, telephone set 10). The first network 12 is an Ethernet network that includes a file server 20, and the second network 14 is a computer system 14. The computer system 14 is plugged into a receptacle of the telephone apparatus 10. In this way, a single infructure network supports both computers and phones. Although only one of the telephone sets is shown, it should be understood that multiple telephone sets, each of which can be coupled with computer systems, can be similarly connected to the Ethernet 12 network.
The computer system 14 can access the file server 20 through the packet sending operation provided by the telephone set 10. To request access to the server 20, the computer system 14 transmits Ethernet packets that include the destination address from the server 20 to the telephone set 10 via the communications path 18. After receiving the packets, the telephone set 10 determines that the packets are not routed to the telephone set 10, and queues the packets for transmission to the network 12 via the communications path 16. Concurrent with this request by the computer system 14, a user of the telephone set 10 may be having a telephone conversation with the user of another telephone set (not shown) connected to the network 12. The audio signals enter the telephone set 10 through one of the input / output devices 15, (for example, the telephone set). From these audio signals, the telephone set 10 produces packets that include voice data. Because the voice data is time sensitive, (ie, as the time elapses the usefulness of the voice data decreases significantly), the telephone apparatus 10 may give higher priority to packets that include voice data than to the voice data. packages that include control data, such as the server request made by the computer system 14. Accordingly, the telephone set 10 can pre-acquire the transmission of the packets representing the server request and first queue the packets of voice data for its transmission. While the telephone set 10 is prepared to transmit voice data packets to the network 12, the voice data packets generated by the other telephone set connected in the conversation can be received by the telephone set 10 via the communications path 16. The destination addresses in these voice data packets can indicate that the telephone set 10 is the target receiver. In this case, the telephone apparatus 10 produces audio signals from the voice data in the packets and produces audio signals to one of the input / output devices 15, (for example, the telephone set). As a result, the user of the telephone set 10 listens to the audio signals generated by the other user. The telephone apparatus 10 can then discard the received voice data packets or send the packets to the computer system 14. The user of the telephone set 10 can be connected in a "conference call" (ie, a conversation with two or more users). more telephones connected to the network 12). From the audio signals produced by the user, the telephone apparatus 10 generates packets that include voice data. The telephone apparatus 10 then transmits the generated packets to the network 12.
In one embodiment, each telephone set involved in the conference call receives a list of all the participants at the beginning of the conference call. This list of participants can be generated before starting the conference call and can change as participants are added or removed. The telephone set 10 generates a transmission packet for each telephone set from the list of participants. For example, when the telephone set 10 is connected in a conference call with two other participants, the telephone set 10 generates two packets of a single transmission having the same voice data and the telephone set 10 as the source address. The destination address in one of the two packets of a single transmission is the address of one of the other two telephone sets, and the destination address in the second packet of a single transmission is of the other of the two telephone sets. In another embodiment, at the beginning of the conference call, each telephone apparatus receives an identifier associated with the conference call. This identifier can be generated before the start of the conference call and can change during the conference call. The telephone apparatus 10 generates multiple transmission packets that include the identifier associated with the conference call. In each multicast packet, the telephone set 10 is the origin address and the identifier may be the destination address. The telephone set 10 uses only those packets of the known telephone sets which are to be connected in the conference call. For single transmission packets, the source address of the received packets can be compared against a list of participants. For multiple transmission packets, the identifier can indicate whether the packet comes from a participant in the conference call. When the telephone set 10 receives a packet, the telephone set 10 determines that the packet came from a participant in a conference call, produces audio signals corresponding to the voice data in the packet, and produces the audio signals to the telephone set (or speaker). When multiple packets arrive at a telephone set from different sources, that telephone apparatus combines the received packets and produces audio signals corresponding to the voice data of the combination. The telephone set 10 can combine packets received from other telephone sets with packets generated by the telephone set 10 from locally received audio signals. To produce the combination, the telephone set 10 may combine the voice data of the received packets or select to process (i.e., produce audio signals from the voice data packets) one or more of the packets in accordance with a predetermined criterion. One criterion may be to process the packet with the voice data having the highest volume (that is, the strongest). The telephone apparatus 10 can discard or send unused voice data packets. Figure 3 shows, in greater detail, an exemplary embodiment of telephone set 10. Telephone set 10 includes a packet controller 24 coupled with an I / O 26 input / output port, two medium access control devices (MAC 28 and 32, the memory 36, and the input / output control circuit 50. A contour 62 surrounds the components 24, 26, 28, 32, and 50 which, in one embodiment of the invention, are arranged in a device integrated circuit (ASIC). It will be appreciated that other designs of integrated circuits are possible, such as, for example, one in which the memory 36 is included in the integrated circuit. The input / output port 26 is in electrical communication with the input / output devices 15, (i.e., the microphone, the hearing aids or the telephone set), to receive audio signals from a user of the telephone set 10 and to transmit audio signals to the input / output devices 15, (for example, the speaker or earphone), so that these signals are audible to the user. The input / output control circuit 50 is coupled to the input / output devices 15, (for example, the keyboard, the liquid crystal display, and the light emitting diode), to receive input signals from the board and transmitting control signals to the liquid crystal display and the light emitting diode. The packet controller 24 is in electrical communication with the input / output port 26 via the signal line 52 and the input / output control circuit 50 via the signal line 53. The packet controller 24 is in electrical communication with the memory 36 via the signal lines 35, with the access control device to the medium 28 via the signal lines 54 and with the access control device to the medium 32 via the signal line 56 to control the transfer of packets between the memory 36 and the means access control devices 28 and 32. The packet controller 24 includes a timer 63 used to set a maximum limit on the amount of time a packet prepared for its transmission is allowed to wait for transmission , as described later. In one embodiment, the timer 63 is programmable so that different maximum time limits can be applied at different packet priority levels. In the embodiment, the media access control devices 28, 32 are 10/100 Ethernet ports capable of operating at 100 Mbps network data rate. The medium access control devices 28, 32 are physical interfaces for receiving and transmitting packets to the Ethernet networks 12, 14. Each medium access control device 28, 32 provides a separate collision domain for the packets to be received. transmit in the respective communication paths 16, 18. The first collision domain is the network segment that includes the access control device to the medium 28 in electrical communication with the network 12 via the communication routes 16. The second domain of collision includes the access control device to the medium 32 in electrical communication with the computer system 14 via the communications path 18. As a result of the separate collision domains, the access control devices to the medium 28, 32 operate in a manner that both can concurrently transmit packets and / or concurrently receive packets or one of the media access control devices can receive paqu etes while the other transmits packets, with no apparent collisions between the networks. Each medium access control device 28, 32 includes temporary memory 30, 34 for storing the packets prepared for transmission to the network 12 or the packets received from the network 12 via the communication paths 16, 18. The memory temporary 30, 34 includes a temporary receiving memory 29, 34 and a transmitting temporary memory 31, 35. In one embodiment, the temporary memory 30, 34 adapts to the size to store 8 or 16 bytes of data. The temporary memory 30, 34 may be internal or external to the media access control devices 28, 32. In one embodiment, each media access control device 28, 32 includes a temporary memory controller to handle packet transfers to and from the temporary memory. Other modes combine the controllers in a single component or incorporate the temporary memory controller within the packet controller 24. The memory 36 may be implemented using synchronous dynamic random access memory (SDRAM). Other types of memory devices can be used (for example, SRAM). The memory organization 36 provides dedicated, separate memory sections, 38, 44 for each of the media access control devices 28, 30. The separate sections 38, 44 operate to maintain the separate collision domains provided by the devices for access control to the environment 28, 30. The memory section 38 supports the access control device to the medium 28 via the signal lines 58 and the memory section 44 supports the access control device to the medium 32 via the signal lines 60. The sections of memory 38, 44 are divided into a receiving region 40, 46 and a transmitting region 42, 48.
Each receiving region 40, 46 is divided into a specific block 41, 49 for storing the packets addressed to the telephone set 10 and a general block 43, 51 for storing the packets directed to another device different from the telephone set 10. Each transmitting region 42, 48 is divided into a priority block 45, 55 for packets having priority and a general block 47, 57 for non-prioritized packets. Other ways of using the memory 36 to implement the priority are considered. For example, the memory 36 can be organized as a temporary memory to store packets as the packets arrive at the telephone set. Instead of evaluating each packet as that packet arrives to determine the block of memory in which to store that packet, each packet can be stored directly in memory 36 after arrival and subsequently examined to determine its priority when a packet is selected to send it to one of the input / output devices. Each packet received by an access control device to the medium from the network 12 includes the information necessary to determine the place in the memory 36 for storing the packet. The categories of the packages include "specific telephone", "general telephone", or "others in general". The telephone set 10 uses (ie, performs an action as prescribed by the information in the packet) specific telephone packs and telephone packs in general. Examples of actions include converting packets with voice data into audio signals and producing audio signals to a local input / output device 17, displaying a message on the liquid crystal display, reset error flags, setting the current time on a internal clock of the telephone set 10, and other maintenance functions. The telephone set 10 sends the telephone packets in general, but not specific telephone packets to the computer system 14. An example of general telephone packets are those packets produced during a conference call. Both categories of packets, of specific telephone and of telephones in general, are stored within the specific block 41, 49 of the receiving region 40, 46. The packets that are others are generally stored in the general block 43, 51 and subsequently they send to the computer system 14. The telephone set 10 does not use these packages. Figure 4 shows another mode 10 'of the telephone set 10 in Figure 3. The telephone set 10' includes a packet controller 24 'coupled to an input / output (I / O) (1/0) port 26', an access control interface to the medium 23, the memory 36 ', and input / output control circuit 50'. The access control interface to the medium 23 is in electrical communication with a packet switching device 21 for sending packets between the network 12 and the computer system 14. In another embodiment, the access control interface to the medium 23 can be remove to allow direct connection from the packet controller 24 'to the switching device 21. The above descriptions for the packet controller 24, the input / output port 26, the memory 36, the input / output control circuit 50 in Figure 3 are the same as the corresponding components in Figure 4. The medium access control interface 23 provides an interface that controls communications between the network 12 and the computer system 14 with the telephone set 10 '. The switching device 21 provides a function carried out by the two means access control devices 28, 32 of Figure 3, which is to maintain separate collision domains for the network 12 and the computer system 14. The device Switching 21 can be implemented using a 3-port fast Ethernet integrated circuit NP313, developed by NeoParadigm Labs, Inc. (NPL). The manner in which the switching device 21 can handle packets includes the following: the switching device 21 can send a packet from the network to the computer 14 (or in the opposite direction), the switching device 21 can ignore a packet received either from network 12 or computer 14; and the switching device 21 can use a packet to perform an action as prescribed by that packet, without sending the packet either to the network 12 or to the computer 14. A current impediment to using the switching device 21 is the cost associated with the Hardware and Software necessary to implement the operation of the device 21 in accordance with IEEE standards. This impediment can be eliminated over time if the switching device costs 21 decrease. Figure 5 shows an exemplary embodiment of the packet controller 24. The packet controller 24 includes a timer 63, a digital signal processor (PSD) 64, a processor 66 (for example, an ARM processor), an access controller, and direct memory (AMD) 68, the control circuit 70, an address table 72, and a memory controller 74 coupled to the others by a signal bus 76. Although shown separately, the timer 63 and the table 72 they may be included within the other functional components 66, 68, 70 and 74. The digital signal processor 64 is in electrical communication with the input / output port 26 via the signal lines 52. The memory controller 74 is in communication with the memory 36 through the signal lines 78. The direct memory access controller 68 is in electrical communication with the means access control devices 28, 32 by means of the lines Signals 54, 56. In one embodiment, the memory controller 74 may be included in the direct memory access controller 68. Either the processor 66 or the direct memory access controller 68 can control the memory transfer between the means access control devices 28, 32 and the memory 36. The address table 72 stores addresses that are of importance to the telephone set 10. Examples of these addresses include the address of the telephone set 10, the identifier for a call by conference, and a general transmission address. The direct memory access controller 68 accesses the table 72 whenever the telephone set 10 receives a packet to determine whether the telephone set 10 uses the packet as described above. When the packet has a destination address that matches one of the addresses stored in table 72, the telephone set 10 performs an action as prescribed by the packet. The telephone apparatus 10 may or may not subsequently send the packet to the network 12 or to the computer system 14, as explained above. In one embodiment, the table 72 also functions to filter packets from the subsequent shipment including addresses of the computer system 14. In this mode, the direct memory access controller 68 uses the addresses stored in table 72, to discard, instead of send, packets that are not directed to the telephone set 10 or to the computer system 14. The destination addresses can be added or removed from table 72. For example, when a conference call is initiated, the processor 66 (or the controller) direct memory access 68) stores the conference call identifier in table 72 and removes the identifier when the conference call ends. The implementation of this table 72 can be hardware or software, but the address query in table 72 is presented faster when implemented in hardware in the described mode. Packet sending operation The following description describes the process of sending packets along a route from the network 12 and the access control device to the medium 28 to the access control device to the medium 32 and the computer system 14 However, it will be understood that the process works similarly in the reverse direction. When the medium access control device 28 receives a packet, the medium access control device 28 stores that packet in the receiving buffer 29. The direct memory access controller 68 moves the received packet from the receiving buffer 29 to the receiving region 40 of the memory 36 and compares the destination address of the packet against the addresses stored in the address table 72. If the addresses match, then the telephone set 10 uses the packet, as previously explained. When there is no address matching or when the packet is a packet of telephones in general, then the packet is moved from the receiving region 40 to the transmitting region 42 for subsequent sending to the computer system 14. The processor 66 evaluates the packet for determine in which block, 45 or 47, of the transmitting region 42 to place the packet. If the packet has priority, then the processor 66 places the packet in the priority block 45. If the packet does not have priority status, then the processor 66 places the packet in the general block 47 or gives the packet a priority status and then places the packet in the priority block 45. From the transmitting region 40, the direct memory access controller 68 moves the packet to the transmitting buffer, 35 of the media access control device 32, which moves the packet over the communications path 18 to the computer system 14. When a series of packets is processed, the direct memory access controller 68 continuously supplies the memory 36 with packets and keeps the transmitting temporary memory 35 of the control device full. of access to the medium 32.
Packet generating operation Figure 6 provides a flow chart describing a process by which packet controller 24 builds voice data packets from audio signals received by the input / output port 26. The generated packets can be single transmission or multiple transmission packets for use in an end-to-end telephone communication or in a conference call. In step 78, the digital signal processor 64 digitizes consecutive samples of audio signals and concatenates the digitized signals into a data structure including voice data corresponding to the audio signals. When the data structure includes voice data generated from samples of audio signals that extend a predetermined duration (e.g., 24 ms), the digital signal processor 64 signals the processor 66 (step 80). The processor 66 constructs a frame around the data structure and produces, in one embodiment, an Ethernet packet. Due to the time sensitive nature of the voice data, the processor 66 can add data to the data structure indicating that the packet has priority. In step 82, the packet is queued in the priority block 45, 55 of the transmitting section 42, 48. The direct memory access controller 68 subsequently passes the packet in the priority block 45, 55 to the device. of access control to the medium 28, 32 for transmission as an Ethernet packet. On-time delivery When packets are moved from memory 36 to media access control devices 28, 32, direct memory access controller 68 gives priority to packets stored in priority block 45, 55. Priority operates to increase the importance of certain packets so that these packets receive special treatment to reach one or both of the networks 12, 14. The ability of the telephone apparatus 10 to concurrently send non-prioritized packets and generate prioritized packets can occur occasions where a minor packet is queued in an access control device to the medium, waiting to be sent, when a time-sensitive voice packet is generated. For a voice data to be useful, typically, this data must arrive at the destination within a certain period of time (ie, up to about 50 ms), while the critical period of time for delivery of control data is generally greater. Other types of data may not be time sensitive. Instead of waiting until the queued packet leaves the transmitting temporary memory of the medium access control device, and risks reducing the utility of the voice data packet, the processor 66 can pre-acquire the transmission of that packet and replace it. the packet with the highest priority voice data packet. The processor 66 may discard the replaced packet, or store the packet until voice transmission is completed, at which time the transmission of the replaced packet resumes. Giving high priority to voice data packets facilitates the timely delivery of real-time data. Figure 7 shows a process that additionally facilitates the daily delivery of time sensitive data, such as voice data, preventing the packets from being unduly postponed while awaiting the transmission of a temporary access control memory to the medium 30, 34. The process ensures that the packets do not remain in the transmission buffer 31, 35 of an access control device to the medium 28, 32 beyond a predetermined period of time. For purposes of illustration, the following description of the steps in the process are described with reference to the medium access control device 28, although these steps also apply to the access control device to the medium 32. Also, although the steps in the process is described below with specific reference to the packets containing voice data, it will be understood that the principles of the invention apply to packets having any type of data, including video data and control data, and whether or not These data are sensitive or not sensitive to time.
In step 84, the packet is obtained from the priority block 41 of the transmission region 42 in the memory 36. As described above, the digital signal processor 64 captures voice data for a predetermined duration (step 86) , and the processor 66 forms an Ethernet packet that includes the captured voice data (step 88). In step 90, the direct memory access controller 68 (or processor 66) queues the Ethernet packet in the transmission buffer 31 of the media access control device 28. When the packet is queued, the Stopwatch 63 starts (step 92). The timer 63 is set for a maximum period of time, eg, 2 ms, that the packet can remain in the transmission buffer 31. This maximum period may be constant or packet-packet variable. If the packet is transmitted before the timer 63 expires, the timer 63 stops and the process continues with the next available packet in the transmission region 42 of the memory 36 (step 94). When timer 63 expires, a determination is made as to whether the packet is in the process of being transmitted. If the packet is not currently being transmitted when the timer 63 expires, the transmission is canceled. The cancellation of the transmission of a packet in queue does not impede the ability of the access control device to the means 28 to receive packets on the communications path 16. In another mode, instead of canceling the transmission, attempts may be allowed. to transmit the package continue. This may be a more practical action to take when the timer 63 is set to a period of time that is too short for the type of data being transmitted (eg, non-time sensitive data). If, when timer 63 expires, the transmission of the packet is in progress, the command to stop may not affect the transmission of that packet, allowing the transmission of the packet over the network to be completed. In another mode, the transmission of the packet can be interrupted. In step 100, when the timer 63 expires, the processor 66 determines to replace the packet in queue, whether or not this packet is currently being transmitted, with a new packet. The information in the new package may be entirely different, have similarities with, or be identical to, the information in the replaced package. For example, the replaced packet may include time-sensitive data and protocol-related data, and the new packet may have the same data sensitive to time and the same data related to the protocol as the packet replaced. In other modalities, the new packet may have the same time-sensitive data and different protocol-related data as the packet replaced, or different data sensitive to time and different data related to the protocol that the packet replaced. The processor 66 may use any of a variety of techniques to produce time sensitive data for the new packet that are different from the time sensitive data of the replaced packet. For example, the processor 66 can replace the time-sensitive data of the replaced packet with entirely new time-sensitive data, append new time-sensitive data to the time-sensitive data of the replaced packet, or append new time-sensitive data to a portion. compressed, selected, of the data sensitive to the time of the replaced packet. The processor 66 can produce the new packet by modifying the replaced packet while the replaced packet remains within the transmission buffer 31 of the access control device to the control of the medium 28. In another mode, the new packet can be generated in the memory 36 and then passed to the transmission temporary memory 31 of the access control device to the medium 28. Within the transmission temporary memory 31, the new packet receives an initial delay level, that is, the new packet does not inherit the delay level incurred by the replaced packet. The timer 63 is reset to allow the full time limit within which the new packet is transmitted and begins attempts to transmit the new packet over the network. This process places a limit on the number of updates to the package. For example, the limit is 12, which, when multiplied by the delay period of 2 ms exemplary produces a time limit of 24 ms to send a packet of voice data. This time limit of 24 ms corresponds to the duration covered by the voice data in the packet and to the period of time for which the voice data may have some practical value in the receiver. Other modes may use various combinations of refresh limits and delay periods to achieve the goal of sending the voice data packet at the same time the packet remains useful. In step 98, if the number of updates to the packet for a particular block of voice data exceeds the maximum value (eg, 12), then no additional updates related to that particular block of voice data are presented. The voice data is discarded, and the next packet including a new block of voice data transfers from the transmit region 42 of the memory 36 to the transmission buffer 31 of the media access control device 28.

Claims (13)

  1. NOVELTY OF THE INVENTION Having described the foregoing invention, it is considered as a novelty and, therefore, the content of the following CLAIMS is claimed as property 1. A method for sending packets to a network, comprising the steps of: send a packet stored in memory to the network; set a time limit within which to send the packet stored in the memory to the network; monitor an elapsed period of time at the same time that an attempt is made to send the packet stored in memory to the network; and determining whether attempts to send the stored packet to the network are canceled when the elapsed period of time exceeds the time limit.
  2. 2. The method according to claim 1, further comprising the step of canceling attempts to send the stored packet in memory when that packet is not currently being transmitted over the network.
  3. 3. The method according to claim 1, further comprising the step of allowing the transmission of the stored packet in memory to complete when that packet is currently being transmitted over the network.
  4. 4. The method according to claim 1, further comprising the step of interrupting the transmission of the packet stored in the memory when that packet is currently being transmitted over the network.
  5. 5. The method according to claim 1, further comprising the steps of resetting a stopwatch to allow additional attempts to send the stored packet in memory when the packet is not currently being transmitted over the network.
  6. 6. The method according to claim 1, further comprising the step of replacing the stored packet in memory with a new packet having the same data of the replaced packet when it is determined to cancel the sending of the stored packet.
  7. The method according to claim 1, further comprising the step of replacing the packet stored in the memory with the new packet having different data than the packet replaced when it is determined to cancel the sending of the stored packet.
  8. 8. The method according to claim 7 wherein the package stored in the memory includes time-sensitive data and data related to the protocol, and the new packet has the same sensitive data over time and different data related to it. with the protocol that the package replaced.
  9. The method of compliance with the claim in claim 8 further comprising the steps of: resetting a delay level; and try to send the new packet to the network.
  10. The method of conformance with claiming in claim 8 further comprising the steps of: initiating attempts to transmit the new packet to the network; and reset the elapsed time period.
  11. The method according to claim 8 wherein the packet stored in the memory includes time-sensitive data and the step of replacing the packet stored in the memory with a new packet can occur a predetermined maximum number of times.
  12. 12. The method according to claim 7 wherein the package stored in the memory includes time sensitive data and data related to the protocol, and the new packet has different data sensitive to time and the same data related to the protocol that the package replaced. The method of compliance with claim 1 in which the steps of monitoring, setting the time limit, and determining whether to cancel the sending of the stored packet in memory occurs only when the packet stored in the memory includes sensitive data to time
MXPA/A/2000/007551A 1998-12-01 2000-08-01 Telecommunication method for ensuring on-time delivery of packets containing time-sensitive data MXPA00007551A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09204102 1998-12-01

Publications (1)

Publication Number Publication Date
MXPA00007551A true MXPA00007551A (en) 2002-05-09

Family

ID=

Similar Documents

Publication Publication Date Title
US6262979B1 (en) Telecommunication conferencing system and method
KR100670006B1 (en) Network telephony appliance and system for inter/intranet telephony
US8537806B2 (en) Method and system for an Ethernet IP telephone chip
JPH11331222A (en) Device and method for transmitting voice having adaptive packet length
AU765910B2 (en) Telecommunication method for ensuring on-time delivery of packets containing time-sensitive data
US6212195B1 (en) Telecommunication apparatus and method for forwarding packets using separate collision domains
JP2005260967A (en) Method, apparatus and system for synchronized combining of packet data
JPH11164334A (en) Method for operating subscriber line card used in telecommunication system in multimode
WO2000033513A9 (en) Telecommunication apparatus and method for forwarding packets using separate collision domains
US6751213B1 (en) Token over ethernet protocol
US6005847A (en) Method and apparatus for facilitating communication between multiple platforms via single, multi-channel communication conduit
CN103701624A (en) Audio data mixing method and device
MXPA00007551A (en) Telecommunication method for ensuring on-time delivery of packets containing time-sensitive data
MXPA00007550A (en) Telecommunication apparatus and method for forwarding packets using separate collision domains
MXPA00007549A (en) Telecommunication conferencing system and method
JP2001119405A (en) Ip telephone system
US7002951B2 (en) Automatic voicemail announcements with multimedia attachments
CN111641568B (en) Modular switch and network architecture
JP2004320290A (en) VoIP TELEPHONE SYSTEM AND COMMUNICATION CONTROL METHOD THEREIN
WO2008141569A1 (en) Method, device and network system for transmitting messages
JP2001057605A (en) Analog telephone ethernet converter
JPH03124145A (en) Packet exchange
KR20050002548A (en) Apparatus and method for finding premium VoIP traffics
JP2002027515A (en) Telephone system