- L3Address - Class in <Unnamed>
-
An L3Address represents a L3 source or destination address, with its
two parts: the network part and host part, each 1 octet long.
- L3Address(int, int) - Constructor for class L3Address
-
Create an address from the net part and host part.
- L3Address(String) - Constructor for class L3Address
-
Create an address from a 16-long string of 1s and 0s.
- L3Display - Class in <Unnamed>
-
This class displays a GUI from which you can send and receive Layer 2
frames.
- L3Display(L3Handler) - Constructor for class L3Display
-
Display 3 fields: a display field for putting status messages in
and displaying the values in received packets; a DestAddr field,
into which the user can type a destination address in the form x.y;
a payload field into which the user types a bit string (0s and 1s).
- L3Handler - Class in <Unnamed>
-
This abstract class represents a L3 object that can send and receive
L3 frames.
- L3Handler(Layer2Endpoint, int) - Constructor for class L3Handler
-
Create a L3Handler, given a layer 2 endpoint, and the network part
of the L3Address.
- L3Listener - Interface in <Unnamed>
-
- L3Packet - Class in <Unnamed>
-
This class represents a L3 packet, as defined in our class wiki.
- L3Packet(L3Address, L3Address, String) - Constructor for class L3Packet
-
Create an L3Packet from field values.
- L3Packet(String) - Constructor for class L3Packet
-
Create an L3Packet from a string of bits.
- L3Shim - Class in <Unnamed>
-
This class strips off the L3type field that is required to be at the
front of each Layer 3 packet, and demultiplexes based on it -- calling
the object that has registered as handling the packets of that type.
- L3Shim(Layer2Endpoint) - Constructor for class L3Shim
-
Create this object, storing the layer2 endpoint, and setting
this object as a listener of frames from that layer 2 object.
- L3ShimListener - Interface in <Unnamed>
-
- L3TYPE_L3 - Static variable in class L3Shim
-
L3TYPE_L3 is the uniquely-assigned identifier for the L3 protocol --
the main protocol for forwarding packets across multiple networks
through routers.
- launchThreadToUpdateLights(int, SwitchLightPanel) - Method in class SwitchDisplay
-
Launch a thread that, every millisecond, checks the state of the
"wire" on this port to see if it is "high" or "low".
- Layer2Display - Class in <Unnamed>
-
This class displays a GUI from which you can send and receive Layer 2
frames.
- Layer2Display(Layer2Endpoint) - Constructor for class Layer2Display
-
- Layer2Endpoint - Class in <Unnamed>
-
A Layer2Endpoint represents a Layer 2 entity that has a MAC address
hard-wired for it.
- Layer2Endpoint(int) - Constructor for class Layer2Endpoint
-
Constructor: store the macAddr that identifies this endpoint, and
use the super class to create a layer 2 object that we use to
send/receive frames.
- Layer2Endpoint(String, int, int) - Constructor for class Layer2Endpoint
-
Constructor: store the macAddr that identifies this endpoint, and
use the super class to create a layer 2 object that we use to
send/receive frames.
- Layer2Frame - Class in <Unnamed>
-
This class represents a Layer2 Frame according to our protocol definition.
- Layer2Frame(int, int, int, String) - Constructor for class Layer2Frame
-
Create a new Layer2Frame, given values for many fields, and deriving
the values for the other fields.
- Layer2Frame(String) - Constructor for class Layer2Frame
-
Given a string of bits which should be a legal Layer2Frame, parse it into its
component pieces.
- Layer2Handler - Class in <Unnamed>
-
This abstract class represents a Layer2 object that can send and receive
layer 2 frames.
- Layer2Handler() - Constructor for class Layer2Handler
-
Create an object, using "localhost" and DEFAULT_PORT, for the
IP host and TCP port that this object's BitHandler will connect to
(i.e., the LightSystem).
- Layer2Handler(String, int) - Constructor for class Layer2Handler
-
Create an object, and create a BitHandler for it to use in the layer
below it.
- Layer2Listener - Interface in <Unnamed>
-
- LightDisplay - Class in <Unnamed>
-
- LightDisplay(LightPanel) - Constructor for class LightDisplay
-
- LightPanel - Class in <Unnamed>
-
- LightPanel(String) - Constructor for class LightPanel
-
- LightPanel(String, String, int) - Constructor for class LightPanel
-
- LightSystem - Class in <Unnamed>
-
- LightSystem() - Constructor for class LightSystem
-
- LightSystem(int) - Constructor for class LightSystem
-
- LightSystemThread - Class in <Unnamed>
-
- LightSystemThread(LightSystem, BufferedReader) - Constructor for class LightSystemThread
-
- LOW - Static variable in class LightSystem
-
- send(L3Packet) - Method in class L3Handler
-
Given a frame, convert it to a string of bits and send it using the
L3Shim on layer 2 "below".
- send(String, int, int) - Method in class L3Shim
-
Given a string of bits to send, the layer 3 protocol these bits
are part of, and the layer 2 destination to send the data to,
create the 2-bit layer 3 shim header, then create the Layer2Frame
and send the frame via layer 2.
- send(Layer2Frame) - Method in class Layer2Handler
-
Given a frame, convert it to a string of bits and send it using the
BitHandler on layer 1 "below".
- setListener(BitListener) - Method in class BitHandler
-
- setListener(L3Listener) - Method in class L3Handler
-
Store a reference to a listener for packets received
here.
- setListener(L3ShimListener, int) - Method in class L3Shim
-
register a listener for the protocol with number protoType.
- setListener(Layer2Listener) - Method in class Layer2Handler
-
Allow another object (e.g., a Layer 3 object) to register itself to
get called when this object receives a good frame.
- setListener(SwitchListener) - Method in class Switch
-
Store an object to receive a callback when a port is attached.
- Switch - Class in <Unnamed>
-
Switch models a learning switch, with multiple ports, each connected to
a bus, on which computers can connect.
- Switch(int) - Constructor for class Switch
-
Create a Switch with the given number of ports.
- SwitchDisplay - Class in <Unnamed>
-
This class creates a GUI to represent the ports on a switch and the
state of the MAC <--> port table.
- SwitchDisplay(Switch) - Constructor for class SwitchDisplay
-
Create the GUI.
- SwitchLightPanel - Class in <Unnamed>
-
This class is similar to a LightPanel.
- SwitchLightPanel(String, String, int) - Constructor for class SwitchLightPanel
-
This is almost identical to a LightPanel, except we won't be
writing out anything to the socket.
- SwitchListener - Interface in <Unnamed>
-
- switchOff() - Method in class LightPanel
-
Turn off the voltage on the wire -- i.e., send a LOW signal to the LightSystem
to be repeated to everyone.
- switchOff() - Method in class LightSystem
-
- switchOn() - Method in class LightPanel
-
Turn on the voltage on the wire -- i.e., send a HIGH signal to the LightSystem
to be repeated to everyone.
- switchOn() - Method in class LightSystem
-
- SwitchPort - Class in <Unnamed>
-
This is just like a Layer2Handler, but has no MAC Address.
- SwitchPort(int) - Constructor for class SwitchPort
-
- SwitchPort(String, int, int) - Constructor for class SwitchPort
-