We present NetAPI, a flexible communications interface. Although the ubiquitous Sockets API lets applications select among a number of mechanisms to accomplish networking tasks, it binds them tightly to their chosen mechanisms. Consequently, the network stack has little freedom in selecting the best protocols and mechanisms for each application, and innovating below the API is extremely difficult. NetAPI allows applications to specify their communication intents against an abstract interface that hides implementation mechanisms, encouraging innovation below the API. Application intents are combined with user policies and environmental conditions to let the network meet application goals in varied ways. We describe the design of NetAPI, comparing it to other system APIs that have supported evolution. We have also implemented a prototype of NetAPI called PANTS for the iPhone platform. We show that PANTS can provide innovative mobile networking features, such as disconnection tolerance, content quality adjustment and powersaving policies, without application modifications.
Shu Liu, Xiangxi Mo, Moshik Hershcovitch, Hongjun Zhang, Audrey Cheng, Guy Girmonsky, Gil Vernik, Michael Factor, Tiemo Bang, Soujanya Ponnapalli, Natacha Crooks, Joseph E. Gonzalez, Danny Harnik, Ion Stoica
C. S. R. Neigh, Compton Tucker, Mark Carroll, Paul Montesano, D. A. Slayback, Margaret Wooten, Alexei Lyapustin, David Shean, Oleg Alexandrov, M. J. Macander
IGARSS 2022 - 2022 IEEE International Geoscience and Remote Sensing Symposium
Discussion(0)
No comments yet. Be the first to comment.