The IEEE 802.11 Wireless LAN standards allow multiple non-overlapping frequency channels to be used simultaneously to increase the aggregate bandwidth available to end-users. Such bandwidth aggregation capability is routinely used in infrastructure mode operation, where the traffic to and from wireless nodes is distributed among multiple interfaces of an access point or among multiple access points to balance the traffic load. However, bandwidth aggregation is rarely used in the context of multi-hop 802.11-based LANs that operate in the ad hoc mode. Most past research efforts that attempt to exploit multiple radio channels require modifications to the MAC protocol and therefore do not work with commodity 802.11 interface hardware. In this paper, we propose and evaluate one of the first multi-channel multi-hop wireless ad-hoc network architectures that can be built using standard 802.11 hardware by equipping each node with multiple network interface cards (NICs) operating on different channels. We focus our attention on wireless mesh networks that serve as the backbone for relaying end-user traffic from wireless access points to the wired network. The idea of exploiting multiple channels is particularly appealing in wireless mesh networks because of their high capacity requirements to support backbone traffic. To reap the full performance potential of this architecture, we develop a set of centralized channel assignment, bandwidth allocation, and routing algorithms for multi-channel wireless mesh networks. A detailed performance evaluation shows that with intelligent channel and bandwidth assignment, equipping every wireless mesh network node with just 2 NICs operating on different channels can increase the total network goodput by a factor of up to 8 compared with the conventional single-channel ad hoc network architecture.
The majority of security vulnerabilities published in the literature are due to software bugs. Many researchers have developed program transformation and analysis techniques to automatically detect or eliminate such vulnerabilities. So far, most of them cannot be applied to commercially distributed applications on the Windows/x86 platform, because it is almost impossible to disassemble a binary file with 100% accuracy and coverage on that platform. This paper presents the design, implementation, and evaluation of a binary analysis and instrumentation infrastructure for the Windows/x86 platform called BIRD (Binary Interpretation using Runtime Disassembly), which provides two services to developers of security-enhancing program transformation tools: converting binary code into assembly language instructions for further analysis, and inserting instrumentation code at specific places of a given binary without affecting its execution semantics. Instead of requiring a high-fidelity instruction set architectural emulator, BIRD combines static disassembly with an on-demand dynamic disassembly approach to guarantee that each instruction in a binary file is analyzed or transformed before it is executed. It takes 12 student months to develop the first BIRD prototype, which can successfully work for all applications in Microsoft Office suite as well as Internet Explorer and IIS web server, including all DLLs that they use. Moreover, the additional throughput penalty of the BIRD prototype on production server applications such as Apache, IIS, and BIND is uniformly below 4%.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.