已阅读5页,还剩65页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
东北大学硕士论文摘要 网络数据包截获与分析的研究与实现 摘要 由于计算机网络具有联结形式多样性、终端分布不均匀性和嘲络的开放性、互 连性等特征,致使网络易受黑客、恶意软件和其他不轨的攻击,所以网上信息的安 全和保密是个至关重要的问题,也是网络世界里一个很热门的研究方向。网络必 须有足够强的安全措施,否则该网络将是个无用、甚至会危及国家安全的网络。无 论足在局域网还是在广域网中,都存在许多潜在的威胁。故此,网络的安全措施应 能全方位地针对各种不同的威胁,这样才能确保网络信息的保密性、完整性和可用 性。 本文主要是对网络中数据包的截获和分析的研究。因为对于网络安全研究的初 步就是要对网络中传输的数据包内容的分析,所以如何获得这些数据包是至关重要 的。本文首先是对网络知识的一个全面的阐述,对以太网结构以及以太帧的分析, 特别是对t c p i p 协议的全面了解。对比了共享式以太网和交换式以太网的区别。然 后,重点论述了对截获网络数据包的研究分析:包括在共享式以太网( 主要是对以 共享式集线器为集中设备) 中,通过把网卡设置成混杂模式,来截获所有经过本机 的数据包。另外一种情况就是在交换式以太网中,如何实现对数据包的截获和分析, 主要研究了通过a r p 欺骗来截获网络中任意两台机器上流过的数据包。包括对原理 分析、框架结构和程序的实现等部分。还有对网络数据包截获的其他技术的探讨: 包括通过编制一个过滤驱动程序来从最底层获得封包;或者使用w i n s o c k2s p i 技 术来截获网络数据包的技术;还有就是用n d i s ( 网络驱动程序接口规范) 中间驱动 程序截获网络封包。 关键词共享以太网,交换以太网,a r p ,a r p 欺骗,w i n p c a p ,n d i s 。 i i 东北大学硕士论文a b s t r a c t c a p t u r e a n d a n a l y s i s o fd a t ap a c k e t s0 i in e t w o r k a b s t r a c t b e c a u s e o f d i v e r s i t ya n do p e n i n g o f n e t w o r ka n dt h ea s y m m e t r y o f t e r m i n a l ,n e t w o r k i se a s yt ob ea t t a c k e d b y h a c k e ra n db a l e f u ls o f t w a r e t h e r e f o r e ,s a f e t ya n d s e c r e c yo f m e s s a g e i sa v e r yi m p o r t a n tp r o b l e ma n di sv e r yp o p u l a rr e s e a r c hd i r e c t i o n t h en e t w o r k m u s th a v et h ee n o u g ha n d s t r o n ga n d s a f em e a s u r e ,o t h e r w i s ei tw i l lb eu n a v a i l a b l ea n d e n d a n g e r t h en a t i o n a ls e c u f i t y w e t h e ri ti sal o c a ln e t w o r ko raw i d ea r e an e t w o r k ,a l l e x i s t st h ew e a ka n dt h e1 a t e n tt h r e a to f n a t u r eo ra r t i f i c i a l s ot h en e t w o r k ss a f em e a s u r e s h o u l dc a n o m n i d i r e c t i o n a l l ya i m a tv a r i o u sd i f f e r e n tt h r e a t sa n dc a ni n s u r et h ek e e p s e c r e c ym a di n t e g r a l i t yo f n e t w o r ki n f o r m a t i o n t h i st e x ti sp r i m a r i l ya b o u t i n t e r c e p t i n ga n da n a l y s i so f d a t ep a c k e t b e c a u s ef o rt h e n e t w o r k s a f e t yr e s e a r c ha n da n a l y s i so f d a t ap a c k e ti sp r i m a r y ,t h e r e f o r eh o wt oa c q u i r e t h e s ed a t ap a c k e ti sv e r yi m p o r t a n t t h ef i r s th a l f p a r ti ss u m m a r i z eo f t h en e t w o r k s k n o w l e d g e ,a n a l y s i se t h e r n e tc o n s t r u c t i o n ,e s p e c i a l l yo f t h ec o m p l e t e l y u n d e r s t a n do f t c p i p c o n t r a s tt h ed i f f e r e n tb e t w e e ns h a r e de t h e m e ta n ds w i t c h e de t h e l n e t 1 1 1 es e c o n d h a l f p a r tp r i m a r i l y r e s e a r c hi n t e r c e p td a t ap a c k e t i ns h a r e de t h e m e t ,t h em e t h o di st os e t c a r di n t op r o m i s c u o u ss t a t e i nt h i sw a y ,w ec a ng e ta l lt h ep a c k e tp a s s e dl o c a lm a c h i n e i n s w i t c h e de t h e r n e t ,h o wt or e a l i z e si n t e r c e p t i n ga n da n a l y z i n go f t h ed a t ep a c k e t ,w e p r i m a r i l y r e s e a r c h i n t e r c e p t i n gd a t ap a c k e t b e t w e e n a n y t w om a c h i n e b y a r p s p o o f i n g t h i sp a r ti n c l u d et oa n a l y z et op r i n c i p l e 、f r a m ec o n s t r u c t i o na n dt h er e a l i z a t i o no f p r o c e d u r ee t c t h ed i s c u s so f o t h e r t e c h n i q u ea b o u tc a p t u r eo f p a c k e t ,i n c l u d i n g h o wt o g e tt h ep a c k e tb y af i l t e rd r i v e ro f p h y s i c a ll a ya n db yt h et e c h n i q u eo f w i n s o c k2s p lo r n d l s r n e td r i v e ri n t e r f a c es t a n d a r d ) k e y w o r d ss h a r e de t h e m e t ,s w i t c h e de t h e m e t ,a r p ,a r ps p o o f i n g ,w i n p c a p , n d i s i i i 声明 本人声明所呈交的学位论文是在导师的指导下完成的。论文中取得 的研究成果除加以标注和致谢的地方外,不包含其他人己经发表或撰写 过的研究成果,也不包括本人为获得其他学位而使用过的材料。与我一 同工作的同志对本研究所做的任何贡献均己在论文中作了明确的说明 并表示谢意。 本人签名:莎凑,磊 日 期:知华年塌 东北大学硕士论文第一章诸论 1 1 论文背景与目的 第一章诸论 随着计算机网络的不断发展,全球信息化已成为人类发展的大趋势。但由于计 算机网络自身所特有的特点比如联结形式多样性和网络的开放性、互连性等特征, 所以导致网络易受黑客还有一些病毒的恶意攻击,往往要造成很大的损失,所以网 上信息的安全和保密是一个至关重要的问题。对于军用的自动化指挥网络和银行等 传输敏感数据的计算机网络系统而言,其网上信息的安全和保密尤为重要。因此, 上述的网络必须有足够强的安全措施,否则该网络将是个无用、甚至会危及国家安 全的网络。在计算机网络的世界里,存在着很多潜在的威胁,故此网络的安全措施 应是能全方位地针对各种不同的威胁,这样才可以真正的做到网络服务于社会,体 现网络的先进性。 计算机网络所面临的威胁大体可分为两种:一是对网络中信息的威胁;二是对 网络中设备的威胁。影响计算机网络的因素很多,有些因素可能是有意的,也可能 是无意的;可能是人为的,也可能是非人为的;可能是外来黑客对网络系统资源的 非法使有,归结起来,针对网络安全的威胁主要有三种: ( 1 ) 人为的无意失误:如操作员安全配置不当造成的安全漏洞,用户安全意识不 强,用户口令选择不慎,用户将自己的帐号随意转借他人或与别人共享等都会对网 络安全带来威胁。 ( 2 ) 人为的恶意攻击:这是计算机网络所面临的最大威胁,敌手的攻击和计算机 犯罪就属于这一类。此类攻击又可以分为以下两种:一种是主动攻击,它以各种方 式有选择地破坏信息的有效性和完整性;另一类是被动攻击,它是在不影响网络f 常工作的情况下,进行截获、窃取、破译以获得重要机密信息。这两种攻击均可对 计算机网络造成极大的危害,并导致机密数据的泄漏。 ( 3 ) 网络软件的漏洞和“后门”:网络软件不可能是百分之百的无缺陷和无漏洞 的,然而,这些漏洞和缺陷恰恰是黑客进行攻击的茸选目标,曾经出现过黑客攻入 网络内部的事件,这些事件的大部分就是因为安全措施不完善所招致的苦果。另外, 软件的“后门”都是软件公司的设计编程人员为了自便而设置的,一般不为外人所 知,但一旦“后门”洞开,其造成的后果将不堪设想。 为了及早发现并制止网络上的各种攻击,我们需要通过对网络上的数据进行分 1一 东北大学硕士论文第一章诸论 析来发现并找出问题,提前预防。这也是本论文的一个重要目的。通过网络安伞管 理员运用对网络封包的截获技术,抓取网络的有用数据包,然后通过对数据包的内 容进行分析,来确定哪些是有害的可能含有攻击企图的包,以此来达到对嘲络攻击 的预防。同时许多防火墙技术也是基于包过滤技术的。本文将介绍网络中嗅探器 ( s n i f f e r ) 的工作原理以及它的实现,特别是在交换式以太网中的实现。 1 2 工作内容与研究成果 本论文所作的研究工作主要包括以下几点: 对以太网结构以及以太帧的分析,特别是对t c p i p 协议的全面了解:包括 以太网的物理层协议,以太网的数据交换,以太帧的构成;t c p i p 协议族中最 为核心的协议i p ( 网际协议) ,i p 地址,以及i p 首部的分析,对网络中路由的 分析;还有就是域名系统的介绍,地址解析协议( a r p ) ,同时分析了t c p 和u d p 的不同作用。 分别对在共享式以太网和交换式以太网中截获网络封包的研究分析:包括在 共享式以太网( 主要是对以共享式集线器为集中设备的以太网) 中,通过把网 譬设置成混杂模式,来截获所有经过本机的数据包。通过调用一个w i n p c a p 的 程序库,来程序实现。另外一种情况就是在交换式以太网中,如何实现对数据 包的截获和分析,主要研究了通过a r p 欺骗来截获网络中任意两台机器上流过 的数据包,包括对原理分析、框架结构和程序的实现等部分。 对网络数据包截获的其他技术的探讨:包括通过编制一个过滤驱动程序来从 最底层获得数据包;还有就是使用w i n s o c k2s p i 技术来截获网络数据包的技 术;以及用n d i s ( 网络驱动程序接口规范) 中间驱动程序截获网络数据包。 1 3 论文的结构 在本章前两节简单介绍了本论文的研究背景及研究意义,论文的其他部分依次 展开论述了网络物理架构,分析网络协议的原理,分析w i n p c a p 程序库,研究了共 享式以太网巾截获数据包的原理和实现,更加关注在交换式以太网中如何实现数据 包的截获技术,主要应用的就是a r p 欺骗这项技术。 以下是论文的具体组织结构: 第二章:作为核心内容的铺垫,主要介绍了论文的理论基础。首先介绍了 以太网的物理架构和定义,同时介绍了以太网上的数据交换;然后介绍了以太 帧的定义,更重点的介绍了o s i 的七层网络模型,以及t c p i p 协议族,其中 2 一 东北大学硕士论文 第一章诸论 包括t c p ,i p ,u d p 秘a r p 凌t 议。 第兰章:是论文的一个主要内容,介绍了如何在共享式以太刚中现实数掘 包豹藏获。营先分绥了静么是共享式以太网叛及共攀式以= 舂= 闲懿特点。然螽主 要论述了在共享环境下实现网络数据包截获的原理,涉及到对w i n p c a p 程序库 的介绍。 第四章:是本沦文的核心部份。在第三章的基础上,进一步的介绍了如何 在交换网的环境下实现数据包的截获,介绍了主要的实现技术一- - a r p 欺骗、 a r p 代理。 第五章:是对网络中数据包截获技术的进步补充。介绍了另外几种常用 酌霹络截获援术。 第六章:论述了网络数据包截获技术在现实中的应用,同时展望了数据截 获技术的未来改避,并对全文避行了总结。 论文最黥是致谢以及参考文献列表。 + 3 。 东北大学硕士论丈 第二章以太网和t c p i p 第二章以太网和t c p i p 2 1 以太网的结构 2 1 1 基于网络结构的以太网的定义 在思考计算机网络构成技术的时候,一般都使用分层对网络结构进行理解。首 先让我们按照国际标准化组织( i s o :i n t e r n a t i o n a ls t a n d a r do r g a n i z a t i o n ) 提 出的0 s i 参考模型来分析网络结构。 在0 s i 中,把协议等级分为七层。 第一层就是物理层,处理关于硬件的网络协议。第七层为应用层,处理关于应 用程序的协议。第二层到第六层按照其间的顺序被依次设置。 表2 10 s i 参考模型 t a b 】e2 】o s ir e f e r e n c eh o d e l 以太网的规格是由美国电气和电子工程师协会( i n s t i t u t eo fe e c t r i c a la n d e 1e c t r o n i c se n g i n e e r s ) 中专门讨论规格的8 0 2 委员会,从1 9 8 0 年开始标准化讨 论的,并把i e e e 8 0 2 3 作为标准规格。 2 1 2 以太网上的数据交换 在以太网中,数据是以被称为帧的数据结构体为单位进行交换的。通常,在计 算机网络上交换数据的数据结构体的单位是数据包,而在以太网中把使用的数据包 称为帧。 4 东北大学硕士论文第二章以太网和y c p i p 这种包( 如图2 1 所示) ,是由记录着数据包发送给对方所必需信息的包头部分 和记录着传送给接收端信息内容的报文部分组成的。包头包含接收端的地址、发送 端的地址、数据错误检查和改正所必需的错误检验和改正码。数据包被传送到网络 上,通过网络中中继装置传送到接收端。 图2 1 数据包的一般结构 f i g 2 1t h e s t r u c t u r eo fp a c k e t 以太网上的帧是如何被发送出去的。在以太网上,帻是被称为带冲突检测的载 波侦听多路访问( c s m a c d :c a r r i e r s e n s em u l t i p l ea c c e s sw i t hc o l l i s i o n d e t e c t i o n ) 发送的。在c s m a c d 技术中,如果网络上没有数据,则任何时候都可以 将数据发送出去。因此,传送数据的网络设备,首先要确认网络上是否有数据在传 送。如果没有数据则可以将数据发送到网络上。如果网络被使用,那就要等到网络 空闲后发送,上面的工作相当于c s m a c d 的c s m a 部分。 在使用双绞线和光纤电缆通信时,因为发送和接收有各自的通信线路,所以没 有信号碰撞的情况,但是在发送数据时,在同时从接收用的通信线路接收信号的情 况下,也会发生冲突( 如图2 2 所示) 。 图2 2 冲突的检测 f i g 2 2c o l l i s i o nd e t e c t i o n 一5 一 东北大学硕士论文 第| 二章以太网和t c p i p 如果检测出冲突,为强调冲突的发生,要等待发送出3 2 位数据所必需的时l h j 之 后,在等待一个随机决定的时间,而后重新发送。这样同时开始发送的两台网络设 备中,随机数小的网络设备先进行发送,随机数大的网络设备要等到网络空闲下米 才能发送( 如图2 3 ) 。这个等待时间被称为补偿时间( h a c k 一0 盯一t i m e ) 。 图2 3 冲突后的数据再发送 f i g 2 3s e n da g a i na f t e rc o l l i s i o nd e t e c t i o n 网络拥挤和多次反复发生冲突,就可能造成数据无法发送,因此,为有效地利 用网络资源,在网络空闲和拥挤时,对等待的最大值进行调整。等待时机在冲突次 数少的情况下,把等待时间的最大值缩小;拥挤和冲突频繁发生时,把等待时间的 最大值扩大。 这样,在c s m a c d 技术中,网络空闲的情况下,任何时候都可以将数据发送出 去,万一发生冲突造成发送失败时,可以重新发送帧。所以c s m a c d 在网络比较空 闲的情况下是一种高效的通信协议。 但是在网络拥挤的情况下恰好相反。c s m a c d 发生冲突时,在等待和再次发送 等方面花费过多的时间,会造成网络反复发送无用的数据,网络设备和传送线路等 网络资源被白白占用,结果导致通信效率降低。 2 2 以太网帧的构成 以太网帧的结构( 如图2 4 所示) 。在这个以太网帧的报头中包含接收端以及发 送端的地址,帧的报文部分包含的是数据种类,最后放置的是错误检验和修止码。 开始的6 4 位是前同步码( p r e a m b l e ) 和帧首定界符( s t a r tf r a m ed e l i m i t e r ) 。前 同步码是使发送端和接收端在数据的交接上步调一致的信号。发送端以5 6 位 6 东北大学硕士论文 第二章以太网和t c p i p ( 1 0 1 0 1 0 1 0 1 0 ) 反复发送1 和0 信号。接收端接收到这种信号后,准备读取发送 来的信息。 h j d 同步码雨i 接收端的m a c发送端的m a c类型字段 。最萋毳。,i 错霉笺挲、 开始帧分解 地址( 4 8 )地址( 4 8 ) ( 6 4 ) 符( 6 4 ) 图2 4 以太网帧的结构 f i g 2 4t h es t r u c t u r eo ff r a m e 前同步码结束后是表示帧的真正开始的8 位( 1 0 1 0 1 0 1 1 ) 。帧首定界符之后是地 址等报头信息。 帧首定界符后面是接收端及发送端的m a c 地址。如前面所述,只有在接收端的 m a c 地址是自己的m a c 地址的情况下,才能进行帧接收;m a c 地址为其他机器的情况 下,将不接收该帧而把它删除。 但当接收端地址全部都是1 时,在同一以太网内连接的所有设备,都要接收该 帧。全部为l 的m a c 地址称为广播地址。 接收端和发送端的m a c 地址后面是1 6 位的类型字段。类型字段中存放的是以太 网帧中传送数据的上层协议的种类代码。以太网帧的报文最大能存放1 2 0 0 0 位,即 1 5 0 0 字节。 以太网帧所传送的数据是网络层规定的数据包。如果要使用i p 网络协议,则 i p 数据包就将存储在以太网帧的报文处。 帧的尾部是检查数据错误的错误校验以及修正码。一般错误的检验方法有奇偶 校验等方法,但在以太网中常使用循环冗余检验( c r c :c y c l i cr e d u n d a n c e yc h e c k ) 榆查错误。 在c r c 中,将表示帧的位列作为多项式,把多项式与准备好的特定多项式相除, 得到的结果与数据一同发送。在接收端重新进行一次除法运算,用其结果确认传送 来得数据正确与否。使用c r c 不但能检查出是否有错误,而且还能在接收端修正错 误。但是,以太网在检查出错误时,该帧将被删除并重新发送。 2 3i p 的结构 2 3 1 作为网络层协议的i p 使用以太网,可以在同一以太网内连接的计算机间进行以太网帧的交换。即两 台直接连接的计算机间可以进行通信。 但是象因特网那样由许多局域网连接起来的大网络,1 i 同的以太网连接的计算 一7 一 东北大学硕士论文第二章以太网和t c p i p 机彼此进行通信,只有以太网的结构还是远远不够的。若使用c s m a c d 技术,在由 很多以太网组成的大规模网络上进行通信,则从某一台计算机发出的以太网帧就会 被送到网络上所有的计算机上。 那么,当网络上的计算机达到定的数目时,就会发生冲突,造成网络功能丧 失。对于这个问题,使用交换式集线器虽然能够减轻冲突,但是只靠数据链路层叻、 议考虑一对一的计算机连接,是不能解决根本问题的。 因此,要使用位于o s i 参考模型的第三层的网络层的协议。网络层的协议能在 由很多局域网构成的网络上,从多台计算机中选择出作为通信对象的计算 机。在这种方法中,网络层的数据包的传送方法是最重要的,数据包经过网络传输 到目的计算机存在的网络中,需要路径上存在的网络依次对数据包进行转发。这种 决定数据包前进方向的功能称为路由。路由是网络层的重要功能之一。 图2 5 路由器 f i g 2 5r o u t e r 为了进行合适的路由,网络上的数据包中继器一一路由器( r o u t e r ) 应该知道 数据包从网络上的什么地方来传送到干1 么地方去( 如图2 5 ) 。因此,网络层的协议 与数据链路层规定的协议不同,为了多网络间的数据包传输,要有适合形式的地址 体系。这种网络的地址体系必须能看见地址并能进行路由。在具有代表性的因特网 中使用的是i p 网络层协议。l p 协议中考虑了以上几点,制定了基于i p 的地址,i p 地址体系。现在使用的i p 是第四版本的。i p v 4 的i p 地址是以3 2 位的一:进制数来 表示的,通常按8 位分成四段,用十进制的数值表示,中间用“”分丌。 8 一 东北大学硕士论文 第二章以太网和t c p i p 2 3 2 路由 两个以上的网络进行连接的时候要使用路由器。路由器能将因特网上的i p 数据 包进行接力传递,这也是因特网的功能。路由器从直接连接在路由器上的网络设备 中得到i p 数据包,适当的调整i p 数据包的传送方向后送出。因为i p 数据包本身不 含有在因特网上通过怎样的路径到达对方计算机的信息,所以i p 数据包只依靠接收 端的i p 地址,通过多个路由器进行i p 数据包的接力传递。 i p 数据包的路由是按照路由表的安排的。所谓路由表,即记录着某台网络设备 把i p 数据包传送到其他网络设备的数据结构。不只是路由器具有路由表,所有使用 网络层协议的网络设备都具有路由表。例如,计算机、路由器和被称为三层交换器 的路由器的集合体等都具有路由表。 图2 6 实际路由情况 f i g 2 6t h es t a t eo fr o u t e 在路由表中,以组的形式记录着i p 数据包要传送的目标计算机的i p 地址和未 到达最终目的必须经过路由器的i p 地址。如图2 6 中自己所属的网络i p 地址为 1 9 2 1 6 8 1 o 2 4 ,计算机的i p 地址为1 9 2 1 6 8 1 1 2 4 ,并且路由器的地址为 1 9 2 1 6 8 1 2 5 4 2 4 。 那么路由表是怎么做成的呢? 路由必须是一个能独立解决的问题。最简单的方 法就是手动记录路由表,这种方法被称为静态路由( s t a t i cr o u t i n g ) 。 静态路由适用于极小的局域网,一旦网络的规模增大则会变得非常麻烦。网络 变更时需要手动修改。 这样,在网络上的计算机的路由表( 如表2 2 所示) 。 9 东北大学硕士论文第二章以太网和t c p i p 表2 2路由表 t a b l e2 2t h et a b l eo fr o u t e 接收端接f 来发送地址 1 9 2 1 6 8 1 0 直接发送到接收端的计算机 d e f a u l t ( 缺省) 1 9 2 1 6 8 1 2 5 4 对表2 2 表示的路由表作如下说明: 如果接收端的i p 地址属于自己的局域网,那就使用数据链路层协议的功 能,i p 数据包直接发送给对方。 如果不是这样的( 缺省时) ,则向局域网中存在的路由器发送i p 数据包。 路由器具有的路由表是很复杂的。以前面路由器为例子,两侧连接的计算 机可以使用各自具有的数据链路层进行直接通信。除此以外在进行计算机 通信时,还必须向邻近的路由器发送i p 数据包,并进行i p 数据包的接力 传递。 路由器也具有交换路由信息,自动生成路由表的方法,这种方法被称为动态路 由( d y n a m i cr o u t i n g ) 。目前广泛使用的是动态路由。 动态路由的协议中有组织内部使用的内部网关协议( i g p ) 和组织问使用的外部 网关协议( e g p ) 。后者现在被用于边界网关协议( b g p :b o r d e rg a t e w a yp r o t o c 0 1 ) 中,前者则被用于面向小规模网络的路由信息协议( r i p :r o u t i n gi n f o r m a t i o n p r o t o c o ) 和具有高效率的开放最短路径优先( o s p e :o p e ns h o r t e s tp a t hf i r s t ) 协议中。 2 3 3i p 的实际通信 实际中是使用数据链路层的功能进行i p 数据包的交换。此时,i p 数据包如图 2 7 所示存储在以太网帧的报文部。i p 数据包是用以太网的功能发送的。在经过路 由器对i p 数据包中继后,i p 数据包暂且从以太网的报文中取出,而后路由器将其 重新做成以太网帧的报文。 网络上i p 数据包的传送按顺序可以分为以卜几点: 第一种情况就是通信双方在同一个以太网上的时候。 发送端的计算机建立i p 数据包。i p 数据包中存放接收端的i p 地址等发送i p 数 据包所必需的信息。 建立以太帧,其报文中存放着日0 建立的i p 数据包。此时,因为通信双方在同 一以太网内,帧将直接送达。在直接送达时,由后面要讲述的a r p 协议取得i p 地址 一1 0 东北大学硕士论文第二章以太网和t c p i p 和m a c 地址的对照表,从而直接得到接收端的y i a c 地址。因此,以太网帧将接收端 计算机的m a c 地址和发送端计算机的m a c 地址等一起存储起来。 使用以太网的功能,将以太网帧发送到通信线路上。通过c s m a c d 技术,将这 个以太网帧发送到接收端。 接收端计算机从以太网帧的报文中取出l p 数据包。 第二种情况,通信双方不在同一以太网上时,i p 数据包必须通过路由器发送, 发送的过程会与前面的有所变化。 发送端计算机建立i p 数据包( 如图2 7 所示) 。 图2 7i p 数据包传送情况 f i g 2 7t h et r a n s m i s s i o no f i pp a c k e t 建立以太网帧,其报文存放在前面所建立的数据包中。此时,通信双发不在同 一以太网内,帧必须发送到路由器。因此,由i p 地址和m a c 地址的对照表,可以知 道路由器的g a c 地址。以太网帧将路由器的m a c 地址和发送端计算机的m a c 地址等 一起存储起来。 使用以太网的功能,将以太网帧发送到通信线路上。通过c s m a c d 技术,将这 个以太网帧传送到路由器。 路由器从以太网帧的报文中取出i p 数据包。路由器查询i p 数据包中存放的接 收端的l p 地址,检索路由表。把i p 数据包装入以太网帧中,将帧发送到下一个应 该发送的网络设备。重复以上步骤,直到数据包发送到指定的计算机为止。 2 4i p 数据包的构成 在这一部分将对i p 数据包的构成和与i p 有关系的其他协议进行分析。 i p 数据包的构成( 如图2 8 所示) 。i p 数据包的头部存放着1 p 的版本。i p v 4 时存放的是4 。 接下来i h l 是一个字符,即以3 2 位为一个单位,存放着从版本开始到填充结束 的报头的长度。最短的情况是没有选项,这时i h l 的值为5 。 一1 1 东北大学硕士论丈第二章以太网和t c p i p 服务类型字段表示i p 数据包在传递时发送端要求的品质。数据包总长度字段以 8 位为一个单位,即宁节表示t p 数据包的长度。接下来是标识字段,从t c p 等上层 协议渊用时i p 数据包的标识号。 4 伉 4 位首部8 何服务类型 1 6 位总长度( 字仃数) 版本长度 ( t o s ) 3 何 1 6 位标识1 3 位片偏移 标志 8 位生存时间 8 位协议 1 6 位首部检验和 ( t t l ) 3 2 位的源i p 地址 3 2 位目的i p 地址 选项 数据 图2 8i p 数据包的构成 f i g 2 8t h es t r u c t u r eo f i pp a c k e t 标志字段和数据块偏移的处理。i p 数据包要在数据链路层的协议规定下,装入 帧的报文中传送。但在i p 数据包中,只是报文部分最大就有6 5 5 3 5 位,数据链路层 的帧是不能全部容纳的。以太网帧中报文部分的最大长度为1 2 0 0 0 位,大的i p 数据 包是不能全部放到以太网帧中的。这时只有分割i p 数据包,才能装入到以太网帧中。 这种操作称为分块,分割的数据称为碎块。i p 数据包的标志表示有无碎块,片偏移 用于保证按照正确的顺序处理。 t t l 字段是为了防止错误的i p 数据包在网络上循环,赋予i p 数据包一定的寿 命。i p 数据包在发送时就赋予了其规定的寿命,这个值设置在t t l 字段中。t t l 字 段的值在i p 数据包每通过一次路由器时,进行一次衰减。当t t l 字段的值为0 时, 其i p 数据包就被删除掉。t t l 的初始值应该大于必须经过的路由器数,即使i p 数 据包在网络上循环也不能永久的存在。但是,如果t t l 字段设置的初始值过小就不 能进行诈常的通信了。因为t t l 字段位8 位,t t l 的最大值为2 2 5 ,所以通常将t t l 初始值设为2 5 5 。 一1 2 东北大学硕士论文第二章以太网和t c p i p 2 5t c p i p 的作用 2 5 1t c p 和u d p 传输控制协议( t c p :t r a n s f e rc o n t r o lp r o t o c 0 1 ) 和用户数据报协议( u d p :u s e r d a t a g r a mp r o t o c 0 1 ) 是在因特网上传输层使用的协议。使用网络层的i p 协议,可 以从世界上任何一台计算机中找到特定的通信对象,并向其发送数据。传输层的协 议提供的是连接指定在对方计算机上运行的特定应用程序和希望得到的网络服务。 t c p 及u d p 中使用的是端口号的概念,端口是应用程序在网络通信上使用的数据输 入输出r 。端口分为两种,一种为公认端口,另一种为短暂端口。公认端口被分配 给网络上的服务程序。 当某一网络客户端利用其他计算机上的服务程序时,在根据i p 地址指定服务计 算机的同时,也指定了被分配的服务程序的公认端口号。由此可以利用与端口号对 应的特定网络服务。短暂端口号是客户端程序与服务器端程序进行通信时,暂时使 用的端口号。短暂端口号是不可再生的,被运行系统分配给客户端系统。 t c p 和u d p 把端口通信功能提供给应用程序。但是t c p 和u d p 在性质上具有差 别,因此在用途上也存在一定的区别。t c p 中补充了i p 没有提供的网络功能,在两 个程序之间提供一条没有错误的全双工通信线路。所以从使用t c p 为传输层协议的 应用程序上来看,网络的利用方法是极其简单的。 数据的再次发送、错误处理和数据包到达顺序的控制等在t c p 的处理部分进行, 在应用程序上不需要进行相关的处理。因此,使用t c p 和使用其他网络输入输出装 置是样的。t c p 的这种性质被称为面向连接( c o n n e c t i o no r i e n t e d ) 。但是,为 了提供这种高级功能,t c p 对计算机系统来说是一种很复杂的协议,即t c p 是所谓 负载很大的一种协议。 u d p 只是在i p 的功能中追加了端口功能的简单结构。因此,对要求处理速度的 应用程序提供了传输层功能。u d p 中连接和数据的顺序控制等功能由应用程序来完 成。这种性质被称为无连接( c o n n e c t i o nl e s s ) 。因为u d p 是弱连接的协议,所以 常用于错误少的局部环境下及要求快速的应用程序中。 2 5 2t c p t c p ( t r a n s m i s s i o nc o n t r o lp r o t o c o l ,传输控制协议) ,是用来在不可靠的因 特网上提供可靠的、端到端的字节流通讯协议,i p 层不保证将数据包正确传送到目 一1 3 一 东北走学硕士论文第二章以太网和t c p i p 的地,t c p 则从本地机器接收用j 、的数据流,将其分成不超过6 4 k 字节的数据片段, 将每个数据片段作为单独的i p 数据包发送出去,最后在目的地机器中再组合成完整 的字节流,t c p 协议必须保证可靠性。发送和接收方的t c p 传输以数据段的形式交 换数据,一个数据段包括一个固定的2 0 字节,加上r q 选部分,后面再跟上数据,t c p 协议从发送方传送一个数据段的时候,还要启动计时器,当数据段到达目的地后, 接收方还要发送回一个数据段,其中有一个确认序号,它等于希望收到的下一个数 据段的顺序号,如果计时器在确认信息到达前超时了,发送方会重新发送这个数据 段。 如图2 9 所示,t c p 消息段开始的部分存放的是发送端和接收端的端口号。顺 序号中存放的是按照发送顺序处理的相关数据。具体来说,表示的是将某消息段中 的数据位于全体数据块的字节数与进行通信时某一个规定的偏移量相加后的数值。 1 6 位源端口号 16 位目的端口号 3 2 位序号 3 2 位确认序号 4 位首部吲保留( 6 位)6 位控制位1 6 位窗口大小 1 6 位校验和1 6 位紧急指针 选项 图2 9t c p 首部 f i g 2 9t h eh e a d e ro ft c p 确认号是接收端对于发送端接收到数据块状态的顺序号。具有4 位的首部长字 段足以3 2 位为个单位存放报头长度的数值。换而言之,从t c p 消息段开始的部分 到数据偏移4 字节后存放的就是t c p 的报文部分。用于扩展的6 位字段后面是控 制位。 控制位是6 位标志的集合,表示t c p 以怎样的状态进行通信。窗口表示接收缓 存的数值,接下来是检查错误用的校验码和为处理紧急数据而配置的紧急数据指针, 最后存放的是选项和填充。 在六位的控制位罩包括: 1 4 东北大学硕士论文第二章以太网和t c p i p u r g :( u r g e n tp o i n t e r ) 紧急指针。用到的时候值为i ,用来处理避免t c p 数 据流中断。 a c k :( a c k n o w l e d g m e n tf i e l ds i g n i f i c a n t ) 置l 时表示确认号( a c k n o w l e d g m e n t n u m b e r ) 为合法,为0 的时候表示数据段不包含确认信息,确认号被忽略。 p s h :( p u s hf u n c t i o n ) ,p u s h 标志的数据,罱1 时请求的数据段在接收方得到 后就可直接送到应用程序,而不必等到缓冲区满时才传送。 r s t :( r e s e tt h ec o n n e c t i o n ) 用于复位因某种原因引起出现的错误连接,也 用来拒绝非法数据和请求。如果接收到r s t 位时候,通常发生了某些错误。 s y n :( s y n c h r o n i z es e q u e n c en u m b e r s ) 用来建立连接,在连接请求中,s y n = i , a c k - o ,连接响应时,s y n = 1 ,a c k = i 。即,s y n 和a c k 来区分c o n n e c t j o nr e q u e s t 和c o n n e c t i o na c c e p t e d 。 f i n :( n om o r ed a t af r o ms e n d e r ) 用来释放连接,表明发送方已经没有数据 发送了。 在t c p 的通信中,先建立“连接”,建立假想的t c p 连接通信线路。然后按照下 面的顺序进行。 客户端发送一个带s y n 位的请求,向服务器表示需要连接,比如发送包假 设请求序号为1 0 ,那么则为:s y n = i o ,a c k = o ,然后等待服务器的响应。 服务器接收到这样的请求后,查看是否在l i s t e n 的是指定的端口,不然, 就发送r s t :i 应答,拒绝建立连接。如果接收连接,那么服务器发送确认, s y n 为服务器的一个内码,假设为1 0 0 ,a c k 位则是客户端的请求序号加1 , 本例中发送的数据是:s y n = 1 0 0 ,a c k = 1 1 ,用这样的数据发送给客户端。向 客户端表示,服务器连接已经准备好了,等待客户端的确认这时客户端接 收到消息后,分析得到的信息,准备发送确认连接信号到服务器 客户端发送确认建立连接的消息给服务器。确认信息的s y n 位是服务器发 送的a c k 位,a c k 位是服务器发送的s y n 位加1 。即:s y n = i l ,a c k = 1 0 1 。 这时,连接已经建立起来了。然后发送数据, 。这是 一请求和连接过程。 2 5 3u d p u d p 是一个简单的面向数据报的运输层协议( 如图2 1 0 ) 。它不提供可靠性: 它把应用程序传给i p 层的数据发送出去,但是并不保证它们能到达目的地。下面来 看一下u d p 首部的各个字段。 端口号表示发送进程和接收进程。u d p 长度指的是u d p 首部和u d p 数据的字节 一1 5 东北大学硕士论文第二章以太网和t c p i p k 度。i p 数据包的k 度指的是数据报伞长,因此u d p 数据报长度是全长减去i p 首 部的长度。u d p 能进行高速的处理,但数据包顺序控制的1 作,就要由应用程序来 完成。这种u d p 协议仅仅是在t p 提供的功能中加上了端口的概念,足简单的传输 层协议。 1 6 位源端口号1 6 位目的端口号 1 6 位u d p 长度1 6 位u d p 校验和 数据 ( 如果有) 图2 1 0i j d p 首部 f i g 2 1 0t h eh e a d e ro fu d p u d p 检验和覆盖u d p 首部和u d p 数据。回想l p 首部的检验和,它只覆盖i p 的 首部,并不覆盖i p 数据包的任何数据。u d p 和t c p 在首部中都有覆盖它们首部和数 据的检验和。u d p 的检验和是可选的,而t c p 的检验和是必需的。 1 6 东北大学硕士论文 第三章共享以太网中的数据包截获 第三章共享以太网中的数据包截获 3 1 基于集线器的以太网 在很多小型的局域网中,常常以集线器( h u b ) 作为集中设备来组成网络。因 为共享式集线器的特点,这类网络我们可以称之为共享式以太网。首先,先来研究 在共享式以太网中如何截获数据包的技术和理论。 3 1 1 集线器( h u b ) 集线器( h u b ) 是管理网络的最小单元,是局域网的星型连接点。它对工作站进 行集中管理,不让出问题的区段影响整个网络的正常运行。h u b 是局域网中应用最 广的连接设备,目前若按配置形式可分为独立型集线器、模块
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《老年人能力综合评估规范》标准修订编制说明
- DB11T 1031-2013 低层蒸压加气混凝土承重建筑技术规程
- 农业机械采购招投标文件范本
- 智慧城市解决方案研发外包制度
- 活动策划师聘用合同模板
- 汽车维修招投标操作规程
- 医药电商子公司用户体验改进
- 教育机构硬化地面施工合同
- 城镇医疗救助管理办法综合
- 教育公司消防管道安装合同
- 手术室急危重患者的抢救与配合
- 新能源汽车充电技术 课件 2-3 认知新能源汽车直流充电系统
- 2021年公务员国考《申论》真题(副省级)及参考答案(两套答案)
- 1.1公有制为主体多种所有制经济共同发展课件-高中政治统编版必修二经济与社会
- 研发投入核算管理制度
- 新疆哈密地区(2024年-2025年小学四年级语文)人教版期中考试(上学期)试卷及答案
- 期末 (试题) -2024-2025学年人教PEP版(2024)英语三年级上册
- 2024-2030年中国SUV行业市场深度调研及发展前景与投资前景研究报告
- 护理案例教学法
- DB34∕T 4010-2021 水利工程外观质量评定规程
- 2023年广州市教育系统招聘优才计划笔试真题
评论
0/150
提交评论