Cross-layer optimization can improve performance and responsiveness in wireless and mobile environments where link conditions change frequently and rapidly in an unpredictable manner. Many cross-layer solutions dedicated to a single scenario has been proposed. However, support for changing scenarios and multiple cross-layer optimizations has not been addressed. Furthermore, from an engineering point of view, shortcomings in previous work have contributed to limited use of cross-layering.
We propose CRAWLER, a flexible and versatile cross-layer coordination architecture. Key points are
- support for multiple optimization
- support for multiple scenarios
- coordination of protocol and system components
- adaptability of optimizations at runtime
- application support, i.e.,
i) allow applications to access protocol and system information
ii) allow applications to provide own optimizations - a rule-based configuration language that abstracts and simplifies the proper cross-layer optimizations

Concept View:
On an abstract level CRAWLER consists of three components as shown in Figure above:
- The logical component (LC) allows designers to express their cross-layer signaling optimizations in a very abstract and intuitive way. For this purpose, we have created a rule-based language customized to cross-layer design purposes. As a result, a designer is able to program cross-layer signaling at a high level by specifying rules (even at runtime).
- The proper realization of the cross-layer signaling optimizations (given by the LC) is realized by the cross-layer processing component (CPC). Here, the rules are mapped to compositions of small functional units. These compositions can be flexibly changed.
- Stubs provide (read or write) access to protocol information or sub-system states.