목차
network programming
socket stream을 이용한 server/client echo program
**** 동작 ****
**** 구현원리 *****
**** socket system 호출 ****
**** 기본알고리즘 ****
******* SOURCE CODE *******
******* inet.h *******
******* server.c ********
******* client.c ********
socket stream을 이용한 server/client echo program
**** 동작 ****
**** 구현원리 *****
**** socket system 호출 ****
**** 기본알고리즘 ****
******* SOURCE CODE *******
******* inet.h *******
******* server.c ********
******* client.c ********
본문내용
AF_INET,SOCK_STREAM,0))<0) {
printf(\"Client : can\'t open stream socket\");
exit(1);
}
/* 서버에 접속 */
if (connect(sockfd,(struct sockaddr *)&serv_addr,sizeof(serv_addr)) <0)
{
printf(\"Client : can\'t connect to server\");
exit(1);
}
for (;;) {
scanf(\"%s\",paket);
/* 소캣에 데이터를 쓴다 */
if (strcmp(paket,Exit)==0) break;
if (write(sockfd,paket,sizeof(paket))<0) {
printf(\"Client : write error\");
exit(1);
}
/* server로 부터 메세지를 받는다 */
if ((len=read(sockfd,buff,MAXBUFSIZE)) <=0) {
puts(\"Client : read error\");
exit(1);
}
/* 받은 부분을 출력한다 */
printf(\"%s\\n\",buff);
bzero((char *)&buff,sizeof(buff));
}
close(sockfd);
}
printf(\"Client : can\'t open stream socket\");
exit(1);
}
/* 서버에 접속 */
if (connect(sockfd,(struct sockaddr *)&serv_addr,sizeof(serv_addr)) <0)
{
printf(\"Client : can\'t connect to server\");
exit(1);
}
for (;;) {
scanf(\"%s\",paket);
/* 소캣에 데이터를 쓴다 */
if (strcmp(paket,Exit)==0) break;
if (write(sockfd,paket,sizeof(paket))<0) {
printf(\"Client : write error\");
exit(1);
}
/* server로 부터 메세지를 받는다 */
if ((len=read(sockfd,buff,MAXBUFSIZE)) <=0) {
puts(\"Client : read error\");
exit(1);
}
/* 받은 부분을 출력한다 */
printf(\"%s\\n\",buff);
bzero((char *)&buff,sizeof(buff));
}
close(sockfd);
}
소개글