Policy and Mechanism in Adaptive Protocols

Adaptive protocols are protocols which automatically adjust their behavior to runtime phenomena such as traffic or link characteristics. For such protocols, the behavioral adjustment is accomplished with some mechanism; the decision as to how much (if any) adjustment is needed is made under control of a policy. Design and implementation of policies has often proven more challenging than that of mechanisms. We make three contributions in this paper. First, we develop a rule of thumb for policy/ mechanism separation and lay out a general set of challenges in policy module design. Second, as an illustration, we have analyzed a Forward-Error Correcting Code (FEC) for ATM supporting TCP/IP, and analytically identified a small robust set of "tunable parameters" to delineate regions where the code should be applied. Third, we exploited the analytic results and policy/mechanism separation to implement an adaptive protocol for network errors using programmable hardware to obtain high performance. Measurements of TCP/IP traffic over a 155 Mbps ATM link augmented with two cooperating Programmable Protocol Processing Pipelines were made with ttcp. The new policy module improves through-put by up to 50% over an unaugmented TCP/IP in the face of increasing bit errors rates, and continue operation into a range of bit error rates where an unmodified TCP practically ceases to function.

[1]  Ilija Hadžić Signalling Protocol for P4 (SPP4), Version 1.0 , 1998 .

[2]  V. Jacobson,et al.  Congestion avoidance and control , 1988, SIGCOMM '88.

[3]  Jonathan M. Smith,et al.  P4: A platform for FPGA implementation of protocol boosters , 1997, FPL.

[4]  Donald F. Towsley,et al.  Modeling TCP throughput: a simple model and its empirical validation , 1998, SIGCOMM '98.

[5]  H. Balakrishnan,et al.  A comparison of mechanisms for improving TCP performance over wireless links , 1999, SIGCOMM '96.

[6]  D. Duchamp Issues in wireless mobile computing , 1992, [1992] Proceedings Third Workshop on Workstation Operating Systems.

[7]  Jonathan M. Smith,et al.  Protocol boosters , 1998, IEEE J. Sel. Areas Commun..

[8]  T. McAuley,et al.  Protocol boosters: a kernel-level implementation , 1998, IEEE GLOBECOM 1998 (Cat. NO. 98CH36250).

[9]  Carl A. Gunter,et al.  PLAN: a packet language for active networks , 1998, ICFP '98.

[10]  Jonathan M. Smith,et al.  On-the-fly programmable hardware for networks , 1998, IEEE GLOBECOM 1998 (Cat. NO. 98CH36250).

[11]  Chong Tean Ong,et al.  Emulating ATM Network Impairments in the Laboratory , 1997 .

[12]  Mahadev Satyanarayanan,et al.  Application-aware adaptation for mobile computing , 1995, OPSR.

[13]  Jonathan M. Smith,et al.  Protocol boosters: applying programmability to network infrastructures , 1998 .

[14]  John V. Guttag,et al.  ANTS: a toolkit for building and dynamically deploying network protocols , 1998, 1998 IEEE Open Architectures and Network Programming.

[15]  G.J. Minden,et al.  A survey of active network research , 1997, IEEE Communications Magazine.

[16]  Larry L. Peterson,et al.  A dynamic network architecture , 1992, TOCS.