计算机网络中各种报文、HEADER的读法
计算机里到处都是格式,规范。比如《操作系统真象还原》里提到的“魔数”
直接出现的一个数字,只要其意义不明确,感觉很诡异,就称之为魔数。
拿elf文件头举例
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
这个Magic后面的一长串就是魔数,elf解析器(通常是程序加载器)用它来校验文件的类型是否是elf。
另一个例子是MBR的最后两个字节内容。主引导记录(MBR)最后的两个字节的内容是0x55,0xaa,这表明这个扇区里面有可加载的程序,BIOS就用它来检验该扇区是否可引导。
1
https://www.gigamon.com/content/dam/resource-library/english/guide---cookbook/gu-bpf-reference-guide-gigamon-insight.pdf
包括:
Berkeley Packet Filter语法
TCP HEADER – RFC 793
UDP HEADER – RFC 768
ICMP HEADER – RFC 792
IPv4 HEADER – RFC 791
IPv6 HEADER – RFC 2460
2
DNS(RFC 1035)报文结构
https://www2.cs.duke.edu/courses/fall16/compsci356/DNS/DNS-primer.pdf
COMPSCI 356: Computer Network Architecture这门课挺难的
3 RFC文档法
找到对应的RFC号(可能会有一大堆,找到关键的那些),然后去提供RFC文档的网站去查。
阅读RFC文档来了解报文报头,这一方法的缺点是:RFC文档介绍性的文字有点多,很难读。
可以按照这个url格式去ietf里查。
https://tools.ietf.org/pdf/rfc1035.pdf
https://tools.ietf.org/html/rfc1035
https://tools.ietf.org/rfc/rfc1035.txt
觉得看这些RFC文档还不够过瘾的可以去下面这个网站
http://www.cnpaf.net/class/rfcall/
计算机网络中各种报文、HEADER的读法的更多相关文章
- VC中Source Files, Header Files, Resource Files,External Dependencies的区别
VC中Source Files, Header Files, Resource Files,External Dependencies的区别 区别: Source Files 放源文件(.c..cpp ...
- ionic 隐藏header-ionic中隐藏头部header
ionic 中隐藏头部header 通过 hide-nav-bar="true" 来实现 <ion-view hide-nav-bar="true"> ...
- 《计算机网络 自顶向下方法》 第8章 计算机网络中的安全 Part2
SSL(使 TCP 连接安全) SSL(Secure Socket Layer),即安全套接字层,是对 TCP 的强化 HTTPS 使用 SSL,而 HTTP 不使用 SSL 通过采用机密性.数据完整 ...
- 利用三层交换机实现VLAN间路由(计算机网络中速率、带宽、吞吐量的概念)
1.速率 速率是指计算机网络中的主机在数字信道上,单位时间内从一端传送到另一端的数据量,即数据传输率,也称数据率或比特率.比特(bit)是数据量的最小单位,s(秒)是时间的最小单位.所以速率单位为bi ...
- HTTP协议中request报文请求方法和状态响应码
一个HTTP请求报文由4部分组成: 请求行(request line) 请求头部(header) 空行 请求数据 下图给出了请求报文的一般格式: 请求行中包括了请求方法,常见的请求方法有: GET:从 ...
- 计算机网络中的帧封装(C实现)
这段时间开始复习计算机网络,看到帧封装这一节,结合以前的课程设计,就用C写了个帧封装的程序,说实话C学的确实不怎么样,实现的时候对于文件操作那部分查了好多资料,下面说说帧封装是啥情况. 学过计算机网络 ...
- 在jquery的ajax中添加自定义的header信息
转自网络 1 $.ajax({ type: "POST", url: "http://192.168.0.88/action.cgi?ActionID=WEB_Reque ...
- 计算机网络(8)-----TCP报文段的首部格式
TCP报文段的首部格式 概述 TCP报文段首部的前20个字节是固定的,因此TCP首部的最小长度是20字节. 源端口和目标端口 各占2个字节,分别写入源端口号和目的端口号. 序列号 占4个字节,表示本报 ...
- tableView中自定header视图的重用问题
在UItableView中使用代理方发 - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger ...
- 计算机网络中的TCP/UDP协议到底是怎么回事(二)
上一篇博客阐述了TCP/IP五层网络结构模型以及一些关于TCP.UDP的基础知识,这篇博客会接着写一些关于TCP拥塞控制的算法以及对TCP中常有的疑问进行解答. TCP拥塞控制 首先了解几个概念,为下 ...
随机推荐
- FFmpeg 命令行
FFmpeg命令行帮助 #>ffmpeg -h #>ffmpeg -h long #>ffmpeg -h full 将视频按照指定的宽高输出 #>ffmpeg -i input ...
- 记一次mybatis中like 不执行sql的问题,单引号 与双引号的坑
使用环境: springboot 2.0.4 mybatis-spring:1.3.2 错误也是比较蛋疼: 不报错,但是查询出来的结果不对. 原错误sql 示意: select * from ...
- python菜鸟学习: 6. 字典常用方法
# -*- coding: utf-8 -*-dict1 = {"name": "liyuzhoupan", "age": "22 ...
- signalR client属性中的大致方法
T All { get; } 相当于持久连接中的 Broadcast. T AllExcept(params string[] excludeConnectionIds); 给排除本人所有人发送消息. ...
- php处理mysql的结果集
Php使用mysqli_result类处理结果集有以下几种方法 fetch_all() 抓取所有的结果行并且以关联数据,数值索引数组,或者两者皆有的方式返回结果集. fetch_array() 以一个 ...
- POJ--2386题C++实现
本题利用深度遍历的穷竭搜索法进行解题,即对每一个元素都对其进行各个方向的深度遍历,穷尽其周围 #include<iostream>#include<cstdio>using n ...
- ZSTUOJ刷题11:Problem D.--零起点学算法106——首字母变大写
Problem D: 零起点学算法106--首字母变大写 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 18252 Solved: 5211 Descr ...
- docker-compose实践(携程apollo项目)
docker-compose使用开源镜像启动容器 以携程apollo项目为例,使用docker-compose部署单节点模式 创建apollo文件夹,vim一个新的docker-compose.yam ...
- 将npm安装镜像切换到淘宝
cnpm(推荐) 安装 pm install cnpm -g --registry=https://registry.npm.taobao.org 使用 cnpm install [xxxxxxx] ...
- linux 中安装、更新和卸载软件
1.Aptitude aptitude 与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具. 与 apt-get 不同的是,aptitude 在处理依赖问题上更佳一些. ...