CA2661379C - Apparatus and method of controlled delay packet forwarding - Google Patents

Apparatus and method of controlled delay packet forwarding Download PDF

Info

Publication number
CA2661379C
CA2661379C CA2661379A CA2661379A CA2661379C CA 2661379 C CA2661379 C CA 2661379C CA 2661379 A CA2661379 A CA 2661379A CA 2661379 A CA2661379 A CA 2661379A CA 2661379 C CA2661379 C CA 2661379C
Authority
CA
Canada
Prior art keywords
packet
class
time
controlled delay
transmission
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.)
Expired - Fee Related
Application number
CA2661379A
Other languages
French (fr)
Other versions
CA2661379A1 (en
Inventor
Charles F. Barry
Tian Shen
Feng F. Pan
Meenakshi S. Subramanian
Hank P. Nguyen
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.)
Juniper Networks Inc
Original Assignee
Juniper Networks Inc
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 Juniper Networks Inc filed Critical Juniper Networks Inc
Publication of CA2661379A1 publication Critical patent/CA2661379A1/en
Application granted granted Critical
Publication of CA2661379C publication Critical patent/CA2661379C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • H04L47/564Attaching a deadline to packets, e.g. earliest due date first

Abstract

An apparatus (302) and method are described for forwarding of packets (542) with controlled delay. In one embodiment, the invention includes controlled delay queuing logic (508) to hold a packet in a first class for a queuing time of at least a controlled delay value, and scheduling logic (514) to determine whether to delay transmission of a packet in a second class to allow the transmission of the packet in the first class when the queuing time reaches the controlled delay value.

Claims (28)

