• UNIX网络编程——UDP编程模型


         使用UDP编写的一些常见得应用程序有:DNS(域名系统),NFS(网络文件系统)和SNMP(简单网络管理协议)。

         客户不与服务器建立连接,而是只管使用sendto函数给服务器发送数据报,其中必须指定目的地(即服务器)的地址作为参数。类似的,服务器不接受来自客户的连接,而是只管调用recvfrom函数,等待来自某个客户的数据到达。recvfrom将与所接收的数据报一道返回客户的协议地址,因此服务器可以把响应发送给正确的客户。

                                     

         对于UDP,写一个长度为0的数据报时可行的。在UDP情况下,这会形成一个只包含一个IP首部(对于IPv4通常为20个字节,对于IPv6通常为40字节)和一个8字节UDP首部而没有数据的IP数据报。这意味着对于数据报协议,recvfrom返回0值是可接受的:它并不像TCP套接字上read返回0值那样表示对端已关闭连接。既然UDP是无连接的,因此也就没有诸如关闭一个UDP连接之类事情。

  • 相关阅读:
    c#一次性队列
    WinDbg
    async/wait
    JS 同步任务和异步任务
    VS Code格式设置
    ES6模块化导入导出
    Promise
    Spring配置
    AtCoder Beginner Contest 241 F Skate(bfs、STL)
    牛客寒假算法基础集训营6 G 迷宫2(01bfs)
  • 原文地址:https://www.cnblogs.com/wangfengju/p/6172566.html
Copyright © 2020-2023  润新知