CATNIP – Context Aware Transport/Network
Internet ProtocolCarey Williamson Qian Wu
Department of Computer ScienceUniversity of Calgary
Why CATNIP
• Layered protocol stacks
Good: providing a unifying framework
Bad: compromise performance
vs.
Physical
Link
Network
Transport
Application
Why CATNIP (Cont’d)• Observations in Web data transfer using TCP/IP Poor protocol interactions;TCP’s window-based flow control mechanism
produces data bursts;Not all packet losses are created equal. Packet los
ses are costly for small document transfer;A TCP source has limited control over packet loss
effects;An IP router has significant control over packet
loss effects.
Design of CATNIP•Can we make the TCP/IP protocols “smarter”
about the specific job? Convey application-layer context
information to the TCP and IP layers
Network
Transport
ApplicationDocument Size
Packet Priority
Design of CATNIP (Cont’d)•Adding context-awareness to TCP:
Rate-Based Pacing of the Last Window (RBPLW)
Early Congestion Avoidance (ECA) Selective Packet Marking (SPM):
Use the reserved high-order bit in the TCP header to convey packet priority information
Design of CATNIP (Cont’d)•Adding context-awareness to IP:
CATNIP-Good
CATNIP-BadCATNIP-RED: RED + CATNIP-Good
Evaluation of CATNIP
Evaluation
Simulation: ns-2
Emulation: use WAN emulation to test a prototype implementation of CATNIP in the Linux kernel of an Apache Web server.
Evaluation using simulation
• Network model:
Client 100
Server 1
Server 2
Server 10
Client 1
Client 2
Client 99
1.5 Mbps, 5 ms
10 Mbps, 5 ms 10 M
bps,
5 ms
10 M
bps,
5 m
s 10 Mbps, 5 m
s
RouterS RouterC
Evaluation using simulation (Cont’d)
• Web workload model: 10 Web pages Use empirically-observed distribution to
determine the size, and the number of embedded images
Evaluation using simulation (Cont’d)
• Factors and Levels:Factor Levels
TCP IP
Reno, RBPLW, ECA, ECA+RBPLW, SPM DropTail, RED, CATNIP-Good, CATNIP-Bad, CATNIP-RED
• Performance metrics: the transfer time for each Web page the average packet loss
Simulation results• DropTail routers:
Mean and standard deviation of transfer times
Reno/ RBPLWReno
ECA
ECA/RBPLW
Packet loss:
Observations: TCP endpoint control algorithms have
little advantage to offer.
Simulation results (Cont’d)• CATNIP-Good routers:
Mean and standard deviation of transfer times
Reno/SPM/Good
Reno/DropTail
Reno/SPM/RBPLW/Good
ECA/SPM/Good ECA/SPM/RBPLW/Good
Packet loss:
Observations: Adding context-awareness at the IP routers
improves the mean Web page transfer times and the standard deviation of the transfer times.
The average packet loss rates with CATNIP-Good are higher than for the DropTail routers.
Simulation results (Cont’d)• CATNIP-Bad routers:
Mean and standard deviation of transfer times
Reno/DropTail
Reno/SPM/BadECA/SPM/Bad
Packet loss:
Observations: Packet losses are shifted to the high priority TCP
packets, that is, throw away the “wrong packet” at the “wrong time”, therefor makes matters worse.
Simulation results (Cont’d)• CATNIP-RED routers:
Mean and standard deviation of transfer times
Reno/DropTail
Reno/REDReno/SPM/CATNIP-RED ECA/RED ECA/SPM/CATNIP-
RED
Observations: Reno and ECA perform similarly in almost all
cases. The effect of CATNIP-RED is greater than the
effect of ECA.
Experimental Implementation and Evaluation
• Experimental environment: WAN emulator: IP-TNE (Internet Protocol Traffic and
Network Emulator)
Web server:Apache Web server (version 1.3.19-5) runs on top of modified Linux 2.4.16 kernel.
Implementation focused on the SPM feature only
Client 100
• Primary Factor: buffer size of the bottleneck link (64 KB -- 512 KB)
10 M
bps,
5 ms
Endpoint
Client 1
Client 2
Client 99
1.5 Mbps, 5 ms10 M
bps, 5 ms
10 Mbps, 5 ms
• Network model
Server
WAN Emulation
RouterS RouterC
• Evaluation results:
Conclusions•Not all packet losses are created equal;•A TCP source alone has limited control over Web data transfer performance, even with application-layer information;
•The IP layer has a significant influence on Web data transfer performance, particularly when application-layer context information is available;
•A simple change to the TCP/IP stack implementation can provide the context information;
•Changes to the queue management at routers can provide significant performance advantages for the context-aware TCP/IP.