diff --git a/src/devices/point-to-point/point-to-point-channel.cc b/src/devices/point-to-point/point-to-point-channel.cc index 83a7abb46..94d3c6e40 100644 --- a/src/devices/point-to-point/point-to-point-channel.cc +++ b/src/devices/point-to-point/point-to-point-channel.cc @@ -1,6 +1,6 @@ /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ /* - * Copyright (c) 2007 University of Washington + * Copyright (c) 2007, 2008 University of Washington * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -14,8 +14,6 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Author: Craig Dowell */ #include "point-to-point-channel.h" diff --git a/src/devices/point-to-point/point-to-point-net-device.cc b/src/devices/point-to-point/point-to-point-net-device.cc index fb7d51110..c752e9023 100644 --- a/src/devices/point-to-point/point-to-point-net-device.cc +++ b/src/devices/point-to-point/point-to-point-net-device.cc @@ -1,6 +1,6 @@ /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ /* - * Copyright (c) 2005,2006 INRIA + * Copyright (c) 2007, 2008 University of Washington * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -14,9 +14,6 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Author: Craig Dowell - * Revised: George Riley */ #include "ns3/log.h" @@ -389,5 +386,4 @@ PointToPointNetDevice::SetReceiveCallback (NetDevice::ReceiveCallback cb) m_rxCallback = cb; } - } // namespace ns3 diff --git a/src/devices/point-to-point/point-to-point-net-device.h b/src/devices/point-to-point/point-to-point-net-device.h index ebfaf8239..b42ed4fe2 100644 --- a/src/devices/point-to-point/point-to-point-net-device.h +++ b/src/devices/point-to-point/point-to-point-net-device.h @@ -1,6 +1,6 @@ /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */ /* - * Copyright (c) 2007 University of Washington + * Copyright (c) 2007, 2008 University of Washington * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as @@ -14,8 +14,6 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - * - * Author: Craig Dowell */ #ifndef POINT_TO_POINT_NET_DEVICE_H diff --git a/src/devices/point-to-point/point-to-point.h b/src/devices/point-to-point/point-to-point.h index 3ae8a24e3..f6799ceec 100644 --- a/src/devices/point-to-point/point-to-point.h +++ b/src/devices/point-to-point/point-to-point.h @@ -1,11 +1,45 @@ /** * \ingroup devices - * \defgroup PointToPoint Point-to-Point Models + * \defgroup PointToPoint Point-to-Point Model * - * \section Point-to-Point Models + * \section Point-to-Point Model * - * The set of Point-to-Point models provides an abstrated point-to-point link - * model, that simulates transmission delay (finite data rate) and - * propagation delay, and can also optionally include an error model - * (ns3::ErrorModel). + * The ns-3 point-to-point model is of a very simple point to point data link + * connecting exactly two ns3::PointToPointNetDevice devices over an + * ns3::PointToPointChannel. This can be viewed as equivalent to a full + * duplex RS-232 or RS-422 link with null modem and no handshaking. + * + * Data is encapsulated in the Point-to-Point Protocol (PPP -- RFC 1661), + * however the Link Control Protocol (LCP) and associated state machine is + * not implemented. The PPP link is assumed to be established and + * authenticated at all times. + * + * Data is not framed, therefore Address and Control fields will not be found. + * Since the data is not framed, there is no need to provide Flag Sequence and + * Control Escape octets, nor is a Frame Check Sequence appended. All that is + * required to implement non-framed PPP is to prepend the PPP protocol number + * for IP Version 4 which is the sixteen-bit number 0x21 (see + * http://www.iana.org/assignments/ppp-numbers). + * + * The ns3::PointToPointNetDevice provides following Attributes: + * + * - Address: The ns3::Mac48Address of the device (if desired); + * - DataRate: The data rate of the device; + * - TxQueue: The trasmit queue used by the device; + * - InterframeGap: The optional time to wait between "frames"; + * - Rx: A trace source for received packets; + * - Drop: A trace source for dropped packets. + * + * The ns3::PointToPointNetDevice supports the assignment of a "receive error + * model." This is an ns3::ErrorModel object that is used to simulate data + * corruption on the link. + * + * The point to point net devices are connected via an + * ns3::PointToPointChannel. This channel models two wires transmitting bits + * at the data rate specified by the source net device. There is no overhead + * beyond the eight bits per byte of the packet sent. That is, we do not + * model Flag Sequences, Frame Check Sequences nor do we "escape" any data. + * + * The ns3::PointToPointChannel does model a speed-of-light delay which can + * be accessed via the attribute "Delay." */