This class is a reading and project-based class examining and developing techniques for effective networking in the face of numerous challenges: high packet loss, frequent interruptions, mobility, high latency, and unpredictable conditions. These environments are present in a variety of modern-day environments: wireless and satellite connectivity, mobile users, ad-hoc networks, and in underserved rural areas and developing nations. The class will first examine how traditional protocols perform (or under-perform) in these environments. Next, it will examine techniques such as the use of store and forward routing, multipath forwarding and encoding methods to provide effective service.