位置: 编程技术 - 正文

linux网络协议是什么?该如何去理解?(linux网络协议栈内核分析)

编辑:rootadmin

推荐整理分享linux网络协议是什么?该如何去理解?(linux网络协议栈内核分析),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux 路由协议,linux wifi协议栈,linux网络传输协议,linux 协议,linux网络协议栈内核分析,linux 协议,linux 网络协议栈,linux 网络协议,内容如对您有帮助,希望把文章链接给更多的朋友!

  网络协议有很多,但大多是针对windows的,那么linux网络协议你是怎么样理解的呢?本文和大家一起探讨这个问题。

  Linux网络协议栈基于分层的设计思想,总共分为四层,从下往上依次是:物理层,链路层,网络层,应用层。

  Linux网络协议栈其实是源于BSD的协议栈,它向上以及向下的接口以及协议栈本身的软件分层组织的非常好。 Linux的协议栈基于分层的设计思想,总共分为四层,从下往上依次是:物理层,链路层,网络层,应用层。

  物理层主要提供各种连接的物理设备,如各种网卡,串口卡等;

  链路层主要指的是提供对物理层进行访问的各种接口卡的驱动程序,如网卡驱动等;

  网路层的作用是负责将网络数据包传输到正确的位置,最重要的网络层协议当然就是IP协议了,其实网络层还有其他的协议如ICMP,ARP,RARP等,只不过不像IP那样被多数人所熟悉;

linux网络协议是什么?该如何去理解?(linux网络协议栈内核分析)

  传输层的作用主要是提供端到端,说白一点就是提供应用程序之间的通信,传输层最着名的协议非TCP与UDP协议末属了;

  应用层,顾名思义,当然就是由应用程序提供的,用来对传输数据进行语义解释的“人机界面”层了,比如HTTP,SMTP,FTP等等,其实应用层还不是人们最终所看到的那一层,最上面的一层应该是“解释层”,负责将数据以各种不同的表项形式最终呈献到人们眼前。

  Linux网络核心架构Linux的网络架构从上往下可以分为三层,分别是: 用户空间的应用层。 内核空间的网络协议栈层。 物理硬件层。 其中最重要最核心的当然是内核空间的协议栈层了。

  Linux网络协议栈结构Linux的整个网络协议栈都构建与Linux Kernel中,整个栈也是严格按照分层的思想来设计的,整个栈共分为五层,分别是 :

  1,系统调用接口层,实质是一个面向用户空间应用程序的接口调用库,向用户空间应用程序提供使用网络服务的接口。

  2,协议无关的接口层,就是SOCKET层,这一层的目的是屏蔽底层的不同协议(更准确的来说主要是TCP与UDP,当然还包括RAW IP, SCTP等),以便与系统调用层之间的接口可以简单,统一。简单的说,不管我们应用层使用什么协议,都要通过系统调用接口来建立一个SOCKET,这个SOCKET其实是一个巨大的sock结构,它和下面一层的网络协议层联系起来,屏蔽了不同的网络协议的不同,只吧数据部分呈献给应用层(通过系统调用接口来呈献)。

  3,网络协议实现层,毫无疑问,这是整个协议栈的核心。这一层主要实现各种网络协议,最主要的当然是IP,ICMP,ARP,RARP,TCP,UDP等。这一层包含了很多设计的技巧与算法,相当的不错。

  4,与具体设备无关的驱动接口层,这一层的目的主要是为了统一不同的接口卡的驱动程序与网络协议层的接口,它将各种不同的驱动程序的功能统一抽象为几个特殊的动作,如open,close,init等,这一层可以屏蔽底层不同的驱动程序。

  5,驱动程序层,这一层的目的就很简单了,就是建立与硬件的接口层。 可以看到,Linux网络协议栈是一个严格分层的结构,其中的每一层都执行相对独立的功能,结构非常清晰。 其中的两个“无关”层的设计非常棒,通过这两个“无关”层,其协议栈可以非常轻松的进行扩展。在我们自己的软件设计中,可以吸收这种设计方法。

  

