生如夏花

专注于工业物联网行业数据采集,嵌入式Linux系统裁剪,5G智慧网关软件开发等

UNP(2)

套接字基础

套接字地址结构的传递既有用户态到内核态(如bind函数)也有内核态传递到用户态(如accept函数),对于应用程序来说,传给内核的套接字地址结构需要类型强制转换为struct sockaddr*,而接收内核传出的套接字地址结构时需要采用struct sockaddr_storage*。

对于ASCII字符串格式的地址转换建议有线采用inet_pton和inet_ntop这两个函数,因为同时兼容IPv4和IPv6。

TCP套接字编程

本文介绍了TCP套接字编程的基本概念和函数,包括socket、connect、bind、listen、accept等函数的使用方法和参数。socket函数用于创建套接字,connect函数用于建立TCP连接,bind函数用于将本地地址与套接字关联,listen函数将套接字转换为被动监听状态,accept函数用于接受连接请求。文章还讨论了fork和exec函数用于创建新进程和替换进程映像,以及close函数用于关闭套接字和终止TCP连接。最后,提供了一个并发服务器的示例代码,展示了如何使用这些函数处理客户端连接。