EP1214861A2 - Message piggybacking during transport medium congestion - Google Patents

Message piggybacking during transport medium congestion

Info

Publication number
EP1214861A2
EP1214861A2 EP00964823A EP00964823A EP1214861A2 EP 1214861 A2 EP1214861 A2 EP 1214861A2 EP 00964823 A EP00964823 A EP 00964823A EP 00964823 A EP00964823 A EP 00964823A EP 1214861 A2 EP1214861 A2 EP 1214861A2
Authority
EP
European Patent Office
Prior art keywords
computer
messages
transport medium
sending
addressed
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP00964823A
Other languages
German (de)
English (en)
French (fr)
Inventor
Jon Maloy
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of EP1214861A2 publication Critical patent/EP1214861A2/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow
    • H04L49/9089Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
    • H04L49/9094Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level

Definitions

  • the present invention relates to network connected computers and, in particular, to an improved scheme for networked computer communications during instances of communications medium congestion.
  • Packet communications protocols are commonly utilized to handle data communications between network connected computers. More likely than not, average packet length for such inter-computer communications is relatively short.
  • One problem that has been noted with respect to such short packet length communications is that both computer central processing unit (CPU) capacity and transport medium bandwidth tend to be poorly utilized. This situation is further aggravated when the transport medium becomes congested (e.g., due to ethernet packet collisions). The reason for this is that the basic CPU and transport medium circuit work effort required to send each packet must be repeated for each packet send attempt, regardless of whether the send attempt is successful. More specifically, this work load includes a fixed part associated with each packet send that always has to be performed, irrespective of packet length.
  • the transport-control protocol includes a feature wherein the computer transmission of a generated user information message is delayed for a period of time in order to allow subsequent user information messages generated by the same computer port and addressed to the same destination node as that first user information message to be collected together into a single packet for transmission. Activation of this message- delaying feature of TCP is optional. In accordance with this approach, all generated user information messages are held back by TCP at the transport layer for a period of time regardless of whether the transmission medium is congested.
  • collected user information messages generated by the same computer port and addressed to the same destination node are transmitted within a single packet, while user information messages addressed to different destination computer, or originated from different ports of the computer and addressed to the same destination computer, are transmitted within separate packets. Since the transmission of all generated user information messages is delayed by TCP at the transport layer regardless of whether the transmission medium is congested, this feature is poorly suited for real-time applications.
  • a computer When a computer detects congestion on a network transport medium, it refrains from sending packets. Instead, the computer stores any to be transmitted messages in memory. All to be transmitted messages addressed to the same destination addressee computer are stored in the same buffer. Alternatively, each of the messages is encapsulated into a single packet, and that packet is stored in the buffer. In either case, a different buffer is allocated to each identified destination addressee computer for the to be transmitted messages.
  • the congestion condition on the transport medium subsides, the one or more messages stored within a given buffer are retrieved from memory and encapsulated within a single packet addressed to the destination addressee computer associated with that given buffer. Alternatively, the stored single packet is retrieved from memory. That packet is then sent over the transport medium to the identified destination addressee computer.
  • FIGURE 1 is a block diagram of a network connected computer system illustrating a prior art message transmission scheme
  • FIGURE 2 is a block diagram of a network connected computer system illustrating a message transmission scheme in accordance with a first embodiment of the present invention
  • FIGURE 3 is a block diagram of a network connected computer system illustrating a message transmission scheme in accordance with a second embodiment of the present invention
  • FIGURES 4A-4D are flow diagrams illustrating operation of the sending computer in accordance with the message transmission schemes of the present invention.
  • FIGURE 5 is a message flow process diagram illustrating the port independence of the FIGURES 3C-3D process of the present invention.
  • FIGURE 1 This commonly utilized technique for computer generated message transmission is illustrated in FIGURE 1 wherein there is shown a block diagram of a network connected computer system.
  • a plurality of computers 10(l)-10(n) are interconnected to each other in a network configuration by at least one transport medium 12.
  • First computer 10(1) desires to send a plurality of messages 14(1)-14(5) to several ones of the other computers 10(2)-10(3).
  • a first of the messages 14(1) for example addressed to computer 10(2), is encapsulated in a packet 16 and sent from the first computer 10(1), but fails to be delivered to the addressee computer 10(2) due to congestion currently being experienced on the transport medium 12. Responsive to such a failure, the first computer 10(1) buffers the message 14(1) in a reserved portion 18(1) of its memory
  • the first computer then delays for a certain amount of time before retrieving the message 14(1) from memory 20 and attempting a re-send of the packet 16.
  • the first computer 10(1) may have other messages 14(2)- 14(5) to send, and similarly makes unsuccessful attempts (due to continued congestion) at packet 16 transmissions to the respective addressee computers 10(2)- 10(3).
  • the first computer 10(1) buffers the messages 14(2)- 14(5), each in a separate reserved portion 18(2)- 18(5), respectively, of its memory 20, and delays for the specified certain amount of time before attempting a packet 16 re- send.
  • the first computer 10(1) retrieves the messages from memory 20 and attempts a re- send.
  • FIGURE 2 wherein there is shown a block diagram of a network connected computer system illustrating a message transmission scheme in accordance with a first embodiment of the present invention.
  • a plurality of computers 30(l)-30(3) are interconnected to each other in a network configuration by at least one transport medium 32.
  • First computer 30(1) has a need over a period of time to send a plurality of messages 34(l)-34(5) to several ones of the other computers 30(2)-30(3).
  • a first one of the messages 34(1), for example addressed to computer 30(2), is encapsulated in a packet 36 and sent from the first computer 30(1) and is successfully delivered by the transport medium 32 to the addressee second computer
  • a second one of the messages 34(2) is then encapsulated in a packet 36 and sent from the first computer 30(1), but fails to be delivered to the addressee computer 30(2) due to congestion currently being experienced on the transport medium 32. Responsive to such a failure, the first computer 30(1) buffers the message 34(2) in a reserved portion 38(1) of its memory
  • the size of the allocated buffer portion 38(1) in memory 40 is much larger than is necessary to hold the message 34(2), and in fact is preferably large enough to store several messages.
  • the first computer 30(1) then delays for a requisite amount of time necessary to accomplish two goals.
  • the primary goal is let the congestion condition on the transport medium 32 subside before attempting a re-send.
  • the secondary goal is to wait during the experienced congestion condition to see if the first computer 30(1) needs to send during the congestion period any other messages 34 also addressed to the second computer 30(2), and if so to then include those messages (as will be discussed in more detail below) in a single packet re-send to the second computer.
  • the 30(1) buffers the message 34(5) in the previously reserved portion 38( 1 ) of its memory 40 allocated for second computer 30(2) addressed messages.
  • the message 34(5) is stored in memory 40 in the same reserved portion 38(1) with the previously stored second and fourth messages 34(2) and 34(4) which are also addressed for the second computer 30(2).
  • the first computer 30(1) then delays for the requisite amount of time necessary to accomplish above-mentioned two goals with respect to the second, fourth and fifth messages 34(2), 34(4) and 34(5), respectively.
  • the first computer 30(1) detects that the congestion condition on the transport medium 32 has subsided.
  • the primary goal of the delay period has been satisfied.
  • the secondary goal of the delay period has been satisfied with respect to messages addressed for the second computer 30(2).
  • reserved portion 38(1) of the memory 40 for buffering messages 34 addressed for the second computer 30(2) contains the second, fourth and fifth messages 34(2), 34(4) and 34(5).
  • the first computer 30(1) retrieves the messages 34(2), 34(4) and 34(5) from the reserved portion 38(1) of the memory 40, encapsulates them into a single packet 36 addressed to the second computer 30(2), and (assuming no new congestion is encountered) successfully sends the packet over the transport medium 32.
  • the messages 34(2), 34(4) and 34(5) are in essence "piggybacked" into a single packet transmission.
  • this single packet requires the use of much less CPU and transport medium work effort to send than would have been expended had the messages been sequentially sent in separate packets as taught by the prior art scheme illustrated in FIGURE 1.
  • the first computer 30(1) further retrieves the message 34(3) from the reserved portion 38(2) of the memory 40, encapsulates it into a single packet 36 addressed to the third computer 30(3), and successfully sends the packet over the transport medium 32.
  • FIGURE 3 wherein there is shown a block diagram of a network connected computer system illustrating a message transmission scheme in accordance with a second embodiment of the present invention.
  • a plurality of computers 30(l)-30(3) are interconnected to each other in a network configuration by at least one transport medium 32.
  • First computer 30(1) has a need over a period of time to send a plurality of messages 34(l)-34(5) to several ones of the other computers 30(2)-30(3).
  • a first one of the messages 34(1) for example addressed to computer 30(2), is encapsulated in a packet 36 and sent from the first computer 30(1) and is successfully delivered by the transport medium 32 to the addressee second computer 30(2).
  • a second one of the messages 34(2) again for example addressed to computer
  • the first computer 30(1) encapsulates the message 34(2) into a packet 36(1) and stores that packet in a reserved portion 38(1) of its memory 40 allocated for second computer
  • the size of the allocated portion 38(1) in memory 40 is much larger than is necessary to hold the packet 36(1) containing only message 34(2), and in fact is preferably large enough to store a packet containing several messages.
  • the first computer 30(1) then delays for a requisite amount of time necessary to accomplish two goals.
  • the primary goal is let the congestion condition on the transport medium 32 subside before attempting a re-send.
  • the secondary goal is to wait during the experienced congestion condition to see if the first computer 30(1) needs to send during the congestion period any other messages 34 also addressed to the second computer 30(2), and if so to then include those messages (as will be discussed in more detail below) in a single packet re-send to the second computer.
  • the first computer 30(1) next needs to be sent by the first computer 30(1). Recognizing the continued existence of the congestion condition on the transport medium 32, the first computer 30(1) encapsulates the message 34(5) with previous messages 34(2) and 34(4) into the packet 36(1) stored in the previously reserved portion 38( 1 ) of its memory 40 allocated for second computer 30(2) addressed messages. Thus, the message 34(5) is stored in memory 40 in the same reserved portion 38(1) with the previously stored second and fourth messages 34(2) and 34(4) which are also addressed for the second computer 30(2). Again, the first computer 30(1) then delays for the requisite amount of time necessary to accomplish above-mentioned two goals with respect to the second, fourth and fifth messages 34(2), 34(4) and 34(5), respectively.
  • the first computer 30(1) detects that the congestion condition on the transport medium 32 has subsided.
  • the primary goal of the delay period has been satisfied.
  • the secondary goal of the delay period has been satisfied with respect to messages addressed for the second computer 30(2).
  • reserved portion 38(1) of the memory 40 for buffering messages 34 addressed for the second computer 30(2) contains the second, fourth and fifth messages 34(2), 34(4) and 34(5).
  • the first computer 30(1) retrieves the packet 3(1) containing messages 34(2), 34(4) and 34(5) from the reserved portion 38(1) of the memory 40, and successfully sends the packet over the transport medium 32 to the second computer.
  • the messages 34(2), 34(4) and 34(5) are in essence "piggybacked" into a single packet transmission.
  • this single packet requires the use of much less CPU and transport medium work effort to send than would have been expended had the messages been sequentially sent in separate packets as taught by the prior art scheme illustrated in FIGURE 1.
  • the first computer 30(1) further retrieves the packet 36(2) containing message 34(3) from the reserved portion 38(2) of the memory 40, and successfully sends the packet over the transport medium 32 to the third computer.
  • FIGURES 4A-4D wherein there are shown flow diagrams illustrating operation of the sending computer in accordance with the message transmission schemes of the present invention.
  • FIGURES 4A-4B the computer checks in decision step 50 whether there is any congestion on the transmission medium that would preclude successful delivery of the message. If yes (path 52), the message is encapsulated into a packet in step 54 addressed to the destination computer for that message (along with any other previously processed messages also addressed to the same destination) and the packet is stored in step 56. The process then returns. If no (path 58), message is transmitted in step 60. It should be noted here that the action of transmitting in step 60 may include the use of zero or more encapsulations. The process then returns.
  • step 64 a determination is made at step 64 as to whether there are any unsent and stored messages. If not (path 66), the process returns. If yes, (path 68), a determination is made in step 70 as to whether any new congestion condition has arisen that would prevent transmission of the messages. If yes (path 72), the process returns. If no (path 74), the packets previously encapsulated and stored messages are retrieved and the associated packet(s) is/are transmitted in step 76. It should be noted here that the action of transmitting in step 76 may include the use of zero or more encapsulations. The process then returns (path 78) and repeats until all buffered messages have been transmitted (or a new congestion condition arises that would preclude transmission) by sending their associated packets.
  • FIGURES 4C-4D the computer checks in decision step 80 whether there is any congestion on the transmission medium that would preclude successful delivery of the message. If yes (path 82), the message is stored in step 84 along with any other previously stored messages addressed to the same destination computer. The process then returns. If no (path 86), message is transmitted in step 88. It should be noted here that the action of transmitting in step 88 may include the use of zero or more encapsulations. The process then returns. If congestion has ended (path 90), the process moves to FIGURE 4D. In FIGURE 4D, a determination is made at step 92 as to whether there are any unsent and stored messages. If not (path 94), the process returns.
  • step 98 a determination is made in step 98 as to whether any new congestion condition has arisen that would prevent transmission of the messages. If yes (path 100), the process returns. If no (path 102), the messages previously stored and addressed to the same destination are retrieved and encapsulated into a packet in step 104, and that packet is transmitted in step 106. It should be noted here that the action of transmitting in step 106 may include the use of zero or more additional encapsulations. The process then returns (path 108) and repeats until all buffered messages have been transmitted (or a new congestion condition arises that would preclude transmission) by sending their associated packets.
  • FIGURES 4A-4D illustrated process of the present invention is preferably implemented at the link layer level rather than at the transport layer level as is experienced with the previously mentioned prior art TCP service.
  • messages addressed to the same destination computer may be piggybacked together in a single packet irrespective of their particular origination port within the sending computer or destination port within the destination computer.
  • FIGURE 5 This advantage is illustrated in the message flow process diagram of FIGURE 5 wherein: a first message 100(1) originated at port one 102(1) of a sending computer 104(1) is addressed to port one 102(1) of a certain destination computer 104(2); and a second message 100(2) originated at port two 102(2) of the sending computer 104(1) is addressed to port two 102(2) of the certain destination computer 104(2).
  • the sending computer buffers the messages 100(1) and 100(2) in a reserved portion 108(1) of its memory 110 allocated for destination computer 104(2) addressed messages.
  • the size of the allocated buffer portion 108(1) in memory 110 is typically much larger than is necessary to hold the two messages 100(1) and 100(2), and in fact is preferably large enough to store several more messages if necessary. It should also be noted that the messages 100(1) and 100(2) are stored in the reserved portion 108(1) together because they are addressed to the same destination computer 104(2) and in spite of the fact that they originated at different ports 102 of the sending computer 104(1) and are destined for delivery to different ports 102 of the destination computer 104(2). The sending computer 104(1) then delays for the requisite amount of time necessary to accomplish above-mentioned two goals. Responsive to the detected non-congested condition of the transport medium
  • the sending computer 104(1) retrieves the messages 100(1) and 100(2) from the reserved portion 108(1) of the memory 110, encapsulates them into a single packet 112 addressed to the destination computer 104(2), and successfully sends the packet over the transport medium 106.
  • This operation is performed at the link layer level of the OSI model within the sending computer 104(1).
  • the received packet 112 is split into its two message components, and the first message 100(1) is delivered to the first port 102(1) and the second message is delivered to the second port 102(2).
  • FIGURES 4A-4B for encapsulating into packets at first computer storage may alternatively be used in the context of the multi-port transport illustrated in FIGURE 5.
  • the present invention may be practiced in networking configurations wherein plural transport media are utilized to interconnect a plurality of computers.
  • the test for congestion is performed with respect to each transport media, and the transmission scheme for buffering similarly addressed messages for subsequent piggybacked delivery within a single packet is implemented only with respect to the medium that is detected as being congested.
  • Conventional processing and message handling is implemented with respect to all other messages being conveyed over non-congested media.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
