File and Chatting message transfer program with MFC
이름 | ID | |
---|---|---|
박정현 | rkwaol216@gmail.com | BiteSnail |
남동욱 | egddbr1213@naver.com | egddbr1213 |
신용인 | brin7584@gmail.com | poeo1877 |
이석호 | choonarm3@gmail.com | choonarm3 |
최준희 | junhee9807@gmail.com | serhong |
최재웅 | jaewoongchoi46@gmail.com | sleepychoi |
WinPcap
Download
MFC
다운은 VisualStudio Installer에서 가능
- 송수신 프로토콜 스택 흐름을 이해한다.
- 프로토콜 레이어별 역할을 파악한다.
- 네트워크 어뎁터를 이용할 수 있다.
- 두 대의 PC에서 각각 프로그램을 실행
- 두 대의 PC는 네트워크로 연결
- PC 1의 프로그램
- 전송할 파일 선택 or 1. 전송할 텍스트 입력
- 전송 버튼을 클릭
- 레이어 아키텍쳐에 의해서 Encapsulated Packet이 만들어짐 (Ethernet frame)
- NILayer의 Pcap 라이브러리로 작성된 코드에 의해 packet은 네트워크로 전송됨
- PC 2의 프로그램에서 PC1으로부터 Ethernet frame을 수신
- 하위 레이어부터 수신된 프로토콜이 PC 1로부터 보내진 패킷인지 검사
- 아니라면, discard(버림)
- 맞으면, 레이어 아키텍쳐에 의해서 Demultiplexing을 통해 header를 제외한 data 부분을 상위 레이어로 전달
- Header는 매 레이어마다 receive 함수에서 frame에 대해 나에게 온 것이 맞는 검사할 때 쓰임
- 최상위 레이어 (*Dlg.cpp)에 전달 될 때 까지 1번과 2번 과정을 반복함
- 전달된 결과 확인
- 하위 레이어부터 수신된 프로토콜이 PC 1로부터 보내진 패킷인지 검사
- 파일인 경우, 채팅&파일전송 프로그램이 위치한 곳에 설치됨 (기본 저장 경로 사용 시)
- 텍스트인 경우, 채팅&파일전송 프로그램 화면에서 채팅창(CListbox) 에 표기 됨
- 표기 방법은 IPC에서 채팅 표기 방법과 동일
프로그램을 이루고 있는 기본적인 구조와 역할에 대한 설명입니다.
출처 : woojin415@naver.com
사용자로부터 Source Accepter, Destination Address 설정 및 전송할 파일 및 메시지 입력
File&Caht Dlg Layer에서 텍스트를 전송/수신하는 경우 메시지의 길이에 따라 단편화를 통해 전송할 수 있도록 함
File&Caht Dlg Layer에서 파일을 전송/수신하는 경우 파일의 크기에 따라 단편화를 통해 전송할 수 있도록 함
수신된 프레임의 목적지 확인 후 수용 혹은 파기
Network Adapter와 상위 Layer간의 데이터 송수신을 중재함