网络数据在计算机内部的发送和接收处理(网络数据在计算机内部的发送和接收处理方式)

在高级语言中一般会使用类似HttpClient、TcpClient、UdpClient等封装好的API进行数据的发送和接收,它们的底层都是基于Socket,而Socket又是基于操作系统内核的TCP/IP协议栈,TCP/IP协议处理平常就很难接触到了,再往下内核和网卡又是怎么交互的呢?

这篇文章就来介绍网络数据在计算机内部的发送和接收处理过程。

网络数据在计算机内部的发送和接收处理(网络数据在计算机内部的发送和接收处理方式)

先来看一张示意图,左侧是数据的发送处理,右侧是数据的接收处理,下边会按照步骤进行说明。

网络数据在计算机内部的发送和接收处理(网络数据在计算机内部的发送和接收处理方式)

数据发送

1、应用程序从内存读取要发送的数据。这里的内存是应用程序进程管理的内存,也可称为用户空间内存。

2、应用程序通过Socket接口将读取到的数据发送到内核协议栈进行处理。

3、内核中的TCP/IP协议栈接收到Socket传递过来的数据,进行TCP、IP打包,最终以IP数据包的格式写入到内核空间的一块缓存中。数据包写入后会触发一个软中断,通知底层模块来读取数据。

4、网卡中的DMA单元读取这些要发送的数据,然后发送到网卡的数据链路层和物理层,最终发送到网络中进行传输。

5、DMA读取数据完毕后,会向CPU发送一个中断,触发清理内核空间中的发送数据缓存,以便下一次发送处理。

数据接收

1、网卡中的DMA从数据链路层接收到数据,然后写入到内核空间的一块缓存中。

2、缓存写入完毕后会发送一个CPU中断,触发程序读取缓存,并发送到内核协议栈。

3、内核中的TCP/IP协议栈对接收到的数据进行解包,去掉IP协议头、TCP协议头,然后继续向上传递数据。

4、应用程序通过Socket接口读取数据,这时读取到的数据就是发送方发出来的数据了。

5、然后应用将这些数据写入到自己的进程内存中,供进一步使用。


图中的线条和步骤主要描述了数据的流转,并没有提供控制逻辑和寻址逻辑的说明,比如DMA向内存写数据需要获取对应的内存地址,以及申请总线通道用来传输数据到内存。

以上就是网络数据在计算机内的发送和接收过程,希望对你有用,欢迎留言探讨。

以上内容来源于网络,由“WiFi之家网”整理收藏!

原创文章,作者:电脑教程,如若转载,请注明出处:https://www.224m.com/203698.html

(0)
电脑教程电脑教程
192.168.16.1-进入了路由器设置里叫输入IP地址什么是IP地址.
上一篇 2023年7月23日 11:10
tplogincn手机登录端(tplogin设置完上不了网)
下一篇 2023年7月23日 11:18

相关推荐

  • 停电以后来电了wifi不能用了(图文)

    【导读】停电以后来电了wifi不能用了,下面就是WiFi之家网整理的网络知识百科,来看看吧!大家好,我是191路由器网小编,上述问题将由我为大家讲解。停电以后来电了wifi不能用了可以按一下路由器的重置

    2021年7月20日
    104.9K
  • 电脑DNS被劫持修复方法

    原标题:"电脑DNS被劫持怎么办 DNS劫持的解决方法"相关电脑问题教程分享。 - 来源:WiFi之家网。DNS被劫持怎么办?系统DNS被劫持后往往会进入一些有害的网站,并下载恶意软件,容易出现账号密码

    2021年7月5日
    6.2K
  • 2020年全国各省市DNS服务器IP地址

    原标题:"最全的全国各省市DNS服务器IP地址"关于路由器设置教程分享。 - 来源:WiFi之家网 - 编辑:小元。上网时,选取对自身更快的DNS服务器地址使用,这样可以加快网址的解析速度"

    路由器设置 2021年1月23日
    49.9K
  • 路由器隐藏wifi名称设置步骤

    原标题:"如何设置WIFI让别人无法搜索到WIFI名称"关于路由器设置教程分享。 - 来源:WiFi之家网 - 编辑:小元。WIFI网络是一个可以让其他移动设备上网的无线设置;很多人都不希望"

    路由器设置 2021年1月26日
    17.1K
  • http192.168.1.1登录入口

    http192.168.1.1登录入口 如果你是路由器的管理员或者想要进行一些路由器的管理操作,那么你需要知道如何进入http192.168.1.1 登录入口。 首先,打开你的浏览…

    网络 2023年9月12日
    12
  • 如何在foxmail添加网易邮箱

    由于工作中要经常用到邮箱,foxmail确实在一些方面做得很好。但在添加网易邮箱到foxmail的时候会遇到一点问题,下面是小编给大家整理的一些有关在foxmail添加网易邮箱的方法,希望对大家有帮助!在foxmail添加网易邮箱的方法:首先需要登陆网页版邮箱--设置--POP3/SMTP/IMA

    2021年10月5日
    8.2K
  • 路由器fast登录设置步骤

    原标题:"路由器fast怎么登录"相关路由器设置经验分享。 - 来源:WiFi之家网  有些朋友买了fast路由器安装好之后,不知道怎么登录,WiFi之家网为这类朋友搜罗了路由器fast的登录方"

    2021年2月14日
    23.2K
  • 怎样设置路由器拔号上网(路由器怎样恢复出厂设置)

    怎样设置路由器拔号上网(路由器怎样恢复出厂设置) 设置路由器拔号上网的步骤如下: 首先,连接路由器和电脑,打开电脑的网络设置,将IP地址和网关都设置为自动获取。 打开浏览器,输入路…

    网络 2025年12月16日
    274
  • 光猫出现故障怎么处理

    在日常上网过程中出现的故障,很大一部分是由于线路和光猫故障引起,现简单介绍一下,如何处理这些故障。首先看一下,光猫的上的光信号是否亮红灯,如果亮红灯,说明光纤线断了,你需要和电信公司维修人员联系修线

    2020年5月30日
    26.8K
  • Phicomm斐讯路由器密码忘记了怎么办?(忘记Phicomm斐济路由器密码怎么办?)

    Phicomm斐讯路由器密码忘记了怎么办?或许这是大多数路由器用户都曾遇到过的问题,因为路由器一旦设置完成,长时间我们是不会动的,这就导致时间久了忘记密码的问题。为了更好的帮助大家,在这里为大家分享有关斐讯路由器忘记管理员登录密码和无线wifi密码两类密码时的

    2022年1月5日
    32.8K