WHAT IS CLAIMED IS :
1. An apparatus comprising:
controlled delay queuing logic configured to hold a packet in a first class for a queuing time of a predetermined controlled delay value;
scheduling logic configured to delay transmission of the packet in the first class until the queuing time reaches the predetermined controlled delay value;
the scheduling logic configured to schedule transmission of a packet in a second class in response to determining that the transmission of the packet in the second class would complete before the queuing time reaches the predetermined controlled delay value;
the scheduling logic configured to schedule transmission of a packet in a pre-emptive priority class of higher priority than the first class and the second class, and the controlled delay queuing logic being configured to drop the packet in the first class if the queuing time exceeds the predetermined controlled delay value.
2. The apparatus of claim 1, further comprising time-stamping logic configured to attach time-stamp information including a time value to the packet in the first class, the time value indicating the time that the packet in the first class is received at the time-stamping logic, the queuing time starting at the time value and ending at the predetermined controlled delay value after the time value.
3. The apparatus of claim 1, wherein the scheduling logic is configured to determine whether to delay transmission of a packet in a third class to allow the transmission of the packet in the first class when the queuing time reaches the controlled delay value.
4. The apparatus of claim 3, wherein the scheduling logic is configured to schedule transmission of the second class of packets with strictly higher priority than transmission of the third class of packets.
5. The apparatus of claim 1, wherein the predetermined controlled delay value is configurable.
6. The apparatus of claim 1, wherein the predetermined controlled delay value is greater than a maximum transmission unit interval plus an inter-packet gap interval.
7. The apparatus of claim 1, further comprising time-stamping logic configured to attach time-stamp information to a packet.
8. The apparatus of claim 7, wherein the controlled delay queuing logic is configured to access the time-stamp information as part of determining when the queuing time reaches the predetermined controlled delay value.
9. The apparatus of claim 1, further comprising policing logic configured to determine whether to send a packet to the controlled delay queuing logic.
10. The apparatus of claim 1, wherein the first class of packets comprise network timing packets.
11. The apparatus of claim 1, further comprising shaping logic configured to shape packets in the pre-emptive priority class.
12. The apparatus of claim 1, further comprising policing logic configured to police packets in the pre-emptive priority class.
13. A method comprising:
transmitting a packet in a pre-emptive priority class of higher priority than a first class and a second class;
dropping a packet in the first class if transmission of the packet in the pre-emptive priority class completes after a queuing time of the packet in the first class exceeds a predetermined controlled delay value;
delaying transmission of the packet in the first class until the queuing time reaches the predetermined controlled delay value;
determining whether to delay transmission of a packet in the second class to allow the transmission of the packet in the first class when the queuing time reaches the predetermined controlled delay value; and scheduling transmission of the packet in the second class in response to determining that transmission of the packet in the second class would complete before the queuing time reaches the predetermined controlled delay value.
14. The method of claim 13, further comprising:
time-stamping the packet in the first class with time-stamp information including a time value, the time value indicating a time that the packet in the first class is received; and determining the queuing time based on the time-stamp information, the queuing time starting at the time value and ending at the predetermined controlled delay value after the time value.
15. The method of claim 13, further comprising determining whether to delay transmission of a packet in a third class to allow the transmission of the packet in the first class when the queuing time reaches the predetermined controlled delay value.
16. The method of claim 13, further comprising time-stamping the packet in the first class with time-stamp information that is accessed by the controlled delay queuing logic to determine the predetermined controlled delay value.
17. The method of claim 13, further comprising shaping packets in the pre-emptive priority class.
18. A method comprising:
forwarding a timing packet through at least one switching device, the forwarding at each of the at least one switching device including:
transmitting a control packet in a pre-emptive priority class of higher priority than a first class including the timing packet and a second class including a data packet;
dropping the timing packet if the transmission of the control packet completes after a queuing time of the timing packet exceeds a predetermined controlled delay value;
delaying transmission of the timing packet until the queuing time of the timing packet reaches the predetermined controlled delay value;
determining whether to delay transmission of the data packet until after the queuing time of the timing packet reaches the predetermined controlled delay value; and scheduling transmission of the data packet in response to determining that the transmission of the data packet would complete before the queuing time reaches the predetermined controlled delay value; and transmitting the timing packet to a client such that the client is synchronized.
19. The method of claim 18, further comprising:
time-stamping the timing packet with time-stamp information including a time value, the time value indicating a time that the timing packet is received;
and determining the queuing time based on the time-stamp information, the queuing time starting at the time value and ending at the predetermined controlled delay value after the time value.
20. An apparatus comprising:
controlled delay queuing logic configured to hold a packet in a first class for a queuing time of a predetermined controlled delay value;
scheduling logic configured to delay transmission of the packet in the first class until the queuing time reaches the predetermined controlled delay value;
the scheduling logic configured to schedule transmission of a packet in a second class in response to determining that the transmission of the packet in the second class would complete before the queuing time reaches the predetermined controlled delay value; and time-stamping logic configured to attach time-stamp information including a time value to the packet in the first class, the time value indicating the time that the packet in the first class is received at the time-stamping logic, the queuing time starting at the time value and ending at the predetermined controlled delay value after the time value.
21. The apparatus of claim 20, wherein the predetermined controlled delay value is independent of the time value.
22. The apparatus of claim 20, wherein the scheduling logic is configured to determine whether to delay transmission of a packet in a third class to allow the transmission of the packet in the first class when the queuing time reaches the controlled delay value.
23. The apparatus of claim 22, wherein the scheduling logic is configured to schedule transmission of the second class of packets with strictly higher priority than transmission of the third class of packets.
24. The apparatus of claim 20, wherein the predetermined controlled delay value is configurable.
25. The apparatus of claim 20, wherein the predetermined controlled delay value is greater than a maximum transmission unit interval plus an inter-packet gap interval.
26. The apparatus of claim 20, wherein the controlled delay queuing logic is configured to access the time-stamp information as part of determining when the queuing time reaches the predetermined controlled delay value.
27. The apparatus of claim 20, further comprising policing logic configured to determine whether to send a packet to the controlled delay queuing logic.
28. The apparatus of claim 20, wherein the first class of packets comprise network timing packets.
CA2661379A 2006-08-22 2007-08-22 Apparatus and method of controlled delay packet forwarding Expired - Fee Related CA2661379C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US83946506P 2006-08-22 2006-08-22
US60/839,465 2006-08-22
PCT/US2007/076484 WO2008024818A2 (en) 2006-08-22 2007-08-22 Apparatus and method of controlled delay packet forwarding

Publications (2)

Publication Number Publication Date
CA2661379A1 CA2661379A1 (en) 2008-02-28
CA2661379C true CA2661379C (en) 2014-10-14

Family

ID=39107620

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2661379A Expired - Fee Related CA2661379C (en) 2006-08-22 2007-08-22 Apparatus and method of controlled delay packet forwarding

Country Status (6)

