0% found this document useful (0 votes)
0 views7 pages

Assignment

The assignment requires creating a server that sends a specific file to clients in a defined byte format, including the file name length and content. The server must listen on IP address 127.0.0.1 and Port 8000, with the file name provided as a command line argument. Both server and client applications should be console-based, and testing involves building and running each project separately.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
0 views7 pages

Assignment

The assignment requires creating a server that sends a specific file to clients in a defined byte format, including the file name length and content. The server must listen on IP address 127.0.0.1 and Port 8000, with the file name provided as a command line argument. Both server and client applications should be console-based, and testing involves building and running each project separately.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Assignment

• Server sends a specific file to every client that


connects to it.
• The file name should be sent with the file data in
the same byte array.

• The first 4 bytes should represent an integer that


represents the length of the file name.
• If the file name is “file.txt” and has “abcdefgh” as
content then the first 4 bytes should be the binary
representation of the number “8” (length of “file.txt”)
Assignment
• Then the next 8 bytes should represent the 8
characters of the file name “file.txt”
– byte #4 -> ascii of ‘f’
– byte #5-> ascii of ‘i’
– ….
0 0 0 8 f i l e . t x t a b c d e f g h

• The rest of the bytes should be the file contents.


• You cannot use the “Socket.SendFile” method.
• Hint: use BitConverter.GetBytes to convert int to
byte array.
• Hint: use CopyTo method in the array to copy
array into another at specific indices.
Assignment Delivery Rules
• Console Application for each of the Server and
client.
• We may test the server using our own client,
so the server must send with the specified
format.
• At the application startup, write your name
and section and department exactly as in the
screenshot.
Assignment Delivery Rules
• The server should listen for connection on IP
address: 127.0.0.1 and Port 8000.
• The file name will be passed to the server as a
command line argument.
• You can set the argument in the debug time
by opening the project properties and setting
the command line arguments in the Debug
tab.
Assignment Delivery Rules
• Running the exe using cmd.
Testing the Client/Server apps
• Build each project
• Right click on the “server” project -> Debug -
>Start new instance.
• Right click on the “Client” project-> Debug -
>Start new instance.
References
• C# Network Programming, by Richard
Blum ISBN:0782141765 Sybex © 2003.
• Stanford CS244A course handouts.

You might also like