SlideShare a Scribd company logo
Lecture 10
Transport Protocol
        for
Networked Games
     29 March 2010


                     1
TCP or UDP ?



               2
Why use TCP?

• TCP provides reliable, in-order delivery
• TCP goes through most firewalls, UDP
  does not
• TCP manages connection for us


                                             3
Why not to use TCP?

• TCP incurs higher latency
• Don’t always need reliability and in-order
  delivery
• High header overhead


                                               4
position = 10
position = 13          X
position = 15

   Updated position not delivered to
 application until (outdated) lost packet
               is received

                                            5
A’s position = 10
B’s position = 13        X
C’s position = 15


   Some messages need not be delivered in
                sequence.


                                            6
Gestures from someone far away need
      not be received reliably.
                                      7
46%
of ShenZhou Online bandwidth is
     occupied by TCP header




                                  8
enet.cubik.org
 A library that provides
  reliability, sequencing,
connection managements
        over UDP

                             9
Delivery can be
stream-oriented (like TCP) or
message-oriented (like UDP)



                                10
Supports partial reliability

enet_packet_create (“abc”,
4, ENET_PACKET_FLAG_RELIABLE)




                                  11
Retransmission triggered by
  timeout-based on RTT




                              12
Data in queue are bundled into
 one packet if there is space




                                 13
enet.cubik.org

Portable, easy to use, but
still, most firewalls block
        UDP traffic

                             14
• Uses TCP: WoW, Lineage I/II,
 Guild Wars, Ragnarok Online,
 Anarchy Online, Mabinogi

• Uses UDP: EverQuest, SW
 Galaxies, City of Heroes, Ultima
 Online, Asherons Call, FFXI


                                    15
Need to study the use
of TCP for networked
        games


                        16
How to provide
reliability over UDP?


                        17
How slow is TCP, really?

Which part of TCP is the
root of slowness?

Can we fix TCP?

                           18
A Quick Review of TCP



                        19
s=100
s=200
s=300
s=400                     a=300

                          a=500




        TCP Delayed ACK
                                  20
TCP Spec: max 500ms delay
Most implementation: 200ms



                             21
Why delay ACK?
• reduce num of ACKs
• in case receiver wants to send data
  within 200ms (in which case it can
  piggyback the ACK with data)
• give sender time to buffer more data
  for sending (avoid silly window
  syndrome)

                                         22
s=100
s=200
s=300                             a=200
                      X
s=400
s=500                             a=200
                                  a=200
                                  a=200




s=200

        TCP Fast Retransmission
                                          23
Definition of Dup ACKs
in 4.4BSD and Stevens:
“pure ACK with no data”


                          24
RTO
            X

                      X

2xRTO




   TCP Timeout + Exponential Back-off
                                        25
RTO




      Spurious Retransmission

                                26
RTO estimation

Ei = 7Ei-1/8 + RTT/8
Vi = 3Vi-1/4 + |RTT-Ei-1|/4
RTO = max(Ei + 4Vi, 1s)

                              27
Linux’s RTO estimation

Ei = 7Ei-1/8 + RTT/8
Vi = 3Vi-1/4 + |RTT-Ei-1|/4
Wi = min(Vi, 50ms)
RTO = max(200ms, Ei+Wi)
                              28
delayed ACK

increase RTT

increase RTO
               29
Congestion Control



                     30
Window Size
                     Packet Loss




                                   Time
       TCP Congestion Control

                                          31
Congestion window
resets to 2 after an idle
    period (> RTO)


                            32
What does real game
 traffic look like?


                      33
low packet rate
small packet size


                    34
“Thin Streams”



                 35
36
Max Application Delay




            Max RTT


250ms
                         Avg RTT



                                   37
38
About 4 packets / sec



                        39
Average Payload:
  100 Bytes



                   40
Loss Rate 1%



               41
But some experience 6
    retransmissions


                        42
ShenZhou Online




                  43
44
45
46
“Thin Streams”



                 47
Findings 1:
Fast retransmission
  rarely triggered


                      48
In ShenZhou Online traces, fail
 to trigger fast retransmission
             because
  insufficient dup ACK (50%)
   interrupted by data (50%)


                                  49
