帮助文档
关键词列表
网站地图
网站首页
最新活动
轻量应用服务器
阿里云邮箱
等保测评
阿里云产品
企业上云最佳实践
技术帮助文档
关于我们
网站首页
>
关于我们
>
公司新闻
>
上层协议是如何使用下层协议提供的服务的呢
上层协议是如何使用下层协议提供的服务的呢
发布时间: 2020-09-01 10:13:53
文章作者: 网站编辑
阅读量: 502
上层协议是如何使用下层协议提供的服务的呢?其实这是通过封装(encapsulation)实现的。应用程序数据在发送到物理网络上之前,将沿着协议栈从上往下依次传递。每层协议都将在上层数据的基础上加上自己的头部信息(有时还包括尾部信息),以实现该层的功能,这个过程就称为封装,如图1-4所示。
经过TCP封装后的数据称为TCP报文段(TCP message segment),或者简称TCP段。前文提到,TCP协议为通信双方维持一个连接,并且在内核中存储相关数据。这部分数据中的TCP头部信息和TCP内核缓冲区(发送缓冲区或接收缓冲区)数据一起构成了TCP报文段,如图1-5中的虚线框所示。
当发送端应用程序使用send(或者write)函数向一个TCP连接写入数据时,内核中的TCP模块首先把这些数据复制到与该连接对应的TCP内核发送缓冲区中,然后TCP模块调用IP模块提供的服务,传递的参数包括TCP头部信息和TCP发送缓冲区中的数据,即TCP报文段。经过UDP封装后的数据称为UDP数据报(UDP datagram)。UDP对应用程序数据的封装与TCP类似。不同的是,UDP无须为应用层数据保存副本,程序数据的封装与TCP类似。不同的是,UDP无须为应用层数据保存副本,因为它提供的服务是不可靠的。当一个UDP数据报被成功发送之后,UDP内核缓冲区中的该数据报就被丢弃了。如果应用程序检测到该数据报未能被接收端正确接收,并打算重发这个数据报,则应用程序需要重新从用户空间将该数据报拷贝到UDP内核发送缓冲区中。
经过IP封装后的数据称为IP数据报(IP datagram)。IP数据报也包括头部信息和数据部分,其中数据部分就是一个TCP报文段、UDP数据报或者ICMP报文。我们将在第2章详细讨论IP数据报的头部信息。
经过数据链路层封装的数据称为帧(frame)。传输媒介不同,帧的类型也不同。比如,以太网上传输的是以太网帧(ethernet frame),而令牌环网络上传输的则是令牌环帧(token ring frame)。以以太网帧为例,其封装格式如图1-6所示。
以太网帧使用6字节的目的物理地址和6字节的源物理地址来表示通信的双方。关于类型(type)字段,我们将在后面讨论。4字节CRC字段对帧的其他部分提供循环冗余校验。
帧的最大传输单元(Max Transmit Unit,MTU),即帧最多能携带多少上层协议数据(比如IP数据报),通常受到网络类型的限制。图1-6所示的以太网帧的MTU是1500字节。正因为如此,过长的IP数据报可能需要被分片(fragment)传输。
帧才是最终在物理网络上传送的字节序列。至此,封装过程完成。
上一篇:云计算到底有哪些特征
下一篇:打开站点首页的等待时候的真相
最热文章
阿里云企业邮箱怎么申请免费账号
夸克网盘和阿里云盘是一家吗?
夸克网盘怎么导入阿里云
夸克网盘转阿里云盘:轻松实现文件迁移
钉钉里面的任务管家多少钱
夸克网盘和阿里云盘有什么区别
随机推荐
微服务和无服务器设计是关于事件的
影响租用服务器速度的因素有哪些
dns服务器的主要功能是什么
云服务器是什么
为什么租用专线国外服务器
网站空间怎么连接网站
获取更多阿里云折扣优惠 立即咨询
活动推荐
内容推荐
更多
SSL协议怎样开启?如何解决
阿里云通信协议的使用及应用
如何建立云服务器端口协议服务
云服务器技术协议类型及其应用
阿里云NAS使用什么协议
关键词推荐
更多
云服务器支持php环境
云计算的优势
服务器托管的优势
云主机和物理服务器
日本vps
成都阿里云
注册商标服务
商标办理服务
注册商标代理服务
钉钉高级排班
VPN租用价格
阿里云cdn按带宽计费
阿里短信返回的错误怎么取消掉啊苹果13pro
数据库关系模型的概念
阿里云服务器如何用电脑登录账号密码忘记了
钉钉打卡机怎么连手机热点
钉钉班级群打卡怎么用
当数据库的版本号增加时调用
数据库字段数量限制怎么设置
阿里网盘登录页面过期怎么恢复正常呢苹果版手机
联系客服免费领取更多阿里云产品新购、续费升级折扣,叠加官网活动折上折更优惠
立即领取