<C++网络编程随笔>常用Socket函数总结
因为科研训练的要求,需要实现wifi路由器的抓包以及监听和数据流量分析的软件,故开始学习网络编程的相关知识。首先在语言上,考虑到C++和Python在网络编程上对于我而言都差不多,故选择C++进行网络编程。
C++网络编程基本上都是通过调用Winsock里的api来对套接字进行操作,目前在学习Winsock2。利用winsock的api网络编程分为服务器端和客户端两种操作流程。大致的流程图引用vc驿站https://www.cctry.com/教程的图说明:
对于服务器端,首先建立监听socket,之后调用bind函数绑定端口,再用listen函数监听端口,如果在端口监听到用户请求,则通过accept函数获得一个数据交换的socket,通过这个socket与客户机进行数据交换。
对于客户端,首先建立数据交换socket,之后调用connect函数连接,再用send函数发送请求给服务器的端口。
在以上过程中,可以看到例如bind函数,listen函数以及socket函数等是相当重要,故在学习网络编程的过程中逐步总结这些api的用法和注意事项。
......未完待续(有点困,早睡早起才能有精力学习哈哈)