SlideShare a Scribd company logo
1 of 36
Download to read offline
Understanding 
              the Processing Delay of 
             Peer‐to‐Peer Relay Nodes

                     Kuan‐Ta Chen and Jing‐Kai Lou
           Institute of Information Science, Academia Sinica


IEEE/IFIP DSN 2008
Motivation

   Peer‐to‐peer relaying is commonly used
       Purpose
             overlay routing (for better quality)
             connection establishment (for peers behind NAT/firewall)
             data aggregation (lower bandwidth usage)
       Application
             Conferencing: 
             Video Streaming:



Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   2
The Problem
                                 currently relaying is achieved at 
                                         application‐level




                                                             (user space)
                                                     Application




                                               TCP implementation
         scheduling delay
                                              Network Interface Card
      (depending on workload 
          and scheduler)                                  (kernel space)

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   3
What We Do

       Measure the processing delays at relay nodes
       proposed a measurement methodology and performed a 
       large‐scale Internet measurement (> 1000 nodes)
       Understand the characteristics of processing delays
       unreliable and predictable
       Examine whether these processing delays degrade
       application quality
       yes, they can significantly affect VoIP quality


Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   4
Talk Progress

                Overview
                Measuring processing delay (PD)
                Large‐scale measurement
                PD characterization
                Impact of PD on VoIP quality
                Conclusion




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   5
Our Basic Method for Measuring PD
                                                 how much delay incurred?




           Sender                                                               Receiver

                                                   Relay node
   Assumptions
       No intentional delays at the relay node
       Source transmits packets with TCP
       TCP implementation is running at high priority, while application is 
       running at low priority
       Sender and receiver are colocated at the same place
Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes              6
The Idea


                              t1               TCP data packet

              Sender                            TCP ACK
                                                                                PD
                              t2

                                                                                     Relay node
                              t3                   Relayed packet


                 Receiver


                       PD = t3 ‐ t2  
        if network delay is approximately constant
Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes                     7
Verifying The Assumption:
     “Is TCP implemetation running at high priority?”
       LAN experiment
       Windows XP on commodity PC
       200‐byte packets sent at 30pkt/sec
       10 random movie clips to simulate workload
                           X: how much time relay packets are generated
                           Y: how much time ack packets are generated




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   8
The Problem of Our Basic Method


                              t1               TCP data packet

              Sender
                                                 TCP ACK                        PD

                              t2
                                                                                     Relay node
                              t3                   Relayed packet


                 Receiver


                 Network delays are NOT constant
                (mostly because of queueing delays)
                             t3 – t2 != PD
Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes                     9
Proposed Improvement: IPID Filtering
       Filter out seriously delayed packets
       IPID: the ID field of IP packets
             monotonically increasing
             infer the order of data packets generated by the sender 
             infer the order of ack packets generated by the relay node
             infer the order of relay packets generated by the relay node


       If any pair of packets is reordered along their transmission 
           discarding both packets
             LIS (longest increasing subsequence) algorithm 



Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   10
Some Common Network Reordering Scenarios




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   11
Effectiveness of IPID Filtering
       LAN experiments
       Evaluate the differences between measured PD and true PD

                Average error of inferred PD                 Maximum error of inferred PD




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes               12
Talk Progress

                Overview
                Measuring processing delay (PD)
                Large‐scale measurement
                PD characterization
                Impact of PD on VoIP quality
                Conclusion




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   13
Large‐Scale Measurement

       Goal: To understand PD at real‐life relay nodes


       Testbed: Skype
             > 200 thousands super nodes available anytime
             Skype finds a usable relay node automatically if the caller 
             cannot reach the calle
             We can force Skype to pick an alternate super node for 
             relaying a VoIP call



Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   14
Collection Methodology
       Automatically call establishment and drop (10 min each)
       Human speech recordings form Open Speech Repository
       Use firewall to block caller <‐> callee direct connection
       We block used relay nodes to force Skype find a new one

                                                                TCP packet

      play sound >>                                             TCP ACK


                                                               Relayed packet   relay node
                                                                                (chosen by Skype)
        traffic capture


Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes                       15
Geographical Diversity of Observed Relay Nodes




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   16
Call Information



                     On average, data packets incur 9 ms PD


                          Estimated Processing Delays



              On average, maximum PD is around 240 ms

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   17
Talk Progress

                Overview
                Measuring processing delay (PD)
                Large‐scale measurement
                PD characterization
                Impact of PD on VoIP quality
                Conclusion




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   18
A Classification of PD Patterns




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   19
A Classification of PD Patterns (1)
                             Typical Processing Delays




              variation of PDs is small 
              magnitude is rarely higher than 20 ms
              the relay node is lightly‐loaded and the computer is not in use

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   20
A Classification of PD Patterns (2)
                              Varible Processing Delays




              PDs are stable most of time, but occasionally very different
              e.g., the PDs of call 561 are relatively high during the 250–450 ms 
              period, which is likely due to a person using the computer, or an 
              application with a time‐varying workload is running.
Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes        21
A Classification of PD Patterns (3)
                         Level‐shifted Processing Delays




              The levels of PDs are increased or decreased by a significant magnitude, 
              say, larger than 10 ms
              likely a heavily loaded task starts or stops running on the relay node

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes             22
A Classification of PD Patterns (4)
                              Periodic Processing Delays




              Bursts of high PDs occur at regular intervals, possibly because of the 
              behavior of an application.
              e.g., the 1‐minute interval in Call 214 may be caused by an email 
              notification program with a one‐minute check interval.

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes           23
A Classification of PD Patterns (5)
                              Loaded Processing Delays




              The level of PDs remains large, say 100 ms or higher.
              the relay node should be running computation‐ or I/O‐ intensive 
              applications

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes    24
Busy Levels

       The level of workload on the relay node
       95% percentile of PD within a 10‐second window
             Lightly‐load host: application always serviced when needed
             Even on a heavily load machine, the PD incurs by relay packets 
             are not always large
                  A packet arrives just before the application’s execution quantum    get 
                  serviced immediately
                  otherwise          has to wait some time

       If busy level changes > 10 ms in successive 10‐second 
       windows  unstable relay nodes

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes            25
Average Ratios of All Relay Nodes and Unstable 
                       Relay nodes




       Unstable nodes are mostly observed in work hours at local time
Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   26
Talk Progress

                Overview
                Measuring processing delay (PD)
                Large‐scale measurement
                PD characterization
                Impact of PD on VoIP quality
                Conclusion




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   27
Impact of PD on VoIP Quality

       p2p relaying is commonly used by VoIP applications
             bypass firewall/NAT
             network latency may be reduced by overlay routing
             VoIP bandwidth requirement is not high, e.g., 32 Kbps


       Use trace‐driven simulations to assess the impact of PD
             combine different network delays and processing delays
             simulate VoIP calls with and without processing delays
             examine their differences in VoIP quality


Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   28
Methodology
       Measuring VoIP quality degradation
             ITU‐T E‐model (G.711) based on delay and loss rate
             yields a R‐score ranges from 0 ‐‐ 100
             R‐score > 80         satisfactory
             R‐score < 70         unacceptable
       Two classes of VoIP playout buffer sizing schemes
             static buffer (60 ms according to Skype)
             adaptive buffer (according to Ramjee INFOCOM’94)
                  size = mean delay + 4 x standard deviation of delays
                  mean and std dev are derived from EWMA processes
       50,000 random samples from 1,243,225 (1,115 x 1,115) possible 
       configurations

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   29
R‐scores Decrease due to PD
            20% of calls incur significant                     40% and 60% of calls incur significant
            average R‐score decrease                           maximum R‐score decrease




        PD leads to larger playout buffer that 
        leads to lower e2e packet loss rate

Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes                           30
Original R‐scores vs. Average R‐scores




                                                                 more degradation than static buffer 
                                                                 with original scores >= 40
                                                                 1. higher scores => lower net delay
                                                                 2. PD impact buffer size more




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes                           31
Impact of Busy Levels
     What busy levels of PD would significantly impact VoIP quality?




                                busy level > 20 ms 
                                 significant quality 
                                  degradation




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   32
Busy Period Characterization
       We define a node as busy when its busy level is higher than 20 ms
       23% of relay nodes were ever busy during a 10‐minute call




                               mean: 18 sec                                     mean: 25 sec
                        65% shorter than 10 sec




             The nodes tend to switch between busy and non‐busy states frequently
Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes                  33
Summary

       consider a hidden aspect of peer‐to‐peer relaying ‐‐‐
       processing delays at relay nodes
       PD can be determental to VoIP quality
       we should avoid a relay node with a busy level higher 
       than 20 ms
       we have to monitor the processing delays of a relay 
       node continuously (like we do for the network delays)




Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes   34
Questions?




