CS/네트워크(4)
-
[socket programming] 간단한 webserver 구현
webserver.c #include #include #include #include #include #include #include #include void error_handling(char *message); int main(int argc, char *argv[]){ int sock_serv; int sock_clnt; int port; struct sockaddr_in addr_serv; struct sockaddr_in addr_clnt; char buffer[1024]; char path[1024]; //path 경로 설정 char html[1024]; if(argc!=2){ printf("Usage : %s \n", argv[0]); exit(1); } port = atoi(argv[1])..
2020.12.11 -
[socket programming] udp를 이용한 파일 전송 프로그램
server 코드 (UDPserver.c) #include #include #include #include #include #include #include #include #define BUFSIZE 1024 void error_handling(char *message); int main(int argc, char **argv){ FILE* file; int sd; char file_name[BUFSIZE]; char buf[BUFSIZE]; int buf_len; int filename_len; struct sockaddr_in serv_addr; struct sockaddr_in clnt_addr; int clnt_addr_size = sizeof(clnt_addr); if(argc!=2){ prin..
2020.12.11 -
[socket programming] tcp 이용한 파일 전송 프로그램
server 코드 (TCPserver.c) #include #include #include #include #include #include #include #include #define BUFSIZE 1024 //#define MAX_PATH 10 void error_handling(char *message); int main(int argc, char **argv) { FILE* file; //파일 int sd; //서버소켓 int cd; //클라이언트소켓 char file_name[BUFSIZE]; char buf[BUFSIZE]; int buf_len; int filename_len; struct sockaddr_in serv_addr; struct sockaddr_in clnt_addr; int ..
2020.12.11 -
socket programming #1
1. Network programming Interfave(API) 1 ) API : Application Programming Interface - service를 부를 수 있는 application - application 을 위해 system에 의해 제공되는 interfaces and abstractions 2) Network Programming at different levels - send Ethernet, ATM, ... packets -> layer2 (L2) 쪽을 access해서 사용 (복잡, 잘 안씀) - exchange UDP/TCP packets -> layer4 (L4) - RPC, Xlib, Corba.. 2. API for TCP/IP - TCP/IP 는 정해진 API defi..
2020.12.09