Package | Description |
---|---|
sime | |
sime.tcp |
Modifier and Type | Field and Description |
---|---|
(package private) Packet |
Router.OutputPort.packetInTransmission
Holds the packet currently in transmission on the
outgoing link.
|
Modifier and Type | Field and Description |
---|---|
private java.util.ArrayList<Packet> |
Router.packetBuffer
Router memory for buffered/queued packets.
|
protected java.util.ArrayList<Packet> |
Link.packetsFromN1toN2
Container for packets in transit from
Link.node1 to Link.node2 .We never check whether this array overflows, because we hope there will be never more than 100 packets in flight on a link?!? |
protected java.util.ArrayList<Packet> |
Link.packetsFromN2toN1
|
Modifier and Type | Method and Description |
---|---|
protected void |
Link.enqueueNewPacket(java.util.ArrayList<Packet> packets_,
double[] packetDelays_,
Packet packet_)
Helper method to enqueue a new packet into one
of the lists and calculate its delay on the link.
|
void |
Router.handle(NetworkElement source_,
Packet receivedPacket_)
Buffers the incoming packet in the router memory.
|
abstract void |
NetworkElement.handle(NetworkElement source_,
Packet packet_)
The method to receive packets from a lower-layer protocol.
|
void |
Link.handle(NetworkElement dummySource_,
Packet dummyPacket_)
Link does not "handle" incoming
packets, so this method does nothing.
|
void |
Endpoint.handle(NetworkElement source_,
Packet packet_)
Handle the data segments received from the remote endpoint.
|
(package private) void |
Router.OutputPort.handleIncomingPacket(NetworkElement source_,
Packet receivedPacket_)
Handles an incoming packet that is heading out on this
output port.
|
void |
Router.send(NetworkElement dummySource_,
Packet dummyPacket_)
Currently does nothing.
|
abstract void |
NetworkElement.send(NetworkElement source_,
Packet packet_)
The method to send data from an upper-layer protocol.
Note that parameter source_ is usually ignored
but Link.send(NetworkElement, Packet) uses it to
distinguish the nodes connected to its ends. |
void |
Link.send(NetworkElement source_,
Packet packet_)
The link just accepts any new packets given to it
and enqueues the new packet behind any existing packets.
|
void |
Endpoint.send(NetworkElement source_,
Packet newDataPkt_)
"Sends" segments by passing them to the network layer protocol object.
|
Modifier and Type | Method and Description |
---|---|
protected void |
Link.deliverArrivedPackets(java.util.ArrayList<Packet> packets_,
double[] packetDelays_,
NetworkElement node_,
double lastTimeProcessCalled_)
Helper method to deliver the packets that propagated
through the link and arrived to the other end, if any.
Note that we assume that the packets are enqueued on the first-come-first-served basis, so their delays are sorted in an ascending order. |
protected void |
Link.enqueueNewPacket(java.util.ArrayList<Packet> packets_,
double[] packetDelays_,
Packet packet_)
Helper method to enqueue a new packet into one
of the lists and calculate its delay on the link.
|
Modifier and Type | Class and Description |
---|---|
class |
Segment
TCP segment, which could carry either data, ACK, or both.
Note that this class implements java.lang.Comparable so that TCP segments can be compared (and sorted) by their sequence number. |