click-psp
所属分类:Linux/Unix编程
开发工具:C/C++
文件大小:2244KB
下载次数:2
上传日期:2019-02-23 16:05:54
上 传 者:
potwski
说明: click实现软件路由器,编辑网络协议。一个完整的路由协议需要完成的功能包含以下内容:制定指导数据报文分组从一个网络到另一个网络的规定和标准;创建路由表,并维护网络拓扑结构;运行路由协议,执行路由选择和分组转发功能。这对我们接下来的协议设计提出了基本的要求,即对于网络中的每一层都需要定义报文的格式,然后对于报文在网络中的发送、接收和转发都有稳定的拓扑结构。
(Click implements software router and edits network protocol)
文件列表:
click-psp (0, 2018-12-27)
click-psp\.svn (0, 2018-12-27)
click-psp\.svn\prop-base (0, 2018-12-27)
click-psp\.svn\props (0, 2013-09-03)
click-psp\.svn\text-base (0, 2018-12-27)
click-psp\.svn\tmp (0, 2018-12-27)
click-psp\.svn\tmp\prop-base (0, 2013-09-30)
click-psp\.svn\tmp\props (0, 2013-09-03)
click-psp\.svn\tmp\text-base (0, 2013-09-30)
click-psp\apps (0, 2018-12-27)
click-psp\apps\.svn (0, 2018-12-27)
click-psp\apps\.svn\prop-base (0, 2013-09-03)
click-psp\apps\.svn\props (0, 2013-09-03)
click-psp\apps\.svn\text-base (0, 2013-09-03)
click-psp\apps\.svn\tmp (0, 2018-12-27)
click-psp\apps\.svn\tmp\prop-base (0, 2013-09-03)
click-psp\apps\.svn\tmp\props (0, 2013-09-03)
click-psp\apps\.svn\tmp\text-base (0, 2013-09-03)
click-psp\apps\ClickController (0, 2018-12-27)
click-psp\apps\ClickController\.svn (0, 2018-12-27)
click-psp\apps\ClickController\.svn\prop-base (0, 2013-09-03)
click-psp\apps\ClickController\.svn\props (0, 2013-09-03)
click-psp\apps\ClickController\.svn\text-base (0, 2018-12-27)
click-psp\apps\ClickController\.svn\tmp (0, 2018-12-27)
click-psp\apps\ClickController\.svn\tmp\prop-base (0, 2013-09-03)
click-psp\apps\ClickController\.svn\tmp\props (0, 2013-09-03)
click-psp\apps\ClickController\.svn\tmp\text-base (0, 2013-09-03)
click-psp\apps\clicky (0, 2018-12-27)
click-psp\apps\clicky\.svn (0, 2018-12-27)
click-psp\apps\clicky\.svn\prop-base (0, 2013-09-03)
click-psp\apps\clicky\.svn\props (0, 2013-09-03)
click-psp\apps\clicky\.svn\text-base (0, 2018-12-27)
click-psp\apps\clicky\.svn\tmp (0, 2018-12-27)
click-psp\apps\clicky\.svn\tmp\prop-base (0, 2013-09-03)
click-psp\apps\clicky\.svn\tmp\props (0, 2013-09-03)
click-psp\apps\clicky\.svn\tmp\text-base (0, 2013-09-03)
click-psp\apps\clicky\images (0, 2018-12-27)
click-psp\apps\clicky\images\.svn (0, 2018-12-27)
click-psp\apps\clicky\images\.svn\prop-base (0, 2018-12-27)
click-psp\apps\clicky\images\.svn\props (0, 2013-09-03)
... ...
THE CLICK MODULAR ROUTER RELEASE 2.0.1
======================================
This is the README file for the source release for the Click modular
software router. More recent information may be available on the Web at
http://www.read.cs.ucla.edu/click/
Click is a modular router toolkit. To use it you'll need to know how to
compile and install the software, how to write router configurations, and
how to write new elements. Our ACM Transactions on Computer Systems paper,
available from the Web site, will give you a feeling for what Click can
do. Using the optimization tools under CLICKDIR/tools, you can get even
better performance than that paper describes.
CONTENTS
--------
CLICKDIR this directory
CLICKDIR/apps Click-related applications
CLICKDIR/apps/clicky ... GTK program for displaying configurations
and interacting with drivers
CLICKDIR/apps/ClickController ... Java program for interacting with drivers
CLICKDIR/bsdmodule FreeBSD 4.5 kernel module driver [NOT WORKING]
CLICKDIR/conf configuration files
CLICKDIR/doc documentation
CLICKDIR/drivers polling device drivers
CLICKDIR/elements element source code
CLICKDIR/elements/analysis ... for trace analysis and manipulation
CLICKDIR/elements/app ... for application-level protocol elements
CLICKDIR/elements/aqm ... for active queue management (RED, etc.)
CLICKDIR/elements/bsdmodule ... for FreeBSD kernel-specific elements
CLICKDIR/elements/ethernet ... for Ethernet elements
CLICKDIR/elements/etherswitch ... for Ethernet-switch elements
CLICKDIR/elements/grid ... for Grid elements (experimental)
CLICKDIR/elements/icmp ... for ICMP elements
CLICKDIR/elements/ip ... for IP, ICMP, and TCP/UDP elements
CLICKDIR/elements/ip6 ... for IPv6 elements
CLICKDIR/elements/ipsec ... for IPsec elements
CLICKDIR/elements/linuxmodule ... for Linux kernel-specific elements
CLICKDIR/elements/local ... for your own elements (empty)
CLICKDIR/elements/ns ... for 'ns'-specific elements
CLICKDIR/elements/radio ... for communicating with wireless radios
CLICKDIR/elements/standard ... for generic elements
CLICKDIR/elements/tcpudp ... for TCP and UDP elements
CLICKDIR/elements/test ... for regression test elements
CLICKDIR/elements/threads ... for thread management elements
CLICKDIR/elements/userlevel ... for user-level-specific elements
CLICKDIR/elements/wifi ... for 802.11-specific 'WiFi' elements
CLICKDIR/etc Linux and NS patches and other files
CLICKDIR/etc/samplepackage sample source code for Click element package
CLICKDIR/etc/samplellrpc sample source code for reading Click LLRPCs
CLICKDIR/etc/diagrams files for drawing Click diagrams
CLICKDIR/etc/libclick files for standalone user-level Click library
CLICKDIR/include/click common header files
CLICKDIR/include/clicknet header files defining network headers
CLICKDIR/lib common non-element source code
CLICKDIR/linuxmodule Linux kernel module driver
CLICKDIR/ns 'ns' driver (integrates with the ns simulator)
CLICKDIR/test regression tests
CLICKDIR/tools Click tools
CLICKDIR/tools/lib ... common code for tools
CLICKDIR/tools/click-align ... handles alignment for non-x86 machines
CLICKDIR/tools/click-combine ... merges routers into combined configuration
CLICKDIR/tools/click-devirtualize ... removes virtual functions from source
CLICKDIR/tools/click-fastclassifier ... specializes Classifiers into C++ code
CLICKDIR/tools/click-mkmindriver ... build environments for minimal drivers
CLICKDIR/tools/click-install ... installs configuration into kernel module
CLICKDIR/tools/click-pretty ... pretty-prints Click configuration as HTML
CLICKDIR/tools/click-undead ... removes dead code from configurations
CLICKDIR/tools/click-xform ... pattern-based configuration optimizer
CLICKDIR/tools/click2xml ... convert Click language <-> XML
CLICKDIR/userlevel user-level 'click' driver
DOCUMENTATION
-------------
The 'INSTALL' file in this directory contains installation
instructions. User documentation is in the 'doc' subdirectory. This
directory contains manual pages for the Click language, the Linux kernel
module, and several tools; it also has a script that generates manual pages
for many of the elements distributed in this package. To install these
manual pages so you can read them, follow the 'INSTALL' instructions, but
'make install-man' instead of 'make install'.
RUNNING A CLICK ROUTER
----------------------
Before playing with a Click router, you should get familiar with the
Click configuration language. You use this to tell Click how to process
packets. The language describes a graph of "elements", or packet processing
modules. See the 'doc/click.5' manual page for a detailed description, or
check the 'conf' directory for some simple examples.
Click can be compiled as a user-level program or as a kernel module for
Linux. Either driver can receive and send packets; the kernel module
directly interacts with device drivers, while the user-level driver uses
packet sockets (on Linux) or the pcap library (everywhere else).
User-Level Program
..................
Run the user-level program by giving it the name of a configuration
file: 'click CONFIGFILE'.
Linux Kernel Module
...................
You must patch your Linux kernel first. See 'INSTALL' for more
information.
See the 'doc/click.o.8' manual page for a detailed description. To
summarize, install a configuration by running 'click-install CONFIGFILE'.
This will also install the kernel module if necessary and report any errors
to standard error. (You must run 'make install' before 'click-install' will
work.)
NS-3 Simulator
..............
See 'INSTALL' for more information on how to enable the NS-3 Click
Integration. Further information on ns-3-click is available in the ns-3
manual: http://www.nsnam.org/docs/models/index.html#document-click
NS-2 Simulator
..............
See 'INSTALL' for more information. Once a Click-enabled version of NS-2
is installed, the 'ns' command is able to run Click scripts as part of a
normal NS-2 simulation.
Configurations
..............
A few configurations are included in the 'conf' directory, including a
Perl script that generated the IP router configurations used in our TOCS
paper ('conf/make-ip-conf.pl') and a set of patterns for the Click pattern
optimizer, click-xform ('conf/ip.clickpat'). Please check back to our Web
site for more up-to-date configurations.
ADDING YOUR OWN ELEMENTS
------------------------
Please see the FAQ in this directory to learn how to add elements to
Click.
COPYRIGHT AND LICENSE
---------------------
Most of Click is distributed under a version of the "MIT License",
which is a BSD-like license. See the 'LICENSE' file for details.
Portions of the Click software are derived from the Linux kernel, and
are thus distributed under the GNU General Public License, version 2. The
GNU General Public License is available via the Web at
, or in the COPYING file in this
directory. The GPL applies to the source files in drivers/e1000*, to the
files etc/linux-*-patch, linuxmodule/clickfs.cc, linuxmodule/proclikefs.c,
linuxmodule/sched.cc, and linuxmodule/skbmgr.cc, and some of the files in
elements/linuxmodule.
Portions of the Click software are derived from the GNU Multiple
Precision Arithmetic Library, and are thus distributed under the GNU Lesser
General Public License, version 3. This license is available via the Web
at . The LGPL applies to the source
file include/click/bigint.hh.
Element code that uses only Click's interfaces will *not* be derived
from the Linux kernel, so the BSD-like 'LICENSE' will apply, not the GPL or
the LGPL.
BUGS, QUESTIONS, ETC.
---------------------
We welcome bug reports, questions, comments, code, whatever you'd like
to give us. We also have a mailing list for software announcements, and an
anonymous Git repository (also accessible via CVS) where you can access our
latest source code. Write us at
click@pdos.lcs.mit.edu
- The Click maintainers:
Eddie Kohler
and others
近期下载者:
相关文件:
收藏者: