unix 网络协议的深度分析

unix 网络协议的深度分析

ID:36274541

大小:562.50 KB

页数:15页

时间:2019-05-08

unix 网络协议的深度分析_第1页
unix 网络协议的深度分析_第2页
unix 网络协议的深度分析_第3页
unix 网络协议的深度分析_第4页
unix 网络协议的深度分析_第5页
资源描述:

《unix 网络协议的深度分析》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、UNIX网络协议的深度分析简介: 无论您是在监控您的网络以便发现性能问题、调试一个应用,还是在您的网络上发现一个您不认识的应用,有时您都需要对您的UNIX®网络中使用的协议进行深度分析,以便了解它们的作用。有一些协议很容易确定和理解,即使它们使用非标准端口。而另外一些协议则需要进行更多的观察以了解它们在做什么、在交换什么信息。在本文中,我们将介绍对UNIX网络中使用的协议进行深度分析的技术。引言网络已经是无处不在,很多时候我们都会利用网络与不同主机进行通信,包括网络内部和外部的。大多数情况下这不会遇到问题,但是有时您需要仔细检查您的网络以查明问题原因。仔细检查网络流量内容的原因有很多。

2、其中第一个原因是您可能正在调试一个现有的网络应用,或者您正在开发一个应用,而您想要监控通过您的网络的流量。第二个原因是需要识别可能耗尽网络带宽和资源的流量。对于前一种情况,您可能已经知道协议的内容了,但是您希望能够更深入地了解正在传输的实际数据,例如,在使用Web服务时。对于后一种情况,确定数据包的内容需要了解正在使用的协议的一些扩展知识。在TCP/IP和UDP/IP的通信中,最主要的元素是用于确定主机和端口号的IP地址。端口号用于提供额外的通信通道,这样您才能够在两个主机之间实现多个连接。其中端口定义还有一些标准。例如,端口25是专用于电子邮件(SMTP)传输,而大多数网站都是运行在

3、端口80(HTTP)上的。这些规范可以使程序之间通过一个熟悉的通道进行通信,这与您选择电话或传真号的道理是一样的。虽然有这样一些规范,但是您实际想使用哪些端口是没有任何限制或约束的。事实上,大多数情况下一些破坏性网络应用和一些安全性方法会故意使用非标准端口。例如,有些应用会通过将一个标准端口用于不同的协议而隐藏内容,如在端口25上使用HTTP协议。此外,有时某些应用也会使用与标准不同的端口,这样端口的用途就明显了(如,将端口99用于HTTP),或者将特定的协议流量封装到另一个协议中。最后的方法实际上是网络通道和虚拟私有网络(VPN)所使用的方法。不管网络流量原因和复杂性,第一个步骤都会

4、开始记录数据。记录原始数据如果您希望记录网络原始数据,以便自己检查这些信息,那么您可以使用许多不同的工具。大多数的网络嗅探器也能够解码和解密特定的数据包内容,这能够帮助您研究一个已知协议的内容。在Solaris上,您可以使用snoop工具,而在AIX上,您可以使用iptrace工具。您也可以尝试使用跨平台的tcpdump工具,它支持大多数的UNIX和Linux操作系统。这些工具能够帮您捕捉和解码数据包,通常也能为您执行大多数的协议分析。注意,现代交换机不会将Ethernet数据包发送到每一个端口上,这通常会限制您从当前主机获取的信息量。许多现代交换机具有一个管理端口,它通常带有与这种监

5、控完全相同的所有数据包的副本。解码网络传输最复杂的是网络数据包中信息的级别。此外,大部分信息也会经过二进制编码后再发送,从网络捕捉完全原始的数据包需要进行大量的操作才能捕捉您需要的数据。通过使用实现某些处理的工具,您可以简化解码网络数据的过程。例如,在一个Ethernet上查看一个典型的TCP/IP协议,您将会发现网络中传输的数据包括:lEthernet数据包头,包括Ethernet来源和目标地址,数据包大小和Ethernet数据包类型。lIP报头,由IP寻址(来源和目标),协议标识和IP标记。您也会得到关于分片和数据包顺序的信息。lTCP报头,它包含端口上的信息、隐含的协议、标记和顺

6、序编号。即使有这些信息,我们仍然无法了解实际内容。在TCP(或UDP)协议之下还有额外的协议,标准数据协议(包括HTTP、SMTP和FTP),或者封装性协议,如RemoteProcedureCall(RPC)和RPC的子类型,如NFS。通常这些工具必须使用协议和/或端口号来确定正在传输的内容。所以,如果流量是通过非标准端口传输的,那么这些信息可能无法正确解码。基本的网络分析本文之前提到的许多网络嗅探工具都提供了不同级别的协议解码,它们是通过检查端口和内容来确定所使用的协议实现的。例如,snoop和tcpdump都提供了关于UDP和TCP上不同协议的不同级别的详细信息。例如,在snoop

7、中,您可以获得从顶级协议到所传输的单个数据块的关于NFS操作的详细信息。例如,您可以通过指定监控RPC使用NFS协议来实现对NFS流量的监控:$snoop-vrpcnfs。它能输出非常详细的数据包信息,并且它们应该进行更紧密的观察。清单1提供了Ethernet报头数据。清单1.Ethernet报头数据ETHER:-----EtherHeader-----ETHER:ETHER:Packet64arrivedat16:14:41.79434ETH

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。