IEEE/IFIP DSN 2008
Thank You!



                       Kuan‐Ta Chen (Chun‐Yang Chen)

                     http://www.iis.sinica.edu.tw/~ktchen

IEEE/IFIP DSN 2008

More Related Content

What's hot

Transport protocols
Transport protocolsTransport protocols
Transport protocolstrupti patil
 
DDS over Low Bandwidth Data Links - Connext Conf London October 2014
DDS over Low Bandwidth Data Links - Connext Conf London October 2014DDS over Low Bandwidth Data Links - Connext Conf London October 2014
DDS over Low Bandwidth Data Links - Connext Conf London October 2014Jaime Martin Losa
 
Optimization of Low-efficiency Traffic in OpenFlow Software Defined Networks
Optimization of Low-efficiency Traffic in OpenFlowSoftware Defined NetworksOptimization of Low-efficiency Traffic in OpenFlowSoftware Defined Networks
Optimization of Low-efficiency Traffic in OpenFlow Software Defined NetworksJose Saldana
 
Understanding Low And Scalable Mpi Latency
Understanding Low And Scalable Mpi LatencyUnderstanding Low And Scalable Mpi Latency
Understanding Low And Scalable Mpi Latencyseiland
 
Skype Video Responsiveness
Skype Video ResponsivenessSkype Video Responsiveness
Skype Video Responsivenesssoohyunc
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design reportAbhishek Datta
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design reportRaj Gupta
 
