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

定制网站开发成本估算表app怎么推广

定制网站开发成本估算表,app怎么推广,怎么建设自己的网站,淘宝关键词怎么做排名靠前UDP /* udp: 传输层协议, 和 tcp 是一样的 特点:面向无连接的, 不安全的, 报式传输协议1. 无连接: udp 通信的时候不需要 connect1) 通信不需要建立连接2) 如果只想给对方发送数据, 只需要指定对方 IP 和端口2. udp 会丢包1) 数据丢失了就没有了没有数据校验机制2) udp 丢包不…

UDP

/*
udp: 传输层协议, 和 tcp 是一样的
特点:面向无连接的, 不安全的, 报式传输协议1. 无连接: udp 通信的时候不需要 connect1) 通信不需要建立连接2) 如果只想给对方发送数据, 只需要指定对方 IP 和端口2. udp 会丢包1) 数据丢失了就没有了没有数据校验机制2) udp 丢包不会丢失一部分, 丢就是全丢3. 报式:发送端发送多少数据, 接收端就接受多少数据
*/
  • 通信流程

udp 通信的过程中客户端和服务器的操作几乎是一样的, 地位是对等的

  • 通信流程

    • 服务器端

      // 1. 创建一个通信的套接字
      int cfd = socket(AF_INET, SOCK_DGRM, 0);
      // 2. 通信的套接字和本地的 IP 和端口绑定
      // 绑定的目的: 程序启动以后不主动发数据, 先接受数据, 就需要绑定端口, 主动发数据, 就可以不绑定
      struct sockaddr_in addr
      bind(cfd, (struct sockaddr)&addr, sizeof addr);
      // 3. 通信
      接收数据: recvfrom();
      发送数据: sendto();
      // 4. 关闭通信的文件描述符
      close();
      
    • 客户端

      // 1. 创建一个通信的套接字
      int cfd = socket(AF_INET, SOCK_DGRM, 0);
      // 2. 通信的套接字和本地的 IP 和端口绑定
      // 绑定的目的: 程序启动以后不主动发数据, 先接受数据, 就需要绑定端口
      struct sockaddr_in addr
      bind(cfd, (struct sockaddr)&addr, sizeof addr);
      // 3. 通信
      接收数据: recvfrom();
      发送数据: sendto();
      // 4. 关闭通信的文件描述符
      close();
      
  • 操作函数

    // 接收数据
    ssize_t recvfrom(int sockfd, void buf, size_t len, int flags,struct sockaddr * src_addr, socklen_t * addrlen);
    参数:- socket: 通信的文件描述符- buf: 指向一块有效的内存地址, 存储接收的数据- len: 参数 buf 指向的内存大小- flags: 使用默认属性, 指定为 0 即可- src_addr: 传出参数, 保存发送端的地址信息 -> 大端- addrlen: 传入传出参数, 类似于 accept() 最后一个参数
    返回值:> 0: 接收的字节数-1: 失败
    // 发送数据
    ssize_t sendto(int sockfd, const void buf, size_t len, int flags,const struct sockaddr *dest_addr, socklen_t addrlen);
    参数:- socket: 通信的文件描述符- buf: 指向一块有效的内存地址, 内存中存储了待发送的数据- len: 参数 buf 指向的内存中待发送的数据- flags: 使用默认属性, 指定为 0 即可- src_addr: 传入参数, 保存接收端的地址信息 -> 大端- addrlen: 传入参数, dest_addr 对应的内存大小
    返回值:> 0: 接收的字节数-1: 失败
    
  • UDP 的两个特性(TCP 没有)

    • 广播
    • 组播(多播)

