Linux网络编程socket入门
发布时间
阅读量:
阅读量
在Linux系统中,网络编程通常指的是基于socket套接字的开发方式,其入门难度相对较低,网络上也存在大量可供参考的基础示例代码。然而,在实际使用过程中,往往会出现一段时间后遗忘具体操作细节的情况,不得不重新查阅资料,因此有必要在此进行归纳总结,以便日后减少查阅他人教程的频率。
1. socket套接字流程简介
socket套接字主要包含标准套接字(如SOCK_STREAM、SOCK_DGRAM)以及原始套接字(SOCK_RAW)。通常情况下,网络编程过程中使用标准套接字即可满足需求。然而,当需要实现标准套接字(即TCP或UDP套接字)无法完成的功能时,则必须借助原始套接字。本文将重点归纳标准套接字的使用方式。
如前所述,标准套接字根据所采用的协议不同,可分为基于TCP协议的SOCK_STREAM类型与基于UDP协议的SOCK_DGRAM类型。由于TCP是一种面向连接的通信方式,因此其在网络编程中的实现过程相对更为复杂。尽管如此,无论是TCP还是UDP,在进行socket网络编程时所遵循的基本模式大致相同,通常包括客户端与服务端两个组成部分。
- 客户端 :在网络应用程序中,若某一程序主动发起与其他程序之间的通信行为,则该程序被定义为客户端程序。
- 服务端 :与客户端相对应的是服务端程序。服务端程序通常是被动地等待外部程序与其建立通信
全部评论 (0)
还没有任何评论哟~