Adv multimedia2k7 1_s
Adv multimedia2k7 1_sAdv multimedia2k7 1_s
Adv multimedia2k7 1_sKevin Man
 
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...Mark J. Feldman
 
Improving Distributed TCP Caching for Wireless Sensor Networks
Improving Distributed TCP Caching for Wireless Sensor NetworksImproving Distributed TCP Caching for Wireless Sensor Networks
Improving Distributed TCP Caching for Wireless Sensor NetworksAhmed Ayadi
 
Motion Vector Recovery for Real-time H.264 Video Streams
Motion Vector Recovery for Real-time H.264 Video StreamsMotion Vector Recovery for Real-time H.264 Video Streams
Motion Vector Recovery for Real-time H.264 Video StreamsIDES Editor
 
Vansteen communication
Vansteen communicationVansteen communication
Vansteen communicationgidi899
 
Investigating the Use of Synchronized Clocks in TCP Congestion Control
Investigating the Use of Synchronized Clocks in TCP Congestion ControlInvestigating the Use of Synchronized Clocks in TCP Congestion Control
Investigating the Use of Synchronized Clocks in TCP Congestion ControlMichele Weigle
 
High performance browser networking ch1,2,3
High performance browser networking ch1,2,3High performance browser networking ch1,2,3
High performance browser networking ch1,2,3Seung-Bum Lee
 
DIY Jarvis All Things Open 2019
DIY Jarvis All Things Open 2019DIY Jarvis All Things Open 2019
DIY Jarvis All Things Open 2019Wes Widner
 

What's hot (20)

Transport protocols
Transport protocolsTransport protocols
Transport protocols
 
DDS over Low Bandwidth Data Links - Connext Conf London October 2014
DDS over Low Bandwidth Data Links - Connext Conf London October 2014DDS over Low Bandwidth Data Links - Connext Conf London October 2014
DDS over Low Bandwidth Data Links - Connext Conf London October 2014
 
Optimization of Low-efficiency Traffic in OpenFlow Software Defined Networks
Optimization of Low-efficiency Traffic in OpenFlowSoftware Defined NetworksOptimization of Low-efficiency Traffic in OpenFlowSoftware Defined Networks
Optimization of Low-efficiency Traffic in OpenFlow Software Defined Networks
 
Lecture9
Lecture9Lecture9
Lecture9
 
Understanding Low And Scalable Mpi Latency
Understanding Low And Scalable Mpi LatencyUnderstanding Low And Scalable Mpi Latency
Understanding Low And Scalable Mpi Latency
 
Skype Video Responsiveness
Skype Video ResponsivenessSkype Video Responsiveness
Skype Video Responsiveness
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design report
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design report
 
Adv multimedia2k7 1_s
Adv multimedia2k7 1_sAdv multimedia2k7 1_s
Adv multimedia2k7 1_s
 
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...Cruz:Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
Cruz: Application-Transparent Distributed Checkpoint-Restart on Standard Oper...
 
Tcp ip
Tcp ipTcp ip
Tcp ip
 
Rtp
RtpRtp
Rtp
 
Improving Distributed TCP Caching for Wireless Sensor Networks
Improving Distributed TCP Caching for Wireless Sensor NetworksImproving Distributed TCP Caching for Wireless Sensor Networks
Improving Distributed TCP Caching for Wireless Sensor Networks
 
Motion Vector Recovery for Real-time H.264 Video Streams
Motion Vector Recovery for Real-time H.264 Video StreamsMotion Vector Recovery for Real-time H.264 Video Streams
Motion Vector Recovery for Real-time H.264 Video Streams
 
Vansteen communication
Vansteen communicationVansteen communication
Vansteen communication
 
Investigating the Use of Synchronized Clocks in TCP Congestion Control
Investigating the Use of Synchronized Clocks in TCP Congestion ControlInvestigating the Use of Synchronized Clocks in TCP Congestion Control
Investigating the Use of Synchronized Clocks in TCP Congestion Control
 
High performance browser networking ch1,2,3
High performance browser networking ch1,2,3High performance browser networking ch1,2,3
High performance browser networking ch1,2,3
 
Rtp
RtpRtp
Rtp
 
Sania rtp
Sania rtpSania rtp
Sania rtp
 
DIY Jarvis All Things Open 2019
DIY Jarvis All Things Open 2019DIY Jarvis All Things Open 2019
DIY Jarvis All Things Open 2019
 

Viewers also liked

Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...
Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...
Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...Christopher Burgess
 
Impact of IRS Processing Delay on Arkansas Tax Filing
Impact of IRS Processing Delay on Arkansas Tax FilingImpact of IRS Processing Delay on Arkansas Tax Filing
Impact of IRS Processing Delay on Arkansas Tax Filingtaxman taxman
 
