serval

所属分类:Python编程
开发工具:C
文件大小:0KB
下载次数:0
上传日期:2014-02-05 07:55:34
上 传 者sh-1993
说明:  以服务为中心的网络堆栈和体系结构
(A service-centric network stack and architecture)

文件列表:
AUTHORS (0, 2014-02-04)
COPYING (18092, 2014-02-04)
ChangeLog (0, 2014-02-04)
INSTALL (15578, 2014-02-04)
Makefile.am (327, 2014-02-04)
NEWS (0, 2014-02-04)
android/ (0, 2014-02-04)
android/Makefile.am (1033, 2014-02-04)
android/Serval/ (0, 2014-02-04)
android/Serval/.classpath (646, 2014-02-04)
android/Serval/.project (809, 2014-02-04)
android/Serval/AndroidManifest.xml (1506, 2014-02-04)
android/Serval/ant.properties (696, 2014-02-04)
android/Serval/assets/ (0, 2014-02-04)
android/Serval/build.xml (5305, 2014-02-04)
android/Serval/copy_module.sh (410, 2014-02-04)
android/Serval/jni/ (0, 2014-02-04)
android/Serval/jni/Android.mk (306, 2014-02-04)
android/Serval/jni/Application.mk (96, 2014-02-04)
android/Serval/local.properties.in (27, 2014-02-04)
android/Serval/proguard.cfg (1248, 2014-02-04)
android/Serval/project.properties (361, 2014-02-04)
android/Serval/res/ (0, 2014-02-04)
android/Serval/res/drawable/ (0, 2014-02-04)
android/Serval/res/drawable/button.xml (980, 2014-02-04)
android/Serval/res/layout/ (0, 2014-02-04)
android/Serval/res/layout/flow_table_item.xml (1091, 2014-02-04)
android/Serval/res/layout/frag_flow_table.xml (260, 2014-02-04)
android/Serval/res/layout/frag_serval.xml (5957, 2014-02-04)
android/Serval/res/layout/frag_service_table.xml (425, 2014-02-04)
android/Serval/res/layout/frag_translator.xml (4551, 2014-02-04)
android/Serval/res/layout/main.xml (1801, 2014-02-04)
android/Serval/res/layout/migrate_item.xml (245, 2014-02-04)
android/Serval/res/layout/migrate_popup.xml (758, 2014-02-04)
android/Serval/res/values/ (0, 2014-02-04)
... ...

Serval ====== For more and up-to-date information, see: https://github.com/princeton-sns/serval/wiki and http://www.serval-arch.org Compilation ----------- The first time you check out the source code, prepare the build system: ``` ./autogen.sh ``` To configure the build system (with common options): ``` ./configure [ --enable-debug | --disable-kernel | --disable-service-router ]\ ``` To build: ``` make ``` Directory structure ------------------- **include/** >headers that are shared between components under src/. **src/** >source code. **src/common/** >library with 'common' functionality. **src/stack/** >stack code. **src/stack/linux/** >stack code specific for the linux kernel. **src/stack/userlevel/** >stack code specific for user level. **src/servd/** >user space control daemon for the stack that takes local service >registrations and passes them to a controller in the network. **src/test/** >test programs for the stack. **src/translator** >daemon that translates between PF\_INET and PF\_SERVAL TCP socket. **src/tools** >tools for controlling the Serval stack. **src/libservalctrl/** >library for communicating with and controlling Serval stacks, >either locally or remotely. **src/libserval/** >socket API abstraction for client applications interacting >with the user-level version of the stack. **src/javasock/** >Java bindings that make it possible to write Serval >applications in Java. **android/** >Android-specific files and applications. Cross-compile Linux kernel module --------------------------------- Prerequisites: * Kernel source code matching your cross-compile environment. * A tool-chain for your cross-compile architecture. Run (```./autogen.sh```) ```./configure``` to generate Makefiles Enter src/stack and issue the following command (example for Android): ``` make serval.ko ARCH=arm CROSS_COMPILE= ``` Running Serval in kernel mode ----------------------------- Insert the Serval kernel module: ``` insmod ./src/stack/serval.ko ``` Start servd (optional): ``` ./src/servd/servd ``` Wait until a service router is discovered or a timeout occurs (in which case host control mode is set). Start an application, e.g.,: ``` ./src/test/tcp_server ``` Access internal state and debug output through /proc/net/serval/ and configuration parameters through /proc/sys/net/serval/. When done, shut down all clients and servd, then remove Serval module: ``` rmmod serval ``` Running Serval in user-level mode --------------------------------- Start the user-level stack ``` ./src/stack/serval [ -i ] ``` Start servd (optional): ``` ./src/servd/servd ``` Wait until a service router is discovered or a timeout occurs (in which case host control mode is set). Start an application, e.g.: ``` ./src/test/tcp_server_user ``` Connect with telnet to 127.0.0.1:9999 for printing internal state. Configuration Options --------------------- ``` /proc/sys/net/serval/auto_migrate - Enable/Disable automigration between interfaces /proc/sys/net/serval/debug - Set debug level /proc/sys/net/serval/inet_to_serval - Enable/Disable socket hijacking, where legacy (AF_INET) sockets are turned into Serval sockets /proc/sys/net/serval/sal_forward - Enable/Disable forwarding in SAL /proc/sys/net/serval/sal_max_retransmits - Max SAL retransmits /proc/sys/net/serval/service_resolution_mode - Specifies which rules to use when resolving services. 0=All, 1=Demux only, 2=forward only, 3=Anycast /proc/sys/net/serval/udp_encap - Enable/Disable UDP encapsulation /proc/sys/net/serval/udp_encap_client_port - List/set client UDP encap port /proc/sys/net/serval/udp_encap_server_port - List/set server UDP encap port ```

近期下载者

相关文件


收藏者