• TCP/IP UDP: 用户数据报协议


      用户数据报协议就是UDP。是一个面向数据报的简单传输层协议,进程的每一次输出操作只产生一个UDP数据报。进程通过internet的接口函数,来访问UDP。

    • 每次发送UDP的时候,要指定目的的IP和端口号。
    • 每次接受UDP的时候,可以收到源IP和端口号。

    主要实现。

    • 1全局变量:UDP检验,表头,ip, 数据报。
    • 2统计量:udpstat
    • 3SNMP变量

    UDP的protosw结构

    • 没什么意思。。。作为UDP的协议交换入口

    UDP的首部

    • 一个结构体而已,具体可以在其他地方看到。

    udp_init函数

    • 顾名思义,是一个初始化函数,在系统初始化的时候调用。

    udp_output函数

    • 无聊的过程,一个UDP的输出。。。。重要的是插口函数和对应的IP目的地址。
    • 1在前面加上IP/UDP首部和mbuf簇。
    • 2UDP检验和计算和伪首部。无聊。。

    UDP_input函数

    • 1对收到的UDP数据报的一般确认。
    • 2分用单播数据报。
    • 3分用多播和广播数据报。
    • 4UDP插口和多接口主机。

    udp_saveopt函数

    • 无聊的函数,当进程指定IP_RECVDSTADDR接口选项,系统就调用该函数,用来接收目的IP地址。。。。够无聊的。。醉了这玩意无非是为了降低代码的耦合性。。。

    udp_ctlinput函数

    • 无聊的函数,为什么呢? 面面俱到的介绍意义不大,不懂的可以查字典。。。百度啊

    udp_usrreq函数

    • 这个函数是用来处理用户请求的函数,针对的是用户。所以和PCB有一定关系,插口指针转换成PCB指针。主要用来增加和删除UDP PCB。

    udp_sysctl函数

    • 看名字就知道是什么意思,无聊。

    实现求精

    • 用来优化功能。
    • UDP PCB 高速缓存
    • UDP检验和

    小结

    • 就这样,没什么意思,大概过程要自己写一遍才能有更深刻的认识,不过懂得基础的UDP就够了,叫什么名字不重要,UDP在哪一层?做了什么事情?这些只是抽象的概念。标准是否得到推广,还是取决于设计思路。
    千秋邈矣独留我 百战归来再读书
  • 相关阅读:
    20162302
    20162302
    20162302 实验三《敏捷开发与XP实践》实验报告
    20162302 第九周作业
    20162302 第八周作业
    20162302 实验二《面向对象程序设计》实验报告
    20162302 第七周作业
    项目Alpha冲刺Day8
    项目Alpha冲刺Day7
    项目Alpha冲刺Day5
  • 原文地址:https://www.cnblogs.com/lordwind/p/10875496.html
Copyright © 2020-2023  润新知