Nidec asi service partial discharge basic diagnostic
Nidec asi service partial discharge basic diagnosticNidec asi service partial discharge basic diagnostic
Nidec asi service partial discharge basic diagnosticNidec Corporation
 
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221KTH, 케이티하이텔
 
Partial Discharge Detection Products by EA Technology
Partial Discharge Detection Products by EA TechnologyPartial Discharge Detection Products by EA Technology
Partial Discharge Detection Products by EA TechnologyRyan McFallo
 
정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)JP Jung
 
Nav 6 RADAR ARPA
Nav 6 RADAR ARPANav 6 RADAR ARPA
Nav 6 RADAR ARPA2MRosas
 
ENKI: Access Control for Encrypted Query Processing
ENKI: Access Control for Encrypted Query ProcessingENKI: Access Control for Encrypted Query Processing
ENKI: Access Control for Encrypted Query ProcessingMateus S. H. Cruz
 
Japanese Video Game Market Overview 2012
Japanese Video Game Market Overview 2012Japanese Video Game Market Overview 2012
Japanese Video Game Market Overview 2012GMO Cloud
 

Viewers also liked (11)

In Memory OLTP
In Memory OLTP In Memory OLTP
In Memory OLTP
 
Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...
Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...
Case Processing Delays and Tax Account Errors Increased Hardship for Victims ...
 
Impact of IRS Processing Delay on Arkansas Tax Filing
Impact of IRS Processing Delay on Arkansas Tax FilingImpact of IRS Processing Delay on Arkansas Tax Filing
Impact of IRS Processing Delay on Arkansas Tax Filing
 
Nidec asi service partial discharge basic diagnostic
Nidec asi service partial discharge basic diagnosticNidec asi service partial discharge basic diagnostic
Nidec asi service partial discharge basic diagnostic
 
code analysis for c++
code analysis for c++code analysis for c++
code analysis for c++
 
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221
[발표자료]안드로메다에서 온 디자이너이야기 5차 next_web_지훈_20130221
 
Partial Discharge Detection Products by EA Technology
Partial Discharge Detection Products by EA TechnologyPartial Discharge Detection Products by EA Technology
Partial Discharge Detection Products by EA Technology
 
정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)
 
Nav 6 RADAR ARPA
Nav 6 RADAR ARPANav 6 RADAR ARPA
Nav 6 RADAR ARPA
 
ENKI: Access Control for Encrypted Query Processing
ENKI: Access Control for Encrypted Query ProcessingENKI: Access Control for Encrypted Query Processing
ENKI: Access Control for Encrypted Query Processing
 
Japanese Video Game Market Overview 2012
Japanese Video Game Market Overview 2012Japanese Video Game Market Overview 2012
Japanese Video Game Market Overview 2012
 

Similar to Toward an Understanding of the Processing Delay of Peer-to-Peer Relay Nodes

Network and TCP performance relationship workshop
Network and TCP performance relationship workshopNetwork and TCP performance relationship workshop
Network and TCP performance relationship workshopKae Hsu
 
6TiSCH @Telecom Bretagne 2015
6TiSCH @Telecom Bretagne 20156TiSCH @Telecom Bretagne 2015
6TiSCH @Telecom Bretagne 2015Pascal Thubert
 
Computer network (13)
Computer network (13)Computer network (13)
Computer network (13)NYversity
 
Predictable Packet Lossand Proportional Buffer Scaling Mechanism
Predictable Packet Lossand Proportional Buffer Scaling MechanismPredictable Packet Lossand Proportional Buffer Scaling Mechanism
Predictable Packet Lossand Proportional Buffer Scaling MechanismIDES Editor
 
Somerdata AROW Data Diode
Somerdata AROW Data DiodeSomerdata AROW Data Diode
Somerdata AROW Data DiodeSomerdata
 
Lec 4 and_5
Lec 4 and_5Lec 4 and_5
Lec 4 and_5hz3012
 
Analytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum ThroughputAnalytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum ThroughputIJLT EMAS
 
Improving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PImproving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PIDES Editor
 
Redesigning MPTCP in Edge clouds
Redesigning MPTCP in Edge cloudsRedesigning MPTCP in Edge clouds
Redesigning MPTCP in Edge cloudsNitinder Mohan
 
DIANA: Scenarios for QoS based integration of IP and ATM
DIANA: Scenarios for QoS based integration of IP and ATMDIANA: Scenarios for QoS based integration of IP and ATM
DIANA: Scenarios for QoS based integration of IP and ATMJohn Loughney
 
MPLS Deployment Chapter 1 - Basic
MPLS Deployment Chapter 1 - BasicMPLS Deployment Chapter 1 - Basic
MPLS Deployment Chapter 1 - BasicEricsson
 
Wireshark
WiresharkWireshark
Wiresharkbtohara
 

Similar to Toward an Understanding of the Processing Delay of Peer-to-Peer Relay Nodes (20)

Lecture04 H
Lecture04 HLecture04 H
Lecture04 H
 
