The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Net::Frame::Layer::LLTD - Link Layer Topology Discovery layer object

SYNOPSIS

   use Net::Frame::Layer::LLTD qw(:consts);

   # Build a layer
   my $layer = Net::Frame::Layer::LLTD->new(
      version         => 1,
      tos             => NF_LLTD_TOS_TOPOLOGY_DISCOVERY,
      reserved        => 0,
      function        => NF_LLTD_FUNCTION_DISCOVER,
      networkAddress1 => 'ff:ff:ff:ff:ff:ff',
      networkAddress2 => 'ff:ff:ff:ff:ff:ff',
      identifier      => getRandom16bitsInt(),
   );
   $layer->pack;

   print 'RAW: '.$layer->dump."\n";

   # Read a raw layer
   my $layer = Net::Frame::Layer::LLTD->new(raw => $raw);
   $layer->unpack;

   print $layer->print."\n";
   print 'PAYLOAD: '.unpack('H*', $layer->payload)."\n"
      if $layer->payload;

DESCRIPTION

This modules implements the encoding and decoding of the Link Layer Topology Discovery layer.

Protocol specifications: http://www.microsoft.com/whdc/Rally/LLTD-spec.mspx .

See also Net::Frame::Layer for other attributes and methods.

ATTRIBUTES

version
tos
reserved
function
networkAddress1
networkAddress2
identifier
upperLayer

This last attribute will store the upper layer object.

The following are inherited attributes. See Net::Frame::Layer for more information.

raw
payload
nextLayer

METHODS

new
new (hash)

Object constructor. You can pass attributes that will overwrite default ones. See SYNOPSIS for default values.

The following are inherited methods. Some of them may be overriden in this layer, and some others may not be meaningful in this layer. See Net::Frame::Layer for more information.

layer
computeLengths
computeChecksums
pack
unpack
encapsulate
getLength
getPayloadLength
print
dump

CONSTANTS

Load them: use Net::Frame::Layer::LLTD qw(:consts);

NF_LLTD_TOS_TOPOLOGY_DISCOVERY
NF_LLTD_TOS_QUICK_DISCOVERY
NF_LLTD_TOS_QOS_DIAGNOSTICS

Constants for LLTD tos attribute.

NF_LLTD_FUNCTION_DISCOVER
NF_LLTD_FUNCTION_HELLO
NF_LLTD_FUNCTION_EMIT
NF_LLTD_FUNCTION_TRAIN
NF_LLTD_FUNCTION_PROBE
NF_LLTD_FUNCTION_ACK
NF_LLTD_FUNCTION_QUERY
NF_LLTD_FUNCTION_QUERY_RESP
NF_LLTD_FUNCTION_RESET
NF_LLTD_FUNCTION_CHARGE
NF_LLTD_FUNCTION_FLAT
NF_LLTD_FUNCTION_QUERY_LARGE_TLV
NF_LLTD_FUNCTION_QUERY_LARGE_TLV_RESP

Constants for LLTD function attribute.

NF_LLTD_TLV_TYPE_EOP
NF_LLTD_TLV_TYPE_HOSTID
NF_LLTD_TLV_TYPE_CHARACTERISTICS
NF_LLTD_TLV_TYPE_PHYSICALMEDIUM
NF_LLTD_TLV_TYPE_WIRELESSMODE
NF_LLTD_TLV_TYPE_BSSID
NF_LLTD_TLV_TYPE_SSID
NF_LLTD_TLV_TYPE_IPv4ADDRESS
NF_LLTD_TLV_TYPE_IPv6ADDRESS
NF_LLTD_TLV_TYPE_MAXOPRATE
NF_LLTD_TLV_TYPE_PERFCOUNTER
NF_LLTD_TLV_TYPE_LINKSPEED
NF_LLTD_TLV_TYPE_RSSI
NF_LLTD_TLV_TYPE_ICONIMAGE
NF_LLTD_TLV_TYPE_MACHINENAME
NF_LLTD_TLV_TYPE_SUPPORTINFO
NF_LLTD_TLV_TYPE_FRIENDLYNAME
NF_LLTD_TLV_TYPE_UUID
NF_LLTD_TLV_TYPE_HARDWAREID
NF_LLTD_TLV_TYPE_QOSCHARACTERISTICS
NF_LLTD_TLV_TYPE_WIRELESSPHYSICALMEDIUM
NF_LLTD_TLV_TYPE_APTABLE
NF_LLTD_TLV_TYPE_DETAILEDICONIMAGE
NF_LLTD_TLV_TYPE_SEESLISTCOUNT
NF_LLTD_TLV_TYPE_COMPONENTTABLE
NF_LLTD_TLV_TYPE_REPEATERAP
NF_LLTD_TLV_TYPE_REPEATERAPTABLE

Constants for LLTD Tlv type attribute.

SEE ALSO

Net::Frame::Layer

AUTHOR

Patrice <GomoR> Auffret

COPYRIGHT AND LICENSE

Copyright (c) 2006-2015, Patrice <GomoR> Auffret

You may distribute this module under the terms of the Artistic license. See LICENSE.Artistic file in the source distribution archive.