协议分层后数据发送过程

发送方层层封装

接收方层层解封装

  • 唯一加尾部的是数据链路层

思考

发送方某层封装完如何知道该交给哪个下层封装?

  • 应用层选择传输层由应用程序决定,传输层选择网络层由固定的搭配,例如因特网只有IP协议,网络层选择数据链路层由网卡的类型决定。

接收方某层解封装后如何知道该交给上层哪个协议处理?

  • 每个协议都应该有个上层协议的标识,让接收方处理本层之后交给正确的上层协议

每一层协议的首部有何作用?

  • 实现本层次的特定功能,提供相邻层次协议的接口等
  • 例如网络层IP协议中包含IP地址等信息

协议分层的进一步讨论

协议是对等的

  • 收发双方某层协议必须相同

服务是垂直的

  • 下层为上层提供服务

层次实现是透明的

  • 某层的实现细节对其他层次透明

层与层之间必须提供接口

  • 某层只需知道相邻层次的接口

教学5层网络体系结构——分层之后数据的发送和接收相关推荐

  1. Linux内核网络协议栈:udp数据包发送(源码解读)

    <监视和调整Linux网络协议栈:接收数据> <监控和调整Linux网络协议栈的图解指南:接收数据> <Linux网络 - 数据包的接收过程> <Linux网 ...

  2. python socket发送组播数据_python3通过udp实现组播数据的发送和接收操作

    本文主要通过对海康摄像头进行抓包,模拟发送了udp包,并抓取摄像头返回的数据包,解析并提取相关信息. 通过抓包发现,海康摄像头发送.接收数据使用udp协议,后来比较发现,使用python模拟起来比较简 ...

  3. rocket mq 监听端口_如何使用Jmeter实现MQ数据的发送和接收?性能测试实战篇

    JMeter是性能测试中被普遍使用的一种工具,常用于压力测试.该工具具有丰富的扩展插件用以满足不同情况下性能测试的需求.消息队列(Message Queue)简称为MQ,作为目前的主流中间件,在很多软 ...

  4. python获取本地时间并向服务器发送udp报文_python3通过udp实现组播数据的发送和接收操作...

    本文主要通过对海康摄像头进行抓包,模拟发送了udp包,并抓取摄像头返回的数据包,解析并提取相关信息. 通过抓包发现,海康摄像头发送.接收数据使用udp协议,后来比较发现,使用python模拟起来比较简 ...

  5. java串口发送十六进制数,本文实例为大家分享了Java实现串口通信的具体代码,供大家参考,具体内容如下1.介绍使用Java实现的串口通信程序,支持十六进制数据的发送与接收。 源码:...

    本文实例为大家分享了Java实现串口通信的具体代码,供大家参考,具体内容如下 1.介绍 使用Java实现的串口通信程序,支持十六进制数据的发送与接收. 源码:SerialPortDemo 效果图如下: ...

  6. python socket清空接收缓冲区_Python网络编程——修改套接字发送和接收的缓冲区大小...

    很多情况下,默认的套接字缓冲区大小可能不够用.此时,可以将默认的套接字缓冲区大小改成一个更合适的值. 1. 代码 # ! /usr/bin/env python # -*- coding: utf-8 ...

  7. ZigBee组网机制以及数据的发送和接收

    Zigbee是一种新型的短距离无线通信技术.其特点是低功耗,低成本,组网灵活.Zigbee协议由zigbee联盟指定,包括应用层,和网络层,其下层采用IEEE802.15.4协议. 无论是学习zigb ...

  8. Android Wear开发 - 数据通讯 - 第二节 : 数据的发送与接收

    本节由介绍3种数据的发送接收: 1.Data Items : 比特类型数据,限制100KB以内 2.Assets : 资源类型数据,大小无上限 3.Message : 发送消息,触发指令 http:/ ...

  9. java-UDP协议实现数据的发送和接收

    实现发送端 import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; im ...

最新文章

  1. 350店铺装修激活码发放 免费领取店铺装修模板
  2. 【Excel】一次性快速批量删除下面多余的空白行
  3. 设备驱动模型之device-driver
  4. java 隐藏cmd_bat启动java程序 可以隐藏cmd窗口
  5. Windows10系统Python2.7通过Swig调用C++过程
  6. Vmware16一打开虚拟机就蓝屏
  7. Spring Boot Initilizr - 使用ThirdParty工具
  8. 【AudioVideo】处理音频输出的变化(13)
  9. lateX 编译中文_LaTeX | 为学术论文排版而生【入门篇】
  10. oracle or 运算,Oracle Or子句
  11. 【FinE】期权定价的二叉树方法(1)
  12. PADS输出BOM表和位号图(装配图)
  13. 8法则的挑战:长尾理论与长尾效应
  14. 我的免费版mbti职业性格测试
  15. Unity实现发光材质
  16. 这样投简历,99%没面试机会!
  17. 集结社区TOP博主,云享专家优质电子书
  18. halcon算子——highpass_image--从图像中提取高频分量((过滤--图像边缘处理))
  19. JavaScript中如何用函数求任意两数之和?
  20. 11 阶段总结一:详解OS的引导启动过程(含Bochs模拟软件的使用)

热门文章

  1. 程序员面试金典 - 面试题 03.05. 栈排序(两栈)
  2. LeetCode 881. 救生艇(贪心,双指针)
  3. LeetCode 82. 删除排序链表中的重复元素 II(链表)
  4. java 动态队列_RabbitMq之动态修改队列参数
  5. pythonb超分辨成像_深度原理与框架-图像超分辨重构-tensorlayer
  6. c++ 不插入重复元素但也不排序_面试时写不出排序算法?看这篇就够了
  7. 【机器学习】sklearn数据特征预处理:归一化和标准化
  8. java操作redis的操作_Java操作redis简单示例
  9. 0基础讲解机器学习算法-朴素贝叶斯分类器
  10. 论文浅尝 | 基于知识库的自然语言理解 03#