This is automatically generated documentation. Edit after the "COMMENTS" heading; changes to the main body will be lost.
ToHost -- Click element; sends packets to Linux
Ports: 1 input, no outputs
Package: linuxmodule (core)
Hands packets to the ordinary Linux protocol stack. You should probably give Linux IP packets addressed to the local machine (including broadcasts), and a copy of each ARP reply. If DEVNAME is present, packets without a preset device annotation are have their annotations set to that network device. (Linux requires a valid device annotation on each received packet.) As with ToDevice, DEVNAME can be an Ethernet address. If TYPE is ETHER, then expects packets with Ethernet headers; this is the default. If TYPE is IP, then expects packets with raw IP headers. This element is only available in the Linux kernel module. Keyword arguments are:
Linux expects packets to have valid device annotations and packet type
annotations. ToHost will not pass packets with null device annotations to
Linux! Use the `
ToHost(eth0)' syntax to supply a device annotation.
Most packets generated by Click will have null device annotations -- for
example, InfiniteSource makes packets with null device annotations.
Exceptions include FromDevice and PollDevice.
Linux depends on packet type annotations as well. It will generally only
process packets with packet type annotation HOST. (Other packets, such as
packets originally sent to some other host, are sent only to packet
sniffers like tcpdump(1). Linux will handle some BROADCAST and MULTICAST
packets.) By default, packets made by Click have HOST packet type
annotations. However, if you modified a packet that you originally got from
some device, that packet may have some other type. Use SetPacketType to
reset the type appropriately.
Finally, IPv4 packets should have a destination IP address corresponding
to DEVNAME, and a routable source address. Otherwise Linux will silently
drop the packets.
On patched installations, FromDevice intercepts packets before they are passed to packet sniffers like tcpdump. However, on patchless installations, packet sniffers receive incoming packets before FromDevice can intercept them. This means that in a configuration such as
FromDevice(eth0) -> ToHost;
packet sniffers will see eth0's packets twice, once before FromDevice runs and once when the packets are handed back to Linux via ToHost.
Generated by 'click-elem2man' from '../elements/linuxmodule/tohost.hh:6' on 12/Jul/2011.