Network and TCP performance relationship workshop
Network and TCP performance relationship workshopNetwork and TCP performance relationship workshop
Network and TCP performance relationship workshop
 
Ch05
Ch05Ch05
Ch05
 
6TiSCH @Telecom Bretagne 2015
6TiSCH @Telecom Bretagne 20156TiSCH @Telecom Bretagne 2015
6TiSCH @Telecom Bretagne 2015
 
Computer network (13)
Computer network (13)Computer network (13)
Computer network (13)
 
Predictable Packet Lossand Proportional Buffer Scaling Mechanism
Predictable Packet Lossand Proportional Buffer Scaling MechanismPredictable Packet Lossand Proportional Buffer Scaling Mechanism
Predictable Packet Lossand Proportional Buffer Scaling Mechanism
 
Somerdata AROW Data Diode
Somerdata AROW Data DiodeSomerdata AROW Data Diode
Somerdata AROW Data Diode
 
TCP vs UDP / Sumiet23
TCP vs UDP / Sumiet23TCP vs UDP / Sumiet23
TCP vs UDP / Sumiet23
 
Userspace networking
Userspace networkingUserspace networking
Userspace networking
 
Lec 4 and_5
Lec 4 and_5Lec 4 and_5
Lec 4 and_5
 
L2 tp
L2 tpL2 tp
L2 tp
 
L2 tp
L2 tpL2 tp
L2 tp
 
109 113
109 113109 113
109 113
 
Analytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum ThroughputAnalytical Research of TCP Variants in Terms of Maximum Throughput
Analytical Research of TCP Variants in Terms of Maximum Throughput
 
Improving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-PImproving Performance of TCP in Wireless Environment using TCP-P
Improving Performance of TCP in Wireless Environment using TCP-P
 
Redesigning MPTCP in Edge clouds
Redesigning MPTCP in Edge cloudsRedesigning MPTCP in Edge clouds
Redesigning MPTCP in Edge clouds
 
DIANA: Scenarios for QoS based integration of IP and ATM
DIANA: Scenarios for QoS based integration of IP and ATMDIANA: Scenarios for QoS based integration of IP and ATM
DIANA: Scenarios for QoS based integration of IP and ATM
 
MPLS Deployment Chapter 1 - Basic
MPLS Deployment Chapter 1 - BasicMPLS Deployment Chapter 1 - Basic
MPLS Deployment Chapter 1 - Basic
 
Mk ppt chapter 5
Mk ppt chapter 5Mk ppt chapter 5
Mk ppt chapter 5
 
Wireshark
WiresharkWireshark
Wireshark
 

More from Academia Sinica

Computational Social Science:The Collaborative Futures of Big Data, Computer ...
Computational Social Science:The Collaborative Futures of Big Data, Computer ...Computational Social Science:The Collaborative Futures of Big Data, Computer ...
Computational Social Science:The Collaborative Futures of Big Data, Computer ...Academia Sinica
 
Games on Demand: Are We There Yet?
Games on Demand: Are We There Yet?Games on Demand: Are We There Yet?
Games on Demand: Are We There Yet?Academia Sinica
 
Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...
Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...
Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...Academia Sinica
 
Cloud Gaming Onward: Research Opportunities and Outlook
Cloud Gaming Onward: Research Opportunities and OutlookCloud Gaming Onward: Research Opportunities and Outlook
Cloud Gaming Onward: Research Opportunities and OutlookAcademia Sinica
 
Quantifying User Satisfaction in Mobile Cloud Games
Quantifying User Satisfaction in Mobile Cloud GamesQuantifying User Satisfaction in Mobile Cloud Games
Quantifying User Satisfaction in Mobile Cloud GamesAcademia Sinica
 
量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值
量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值
量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值Academia Sinica
 
On The Battle between Online Gamers and Lags
On The Battle between Online Gamers and LagsOn The Battle between Online Gamers and Lags
On The Battle between Online Gamers and LagsAcademia Sinica
 
Understanding The Performance of Thin-Client Gaming
Understanding The Performance of Thin-Client GamingUnderstanding The Performance of Thin-Client Gaming
Understanding The Performance of Thin-Client GamingAcademia Sinica
 
Quantifying QoS Requirements of Network Services: A Cheat-Proof Framework
Quantifying QoS Requirements of Network Services: A Cheat-Proof FrameworkQuantifying QoS Requirements of Network Services: A Cheat-Proof Framework
Quantifying QoS Requirements of Network Services: A Cheat-Proof FrameworkAcademia Sinica
 
Online Game QoE Evaluation using Paired Comparisons
Online Game QoE Evaluation using Paired ComparisonsOnline Game QoE Evaluation using Paired Comparisons
Online Game QoE Evaluation using Paired ComparisonsAcademia Sinica
 
GamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming SystemGamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming SystemAcademia Sinica
 
Are All Games Equally Cloud-Gaming-Friendly? An Electromyographic Approach
Are All Games Equally Cloud-Gaming-Friendly? An Electromyographic ApproachAre All Games Equally Cloud-Gaming-Friendly? An Electromyographic Approach
Are All Games Equally Cloud-Gaming-Friendly? An Electromyographic ApproachAcademia Sinica
 
Forecasting Online Game Addictiveness
Forecasting Online Game AddictivenessForecasting Online Game Addictiveness
Forecasting Online Game AddictivenessAcademia Sinica
 
Identifying MMORPG Bots: A Traffic Analysis Approach
Identifying MMORPG Bots: A Traffic Analysis ApproachIdentifying MMORPG Bots: A Traffic Analysis Approach
Identifying MMORPG Bots: A Traffic Analysis ApproachAcademia Sinica
 
Inferring Speech Activity from Encrypted Skype Traffic
Inferring Speech Activity from Encrypted Skype TrafficInferring Speech Activity from Encrypted Skype Traffic
Inferring Speech Activity from Encrypted Skype TrafficAcademia Sinica
 
Game Bot Detection Based on Avatar Trajectory
Game Bot Detection Based on Avatar TrajectoryGame Bot Detection Based on Avatar Trajectory
Game Bot Detection Based on Avatar TrajectoryAcademia Sinica
 
Improving Reliability of Web 2.0-based Rating Systems Using Per-user Trustiness
Improving Reliability of Web 2.0-based Rating Systems Using Per-user TrustinessImproving Reliability of Web 2.0-based Rating Systems Using Per-user Trustiness
Improving Reliability of Web 2.0-based Rating Systems Using Per-user TrustinessAcademia Sinica
 
A Collusion-Resistant Automation Scheme for Social Moderation Systems
A Collusion-Resistant Automation Scheme for Social Moderation SystemsA Collusion-Resistant Automation Scheme for Social Moderation Systems
A Collusion-Resistant Automation Scheme for Social Moderation SystemsAcademia Sinica
 
Tuning Skype’s Redundancy Control Algorithm for User Satisfaction
Tuning Skype’s Redundancy Control Algorithm for User SatisfactionTuning Skype’s Redundancy Control Algorithm for User Satisfaction
Tuning Skype’s Redundancy Control Algorithm for User SatisfactionAcademia Sinica
 
Network Game Design: Hints and Implications of Player Interaction
Network Game Design: Hints and Implications of Player InteractionNetwork Game Design: Hints and Implications of Player Interaction
Network Game Design: Hints and Implications of Player InteractionAcademia Sinica
 

More from Academia Sinica (20)

Computational Social Science:The Collaborative Futures of Big Data, Computer ...
Computational Social Science:The Collaborative Futures of Big Data, Computer ...Computational Social Science:The Collaborative Futures of Big Data, Computer ...
Computational Social Science:The Collaborative Futures of Big Data, Computer ...
 
Games on Demand: Are We There Yet?
Games on Demand: Are We There Yet?Games on Demand: Are We There Yet?
Games on Demand: Are We There Yet?
 
Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...
Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...
Detecting In-Situ Identity Fraud on Social Network Services: A Case Study on ...
 
Cloud Gaming Onward: Research Opportunities and Outlook
Cloud Gaming Onward: Research Opportunities and OutlookCloud Gaming Onward: Research Opportunities and Outlook
Cloud Gaming Onward: Research Opportunities and Outlook
 
Quantifying User Satisfaction in Mobile Cloud Games
Quantifying User Satisfaction in Mobile Cloud GamesQuantifying User Satisfaction in Mobile Cloud Games
Quantifying User Satisfaction in Mobile Cloud Games
 
量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值
量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值
量化「樂趣」-以心理生理量測探究數位娛樂商品之市場價值
 
On The Battle between Online Gamers and Lags
On The Battle between Online Gamers and LagsOn The Battle between Online Gamers and Lags
On The Battle between Online Gamers and Lags
 
Understanding The Performance of Thin-Client Gaming
Understanding The Performance of Thin-Client GamingUnderstanding The Performance of Thin-Client Gaming
Understanding The Performance of Thin-Client Gaming
 
Quantifying QoS Requirements of Network Services: A Cheat-Proof Framework
Quantifying QoS Requirements of Network Services: A Cheat-Proof FrameworkQuantifying QoS Requirements of Network Services: A Cheat-Proof Framework
Quantifying QoS Requirements of Network Services: A Cheat-Proof Framework
 
Online Game QoE Evaluation using Paired Comparisons
Online Game QoE Evaluation using Paired ComparisonsOnline Game QoE Evaluation using Paired Comparisons
Online Game QoE Evaluation using Paired Comparisons
 
GamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming SystemGamingAnywhere: An Open Cloud Gaming System
GamingAnywhere: An Open Cloud Gaming System
 
Are All Games Equally Cloud-Gaming-Friendly? An Electromyographic Approach
Are All Games Equally Cloud-Gaming-Friendly? An Electromyographic ApproachAre All Games Equally Cloud-Gaming-Friendly? An Electromyographic Approach
Are All Games Equally Cloud-Gaming-Friendly? An Electromyographic Approach
 
