TCP IP 协议分析.doc_第1页
TCP IP 协议分析.doc_第2页
TCP IP 协议分析.doc_第3页
TCP IP 协议分析.doc_第4页
TCP IP 协议分析.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TCP/IP协议分析及应用TCP/IP协议分析及应用在计算机网络的发展过程中,TCP/IP网络是迄今为止对人类社会影响最重要的一种网络。TCP和IP是两种网络通信协议,以这两种协议为核心协议的网络总称为TCP/IP网络。人们常说的国际互联网或因特网就是一种TCP/IP网络,大多数企业的内部网也是TCP/IP网络。作为一名学习计算机的学生,我们一定要对TCP/IP协议进行深刻的解析。通过对协议的分析进一步了解网络上数据的传送方式和网络上出现的问题的解决方法。本实验就是对文件传输协议进行分析来确定FTP协议工作方式。目的:通过访问FTP:2,向FTP服务器上传和下载文件。用抓包工作来捕捉数据在网络上的传送过程。为的方便数据包的分析,通过上传一个内容为全A的TXT文件,来更直观的分析文件传输的过程。过程: 1.在本机上安装科莱抓包软件2.对科莱进行进滤器的设置(arp、ftp、ftp ctrl、ftp data)3.通过运行CMD窗口进行FTP的访问4.用PUT和GET进行文件的上传与下载5.对抓到的包进行详细的分析CMD中的工作过程:C:Documents and SettingsAdministratorftp 2 Connected to 2.220 Serv-U FTP Server v5.1 for WinSock ready.User (2:(none): anonymous /通过匿名方式访问331 User name okay, please send complete E-mail address as password.Password:230 User logged in, proceed.ftp cd 学生作业上传区/暂存文件夹250 Directory changed to /学生作业上传区/暂存文件夹ftp put d:aaa123.txt /上传aaa123.txt文件200 PORT Command successful.150 Opening ASCII mode data connection for aaa123.txt.226 Transfer complete.ftp: 1736 bytes sent in 0.00Seconds 1736000.00Kbytes/sec.ftp get aaaaa.txt /下载aaaaa.txt文件200 PORT Command successful.150 Opening ASCII mode data connection for aaaaa.txt (580 Bytes).226 Transfer complete.ftp: 580 bytes received in 0.00Seconds 580000.00Kbytes/sec.ftp quit221 Goodbye!对FTP响应代码说明见表1:表1 FTP响应代码响应代码解释说明响应代码解释说明150文件OK,数据连接将在短时间内打开230登录成功200成功331用户名有效,需要密码220服务器准备就绪332需要账号名221服务关闭421关闭服务器226数据连接关闭500无效命令IP数据包分析:(按照数据包的顺序进行分析)表2和表3是对两个往返的数据报进行分析:表2 捕获的第1个数据包00 E0 FC 18 7B 46 00 0D 87 90 74 FA 08 00 45 00 00 30 92 19 40 00 80 06 61 1F C0 A8 0B F7 CA CF 70 20 11 8F 00 15 C2 C0 EC 07 00 00 00 00 70 02 40 00 7B 23 00 00 02 04 05 B4 01 01 04 02表3 捕获的第2个数据包00 0D 87 90 74 FA 00 E0 FC 18 7B 46 08 00 45 00 00 30 25 2D 00 00 7F 06 0F 0C CA CF 70 20 C0 A8 0B F7 00 15 11 8F D6 41 CF DF C2 C0 EC 08 70 12 40 00 D4 F0 00 00 02 04 05 B4 01 01 04 02目标MAC:00 E0 FC 18 7B 46 源MAC:00 0D 87 90 74 FA 版本:4(IPv4) 首部长度:5(20字节) 上层协议:06(TCP) 源IP地址:C0 A8 0B F7 目的IP地址:CA CF 70 20TCP源端口:11 8F(随机产生) 目的端口:00 15(熟知端口21表示FTP)TCP报文段数据分析:众所周知的端口来标识在TCP上运行的标准服务,包括FTP、HTTP、TELNET、SMTP等,这些端口号码范围为0-1023。根据TCP端口号80可以确定TCP是为FTP提供服务的。下面就讨论TCP报文段的首部格式。TCP 报文段首部的前20个字节是固定的(图1),后面有4N字节是根据需要而增加的选项(N是整数)。因此TCP首部的最小长度是20字节。首部数据0 15 16 31源端口号(16bit)目的端口号(16bit)序列号(32bit)确认号(32bit)首部长度(4bit)保留(6bit)URGACKPSHRSTSYNFIN窗口大小(16bit)校验和(16bit)紧急指针(16bit)选项和填充图1 TCP 报文段的首部格式通过理论与实际相结合对表4的TCP报文进行更好的掌握与分析。00 E0 FC 18 7B 46 00 0D 87 90 74 FA 08 00 45 00 00 30 92 19 40 00 80 06 61 1F C0 A8 0B F7 CA CF 70 20 11 8F 00 15 C2 C0 EC 07 00 00 00 00 70 02 40 00 7B 23 00 00 02 04 05 B4 01 01 04 02表4 捕获的第4个数据包TCP - 传输控制协议 8 11 8F 源端口: 4495 00 15 目标端口: 21 (ftp) C2 C0 EC 07序列号: 3267423239 00 00 00 00 确认号: 0 70 TCP偏移量: 7 02 标志:.00 0010 0x003F 40 00窗口: 16384 48/2 7B 23校验和: 0x7B23 (正确) 50/2 00 00紧急指针: 0 52/2由于FTP是封装在TCP中传输的,所以首先会进行TCP的三次握手。图2是对各标志位的解释:URG:紧急位,用来指示紧急指针有效。ACK:确认位,用来指示确认号有效。PSH:请求推送。RST:重建位,用于重新建立连接。SYN:同步位,用来在建立连接时同步序号。FIN:终止位,用来释放一连接。建立连接的三次握手的状态标志位:标志位第1包第2包第3包图2 三次握手的状态标志位分别表示进入、出去的数据包表5 对捕获的TCP数据重要字段的分析TCP - 传输控制协议个别字段分析编号序列号确认号窗口作用登陆FTP过程13267423239016384TCP的三次握手235946372793267423240163843326742324035946372801752043594637280326742324065535服务器发送49字节确认53267423240359463732917471客户确认收到(280+49=329)63267423240359463732917471客户输入用户名73594637329326742325665519服务器验证用户名83267423256359463739917401客户对服务确认93267423256359463739917401客户输入PASS103594637399326742326365512服务确认PASS113267423299359463752417276客户对服务确认上传aa123.txt文件23140993592413293640860重置连接24包内容11 8F 00 15 C2 C0 EC 43 D6 41 D0 D4 50 18 43 7C 35 15 00 00 50 4F 52 54 20 31 39 32 2C 31 36 38 2C 31 31 2C 32 34 37 2C 31 37 2C 31 38 30 0D 0A243267423299359463752417276采用Port模式253594637524326742332765448服务器确认建立成功263267423327359463755417246客户端发送的文件名27包内容00 14 11 B4 33 78 C8 32 00 00 00 00 70 02 FF FF 6E 1D 00 00 02 04 05 B4 01 01 04 02(00 14代表20端口)27863553586065535服务器建立端口为20号新连接的三次TCP握手281035652744863553587175203086355358710356527456553529包内容00 15 11 8F D6 41 D0 F2 C2 C0 EC 72 50 18 FF 95 18 48 00 00 31 35 30 20 4F 70 65 6E 69 6E 67 20 41 53 43 49 49 20 6D 6F 64 65 20 64 61 74 61 20 63 6F 6E 6E 65 63 74 69 6F 6E 20 66 6F 72 20 61 61 31 32 33 34 35 36 2E 74 78 74 2E 0D 0A293594637554326742334665429对第26包的确认并且发送传输方式为ASCII mode31103565274586355358717520传输数据3210356542058635535871752033103565529286355358717520终止位为1、客户端传输数据结束34863553587103565529365535服务器对客户的确认35863553587103565529365535终止位为1、服务器完成接收36103565529386355358817520客户对服务器的确认373267423346359463761217188客户对服务器的第29包确认383594637612326742334665429传输数据完成通过上面FTP的分析:可以确定FTP用到两个端口,一个端口是作为控制连接的端口21,用于发送指令给服务器以及等待服务器响应;另一个端口是作为数据传输的端口20,用来建立数据传输通道。控制连接(端口21)在整个FTP工作过程中始终保持连接状态。数据连接则是在每传输一个文件时都要开启和关闭。也就是说,在一个FTP的工作过程中,控制连接是永久的,数据连接是交互式的。 表6 释放连接时的状态标志位标志位第61包第62包第63包第64包紧急位0000确认位1111急迫位0000重置位0000同步位0000终止位1010第61包是客户向服务器发送的终止报文,第62包是服务器对客户机的确认。此时,客户已经结束了对服务器的访问。但服务器并没有结束对客户机的会话。后边的第63包是服务器向客户发送的终止报文,第64包是客户对服务器的确认。这时双方的会话才真正终止。数据据链式路层(ARP)图3是ARP请求和应答包: 帧类型 ARP/RARP报文 PAD 字节 2 28 18 图3 ARP/RARP报文封装在以太网帧中格式 CRC 4 硬件 类型 目的地址 源地址 6 6 协议 类型 硬件地址长度 协议地 址长度 操作 类型 发送者 以太网地址 目标 以太网地址 发送者 IP地址 目标 IP地址 2 2 2 1 1 6 6 4 4 ARP:0x0806 RARP:0x8035 1:ARP请求 2:ARP应答 3:RARP请求 4:RARP应答 0x0800 0x06 0x04 0x0001 表6 捕获的ARP请求数据报00 0A E6 7F FE 05 00 0F E2 F5 0D 57 08 06 00 01 08 00 06 04 00 02 00 0F E2 F5 0D 57 C0 A8 02 01 00 0A E6 7F FE 05 C0 A8 02 69 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00表7 捕获的ARP应答数据报FF FF FF FF FF FF 00 0A E6 7F FE 05 08 06 00 01 08 00 06 04 00 01 00 0A E6 7F FE 05 C0 A8 02 69 00 00 00 00 00 00 C0 A8 02 01图(4、5)分别为ARP请求与应答的过程:请求IP地址为的物理地址IP地址:05 IP地址:物理地址: 00:0A:E6:7F:FE:05 物理地址: 00 0F E2 F5 0D 57IP地址:05 IP地址:物理地

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论