50
51
Findings 2:
Delay due mostly to
      timeout


                      52
53
Findings 3:
Congestion window
 reset is frequent


                     54
55
12% - 18% of packets
 faces window reset


                       56
think..
think..
think..
click (tank attack here)
click (missile launch there)
click (charge soldiers)

   The last command is delayed as congestion
                 window = 2

                                               57
How to make TCP (or,
transport protocol) go
 faster in these games?


                          58
1. Remove exponential
       backoff


                        59
TO
      X
           X

TO




      TCP Timeout
                    60
2. Make RTO Smaller



                      61
make sure minimum
  RTO is not 1s


                    62
spurious retransmission
   is not disastrous


                          63
3. Make Fast Retransmit
         Faster


                          64
s=100
s=200
s=300                           a=200
                     X
s=400
s=500                           a=200
                                a=200
                                a=200

s=200



  Retransmit after one duplicate ACK
                                        65
4. Retransmission
     Bundling


                    66
X




Retransmit all unacknowledge data in queue
                                             67
5. Redundant Data
     Bundling


                    68
X
                                    a=300

                                    a=500




Send any unacknowledged segment in queue
  as long as there is space. Lost data gets
 recovered in the next transmission before
               retransmission.
                                              69
6. Turn off or reduce
    Delayed ACKs


                        70
Packet interarrival time
 on average > 200ms
(can’t combine two ACKs into one)




                                    71
7. Combine Thin
Streams into Thicker
      Stream


                       72
Server




Proxy




         73
TCP for Games

• remove exponential backoff
• reduce RTO
• make fast retransmit faster
• retransmit agressively
• don’t delay ACK
• combine into thick streams
                                74
Beyond TCP and UDP?



                      75
Ideal Transport Protocol for
           Games

• optional reliability
• optional order-of-delivery
• flexibility in organizing messages into
  different classes with different
  requirements



                                           76
SCTP
Stream Control Transport Protocol




                                    77
Multi-streaming: multiple
 independent streams




                            78
A stream can be either reliable or
          non-reliable




                                     79
Data from multiple streams can be
    bundled into one packets




                                    80
Message-oriented (like UDP)




                              81
Message can be flagged for
   unordered delivery




                            82
Ideal Transport Protocol for
           Games

• optional reliability
• optional order-of-delivery
• flexibility in organizing messages into
  different classes with different
  requirements



                                           83
SCTP for Games?



                  84
States of SCTP



• rumored to be in Vista
• available in FreeBSD 7 and Solaris 10
• lksctp project for Linux


                                          85

More Related Content

What's hot

BPF & Cilium - Turning Linux into a Microservices-aware Operating System
BPF  & Cilium - Turning Linux into a Microservices-aware Operating SystemBPF  & Cilium - Turning Linux into a Microservices-aware Operating System
BPF & Cilium - Turning Linux into a Microservices-aware Operating SystemThomas Graf
 
CloudStackユーザ会〜仮想ルータの謎に迫る
CloudStackユーザ会〜仮想ルータの謎に迫るCloudStackユーザ会〜仮想ルータの謎に迫る
CloudStackユーザ会〜仮想ルータの謎に迫るsamemoon
 
DPDK Summit 2015 - HP - Al Sanders
DPDK Summit 2015 - HP - Al SandersDPDK Summit 2015 - HP - Al Sanders
DPDK Summit 2015 - HP - Al SandersJim St. Leger
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stackHajime Tazaki
 
How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.Naoto MATSUMOTO
 
Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Hajime Tazaki
 
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...The Linux Foundation
 
The n00bs guide to ovs dpdk
The n00bs guide to ovs dpdkThe n00bs guide to ovs dpdk
The n00bs guide to ovs dpdkmarkdgray
 
Virtual Network Performance Challenge
Virtual Network Performance ChallengeVirtual Network Performance Challenge
Virtual Network Performance ChallengeStephen Hemminger
 
Enable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zunEnable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zunheut2008
 
Linux Bridging: Teaching an old dog new tricks
Linux Bridging: Teaching an old dog new tricksLinux Bridging: Teaching an old dog new tricks
Linux Bridging: Teaching an old dog new tricksStephen Hemminger
 
Accelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDKAccelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDKAlexander Shalimov
 
Lagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
Lagopus presentation on 14th Annual ON*VECTOR International Photonics WorkshopLagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
Lagopus presentation on 14th Annual ON*VECTOR International Photonics WorkshopLagopus SDN/OpenFlow switch
 
Virtualized network with openvswitch
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitchSim Janghoon
 
Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014Hajime Tazaki
 
DevConf 2014 Kernel Networking Walkthrough
DevConf 2014   Kernel Networking WalkthroughDevConf 2014   Kernel Networking Walkthrough
DevConf 2014 Kernel Networking WalkthroughThomas Graf
 
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDPDockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDPThomas Graf
 
DPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabMichelle Holley
 

What's hot (20)

mTCP使ってみた
mTCP使ってみたmTCP使ってみた
mTCP使ってみた
 
BPF & Cilium - Turning Linux into a Microservices-aware Operating System
BPF  & Cilium - Turning Linux into a Microservices-aware Operating SystemBPF  & Cilium - Turning Linux into a Microservices-aware Operating System
BPF & Cilium - Turning Linux into a Microservices-aware Operating System
 
Userspace networking
Userspace networkingUserspace networking
Userspace networking
 
CloudStackユーザ会〜仮想ルータの謎に迫る
CloudStackユーザ会〜仮想ルータの謎に迫るCloudStackユーザ会〜仮想ルータの謎に迫る
CloudStackユーザ会〜仮想ルータの謎に迫る
 
DPDK Summit 2015 - HP - Al Sanders
DPDK Summit 2015 - HP - Al SandersDPDK Summit 2015 - HP - Al Sanders
DPDK Summit 2015 - HP - Al Sanders
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stack
 
How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.How to Speak Intel DPDK KNI for Web Services.
How to Speak Intel DPDK KNI for Web Services.
 
Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)
 
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
XPDS13: On Paravirualizing TCP - Congestion Control on Xen VMs - Luwei Cheng,...
 
The n00bs guide to ovs dpdk
The n00bs guide to ovs dpdkThe n00bs guide to ovs dpdk
The n00bs guide to ovs dpdk
 
Virtual Network Performance Challenge
Virtual Network Performance ChallengeVirtual Network Performance Challenge
Virtual Network Performance Challenge
 
Enable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zunEnable DPDK and SR-IOV for containerized virtual network functions with zun
Enable DPDK and SR-IOV for containerized virtual network functions with zun
 
Linux Bridging: Teaching an old dog new tricks
Linux Bridging: Teaching an old dog new tricksLinux Bridging: Teaching an old dog new tricks
Linux Bridging: Teaching an old dog new tricks
 
Accelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDKAccelerating Neutron with Intel DPDK
Accelerating Neutron with Intel DPDK
 
Lagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
Lagopus presentation on 14th Annual ON*VECTOR International Photonics WorkshopLagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
Lagopus presentation on 14th Annual ON*VECTOR International Photonics Workshop
 
Virtualized network with openvswitch
Virtualized network with openvswitchVirtualized network with openvswitch
Virtualized network with openvswitch
 
Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014Direct Code Execution - LinuxCon Japan 2014
Direct Code Execution - LinuxCon Japan 2014
 
DevConf 2014 Kernel Networking Walkthrough
DevConf 2014   Kernel Networking WalkthroughDevConf 2014   Kernel Networking Walkthrough
DevConf 2014 Kernel Networking Walkthrough
 
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDPDockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
DockerCon 2017 - Cilium - Network and Application Security with BPF and XDP
 
DPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on Lab
 

Viewers also liked

Lecture 5
Lecture 5Lecture 5
Lecture 5ntpc08
 
TCP with delayed ack for wireless networks
TCP with delayed ack for wireless networksTCP with delayed ack for wireless networks
TCP with delayed ack for wireless networksambitlicksolutions
 
Course on TCP Dynamic Performance
Course on TCP Dynamic PerformanceCourse on TCP Dynamic Performance
Course on TCP Dynamic PerformanceJavier Arauz
 
Socket网络编程
Socket网络编程Socket网络编程
Socket网络编程qhm123
 
