TCP/IP(网络编程)

一、网络每一层的作用

***网络接口层和物理层的作用:**屏蔽硬件的差异,通过底层的驱动,会提供统一的接口,供网络层使用

***网络层的作用:**实现端到端的传输

***传输层:**数据应该交给哪一个任务去处理

***应用层:**包含各种协议

二、各层典型的协议

网络接口与物理层:

MAC地址:48位全球唯一的,网络设备的身份标识符

ARP/RARP协议

ARP :IP地址----->MAC地址(通过IP地址找到MAC地址)

RARP:MAC地址---->IP地址(通过MAC地址找到IP地址)

PPP协议:拨号协议(3G/4/GPRS)

网络层:

传输层:

应用层:

三、主机与主机之间的数据

例:A主机向B主机传输数据

客户方的FTP数据(应用层)通过socket()函数进行驱动到TCP(传输层)数据就会多了一个TCP的头(数据就会变成TCP头加数据) 之后进入IP(网路层)数据又多加了一个IP的头(数据就会变成Ip的头加TCP的头加数据,由于层与层之间传输是透明的,所以就会把TCP的头和数据都看成数据),之后在进入以太网驱动层,数据又多加了一个以太网的头(WiFi头也可以,看情况而定),其它的头和数据还是看成一个数据,在以太网层(物理层)会多加一个校验码区,最后通过令牌环网,之后再到B主机的以太网驱动进行拆以太网的头,这样依次拆上去,最后到TCP过后调用socket()函数,之后主机B就可以拿到数据了

校验码由以太网的驱动产生(硬件产生)

四、IP

相关推荐
Mr.HeBoYan9 分钟前
一次持续三天才出现的丢包故障——深入解析 DPDK Memory Ordering、rte_ring 与 CPU Memory Barrier (下)
linux·网络·算法·架构·dpdk
初願致夕霞2 小时前
C++懒汉单例设计详解
服务器·开发语言·c++
啊哦1113 小时前
安装VMware Workstation
linux·运维·服务器
我是唐青枫3 小时前
Java Netty 实战指南:从 NIO 线程模型到 TCP 编解码和心跳机制
java·tcp/ip·nio
持敬chijing4 小时前
Linux基础命令与目录命令
linux·运维·服务器
小张成长计划..4 小时前
【Linux】12:进程状态
linux·运维·服务器
kp000004 小时前
System Prompt Leakage(系统提示词泄露)及安全防御
网络·安全·网络安全·信息安全·prompt·ai安全
许彰午4 小时前
02-网络的抽象层
网络·智能路由器
农村小镇哥5 小时前
C#中的字符串格式化
服务器·开发语言·c#
Geek-Chow5 小时前
A Practical Tour of AWS Networking: VPCs, Subnets, Gateways, and More
网络·aws