进程间的通信过程

目录

1.同一设备上的进程间通信

1.通信方式

2.不同设备上的进程间通信

1.通信方式

2.网络层级:四层网络模型

2.1 应用层

2.2 传输层

2.3 网络层

2.4 网络接口层

1.同一设备上的进程间通信

1.通信方式

        同一设备上的进程间通信,通常有以下几种:

                消息队列、管道、共享内存

2.不同设备上的进程间通信

1.通信方式

        不同设备上的进程间通信,需要进行网络通信,此时涉及到网络协议与网络层级

2.网络层级:四层网络模型

2.1 应用层

作用:为用户提供应用功能,实现用户的各种应用,工作在操作系统的用户态

常用协议:HTTP、HTTPS、SMTP、FTP、DNS

        当需要在不同设备的两个应用间通信时,应用层会将数据包发送到传输层

2.2 传输层

作用:为应用层服务,工作在操作系统的内核态。当接收到应用层发送的数据包后,若数据过大(超过MSS最大数据长度)会将其分块,然后分块传输;对于接收数据的的应用而言,使用端口来区分同一设备上的不同应用,使用IP地址来区分不同的设备

常用协议:TCP、UDP

        传输层将数据发送到网络层,此时会在数据前面加一些内容比如端口号,用来确认将数据传输给哪一个应用

2.3 网络层

作用:将数据从一个设备传输到另一个设备,工作在操作系统的内核态。当接收到传输层的数据包后,对数据包添加IP头部,若数据过大(超过MTU)会对将其分片;在接收过程中,根据IP地址和子网掩码先确定IP地址的网络号和主机号,进行路由器寻找,找到对应的子网,将数据包转发到网络中;

常用协议:IP

        其实,在网络中发送数据,仅靠网络层处理数据(加上IP头部)发送到以太网是无法被转发匹配的,必须要网络接口层处理数据(加上MAC头部),才能在以太网中传输

2.4 网络接口层

作用:为数据加上MAC头部,使其能够在以太网中传输;以太网中通过ARP协议,解析出数据中中MAC头部包含的发送方和接收方的MAC地址(仅靠IP),然后才能将数据发送到接收方

常用协议:ARP

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值