This page describes the TCP front-end interface process to the Network Transport Stack (NTS) of the SHELL used by the cloudFPGA platform.
The TCP Shell Interface (TSIF) handles the control flow interface between the SHELL and the ROLE. The main purpose of the TSIF is to open port(s) for listening and for connecting to remote host(s). Its use is not a a prerequisite, but it is provided here for sake of clarity and simplicity.
A block diagram of the TCP Shell Interface is depicted in Figure 1. It features:
- a Listen (LSn) process to request the SHELL/NTS/TOE to start listening for incoming connections on a specific port (.i.e open connection for reception mode).
- a Connect (COn) process to open a connection to a remote HOST or FPGA socket.
- a Read Request Handler (RRh) that handles the notifications indicating availability of new data for the application layer, and accepts (or reject) them.
- a Read Path (RDp) process that waits for new data segments from SHELL/NTS/TOE and forwards them to the TCP Application Flash (TAF) core.
- a Write Path (WRp) process that waits for new data segments from the ROLE/TAF and forwards them to SHELL/NTS/TOE.
Figure-1: Block diagram of the TCP Shell Interface
| Acronym | Description | File |
|---|---|---|
| SHELL | TCP application interface to shell Kale. | Shell |
| TAF | TCP Application Flash | tcp_app_flash |
| Acronym | Description | Filename |
|---|---|---|
| COn | Connect process | tcp_shell_if |
| LSn | Listen process | tcp_shell_if |
| RDp | Read Path process | tcp_shell_if |
| RRh | Read Request Handler process | tcp_shell_if |
| WRp | Write Path process | tcp_shell_if |
