|
|
|
|
TCP Applet |
|
|
Transmisson Control Protocol (TCP)
|
Introduction
Main window
Menu
Finite State Machine
Application windows (Telnet / FTP)
Channel
|
Start the Applet |
Introduction
|
TCP/IP is made up of two acronyms, TCP, for Transmission Control Protocol, and IP, for Internet
Protocol. TCP handles packet flow between systems and IP handles the routing of packets. However, that is a simplistic answer that we will expound on further. All modern networks are now designed using a
layered approach. Each layer presents a predefined interface to the layer above it. By doing so, a modular design can be developed so as to minimize problems in the development of new applications or in adding new
interfaces. The ISO/OSI protocol with seven layers is the usual reference model. Since TCP/IP was designed before the ISO model was developed it has five layers; however the differences between the two are
mostly minor. 7. Application -- End user services such as email.
6. Presentation -- Data problems and data compression 5. Session -- Authenication and authorization
4. Transport -- Gaurentee end-to-end delivery of packets 3. Network -- Packet routing
2. Data Link -- Transmit and receive packets 1. Physical -- The cable or physical connection itself. |
|
TCP/IP-Reference Model |
Application-Layer |
Transport-Layer |
Network-Layer |
Datalink-Layer |
Physical-Layer |
|
Application Layer: Some of the applications we will cover are SMTP (mail), Telnet, FTP, Rlogin, NFS, NIS, and LPD
Transport Layer: The transport uses two protocols, UDP and TCP. UDP which stands for User
Datagram Protocol does not gaurentee packet delivery and applications which use this must provide their own means of verifying delivery. TCP does gaurentee delivery of packets to the applications which use it.
|
|
Main Window
|
|
Menu
|
Menu "Options":
- "Userlevel" : contains two possible levels: "Beginner" and "Advanced".
In the beginner mode, only TCP open- and close- connection can be investigated . In "Advanced" -
Mode user can investigate the and simulate the following two applications (Telnet and FTP)
- "Graphics": In this menu, the user can choose between arrows and channel-pictures to present the data transfer between client and server.
- "Ouit": ends the applet execution.
Menu "Screen": the size of the applet window can be changed according to the values choosen. Menü "Modus": only usable in the “Beginner” level. It turns the
"Automaticmodus" on. |
|
Buttons |
- Start-button in the in the user level "Beginner": This button serves to cause an automatic opening of a connection.. The right Host first leads a passive Open and comes through it into the condition
" LISTEN ". The left Host leads an active Open.
- Close-Button: This button appears after the successful connection-open operation to close it.
- Clear History Panel: Cause an erasure of the History.
- Reset: Causes a reset of the simulation.
- TCP FINITE STATE MACHINE: when activing this button, a new displaying the TCP-Finite State Machine will be launched.
|
|
TCP Finite State Machine |
- The shaded drawn arrows in this finite state machine characterize a state change of the server
- the thickly drawn arrows characterize a a state change of a Client mark
|
|
|
|
Applications (Telnet & FTP)
|
Buttons
- Servers: Cause a passive opening of a connection
- Dismiss: Close the window without finishing the execution of the application
- Abort: break the execution of the application up
- Client: Cause an active opening of a connection
Ports
- Local Port of the application
- Dest. Port: destination port on the other machine
Checkboxen
- TELNET: the Telnet protocol will be choosen as an application. It has two buttons:
- Push: all data will be transmitted immediately.
- Auto send: causes an automatic send of the data to be transmitted
- FTP: the FTP protocollwill be choosen
|
Telnet
FTP |
Channel
|
Choosing Error "ERROR" one can simulate a network error on the chanel. Two possible errors can be simulated:
- "Bit-Error" where the "Error-Rate" can be adjusted, and
- "Kill Segment"
Choosing "Delay on" the datatransfer will be delated. In the textfield the delay in “milli second” (between 0 and 700) can be given, while choosing “Random” a delay value between 0 und 700 ms will be
randomely generated. |
|
|
|