예전에 아시는분이 Winpcap으로 플밍을 하면 재밌다고 하셨는데 그때는 사실 와닿지 않았습니다.

하지만 오늘 깨달았네요 ㅎ

라이브러리를 불러오고 레퍼런스 보면서 짜기만 하면 되니 이것처럼 편한게 어딨을까요 ㅋ



따로 캡쳐한 패킷들을 txt파일로 남기는 기능을 구현하려고 했는데 구현하다보니 소스가 너무 길어져서 뺐어요 ㅋㅋ

역시 C는 소스가 너무 길게 되서 탈.. ㅋㅋㅋ



만들게 된 계기는 vmnet이 꼬여서 패킷을 보려고 ... ㅋㅋㅋㅋ

전 주로 패킷 볼 때 와이어샤크 쓰는데 vmnet을 캡쳐하면 프로그램이 죽어버리더라구요.

이게 왜 그런지 아시는분은 알려주세요... ㅠㅠ

무선네트워크 카드랑 유선네트워크 카드는 다 되는뎅 vm NIC만 안되염 ㅋㅋ
  1. Favicon of https://mupa.tistory.com BlogIcon mupa 2009.12.31 00:56 신고

    제 홈피에 답글보고 여기 까지 왔습니다..그러고보니 동종업계였네요..
    Winpcap이라 처음보는건데 그렇게 편한가요??ㅎㅎㅎ

    전 여행 끝나고 2년만에 책상앞에 앉으니 좀 갑갑합니다..
    기초부터 다시 공부해야할듯....흑...ㅜㅜ
    그럼 담에 또 놀러 오겠습니다~~~^^

    • Favicon of https://maj3sty.tistory.com BlogIcon MaJ3stY 2009.12.31 12:24 신고

      ㅎㅎㅎ 방문 감사합니다 ^^

      소켓하고 비슷한건데 라이브러리가 다 있어서 개발환경에

      라이브러리만 추가시켜주고 불러와서 쓰시면 되요 ㅎㅎ

      저도 군대다녀오면 무파님처럼 갑갑하겠죠 ㅠㅠ??

      그럼 다음에 또 뵈요 ^^

1. 멀티플렉싱이란?

 - 멀티플렉싱이란?
 1) 하나의 전송로를 여러 사용자가 동시에 사용해서 효율성을 극대화 하는 것




2. I/O 멀티플렉싱 기반의 서버

 - I/O 멀티플렉싱이란?
 1) 클라이언트와의 입/출력을 담당하는 프로세스를 하나로 묶어버리는 형식.
 2) 프로세스가 고속의 전송로에 해당한다.





3. 멀티 프로세스 vs 멀티플렉싱

 - 멀티 프로세스 기반의 서버
 1) 클라이언트와 서버간의 송수신 데이터 용량이 큰 경우.
 2) 송수신이 연속적으로 발생 하는 경우에 적합.

 - 멀티플렉싱 기반의 서버
 1) 클라이언트와 서버간의 송수신 데이터 용량이 작은 경우.
 2) 송수신이 연속적이지 않은 경우에 적합.
 3) 멀티 프로세스 기반의 서버에 비해 많은 수의 클라이언트 처리에 적합.

1. 가위 바위 보 게임 구조

 - 파이프 생성.

 - 자식 프로세스 생성.

 - 데이터 입력(가위 바위 보 선택)

 - 파이프 통해 데이터 전송(자식->부모)

 - 승자 확인!

 - 결과 전송(부모->자식)



1. 파이프의 특성

 - 파이프는 fork 함수에 의해서 복사 되지 않는다.
 1) 파이프의 입 출력을 의미하는 파일 디스크립터가 복사 되는 것이다.

 - 파이프는 방향성이 존재하지 않는다.





2. 양방향 통신을 위한 파이프의 생성

 - 하나의 파이프는 하나의 용도로만 사용한다.
 1) A 프로세스에서 B 프로세스로 데이터 전송하기 위한 파이프 하나.
 2) B 프로세스에서 A 프로세스로 데이터 전송하기 위한 파이프 하나.


1. 프로세스간 통신

 - 프로세스간 통신의 정의
 1) 독립된 프로세스 간에 데이터를 주고 받는 행위를 의미함.

 - 프로세스간 통신의 문제점.
 1) 독립된 프로세스는 공유하는 메모리가 존재하지 않기 때문에 메모리를 공유해서 데이터를 주고 받는 것은 불가능!

 - 해결책
 1) 운영체제는 서로 독립된 프로세스들이 데이터를 주고 받을 수 있도록 '파이프'라는 것을 제공한다.

 


2. 파이프의 생성

 - 파이프 생성 함수

#include <unistd.h>

int pipe(int fd[2]);



3. 파이프의 생성과 프로세스간 통신


+ Recent posts