从socket api看网络通信流程

本文通过TCP协议,结合socket API探讨Linux下的网络通信流程。讲解了socket、bind、listen、accept和connect等关键函数的用途,以及TCP的3次握手、4次挥手过程。在连接完成后,使用read/write进行读写操作,并详细阐述了close关闭连接时的4次挥手流程。
摘要由CSDN通过智能技术生成

 戳蓝字「TopCoder」关注我们哦!

说了网络通信,大家肯定都不会陌生,比如各种分布式系统、大数据框架等等都要涉及到网络通信,由于大多数通信都是基于TCP协议来的,因此本文就以TCP为例,结合socket api来分析Linux下的网络通信流程。

TCP协议是基于IP协议之上的面向流并且可靠传输的通信协议,同时TCP也拥有流量控制和拥塞控制机制。说起TCP,就绕不开的TCP的3次握手和4次挥手,因此先看下握手和挥手流程:

socket api

常用的网络通信socket api有socket、bind、listen、accept和connect等。

为了进行网络通信,进程需要首先调用socket函数获取一个socket fd,可以指定通信协议类型:

// family指定协议族,type指定套接字类型,protocol指定某个协议类型常值,或者设为0。
int sock
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值