当前位置: 首页 > news >正文

UDP(Echoserver)

网络命令

Ping 命令  

检测网络是否连通

使用方法:    ping -c 次数  网址ping -c 3  www.baidu.com

netstat  命令

netstat 是一个用来查看网络状态的重要工具.

语法:netstat [选项]

功能:查看网络状态

常用选项:

  • n 拒绝显示别名,能显示数字的全部转化成数字 
  • l 仅列出有在 Listen (监听) 的服务状态
  • p 显示建立相关链接的程序名(pid)
  • t (tcp)仅显示 tcp 相关选项
  • u (udp)仅显示 udp 相关选项
  • a (all)显示所有选项,默认不显示 LISTEN 相关
// 每个 1s 执行一次 netstat -nltp
$ watch -n 1 netstat -nltp  n 指的是次数  1指的是间隔(s)

pidof 命令

在查看服务器的进程 id 时非常方便.

语法:pidof [进程名]

功能:通过进程名, 查看进程 id

    pidof tcp_server
2958285
pidof udp_server | xargs kill -9   //杀掉进程

V1 版本 - echo server

简单的回显服务器和客户端代码

备注: 代码中会用到 地址转换函数 .

网络信息sockaddr

 struct sockaddr_in local;bzero(&local, sizeof(local));//先置零local.sin_family = AF_INET;  local.sin_port = ::htons(_port); // 要被发送给对方的,即要发到网络中!// local.sin_addr.s_addr = ::inet_addr(_ip.c_str()); // 服务器ip不用绑定 1. string ip->4bytes 2. network order //TODOlocal.sin_addr.s_addr = INADDR_ANY;

IP地址转换

inet_addr 函数会自动将点分十进制的 IPv4 地址(如 "192.168.1.1")转换为网络字节序(大端序),无论当前机器使用的是大端还是小端字节序。

inet_ntop 函数会将网络字节序(大端序)的二进制 IP 地址转换为文本格式(如点分十进制的 IPv4 或冒号分隔的 IPv6),这个过程中会自动适配当前机器的字节序。

服务器

云服务器不允许直接 bind 公有 IP,我们也不推荐编写服务器的时候,bind 明确 的 IP,推荐直接写成 INADDR_ANY,因为一个服务器可能有多个IP地址

在网络编程中,当一个进程需要绑定一个网络端口以进行通信时,可以使用 INADDR_ANY 作为 IP 地址参数。这样做意味着该端口可以接受来自任何 IP 地址的连 接请求,无论是本地主机还是远程主机。例如,如果服务器有多个网卡(每个网卡上 有不同的 IP 地址),使用 INADDR_ANY 可以省去确定数据是从服务器上具体哪个网 卡/IP 地址上面获取的

提示:我们买的云服务器的端口需要在官网防火墙打开,才能使用

客户端

client 端要不要显示 bind

如果client显示的bind端口号 ,不同公司间的client bind的端口号有可能重复 ,导致bind失败 ,所以交给OS自动bind

创建socket

bind

接收信息

发消息

sockfd 是全双工 (一个时刻 通信双方能够同时进行双向数据传输)

代码实现

相关文章:

  • VUE element table 列合并
  • V837s-sdk buildroot文件系统设置串口登录密码
  • 【ModelArts】ModelArts一站式AI开发平台详解(一)
  • 豆包全新视频生成模型、视觉深度思考模型发布
  • 曼昆《经济学原理》第九版 第十五章垄断
  • 线程与进程(java)
  • 汽车生产虚拟实训中的技能提升与生产优化​
  • MongoDB(八) - MongoDB GridFS介绍及使用Python操作GridFS
  • Flowable详细介绍
  • Prometheus基础使用指南
  • 【论文阅读】多任务学习起源类论文《Multi-Task Feature Learning》
  • 线程与协程
  • 实现多路视频截图预览之后上传到后台系统
  • 配置Linux的网络为静态IP地址的一些方法
  • HTML 列表、表格、表单 综合案例
  • 如何查看电脑系统的初始安装时间?
  • HTML 列表、表格、表单
  • Linux上并行打包压缩工具
  • 小天互连IM:信创体系下的安全、高效即时通讯新选择
  • 【强化学习】TD-MPC论文解读
  • 铝木门窗网站建设/阿拉善盟seo
  • b2b b2c c2c o2o例子/seo企业优化方案
  • 杭州建设厅官方网站/网站制作的流程
  • 强的网站建设/淘宝seo优化怎么做
  • 上海做网站吧/站长工具浪潮
  • 做影视网站如何通过备案/大型网站建设公司