发送TCP数据包

发送TCP数据包

ID:37794144

大小:104.00 KB

页数:9页

时间:2019-05-31

发送TCP数据包_第1页
发送TCP数据包_第2页
发送TCP数据包_第3页
发送TCP数据包_第4页
发送TCP数据包_第5页
资源描述:

《发送TCP数据包》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、沈阳理工大学课程设计专用纸No8目录1课程设计目的12课程设计要求13相关知识14课程设计分析15程序代码16运行结果与分析17参考文献1沈阳理工大学沈阳理工大学课程设计专用纸No81课程设计目的TCP协议是一种面向连接的,可靠的传输层协议,在网络层的IP协议的基础上,向应用层的用户进程提供可靠的,全双工的数据流传输。本课程设计的主要目的是通过TCP数据包的发送,了解TCP协议的工作原理与TCP包的基本格式。2课程设计要求本程序的功能是填充一个TCP数据包,并发送给目的主机。1)以命令行形式运行:SendTCPsourse_ipsourse_portdest_ipdest_port其中

2、,SendTCP为程序名;sourse_ip为源主机的IP地址;sourse_port为源主机端口号;dest_ip为目的主机的IP地址;dest_port为目的主机的端口号。2)其它的TCP头部参数请自行设定。数据字段内容为“ThisisaTCPpacketfromsourcehosttodestinationhost!”。3)发送成功后在屏幕上输出”sendOK”。3相关知识编制本程序前要对TCP协议有一定的了解。当应用程序有报文需要通过TCP发送时,它就将此应用层报文传送给执行TCP协议的传输实体。TCP传输实体将用户数据加上TCP报头,形成TCP数据包,在TCP数据包上增加IP

3、头部,形成IP包。下图显示的是TCP数据包和IP包的关系。TCP报头TCP数据IP数据IP报头TCP协议的传输单元为报文段,其格式如图所示。报文段报头的长度为20B~60B。其中固定长度为20B,报文段长度最多为40B。TCP报文段主要包括以下字段。·埠号:埠号字段包括源埠号和目的埠号。每个埠号的长度是16位,分别表示发送该TCP包的应用进程的埠号和接收该TCP包的应用进程的埠号。·序号:长度为32位。由于TCP协议是面向数据流的,它所传送的报文段可以视为连续的数据流,因此需要给每一个字节编号。序号字段的“序号”指的是本报文段数据的第一个字节的顺序号。TCP头部数据沈阳理工大学沈阳理工

4、大学课程设计专用纸No80151631源端口号目的端口号序号确认号报头长度保留URGACKPSHRSTSYNFIN窗口大小校验和紧急指针选项及填充·确认号:该字段的长度为32位,它表示接收端希望接收的下一个TCP包的第一个字节的序号。·报头长度:该字段长度为4位。TCP报头长度是以4B为一个单元来计算的,实际上报头长度在20B~60B子间。因此这个字段的值在5~15之间。·保留:长度为6位,留作今后使用,目前全部置0。·控制:这个字段定义了6种不同的标志,每个标志占一位,在同一时间可以设置一位或多位。URG为1时,表明有需要紧急处理的数据。ACK为1时,表明确认号的字段有效。PST位为

5、1时,表明要强制切断连接。SYN位为1时,表明有确立连接的请求,这时,把序号字段的初始值作为序号字段的值,以便开始通信。FIN为1时,表明发送方已经没有资料发送了。·窗口大小:长度为16位,窗口对应的数据是以字节为单位的数据,因此最多能够传送的数据为65535B。·紧急指针:该字段的长度为16位,指向必须紧急处理的数据的位置,只有当标志URG=1时紧急指针才有效。从TCP报头后面的报文资料开始,到紧急指针所指出的长度的数据,就是必须紧急处理的数据。·选项:该字段可以多达40B,包括单字节选项和多字节选项。·校验和:该字段长度多达16位,校验和的校验范围包括伪头部、TCP报头以及应用层来

6、的数据。其计算方法与IP协议头部的校验的计算方法一样。伪头部为12B,它本身并不是TCP数据包的真正头部,只是在计算校验和时,临时和TCP数据包连接在一起。伪头部的格式如下图所示。源IP地址目的IP地址00000000协议号(6)TCP长度3课程设计分析协议本课程设计的目标是发送一个TCP沈阳理工大学沈阳理工大学课程设计专用纸No8资料包,可以利用原始套接字来完成这个工作。整个程序由初始化原始套接字和发送TCP数据包两个部分组成。流程图如下:开始结束构造原始套接字,并初始化发送TCP资料报计算TCP头部校验和填充IP头部计算IP头部校验和构造TCP伪头部填充TCP头部3程序代码#inc

7、lude#include#include#pragmacomment(lib,"ws2_32.lib")沈阳理工大学沈阳理工大学课程设计专用纸No8//定义ip头部机构typedefstructIP_HEAD{union{unsignedcharVersion;unsignedcharHeadLen;};unsignedcharServiceType;unsignedsho

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。