Forecasting Online Game Addictiveness
Forecasting Online Game AddictivenessForecasting Online Game Addictiveness
Forecasting Online Game Addictiveness
 
Identifying MMORPG Bots: A Traffic Analysis Approach
Identifying MMORPG Bots: A Traffic Analysis ApproachIdentifying MMORPG Bots: A Traffic Analysis Approach
Identifying MMORPG Bots: A Traffic Analysis Approach
 
Inferring Speech Activity from Encrypted Skype Traffic
Inferring Speech Activity from Encrypted Skype TrafficInferring Speech Activity from Encrypted Skype Traffic
Inferring Speech Activity from Encrypted Skype Traffic
 
Game Bot Detection Based on Avatar Trajectory
Game Bot Detection Based on Avatar TrajectoryGame Bot Detection Based on Avatar Trajectory
Game Bot Detection Based on Avatar Trajectory
 
Improving Reliability of Web 2.0-based Rating Systems Using Per-user Trustiness
Improving Reliability of Web 2.0-based Rating Systems Using Per-user TrustinessImproving Reliability of Web 2.0-based Rating Systems Using Per-user Trustiness
Improving Reliability of Web 2.0-based Rating Systems Using Per-user Trustiness
 
A Collusion-Resistant Automation Scheme for Social Moderation Systems
A Collusion-Resistant Automation Scheme for Social Moderation SystemsA Collusion-Resistant Automation Scheme for Social Moderation Systems
A Collusion-Resistant Automation Scheme for Social Moderation Systems
 
Tuning Skype’s Redundancy Control Algorithm for User Satisfaction
Tuning Skype’s Redundancy Control Algorithm for User SatisfactionTuning Skype’s Redundancy Control Algorithm for User Satisfaction
Tuning Skype’s Redundancy Control Algorithm for User Satisfaction
 
Network Game Design: Hints and Implications of Player Interaction
Network Game Design: Hints and Implications of Player InteractionNetwork Game Design: Hints and Implications of Player Interaction
Network Game Design: Hints and Implications of Player Interaction
 

Recently uploaded

Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 

Recently uploaded (20)

Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 

