tcpip协议分析及实现课程设计.doc

上传人:F****n 文档编号:90893812 上传时间:2019-06-19 格式:DOCX 页数:11 大小:23.71KB
返回 下载 相关 举报
tcpip协议分析及实现课程设计.doc_第1页
第1页 / 共11页
tcpip协议分析及实现课程设计.doc_第2页
第2页 / 共11页
tcpip协议分析及实现课程设计.doc_第3页
第3页 / 共11页
tcpip协议分析及实现课程设计.doc_第4页
第4页 / 共11页
tcpip协议分析及实现课程设计.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《tcpip协议分析及实现课程设计.doc》由会员分享,可在线阅读,更多相关《tcpip协议分析及实现课程设计.doc(11页珍藏版)》请在金锄头文库上搜索。

1、tcpip协议分析及实现课程设计篇一:TCP_IP课程设计报告TCP/IP课程设计报告指导教师专业班级 学 号 姓 名1. 设计目的:文件传输是应用层中的一个主要协议,负责将主机中的文件从一台机器传送到另一台机器。文件传输协议FTP采用客户/服务器的工作模式,由客户端产生操作要求,服务器接收到该请求后返回响应。此次课程设计的目的是通过对课程所学相关知识的实践,加深对TCP/IP socket编程原理的理解,熟练对TCP/IP socket编程方法和技巧的掌握。2功能描述:采用Client/Server模式实现ftp功能:1)客户端:客户端利用用户名、口令登录客户端能够以控制台方式浏览服务器目录

2、及文件(ls, cd); 完成与FTP用户的人机界面,以命令的方式向服务器请求服务; 2)服务器端: 允许用户登录服务器;接收客户端的命令请求并能够并发的实现上传(put)、下载(get)文件服务;3设计原理:服务器端通过socket 系统调用创建一个Socket,与指定的本地端口绑定bind ,就可以在端口进行侦听listen 。如果有客户端连接请求,则通过系统调用accept 将客户端地址赋给这个Socket。然后等待客户登录,若有客户成功登录则利用系统调用fork 创建子进程并发的为客户提供ftp服务。客户端程序相对简单,只需要建立一个Socket与系统调用connect 与服务器端连接

3、,然后成功登录后通过这个Socket来发送ftp服务请求和接收数据就可以了。4系统详细设计:1)服务器端:a.程序流程图:b.数据结构设计:在服务器端定义了5个全局变量:#define BUFSIZE 1024 /每次传送文件大小 #define QLEN 20 /监听队列允许最大数目 char inbufBUFSIZE+1; /输入缓冲大小 char outbufBUFSIZE+1;/输出缓冲大小unsigned int inlen,outlen; /inbuf及outbuf的长度在每次传输报文件前加了一个结构体变量,标识了传送文件大小,本次传送大小,已传送了多少及这是这个文件传送的第几次。

4、 typedef struct fileheadnodeunsigned long filesize;/文件大小。unsigned long nowfilelen;/当前文件以发送大小。unsigned long clen;/此次发送数据大小。 unsigned long ctimes;/此次是发送的第几次。filehead; c.函数功能描述: 1)int logined;这个函数用来允许客户登录到服务器,如果客户端登录名及密码均正确,则登录成功,反之,登录失败。 int ftpserver;此函数用来实现循环接受客户端请求,并根据请求调用相关函数实现服务功能。 int get50); ge

5、t函数的作用是处理客户端的下载请求。 int put50); put函数的作用是处理客户端的上传请求。 int ls50); ls 函数允许客户端遍历服务器端文件 int cd50);函数cd 的作用是打开服务器的文件目录。C.服务器端代码: #include #include #include #include #include #include #include #include #include #include #include #include#define BUFSIZE 1024 #define QLEN 20 char inbufBUFSIZE+1; char outbufBU

6、FSIZE+1; unsigned int inlen,outlen; char xxv350; char file50;typedef struct fileheadnodeunsigned long filesize;/文件大小。unsigned long nowfilelen;/当前文件以发送大小。 unsigned long clen;/此次发送数据大小。 unsigned long ctimes;/此次是发送的第几次。filehead; filehead header;int logined; int ftpserver;int get50); int put50); int ls5

7、0); int cd50);int main int sev_soc,cl_soc;unsigned int sev_len,cl_len; char *service=21;unsigned short portbase = 0;篇二:TCPIP协议分析课程设计成绩:TCP/IP协议分析课程设计题 目:ICMP协议分析院:专业班级:姓 名:学 号:任课教师:20XX年6月10日TCP/IP协议分析课程设计目 录1协议概述 . 1协议名称 . 1协议主要功能 . 1协议 . 1协议版本发展历程 . 22协议工作原理及流程 . 2协议工作原理 . 2协议工作流程分析 . 33协议格式分析 . 5

8、4协议应用 . 10 FLOOD攻击 . 10 ICMP洪水的成因 . 10实现ICMP洪水的前提 . 10洪水两败俱伤的攻击方式 . 10 不同方式的ICMP洪水 . 11 ICMP 防御 . 125结术语 . 14参考文献 . 141协议概述协议名称ICMP是Internet Control Message Protocol的简称,即Internet控制报文协议。ICMP协议是一种面向连接的协议,属于网络层协议,用来测试网络是否畅通。协议主要功能ICMP是Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息,包括报告错误、交换受限控制和状

9、态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。ICMP协议是一种面向连接的协议,用于传输出错报告控制信息。它是一个非常重要的协议,它对于网络安全具有极其重要的意义。1主要功能是:1.侦测远端主机是否存在2.建立及维护路由资料3.重导资料传送路径。4.资料流量控制协议在IP通信中,经常有数据包不能到达对方的情况,原因是在通信途中的某处的一个路由器由于不能处理所有的数据包,就将数据包一个一个的丢

10、弃。或者因为搞错了端口号,因而服务器软件不能接受它,所以作为IP不可缺少的功能来规定了ICMP网络传输协议。1协议版本发展历程ICMP与我们息息相关。在网络体系结构的各层次中,都需要控制,而不同的层次有不同的分工和控制内容,IP层的控制功能是最复杂的,主要负责差错控制、拥塞控制等,任何控制都是建立在信息的基础之上的,在基于IP数据报的网络体系中,网关必须自己处理数据报的传输工作,而IP协议自身没有内在机制来获取差错信息并处理。为了处理这些错误,TCP/IP设计了ICMP协议,当某个网关发现传输错误时,立即向信源主机发送ICMP报文,报告出错信息,让信源主机采取相应处理措施,它是一种差错和控制报文协议,不仅用于传输差错报文,还传输控制报文。在IP网络上,由于数据包被丢弃的原因,为了控制将必要的信息传送给发信方,为了辅助IP协议,ICMP协议应运而生!制定万维网规格的IETF在1981年将RFC792作为ICMP的基本规格整理出来的。在RFC792的开头部分写着“ICMP是IP的不可缺少的部分吧,所有的IP软件必须实现ICMP协议”。2协议工作原理及流程协议工作原理ICMP是一个非常重要的协议,它对于网络安全具有极其重要的意义。ICMP消息是随IP数据包一起传输的,但该消息本身也是一种与IP协议并行运行在网络层的协议。ICMP提供一致易懂的出错报告信息。发送的出错报文返回

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 事务文书

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号