Commit Graph

310 Commits

Author SHA1 Message Date
Tom Henderson
822ddcb157 bindings: rescan bindings 2016-03-08 22:01:30 -08:00
Pasquale Imputato
c6e5ecc191 network: The Queue base class holds mode, maxPackets and maxBytes
...so that all the subclasses have such attributes. This
allows queue discs to have attributes specifying the mode and
size of their queue(s) and to create queues using their
own attributes.

This commit is heavily inspired by Natale's queue rework patch:
https://codereview.appspot.com/270540044/
2016-03-08 10:45:36 -08:00
Pasquale Imputato
e02e86faa7 network: Move RED model, test and examples to the traffic-control module
This move prepares RED to become a queue disc. Building of RED
model, tests and examples is disabled until the conversion is done.
2016-03-08 10:45:27 -08:00
Stefano Avallone
defeaea224 network: Add the NetDeviceQueue and NetDeviceQueueInterface classes
This patch adds a NetDeviceQueue class to store information about a single
transmission queue of a network device. This class is meant to store the
state of a transmission queue (i.e., whether the queue is stopped or not)
and some data used by techniques such as Byte Queue Limits. Also, multi-queue
aware queue discs can aggregate a child queue disc to an object of this class.
These features (excluding BQL) are added in subsequent commits.
The NetDevice class maintains a vector of NetDeviceQueue pointers, one for
each transmission queue. A NetDevice constructor is added which creates a
single transmission queue by default for every device. The number of transmission
queues can be modified (by child classes) by calling NetDevice::SetTxQueuesN.
Two public methods, GetTxQueue and GetTxQueuesN, are also added to the NetDevice class
to return the i-th NetDeviceQueue and the number of transmission queues, respectively.
2016-03-08 10:44:08 -08:00
Stefano Avallone
df2fa95970 network: Make Queue store QueueItem objects
A QueueItem base class is introduced to represent the items stored
in a Queue. The base class only contains a Ptr<Packet>. Derived classes
can store additional information. DropTailQueue, RedQueue and CodelQueue,
along with their examples and testsuits, have been adapted. Objects using
such queues have been adapted too.
2016-03-08 10:44:03 -08:00
Tom Henderson
e7e64c971e rescan bindings 2016-02-26 08:20:55 -08:00
Chip Webb
336585b141 network: (fixes #2283) support nanosecond pcap resolution 2016-02-25 17:38:58 -08:00
Tom Henderson
167662ad6c rescan bindings 2016-02-25 14:22:34 -08:00
Tom Goff
46fa78e7fa internet: (fixes #1835) Implement Socket::GetPeerName() 2016-02-24 13:14:51 -08:00
Lynne Salameh
b830a39aa6 network: (fixes #2293) RED queue estimator optimization 2016-02-11 21:39:49 +01:00
Tommaso Pecorella
dfe7129d43 network: Add IsLocalhost and IsAny to Ipv4Address 2016-02-07 22:24:16 +01:00
Tom Henderson
b9b03ec6bd network: fix to commit 1de7febc2653 unimplemented functions 2016-02-04 14:22:51 -08:00
Tommaso Pecorella
7c076755f3 network: rescan Python bindings 2016-02-03 22:48:23 +01:00
Tommaso Pecorella
b68cfde5b4 network: (fixes #2266) NixRouting info are not copied during a packet fragmentation. 2016-02-03 21:37:41 +01:00
Matt
75f98f9b27 network: (fixes #2286) Support for SLL header (de)serialization 2016-02-03 21:32:43 +01:00
Tom Henderson
aa1307e844 [Doxygen] - Fix header class bad copy-paste 2016-01-31 20:02:40 +01:00
Tom Henderson
688f6fc721 update network bindings for changeset c1b8888412a4 2016-01-06 07:34:48 -08:00
Tommaso Pecorella
cf53134d81 Fix typo in pcap data link type enum (SSL != SLL) 2016-01-05 18:17:03 +01:00
Tom Henderson
a361bbe345 update some stale log components 2015-12-23 09:37:56 -08:00
Tom Henderson
491afdbe23 do not use output address parameter (possibly uninitialized) before assignment 2015-12-15 23:30:52 -08:00
Tom Henderson
c59aea3b31 avoid conversion operation on output Address parameter; a generic Address object may have been passed in 2015-12-14 17:16:43 -08:00
Tommaso Pecorella
682a789e7b Rescan Internet and Network Python Bindings 2015-12-05 17:36:45 +01:00
Tommaso Pecorella
4caca50be2 Bug 2234 - Ipv6L3Protocol should trash multicast packets not interesting for the node 2015-12-03 00:35:35 +01:00
Tommaso Pecorella
8523d63420 IPv6 IsAll[Nodes,Routers]Multicast scope fixes 2015-11-21 18:08:59 +01:00
Tommaso Pecorella
509cd1b7df Deprecate Ipv6Address::IsAllHostsMulticast() 2015-11-21 17:59:27 +01:00
Tommaso Pecorella
c5f702a680 Bug 2176 - Building Ipv4 address from char* doesn't look reliable (cont.) 2015-11-07 23:45:53 +01:00
Sébastien Deronne
7cc8b40f88 Bug 2176 - Building IPv4 address from char* doesn't look reliable 2015-11-07 23:37:44 +01:00
Tommaso Pecorella
7907f2154e Clarify PacketTagList::Add assert message 2015-11-05 12:42:24 +01:00
Natale Patriciello
51e94e52f0 Removed TcpReno from ns-3 mainline
TcpNewReno is introduced in RFC 2582. The most recent RFC on this is
the RFC 6582. Since its introduction, Tcp NewReno is the RECOMMENDED
algorithm by the Internet Engineering Task Force. The main difference
between Reno and New Reno is in the Fast retransmit algorithm, in order
to recover more quickly when multiple packet losses occur in a single
window. NewReno introduces the concept of Partial acknowledgments. Since
the intention is to merge fast retransmit and fast recovery into
TcpSocketBase, there isn't the possibility to maintain TcpReno as
separate class. However, its behavior could be introduced again with one
conditional attribute in TcpSocketBase itself.
2015-10-16 10:38:39 -07:00
Tom Henderson
9c5e9b5cf5 rescan bindings 2015-10-11 11:15:57 -07:00
Matthieu Coudron
8171d94e7c Add Node::GetLocalTime() placeholder, alias to Simulator::Now() 2015-09-22 23:52:56 +02:00
Tom Henderson
55b0e0147e rescan bindings 2015-09-07 11:04:33 -07:00
Sébastien Deronne
d8b035323a Fix broken test 2015-09-04 22:18:04 +02:00
Alexander Krotov
20f5c5e062 bug 2173: WifiInformationElement::DeserializeIfPresent attempts to read beyond the end of buffer 2015-09-04 01:10:29 +02:00
Sébastien Deronne
04dfda290c add support for IEEE 802.11ac 2015-09-03 22:16:49 +02:00
Peter D. Barnes, Jr.
b1976b6366 Merge 2015-08-18 16:59:27 -07:00
Peter D. Barnes, Jr.
61f2fbd415 [doxygen] Revise TracedCallback function signatures for const. 2015-08-18 16:46:10 -07:00
Peter D. Barnes, Jr.
ebd742ba2d Refactor test name character restrictions 2015-08-18 16:17:36 -07:00
Peter D. Barnes, Jr.
be83597fd4 Flush pcap files in debug builds. 2015-08-18 15:19:32 -07:00
Tom Henderson
95ffc4d89b rescan bindings 2015-08-14 08:00:38 -07:00
Peter D. Barnes, Jr.
baddf3f749 Refactor TracedValue callback function signatures.
Move from template class TracedValue to namespace TracedValueCallback.

Rename from [type]Callback to just [type]:
TracedValue<double>::DoubleCallback  -> TracedValueCallback::Double
2015-07-29 13:56:55 -07:00
Sébastien Deronne
3f1a93b68b [network] Rebuild python bindings 2015-08-09 20:29:17 +02:00
Alexander Krotov
292979e742 Removed GetCurrentStartOffset and GetCurrentEndOffset 2015-07-26 19:44:31 +03:00
Alexander Krotov
7fb26bfe59 Make ByteTagList offsets relative to packet start 2015-07-26 19:44:32 +03:00
Alexander Krotov
19488ad7aa Factor ByteTagList::Adjust out of ByteTagList::AddAt{Start,End} 2015-08-08 23:33:55 +03:00
Alexander Krotov
0afb4dcc80 Optimize ByteTagList adjustment 2015-08-08 23:13:40 +03:00
Alexander Krotov
35f4c249d4 Optimize ByteTagList by tracking byte tags boundaries
This patch restores performance to the level nearly equal to that before
recent bugfixing, as was checked by running utils/bench-packets.
2015-07-26 19:44:33 +03:00
Mathieu Lacage
a623762bd9 merge 2015-08-07 02:47:25 -04:00
Tom Henderson
8509f28877 rescan network bindings 2015-08-06 11:15:42 -07:00
Alexander Krotov
ded303057a When data is written with WriteU64, it should be tested with ReadU64,
not ReadLsbtohU64.
2015-08-02 20:44:01 +03:00