|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjist.swans.trans.TransInterface.TransMessage
jist.swans.trans.TransTcp.TcpMessage
public static class TransTcp.TcpMessage
Data structure for TCP Message. TCP Packet header: srcPort : 2 dstPort : 2 seqNum : 4 ackNum : 4 offset and flags : 2 window size : 2 checksum : 2 urgent pointer : 2 TOTAL HEADER SIZE : 20 options : variable data : variable
Field Summary | |
---|---|
static int |
HEADER_SIZE
Minimum size of TCP message. |
Fields inherited from interface jist.swans.misc.Message |
---|
NULL |
Constructor Summary | |
---|---|
TransTcp.TcpMessage(byte[] data,
int offset)
constructor for TcpMessage (reconstruct TcpMessage from byte array). |
|
TransTcp.TcpMessage(short srcPort,
short dstPort,
int seqNum,
int ackNum,
short offset,
boolean URG,
boolean ACK,
boolean PSH,
boolean RST,
boolean SYN,
boolean FIN,
short windowSize,
Message data)
constructor for TcpMessage. |
Method Summary | |
---|---|
static TransTcp.TcpMessage |
createACKPacket(int sourcePort,
int destPort,
int seqNumber,
int ackNumber,
short windowSize)
Method called to create an ACK packet. |
static TransTcp.TcpMessage |
createFINPacket(int sourcePort,
int destPort,
int seqNumber,
int ackNumber,
short windowSize)
Method called to create a FIN packet. |
static TransTcp.TcpMessage |
createRSTPacket(int sourcePort,
int destPort,
int seqNumber,
int ackNumber,
short windowSize)
Method called to create a RST packet. |
static TransTcp.TcpMessage |
createSYNACKPacket(int sourcePort,
int destPort,
int seqNumber,
int ackNumber,
short windowSize)
Method called to create a SYNACK packet. |
static TransTcp.TcpMessage |
createSYNPacket(int sourcePort,
int destPort,
int seqNumber,
short windowSize)
Method called to create a SYN packet. |
boolean |
getACK()
Accessor for ACK flag. |
int |
getAckNum()
Accessor for acknowledgement number. |
void |
getBytes(byte[] msg,
int offset)
Retrieves the message in byte array. |
short |
getDstPort()
Accessor for destination port. |
boolean |
getFIN()
Accessor for FIN flag. |
short |
getOffset()
Accessor for offset in the message. |
TransTcp.TcpOptions |
getOptions()
Accessor for options. |
Message |
getPayload()
Accessor for payload. |
boolean |
getPSH()
Accessor for PSH flag. |
boolean |
getRST()
Accessor for RST flag. |
int |
getSeqNum()
Accessor for sequence number. |
int |
getSize()
Returns the size of the TCP message. |
short |
getSrcPort()
Accessor for source port. |
boolean |
getSYN()
Accessor for SYN flag. |
boolean |
getURG()
Accessor for URGENT flag. |
short |
getWindowSize()
Accessor for window size. |
void |
printMessage()
Prints out the message header with zero tabs. |
void |
printMessage(int numTabs)
Prints out the message header. |
void |
printMessage(int numTabs,
boolean isPrintPayload)
Prints out the message header and payload. |
java.lang.String |
toString()
Returns string representation of the TCP message. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final int HEADER_SIZE
Constructor Detail |
---|
public TransTcp.TcpMessage(short srcPort, short dstPort, int seqNum, int ackNum, short offset, boolean URG, boolean ACK, boolean PSH, boolean RST, boolean SYN, boolean FIN, short windowSize, Message data)
srcPort
- source port numberdstPort
- destination port numberseqNum
- sequence numberackNum
- acknowledgement numberoffset
- data offset (start of data in the header; used when the packet has options)URG
- urgent flagACK
- acknowledgement flagPSH
- push flagRST
- reset flagSYN
- SYN flagFIN
- FIN flagwindowSize
- size of receiving windowdata
- datapublic TransTcp.TcpMessage(byte[] data, int offset)
data
- array containing TCP messageoffset
- start index to read the arrayMethod Detail |
---|
public static TransTcp.TcpMessage createSYNPacket(int sourcePort, int destPort, int seqNumber, short windowSize)
sourcePort
- source port numberdestPort
- destination port numberseqNumber
- sequence numberwindowSize
- size of receiving window
public static TransTcp.TcpMessage createSYNACKPacket(int sourcePort, int destPort, int seqNumber, int ackNumber, short windowSize)
sourcePort
- source port numberdestPort
- destination port numberseqNumber
- sequence numberackNumber
- acknowledgement numberwindowSize
- size of receiving window
public static TransTcp.TcpMessage createACKPacket(int sourcePort, int destPort, int seqNumber, int ackNumber, short windowSize)
sourcePort
- source port numberdestPort
- destination port numberseqNumber
- sequence numberackNumber
- acknowledgement numberwindowSize
- size of receiving window
public static TransTcp.TcpMessage createFINPacket(int sourcePort, int destPort, int seqNumber, int ackNumber, short windowSize)
sourcePort
- source port numberdestPort
- destination port numberseqNumber
- sequence numberackNumber
- acknowledgement numberwindowSize
- size of receiving window
public static TransTcp.TcpMessage createRSTPacket(int sourcePort, int destPort, int seqNumber, int ackNumber, short windowSize)
sourcePort
- source port numberdestPort
- destination port numberseqNumber
- sequence numberackNumber
- acknowledgement numberwindowSize
- size of receiving window
public short getSrcPort()
public short getDstPort()
public int getSeqNum()
public int getAckNum()
public short getOffset()
public boolean getURG()
public boolean getACK()
public boolean getPSH()
public boolean getRST()
public boolean getSYN()
public boolean getFIN()
public short getWindowSize()
public TransTcp.TcpOptions getOptions()
public Message getPayload()
public int getSize()
public void getBytes(byte[] msg, int offset)
msg
- byte array to store the messageoffset
- start index of the destination arraypublic java.lang.String toString()
toString
in class java.lang.Object
public void printMessage(int numTabs, boolean isPrintPayload)
numTabs
- number of tabsisPrintPayload
- set to true to print out payload in messagepublic void printMessage()
public void printMessage(int numTabs)
numTabs
- number of tabs
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |