SERVER SIDE:
#include<stdio.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<string.h>
int main(int argc,char **argv)
{
int len;
int listenfd,connfd,n;
struct sockaddr_in servaddr,cliaddr;
char b[1024];
char c[1000];
listenfd=socket(AF_INET,SOCK_STREAM,0);
if(listenfd<0)
perror("cannot create socket");
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_addr.s_addr=inet_addr("20.30.1.211");
servaddr.sin_port=htons(20064);
bind(listenfd,(struct
sockaddr*)&servaddr,sizeof(servaddr));
listen(listenfd,5);
len=sizeof(cliaddr);
connfd=accept(listenfd,(struct
sockaddr*)&cliaddr,&len);
if(connfd>0)
printf("\n connection established");
do
{
n=read(connfd,b,1024);
printf("\n reeive data %s",b);
printf("\n your acknowledgement[yes=1,no=0]:");
scanf("%s",c);
n=write(connfd,c,1024);
}while(1);
close(connfd);
close(listenfd);
return 0;
}
CLIENT SIDE:
#include<stdio.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<string.h>
int main(int arg,char **argv)
{
int len;
int sockfd,n,m,p;
struct sockaddr_in servaddr,cliaddr;
char buff[1024];
char buff1[1000];
char str[1000];
char d[10]={'a','b','c','d','e','f','g','h','i','j'};
int count[10],ack[10];
int i,j,k;
for(k=0;k<10;k++)
{
count[k]=0;
ack[k]=0;
}