component | User | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
description | Represents an external user. | ||||||||||||||||
start-flow | User-flows | ||||||||||||||||
type | external | ||||||||||||||||
protocol | TCP | TCP - Protocol description. | |||||||||||||||
abbreviation | TCP | Transmission Control Protocol | |||||||||||||||
section | Header Format | ||||||||||||||||
document | RFC-793 | Section 3.1 | |||||||||||||||
ascii | Header Layout | 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Port | Destination Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Acknowledgment Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Data | |U|A|P|R|S|F| | | Offset| Reserved |R|C|S|S|Y|I| Window | | | |G|K|H|T|N|N| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Checksum | Urgent Pointer | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | data | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |
|||||||||||||||
bits16 | Source Port | The source port number. | |||||||||||||||
bits16 | Destination Port | The destination port number. | |||||||||||||||
bits32 | Sequence Number | The sequence number of the first data octet in this segment (except when SYN is present). If SYN is present the sequence number is the initial sequence number (ISN) and the first data octet is ISN+1. | |||||||||||||||
bits32 | Ack Number | If the ACK control bit is set this field contains the value of the next sequence number the sender of the segment is expecting to receive. Once a connection is established this is always sent. | |||||||||||||||
bits4 | Data Offset | The number of 32 bit words in the TCP Header. This indicates where the data begins. The TCP header (even one including options) is an integral number of 32 bits long. | |||||||||||||||
bits6 | Reserved | Reserved for future use. Must be zero. | |||||||||||||||
section | Control Bits | 6 bits (from left to right) | |||||||||||||||
bits16 | Window | The number of data octets beginning with the one indicated in the acknowledgment field which the sender of this segment is willing to accept. | |||||||||||||||
bits16 | Checksum | The checksum field is the 16 bit one's complement of the one's complement sum of all 16 bit words in the header and text. | |||||||||||||||
bits16 | Urgent Pointer | This field communicates the current value of the urgent pointer as a positive offset from the sequence number in this segment. The urgent pointer points to the sequence number of the octet following the urgent data. This field is only be interpreted in segments with the URG control bit set. | |||||||||||||||
bits24 | Options | Variable length. Options may occupy space at the end of the TCP header and are a multiple of 8 bits in length. All options are included in the checksum. See spec. | |||||||||||||||
bits8 | Padding | Variable Length. The TCP header padding is used to ensure that the TCP header ends and data begins on a 32 bit boundary. The padding is composed of zeros. | |||||||||||||||
section | Messages | Messages used for the msg flow | |||||||||||||||
message | ACK | Acknowledgment | |||||||||||||||
message | SYN | Synchronize sequence numbers | |||||||||||||||
message | SYN+ACK | An accepted synchronization or connetion. | |||||||||||||||
message | DATA | Used to denote data being transmittednothing (no ack). | |||||||||||||||
message | DATA+ACK | Used to denote data with implicit ack. | |||||||||||||||
message | RST | Reset the connection | |||||||||||||||
message | FIN | No more data from sender | |||||||||||||||
message | FIN+ACK | The FINished msg to tell the connection is being closed. | |||||||||||||||
section | Visible actions | ||||||||||||||||
action | start-telnet | User starts a telnet process. | |||||||||||||||
action | exit-telnet | The telnet process was stopped. | |||||||||||||||
action | enter-ls | The user wants to view files in the current directory. | |||||||||||||||
action | enter-cd | The user wants to chnage the current working diretcory. | |||||||||||||||
action | enter-exit | The user wants to exit the bash and telnet session. | |||||||||||||||
action | login-succeeded | The login was succesful | |||||||||||||||
action | login-failed | The login failed | |||||||||||||||
section | Intended in future | ||||||||||||||||
action | ssh-impl-intended | SSH implementation is intended in future. | |||||||||||||||
action | ftp-impl-intended | FTP implementation is intended in future. | |||||||||||||||
action | sftp-impl-intended | SFTP implementation is intended in future. | |||||||||||||||
action | smtp-impl-intended | STP implementation is intended in future. | |||||||||||||||
action | http-impl-intended | HTTP implementation is intended in future. | |||||||||||||||
action | https-impl-intended | HTTPS implementation is intended in future. | |||||||||||||||
action | start-telnet | User starts a telnet process. | |||||||||||||||
message | tcp-cl-connect | API call to initiate a connection towards the server. | |||||||||||||||
message | tcp-cl-connected | Informs APP that connnection succeeded. | |||||||||||||||
message | tcp-cl-failed | Informs APP that connection failed | |||||||||||||||
message | tcp-cl-connected | Informs APP that connnection succeeded. | |||||||||||||||
message | tcp-cl-failed | Informs APP that connection failed | |||||||||||||||
action | exit-telnet | The telnet process was stopped. | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
message | tcp-cl-send | API calls to send date to the server. | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
message | tcp-cl-send | API calls to send date to the server. | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
action | login-failed | The login failed | |||||||||||||||
message | tcp-cl-send | API calls to send date to the server. | |||||||||||||||
component | TCP-CL | Represents an TCP Client layer. | |||||||||||||||
message | tcp-cl-close | API call to initate session shutdown. | |||||||||||||||
action | exit-telnet | The telnet process was stopped. | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
action | login-succeeded | The login was succesful | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
action | enter-cd | The user wants to chnage the current working diretcory. | |||||||||||||||
message | tcp-cl-send | API calls to send date to the server. | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
action | enter-ls | The user wants to view files in the current directory. | |||||||||||||||
message | tcp-cl-send | API calls to send date to the server. | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
action | enter-exit | The user wants to exit the bash and telnet session. | |||||||||||||||
message | tcp-cl-send | API calls to send date to the server. | |||||||||||||||
message | tcp-cl-receive | Return received data the app. | |||||||||||||||
message | tcp-cl-closed | Informs APP that connection is closed. | |||||||||||||||
action | exit-telnet | The telnet process was stopped. | |||||||||||||||
action | ssh-impl-intended | SSH implementation is intended in future. | |||||||||||||||
action | ftp-impl-intended | FTP implementation is intended in future. | |||||||||||||||
action | sftp-impl-intended | SFTP implementation is intended in future. | |||||||||||||||
action | smtp-impl-intended | STP implementation is intended in future. | |||||||||||||||
action | http-impl-intended | HTTP implementation is intended in future. | |||||||||||||||
action | https-impl-intended | HTTPS implementation is intended in future. |
KEP-Software
Knowledge and Expertise is Powerful
component | User | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
description | Represents an external user. | ||||||||||||||||
start-flow | User-flows | ||||||||||||||||
type | external | ||||||||||||||||
protocol | TCP | TCP - Protocol description. | |||||||||||||||
section | Visible actions | ||||||||||||||||
section | Intended in future |