help me about sending file through socket udp with c in linux


 
Thread Tools Search this Thread
Top Forums Programming help me about sending file through socket udp with c in linux
# 1  
Old 08-18-2010
help me about sending file through socket udp with c in linux

hi, i am newbie of socket. i want to ask some question. if i want to send file from client to server, how do i do? and if i want to send file from server to client, how do i do?
any pro help me and if possible, you can post code for an example
i need it very much
thank you for helping meSmilie
Y!M: tran_thanh_tung_196

Last edited by tung1984; 08-19-2010 at 12:11 AM..
# 2  
Old 08-19-2010
Your question doesn't make much sense. Doing this in TCP is relatively straightforward -- you connect to somewhere, then just write() and read() and expect the data to arrive the same way you sent it. UDP doesn't do that. It sends plain unadorned packets without any connection. To send a stream in UDP you have to figure out a way to manage lots of things that TCP would do for you, like:
  • Connections -- What do you send to your server in order to tell it to send a file? How do you tell it to stop?
  • Packets -- In TCP you can send as much as you want at a time and the socket handles the rest. UDP only lets you send about a kilobyte at once at most. Your file will have to be broken into bits and sent individually.
  • Ordering -- packets sent over UDP aren't guaranteed to arrive in the order you sent. You'll need to add extra data to each telling which packet they are. If you receive any in the wrong order, you'll need to hang onto them until you get the missing pieces.
  • Errors -- TCP automatically retries for you when things get lost, UDP doesn't. You'll need a way to ask the sender to resend a packet if you don't get it in a reasonable amount of time.
  • Flow control -- TCP waits for the receiver to be ready to deal with new data so it doesn't get overflowed with data it's not ready for. UDP doesn't have this kind of control: You have to handle that yourself.
There's no small example because it's not a small question. What it means is writing your own stream sockets from scratch.

Take a look at UDP Cast if you like, it sends a stream over UDP handling flow control and retransmission and the like.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

UDP Socket File Sharing

Hai, I am having one server/client both running in different host in UDP. How can i assure whether the data is recieved properly in client side. I am writing 250 KB in Server and client reading only 150 KB data. I am using select write in server and select read in client also.If i am putting one... (1 Reply)
Discussion started by: andrew.paul
1 Replies

2. Programming

socket programming using UDP connection

I want to send packets through single socket() but using two different port numbers in UDP. Anybody give some idea on this. Thanks in advance.:) (2 Replies)
Discussion started by: naresh046
2 Replies

3. Programming

Socket Programming file sending

Hello everyone,, I am doing one socket programming.Is it possible to send one file from client to server without using buffer??.I am sending tar files. Thanks in Advance (9 Replies)
Discussion started by: andrew.paul
9 Replies

4. Programming

reliable udp and socket programming

could somebody give me hand programming the attached request. my code isn't complete and i do not really understand how should i implement that. (1 Reply)
Discussion started by: makaveli_
1 Replies

5. IP Networking

UDP server socket inaddr_any - How to get the real IP

Hello ! I seem to have the same problem as in https://www.unix.com/ip-networking/91203-inaddr_any-opposite.html#post302262417 But I can't find a solution. I have a UDP server socket bound to 0.0.0.0. The server hosts the addresses IP1, IP2 and IP3. I get an incoming request to IP1. I use... (1 Reply)
Discussion started by: steinwej
1 Replies

6. UNIX for Dummies Questions & Answers

socket programming using udp for chat application

hi, i have a source code for 1 server and 2 clients ...but the clients are not able to send data..1 server only receives data from clients and forwards to any other client, the data is in the buffer.....please help... thank you in advance..... /**********client1***************/ // Here Data... (1 Reply)
Discussion started by: unsweety
1 Replies

7. UNIX for Dummies Questions & Answers

udp socket programming

Hi...Please can someone send me implementation chat application using UDP(socket programming in C). Please send me as soon as possible. Thanks in advance. (2 Replies)
Discussion started by: unsweety
2 Replies

8. Programming

socket programming (UDP with multiple clients)

Hi all, I have an application where there are 5 udp clients/senders which keep sending data to same IP with different port number can I design my udp server to recieve data from all 5 clients at the same time? how should I use the server address structure? should I use different... (3 Replies)
Discussion started by: shashi
3 Replies

9. Programming

UDP socket - can both client and server recv and send

Hi, Am very new to socket programming. When we use UDP sockets to communicate between two processess, will both the client/server socket be able to send/recv ? meaning can sendto()/ recvfrom() be used on both server and client? It could be useful even if anybody provide some link on socket... (1 Reply)
Discussion started by: rvan
1 Replies

10. Shell Programming and Scripting

Socket programming in bash (using /dev/udp)

Hi, I am trying to write 2 simple scripts. One to echo a message into a socket, and the other to read from it. There are many tutorials about, but they're mostly about retrieving web pages through a socket. The code I'm trying is echo qwerty > /dev/udp/localhost/22 (the first port I found that... (2 Replies)
Discussion started by: zeppelin147
2 Replies
Login or Register to Ask a Question