一、

1、OSI与TCP/IP对应:

 TCP/IP各层功能:

链路层:包括操作系统的设备驱动程序和计算机的网卡,提供底层传输服务。
   网络层:为数据选择路由,在众多计算机和网络设备组成的网络中选择一条传输路线进行传输。
   传输层:提供两台主机端对端的通信服务,进行传输控制。
   应用层:复制应用程序的特定处理。

3、协议帧封装

当发送数据时,对于一帧数据,每一层会封装上自己的头,而收数据时去掉上层的头,如图:

二、

1、Ethernet帧格式

可以看到以太网帧头包含三部分:目的地址、源地址、类型。以太网帧类型有IP数据报(0800)、ARP请求应答报文(0806)、RARP请求应答报文(8035)。

2、IP数据帧格式

IP首部一般为20字节,除非含有选项字段,根据IP头中的“8位协议”字段,数据选项可以分为TCP报文、UDP报文、ICMP报文等。

3、TCP数据帧格式

4、UDP数据帧格式

5、ICMP报文格式

最新文章

  1. NET Core-学习笔记(一)
  2. 清空Fragment回退栈中某个Fragment
  3. ViewBag 找不到编译动态表达式所需的一种或多种类型,是否缺少引用?
  4. [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(5)(IEnumerable<>补充)
  5. 《Java JDK7 学习笔记》课后练习题1
  6. phpcms list页实现分页
  7. 解决PopupWindow遮住输入法
  8. telnet发电子邮件
  9. QT LNK2019 无法解析的外部符号
  10. CAPSPageMenu分页交互
  11. Linux搭建SVN服务器(服务端)
  12. Ibatis XML 配置文件注释引起错误及解决方案
  13. 循序渐进之Spring AOP(1) - 原理
  14. 3.5 find() 判断是否存在某元素
  15. EBS开发性能优化之SQL语句优化
  16. I/O输出流基础之FileOutputStream
  17. Linux环境下安装nginx
  18. Win 10 安装手机驱动
  19. 在向一个ArrayList中添加大量元素前,可以使用ensureCapacity方法来增加ArrayList的容量
  20. Problem F Plug It In!

热门文章

  1. 微信小程序开发——使用promise封装异步请求
  2. 在别家网站上执行自己的js代码(谷歌浏览器)(谷歌扩展程序)
  3. day 18 类,对象
  4. fastjson的常用方法
  5. elasticsearch命令
  6. SQL truncate 、delete与drop区别[z]
  7. 用js实现回车登录而不用点击登录按钮
  8. css font-size=0的妙用
  9. PAT 1023 组个最小数 (20)(代码+思路)
  10. python自学开始