Forum     

Go Back   Digit Technology Discussion Forum > Software > Programming
Register FAQ Calendar Mark Forums Read

Programming The destination for developers - C, C++, Java, Python and the lot


Reply
 
LinkBack Thread Tools Display Modes
Old 25-12-2011, 11:32 AM   #1 (permalink)
Apprentice
 
dashang's Avatar
 
Join Date: May 2007
Posts: 99
Question Need help in Client server program


I want to implement a program in linux using c/c++ to implement client server architecture using pocket programming. It should be such that when a user
Stores a file on server the server slits the file and stores it on 2 or more server. Whenever user retrieves the file, the server retrieves the file again from different server forwards all the fragments to the user and display it in single file.

Please reply
__________________
visit my site: www.techdrome.blogspot.com
dashang is offline   Reply With Quote
Advertisements. Register and be a member of the community to get rid of them.
Advertisement

Old 25-12-2011, 12:44 PM   #2 (permalink)
BIOS Terminator
 
nims11's Avatar
 
Join Date: Apr 2008
Location: Ranchi
Posts: 816
Default Re: Need help in Client server program

Quote:
Originally Posted by dashang View Post
I want to implement a program in linux using c/c++ to implement client server architecture using pocket programming. It should be such that when a user
Stores a file on server the server slits the file and stores it on 2 or more server. Whenever user retrieves the file, the server retrieves the file again from different server forwards all the fragments to the user and display it in single file.

Please reply
that's socket programming

use socket() and connect() calls. here is an excellent tut Linux Howtos: C/C++ -> Sockets Tutorial
splitting and joining is easy file handling problem.
__________________
Arch Linux is kind of a bonzai tree, over years u try new things, make small tweaks, and end up with a system that is unique, elegant, and does exactly what u designed it to do.
Hostapd : The Linux Way to create Virtual Wifi Access Point
My Blog
nims11 is online now   Reply With Quote
Old 26-12-2011, 01:31 AM   #3 (permalink)
NULL_PTR
 
Join Date: Jan 2006
Location: Dangling Pointer
Posts: 88
Default Re: Need help in Client server program

google for beej's
__________________
Writing Mine Own Os
Wanna Join Pm ME
umeshtangnu is offline   Reply With Quote
Old 26-12-2011, 09:52 AM   #4 (permalink)
Apprentice
 
dashang's Avatar
 
Join Date: May 2007
Posts: 99
Default Re: Need help in Client server program

guys but what about
"user stores a file on server the server slits the file and stores it on 2 or more server." Please help in this.
If possible can you code it for me because i dont know anything about socket and our professors are recklesss. they just say do it , they dont teach also
__________________
visit my site: www.techdrome.blogspot.com
dashang is offline   Reply With Quote
Old 26-12-2011, 02:05 PM   #5 (permalink)
BIOS Terminator
 
nims11's Avatar
 
Join Date: Apr 2008
Location: Ranchi
Posts: 816
Default Re: Need help in Client server program

Quote:
Originally Posted by dashang View Post
guys but what about
"user stores a file on server the server slits the file and stores it on 2 or more server." Please help in this.
If possible can you code it for me because i dont know anything about socket and our professors are recklesss. they just say do it , they dont teach also
this is the case in all(most) colleges in India. so get used to it.

At least first go through that link i have given. it has very well explained sockets under Linux. Then attempt the program and if you face any problems, we are here to help.
__________________
Arch Linux is kind of a bonzai tree, over years u try new things, make small tweaks, and end up with a system that is unique, elegant, and does exactly what u designed it to do.
Hostapd : The Linux Way to create Virtual Wifi Access Point
My Blog
nims11 is online now   Reply With Quote
Old 26-12-2011, 02:52 PM   #6 (permalink)
God of Mistakes...
 
Garbage's Avatar
 
Join Date: Dec 2005
Location: Pune, Maharashtra
Posts: 1,923
Default Re: Need help in Client server program