Flow & Error Control
Flow & Error ControlFlow & Error Control
Flow & Error Controltameemyousaf
 

Viewers also liked (8)

Lecture 5
Lecture 5Lecture 5
Lecture 5
 
TCP with delayed ack for wireless networks
TCP with delayed ack for wireless networksTCP with delayed ack for wireless networks
TCP with delayed ack for wireless networks
 
Course on TCP Dynamic Performance
Course on TCP Dynamic PerformanceCourse on TCP Dynamic Performance
Course on TCP Dynamic Performance
 
Socket网络编程
Socket网络编程Socket网络编程
Socket网络编程
 
TCP Model
TCP ModelTCP Model
TCP Model
 
Flow & Error Control
Flow & Error ControlFlow & Error Control
Flow & Error Control
 
2 reliability-network
2 reliability-network2 reliability-network
2 reliability-network
 
4 transport-sharing
4 transport-sharing4 transport-sharing
4 transport-sharing
 

Similar to CS4344 09/10 Lecture 10: Transport Protocol for Networked Games

Unit III IPV6 UDP
Unit III IPV6 UDPUnit III IPV6 UDP
Unit III IPV6 UDPsangusajjan
 
tcp-wireless-tutorial.ppt
tcp-wireless-tutorial.ppttcp-wireless-tutorial.ppt
tcp-wireless-tutorial.pptRadwan Mahmoud
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Andriy Berestovskyy
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilitiesG Prachi
 
Collaborate nfs kyle_final
Collaborate nfs kyle_finalCollaborate nfs kyle_final
Collaborate nfs kyle_finalKyle Hailey
 
What every Java developer should know about network?
What every Java developer should know about network?What every Java developer should know about network?
What every Java developer should know about network?aragozin
 
Computer network (13)
Computer network (13)Computer network (13)
Computer network (13)NYversity
 
Docker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-PlaneDocker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-PlaneMadhu Venugopal
 
Docker Networking: Control plane and Data plane
Docker Networking: Control plane and Data planeDocker Networking: Control plane and Data plane
Docker Networking: Control plane and Data planeDocker, Inc.
 
An Empirical Evaluation of TCP Performance in Online Games
An Empirical Evaluation of TCP Performance in Online GamesAn Empirical Evaluation of TCP Performance in Online Games
An Empirical Evaluation of TCP Performance in Online GamesAcademia Sinica
 
Computer network (11)
Computer network (11)Computer network (11)
Computer network (11)NYversity
 
Mobile Transpot Layer
Mobile Transpot LayerMobile Transpot Layer
Mobile Transpot LayerMaulik Patel
 
Tcp congestion control
Tcp congestion controlTcp congestion control
Tcp congestion controlAbdo sayed
 
Tcp congestion control (1)
Tcp congestion control (1)Tcp congestion control (1)
Tcp congestion control (1)Abdo sayed
 

Similar to CS4344 09/10 Lecture 10: Transport Protocol for Networked Games (20)

Unit III IPV6 UDP
Unit III IPV6 UDPUnit III IPV6 UDP
Unit III IPV6 UDP
 
6610-l14.pptx
6610-l14.pptx6610-l14.pptx
6610-l14.pptx
 
tcp-wireless-tutorial.ppt
tcp-wireless-tutorial.ppttcp-wireless-tutorial.ppt
tcp-wireless-tutorial.ppt
 
Tcp congestion avoidance
Tcp congestion avoidanceTcp congestion avoidance
Tcp congestion avoidance
 
Polyraptor
PolyraptorPolyraptor
Polyraptor
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)
 
TCP-IP PROTOCOL
TCP-IP PROTOCOLTCP-IP PROTOCOL
TCP-IP PROTOCOL
 
Network protocols and vulnerabilities
Network protocols and vulnerabilitiesNetwork protocols and vulnerabilities
Network protocols and vulnerabilities
 
Collaborate nfs kyle_final
Collaborate nfs kyle_finalCollaborate nfs kyle_final
Collaborate nfs kyle_final
 
What every Java developer should know about network?
What every Java developer should know about network?What every Java developer should know about network?
What every Java developer should know about network?
 