EP00964823A 1999-09-21 2000-08-25 Message piggybacking during transport medium congestion Withdrawn EP1214861A2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US40013999A 1999-09-21 1999-09-21
US400139 1999-09-21
PCT/SE2000/001645 WO2001022665A2 (en) 1999-09-21 2000-08-25 Message piggybacking during transport medium congestion

Publications (1)

Publication Number Publication Date
EP1214861A2 true EP1214861A2 (en) 2002-06-19

Family

ID=23582378

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00964823A Withdrawn EP1214861A2 (en) 1999-09-21 2000-08-25 Message piggybacking during transport medium congestion

Country Status (7)

Country Link
EP (1) EP1214861A2 (zh)
CN (1) CN1437836A (zh)
AR (1) AR028869A1 (zh)
AU (1) AU7564800A (zh)
BR (1) BR0014110A (zh)
CA (1) CA2385470C (zh)
WO (1) WO2001022665A2 (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805823A (en) * 1996-01-30 1998-09-08 Wayfarer Communications, Inc. System and method for optimal multiplexed message aggregation between client applications in client-server networks

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6041345A (en) * 1996-03-08 2000-03-21 Microsoft Corporation Active stream format for holding multiple media streams

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805823A (en) * 1996-01-30 1998-09-08 Wayfarer Communications, Inc. System and method for optimal multiplexed message aggregation between client applications in client-server networks

Also Published As

Publication number Publication date
CA2385470A1 (en) 2001-03-29
AU7564800A (en) 2001-04-24
AR028869A1 (es) 2003-05-28
CA2385470C (en) 2006-05-02
WO2001022665A2 (en) 2001-03-29
WO2001022665A3 (en) 2001-08-16
BR0014110A (pt) 2002-05-14
CN1437836A (zh) 2003-08-20

Similar Documents

Publication Publication Date Title
KR101143172B1 (ko) 웹 서비스를 위한 신뢰성 있는 메시징 프로토콜을 이용한메시지의 효율적인 전송
EP0912028B1 (en) Mechanism for dispatching packets via a telecommunications network
US6741555B1 (en) Enhancement of explicit congestion notification (ECN) for wireless network applications
US6757248B1 (en) Performance enhancement of transmission control protocol (TCP) for wireless network applications
US7443845B2 (en) Apparatus and method for a lightweight, reliable, packet-based transport protocol
US6625118B1 (en) Receiver based congestion control
US7760646B2 (en) Congestion notification in 3G radio access
US6954797B1 (en) Data Communication method, terminal equipment, interconnecting installation, data communication system and recording medium
US6535482B1 (en) Congestion notification from router
US7369498B1 (en) Congestion control method for a packet-switched network
US6438108B1 (en) System for improved transmission of acknowledgements within a packet data network
US6542513B1 (en) Optimistic, eager rendezvous transmission mode and combined rendezvous modes for message processing systems
US6765870B2 (en) Medium access dynamic congestion control mechanism for wireless data
SE513327C2 (sv) System och metod för datakommunikation
US20110292945A1 (en) Packet Receiving Device, Packet Communication System, and Packet Reordering Method
US20020118639A1 (en) Medium access dynamic congestion control mechanism for wireless data
US7286483B2 (en) Electronic data transfer based on selective storage of incoming packets
CA2385470C (en) Message piggybacking during transport medium congestion
JP5046197B2 (ja) 通信装置、通信システム、パケット欠落検出方法、およびパケット欠落検出プログラム
JPH0766838A (ja) 輻輳制御フレームリレー装置
JPH0738612A (ja) ゲートウェイ
JP2000316024A (ja) パケットバッファ管理装置およびパケットバッファ管理方法
JPS61176228A (ja) 網間接続装置におけるパケツト処理方式
JPH05207039A (ja) ループ式lanにおける無効パケット廃棄方法とそのループ式lan
JPH0385041A (ja) Csma/cd方式用ブリッジ

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20020320

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)

17Q First examination report despatched

Effective date: 20080328

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20080808