标签: linux网络协议栈内核分析

本文链接地址:https://www.jiuchutong.com/biancheng/353505.html 转载请保留说明!

上一篇:linux下 如何修改命令行提示符路径提示符路径长度(linux常用命令修改)

下一篇:Linux系统怎样识别没有扩展名的文件类型? 用file命令解决(看linux系统)

  • 结转所得税的会计分录是什么
  • 税务知识:价外费用包括哪些费用?
  • 小规模第一次申请发票能领多少
  • 个人所得税如果两份工作怎么扣
  • 开普票要个人身份证号吗
  • 负数发票要给购票人吗
  • 营业成本包括三大费用如何称呼
  • 报税期能不能开发票
  • 预付押金是否可以作为成本
  • 哪些企业可以享受加计扣除优惠政策?
  • 收到政府补助的固定资产的账务处理
  • 暂估含税还是不含税
  • 充值费用优惠怎么取消
  • 过节发什么物资给员工好些
  • 期初建账库存少录数量会计怎么处理
  • 非企业所得税税率
  • 没取得发票付款的情况该如何做账呢?
  • 事业单位存货包括哪些
  • 事业单位需要写自传吗
  • 牵引车需要交车船税吗
  • 一般纳税人核定征收增值税
  • 买了税控盘还需要买打印机吗
  • 会议费增值税专用发票税率
  • 怎么查找地方教育附加税的计税依据?
  • 手撕税票去哪可以弄到
  • 6种个人所得税违规手段,财务人再小心别跳坑!
  • 关于个人所得税纳税人的说法正确的有
  • 取得的国债利息收入可以抵扣吗
  • 工会经费返还账务处理,另记账么
  • 移动通信定额发票
  • 收取赔偿金开具什么发票
  • 农民工劳动报酬权救济制度存在的问题
  • 收入确认和成本的关系
  • 增值税附税的计算公式
  • php数组函数输出《咏雪》里有多少"片"字
  • 工地需要安装什么标识牌
  • PHP:JDToFrench()的用法_日历函数
  • KITTI数据集可视化(二):点云多种视图与标注展示的可视化代码解析
  • 二手车价格网站
  • 保障金纳入地方财政吗
  • 社会团体收取的会费是否缴纳企业所得税
  • 调用系统服务出错原因
  • 生产劳务成本会计分录
  • 用友重新安装步骤
  • 将织梦dedecms转换到wordpress
  • 公司购买基金入什么科目
  • 货运代理费计入什么科目
  • SQL SERVER中关于exists 和 in的简单分析
  • 接受捐赠如何进项
  • 小规模纳税人缴纳增值税的会计科目
  • 如何降低未分配利润的方法
  • 房地产行业概况
  • 用银行存款支付本季度短期借款利息
  • 零退税率可以做免税吗
  • 销售固定资产如何申报企业所得税
  • 水电费进项税额转出20%
  • 收到货款会计分录怎么写
  • 租车费报销管理规定
  • 购买土地会计分录及摊销分录
  • 原始凭证的主要内容包括
  • mysql联合索引生效原则
  • windows提示滑动以关闭电脑
  • xp系统ie浏览器怎么升级
  • ubuntu20.04命令
  • 戴尔dell服务器维修
  • sllights.exe - sllights进程是什么意思
  • centos 做bond
  • window8任务管理器
  • linux怎么使用
  • windows识别码
  • Extjs4 GridPanel 的几种样式使用介绍
  • unity 3d脚本编程
  • python数据导出
  • shell函数返回多个值包含数组
  • android 属性动画改变view大小
  • 如果贸易后y产品的相对价格下降很大的话
  • 社保卡手机缴费怎么交不了
  • 岗位大练兵业务大比武简报
  • 税务发票机器怎么操作
  • 税务宣传标语2021
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设