Computer network (13)
Computer network (13)Computer network (13)
Computer network (13)
 
NE #1.pptx
NE #1.pptxNE #1.pptx
NE #1.pptx
 
Docker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-PlaneDocker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-Plane
 
Docker Networking: Control plane and Data plane
Docker Networking: Control plane and Data planeDocker Networking: Control plane and Data plane
Docker Networking: Control plane and Data plane
 
Part5-tcp-improvements.pptx
Part5-tcp-improvements.pptxPart5-tcp-improvements.pptx
Part5-tcp-improvements.pptx
 
An Empirical Evaluation of TCP Performance in Online Games
An Empirical Evaluation of TCP Performance in Online GamesAn Empirical Evaluation of TCP Performance in Online Games
An Empirical Evaluation of TCP Performance in Online Games
 
Computer network (11)
Computer network (11)Computer network (11)
Computer network (11)
 
Mobile Transpot Layer
Mobile Transpot LayerMobile Transpot Layer
Mobile Transpot Layer
 
Tcp congestion control
Tcp congestion controlTcp congestion control
Tcp congestion control
 
Tcp congestion control (1)
Tcp congestion control (1)Tcp congestion control (1)
Tcp congestion control (1)
 

More from Wei Tsang Ooi

SIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingSIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingWei Tsang Ooi
 
The Computer Science behind YouTube
The Computer Science behind YouTubeThe Computer Science behind YouTube
The Computer Science behind YouTubeWei Tsang Ooi
 
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficCS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficWei Tsang Ooi
 
CS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureCS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureWei Tsang Ooi
 
CS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementCS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementWei Tsang Ooi
 
CS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationCS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationWei Tsang Ooi
 
Cs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementCs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementWei Tsang Ooi
 
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterCS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterWei Tsang Ooi
 
CS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyCS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyWei Tsang Ooi
 
CS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionCS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionWei Tsang Ooi
 
CS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSCS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSWei Tsang Ooi
 
CS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingCS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingWei Tsang Ooi
 
CS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsCS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsWei Tsang Ooi
 
CS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationCS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationWei Tsang Ooi
 
Lecture 4: TCP and TFRC
Lecture 4: TCP and TFRCLecture 4: TCP and TFRC
Lecture 4: TCP and TFRCWei Tsang Ooi
 
Lecture 2: Congestion Control and Avoidance
Lecture 2: Congestion Control and AvoidanceLecture 2: Congestion Control and Avoidance
Lecture 2: Congestion Control and AvoidanceWei Tsang Ooi
 
Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Wei Tsang Ooi
 
Lecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the InternetLecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the InternetWei Tsang Ooi
 

More from Wei Tsang Ooi (20)

SIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingSIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business Meeting
 
CS2106 Tutorial 2
CS2106 Tutorial 2CS2106 Tutorial 2
CS2106 Tutorial 2
 
The Computer Science behind YouTube
The Computer Science behind YouTubeThe Computer Science behind YouTube
The Computer Science behind YouTube
 
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficCS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
 
CS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureCS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid Architecture
 
CS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementCS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest Management
 
CS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationCS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P Synchronization
 
Cs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementCs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest Management
 
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterCS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
 
CS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyCS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: Consistency
 
CS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionCS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: Introduction
 
CS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSCS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNS
 
CS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingCS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet Routing
 
CS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsCS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet Dynamics
 
CS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationCS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: Simulation
 
Lecture 5: RED
Lecture 5: REDLecture 5: RED
Lecture 5: RED
 
Lecture 4: TCP and TFRC
Lecture 4: TCP and TFRCLecture 4: TCP and TFRC
Lecture 4: TCP and TFRC
 
Lecture 2: Congestion Control and Avoidance
Lecture 2: Congestion Control and AvoidanceLecture 2: Congestion Control and Avoidance
Lecture 2: Congestion Control and Avoidance
 
Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229
 
Lecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the InternetLecture 1: Design Principles of the Internet
Lecture 1: Design Principles of the Internet
 

CS4344 09/10 Lecture 10: Transport Protocol for Networked Games