1、512k的为什么50多k就封顶了?这里所说的1m是指1mbps=1millionbitspersecond,也就是1m比特每秒,即一秒钟传输1048576个二进制位。我们知道一个字节是8个二进制位。好,又来问题了。即便这样子,1m=10487568=1310721024=128k。那也应该有128k啊,为什么下载速度还是很少到120k,110k都谢天谢地了。看完本文,你的帐就对了ip数据包结构:如图,一个刻度表示1个二进制位(比特)。1-1.版本4位,表示版本号,目前最广泛的是4=b1000,即常说的ipv4;相信ipv6以后会广泛应用,它能给世界上每个纽扣都分配一个ip地址。1-2.头长4位
2、,数据包头部长度。它表示数据包头部包括多少个32位长整型,也就是多少个4字节的数据。无选项则为5(红色部分)。1-3.服务类型,包括8个二进制位,每个位的意义如下:过程字段:3位,设置了数据包的重要性,取值越大数据越重要,取值范围为:0(正常)7(网络控制)延迟字段:1位,取值:0(正常)、1(期特低的延迟)流量字段:0(正常)、1(期特高的流量)可靠性字段:0(正常)、1(期特高的可靠性)成本字段:0(正常)、1(期特最小成本)保留字段:1位,未使用1-4.包裹总长16位,当前数据包的总长度,单位是字节。当然最大只能是65535,及64kb。2-1.重组标识16位,发送主机赋予的标识,以便接
3、收方进行分片重组。2-2.标志3位,他们各自的意义如下:保留段位(2):不分段位(1):0(允许数据报分段)、1(数据报不能分段)更多段位(0):0(数据包后面没有包,该包为最后的包)、1(数据包后面有更多的包)2-3.段偏移量13位,与更多段位组合,帮助接收方组合分段的报文,以字节为单位。3-1.生存时间8位,经常ping命令看到的ttl(timetolive)就是这个,每经过一个路由器,该值就减一,到零丢弃。3-2.协议代码8位,表明使用该包裹的上层协议,如tcp=6,icmp=1,udp=17等。3-3.头检验和16位,是ipv4数据包头部的校验和。4-1.源始地址,32位4字节,我们常
4、看到的ip是将每个字节用点(.)分开,如此而已。5-1.目的地址,32位,同上。6-1.可选选项,主要是给一些特殊的情况使用,往往安全路由会当作攻击而过滤掉,普联(tp_link)的tl-eR5110路由就能这么做。7-1.用户数据。tcp数据包结构:1-1.源始端口16位,范围当然是0-65535啦。1-2.目的端口,同上。2-1.数据序号32位,tcp为发送的每个字节都编一个号码,这里存储当前数据包数据第一个字节的序号。3-1.确认序号32位,为了安全,tcp告诉接受者希望他下次接到数据包的第一个字节的序号。4-1.偏移4位,类似ip,表明数据距包头有多少个32位。4-2.保留6位,未使用
5、,应置零。4-3.紧急比特uRg当uRg1时,表明紧急指针字段有效。它告诉系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。4-3.确认比特ack只有当ack1时确认号字段才有效。当ack0时,确认号无效。参考tcp三次握手4-4.复位比特Rst(Reset)当Rst1时,表明tcp连接中出现严重差错(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立运输连接。参考tcp三次握手4-5.同步比特syn同步比特syn置为1,就表示这是一个连接请求或连接接受报文。4-6.终止比特Fin(Final)用来释放一个连接。当Fin1时,表明此报文段的发送端的数据已发送完毕,并要求释放运
6、输连接。4-7.窗口字段16位,窗口字段用来控制对方发送的数据量,单位为字节。tcp连接的一端根据设置的缓存空间大小确定自己的接收窗口大小,然后通知对方以确定对方的发送窗口的上限。5-1.包校验和16位,包括首部和数据这两部分。在计算检验和时,要在tcp报文段的前面加上12字节的伪首部。5-2.紧急指针16位,紧急指针指出在本报文段中的紧急数据的最后一个字节的序号。6-1.可选选项24位,类似ip,是可选选项。6-2.填充8位,使选项凑足32位。7-1.用户数据可以看出,每个ip包至少要20字节的头部长度,这些与下载内容无关,加上目前多数传输,包括http协议(就是ie直接下载),都是基于tc
7、p协议的,所以ip包裹还要从用户数据中扣除20字节的tcp包头,这里已经是40字节,加上其他程序的连接,状态确认等等包裹,因而算出来要比理论值要小。另外网络环境(包括稳定因素和传输节点的转发率)也是影响下载速度的重要原因篇二:http网络数据包截获与还原摘要:在因特网日益发展壮大的今天,万维网在其上的通信量已经超过90%,万维网信息的安全问题已经越来越被人们所重视,而作为万维网应用层核心协议的http协议是基础。当网络发生异常时,对网络上传输的数据进行监视和分析,是网管人员解决网络故障的一种常用方法。本文介绍应用层http数据包的截获与还原技术的实现,并简要介绍其中所涉及的数据包截获、数据包分
8、析、应用数据重组以及数据包解码等关键技术。该系统可以监听网管人员感兴趣的数据包,通过对其进行分析和研究,分析出其遵守的协议以及其应用层数据,恢复到被监视用户所看到数据的格式。该系统的实现,为网管人员有效地管理网络提供了一种直观的工具。关键词:http数据包;截获;还原abstract:withtheincreasingdevelopmentandexpansionofinternet,thetrafficofworld-wide-webhasoccupiedmorethan90percentoninternetatpresent.therefore,peoplehaveattachedmore
9、andmoreimportancetothesecurityofthewwwinformation.whilehttp(hypertexttransferprotocol)asthecentralprotocolofwwwsapplicationlayerformsthefoundationofit.monitoringandanalysingthedatatransferredonnetworkisthedailyworksfornetworkmanagerthewriterofthispaperintroducedthedesignandimplementationforcapturing
10、apartofhttpdatapackets,recoveringthecapturedhttpdatapackets,andanalyzedsomekeytechnologiesaboutcapturingdatapacketbrief,packetanalyzing,reconstructingapplicationdataandpacketdecodingandsoonthissystemcanmonitorthepackageswhichnetworkmanagerisinterestedin,analyzetheprotocolswhichthepacketuses,recovert
11、heformatwhichtheenduserseetheimplementationofthesystemprovidesavisualtoolfornetworkmanagers.keywords:httppackets;capture;recover目录前言.1第一章http网络数据包截获与还原的理论基础.21.1网络体系结构.21.1.1网络参考模型概述.21.1.2tcp/ip协议族.31.2http协议概述.41.2.1http协议的几个重要概念.51.2.2http协议结构.61.2.3http协议的运作方式.121.3基于http协议的网络行为监视.161.3.1http协议的
12、安全因素.161.3.2基于http协议监视的实现.17第二章开发工具与环境配置.192.1jaVa语言介绍.192.1.1平台无关性.192.1.2面向对象.202.1.3安全稳定.212.1.4支持多线程.212.2jdk概述.222.2.1java开发工具jdk介绍.222.2.2开发环境配置.23第三章http数据包截获.243.1http数据包截获模块设计.243.1.1体系结构设计.243.1.2winpcap工具.253.1.3packet.dll.263.1.4jpcap类库.283.2数据包的存储.293.3数据包捕获和存储流程图.323.4数据包捕获和存储程序片断.32第四章http数据包信息的分析与还原.354.1字符编码的信息概述.354.1.1ascall字符编码.354.1.2gb2312字符编码.364.1.3big5字符编码.364.1.4unicode(utF-8)字符编码.364.2捕获数据包信息的分析.384.2.1捕获数据数据包的重组分析.384.2.2捕获数据包编码格式的分析.404.2.3捕获数据的分析的程序片段.404.3对捕获数据包信息的部分还原.414.3.1捕获数据包信息还原的流程图.414.3.2捕获数据包的信息还原算法.42第五章总结.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1