
udp
TCH_world
记录职业生涯的点滴
展开
-
udp协议基本数据包结构
udp是不可靠、无连接的协议,不可靠是指不能检查到数据包是否安全到达对端,但应用程序可以做保证数据包到达的机制,udp是无连接的协议说明udp的开销小、数据包传输效率高,如果传输的数据小,创建连接的开销、保证数据包可靠发送需要做的工作比数据本身还有多,那么udp是一种好的选择。udp协议头包含有四部分: (1)、源端口:16位表示取值范围是1-65535。 (2)、目的端口:也是16位。 (...原创 2018-11-20 23:26:23 · 10708 阅读 · 0 评论 -
udp协议连接函数ip4_datagram_connect
udp协议是无连接函数,但也支持系统调用connect函数,调用connect的目的是建立到达目的地址的路由,并把路由保存到路由高速缓冲区中,接下来发送数据包时就可以使用路由高速缓冲区的信息,应用层表现为可以调用send函数发包而不要指定目的地址。应用层调用connect函数时套接字层是调用了ip4_datagram_connect函数。接下来是ip4_datagram_connet函数分析 1...原创 2018-11-21 22:16:43 · 839 阅读 · 0 评论 -
UDP发送数据包流程
UDP发送数据包的函数是udp_sendmsg,完成从用户地址空间接受数据包然后赋值到内核空间。udp_sendmsg函数主输入参数有四个: (1)、kiocb:为了提高对用户地址空间操作效率的数据结构体。 (2)、sk:打开的套接字数据结构,包含了套接字的所有设置信息和选项。 (3)、msg:存放管理用户地址空间的数据结构。 (4)、len:从用户空间接受的数据包长度。 int ud...原创 2018-11-21 23:58:00 · 5008 阅读 · 0 评论 -
UDP协议接受数据流程
当数据达到网络层时,根据IP协议头中的protocol数据域协议码在全局哈希表inet_protos[MAX_INET_PROTOS]中寻找传输层的收包函数,前面介绍UDP基本数据结构时说了了UDP和网络层的接口数据结构,AF_INET协议族初始化函数inet_init中调用inet_add_protoc函数把UDP协议的实例struct net_protocol udp_protocol注册到哈...原创 2018-11-23 23:46:49 · 2038 阅读 · 0 评论