최대 100명까지 접속 가능한 서버와 서버를 통해 실시간 채팅은 유지하면서 다양한 기능을 사용하는 프로그램입니다. 최대한 실시간 채팅 기능을 유지하는 방향으로 만들었습니다. Flag 를 통해 더 많은 기능을 확장 할 수 있는 채팅 프로그램입니다. 구현된 기능 목록 1. 실시간 채팅 (닉네임 변경 가능) 2. 더치 페이 기능 (계산기 활용) 3. 미니 게임 기능 (가위바위보 활용) 4. 파일 공유 기능 (파일 전송 활용) 다중 접속 쓰레드 및 채팅은 아래의 블로그를 참고로 만들었습니다. https://good-coding.tistory.com/17 #include #include #include #include #include #include #include #include #include #define ..
서버 소켓은 하나하나 연결에 사용되는것이아닌 연결요청을 받아들이는 용도로만 사용한다 (리스닝소켓, 고객 맞이용 소켓) Iterative 서버의 구현 문자열 다 받을때 까지 기다리고(while), 다 받으면 받은것을 write 한다. 한번에 들어온 문자열을 한번에 받아준다를 가정하고 쓴 코드. TCP는 데이터의 경계가 없기때문에 어디가 끝인지를 전혀 모른다. 즉 거기있으면 다 받아버린다(쓰레기값이 같이들어감) read만. write는 한바이트씩 보냄 그래서 읽어들일때 while(recv_len
---------------클라이언트의 프로세스 -----------------------전화기를 만들고, 커넥트한다. read write , close -------------- 5개의 함수만 알면된다. STREAM 방식은 IPPROTO_TCP 고정 DGRAM 방식은 IPPROTO_UDP 고정 socket(인터넷망,소캣방식,프로토콜) TCP : socket(AF_INET, SOCK_STREAM, IPPROTO_TCP) UDP : socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP) socket 함수 반환 값. ==> 0보다 큰 int 값, 소켓 디스크립터라고 부름 (소켓지정번호) #include #include int connect(int sockfd, const struct soc..
좌 스위치는 서울지역, 우 스위치는 대구 지역으로 가정한다. router0 의 FastEthernet 0/0 의 IP : 192.168.1.10 Subnetmask : 255.255.255.0 router0 의 Serial 0/0 의 IP : 192.168.2.1 Subnetmask : 255.255.255.0 , clock 64000 router1 의 FastEthernet 0/0 의 IP : 192.168.3.10 Subnetmask : 255.255.255.0 router1 의 Serial 0/0 의 IP : 192.168.2.2 Subnetmask :255.255.255.0 router0 의 RIP : network 192.168.1.0 , network 192.168.2.0 router1 의 R..