ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:1.05MB ,
资源ID:4577103      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4577103.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(TCP实验报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

TCP实验报告.docx

1、TCP实验报告TCP/IP协议分析与应用编程实验报告专 业:计算机科学与技术 班 级: 2012级4班 姓 名: 彭晓 学 号: 21209010434 实验一 Wireshark协议分析一、实验任务:软件环境:Windows 2000或者Windows XP,Wireshark基本要求: (1) 在Windows上,安装Wireshark。利用Wireshark抓取数据包。(2) 分析Ethernet, ARP, IP, ICMP, TCP, UDP, HTTP等协议。实验报告要求:分别在数据链路层ARP、网络层IP,ICMP、传输层TCP,UDP和应用层HTTP中选取一个协议的数据包,分析

2、数据包中报文的具体含义。二、实验内容:一、ARP数据报目标MAC地址:08 10 17 04 12 8f源MAC地址:40 2c f4 0c 92 a5协议类型(ARP):08 06硬件类型(以太):00 01协议类型(IP):08 00硬件长度(6字节):06协议长度(4字节):04 操作(应答):00 01信源MAC:40 2c f4 0c 92 a5信源IP(192.168.1.1):c0 a8 01 67信宿MAC:08 10 17 04 12 8f信宿IP(192.168.1.103):c0 a8 01 01二、IP数据报目标地址:00 23 89 b8 17 ab 源MAC地址:0

3、0 e0 4c 00 16 77协议类型(IP):08 00版本号(4),首部长度20(4*5),服务类型(0):45 00总长度(40):00 28标识(3280):0c d0未分片,片偏移量(0):40 00TTL(40):40上层协议TCP(6):06首部校验和:79 21源IP地址(192.168.0.62):c0 a8 00 3e目的IP地址(180.97.63.151):b4 61 3f 97上层协议TCP数据报:05 85 00 50 bc d0 35 f0 00 00 00 01 50 14 00 00 02 5b 00 00三、TCP数据报1)第一次握手数据帧第一次握手:源端

4、口(1415):05 87目的端口(80):00 50序列号:e2 fa c8 b0确认号:00 00 00 00首部长度:80标志(SYN):02窗口大小(65535):ff ff校验和:08 aa紧急指针:00 00最大报文段长度选项:02 04 05 b4无操作选项:01窗口扩大因子选项:03 03 03无操作选项:01无操作选项:01SACK选项:04 022)第二次握手数据帧第二次握手:源端口(80):00 50目的端口(1415):05 87序列号:00 00 00 00确认号:e2 fa c8 b0首部长度:60标志(SYN,ACK):12窗口大小(32768):80 00校验和

5、:b1 dd紧急指针:00 00最大报文段长度选项:02 04 05 80尾部填充0凑整:00 003)第三次握手数据帧第三次握手:源端口(1415):05 87目的端口(80):00 50序列号:e2 fa c8 b1确认号:00 00 00 01首部长度:50标志(ACK):10窗口大小(65535):ff ff校验和:49 67紧急指针:00 00四、HTTP数据报 HTTP是应用层协议。HTTP请求报文分析HTTP响应报文分析HTTP链路层HTTP链路层:源地址:40 2c f4 0c 92 a5目的地址:08 10 17 04 12 8f类型(IP):0x0800HTTP网际层HTT

6、P网际层:版本号(4),首部长度20(4*5),服务类型(0):45 00总长度(650):02 8a标识(23018):59 ea标志:40片偏移(0):00TTL(64):40协议(TCP):06校验和:cb bb信源IP(192.168.1.103):c0 a8 01 67信宿IP(119.75.217.109):77 4b d9 6d-HTTP传输层HTTP传输层:传输层源端口(2592):0a 20目的端口(80):00 50序列号:51 4e 86 61确认号:6e 2a 10 ed首部长度(20字节):50标志(PSH,ACK):50 18窗口大小(64768):fd 00校验和

7、:59 68HTTP应用层HTTP应用层:请求行:GET / HTTP/1.1rn3、实验小结: 通过对Wireshark抓包软件的分析和了解,学会利用wireshark捕获数据包。并对各层网络协议(HTTP协议、ARP协议、ICMP协议、IP协议)等和EthernetII层数据帧上的数据包信息进行分析对应的格式和查看一个抓到的包的内容,知道了数据帧上信息的涵义。实验二 简单套接字编程一、实验任务:软件环境:Windows 2000或者Windows XP,VS2005基本要求:(1)在VS2005上,编写、编译Win32 Console套接字程序。要求客户机端程序能发送消息给服务器端程序。实

