协议的分用以及wireshark对协议的识别

协议的分用以及wireshark对协议的识别

    在TCP/IP详解一书中谈到了协议的分用,书中的图1-8如上。图1-8可以很好地解释在互联网的分层结构中,底层的协议头是如何承载上层的不同的协议的。对于链路层而言,以太网首部中有不同帧类型用于表示以太网帧内的数据。在IP数据包的首部,也有专门的8位协议类型,用于表示IP包中的上层协议类型,网址http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml中给出了IETF规定的详细的协议类型号,其中TCP是6,UDP是17,ICMP是1。不过在传输层的两个常用协议TCP和UDP首部中,并没有协议类型的字段,TCP和UDP包内的应用程协议的类型依靠的是TCP和UDP包首部的端口号来进行区分。对于一些常用的应用层协议IETF都规定了相应的熟知端口号,在网址http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml中有一份详细的列表。TCP和UDP报头的16比特端口号给应用层协议的设计提供了足够的设计空间(65535个)和足够的灵活度。

   理解了协议的分用之后,就比较容易理解wireshark是如何将数据包识别和展示出来的了。wireshark的工作原理的简单介绍可以参见http://gaia.cs.umass.edu/wireshark-labs/Wireshark_Intro_v6.0.pdf。概括地说,就是wireshark是一款建立在已有的包捕捉工具上的一款数据包分析软件。常见的抓包的库有libpcap、jpcap、winpcap等等,这些抓包工具将主机的网卡设置为混杂模式,从而可以捕捉到目的MAC不是主机网卡的数据包。而wireshark基于这些库捕捉到的包进行识别和分析,将包中内容按照协议类型和层次展示出来。

  不过对于那些不采用熟知端口传输的应用层协议而言,wireshark就有可能出现无法识别的情况,这也是我最近遇到的一个场景。我在抓包的时候遇见了wireshark protocol一栏显示enttec,Info 一栏显示 unknown的情况。经过一段时间的分析,可以确定wireshark显示enttec和unknown的原因是TCP采用了非熟知端口发送HTTP报文。不过wireshark在设计中已经考虑到这样一种情况的出现,可以针对非熟知端口的已知应用层协议设置相应的解码方式。具体的方法是:选中无法识别的报文->右键单击->Decode As->选择相应的应用层协议。

  协议的分用以及wireshark对协议的识别
协议的分用以及wireshark对协议的识别

更多相关文章
  • TcpIP协议,HTTP,DNS实战:基于wireshark与BurpSuite抓包分析
    TcpIP协议,HTTP,DNS 实战:基于wireshark与BurpSuite抓包分析使用 wireshark 前的基本配置磨刀不误砍柴工.为了高效率的利用 wireshark 来帮助我们分析,学习网络协议,以及故障排除,需要对其进行一些使用前配置,大致内容如下:1.将数据包摘要列表(packe ...
  • TCP/IP详解卷1:协议第4章ARP:地址解析协议-读书笔记
    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(1)-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(2)- ...
  • 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢!信号的传输总要符合一定的协议(protocol).比如说长城上放狼烟,是因为人们已经预先设定好狼烟这个物理信号代表了"敌人入侵"这一抽象信号.这样一个"狼 ...
  • )和创建设备类以及对设备的操作方法file_operations(也就是找到对应的adapter和client并作相应操作),主设备号的申请放这里是因为可以有多条I2C总线所以以主次设备号表示,而不是有一个申请一个,浪费系统资源.
  • 网络协议分析工具————WireShark
    WireShark是安全领域中著名的网络协议分析工具,其功能之强大不亚于Windows平台中广泛应用的Sniffer Pro.WireShark的前身为Ethereal,主要作者为Derald Combs.自从Derald combs离开NIS公司而投入CACE公司(开发WinPcap工具的公司)以 ...
  • Wireshark是一个强大开源流量与协议分析工具,除了传统网络协议解码外,还支持众多主流和标准工控协议的分析与解码.序号 协议类型 源码下载 简介 1 Siemens S7 https://github.com/wireshark/wireshark/tree/master/epan/dissec ...
  •   最近帮助一客户处理视频会议故障,了解了一些H.323.RTP的东西,发现在CSDN上有位博主总结的很好,所以转载过来,原文出处:http://blog.csdn.net/bripengandre/article/details/2230087http://blog.csdn.net/bripen ...
  • 深入理解HTTP协议及原理分析
    深入理解HTTP协议及原理分析HTTP协议是用于从WWW服务器传输超文本到本地浏览器的传送协议.它可以使浏览器更加高效,使网络传输减少.它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示等.1. 基础概念篇1.1 介绍HTTP是Hyper Text Tran ...
一周排行
  • xfs文件系统  # ls /lib/modules/2.6.31.el6.x86_64/kernel/fs/Netork  File  System   # cat /etc/centos-releaseC ...
  • c++中有关自定义string的那些为什么
    1.为什么我们要学会写自定义string类      面试官爱考,你有办法吗,没有-.-2 ...
  • /root/crontab-conf文件为root用户定时执行计划文件  命令:crontab -l 说明:列出定时执行的计划列表 命令:crontab -e 说明:编辑定时执行的计划文件 每五分钟执行  */5 * ...
  • 原文地址[url]http://blog.s135.com[/url]一.搭建时间同步服务器1.编译安装ntp serverwget [url]http://www.eecis.udel.edu/~ntp/ntp_s ...
  • MySQL5.7开启GTID复制模式终于不用开启log_slave_updates参数了
    MySQL5.6的GTID复制模式,必须开启log_slave_updates参数,否则启 ...
  • ElasticSearch+LogStash+Kibana+Redis搭建日志管理服务
    说来话长,网上的安装版本太坑爹了,很多是问题是版本兼容性,导致我在测试时一直有问题,好了, ...
  • 一.下载安装软件包安装[[email protected] home]# mkdir -p /home/tools[[email protected] tools]# wget http:#mirror.esocc.com/apache/htt ...
  • {转}Solaris 10 学习笔记Solaris 10安装并运行Solarids 10的硬件环境1.           SPARC平台2.           X86平台3.           AMD64平台终 ...
  • http://technet.microsoft.com/zh-cn/library/dd876924.aspx 移动完成后,再次查看(图标变了)  然后就是等待完成!完成后,可以删除移动请求!!测试移动到conto ...
  •       在Map中向本地文件系统写文件的代码,以下代码成功运行后,会在从节点的/home/hadoop目录下生成LogInfo文件package org.apache.hadoop.examples;import ...