80 likes | 259 Views
Net-X. Pradeep Kyasanur, Chandrakanth Chereddi, and Nitin H. Vaidya University of Illinois at Urbana-Champaign Presentor: Jaeseon Hwang 2009.08.17. Net-X Overview. What is Net-X?
E N D
Net-X Pradeep Kyasanur, Chandrakanth Chereddi, and Nitin H. Vaidya University of Illinois at Urbana-Champaign Presentor: Jaeseon Hwang 2009.08.17
Net-X Overview • What is Net-X? • A wireless Networking framework providing system eXtensions for supporting multiple channels, multiple interfaces, and other interface capabilities • Goal • To develop operating system support for utilizing interface capabilities. • Implementation • Two interfaces based on Atheros chipset using madwifi • Strongly connected with Linux kernel (bonding driver)
Channel Assignment • Hybrid channel assignment • Static + Dynamic • Use one interface for receiving data on a fixed channel. • Use second interface for sending data.
Packet Scheduling • Round-robin scheduling on all interfaces. • Sending multiple packets to amortize interface switching delay (about 5ms).
System Architecture • Userspace daemon • Kernel multichannel routing support (KMCR) • Channel abstraction layer (CAL)
Userspace daemon • Userspace daemon • An interface management by IOCTL and routing protocol by Netlink messages • Maintain channel and interface tables and routing.
Kernel multichannel routing support (KMCR) • Kernel support for on-demand routing • Netlink library supports communication between kernel and userspace in Linux. • Netlink messages • AddRoute • DiscoveryFailed • DeleteRoute • InitiateDiscovery • IsRouteActive • RouteStatus
Channel abstraction layer (CAL) • Manages multiple channels and interfaces. • Unicast; Broadcast; Scheduling and queuing compoment • Functionality • Specifying the channel to use for reaching a neighbor. • Specifying channels to use for broadcast. • Buffering and scheduling support. • IOCTL calls from userspace daemon • AddValidChannel • UnicastEntry • BroadcastEntry • SwitchChannel • GetStatistics Bonding driver