8、验报告要求:完成一个TCP或UDP程序,实验报告应包含主要代码及程序运行结果。2、实验内容:服务器端:#include #include using namespace std;#include int main(int argc, char *argv) const int DEFAULT_PORT = 5000; WORD wVersionRequested; WSADATA wsaData; int err,iLen; wVersionRequested=MAKEWORD( 2, 2 ); err = WSAStartup( wVersionRequested, &wsaData );

9、if ( err != 0 ) cout加载WinSock失败!; return 0; /创建用于监听的套接字 SOCKET sockSrv = socket(AF_INET,SOCK_STREAM,0); /创建服务器监听套接字 if (sockSrv = INVALID_SOCKET) coutsocket() fail:WSAGetLastError()endl; return 0; SOCKADDR_IN addrSrv; addrSrv.sin_family = AF_INET; addrSrv.sin_addr.S_un.S_addr = htonl(INADDR_ANY);/自动

10、分配地址,字节顺序转换 addrSrv.sin_port = htons(DEFAULT_PORT);/字节顺序转换 /绑定本地主机IP和端口 err = bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR); if ( err != 0 ) coutbind() fail:WSAGetLastError()endl; return 0; /监听 err = listen(sockSrv,5); if ( err != 0 ) coutlisten() fail:WSAGetLastError()endl; return 0; coutServer

11、 waiting.:endl; SOCKADDR_IN addrClient; int len = sizeof(SOCKADDR); while(1) SOCKET sockConn = accept(sockSrv,(SOCKADDR*)&addrClient,&len);/接收客户进程连接请求 if (sockConn = INVALID_SOCKET) coutaccept() fail:WSAGetLastError()endl; break; char sendBuf1024,hostname100; if (gethostname(hostname,100) != 0) /获取主

12、机名称 strcpy(hostname,None); sprintf(sendBuf,welcome %s connected to %s!,inet_ntoa(addrClient.sin_addr),hostname); err = send(sockConn,sendBuf,strlen(sendBuf)+1,0); /发送数据 if (err = SOCKET_ERROR) coutsend() fail:WSAGetLastError()endl; break; char recvBuf1024 = 0; iLen = recv(sockConn,recvBuf,1024,0);/接

13、收数据 if (iLen = SOCKET_ERROR) coutrecv() fail:WSAGetLastError()endl; break; recvBufiLen = 0; coutrecvBufendl; closesocket(sockConn); /关闭套接字 closesocket(sockSrv);/关闭服务器监听套接字 WSACleanup(); return 0;客户端:#include #include using namespace std;#include int main(int argc, char *argv) const int DEFAULT_PORT

14、= 5000; WORD wVersionRequested; WSADATA wsaData; int err,iLen; if (argc 2) coutCommand:TcpEx_Client ServerIPendl; return 0; wVersionRequested=MAKEWORD( 2, 2 ); err = WSAStartup( wVersionRequested, &wsaData ); if ( err != 0 ) cout加载WinSock失败!; return 0; /创建用于连接的套接字 SOCKET sockClient = socket(AF_INET,

15、SOCK_STREAM,0); if (sockClient = INVALID_SOCKET) coutsocket() fail:WSAGetLastError()endl; return 0; SOCKADDR_IN addrSrv; addrSrv.sin_family = AF_INET; addrSrv.sin_addr.S_un.S_addr = inet_addr(argv1); addrSrv.sin_port = htons(DEFAULT_PORT); err = connect(sockClient,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR

16、);/请求连接服务器进程 if ( err = INVALID_SOCKET ) coutconnect() fail:WSAGetLastError()endl; return 0; char sendBuf1024,hostname100; if (gethostname(hostname,100) != 0) /获取主机名称 strcpy(hostname,None); strcpy(sendBuf,hostname); strcat(sendBuf, have conneted to you!); err = send(sockClient,sendBuf,strlen(sendBuf

17、)+1,0); /发送数据 if (err = SOCKET_ERROR) coutsend() fail:WSAGetLastError()endl; return 0; char recvBuf1024; iLen = recv(sockClient,recvBuf,1024,0); /接收数据 if (iLen = 0) return 0; else if (iLen = SOCKET_ERROR) coutrecv() fail:WSAGetLastError()endl; return 0; else recvBufiLen = 0; coutrecvBufendl; closesocket(sockClient); /关闭套接字 WSACleanup();三、实验小结: 通过这次的实验理解了socket基本知识及原理,同时实现了基于Socket的客户端与服务器端的连接,自己动手可以真正学到知识,而且同学热心解答问题也让我更体会到交流的重要。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1