当前位置:网站首页>[how to connect the network] Chapter 2 (next): receiving a network packet
[how to connect the network] Chapter 2 (next): receiving a network packet
2022-06-26 13:16:00 【Currybeefer】
Previously, we discussed the sending of a network packet , Now let's take a look at what a computer or server will do when it receives a network packet .
In a half duplex Ethernet , Packets sent by a device will be received by all devices connected to the hub , So the receive operation will receive many packets that may not be sent to itself .

First PHY(MAU) The module first converts the signal into a general format and then sends it to MAC modular ,MAC The module reads the synchronization clock of the header and the start frame delimiter , Convert everything behind the section break into digital information , Check the tail again FCS See if there is any error in this package , If something goes wrong, throw it away .
If FCS That's right ,MAC The module is about to query MAC Receiver's in the header MAC Address and own network card MAC Is the address consistent , To determine whether the bag was sent to you , If not, discard the bag . If yes, drop the packet into the buffer of the network card , Then the network card will call the interrupt of the operating system , Let the operating system protocol stack look at the newly received package .
After the protocol stack comes , Namely IP The work of the module ,IP The module will view the data package IP Header information , confirm IP The address of the receiver in the header is not itself . If not ,IP The module will send ICMP The message informs the sender of the error .
If correct , Then give it to TCP The module handles ,TCP Module will view IP Sender of header IP Address and receiver IP Address , as well as TCP The port numbers of the sender and receiver of the header are used to find out whether there is a corresponding socket in their protocol stack , Find the corresponding socket , Then you can carry out the corresponding operation . for example , If the contents of the package are data , Then return to confirm the received packet , Then put the data into the buffer and other upper applications ( browser ) To read . If it is a connected or disconnected package , Then the corresponding response control package , Then tell the upper application the corresponding status .
There's also a little Tips
Send the whole , forward , The whole process of receiving can refer to this animation , Very detailed :
https://www.bilibili.com/video/BV1c4411d7jb?p=9&vd_source=5898cd61d2d78c3c6feae32e4c4101c6
边栏推荐
- Processsing function random
- 8、【STM32】定时器(TIM)——中断、PWM、输入捕获实验(一文精通定时器)
- Digital signal processing -- Design of linear phase type (Ⅰ, Ⅲ) FIR filter (1)
- C language: Exercise 2
- Reflect the technical depth (unable to speed up)
- MySQL数据库讲解(四)
- Analysis and protection of heart blood dripping vulnerability (cve-2014-0160)
- Beifu PLC passes MC_ Readparameter read configuration parameters of NC axis
- Typescript
- HDU 3709 Balanced Number
猜你喜欢

Learning Processing Zoog

倍福TwinCAT3 NCI在NC轴界面中的基本配置和测试

MySQL数据库常见故障——遗忘数据库密码

倍福TwinCAT3实现CSV、TXT文件读写操作

May product upgrade observation station

Machine learning notes - seasonality of time series

解中小企业之困,百度智能云打个样

Deep parsing MySQL binlog

Update and download of Beifu EtherCAT XML description file

倍福NC轴状态转移图解析
随机推荐
Bridge mode
Appearance mode (facade)
C - Common Subsequence
Electron official docs series: References
Analysis and protection of heart blood dripping vulnerability (cve-2014-0160)
MySQL数据库讲解(五)
P5733 [deep foundation 6. example 1] automatic correction
Use the script to crawl the beautiful sentences of the sentence fan website and store them locally (blessed are those who like to excerpt!)
J - Wooden Sticks poj 1065
8、【STM32】定时器(TIM)——中断、PWM、输入捕获实验(一文精通定时器)
Uva5009 error curves three points
首批通过!百度智能云曦灵平台获信通院数字人能力评测权威认证
HDU 3555 Bomb
QT . Establishment and use of pri
F - Charm Bracelet
PostGIS geographic function
tauri vs electron
HDU 5860
C language: Exercise 2
解中小企业之困,百度智能云打个样