Country Link
US (1) US7590061B2 (en)
EP (2) EP3319251B1 (en)
JP (1) JP5140079B2 (en)
CN (1) CN101548494B (en)
CA (1) CA2661379C (en)
WO (1) WO2008024818A2 (en)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007104920A1 (en) * 2006-03-16 2007-09-20 British Telecommunications Public Limited Company Method op relayed wireless transmission
US8503465B2 (en) * 2007-09-17 2013-08-06 Qualcomm Incorporated Priority scheduling and admission control in a communication network
US8688129B2 (en) * 2007-09-17 2014-04-01 Qualcomm Incorporated Grade of service (GoS) differentiation in a wireless communication network
US8000251B2 (en) * 2007-11-14 2011-08-16 Cisco Technology, Inc. Instrumenting packet flows
US8179887B1 (en) * 2008-02-01 2012-05-15 Tellabs Operations, Inc. Method and apparatus for improving performance of TDM sequencing for packet processing engines using a delay line
EP2271616B1 (en) 2008-03-28 2020-11-11 Ecolab USA Inc. Sulfoperoxycarboxylic acids, their preparation and methods of use as bleaching and antimicrobial agents
US8809392B2 (en) 2008-03-28 2014-08-19 Ecolab Usa Inc. Sulfoperoxycarboxylic acids, their preparation and methods of use as bleaching and antimicrobial agents
US20090322560A1 (en) * 2008-06-30 2009-12-31 General Motors Corporation In-vehicle alert delivery maximizing communications efficiency and subscriber privacy
CN102197611B (en) * 2008-10-24 2014-06-04 艾利森电话股份有限公司 Method and device for packet network synchronization
US7916761B2 (en) * 2008-11-03 2011-03-29 The Boeing Company Methods and apparatus for adding latency and jitter to selected network packets
US8416763B1 (en) 2008-11-14 2013-04-09 Cisco Technology, Inc. System and method for providing quality inter-domain network time transport
EP2228927A1 (en) * 2009-03-12 2010-09-15 Alcatel Lucent Method for processing distributed data having a chosen type for synchronizing communication nodes of a data packet network, and associated device
US8031747B2 (en) 2009-04-29 2011-10-04 Juniper Networks, Inc. Apparatus and method of compensating for clock frequency and phase variations by processing packet delay values
US8295312B2 (en) * 2009-06-08 2012-10-23 Broadcom Corporation Method and system for compensated time stamping for time-sensitive network communications
US9065736B2 (en) * 2009-06-08 2015-06-23 Broadcom Corporation Method and system for compensated time stamping for time-sensitive network communications
US8670459B2 (en) * 2009-11-30 2014-03-11 Juniper Networks, Inc. Apparatus and method of scheduling timing packets to enhance time distribution in telecommunication networks
US8571068B2 (en) * 2010-01-05 2013-10-29 Futurewei Technologies, Inc. Network timing distribution and synchronization using virtual network delays
US8571014B2 (en) * 2010-03-02 2013-10-29 Vitesse Semiconductor Corporation Distributed packet-based timestamp engine
US20130145041A1 (en) 2010-05-17 2013-06-06 Telefonaktiebolaget L M Ericsson (Publ) Optimizing Timing Packet Transport
EP2445127A1 (en) * 2010-10-22 2012-04-25 Alcatel Lucent Non-intrusive method for synchronising master and slave clocks of a packet-switching network, and associated synchronisation devices
US9321664B2 (en) 2011-12-20 2016-04-26 Ecolab Usa Inc. Stable percarboxylic acid compositions and uses thereof
JP5849786B2 (en) * 2012-03-08 2016-02-03 富士通株式会社 Data block output device, communication system, data block output method, and communication method
BR112014020748B1 (en) 2012-03-30 2021-02-23 Ecolab Usa Inc. water treatment method, water source treatment method and aqueous water treatment composition with antimicrobial activity
US9246999B2 (en) * 2012-05-18 2016-01-26 Andrew Milburn Directed wi-fi network in a venue integrating communications of a central concert controller with portable interactive devices
JP5675703B2 (en) * 2012-06-04 2015-02-25 株式会社東芝 Communication device, control device, and program
CN102882809B (en) * 2012-10-26 2015-07-15 杭州迪普科技有限公司 Network speed-limiting method and device based on message buffering
US10165774B2 (en) 2013-03-05 2019-01-01 Ecolab Usa Inc. Defoamer useful in a peracid composition with anionic surfactants
US9071554B2 (en) * 2013-03-15 2015-06-30 Cisco Technology, Inc. Timestamp estimation and jitter correction using downstream FIFO occupancy
US9492741B2 (en) 2013-05-22 2016-11-15 Microsoft Technology Licensing, Llc Wireless gaming protocol
WO2015162734A1 (en) * 2014-04-23 2015-10-29 三菱電機株式会社 Relay device and data transfer method
US10404608B2 (en) 2014-10-31 2019-09-03 Huawei Technologies Co., Ltd. Systems, devices, and methods for low-jitter communication over a packet-switched network
CN104917690A (en) * 2015-04-15 2015-09-16 联动优势科技有限公司 Method for controlling message sending and device for controlling message sending
US9866494B2 (en) 2015-11-04 2018-01-09 Microsoft Technology Licensing, Llc Wireless communication using delayed frame transmission
US9929928B1 (en) * 2015-12-24 2018-03-27 Microsemi Solutions (U.S.), Inc. Packet transmitter and method for timestamping packets
CN107508763B (en) * 2016-06-14 2021-04-13 景略半导体(上海)有限公司 Sending time control method, system and transmission equipment
EP3474496B1 (en) * 2016-07-28 2020-09-16 Mitsubishi Electric Corporation Transfer device and frame transfer method
US10565149B2 (en) 2018-04-06 2020-02-18 Embrionix Design Inc. Standardized hot-pluggable transceiving unit, hosting unit and method for applying delays based on port positions
US10685718B2 (en) * 2018-10-29 2020-06-16 Micron Technnology, Inc. Dynamic delay of NAND read commands
CN114041280A (en) * 2019-06-25 2022-02-11 西门子股份公司 Computer-implemented method for adapting at least one predefined frame delay
US11055156B2 (en) * 2019-08-20 2021-07-06 International Business Machines Corporation Processing of a message stream
CN111010187B (en) * 2019-12-26 2023-03-14 东风电子科技股份有限公司 BCM load feedback AD sampling time-sharing scheduling method
US11191053B1 (en) * 2020-08-06 2021-11-30 Facebook, Inc. Network-based clock for time distribution across a wireless network

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5790543A (en) * 1995-09-25 1998-08-04 Bell Atlantic Network Services, Inc. Apparatus and method for correcting jitter in data packets
US5757771A (en) * 1995-11-14 1998-05-26 Yurie Systems, Inc. Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch
US6134217A (en) * 1996-04-15 2000-10-17 The Regents Of The University Of California Traffic scheduling system and method for packet-switched networks with fairness and low latency
US6122254A (en) * 1997-11-25 2000-09-19 International Business Machines Corporation Method and apparatus for network flow control with perceptive parameters
US6091709A (en) 1997-11-25 2000-07-18 International Business Machines Corporation Quality of service management for packet switched networks
JPH11275112A (en) * 1998-03-26 1999-10-08 Oki Electric Ind Co Ltd Cell transmission scheduling device in atm network
US6539026B1 (en) * 1999-03-15 2003-03-25 Cisco Technology, Inc. Apparatus and method for delay management in a data communications network
US6798743B1 (en) * 1999-03-22 2004-09-28 Cisco Technology, Inc. Packet prioritization processing technique for routing traffic in a packet-switched computer network
US6570872B1 (en) * 1999-04-06 2003-05-27 Nortel Networks Limited Self-configuring distributed switch
USH2103H1 (en) * 1999-09-07 2004-05-04 The United States Of America As Represented By The Secretary Of The Air Force Packet scheduling based on message length
AU2068201A (en) * 1999-12-08 2001-06-18 Broadcom Homenetworking, Inc. Synchronized transport across non-synchronous networks
US6741559B1 (en) * 1999-12-23 2004-05-25 Nortel Networks Limited Method and device for providing priority access to a shared access network
US6680912B1 (en) * 2000-03-03 2004-01-20 Luminous Networks, Inc. Selecting a routing direction in a communications network using a cost metric
US6865149B1 (en) * 2000-03-03 2005-03-08 Luminous Networks, Inc. Dynamically allocated ring protection and restoration technique
US6647428B1 (en) * 2000-05-05 2003-11-11 Luminous Networks, Inc. Architecture for transport of multiple services in connectionless packet-based communication networks
US7251256B1 (en) * 2000-05-18 2007-07-31 Luminous Networks, Inc. Synchronization of asynchronous networks using media access control (MAC) layer synchronization symbols
JP2001358766A (en) * 2000-06-14 2001-12-26 Mitsubishi Electric Corp System and method for packet communication and computer readable recording medium with program for making computer perform the method recorded thereon
JP3584859B2 (en) * 2000-06-29 2004-11-04 日本電気株式会社 Packet scheduling device
US7277962B2 (en) * 2000-12-01 2007-10-02 Fujitsu Limited Method and apparatus for packet scheduling using virtual time stamp for high capacity combined input and output queued switching system
KR100467643B1 (en) * 2000-12-28 2005-01-24 엘지전자 주식회사 Method for multimedia data transmission in wireless LAN
US7099354B2 (en) * 2002-01-24 2006-08-29 Radioframe Networks, Inc. Method and apparatus for frequency and timing distribution through a packet-based network
US7260102B2 (en) * 2002-02-22 2007-08-21 Nortel Networks Limited Traffic switching using multi-dimensional packet classification
AU2003215841A1 (en) * 2002-04-30 2003-11-17 International Business Machines Corporation Method and arrangement for local synchronization in master-slave distributed communication systems
US7272144B2 (en) * 2002-06-26 2007-09-18 Arris International, Inc. Method and apparatus for queuing data flows
US6983393B2 (en) * 2002-12-11 2006-01-03 National Instruments Corporation Deterministically handling asynchronous events in a time triggered system
EP1576775A2 (en) 2002-12-19 2005-09-21 Koninklijke Philips Electronics N.V. Protecting real-time data in wireless networks
JP4170882B2 (en) * 2003-11-07 2008-10-22 日本電信電話株式会社 Network synchronization device, clock transmission method, and clock transmission packet network
US7684324B2 (en) * 2004-12-20 2010-03-23 Telchemy, Inc. System and method for prioritizing individual streams within a multimedia flow
US7633870B2 (en) * 2005-04-18 2009-12-15 Symmetricom, Inc. Network forwarding device and method that forward timing packets through the device with a constant delay
US20070147435A1 (en) * 2005-12-23 2007-06-28 Bruce Hamilton Removing delay fluctuation in network time synchronization
US20070256078A1 (en) * 2006-04-28 2007-11-01 Falk Nathan B Resource reservation system, method and program product used in distributed cluster environments
JP5148613B2 (en) * 2006-08-22 2013-02-20 ジュニパー ネットワークス, インコーポレイテッド Apparatus and method for synchronized delivery of packet services on a delivery network