First try to code simple program which stores a single file using the tutorial mentioned by nims11. Then post the code. Other members might help you in further coding.
__________________
Registered Linux User #468778
----------------------------------
http://twitter.com/_Garbage_
Garbage is offline   Reply With Quote
Old 07-01-2012, 12:53 PM   #7 (permalink)
Apprentice
 
dashang's Avatar
 
Join Date: May 2007
Posts: 99
Default Re: Need help in Client server program

server.C program
Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h> 
#include <sys/socket.h>
#include <netinet/in.h>

void error(const char *msg)
{
    perror(msg);
    exit(1);
}

int main(int argc, char *argv[])
{
     int sockfd, newsockfd, portno;
     socklen_t clilen;
     char buffer[256];
     struct sockaddr_in serv_addr, cli_addr;
     int n;
     if (argc < 2) {
         fprintf(stderr,"ERROR, no port provided\n");
         exit(1);
     }
     sockfd = socket(AF_INET, SOCK_STREAM, 0);
     if (sockfd < 0) 
        error("ERROR opening socket");
     bzero((char *) &serv_addr, sizeof(serv_addr));
     portno = atoi(argv[1]);
     serv_addr.sin_family = AF_INET;
     serv_addr.sin_addr.s_addr = INADDR_ANY;
     serv_addr.sin_port = htons(portno);
     if (bind(sockfd, (struct sockaddr *) &serv_addr,
              sizeof(serv_addr)) < 0) 
              error("ERROR on binding");
     listen(sockfd,5);
     clilen = sizeof(cli_addr);
     newsockfd = accept(sockfd, 
                 (struct sockaddr *) &cli_addr, 
                 &clilen);
     if (newsockfd < 0) 
          error("ERROR on accept");
     bzero(buffer,256);
     n = read(newsockfd,buffer,255);
     if (n < 0) error("ERROR reading from socket");
     printf("Here is the message: %s\n",buffer);
     n = write(newsockfd,"I got your message",18);
     if (n < 0) error("ERROR writing to socket");
     close(newsockfd);
     close(sockfd);
     return 0; 
}
client.C
Code:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h> 

void error(const char *msg)
{
    perror(msg);
    exit(0);
}

int main(int argc, char *argv[])
{
    int sockfd, portno, n;
    struct sockaddr_in serv_addr;
    struct hostent *server;

    char buffer[256];
    if (argc < 3) {
       fprintf(stderr,"usage %s hostname port\n", argv[0]);
       exit(0);
    }
    portno = atoi(argv[2]);
    sockfd = socket(AF_INET, SOCK_STREAM, 0);
    if (sockfd < 0) 
        error("ERROR opening socket");
    server = gethostbyname(argv[1]);
    if (server == NULL) {
        fprintf(stderr,"ERROR, no such host\n");
        exit(0);
    }
    bzero((char *) &serv_addr, sizeof(serv_addr));
    serv_addr.sin_family = AF_INET;
    bcopy((char *)server->h_addr, 
         (char *)&serv_addr.sin_addr.s_addr,
         server->h_length);
    serv_addr.sin_port = htons(portno);
    if (connect(sockfd,(struct sockaddr *) &serv_addr,sizeof(serv_addr)) < 0) 
        error("ERROR connecting");
    printf("Please enter the message: ");
    bzero(buffer,256);
    fgets(buffer,255,stdin);
    n = write(sockfd,buffer,strlen(buffer));
    if (n < 0) 
         error("ERROR writing to socket");
    bzero(buffer,256);
    n = read(sockfd,buffer,255);
    if (n < 0) 
         error("ERROR reading from socket");
    printf("%s\n",buffer);
    close(sockfd);
    return 0;
}
now what to do , i want client to uplload file and server shud split it and send to other server and when user retrieves server should combine the parts and send to user
__________________
visit my site: www.techdrome.blogspot.com

Last edited by krishnandu.sarkar; 07-01-2012 at 12:58 PM. Reason: added code tags and removed duplicate entries
dashang is offline   Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


 
Latest Threads
- by Charan
- by Sarath
- by clmlbx

Advertisement




All times are GMT +5.5. The time now is 12:37 AM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, vBulletin Solutions, Inc.

Search Engine Optimization by vBSEO 3.3.2