소켓통신을 이용한 파일 전송, 검색, 회원가입
- 최초 등록일
- 2012.06.27
- 최종 저작일
- 2012.06
- 13페이지/ 압축파일
- 가격 1,500원
소개글
직접 본인이 작성한 코드입니다. A+ 자료입니다.
. 내용: 클라이언트-서버와 같은 분산환경에서 네트워크 프로그램을 이용한 프로그램 작성
1. 소켓통신을 이용하여 서버-클라이언트 통신이 가능하게 하였습니다.
2. 파일 전송이 가능합니다.
3. 서버는 중계소 역할을 합니다. 클라이언트들 끼리 파일 전송이가능합니다.
4. 파일 검색 기능이 있습니다.
5. 회원가입, 로그인 기능이 포함되었습니다.
6. 상대방의 파일 소유 목록을 받아 볼수 있습니다.
목차
1. 보고서.
2. 각 서버, 클라이언트 소스코드
본문내용
이번 프로젝트는 소켓 통신을 통해 서버를 경유한 클라이언트간의 파일 전송 프로그램이다. 우선 소켓 통신을 구현함에 있어서 TCP구조로 만들어 파일 전송에 있어서 오류가 발생하지 않도록 하였다. 문제는 클라이언트 부분의 구현이었는데, 클라이언트의 경우 자신이 직접 메뉴를 선택하는 부분도 있지만, 언제 파일 전송요청이나 검색을 요청받게 될지 모른다. 따라서 두 개의 쓰레드를 통하여 구현하여야만 한다. 서버의 경우 특정 클라이언트에게 어떤 정보를 보내고 있다고 가정할 시, 다른 클라이언트로부터 그 특정 클라이언트에게 파일 검색 요청 정보를 보내게 될 수 있다. 이렇게 된다면 하나의 socket라인을 이용하게 되는데 그럴 경우 서로 다른 정보가 섞일 수 도 있고, 오류가 발생하게 된다. 따라서 동기화가 이루어 질 수 있도록 mutex를 설정하여 write가 이루어 질 수 있도록 하였다. 프로젝트를 진행하면서 어떤 식으로 서버와 클라이언트 간에 통신이 발생하게 되는지, 정보의 전달이 어떤 방식으로 이루어지는지 자세히 파악할 수 있는 기회였다. MySQL을 통해 DataBase를 작성하고 이를 이용할 수 있게 하였는데, 이는 서버가 꺼졌을 경우 다시 작동하더라도 DataBase에 접속하여
참고 자료
없음
압축파일 내 파일목록
server.c
200420254_김동선_OS.hwp
client.c