广播

  • 有一个 UDP 的程序, 通过这个程序发送消息, 可以同时有多个接收端同时收到消息
    • 广播是一对多, 1 : N
      • 广播的数据要发送到广播地址上
      • 如果是一对一发送, 使用的是这个接收端使用的实际 IP 地址
    • 广播需要使用一个特殊的广播地址
      • 192.168.x.255
        • x -> 代表的是一个网段
        • 点分十进制的最后一部分(最后一个字节)
          • 取值范围 0 - 255, 代表这个网段最多支持多少台计算机
    • 广播只能在局域网范围内用, 广域网是不支持广播的
    • 广播特点:
      1. 开销很小, 只是使用了广播地址, 数据就可以发送到多个终端上
      2. 只能在局域网范围内使用
      3. 发送广播的一端必须要设置广播属性
  • 通信流程

    • 数据发送端 -> 只有一个

      // 1. 创建通信的套接字
      int fd = socket(AF_INET, SOCK_DGRM, 0);
      // 2. 因为是主动发数据, 因此不需要手动绑定端口(随机自动绑定即可)
      //	需要设置广播的属性, 通过 setsockopt() 函数 ->不设置不能广播
      // 3. 初始化接受端的地址信息
      // IP 地址: 广播地址 -> 192.168.x.255
      // port: 接受广播的一端绑定的固定端口
      sendto();
      // 3. 关闭套接字
      close();
      
    • 数据接收端 -> 有 N 个

      // 1. 创建通信的套接字
      int fd = socket(AF_INET, SOCK_DGRM, 0);
      // 2. 被动接收数据, 需要手动绑定端口
      bind();
      // 3. 接收数据
      recvfrom();
      // 4. 关闭套接字
      close();
      
    • 设置广播属性

      // 广播属性设置
      int setsockopt(int socket, int level, int optname,const void *optval, socklen_t optlen);
      参数:- sockfd: 通信的套接字- level: SOL_SOCKET- optname: SO_BROADCAST- optval: int- 1: 允许广播- 0: 不允许广播- oplen: sizeof int
      

组播

  • 可以在广域网中使用
  • 如果不想收发送的消息, 可以使用组播
    • 原理: 需要在发送端建一个群, 如果不想收可以不加群
    • 基于这个原理可以实现远程会议, 需要在 INTERNET 中传输
  • 组播需要使用组播地址
    • 发消息的人需要把消息发送到组播地址上
    • 接受消息的人需要加入到组播地址
  • 组播属性需要手动设置
  • 加入到组播地址
http://www.dtcms.com/wzjs/225579.html

相关文章:

  • 动态网站做登录界面关键词优化公司哪家强
  • 工信部icp备案系统常用的seo工具
  • 中国建设监理网站百度竞价sem入门教程
  • 广告设计与制作专业比较好的大学南宁百度seo排名
  • 网站建设是专业阿里大数据分析平台
  • 香港网站建设 深圳分公司百度广告怎么推广
  • 网站建设需要的项目如何免费开自己的网站
  • 广东省城乡住房建设厅网站首页品牌营销做得好的品牌有哪些
  • 英文互动网站建设武汉网站seo
  • 亚马逊网站开发使用的什么方式宁波网站优化
  • 网站建设 石景山seo研究学院
  • 上市公司网站建设要求网站推广具体内容
  • 怎么建立微信大转盘的网站服务谷歌seo推广服务
  • wordpress front end什么叫优化关键词
  • javascript网站开发百度sem竞价托管公司
  • 用自己电脑怎么做网站安阳企业网站优化外包
  • 如何查看一个网站是用什么cms做的培训网络营销的机构
  • 万江网站制作百家号关键词seo优化
  • 更换网站需要怎么做网络舆情分析研判报告
  • 中企动力做网站贵吗网络平台有哪些?
  • 文明网站的建设与管理的思考软文范文200字
  • ipv6网站如何做seo常用工具
  • 开发者选项在哪里打开seo服务加盟
  • 网站没有域名设置新闻头条
  • 怎样在商务部网站做备案电商营销推广方法
  • 如何做网站答题领红包链接推广技巧
  • 嘉兴建设规划网站seo排名计费系统
  • wordpress相册标签seo诊断书
  • 网站无法处理请求百度推广账号注册流程
  • 手机网站与电脑网站的区别中国知名网站排行榜