TCP-IP心得.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TCP-IP心得

最近狂补基础,猛看TCP/IP协议。不过,书上的东西太抽象了,没有什么数据实例,看了不?久就忘了。于是,搬来一个sniffer,抓了数据包来看,呵呵,结合书里面得讲解,理解得?比较快。我就来灌点基础知识。???开始吧,先介绍IP协议。?????IP协议(Internet?Protocol)是网络层协议,用在因特网上,TCP,UDP,ICMP,IGMP数据都是按照IP数据格式发送得。IP协议提供的是不可靠无连接得服务。IP数据包由一个头部和一个正文部分。构成。正文主要是传输的数据,我们主要来理解头部数据,可以从其理解到IP协议。??????来看看我捕获的例子吧。这是一次FTP的连接,呵呵,是cuteftp默认的cuteftp的FTP站点,IP地址是:1,我的IP地址假设为:。下面的数据就是TCP/IP连接过程中的数据传输。我们可以分析TCP/IP协议数据格式以及TCP/IP连接的三次握手(ThreeWay-Handshake)情况。下面的这些十六进制数据只是TCP/IP协议的数据,不是完整的网络通讯数据。?????第一次,我向FTP站点发送连接请求(我把TCP数据的可选部分去掉了)????-1?????IP头部:??45?00?00?30?52?52?40?00?80?06?2c?23?c0?a8?01?01?d8?03?e2?15?????TCP头部:0d?28?00?15?50?5f?a9?06?00?00?00?00?70?02?40?00?c0?29?00?00?????来看看IP头部的数据是些什么。?????第一字节,“45”,其中“4”是IP协议的版本(Version),说明是IP4。“5”是IHL位,表示IP头部的长度,是一个4bit字段,最大就是1111了,值为12,IP头部的最大长度就是60字节。而这里为“5”,说明是20字节,这是标准的IP头部长度,头部报文中没有发送可选部分数据。?????接下来的一个字节“00”是服务类型(Type?of?Service)。这个8bit字段由3bit的优先权子字段(现在已经被忽略),4?bit的TOS子字段以及1?bit的未用字段(现在为0)构成.4?bit的TOS子字段包含:最小延时、最大吞吐量、最高可靠性以及最小费用构成,这四个1bit位最多只能有一个为1,本例中都为0,表示是一般服务。?????接着的两个字节“00?30”是IP数据报文总长,包含头部以及数据,这里表示48字节。这48字节由20字节的IP头部以及28字节的TCP头构成(本来截取的TCP头应该是28字节的,其中8字节为可选部分,被我省去了)。因此目前最大的IP数据包长度是65535字节。?????再是两个字节的标志位(Identification):“5252”,转换为十进制就是21074。这个是让目的主机来判断新来的分段属于哪个分组。???下一个字节“40”,转换为二进制就是“0100?0000”,其中第一位是IP协议目前没有用上的,为0。接着的是两个标志DF和MF。DF为1表示不要分段,MF为1表示还有进一步的分段(本例为0)。然后的“0?0000”是分段便移(Fragment?Offset)。IP包头中的Identification、flags、ragment?offset三个字段控制着IP报文的分割和重组。TCP报头中的SourcePort、DestPort、TCP?Sequence?Number、Urgent?pointer、FIN、?PUSH、SYN字段控制着TCP报文的开头和结束,我们也可以如法完成TCP包(或特定应用)的重组工作。至于UDP数据包,从其包头可以看出,只要完成了IP包的重组,也就完成了UDP包的重组工作。??????“80”这个字节就是TTL(Time?To?Live)了,表示一个IP数据流的生命周期,用Ping显示的结果,能得到TTL的值,很多文章就说通过TTL位来判别主机类型。因为一般主机都有默认的TTL值,不同系统的默认值不一样。比如WINDOWS为128。不过,一般Ping得到的都不是默认值,这是因为每次IP数据包经过一个路由器的时候TTL就减一,当减到0时,这个数据包就消亡了。这也是Tracert的原理。本例中为“80”,转换为十进制就是128了,我用的WIN2000。?????继续下来的是“06”,这个字节表示传输层的协议类型(Protocol)。在RFC790中有定义,6表示传输层是TCP协议。?????“2c?23”这个16bit是头校验和(Header?Checksum)。?????接下来“c0?a8?01?01”,这个就是源地址(Source?Address)了,也就是我的IP地址。????转换为十进制的IP地址就是:,同样,继续下来的32位“d8?03?

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档