版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验报告课程名称:计算机网络编程学院:计算机科学与工程学院专业:计算机科学与技术指导教师:学生姓名:田茂学号:2013060103004实验成绩:日期:2015年11月电子科技大学计算机学院实验中心电 子 科 技 大 学实 验 报 告一、实验一:(实验项目的名称):针对ECHO服务的TCP客户软件的实现二、实验室名称: 主楼A2-412 实验时间:第十周周日9:00-12:00 三、实验目的:1.掌握TCP客户端软件的工作原理。2.掌握针对ECHO服务的TCP客户端软件的编程步骤和编程实现,并最终形成可执行代码四、实验原理:Echo服务是一种非常有用的用于调试和检测的工具。这个协议的作用也十分
2、简单,接收到什么原封发回就是了。 基于TCP协议的Echo服务有一种Echo服务被定义为在TCP协议上的面向连接的应用。主要用于调试和检测中。它可以基于TCP协议,服务器就在TCP端口7检测有无消息,如果使用UDP协议,基本过程和TCP一样,检测的端口也是7。是路由也是网络中最常用的数据包,可以通过发送echo包知道当前的连接节点有那些路径,并且通过往返时间能得出路径长度。五、实验内容:本实验主要完成针对ECHO服务的TCP客户软件的实现。实验内容包括:1、编程环境的准备,要求在Linux操作系统下安装GCC或CC编译器。2、利用编辑器编写客户软件代码(编辑器自选,如文本编辑器,或Linux的
3、Vi等)3、利用GCC编译器调试并形成可执行代码4、运行客户程序,验证功能实现。5、程序框图如下:六、实验器材(设备、元器件):VMware Workstation,Ubtuntu操作系统,gcc编译工具,SecureCRT七、实验步骤:1、在Windows机上安装Linux环境, 如Vmware下安装Linux, 或装Ubuntu, 或直接安装Linux hat等.2.利用SecureCRT编写源程序3.源代码如下:#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <st
4、ring.h>#include <stdarg.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include <netdb.h>#include <errno.h>#define LINELEN 128extern int errno;int TCPecho(const char *host, const char *service);int errexit(cons
5、t char *format,.);int connectsock(const char *host, const char *service, const char *transport );int connectTCP(const char *host, const char *service);int main(int argc, char *argv) char *host= "localhost" char *service= "echo" switch(argc)case 1: host = "localhost" bre
6、ak;case 3: service = argv2;case 2: host=argv1; break;default: fprintf(stderr,"usage:TCPechohostportn"); exit(1); TCPecho(host,service); exit(0);int TCPecho(const char *host,const char *service) char bufLINELEN+1; int s,n; int outchars, inchars; s=connectTCP(host, service); while(fgets(buf,
7、sizeof(buf),stdin) bufLINELEN='0' outchars=strlen(buf); (void)write(s,buf,outchars); for(inchars=0;inchars<outchars;inchars+=n) n=read(s,&bufinchars,outchars-inchars); if(n<0) errexit("socker read failed: %sn",strerror(errno); fputs(buf,stdout); int errexit(const char *fo
8、rmat,.) va_list arg; va_start(arg, format); vfprintf(stderr,format,arg); va_end(arg); exit(1);int connectsock(const char *host, const char *service, const char *transport ) struct hostent *phe; struct servent *pse; struct protoent *ppe; struct sockaddr_in sin; int s, type; memset(&sin, 0, sizeof
9、(sin); sin.sin_family = AF_INET; if ( pse = getservbyname(service, transport) ) sin.sin_port = pse->s_port; else if (sin.sin_port=htons(unsigned short)atoi(service) = 0) errexit("can't get "%s" service entryn", service); if ( phe = gethostbyname(host) ) memcpy(&sin.sin
10、_addr, phe->h_addr, phe->h_length); else if ( (sin.sin_addr.s_addr = inet_addr(host) = INADDR_NONE ) errexit("can't get "%s" host entryn", host); if ( (ppe = getprotobyname(transport) = 0) errexit("can't get "%s" protocol entryn", transport); if
11、(strcmp(transport, "udp") = 0) type = SOCK_DGRAM; else type = SOCK_STREAM; s = socket(PF_INET, type, ppe->p_proto); if (s < 0) errexit("can't create socket: %sn", strerror(errno); if (connect(s, (struct sockaddr *)&sin, sizeof(sin) < 0) errexit("can't connect to %s.%s: %sn", host, service, strerror(errno); return s;int connectTCP(const char *host, const char *service) return connectsock(host,service,"tcp");4. 编译并调试程序切换到源代码所在的目录,使用GCC指令进行编译 $ GCC o echo_c e
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年甘肃张掖市民乐县第一中学招聘专业技术人员英语教师岗位招聘计划核减笔试备考试题及答案解析
- 四川省自贡市所属事业单位2026年公开选调工作人员(95人)笔试参考题库及答案解析
- 2026年传播知识传播真理传播
- 招9人!都兰县第一小学面向社会公开招聘九名临聘人员笔试参考题库及答案解析
- 2026广东阳江市社会福利院招聘3人笔试备考试题及答案解析
- 2026年土地资源管理师实务仿真题
- 2026年高职(药品生产技术)阶段达标测试试题及答案
- 2026年高职(学前教育)幼儿心理学综合测试题及答案
- 2026年红外线加热管行业分析报告及未来发展趋势报告
- 2026年绿色供应链管理师高级模拟试题
- 2025年贵州省贵阳市初二地理生物会考考试试题及答案
- 2026年宁波市九年级中考语文一模试卷附答案解析
- 第13课 每个人都有梦想 课件(内嵌视频)2025-2026学年道德与法治二年级下册统编版
- 【完整版】施工现场群体性事件应急预案
- 2026年中考历史考前冲刺:小论文 满分方法指导讲义
- 2026首创证券股份有限公司校园招聘备考题库附答案详解ab卷
- 《新能源汽车整车控制技术》课件-项目1 整车控制器系统概述
- 2025广东省低空经济产业发展有限公司招聘13人笔试历年典型考点题库附带答案详解
- 2025年公共卫生监测与防控指南
- 钢铁企业节能降耗培训
- 2025四川成都经济技术开发区(龙泉驿区)“蓉漂人才荟”考核招聘事业单位人员(第二批)10人考试笔试备考题库及答案解析
评论
0/150
提交评论