tanszek:oktatas:integration_based_on_tcp_ip_sockets
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tanszek:oktatas:integration_based_on_tcp_ip_sockets [2023/03/05 16:10] – knehez | tanszek:oktatas:integration_based_on_tcp_ip_sockets [2023/03/05 16:22] (current) – knehez | ||
|---|---|---|---|
| Line 23: | Line 23: | ||
| * Results in the fastest possible transmission: | * Results in the fastest possible transmission: | ||
| * Where the number of transactions per second up to ~ 50 transactions, | * Where the number of transactions per second up to ~ 50 transactions, | ||
| + | |||
| + | |||
| + | [[Java example for Blocking and Non-Blocking Socket]] | ||
| + | |||
| + | ** Exercise 1. ** | ||
| + | |||
| + | Create a simplified FTP (file transport) client and **blocking** server where the client can send or download text files from the server: | ||
| + | |||
| + | == General use-cases == | ||
| + | -) Client connects to the server and sends a 'file listing' | ||
| + | -) Server sends back the list of the downloadable files | ||
| + | -) Client lists the files and asks the user what action they want to take? Upload or download? (' | ||
| + | -) In both cases users must give the full file name with extension | ||
| + | -) The client sends the selected file to the server (upload) or downloads the selected file from the server to a specific directory. | ||
| + | |||
| + | |||
| + | == Server viewpoint == | ||
| + | -) After connecting, it reads the files from the /store subdirectory and sends the file names to the client after receiving the listing message. | ||
| + | -) We are waiting for the client' | ||
| + | -) We get a filename from the client and if the action is ' | ||
| + | -) If the operation is ' | ||
| + | |||
| + | == Client viewpoint == | ||
| + | |||
| + | -) The client connects and waits for the list of files coming back and writes it to the console | ||
| + | -) We ask for the " | ||
| + | -) Then we'll ask for the file-name as well. | ||
| + | -) The client reads the files from the /files folder, or creates the downloaded file here | ||
| + | -) If you press " | ||
| + | -) If you press " | ||
| + | |||
| + | |||
| + | ** Exercise 2. ** | ||
| + | Modify the **non-blocking** code so that you can transfer a burned-in name and existing text or image file larger than 2 kbytes and verify that it was successfully sent. | ||
| + | |||
tanszek/oktatas/integration_based_on_tcp_ip_sockets.1678032633.txt.gz · Last modified: 2023/03/05 16:10 by knehez
