欢迎光临散文网 会员登陆 & 注册

C/C++网络编程,从socket到epoll

2023-04-21 18:21 作者:不败阿豪  | 我要投稿


视频内容介绍 P1 - 00:11


网络编程重要性



视频内容介绍 P1 - 04:21


基于Linux平台


网络编程的基本概念 P2 - 00:25


学习方法



网络编程的基本概念 P2 - 01:33


socket概念

把socket理解为插座,电流(数据)在电路(通道)中在不同的电脑上流动


网络编程的基本概念 P2 - 03:09


分类

基于TCP:流socket,有序、可靠

基于UDP:数据报socket,高效,不可靠(QQ、微信语音聊天)


网络编程的基本概念 P2 - 06:54


socket通信流程



先让网络通信的程序跑起来 P3 - 00:49


客户/服务端模式

客户端运行需要一个参数(可以和视频的一样)

过程:服务端相当于你的电话,服务端启动之后处于待机,客户端启动之后就建立了通道,进行报文的收发

问题1:为什么我的客户端写的是127.0.0.2,服务端依然显示client(127.0.0.1)connected!



先让网络通信的程序跑起来 P3 - 04:14


服务端程序

1、创建流式socket

2、指定用于通信的ip地址和端口

3、把socket设置成监听模式(服务端需要等待客户端的连接)

4、接受客户端的连接(通道建立起来了)



先让网络通信的程序跑起来 P3 - 06:32


客户端

1、创建socket

2、向服务端发送请求

3、客户发送/接受数据

服务端准备buffer,接受客户端报文

接收到后,在buffer里放一个OK,再把ok发给客户端



先让网络通信的程序跑起来 P3 - 09:34


使用自己局域网IP地址



先让网络通信的程序跑起来 P3 - 10:49


需要用2个以上的虚拟机(网络通信)

132虚拟机运行服务器

客户端在134虚拟机运行

没有路由:原因:防火墙132服务器



先让网络通信的程序跑起来 P3 - 12:12


防火墙的配置


客户服务端程序



客户/服务端程序概要 P4 - 01:27


注意事项

socket函数的参数



客户/服务端程序概要 P4 - 02:41


gdb设置参数

服务端

ahau@ahau-virtual-machine:~/socket$ gdb server

(gdb) set args 5005

(gdb) b 23


客户端

ahau@ahau-virtual-machine:~/socket$ gdb client

(gdb) set args 192.168.220.128 5005

(gdb) b 23(客户端和服务端一样停留在23行)


客户/服务端程序概要 P4 - 03:48


运行服务端



客户/服务端程序概要 P4 - 05:42


IP地址




客户/服务端程序概要 P4 - 06:17


一个服务器两个网卡



客户/服务端程序概要 P4 - 13:23


5005端口通信



客户/服务端程序概要 P4 - 14:00


listen函数设置监听模式



客户/服务端程序概要 P4 - 16:01


IP地址的重要性




客户/服务端程序概要 P4 - 17:04


客户端什么时候connect





C/C++网络编程,从socket到epoll的评论 (共 条)

分享到微博请遵守国家法律