Go Back N ARQ의 C언어 구현
- 최초 등록일
- 2006.10.03
- 최종 저작일
- 2006.01
- 22페이지/ 압축파일
- 가격 3,000원
소개글
Go back N ARQ의 C구현입니다.
만점받은 레포트입니다.
실행방법은 소스코드를 실행시키기만 하연 됩니다.
그러면 Sender에서 패킷을 받은후 프레임을 만들어서 전송을 합니다.
그러면 Receiver에서는 프레임을 받아서 ack를 전송해 줍니다.
이러한 방법으로 Go back N ARQ를 구현하였습니다.
보내는 도중 에러율을 집어넣어 에러가 났을경우 다시보내는것도 구현하였습니다.
그리고 초단위로 자동 전송, 수신 됩니다.
그리고 에러율도 변경할수 있습니다.
그에 따른 전송 결과를 그래프로 나타내었습니다.
많이 받아가세요~
컴파일 실행환경
Microsoft visual c++,
본문내용
2. 소스 코드
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define MAX_QUEUE_SIZE 500
#define ERROR 0.0 //loss/corruption율 조절 (0 - 0.7)
#define SIMUL_TIME 100 //simulation time 조절
struct pkt{
char data[20];
};
struct frm{
int seqnum;
int acknum;
char payload[20];
};
/***************** circular queue를 사용 *****************/
frm send_frame[6];//전송frame queue structure
int frame_rear=0;//전송frame queue의 첫번째
int frame_front=0;//전송frame queue의 마지막 전값
frm send_ack[6];//ack 전송 structure
int ack_rear=0;//ack queue의 첫번째
int ack_front=0;//ack queue의 마지막 값
int simulation_time(void); //Time을 제공
int error_add(void); //error제공
void ant(int); //ant 수행
void ant_init(frm *, int *, int *);//ant queue초기화
void ant_in(frm *, int *, int *, int);//ack receive
void ant_out(pkt *, frm *, int *, int *, int);//frame send
void ant_timerinterrupt( int *);//timer interrupt
압축파일 내 파일목록
Go_Back_N_ARQ.hwp
Go_Back_N_ARQ.cpp
참고 자료
없음