Also Published As

Publication number Publication date
US7590061B2 (en) 2009-09-15
EP3319251A8 (en) 2018-07-18
CN101548494B (en) 2013-08-21
WO2008024818A3 (en) 2008-09-04
EP2090003B1 (en) 2017-12-13
WO2008024818A2 (en) 2008-02-28
EP3319251B1 (en) 2020-01-29
CA2661379A1 (en) 2008-02-28
EP2090003A2 (en) 2009-08-19
EP2090003A4 (en) 2012-11-28
JP2010502122A (en) 2010-01-21
JP5140079B2 (en) 2013-02-06
EP3319251A1 (en) 2018-05-09
CN101548494A (en) 2009-09-30
US20080089364A1 (en) 2008-04-17

Similar Documents

Publication Publication Date Title
CA2661379C (en) Apparatus and method of controlled delay packet forwarding
EP2817921B1 (en) Network devices with time aware medium access controller
US8068429B2 (en) Transmit scheduling
CN1668020B (en) Method, apparatus and system for guaranteed packet delivery times in asynchronous networks
EP2896170B1 (en) Method and apparatus for transmitting packets in accordance with ieee 802.1 qbv
WO2005101744A3 (en) Network delay control
US9391840B2 (en) Avoiding delayed data
WO2009134416A3 (en) Method and apparatus for performing congestion management
EP1811725A3 (en) Packet discard in a multiplexer
CA2440236A1 (en) Packet scheduling method and apparatus
EP1889417A2 (en) Method and apparatus for using meta-packets in a packet processing system
JP6045085B2 (en) Method and apparatus for arbitration of time sensitive data transmission
CN102754396B (en) Send method and the gateway device of data
EP3466001A1 (en) Media buffering
CN107547442A (en) Data transfer buffer queue distribution method and device
JP6266982B2 (en) Apparatus and method for receiving and forwarding data
US20220014485A1 (en) Signalling of Dejittering Buffer Capabilities for TSN Integration
EP4181480A1 (en) Data packet scheduling method and related apparatus
WO2021119675A2 (en) Guaranteed latency based forwarding
US8861514B1 (en) Method and apparatus for egress jitter pacer
CN115065646A (en) Message timing sending method and device based on software and hardware cooperation
CN103107955B (en) Packet Transport Network array dispatching method and device
US20150245289A1 (en) Device and Method For Improved DRX For Use With TCP
KR20040047088A (en) Traffic shaper for flow control of ethernet and method for flow control
Perathoner Analysis of EADS Case Study: Distributed Heterogeneous Communication System

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed

Effective date: 20190822