Toward an Understanding of the Processing Delay of Peer-to-Peer Relay Nodes

  • 1. Understanding  the Processing Delay of  Peer‐to‐Peer Relay Nodes Kuan‐Ta Chen and Jing‐Kai Lou Institute of Information Science, Academia Sinica IEEE/IFIP DSN 2008
  • 2. Motivation Peer‐to‐peer relaying is commonly used Purpose overlay routing (for better quality) connection establishment (for peers behind NAT/firewall) data aggregation (lower bandwidth usage) Application Conferencing:  Video Streaming: Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 2
  • 3. The Problem currently relaying is achieved at  application‐level (user space) Application TCP implementation scheduling delay Network Interface Card (depending on workload  and scheduler) (kernel space) Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 3
  • 4. What We Do Measure the processing delays at relay nodes proposed a measurement methodology and performed a  large‐scale Internet measurement (> 1000 nodes) Understand the characteristics of processing delays unreliable and predictable Examine whether these processing delays degrade application quality yes, they can significantly affect VoIP quality Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 4
  • 5. Talk Progress Overview Measuring processing delay (PD) Large‐scale measurement PD characterization Impact of PD on VoIP quality Conclusion Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 5
  • 6. Our Basic Method for Measuring PD how much delay incurred? Sender Receiver Relay node Assumptions No intentional delays at the relay node Source transmits packets with TCP TCP implementation is running at high priority, while application is  running at low priority Sender and receiver are colocated at the same place Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 6
  • 7. The Idea t1 TCP data packet Sender TCP ACK PD t2 Relay node t3 Relayed packet Receiver PD = t3 ‐ t2   if network delay is approximately constant Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 7
  • 8. Verifying The Assumption: “Is TCP implemetation running at high priority?” LAN experiment Windows XP on commodity PC 200‐byte packets sent at 30pkt/sec 10 random movie clips to simulate workload X: how much time relay packets are generated Y: how much time ack packets are generated Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 8
  • 9. The Problem of Our Basic Method t1 TCP data packet Sender TCP ACK PD t2 Relay node t3 Relayed packet Receiver Network delays are NOT constant (mostly because of queueing delays) t3 – t2 != PD Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 9
  • 10. Proposed Improvement: IPID Filtering Filter out seriously delayed packets IPID: the ID field of IP packets monotonically increasing infer the order of data packets generated by the sender  infer the order of ack packets generated by the relay node infer the order of relay packets generated by the relay node If any pair of packets is reordered along their transmission  discarding both packets LIS (longest increasing subsequence) algorithm  Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 10
  • 12. Effectiveness of IPID Filtering LAN experiments Evaluate the differences between measured PD and true PD Average error of inferred PD Maximum error of inferred PD Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 12
  • 13. Talk Progress Overview Measuring processing delay (PD) Large‐scale measurement PD characterization Impact of PD on VoIP quality Conclusion Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 13
  • 14. Large‐Scale Measurement Goal: To understand PD at real‐life relay nodes Testbed: Skype > 200 thousands super nodes available anytime Skype finds a usable relay node automatically if the caller  cannot reach the calle We can force Skype to pick an alternate super node for  relaying a VoIP call Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 14
  • 15. Collection Methodology Automatically call establishment and drop (10 min each) Human speech recordings form Open Speech Repository Use firewall to block caller <‐> callee direct connection We block used relay nodes to force Skype find a new one TCP packet play sound >> TCP ACK Relayed packet relay node (chosen by Skype) traffic capture Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 15
  • 17. Call Information On average, data packets incur 9 ms PD Estimated Processing Delays On average, maximum PD is around 240 ms Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 17
  • 18. Talk Progress Overview Measuring processing delay (PD) Large‐scale measurement PD characterization Impact of PD on VoIP quality Conclusion Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 18
  • 20. A Classification of PD Patterns (1) Typical Processing Delays variation of PDs is small  magnitude is rarely higher than 20 ms the relay node is lightly‐loaded and the computer is not in use Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 20
  • 21. A Classification of PD Patterns (2) Varible Processing Delays PDs are stable most of time, but occasionally very different e.g., the PDs of call 561 are relatively high during the 250–450 ms  period, which is likely due to a person using the computer, or an  application with a time‐varying workload is running. Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 21
  • 22. A Classification of PD Patterns (3) Level‐shifted Processing Delays The levels of PDs are increased or decreased by a significant magnitude,  say, larger than 10 ms likely a heavily loaded task starts or stops running on the relay node Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 22
  • 23. A Classification of PD Patterns (4) Periodic Processing Delays Bursts of high PDs occur at regular intervals, possibly because of the  behavior of an application. e.g., the 1‐minute interval in Call 214 may be caused by an email  notification program with a one‐minute check interval. Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 23
  • 24. A Classification of PD Patterns (5) Loaded Processing Delays The level of PDs remains large, say 100 ms or higher. the relay node should be running computation‐ or I/O‐ intensive  applications Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 24
  • 25. Busy Levels The level of workload on the relay node 95% percentile of PD within a 10‐second window Lightly‐load host: application always serviced when needed Even on a heavily load machine, the PD incurs by relay packets  are not always large A packet arrives just before the application’s execution quantum  get  serviced immediately otherwise  has to wait some time If busy level changes > 10 ms in successive 10‐second  windows  unstable relay nodes Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 25
  • 26. Average Ratios of All Relay Nodes and Unstable  Relay nodes Unstable nodes are mostly observed in work hours at local time Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 26
  • 27. Talk Progress Overview Measuring processing delay (PD) Large‐scale measurement PD characterization Impact of PD on VoIP quality Conclusion Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 27
  • 28. Impact of PD on VoIP Quality p2p relaying is commonly used by VoIP applications bypass firewall/NAT network latency may be reduced by overlay routing VoIP bandwidth requirement is not high, e.g., 32 Kbps Use trace‐driven simulations to assess the impact of PD combine different network delays and processing delays simulate VoIP calls with and without processing delays examine their differences in VoIP quality Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 28
  • 29. Methodology Measuring VoIP quality degradation ITU‐T E‐model (G.711) based on delay and loss rate yields a R‐score ranges from 0 ‐‐ 100 R‐score > 80  satisfactory R‐score < 70  unacceptable Two classes of VoIP playout buffer sizing schemes static buffer (60 ms according to Skype) adaptive buffer (according to Ramjee INFOCOM’94) size = mean delay + 4 x standard deviation of delays mean and std dev are derived from EWMA processes 50,000 random samples from 1,243,225 (1,115 x 1,115) possible  configurations Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 29
  • 30. R‐scores Decrease due to PD 20% of calls incur significant  40% and 60% of calls incur significant average R‐score decrease maximum R‐score decrease PD leads to larger playout buffer that  leads to lower e2e packet loss rate Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 30
  • 31. Original R‐scores vs. Average R‐scores more degradation than static buffer  with original scores >= 40 1. higher scores => lower net delay 2. PD impact buffer size more Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 31
  • 32. Impact of Busy Levels What busy levels of PD would significantly impact VoIP quality? busy level > 20 ms  significant quality  degradation Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 32
  • 33. Busy Period Characterization We define a node as busy when its busy level is higher than 20 ms 23% of relay nodes were ever busy during a 10‐minute call mean: 18 sec mean: 25 sec 65% shorter than 10 sec The nodes tend to switch between busy and non‐busy states frequently Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 33
  • 34. Summary consider a hidden aspect of peer‐to‐peer relaying ‐‐‐ processing delays at relay nodes PD can be determental to VoIP quality we should avoid a relay node with a busy level higher  than 20 ms we have to monitor the processing delays of a relay  node continuously (like we do for the network delays) Kuan‐Ta Chen / Understanding the Processing Delay of Peer‐to‐Peer Relay Nodes 34
  • 36. Thank You! Kuan‐Ta Chen (Chun‐Yang Chen) http://www.iis.sinica.edu.tw/~ktchen IEEE/IFIP DSN 2008