用于内核和用户空间之间数据共享的类型的套接字

时间:2016-03-10 06:30:36

标签: linux-kernel

我是套接字编程的新手。我想从内核向用户空间发送少量数据。我想知道哪个家庭和协议适合创建套接字? UDP, TCP, 生的, NETLINK,

如果有人解释套接字类型的使用情况会更好。 提前致谢

1 个答案:

答案 0 :(得分:0)

检查以下套接字API <li> <label for="email">Email</label> <input type="email" id="email" name="email" ng-model="data.account.email" ng-required=""> </li> <li> <label for="confirmEmail">Confirm Email</label> <input type="email" id="confirmEmail" name="confirmEmail" ng-model="data.account.confirmEmail" ng-pattern="{{data.account.email}}"> <div ng-messages="data.account.confirmEmail.$error"> <div ng-message="pattern">Confirm email must match email.</div> </div> </li>

1)Netlink套接字用于在用户空间和内核空间之间进行通信。例如,请检查以下link

2)TCP(SOCK_STREAM类型)和UDP(SOCK_DGRAM)主要用于通过网络进行通信。这些套接字属于AF_INET域。 TCP用于文件下载,如应用程序,保证交付和订单。 UDP用于延迟很重要的情况,而不是传递或重传。就像直播视频流一样。即使是一帧视频也被跳过,它仍然不应该进行重传并减慢“现场”效果。

3)然后使用IPC的套接字(进程间通信)。在这种情况下,域是AF_UNIX,使用的类型可以是SOCK_SEQPACKET(类似于TCP)